import { useStore, toolTips } from './useStore'
import { extrudeSketch, sketchOnExtrudedFace } from './lang/modifyAst'
import { getNodePathFromSourceRange } from './lang/queryAst'
import { HorzVert } from './components/Toolbar/HorzVert'
import { Equal } from './components/Toolbar/Equal'
import { SetHorzDistance } from './components/Toolbar/SetHorzDistance'
import { SetAngleLength } from './components/Toolbar/SetAngleLength'
export const Toolbar = () => {
const {
setGuiMode,
guiMode,
selectionRanges,
ast,
updateAst,
programMemory,
} = useStore((s) => ({
guiMode: s.guiMode,
setGuiMode: s.setGuiMode,
selectionRanges: s.selectionRanges,
ast: s.ast,
updateAst: s.updateAst,
programMemory: s.programMemory,
}))
return (
{guiMode.mode === 'default' && (
)}
{guiMode.mode === 'canEditExtrude' && (
)}
{(guiMode.mode === 'canEditSketch' || false) && (
)}
{guiMode.mode === 'canEditSketch' && (
<>
>
)}
{guiMode.mode === 'sketch' && (
)}
{toolTips.map((sketchFnName) => {
if (
guiMode.mode !== 'sketch' ||
!('isTooltip' in guiMode || guiMode.sketchMode === 'sketchEdit')
)
return null
return (
)
})}
)
}