entangle-ui 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +117 -8
- package/README.md +98 -52
- package/dist/esm/_virtual/cjs.js +4 -0
- package/dist/esm/_virtual/cjs.js.map +1 -0
- package/dist/esm/_virtual/cssesc.js +4 -0
- package/dist/esm/_virtual/cssesc.js.map +1 -0
- package/dist/esm/assets/src/components/controls/CartesianPicker/CartesianPicker.css.ts.vanilla-Ccao9ycw.css +23 -0
- package/dist/esm/assets/src/components/controls/ColorPicker/ColorPicker.css.ts.vanilla-Do5nbdgO.css +341 -0
- package/dist/esm/assets/src/components/controls/CurveEditor/CurveEditor.css.ts.vanilla-Vn9SOx70.css +76 -0
- package/dist/esm/assets/src/components/controls/NumberInput/NumberInput.css.ts.vanilla-uGNr81xQ.css +158 -0
- package/dist/esm/assets/src/components/controls/Select/Select.css.ts.vanilla-D4C059Ua.css +225 -0
- package/dist/esm/assets/src/components/controls/Slider/Slider.css.ts.vanilla-C5SJ_7A1.css +173 -0
- package/dist/esm/assets/src/components/controls/TreeView/TreeNode.css.ts.vanilla-D3ylUhuW.css +150 -0
- package/dist/esm/assets/src/components/controls/TreeView/TreeView.css.ts.vanilla-CsG5-rWt.css +14 -0
- package/dist/esm/assets/src/components/controls/VectorInput/VectorInput.css.ts.vanilla-BJma3iQ4.css +102 -0
- package/dist/esm/assets/src/components/editor/ChatPanel/ChatPanel.css.ts.vanilla-DPIGnZ4A.css +701 -0
- package/dist/esm/assets/src/components/editor/PropertyInspector/PropertyGroup.css.ts.vanilla-Co4n5a98.css +25 -0
- package/dist/esm/assets/src/components/editor/PropertyInspector/PropertyPanel.css.ts.vanilla-RYv_XgOu.css +46 -0
- package/dist/esm/assets/src/components/editor/PropertyInspector/PropertyRow.css.ts.vanilla-C3YZnnHb.css +75 -0
- package/dist/esm/assets/src/components/editor/PropertyInspector/PropertySection.css.ts.vanilla-DJBtY_xk.css +105 -0
- package/dist/esm/assets/src/components/editor/ViewportGizmo/ViewportGizmo.css.ts.vanilla-CEs2H-Iv.css +43 -0
- package/dist/esm/assets/src/components/feedback/Dialog/Dialog.css.ts.vanilla-BrXTOHwS.css +169 -0
- package/dist/esm/assets/src/components/feedback/Toast/ToastContainer.css.ts.vanilla-tBLsZ_70.css +13 -0
- package/dist/esm/assets/src/components/feedback/Toast/ToastItem.css.ts.vanilla-D6UuPKAj.css +152 -0
- package/dist/esm/assets/src/components/form/FormHelperText.css.ts.vanilla-CXKd9jtx.css +11 -0
- package/dist/esm/assets/src/components/form/FormLabel.css.ts.vanilla-DHn6CB2v.css +17 -0
- package/dist/esm/assets/src/components/form/InputWrapper.css.ts.vanilla-Bl7u62PI.css +44 -0
- package/dist/esm/assets/src/components/layout/Accordion/Accordion.css.ts.vanilla-Ck5Yew0e.css +118 -0
- package/dist/esm/assets/src/components/layout/Flex/Flex.css.ts.vanilla-D7wY2gY6.css +142 -0
- package/dist/esm/assets/src/components/layout/Grid/Grid.css.ts.vanilla-gqfqUi29.css +213 -0
- package/dist/esm/assets/src/components/layout/PanelSurface/PanelSurface.css.ts.vanilla-HZvObe0l.css +86 -0
- package/dist/esm/assets/src/components/layout/ScrollArea/ScrollArea.css.ts.vanilla-UsyrfXTC.css +126 -0
- package/dist/esm/assets/src/components/layout/Spacer/Spacer.css.ts.vanilla-A-7aOV46.css +14 -0
- package/dist/esm/assets/src/components/layout/SplitPane/SplitPane.css.ts.vanilla-BFxdvwyI.css +44 -0
- package/dist/esm/assets/src/components/layout/Stack/Stack.css.ts.vanilla-DNZOFYiD.css +123 -0
- package/dist/esm/assets/src/components/navigation/Menu/Menu.css.ts.vanilla-DD0c5D10.css +67 -0
- package/dist/esm/assets/src/components/navigation/Tabs/Tabs.css.ts.vanilla-D7RGpDPC.css +247 -0
- package/dist/esm/assets/src/components/primitives/Button/Button.css.ts.vanilla-CT592JL7.css +98 -0
- package/dist/esm/assets/src/components/primitives/Checkbox/Checkbox.css.ts.vanilla-dvrGPiPs.css +124 -0
- package/dist/esm/assets/src/components/primitives/Collapsible/Collapsible.css.ts.vanilla-C1rYV-JT.css +73 -0
- package/dist/esm/assets/src/components/primitives/Icon/Icon.css.ts.vanilla-DIZ6dped.css +45 -0
- package/dist/esm/assets/src/components/primitives/IconButton/IconButton.css.ts.vanilla-C-xAQoR3.css +123 -0
- package/dist/esm/assets/src/components/primitives/Input/Input.css.ts.vanilla-De5ditYa.css +74 -0
- package/dist/esm/assets/src/components/primitives/Paper/Paper.css.ts.vanilla-B_tPWU80.css +67 -0
- package/dist/esm/assets/src/components/primitives/Popover/Popover.css.ts.vanilla-DW6aAr57.css +60 -0
- package/dist/esm/assets/src/components/primitives/Switch/Switch.css.ts.vanilla-CxqwUToB.css +100 -0
- package/dist/esm/assets/src/components/primitives/Text/Text.css.ts.vanilla-qTMvgKKC.css +126 -0
- package/dist/esm/assets/src/components/primitives/Tooltip/Tooltip.css.ts.vanilla-CrEFoLBX.css +71 -0
- package/dist/esm/assets/src/components/primitives/canvas/CanvasContainer.css.ts.vanilla-DR3zkEYQ.css +32 -0
- package/dist/esm/assets/src/components/shell/AppShell/AppShell.css.ts.vanilla-BYmtU0O_.css +97 -0
- package/dist/esm/assets/src/components/shell/FloatingPanel/FloatingPanel.css.ts.vanilla-1rIAXEFp.css +88 -0
- package/dist/esm/assets/src/components/shell/MenuBar/MenuBar.css.ts.vanilla-TgPcl4yA.css +120 -0
- package/dist/esm/assets/src/components/shell/StatusBar/StatusBar.css.ts.vanilla-BwO7oAZi.css +113 -0
- package/dist/esm/assets/src/components/shell/Toolbar/Toolbar.css.ts.vanilla-DPqftT18.css +97 -0
- package/dist/esm/assets/src/theme/darkTheme.css.ts.vanilla-V8lWHaQH.css +95 -0
- package/dist/esm/components/Icons/CheckIcon.js.map +1 -1
- package/dist/esm/components/Icons/ChevronDownIcon.js.map +1 -1
- package/dist/esm/components/Icons/ChevronUpIcon.js.map +1 -1
- package/dist/esm/components/Icons/CircleIcon.js.map +1 -1
- package/dist/esm/components/Icons/CloseIcon.js.map +1 -1
- package/dist/esm/components/Icons/EyeDropperIcon.js.map +1 -1
- package/dist/esm/components/Icons/TangentAlignedIcon.js.map +1 -1
- package/dist/esm/components/Icons/TangentAutoIcon.js.map +1 -1
- package/dist/esm/components/Icons/TangentFreeIcon.js.map +1 -1
- package/dist/esm/components/Icons/TangentLinearIcon.js.map +1 -1
- package/dist/esm/components/Icons/TangentMirroredIcon.js.map +1 -1
- package/dist/esm/components/Icons/TangentStepIcon.js.map +1 -1
- package/dist/esm/components/controls/CartesianPicker/CartesianPicker.css.js +9 -0
- package/dist/esm/components/controls/CartesianPicker/CartesianPicker.css.js.map +1 -0
- package/dist/esm/components/controls/CartesianPicker/CartesianPicker.js +99 -0
- package/dist/esm/components/controls/CartesianPicker/CartesianPicker.js.map +1 -0
- package/dist/esm/components/controls/CartesianPicker/useCartesianInteraction.js +230 -0
- package/dist/esm/components/controls/CartesianPicker/useCartesianInteraction.js.map +1 -0
- package/dist/esm/components/controls/CartesianPicker/useCartesianRenderer.js +122 -0
- package/dist/esm/components/controls/CartesianPicker/useCartesianRenderer.js.map +1 -0
- package/dist/esm/components/controls/ColorPicker/AlphaSlider.js +4 -41
- package/dist/esm/components/controls/ColorPicker/AlphaSlider.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/ColorArea.js +3 -32
- package/dist/esm/components/controls/ColorPicker/ColorArea.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/ColorInputs.js +3 -68
- package/dist/esm/components/controls/ColorPicker/ColorInputs.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/ColorPalette.js +5 -75
- package/dist/esm/components/controls/ColorPicker/ColorPalette.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/ColorPicker.css.js +34 -0
- package/dist/esm/components/controls/ColorPicker/ColorPicker.css.js.map +1 -0
- package/dist/esm/components/controls/ColorPicker/ColorPicker.js +4 -18
- package/dist/esm/components/controls/ColorPicker/ColorPicker.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/ColorPresets.js +5 -44
- package/dist/esm/components/controls/ColorPicker/ColorPresets.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/ColorSwatch.js +4 -58
- package/dist/esm/components/controls/ColorPicker/ColorSwatch.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/EyeDropper.js +4 -50
- package/dist/esm/components/controls/ColorPicker/EyeDropper.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/HueSlider.js +3 -32
- package/dist/esm/components/controls/ColorPicker/HueSlider.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/colorUtils.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/palettes/material.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/palettes/professional.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/palettes/tailwind.js.map +1 -1
- package/dist/esm/components/controls/ColorPicker/useColor.js +1 -0
- package/dist/esm/components/controls/ColorPicker/useColor.js.map +1 -1
- package/dist/esm/components/controls/CurveEditor/CurveCanvas.js +8 -30
- package/dist/esm/components/controls/CurveEditor/CurveCanvas.js.map +1 -1
- package/dist/esm/components/controls/CurveEditor/CurveEditor.css.js +17 -0
- package/dist/esm/components/controls/CurveEditor/CurveEditor.css.js.map +1 -0
- package/dist/esm/components/controls/CurveEditor/CurveEditor.js +17 -23
- package/dist/esm/components/controls/CurveEditor/CurveEditor.js.map +1 -1
- package/dist/esm/components/controls/CurveEditor/CurveToolbar.js +6 -23
- package/dist/esm/components/controls/CurveEditor/CurveToolbar.js.map +1 -1
- package/dist/esm/components/controls/CurveEditor/curvePresets.js.map +1 -1
- package/dist/esm/components/controls/CurveEditor/curveUtils.js +7 -16
- package/dist/esm/components/controls/CurveEditor/curveUtils.js.map +1 -1
- package/dist/esm/components/controls/CurveEditor/useCurveInteraction.js +1 -0
- package/dist/esm/components/controls/CurveEditor/useCurveInteraction.js.map +1 -1
- package/dist/esm/components/controls/CurveEditor/useCurveRenderer.js +39 -193
- package/dist/esm/components/controls/CurveEditor/useCurveRenderer.js.map +1 -1
- package/dist/esm/components/controls/NumberInput/NumberInput.css.js +17 -0
- package/dist/esm/components/controls/NumberInput/NumberInput.css.js.map +1 -0
- package/dist/esm/components/controls/NumberInput/NumberInput.js +22 -166
- package/dist/esm/components/controls/NumberInput/NumberInput.js.map +1 -1
- package/dist/esm/components/controls/NumberInput/useNumberInput.js +1 -1
- package/dist/esm/components/controls/NumberInput/useNumberInput.js.map +1 -1
- package/dist/esm/components/controls/Select/Select.css.js +18 -0
- package/dist/esm/components/controls/Select/Select.css.js.map +1 -0
- package/dist/esm/components/controls/Select/Select.js +29 -235
- package/dist/esm/components/controls/Select/Select.js.map +1 -1
- package/dist/esm/components/controls/Slider/Slider.css.js +17 -0
- package/dist/esm/components/controls/Slider/Slider.css.js.map +1 -0
- package/dist/esm/components/controls/Slider/Slider.js +12 -159
- package/dist/esm/components/controls/Slider/Slider.js.map +1 -1
- package/dist/esm/components/controls/TreeView/TreeNode.css.js +15 -0
- package/dist/esm/components/controls/TreeView/TreeNode.css.js.map +1 -0
- package/dist/esm/components/controls/TreeView/TreeNode.js +18 -90
- package/dist/esm/components/controls/TreeView/TreeNode.js.map +1 -1
- package/dist/esm/components/controls/TreeView/TreeView.css.js +8 -0
- package/dist/esm/components/controls/TreeView/TreeView.css.js.map +1 -0
- package/dist/esm/components/controls/TreeView/TreeView.js +11 -18
- package/dist/esm/components/controls/TreeView/TreeView.js.map +1 -1
- package/dist/esm/components/controls/TreeView/useTreeState.js +1 -0
- package/dist/esm/components/controls/TreeView/useTreeState.js.map +1 -1
- package/dist/esm/components/controls/VectorInput/VectorInput.css.js +13 -0
- package/dist/esm/components/controls/VectorInput/VectorInput.css.js.map +1 -0
- package/dist/esm/components/controls/VectorInput/VectorInput.js +11 -83
- package/dist/esm/components/controls/VectorInput/VectorInput.js.map +1 -1
- package/dist/esm/components/editor/ChatPanel/ChatActionBar.js +13 -0
- package/dist/esm/components/editor/ChatPanel/ChatActionBar.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatAttachment.js +36 -0
- package/dist/esm/components/editor/ChatPanel/ChatAttachment.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatBubble.js +13 -0
- package/dist/esm/components/editor/ChatPanel/ChatBubble.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatCodeBlock.js +34 -0
- package/dist/esm/components/editor/ChatPanel/ChatCodeBlock.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatContextChip.js +17 -0
- package/dist/esm/components/editor/ChatPanel/ChatContextChip.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatEmptyState.js +16 -0
- package/dist/esm/components/editor/ChatPanel/ChatEmptyState.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatInput.js +67 -0
- package/dist/esm/components/editor/ChatPanel/ChatInput.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatInputToolbar.js +13 -0
- package/dist/esm/components/editor/ChatPanel/ChatInputToolbar.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatMessage.js +37 -0
- package/dist/esm/components/editor/ChatPanel/ChatMessage.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatMessageList.js +32 -0
- package/dist/esm/components/editor/ChatPanel/ChatMessageList.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatPanel.css.js +72 -0
- package/dist/esm/components/editor/ChatPanel/ChatPanel.css.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatPanel.js +13 -0
- package/dist/esm/components/editor/ChatPanel/ChatPanel.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatToolCall.js +35 -0
- package/dist/esm/components/editor/ChatPanel/ChatToolCall.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatTypingIndicator.js +16 -0
- package/dist/esm/components/editor/ChatPanel/ChatTypingIndicator.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/useChatInput.js +60 -0
- package/dist/esm/components/editor/ChatPanel/useChatInput.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/useChatMessages.js +47 -0
- package/dist/esm/components/editor/ChatPanel/useChatMessages.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/useChatScroll.js +71 -0
- package/dist/esm/components/editor/ChatPanel/useChatScroll.js.map +1 -0
- package/dist/esm/components/editor/PropertyInspector/PropertyGroup.css.js +10 -0
- package/dist/esm/components/editor/PropertyInspector/PropertyGroup.css.js.map +1 -0
- package/dist/esm/components/editor/PropertyInspector/PropertyGroup.js +14 -34
- package/dist/esm/components/editor/PropertyInspector/PropertyGroup.js.map +1 -1
- package/dist/esm/components/editor/PropertyInspector/PropertyPanel.css.js +13 -0
- package/dist/esm/components/editor/PropertyInspector/PropertyPanel.css.js.map +1 -0
- package/dist/esm/components/editor/PropertyInspector/PropertyPanel.js +35 -64
- package/dist/esm/components/editor/PropertyInspector/PropertyPanel.js.map +1 -1
- package/dist/esm/components/editor/PropertyInspector/PropertyRow.css.js +15 -0
- package/dist/esm/components/editor/PropertyInspector/PropertyRow.css.js.map +1 -0
- package/dist/esm/components/editor/PropertyInspector/PropertyRow.js +34 -114
- package/dist/esm/components/editor/PropertyInspector/PropertyRow.js.map +1 -1
- package/dist/esm/components/editor/PropertyInspector/PropertySection.css.js +15 -0
- package/dist/esm/components/editor/PropertyInspector/PropertySection.css.js.map +1 -0
- package/dist/esm/components/editor/PropertyInspector/PropertySection.js +15 -100
- package/dist/esm/components/editor/PropertyInspector/PropertySection.js.map +1 -1
- package/dist/esm/components/editor/PropertyInspector/usePropertyUndo.js +1 -0
- package/dist/esm/components/editor/PropertyInspector/usePropertyUndo.js.map +1 -1
- package/dist/esm/components/editor/ViewportGizmo/ViewportGizmo.css.js +10 -0
- package/dist/esm/components/editor/ViewportGizmo/ViewportGizmo.css.js.map +1 -0
- package/dist/esm/components/editor/ViewportGizmo/ViewportGizmo.js +90 -0
- package/dist/esm/components/editor/ViewportGizmo/ViewportGizmo.js.map +1 -0
- package/dist/esm/components/editor/ViewportGizmo/gizmoMath.js +259 -0
- package/dist/esm/components/editor/ViewportGizmo/gizmoMath.js.map +1 -0
- package/dist/esm/components/editor/ViewportGizmo/useGizmoInteraction.js +250 -0
- package/dist/esm/components/editor/ViewportGizmo/useGizmoInteraction.js.map +1 -0
- package/dist/esm/components/editor/ViewportGizmo/useGizmoRenderer.js +191 -0
- package/dist/esm/components/editor/ViewportGizmo/useGizmoRenderer.js.map +1 -0
- package/dist/esm/components/feedback/Dialog/Dialog.css.js +16 -0
- package/dist/esm/components/feedback/Dialog/Dialog.css.js.map +1 -0
- package/dist/esm/components/feedback/Dialog/Dialog.js +6 -4
- package/dist/esm/components/feedback/Dialog/Dialog.js.map +1 -1
- package/dist/esm/components/feedback/Dialog/DialogBody.js +5 -15
- package/dist/esm/components/feedback/Dialog/DialogBody.js.map +1 -1
- package/dist/esm/components/feedback/Dialog/DialogClose.js +1 -0
- package/dist/esm/components/feedback/Dialog/DialogClose.js.map +1 -1
- package/dist/esm/components/feedback/Dialog/DialogFooter.js +5 -24
- package/dist/esm/components/feedback/Dialog/DialogFooter.js.map +1 -1
- package/dist/esm/components/feedback/Dialog/DialogHeader.js +5 -63
- package/dist/esm/components/feedback/Dialog/DialogHeader.js.map +1 -1
- package/dist/esm/components/feedback/Dialog/useDialogAnimation.js +2 -1
- package/dist/esm/components/feedback/Dialog/useDialogAnimation.js.map +1 -1
- package/dist/esm/components/feedback/Dialog/useFocusTrap.js +1 -0
- package/dist/esm/components/feedback/Dialog/useFocusTrap.js.map +1 -1
- package/dist/esm/components/feedback/Toast/ToastContainer.css.js +10 -0
- package/dist/esm/components/feedback/Toast/ToastContainer.css.js.map +1 -0
- package/dist/esm/components/feedback/Toast/ToastContainer.js +12 -10
- package/dist/esm/components/feedback/Toast/ToastContainer.js.map +1 -1
- package/dist/esm/components/feedback/Toast/ToastItem.css.js +16 -0
- package/dist/esm/components/feedback/Toast/ToastItem.css.js.map +1 -0
- package/dist/esm/components/feedback/Toast/ToastItem.js +8 -138
- package/dist/esm/components/feedback/Toast/ToastItem.js.map +1 -1
- package/dist/esm/components/feedback/Toast/ToastProvider.js +1 -0
- package/dist/esm/components/feedback/Toast/ToastProvider.js.map +1 -1
- package/dist/esm/components/feedback/Toast/useToast.js +1 -0
- package/dist/esm/components/feedback/Toast/useToast.js.map +1 -1
- package/dist/esm/components/form/FormHelperText.css.js +7 -0
- package/dist/esm/components/form/FormHelperText.css.js.map +1 -0
- package/dist/esm/components/form/FormHelperText.js +5 -15
- package/dist/esm/components/form/FormHelperText.js.map +1 -1
- package/dist/esm/components/form/FormLabel.css.js +8 -0
- package/dist/esm/components/form/FormLabel.css.js.map +1 -0
- package/dist/esm/components/form/FormLabel.js +5 -21
- package/dist/esm/components/form/FormLabel.js.map +1 -1
- package/dist/esm/components/form/InputWrapper.css.js +7 -0
- package/dist/esm/components/form/InputWrapper.css.js.map +1 -0
- package/dist/esm/components/form/InputWrapper.js +6 -74
- package/dist/esm/components/form/InputWrapper.js.map +1 -1
- package/dist/esm/components/layout/Accordion/Accordion.css.js +20 -0
- package/dist/esm/components/layout/Accordion/Accordion.css.js.map +1 -0
- package/dist/esm/components/layout/Accordion/Accordion.js +12 -11
- package/dist/esm/components/layout/Accordion/Accordion.js.map +1 -1
- package/dist/esm/components/layout/Accordion/AccordionContent.js +4 -20
- package/dist/esm/components/layout/Accordion/AccordionContent.js.map +1 -1
- package/dist/esm/components/layout/Accordion/AccordionItem.js +4 -7
- package/dist/esm/components/layout/Accordion/AccordionItem.js.map +1 -1
- package/dist/esm/components/layout/Accordion/AccordionTrigger.js +12 -96
- package/dist/esm/components/layout/Accordion/AccordionTrigger.js.map +1 -1
- package/dist/esm/components/layout/Flex/Flex.css.js +11 -0
- package/dist/esm/components/layout/Flex/Flex.css.js.map +1 -0
- package/dist/esm/components/layout/Flex/Flex.js +47 -73
- package/dist/esm/components/layout/Flex/Flex.js.map +1 -1
- package/dist/esm/components/layout/Grid/Grid.css.js +9 -0
- package/dist/esm/components/layout/Grid/Grid.css.js.map +1 -0
- package/dist/esm/components/layout/Grid/Grid.js +39 -64
- package/dist/esm/components/layout/Grid/Grid.js.map +1 -1
- package/dist/esm/components/layout/PanelSurface/PanelSurface.css.js +16 -0
- package/dist/esm/components/layout/PanelSurface/PanelSurface.css.js.map +1 -0
- package/dist/esm/components/layout/PanelSurface/PanelSurface.js +23 -78
- package/dist/esm/components/layout/PanelSurface/PanelSurface.js.map +1 -1
- package/dist/esm/components/layout/ScrollArea/ScrollArea.css.js +27 -0
- package/dist/esm/components/layout/ScrollArea/ScrollArea.css.js.map +1 -0
- package/dist/esm/components/layout/ScrollArea/ScrollArea.js +35 -134
- package/dist/esm/components/layout/ScrollArea/ScrollArea.js.map +1 -1
- package/dist/esm/components/layout/Spacer/Spacer.css.js +8 -0
- package/dist/esm/components/layout/Spacer/Spacer.css.js.map +1 -0
- package/dist/esm/components/layout/Spacer/Spacer.js +13 -31
- package/dist/esm/components/layout/Spacer/Spacer.js.map +1 -1
- package/dist/esm/components/layout/SplitPane/SplitPane.css.js +10 -0
- package/dist/esm/components/layout/SplitPane/SplitPane.css.js.map +1 -0
- package/dist/esm/components/layout/SplitPane/SplitPane.js +12 -36
- package/dist/esm/components/layout/SplitPane/SplitPane.js.map +1 -1
- package/dist/esm/components/layout/SplitPane/SplitPanePanel.js +5 -8
- package/dist/esm/components/layout/SplitPane/SplitPanePanel.js.map +1 -1
- package/dist/esm/components/layout/Stack/Stack.css.js +8 -0
- package/dist/esm/components/layout/Stack/Stack.css.js.map +1 -0
- package/dist/esm/components/layout/Stack/Stack.js +36 -65
- package/dist/esm/components/layout/Stack/Stack.js.map +1 -1
- package/dist/esm/components/navigation/ContextMenu/ContextMenu.js +6 -4
- package/dist/esm/components/navigation/ContextMenu/ContextMenu.js.map +1 -1
- package/dist/esm/components/navigation/ContextMenu/useContextMenuTarget.js +1 -0
- package/dist/esm/components/navigation/ContextMenu/useContextMenuTarget.js.map +1 -1
- package/dist/esm/components/navigation/Menu/Menu.css.js +16 -0
- package/dist/esm/components/navigation/Menu/Menu.css.js.map +1 -0
- package/dist/esm/components/navigation/Menu/Menu.helpers.js +9 -7
- package/dist/esm/components/navigation/Menu/Menu.helpers.js.map +1 -1
- package/dist/esm/components/navigation/Menu/Menu.js +6 -4
- package/dist/esm/components/navigation/Menu/Menu.js.map +1 -1
- package/dist/esm/components/navigation/Menu/useMenu.js +1 -0
- package/dist/esm/components/navigation/Menu/useMenu.js.map +1 -1
- package/dist/esm/components/navigation/Tabs/Tab.js +31 -174
- package/dist/esm/components/navigation/Tabs/Tab.js.map +1 -1
- package/dist/esm/components/navigation/Tabs/TabList.js +5 -56
- package/dist/esm/components/navigation/Tabs/TabList.js.map +1 -1
- package/dist/esm/components/navigation/Tabs/TabPanel.js +4 -12
- package/dist/esm/components/navigation/Tabs/TabPanel.js.map +1 -1
- package/dist/esm/components/navigation/Tabs/Tabs.css.js +26 -0
- package/dist/esm/components/navigation/Tabs/Tabs.css.js.map +1 -0
- package/dist/esm/components/navigation/Tabs/Tabs.js +6 -13
- package/dist/esm/components/navigation/Tabs/Tabs.js.map +1 -1
- package/dist/esm/components/primitives/BaseButton/BaseButton.js +1 -0
- package/dist/esm/components/primitives/BaseButton/BaseButton.js.map +1 -1
- package/dist/esm/components/primitives/Button/Button.css.js +9 -0
- package/dist/esm/components/primitives/Button/Button.css.js.map +1 -0
- package/dist/esm/components/primitives/Button/Button.js +5 -149
- package/dist/esm/components/primitives/Button/Button.js.map +1 -1
- package/dist/esm/components/primitives/Checkbox/Checkbox.css.js +14 -0
- package/dist/esm/components/primitives/Checkbox/Checkbox.css.js.map +1 -0
- package/dist/esm/components/primitives/Checkbox/Checkbox.js +20 -112
- package/dist/esm/components/primitives/Checkbox/Checkbox.js.map +1 -1
- package/dist/esm/components/primitives/Checkbox/CheckboxGroup.js +10 -17
- package/dist/esm/components/primitives/Checkbox/CheckboxGroup.js.map +1 -1
- package/dist/esm/components/primitives/Collapsible/Collapsible.css.js +18 -0
- package/dist/esm/components/primitives/Collapsible/Collapsible.css.js.map +1 -0
- package/dist/esm/components/primitives/Collapsible/Collapsible.js +45 -83
- package/dist/esm/components/primitives/Collapsible/Collapsible.js.map +1 -1
- package/dist/esm/components/primitives/Icon/Icon.css.js +7 -0
- package/dist/esm/components/primitives/Icon/Icon.css.js.map +1 -0
- package/dist/esm/components/primitives/Icon/Icon.js +23 -55
- package/dist/esm/components/primitives/Icon/Icon.js.map +1 -1
- package/dist/esm/components/primitives/IconButton/IconButton.css.js +8 -0
- package/dist/esm/components/primitives/IconButton/IconButton.css.js.map +1 -0
- package/dist/esm/components/primitives/IconButton/IconButton.js +10 -170
- package/dist/esm/components/primitives/IconButton/IconButton.js.map +1 -1
- package/dist/esm/components/primitives/Input/Input.css.js +12 -0
- package/dist/esm/components/primitives/Input/Input.css.js.map +1 -0
- package/dist/esm/components/primitives/Input/Input.js +11 -79
- package/dist/esm/components/primitives/Input/Input.js.map +1 -1
- package/dist/esm/components/primitives/Paper/Paper.css.js +7 -0
- package/dist/esm/components/primitives/Paper/Paper.css.js.map +1 -0
- package/dist/esm/components/primitives/Paper/Paper.js +18 -90
- package/dist/esm/components/primitives/Paper/Paper.js.map +1 -1
- package/dist/esm/components/primitives/Popover/Popover.css.js +8 -0
- package/dist/esm/components/primitives/Popover/Popover.css.js.map +1 -0
- package/dist/esm/components/primitives/Popover/Popover.js +1 -0
- package/dist/esm/components/primitives/Popover/Popover.js.map +1 -1
- package/dist/esm/components/primitives/Popover/PopoverClose.js +4 -32
- package/dist/esm/components/primitives/Popover/PopoverClose.js.map +1 -1
- package/dist/esm/components/primitives/Popover/PopoverContent.js +19 -45
- package/dist/esm/components/primitives/Popover/PopoverContent.js.map +1 -1
- package/dist/esm/components/primitives/Popover/PopoverTrigger.js +1 -0
- package/dist/esm/components/primitives/Popover/PopoverTrigger.js.map +1 -1
- package/dist/esm/components/primitives/Switch/Switch.css.js +15 -0
- package/dist/esm/components/primitives/Switch/Switch.css.js.map +1 -0
- package/dist/esm/components/primitives/Switch/Switch.js +29 -122
- package/dist/esm/components/primitives/Switch/Switch.js.map +1 -1
- package/dist/esm/components/primitives/Text/Text.css.js +9 -0
- package/dist/esm/components/primitives/Text/Text.css.js.map +1 -0
- package/dist/esm/components/primitives/Text/Text.js +20 -126
- package/dist/esm/components/primitives/Text/Text.js.map +1 -1
- package/dist/esm/components/primitives/Tooltip/Arrow.js +8 -41
- package/dist/esm/components/primitives/Tooltip/Arrow.js.map +1 -1
- package/dist/esm/components/primitives/Tooltip/Tooltip.css.js +9 -0
- package/dist/esm/components/primitives/Tooltip/Tooltip.css.js.map +1 -0
- package/dist/esm/components/primitives/Tooltip/Tooltip.js +20 -79
- package/dist/esm/components/primitives/Tooltip/Tooltip.js.map +1 -1
- package/dist/esm/components/primitives/Tooltip/utils.js.map +1 -1
- package/dist/esm/components/primitives/canvas/CanvasContainer.css.js +10 -0
- package/dist/esm/components/primitives/canvas/CanvasContainer.css.js.map +1 -0
- package/dist/esm/components/primitives/canvas/CanvasContainer.js +32 -0
- package/dist/esm/components/primitives/canvas/CanvasContainer.js.map +1 -0
- package/dist/esm/components/primitives/canvas/canvasCoords.js +51 -0
- package/dist/esm/components/primitives/canvas/canvasCoords.js.map +1 -0
- package/dist/esm/components/primitives/canvas/canvasDrawing.js +251 -0
- package/dist/esm/components/primitives/canvas/canvasDrawing.js.map +1 -0
- package/dist/esm/components/primitives/canvas/canvasTheme.js +43 -0
- package/dist/esm/components/primitives/canvas/canvasTheme.js.map +1 -0
- package/dist/esm/components/primitives/canvas/useCanvasRenderer.js +26 -0
- package/dist/esm/components/primitives/canvas/useCanvasRenderer.js.map +1 -0
- package/dist/esm/components/shell/AppShell/AppShell.css.js +13 -0
- package/dist/esm/components/shell/AppShell/AppShell.css.js.map +1 -0
- package/dist/esm/components/shell/AppShell/AppShell.js +16 -101
- package/dist/esm/components/shell/AppShell/AppShell.js.map +1 -1
- package/dist/esm/components/shell/FloatingPanel/FloatingPanel.css.js +18 -0
- package/dist/esm/components/shell/FloatingPanel/FloatingPanel.css.js.map +1 -0
- package/dist/esm/components/shell/FloatingPanel/FloatingPanel.js +20 -97
- package/dist/esm/components/shell/FloatingPanel/FloatingPanel.js.map +1 -1
- package/dist/esm/components/shell/MenuBar/MenuBar.css.js +16 -0
- package/dist/esm/components/shell/MenuBar/MenuBar.css.js.map +1 -0
- package/dist/esm/components/shell/MenuBar/MenuBar.js +14 -139
- package/dist/esm/components/shell/MenuBar/MenuBar.js.map +1 -1
- package/dist/esm/components/shell/StatusBar/StatusBar.css.js +11 -0
- package/dist/esm/components/shell/StatusBar/StatusBar.css.js.map +1 -0
- package/dist/esm/components/shell/StatusBar/StatusBar.js +11 -107
- package/dist/esm/components/shell/StatusBar/StatusBar.js.map +1 -1
- package/dist/esm/components/shell/Toolbar/Toolbar.css.js +11 -0
- package/dist/esm/components/shell/Toolbar/Toolbar.css.js.map +1 -0
- package/dist/esm/components/shell/Toolbar/Toolbar.js +21 -97
- package/dist/esm/components/shell/Toolbar/Toolbar.js.map +1 -1
- package/dist/esm/context/KeyboardContext.js +1 -0
- package/dist/esm/context/KeyboardContext.js.map +1 -1
- package/dist/esm/index.js +26 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/node_modules/@vanilla-extract/css/adapter/dist/vanilla-extract-css-adapter.esm.js +15 -0
- package/dist/esm/node_modules/@vanilla-extract/css/adapter/dist/vanilla-extract-css-adapter.esm.js.map +1 -0
- package/dist/esm/node_modules/@vanilla-extract/css/dist/transformCss-fd0786e1.esm.js +128 -0
- package/dist/esm/node_modules/@vanilla-extract/css/dist/transformCss-fd0786e1.esm.js.map +1 -0
- package/dist/esm/node_modules/@vanilla-extract/css/dist/vanilla-extract-css.esm.js +70 -0
- package/dist/esm/node_modules/@vanilla-extract/css/dist/vanilla-extract-css.esm.js.map +1 -0
- package/dist/esm/node_modules/@vanilla-extract/css/node_modules/lru-cache/dist/esm/index.js +1543 -0
- package/dist/esm/node_modules/@vanilla-extract/css/node_modules/lru-cache/dist/esm/index.js.map +1 -0
- package/dist/esm/node_modules/@vanilla-extract/dynamic/dist/vanilla-extract-dynamic.esm.js +25 -0
- package/dist/esm/node_modules/@vanilla-extract/dynamic/dist/vanilla-extract-dynamic.esm.js.map +1 -0
- package/dist/esm/node_modules/@vanilla-extract/private/dist/vanilla-extract-private.esm.js +10 -0
- package/dist/esm/node_modules/@vanilla-extract/private/dist/vanilla-extract-private.esm.js.map +1 -0
- package/dist/esm/node_modules/@vanilla-extract/recipes/dist/createRuntimeFn-62c9670f.esm.js +112 -0
- package/dist/esm/node_modules/@vanilla-extract/recipes/dist/createRuntimeFn-62c9670f.esm.js.map +1 -0
- package/dist/esm/node_modules/cssesc/cssesc.js +120 -0
- package/dist/esm/node_modules/cssesc/cssesc.js.map +1 -0
- package/dist/esm/node_modules/dedent/dist/dedent.js +98 -0
- package/dist/esm/node_modules/dedent/dist/dedent.js.map +1 -0
- package/dist/esm/node_modules/deepmerge/dist/cjs.js +143 -0
- package/dist/esm/node_modules/deepmerge/dist/cjs.js.map +1 -0
- package/dist/esm/theme/ThemeProvider.js +13 -7
- package/dist/esm/theme/ThemeProvider.js.map +1 -1
- package/dist/esm/theme/VanillaThemeProvider.js +26 -0
- package/dist/esm/theme/VanillaThemeProvider.js.map +1 -0
- package/dist/esm/theme/contract.css.js +4 -0
- package/dist/esm/theme/contract.css.js.map +1 -0
- package/dist/esm/theme/darkTheme.css.js +6 -0
- package/dist/esm/theme/darkTheme.css.js.map +1 -0
- package/dist/esm/utils/cx.js +14 -0
- package/dist/esm/utils/cx.js.map +1 -0
- package/dist/esm/utils/mathExpression.js.map +1 -1
- package/dist/esm/utils/mathUtils.js.map +1 -1
- package/dist/types/components/controls/CartesianPicker/CartesianPicker.d.ts +6 -0
- package/dist/types/components/controls/CartesianPicker/CartesianPicker.types.d.ts +163 -0
- package/dist/types/components/controls/CurveEditor/CurveEditor.types.d.ts +5 -13
- package/dist/types/components/controls/CurveEditor/curveUtils.d.ts +3 -1
- package/dist/types/components/controls/Select/Select.d.ts +1 -1
- package/dist/types/components/editor/ChatPanel/ChatActionBar.d.ts +288 -0
- package/dist/types/components/editor/ChatPanel/ChatAttachment.d.ts +292 -0
- package/dist/types/components/editor/ChatPanel/ChatBubble.d.ts +289 -0
- package/dist/types/components/editor/ChatPanel/ChatCodeBlock.d.ts +294 -0
- package/dist/types/components/editor/ChatPanel/ChatContextChip.d.ts +292 -0
- package/dist/types/components/editor/ChatPanel/ChatEmptyState.d.ts +292 -0
- package/dist/types/components/editor/ChatPanel/ChatInput.d.ts +300 -0
- package/dist/types/components/editor/ChatPanel/ChatInputToolbar.d.ts +288 -0
- package/dist/types/components/editor/ChatPanel/ChatMessage.d.ts +294 -0
- package/dist/types/components/editor/ChatPanel/ChatMessageList.d.ts +293 -0
- package/dist/types/components/editor/ChatPanel/ChatPanel.d.ts +290 -0
- package/dist/types/components/editor/ChatPanel/ChatPanel.types.d.ts +409 -0
- package/dist/types/components/editor/ChatPanel/ChatToolCall.d.ts +294 -0
- package/dist/types/components/editor/ChatPanel/ChatTypingIndicator.d.ts +291 -0
- package/dist/types/components/editor/ChatPanel/useChatInput.d.ts +5 -0
- package/dist/types/components/editor/ChatPanel/useChatMessages.d.ts +5 -0
- package/dist/types/components/editor/ChatPanel/useChatScroll.d.ts +5 -0
- package/dist/types/components/editor/ViewportGizmo/ViewportGizmo.d.ts +6 -0
- package/dist/types/components/editor/ViewportGizmo/ViewportGizmo.types.d.ts +146 -0
- package/dist/types/components/editor/ViewportGizmo/gizmoMath.d.ts +73 -0
- package/dist/types/components/form/FormHelperText.d.ts +13 -15
- package/dist/types/components/form/FormLabel.d.ts +13 -15
- package/dist/types/components/form/InputWrapper.d.ts +13 -15
- package/dist/types/components/layout/PanelSurface/PanelSurface.d.ts +54 -59
- package/dist/types/components/layout/Spacer/Spacer.d.ts +17 -19
- package/dist/types/components/navigation/Menu/Menu.types.d.ts +1 -1
- package/dist/types/components/primitives/Button/Button.d.ts +30 -18
- package/dist/types/components/primitives/Icon/Icon.d.ts +0 -7
- package/dist/types/components/primitives/IconButton/IconButton.d.ts +26 -19
- package/dist/types/components/primitives/Input/Input.d.ts +7 -2
- package/dist/types/components/primitives/Paper/Paper.d.ts +23 -21
- package/dist/types/components/primitives/Switch/Switch.d.ts +7 -2
- package/dist/types/components/primitives/Text/Text.d.ts +20 -18
- package/dist/types/components/primitives/Tooltip/Tooltip.d.ts +7 -3
- package/dist/types/components/primitives/Tooltip/types.d.ts +1 -1
- package/dist/types/components/primitives/canvas/canvas.types.d.ts +27 -0
- package/dist/types/components/shell/AppShell/AppShell.d.ts +86 -92
- package/dist/types/components/shell/MenuBar/MenuBar.d.ts +66 -72
- package/dist/types/components/shell/StatusBar/StatusBar.d.ts +42 -46
- package/dist/types/components/shell/Toolbar/Toolbar.d.ts +77 -84
- package/dist/types/index.d.ts +29 -6
- package/dist/types/theme/ThemeProvider.d.ts +9 -2
- package/dist/types/theme/VanillaThemeProvider.d.ts +34 -0
- package/dist/types/theme/contract.css.d.ts +164 -0
- package/dist/types/theme/{tokens.d.ts → darkTheme.css.d.ts} +43 -39
- package/dist/types/types/common.d.ts +1 -8
- package/dist/types/utils/cx.d.ts +11 -0
- package/package.json +34 -30
- package/dist/esm/components/feedback/Dialog/Dialog.styled.js +0 -80
- package/dist/esm/components/feedback/Dialog/Dialog.styled.js.map +0 -1
- package/dist/esm/components/navigation/Menu/Menu.styled.js +0 -83
- package/dist/esm/components/navigation/Menu/Menu.styled.js.map +0 -1
- package/dist/esm/theme/createTheme.js +0 -10
- package/dist/esm/theme/createTheme.js.map +0 -1
- package/dist/esm/theme/tokens.js +0 -144
- package/dist/esm/theme/tokens.js.map +0 -1
- package/dist/esm/utils/objects.js +0 -22
- package/dist/esm/utils/objects.js.map +0 -1
- package/dist/esm/utils/styledUtils.js +0 -81
- package/dist/esm/utils/styledUtils.js.map +0 -1
- package/dist/types/theme/createTheme.d.ts +0 -6
- package/dist/types/theme/types.d.ts +0 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CurveEditor.js","sources":["../../../../../../src/components/controls/CurveEditor/CurveEditor.tsx"],"sourcesContent":[null],"names":[
|
|
1
|
+
{"version":3,"file":"CurveEditor.js","sources":["../../../../../../src/components/controls/CurveEditor/CurveEditor.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;AAuBO;;;;;AA0CL;;;AAIE;;AAEE;AACA;AACE;AACA;AACA;;AAEJ;AACF;AAEA;AACA;;AAEE;;AAGF;;;;AAKI;AACF;AAIF;AAEI;AACF;;AAKF;AACE;AACA;AACA;;;;;;;;AAQE;AACA;AACA;;AAEJ;;AAGA;;;;;;;;;;;;;;;;;;AAsBE;AACA;;AAED;;AAGD;AACE;AAAwC;;AAGxC;AACE;AACE;AACE;;AACK;;;;;AAKX;;AAGF;AAEI;;;;;;AAMF;AAIF;AAIM;;AAEE;;AAEH;;;;;;;AAuDI;AAKX;AAEA;;"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
|
-
import
|
|
3
|
+
import { assignInlineVars } from '../../../node_modules/@vanilla-extract/dynamic/dist/vanilla-extract-dynamic.esm.js';
|
|
3
4
|
import { IconButton } from '../../primitives/IconButton/IconButton.js';
|
|
4
5
|
import { Select } from '../Select/Select.js';
|
|
5
6
|
import { Tooltip } from '../../primitives/Tooltip/Tooltip.js';
|
|
@@ -10,33 +11,13 @@ import { TangentMirroredIcon } from '../../Icons/TangentMirroredIcon.js';
|
|
|
10
11
|
import { TangentAutoIcon } from '../../Icons/TangentAutoIcon.js';
|
|
11
12
|
import { TangentLinearIcon } from '../../Icons/TangentLinearIcon.js';
|
|
12
13
|
import { TangentStepIcon } from '../../Icons/TangentStepIcon.js';
|
|
14
|
+
import { toolbarStyle, toolbarSectionStyle, toolbarSeparatorStyle, toolbarHeightVar } from './CurveEditor.css.js';
|
|
13
15
|
|
|
14
16
|
const TOOLBAR_HEIGHT = {
|
|
15
17
|
sm: 28,
|
|
16
18
|
md: 32,
|
|
17
19
|
lg: 36,
|
|
18
20
|
};
|
|
19
|
-
const StyledToolbar = styled.div `
|
|
20
|
-
display: flex;
|
|
21
|
-
align-items: center;
|
|
22
|
-
gap: ${p => p.theme.spacing.sm}px;
|
|
23
|
-
padding: 0 ${p => p.theme.spacing.sm}px;
|
|
24
|
-
height: ${p => TOOLBAR_HEIGHT[p.$size]}px;
|
|
25
|
-
background: ${p => p.theme.colors.surface.default};
|
|
26
|
-
border-bottom: 1px solid ${p => p.theme.colors.border.default};
|
|
27
|
-
flex-shrink: 0;
|
|
28
|
-
`;
|
|
29
|
-
const ToolbarSection = styled.div `
|
|
30
|
-
display: flex;
|
|
31
|
-
align-items: center;
|
|
32
|
-
gap: ${p => p.theme.spacing.xs}px;
|
|
33
|
-
`;
|
|
34
|
-
const Separator = styled.div `
|
|
35
|
-
width: 1px;
|
|
36
|
-
height: 16px;
|
|
37
|
-
background: ${p => p.theme.colors.border.default};
|
|
38
|
-
margin: 0 ${p => p.theme.spacing.xs}px;
|
|
39
|
-
`;
|
|
40
21
|
const TANGENT_MODES = [
|
|
41
22
|
{
|
|
42
23
|
mode: 'free',
|
|
@@ -88,7 +69,9 @@ const CurveToolbar = ({ selectedTangentMode, onTangentModeChange, onPresetSelect
|
|
|
88
69
|
onPresetSelect(preset);
|
|
89
70
|
};
|
|
90
71
|
const iconSize = size === 'lg' ? 'md' : 'sm';
|
|
91
|
-
return (jsxs(
|
|
72
|
+
return (jsxs("div", { className: toolbarStyle, style: assignInlineVars({
|
|
73
|
+
[toolbarHeightVar]: `${TOOLBAR_HEIGHT[size]}px`,
|
|
74
|
+
}), "data-testid": testId ? `${testId}-toolbar` : undefined, children: [jsx("div", { className: toolbarSectionStyle, children: jsx(Select, { options: presetOptions, onChange: handlePresetChange, size: size === 'lg' ? 'md' : 'sm', variant: "ghost", disabled: disabled, placeholder: "Preset...", "aria-label": "Curve preset", minDropdownWidth: 180 }) }), !lockTangents && (jsxs(Fragment, { children: [jsx("div", { className: toolbarSeparatorStyle }), jsx("div", { className: toolbarSectionStyle, children: TANGENT_MODES.map(({ mode, label, icon, shortcut }) => (jsx(Tooltip, { title: `${label} (${shortcut})`, placement: "bottom", children: jsx(IconButton, { size: iconSize, variant: "ghost", pressed: selectedTangentMode === mode, disabled: disabled || selectedTangentMode === null, "aria-label": `${label} tangent mode`, onClick: () => onTangentModeChange(mode), children: icon }) }, mode))) })] }))] }));
|
|
92
75
|
};
|
|
93
76
|
CurveToolbar.displayName = 'CurveToolbar';
|
|
94
77
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CurveToolbar.js","sources":["../../../../../../src/components/controls/CurveEditor/CurveToolbar.tsx"],"sourcesContent":[null],"names":[
|
|
1
|
+
{"version":3,"file":"CurveToolbar.js","sources":["../../../../../../src/components/controls/CurveEditor/CurveToolbar.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;;;AAsCA;AACE;AACA;AACA;;AAGF;AAME;AACE;AACA;AACA;AACA;AACD;AACD;AACE;AACA;AACA;AACA;AACD;AACD;AACE;AACA;AACA;AACA;AACD;AACD;AACE;AACA;AACA;AACA;AACD;AACD;AACE;AACA;AACA;AACA;AACD;AACD;AACE;AACA;AACA;AACA;AACD;;;;;;AAgBA;AAED;AACE;;AACA;AACA;;AACF;AAEA;;;AAOK;AA8CP;AAEA;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curvePresets.js","sources":["../../../../../../src/components/controls/CurveEditor/curvePresets.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA,SAAS,EAAE,CACT,CAAS,EACT,CAAS,EACT,IAAY,EACZ,IAAY,EACZ,KAAa,EACb,KAAa,EACb,cAA4C,MAAM,EAAA;IAElD,OAAO;QACL,CAAC;QACD,CAAC;QACD,QAAQ,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE;QAC9B,SAAS,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE;QACjC,WAAW;QACX,EAAE,EAAE,kBAAkB,EAAE;KACzB;AACH;
|
|
1
|
+
{"version":3,"file":"curvePresets.js","sources":["../../../../../../src/components/controls/CurveEditor/curvePresets.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { clamp } from '../../../utils/mathUtils.js';
|
|
2
|
+
import { domainToCanvas as domainToCanvas$1, canvasToDomain as canvasToDomain$1 } from '../../primitives/canvas/canvasCoords.js';
|
|
3
|
+
import 'react';
|
|
4
|
+
import '../../primitives/canvas/CanvasContainer.js';
|
|
2
5
|
|
|
3
6
|
let idCounter = 0;
|
|
4
7
|
/**
|
|
@@ -212,29 +215,17 @@ function constrainTangent(keyframe, movedHandle) {
|
|
|
212
215
|
}
|
|
213
216
|
/**
|
|
214
217
|
* Convert domain coordinates to canvas pixel coordinates.
|
|
218
|
+
* Re-exported from shared canvas primitives for backward compatibility.
|
|
215
219
|
*/
|
|
216
220
|
function domainToCanvas(domainX, domainY, viewport, canvasWidth, canvasHeight) {
|
|
217
|
-
|
|
218
|
-
const [vyMin, vyMax] = viewport.viewY;
|
|
219
|
-
const vw = vxMax - vxMin || 1;
|
|
220
|
-
const vh = vyMax - vyMin || 1;
|
|
221
|
-
const px = ((domainX - vxMin) / vw) * canvasWidth;
|
|
222
|
-
// Y is flipped — canvas Y goes down, domain Y goes up
|
|
223
|
-
const py = ((vyMax - domainY) / vh) * canvasHeight;
|
|
224
|
-
return { px, py };
|
|
221
|
+
return domainToCanvas$1(domainX, domainY, viewport, canvasWidth, canvasHeight);
|
|
225
222
|
}
|
|
226
223
|
/**
|
|
227
224
|
* Convert canvas pixel coordinates to domain coordinates.
|
|
225
|
+
* Re-exported from shared canvas primitives for backward compatibility.
|
|
228
226
|
*/
|
|
229
227
|
function canvasToDomain(px, py, viewport, canvasWidth, canvasHeight) {
|
|
230
|
-
|
|
231
|
-
const [vyMin, vyMax] = viewport.viewY;
|
|
232
|
-
const vw = vxMax - vxMin || 1;
|
|
233
|
-
const vh = vyMax - vyMin || 1;
|
|
234
|
-
const x = vxMin + (px / canvasWidth) * vw;
|
|
235
|
-
// Y is flipped
|
|
236
|
-
const y = vyMax - (py / canvasHeight) * vh;
|
|
237
|
-
return { x, y };
|
|
228
|
+
return canvasToDomain$1(px, py, viewport, canvasWidth, canvasHeight);
|
|
238
229
|
}
|
|
239
230
|
/**
|
|
240
231
|
* Hit test — find the nearest element to a canvas pixel position.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curveUtils.js","sources":["../../../../../../src/components/controls/CurveEditor/curveUtils.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"curveUtils.js","sources":["../../../../../../src/components/controls/CurveEditor/curveUtils.ts"],"sourcesContent":[null],"names":["sharedDomainToCanvas","sharedCanvasToDomain"],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { useState, useRef, useCallback } from 'react';
|
|
2
3
|
import { roundToPrecision, clamp } from '../../../utils/mathUtils.js';
|
|
3
4
|
import { computeAutoTangent, hitTest, canvasToDomain, constrainTangent, sortKeyframes, generateKeyframeId } from './curveUtils.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCurveInteraction.js","sources":["../../../../../../src/components/controls/CurveEditor/useCurveInteraction.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useCurveInteraction.js","sources":["../../../../../../src/components/controls/CurveEditor/useCurveInteraction.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAkEA;;;;;;;;AASA;AAIE;;AAEF;AAEM;AAGJ;AAqBA;;;;AAYA;;AAIA;AACE;AACA;;AACA;AACA;AACF;AAEA;;;AAIE;;AAME;;AAEF;AAIF;;AAGM;AAA+B;;;;;AAM7B;;;;AAIJ;;;AAMJ;AAEI;;AACA;AACA;;AAEA;;AAGA;;AAEA;AAEA;;;;AAIE;;AAEE;;AAEE;;;AAEA;;;;;;;;;AASA;AACA;;;AAGA;;;;;AAKF;;;;AAKJ;AAEE;;;;;;;AAOE;AACA;;;;;;AAMF;;;;AAKF;AACE;;AAGF;AACA;AACF;;;;;;;;;AAUC;;AAIH;AAEI;AACA;;AAEA;;AAEA;AAEA;;AAEE;AACA;;AAGA;AACE;;AACK;;AAIL;;AACK;AACL;;;AAEA;;;;AAKJ;;;;AAKA;;AAEA;AACE;;AAEA;;AAEA;;AAIA;AACA;;;;AAKE;AACA;AACA;AACA;;AAGF;AACA;;AAGA;AACE;;;AAIF;AACE;AACA;;AAEE;;;AAGA;;;;;AAMF;;AAGF;AAIA;AACE;AACA;AACD;;;AAIH;;AAEE;;AAEA;AACA;AACE;AACA;;AAGF;AACA;;;;;;;AAOA;AAKA;;;;AAOJ;;;;;;;;;;;;;;;;AAiBC;;AAIH;AAEI;AACA;;AAEA;AAEA;;;;AAII;AAEA;;AAEE;;;;;;AAKA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;;AAIE;AACA;;AAGA;;;;;;;AAUR;;AAGI;;AAGF;AACA;;;AAIF;AACF;;;;;;;;;AAUC;;AAIH;;;AAGI;AACA;;AAEA;;AAKA;AAEA;AACE;;;;AAGA;;;;;AAMA;AAIA;AACE;AACA;;;AAGF;;;;;AAMA;;;;AAKA;;;;AAIE;;AAGF;AACE;AACA;;;AAGA;;;AAIF;AACA;AACE;AACA;;;AAGF;AAEA;;;;AAIJ;;;;;;;;;;;;;;;AAgBC;;AAIH;AAEI;;AAEA;AACE;;;;;AAIE;;;;;;AAME;;;;AAIJ;AACA;AACA;;AAEE;;;;;;AAKF;AACA;AACA;AACA;AACA;;;;;;AAKE;AACA;;;;;AAIN;;AAKF;;;;AAII;AAAuC;;;;AAKrC;AAAqD;;AAEvD;AACF;;AAGA;;AAEA;;AAEA;AACA;AACF;;;;;;;;;;AAUC;AAED;;;AAKA;AAEA;;;;AAKM;AAAuC;AAEvC;;AAEI;AACA;;;;;;AAMN;AAEA;;AAEA;AACF;;;;;;;;AASC;;;;;;;;AAaG;AAAuC;AAEvC;;AAEA;;AAGE;AACE;;;AAEF;AACE;;;AAEF;;;AAGA;;;;;AAMA;;;AAIA;AACA;AACA;;AAEJ;AAEA;AACE;AACA;;;AAGF;AACF;;;;;;;;;;AAWC;;;;;;AAQD;;;;;;AAMC;AACD;AACA;AACA;;AAEJ;;"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { useRef, useCallback, useEffect } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
3
|
+
import { drawGrid, drawDomainBounds, drawAxisLabels } from '../../primitives/canvas/canvasDrawing.js';
|
|
4
|
+
import { resolveCanvasTheme, resolveVarValue } from '../../primitives/canvas/canvasTheme.js';
|
|
5
|
+
import '../../primitives/canvas/CanvasContainer.js';
|
|
6
|
+
import { sampleCurve, domainToCanvas } from './curveUtils.js';
|
|
5
7
|
|
|
8
|
+
// CanvasThemeColors and resolveCanvasTheme are now imported from shared canvas primitives
|
|
6
9
|
function useCurveRenderer(options) {
|
|
7
|
-
const theme = useTheme();
|
|
8
10
|
const rafRef = useRef(0);
|
|
9
11
|
const draw = useCallback(() => {
|
|
10
12
|
const canvas = options.canvasRef.current;
|
|
@@ -13,6 +15,7 @@ function useCurveRenderer(options) {
|
|
|
13
15
|
const ctx = canvas.getContext('2d');
|
|
14
16
|
if (!ctx)
|
|
15
17
|
return;
|
|
18
|
+
const theme = resolveCanvasTheme(canvas);
|
|
16
19
|
const dpr = typeof window !== 'undefined' ? window.devicePixelRatio || 1 : 1;
|
|
17
20
|
const rect = canvas.getBoundingClientRect();
|
|
18
21
|
const w = rect.width;
|
|
@@ -26,11 +29,15 @@ function useCurveRenderer(options) {
|
|
|
26
29
|
else {
|
|
27
30
|
ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
|
|
28
31
|
}
|
|
29
|
-
const { curve, viewport, showGrid, gridSubdivisions, showAxisLabels, labelX, labelY, curveColor, curveWidth, renderBackground, selectedIds, hoveredElement, selectionBox, disabled, } = options;
|
|
32
|
+
const { curve, viewport, showGrid, gridSubdivisions, showAxisLabels, labelX, labelY, curveColor: rawCurveColor, curveWidth, renderBackground, selectedIds, hoveredElement, selectionBox, disabled, } = options;
|
|
33
|
+
// Resolve curveColor if it's a CSS variable reference
|
|
34
|
+
const curveColor = rawCurveColor.startsWith('var(')
|
|
35
|
+
? resolveVarValue(canvas, rawCurveColor)
|
|
36
|
+
: rawCurveColor;
|
|
30
37
|
const opacity = disabled ? 0.4 : 1;
|
|
31
38
|
// 1. Clear background
|
|
32
39
|
ctx.globalAlpha = 1;
|
|
33
|
-
ctx.fillStyle = theme.
|
|
40
|
+
ctx.fillStyle = theme.backgroundSecondary;
|
|
34
41
|
ctx.fillRect(0, 0, w, h);
|
|
35
42
|
// 1b. Custom background (histograms, gradients, etc.)
|
|
36
43
|
if (renderBackground) {
|
|
@@ -44,15 +51,27 @@ function useCurveRenderer(options) {
|
|
|
44
51
|
});
|
|
45
52
|
ctx.restore();
|
|
46
53
|
}
|
|
47
|
-
// 2. Grid lines
|
|
54
|
+
// 2. Grid lines -- based on domain values, not viewport
|
|
48
55
|
if (showGrid) {
|
|
49
|
-
drawGrid(ctx,
|
|
56
|
+
drawGrid(ctx, w, h, theme, {
|
|
57
|
+
subdivisions: gridSubdivisions,
|
|
58
|
+
domain: { domainX: curve.domainX, domainY: curve.domainY },
|
|
59
|
+
viewport,
|
|
60
|
+
opacity,
|
|
61
|
+
});
|
|
50
62
|
}
|
|
51
63
|
// 3. Domain boundary axes (stronger lines at domain min/max)
|
|
52
|
-
drawDomainBounds(ctx,
|
|
53
|
-
// 4. Axis labels
|
|
64
|
+
drawDomainBounds(ctx, w, h, theme, { domainX: curve.domainX, domainY: curve.domainY }, viewport, opacity);
|
|
65
|
+
// 4. Axis labels -- based on domain values
|
|
54
66
|
if (showAxisLabels) {
|
|
55
|
-
drawAxisLabels(ctx,
|
|
67
|
+
drawAxisLabels(ctx, w, h, theme, {
|
|
68
|
+
subdivisions: gridSubdivisions,
|
|
69
|
+
domain: { domainX: curve.domainX, domainY: curve.domainY },
|
|
70
|
+
viewport,
|
|
71
|
+
opacity,
|
|
72
|
+
labelX,
|
|
73
|
+
labelY,
|
|
74
|
+
});
|
|
56
75
|
}
|
|
57
76
|
// 5. Curve line
|
|
58
77
|
ctx.globalAlpha = opacity;
|
|
@@ -68,7 +87,7 @@ function useCurveRenderer(options) {
|
|
|
68
87
|
drawSelectionBox(ctx, selectionBox, curveColor);
|
|
69
88
|
}
|
|
70
89
|
ctx.globalAlpha = 1;
|
|
71
|
-
}, [options
|
|
90
|
+
}, [options]);
|
|
72
91
|
// Redraw on state changes
|
|
73
92
|
useEffect(() => {
|
|
74
93
|
if (options.isDragging) {
|
|
@@ -84,177 +103,8 @@ function useCurveRenderer(options) {
|
|
|
84
103
|
return undefined;
|
|
85
104
|
}, [draw, options.isDragging]);
|
|
86
105
|
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
* Integers show as "0", "1". Clean fractions show as "0.25", "0.5".
|
|
90
|
-
* Others show with minimal decimals needed.
|
|
91
|
-
*/
|
|
92
|
-
function formatLabel(value, domainRange) {
|
|
93
|
-
// Round to avoid floating-point artifacts
|
|
94
|
-
const rounded = Math.round(value * 1e10) / 1e10;
|
|
95
|
-
if (Number.isInteger(rounded))
|
|
96
|
-
return rounded.toFixed(0);
|
|
97
|
-
// For small ranges, show more precision
|
|
98
|
-
if (domainRange <= 1) {
|
|
99
|
-
// Check if it's a clean fraction (0.25, 0.5, 0.75, etc.)
|
|
100
|
-
const str = rounded.toFixed(2);
|
|
101
|
-
if (str.endsWith('0'))
|
|
102
|
-
return rounded.toFixed(1);
|
|
103
|
-
return str;
|
|
104
|
-
}
|
|
105
|
-
// For larger ranges
|
|
106
|
-
if (domainRange <= 10)
|
|
107
|
-
return rounded.toFixed(1);
|
|
108
|
-
return rounded.toFixed(0);
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* Draw grid lines at clean domain values (not viewport values).
|
|
112
|
-
* Grid lines subdivide the domain range into equal parts.
|
|
113
|
-
*/
|
|
114
|
-
function drawGrid(ctx, curve, viewport, w, h, subdivisions, theme, opacity) {
|
|
115
|
-
const [dxMin, dxMax] = curve.domainX;
|
|
116
|
-
const [dyMin, dyMax] = curve.domainY;
|
|
117
|
-
const dxRange = dxMax - dxMin || 1;
|
|
118
|
-
const dyRange = dyMax - dyMin || 1;
|
|
119
|
-
ctx.lineWidth = 1;
|
|
120
|
-
// Vertical grid lines (subdivide domain X)
|
|
121
|
-
const xStep = dxRange / subdivisions;
|
|
122
|
-
for (let i = 0; i <= subdivisions; i++) {
|
|
123
|
-
const domX = dxMin + i * xStep;
|
|
124
|
-
const { px } = domainToCanvas(domX, 0, viewport, w, h);
|
|
125
|
-
// Domain bounds drawn stronger
|
|
126
|
-
const isBound = i === 0 || i === subdivisions;
|
|
127
|
-
ctx.globalAlpha = opacity * (isBound ? 0.25 : 0.12);
|
|
128
|
-
ctx.strokeStyle = theme.colors.border.default;
|
|
129
|
-
ctx.beginPath();
|
|
130
|
-
ctx.moveTo(Math.round(px) + 0.5, 0);
|
|
131
|
-
ctx.lineTo(Math.round(px) + 0.5, h);
|
|
132
|
-
ctx.stroke();
|
|
133
|
-
}
|
|
134
|
-
// Horizontal grid lines (subdivide domain Y)
|
|
135
|
-
const yStep = dyRange / subdivisions;
|
|
136
|
-
for (let i = 0; i <= subdivisions; i++) {
|
|
137
|
-
const domY = dyMin + i * yStep;
|
|
138
|
-
const { py } = domainToCanvas(0, domY, viewport, w, h);
|
|
139
|
-
const isBound = i === 0 || i === subdivisions;
|
|
140
|
-
ctx.globalAlpha = opacity * (isBound ? 0.25 : 0.12);
|
|
141
|
-
ctx.strokeStyle = theme.colors.border.default;
|
|
142
|
-
ctx.beginPath();
|
|
143
|
-
ctx.moveTo(0, Math.round(py) + 0.5);
|
|
144
|
-
ctx.lineTo(w, Math.round(py) + 0.5);
|
|
145
|
-
ctx.stroke();
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* Draw stronger lines at the domain boundaries (min/max on both axes).
|
|
150
|
-
*/
|
|
151
|
-
function drawDomainBounds(ctx, curve, viewport, w, h, theme, opacity) {
|
|
152
|
-
const [dxMin, dxMax] = curve.domainX;
|
|
153
|
-
const [dyMin, dyMax] = curve.domainY;
|
|
154
|
-
ctx.globalAlpha = opacity * 0.35;
|
|
155
|
-
ctx.strokeStyle = theme.colors.border.default;
|
|
156
|
-
ctx.lineWidth = 1.5;
|
|
157
|
-
// Left bound (X min)
|
|
158
|
-
const { px: pxMin } = domainToCanvas(dxMin, 0, viewport, w, h);
|
|
159
|
-
ctx.beginPath();
|
|
160
|
-
ctx.moveTo(Math.round(pxMin) + 0.5, 0);
|
|
161
|
-
ctx.lineTo(Math.round(pxMin) + 0.5, h);
|
|
162
|
-
ctx.stroke();
|
|
163
|
-
// Right bound (X max)
|
|
164
|
-
const { px: pxMax } = domainToCanvas(dxMax, 0, viewport, w, h);
|
|
165
|
-
ctx.beginPath();
|
|
166
|
-
ctx.moveTo(Math.round(pxMax) + 0.5, 0);
|
|
167
|
-
ctx.lineTo(Math.round(pxMax) + 0.5, h);
|
|
168
|
-
ctx.stroke();
|
|
169
|
-
// Bottom bound (Y min)
|
|
170
|
-
const { py: pyMin } = domainToCanvas(0, dyMin, viewport, w, h);
|
|
171
|
-
ctx.beginPath();
|
|
172
|
-
ctx.moveTo(0, Math.round(pyMin) + 0.5);
|
|
173
|
-
ctx.lineTo(w, Math.round(pyMin) + 0.5);
|
|
174
|
-
ctx.stroke();
|
|
175
|
-
// Top bound (Y max)
|
|
176
|
-
const { py: pyMax } = domainToCanvas(0, dyMax, viewport, w, h);
|
|
177
|
-
ctx.beginPath();
|
|
178
|
-
ctx.moveTo(0, Math.round(pyMax) + 0.5);
|
|
179
|
-
ctx.lineTo(w, Math.round(pyMax) + 0.5);
|
|
180
|
-
ctx.stroke();
|
|
181
|
-
}
|
|
182
|
-
/**
|
|
183
|
-
* Draw axis labels at clean domain values.
|
|
184
|
-
* Y labels on the left side, X labels at the bottom.
|
|
185
|
-
* Labels correspond to domain subdivisions (e.g. 0, 0.25, 0.5, 0.75, 1).
|
|
186
|
-
*/
|
|
187
|
-
function drawAxisLabels(ctx, curve, viewport, w, h, subdivisions, theme, opacity, labelX, labelY) {
|
|
188
|
-
const [dxMin, dxMax] = curve.domainX;
|
|
189
|
-
const [dyMin, dyMax] = curve.domainY;
|
|
190
|
-
const dxRange = dxMax - dxMin || 1;
|
|
191
|
-
const dyRange = dyMax - dyMin || 1;
|
|
192
|
-
const fontSize = theme.typography.fontSize.xs;
|
|
193
|
-
ctx.globalAlpha = opacity * 0.7;
|
|
194
|
-
ctx.fillStyle = theme.colors.text.muted;
|
|
195
|
-
ctx.font = `${fontSize}px sans-serif`;
|
|
196
|
-
const sidePadding = 4;
|
|
197
|
-
const axisGap = 6;
|
|
198
|
-
const { px: xAxisMin } = domainToCanvas(dxMin, 0, viewport, w, h);
|
|
199
|
-
const { px: xAxisMax } = domainToCanvas(dxMax, 0, viewport, w, h);
|
|
200
|
-
const { py: yAxisMin } = domainToCanvas(0, dyMin, viewport, w, h);
|
|
201
|
-
const { py: yAxisMax } = domainToCanvas(0, dyMax, viewport, w, h);
|
|
202
|
-
const xTickTop = clamp(yAxisMin + axisGap, yAxisMax + 2, h - fontSize - (labelX ? fontSize + 8 : 2));
|
|
203
|
-
const xAxisLabelTop = labelX
|
|
204
|
-
? clamp(xTickTop + fontSize + 4, 0, h - fontSize - 1)
|
|
205
|
-
: 0;
|
|
206
|
-
const yTickAnchorX = clamp(xAxisMin - axisGap, sidePadding + 1, w - sidePadding);
|
|
207
|
-
const yTickMinY = fontSize / 2 + 2;
|
|
208
|
-
const yTickMaxY = Math.max(yTickMinY, xTickTop - 2);
|
|
209
|
-
const yAxisLabelTop = clamp(yAxisMax - fontSize - 4, sidePadding, Math.max(sidePadding, xTickTop - fontSize - 6));
|
|
210
|
-
// ─── X axis labels (bottom, aligned to domain subdivisions) ───
|
|
211
|
-
ctx.textBaseline = 'top';
|
|
212
|
-
const xStep = dxRange / subdivisions;
|
|
213
|
-
for (let i = 0; i <= subdivisions; i++) {
|
|
214
|
-
const domX = dxMin + i * xStep;
|
|
215
|
-
const { px } = domainToCanvas(domX, 0, viewport, w, h);
|
|
216
|
-
const label = formatLabel(domX, dxRange);
|
|
217
|
-
// Anchor edge labels to domain bounds, center the inner labels.
|
|
218
|
-
if (i === 0) {
|
|
219
|
-
ctx.textAlign = 'left';
|
|
220
|
-
ctx.fillText(label, xAxisMin + 2, xTickTop);
|
|
221
|
-
}
|
|
222
|
-
else if (i === subdivisions) {
|
|
223
|
-
ctx.textAlign = 'right';
|
|
224
|
-
ctx.fillText(label, xAxisMax - 2, xTickTop);
|
|
225
|
-
}
|
|
226
|
-
else {
|
|
227
|
-
ctx.textAlign = 'center';
|
|
228
|
-
ctx.fillText(label, clamp(px, xAxisMin + 2, xAxisMax - 2), xTickTop);
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
// ─── Y axis labels (left side, aligned to domain subdivisions) ───
|
|
232
|
-
ctx.textAlign = 'right';
|
|
233
|
-
ctx.textBaseline = 'middle';
|
|
234
|
-
const yStep = dyRange / subdivisions;
|
|
235
|
-
for (let i = 0; i <= subdivisions; i++) {
|
|
236
|
-
const domY = dyMin + i * yStep;
|
|
237
|
-
const { py } = domainToCanvas(0, domY, viewport, w, h);
|
|
238
|
-
const label = formatLabel(domY, dyRange);
|
|
239
|
-
// Clamp vertically to keep labels above bottom axis labels.
|
|
240
|
-
const clampedPy = clamp(py, yTickMinY, yTickMaxY);
|
|
241
|
-
ctx.fillText(label, yTickAnchorX, clampedPy);
|
|
242
|
-
}
|
|
243
|
-
// ─── Axis name labels ───
|
|
244
|
-
if (labelX) {
|
|
245
|
-
const textWidth = ctx.measureText(labelX).width;
|
|
246
|
-
const x = clamp(xAxisMax + axisGap, sidePadding, w - sidePadding - textWidth);
|
|
247
|
-
ctx.textAlign = 'left';
|
|
248
|
-
ctx.textBaseline = 'top';
|
|
249
|
-
ctx.fillText(labelX, x, xAxisLabelTop);
|
|
250
|
-
}
|
|
251
|
-
if (labelY) {
|
|
252
|
-
const x = clamp(xAxisMin + axisGap, sidePadding, w - sidePadding);
|
|
253
|
-
ctx.textAlign = 'left';
|
|
254
|
-
ctx.textBaseline = 'top';
|
|
255
|
-
ctx.fillText(labelY, x, yAxisLabelTop);
|
|
256
|
-
}
|
|
257
|
-
}
|
|
106
|
+
// drawGrid, drawDomainBounds, drawAxisLabels, and formatLabel are now
|
|
107
|
+
// provided by shared canvas primitives and called in the draw() function above.
|
|
258
108
|
function drawCurveLine(ctx, curve, viewport, w, h, curveColor, lineWidth) {
|
|
259
109
|
if (curve.keyframes.length < 2)
|
|
260
110
|
return;
|
|
@@ -295,7 +145,7 @@ function drawTangentHandles(ctx, curve, viewport, w, h, selectedIds, hoveredElem
|
|
|
295
145
|
// Handle In
|
|
296
146
|
const hIn = domainToCanvas(kf.x + kf.handleIn.x, kf.y + kf.handleIn.y, viewport, w, h);
|
|
297
147
|
ctx.globalAlpha = opacity * (isAutoMode ? 0.4 : 0.7);
|
|
298
|
-
ctx.strokeStyle = theme.
|
|
148
|
+
ctx.strokeStyle = theme.textMuted;
|
|
299
149
|
ctx.lineWidth = 1;
|
|
300
150
|
ctx.setLineDash([3, 3]);
|
|
301
151
|
ctx.beginPath();
|
|
@@ -307,16 +157,14 @@ function drawTangentHandles(ctx, curve, viewport, w, h, selectedIds, hoveredElem
|
|
|
307
157
|
const hInRadius = isAutoMode ? 3 : 4;
|
|
308
158
|
const isHInHovered = hoveredElement?.type === 'handleIn' && hoveredElement.keyframeIndex === i;
|
|
309
159
|
ctx.globalAlpha = opacity;
|
|
310
|
-
ctx.fillStyle = isHInHovered
|
|
311
|
-
? theme.colors.text.primary
|
|
312
|
-
: theme.colors.text.secondary;
|
|
160
|
+
ctx.fillStyle = isHInHovered ? theme.textPrimary : theme.textSecondary;
|
|
313
161
|
ctx.beginPath();
|
|
314
162
|
ctx.arc(hIn.px, hIn.py, isHInHovered ? hInRadius + 1 : hInRadius, 0, Math.PI * 2);
|
|
315
163
|
ctx.fill();
|
|
316
164
|
// Handle Out
|
|
317
165
|
const hOut = domainToCanvas(kf.x + kf.handleOut.x, kf.y + kf.handleOut.y, viewport, w, h);
|
|
318
166
|
ctx.globalAlpha = opacity * (isAutoMode ? 0.4 : 0.7);
|
|
319
|
-
ctx.strokeStyle = theme.
|
|
167
|
+
ctx.strokeStyle = theme.textMuted;
|
|
320
168
|
ctx.lineWidth = 1;
|
|
321
169
|
ctx.setLineDash([3, 3]);
|
|
322
170
|
ctx.beginPath();
|
|
@@ -329,9 +177,7 @@ function drawTangentHandles(ctx, curve, viewport, w, h, selectedIds, hoveredElem
|
|
|
329
177
|
const isHOutHovered = hoveredElement?.type === 'handleOut' &&
|
|
330
178
|
hoveredElement.keyframeIndex === i;
|
|
331
179
|
ctx.globalAlpha = opacity;
|
|
332
|
-
ctx.fillStyle = isHOutHovered
|
|
333
|
-
? theme.colors.text.primary
|
|
334
|
-
: theme.colors.text.secondary;
|
|
180
|
+
ctx.fillStyle = isHOutHovered ? theme.textPrimary : theme.textSecondary;
|
|
335
181
|
ctx.beginPath();
|
|
336
182
|
ctx.arc(hOut.px, hOut.py, isHOutHovered ? hOutRadius + 1 : hOutRadius, 0, Math.PI * 2);
|
|
337
183
|
ctx.fill();
|
|
@@ -367,12 +213,12 @@ function drawKeyframes(ctx, curve, viewport, w, h, curveColor, selectedIds, hove
|
|
|
367
213
|
if (isSelected) {
|
|
368
214
|
ctx.fillStyle = curveColor;
|
|
369
215
|
ctx.fill();
|
|
370
|
-
ctx.strokeStyle = theme.
|
|
216
|
+
ctx.strokeStyle = theme.textPrimary;
|
|
371
217
|
ctx.lineWidth = 2;
|
|
372
218
|
ctx.stroke();
|
|
373
219
|
}
|
|
374
220
|
else {
|
|
375
|
-
ctx.fillStyle = theme.
|
|
221
|
+
ctx.fillStyle = theme.textPrimary;
|
|
376
222
|
ctx.fill();
|
|
377
223
|
ctx.strokeStyle = curveColor;
|
|
378
224
|
ctx.lineWidth = 1.5;
|