@weasel-js/ui 1.5.0 → 1.5.2
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/dist/chunks/{ActionBar-DxGp3WuZ.js → ActionBar-CLwiY3Jg.js} +5 -6
- package/dist/chunks/ActionBar-CLwiY3Jg.js.map +1 -0
- package/dist/chunks/{ActionsBar-D1VFreoj.js → ActionsBar-D84a4eGy.js} +2 -2
- package/dist/chunks/{ActionsBar-D1VFreoj.js.map → ActionsBar-D84a4eGy.js.map} +1 -1
- package/dist/chunks/{Badge-Bf8Rd1R6.js → Badge-CW9pBPFl.js} +5 -5
- package/dist/chunks/Badge-CW9pBPFl.js.map +1 -0
- package/dist/chunks/{BandEditor-BeWO56_w.js → BandEditor-jY-PFKY6.js} +103 -108
- package/dist/chunks/BandEditor-jY-PFKY6.js.map +1 -0
- package/dist/chunks/{Button-CExdkQcU.js → Button-DRSApvnK.js} +15 -15
- package/dist/chunks/Button-DRSApvnK.js.map +1 -0
- package/dist/chunks/{Callout-BPIA2is-.js → Callout-DrNu-9Qr.js} +12 -12
- package/dist/chunks/Callout-DrNu-9Qr.js.map +1 -0
- package/dist/chunks/{Checkbox-D-pVpobU.js → Checkbox-BOsDAY2F.js} +5 -5
- package/dist/chunks/Checkbox-BOsDAY2F.js.map +1 -0
- package/dist/chunks/{ColorField-C20aRvCg.js → ColorField-BYzgZM9o.js} +7 -7
- package/dist/chunks/ColorField-BYzgZM9o.js.map +1 -0
- package/dist/chunks/{ComboBox-CPES6Y1i.js → ComboBox-Cz3f0Y_8.js} +13 -13
- package/dist/chunks/ComboBox-Cz3f0Y_8.js.map +1 -0
- package/dist/chunks/{CurveEditor-Cj0lLiyR.js → CurveEditor-DXwSP-iA.js} +175 -175
- package/dist/chunks/CurveEditor-DXwSP-iA.js.map +1 -0
- package/dist/chunks/{DataGrid-BVdDMZkQ.js → DataGrid-C8KrYtw7.js} +11 -11
- package/dist/chunks/DataGrid-C8KrYtw7.js.map +1 -0
- package/dist/chunks/DetentSlider-CAubVX0J.js +72 -0
- package/dist/chunks/DetentSlider-CAubVX0J.js.map +1 -0
- package/dist/chunks/{Dialog-CYBLjwbd.js → Dialog-fGqqQ6o_.js} +9 -9
- package/dist/chunks/Dialog-fGqqQ6o_.js.map +1 -0
- package/dist/chunks/{Disclosure-DiA6UKdM.js → Disclosure-CILDfWsU.js} +6 -6
- package/dist/chunks/Disclosure-CILDfWsU.js.map +1 -0
- package/dist/chunks/{Field-dzlxOGxT.js → Field-DWnV8WZY.js} +6 -6
- package/dist/chunks/Field-DWnV8WZY.js.map +1 -0
- package/dist/chunks/{FontFamilySelect-DIJ4phXz.js → FontFamilySelect-DxfgTC3G.js} +2 -2
- package/dist/chunks/{FontFamilySelect-DIJ4phXz.js.map → FontFamilySelect-DxfgTC3G.js.map} +1 -1
- package/dist/chunks/{GradientEditor-dBprHbS0.js → GradientEditor-rRBmf3G0.js} +77 -54
- package/dist/chunks/GradientEditor-rRBmf3G0.js.map +1 -0
- package/dist/chunks/Icon-DT0x6HaQ.js +519 -0
- package/dist/chunks/Icon-DT0x6HaQ.js.map +1 -0
- package/dist/chunks/{InlineRange-CcfzY80y.js → InlineRange-DdIlfGqG.js} +2 -2
- package/dist/chunks/{InlineRange-CcfzY80y.js.map → InlineRange-DdIlfGqG.js.map} +1 -1
- package/dist/chunks/{Input-CoKOtyD0.js → Input-DbMKpkXy.js} +5 -5
- package/dist/chunks/Input-DbMKpkXy.js.map +1 -0
- package/dist/chunks/{ItemList-BZJQReXD.js → ItemList-B9zYb0GE.js} +7 -7
- package/dist/chunks/ItemList-B9zYb0GE.js.map +1 -0
- package/dist/chunks/Jog-DkkTlL3_.js +81 -0
- package/dist/chunks/Jog-DkkTlL3_.js.map +1 -0
- package/dist/chunks/{Keycaps-DSeq6QWH.js → Keycaps-DunVpejA.js} +5 -5
- package/dist/chunks/Keycaps-DunVpejA.js.map +1 -0
- package/dist/chunks/{LayerStack-DOylrQcm.js → LayerStack-CfQ6GsRz.js} +18 -18
- package/dist/chunks/LayerStack-CfQ6GsRz.js.map +1 -0
- package/dist/chunks/{MenuButton-Do8fFUx1.js → MenuButton-C_4nox39.js} +7 -7
- package/dist/chunks/MenuButton-C_4nox39.js.map +1 -0
- package/dist/chunks/MeshEditor-Bipz-Ocl.js +123 -0
- package/dist/chunks/MeshEditor-Bipz-Ocl.js.map +1 -0
- package/dist/chunks/{NumberField-BWzhqS19.js → NumberField-CCjEDZCg.js} +9 -9
- package/dist/chunks/NumberField-CCjEDZCg.js.map +1 -0
- package/dist/chunks/{OptionsBar-D_Cd3ZYs.js → OptionsBar-DeQ-vUeZ.js} +2 -2
- package/dist/chunks/{OptionsBar-D_Cd3ZYs.js.map → OptionsBar-DeQ-vUeZ.js.map} +1 -1
- package/dist/chunks/PaintField-jBOJ32rL.js +62 -0
- package/dist/chunks/PaintField-jBOJ32rL.js.map +1 -0
- package/dist/chunks/PaintInput-Qs7Rul5R.js +131 -0
- package/dist/chunks/PaintInput-Qs7Rul5R.js.map +1 -0
- package/dist/chunks/{PatternPicker-Ba22Bf4L.js → PatternPicker-BMpXWboq.js} +6 -6
- package/dist/chunks/PatternPicker-BMpXWboq.js.map +1 -0
- package/dist/chunks/{Plot2D-CVZwQpWJ.js → Plot2D-CXf_f7QD.js} +1 -1
- package/dist/chunks/{Plot2D-CVZwQpWJ.js.map → Plot2D-CXf_f7QD.js.map} +1 -1
- package/dist/chunks/{PointPlotter-anTHwz8f.js → PointPlotter-S_gz7VYt.js} +2 -2
- package/dist/chunks/{PointPlotter-anTHwz8f.js.map → PointPlotter-S_gz7VYt.js.map} +1 -1
- package/dist/chunks/{Powerline-BaHDJlcO.js → Powerline-Ak5AWUlK.js} +5 -5
- package/dist/chunks/Powerline-Ak5AWUlK.js.map +1 -0
- package/dist/chunks/Prefs-CNC8tzyN.js +308 -0
- package/dist/chunks/Prefs-CNC8tzyN.js.map +1 -0
- package/dist/chunks/Properties-Rnb6TAbN.js +891 -0
- package/dist/chunks/Properties-Rnb6TAbN.js.map +1 -0
- package/dist/chunks/{RadioGroup-B2_LUgDp.js → RadioGroup-CsVp3SEu.js} +6 -6
- package/dist/chunks/RadioGroup-CsVp3SEu.js.map +1 -0
- package/dist/chunks/{RangeSlider-S2R3zA8N.js → RangeSlider-DNr-pJpZ.js} +8 -8
- package/dist/chunks/RangeSlider-DNr-pJpZ.js.map +1 -0
- package/dist/chunks/{ResizeHandle-CiExUWP-.js → ResizeHandle-RXFf5fXr.js} +1 -1
- package/dist/chunks/{ResizeHandle-CiExUWP-.js.map → ResizeHandle-RXFf5fXr.js.map} +1 -1
- package/dist/chunks/Select-BEope086.js +190 -0
- package/dist/chunks/Select-BEope086.js.map +1 -0
- package/dist/chunks/SelectionPanel-CEbLS-0D.js +102 -0
- package/dist/chunks/SelectionPanel-CEbLS-0D.js.map +1 -0
- package/dist/chunks/{Sidebar-Cqcfx3_s.js → Sidebar-qn_oSCNX.js} +4 -4
- package/dist/chunks/Sidebar-qn_oSCNX.js.map +1 -0
- package/dist/chunks/{SidebarPanel-BLzBo0S2.js → SidebarPanel-Bs6V21hg.js} +12 -12
- package/dist/chunks/SidebarPanel-Bs6V21hg.js.map +1 -0
- package/dist/chunks/Slider-CIIrqiFS.js +381 -0
- package/dist/chunks/Slider-CIIrqiFS.js.map +1 -0
- package/dist/chunks/{StatusBar-B9NQ8atD.js → StatusBar-B4L15DSm.js} +6 -6
- package/dist/chunks/StatusBar-B4L15DSm.js.map +1 -0
- package/dist/chunks/{Switch-C4NU-me1.js → Switch-DH5POG0T.js} +5 -5
- package/dist/chunks/Switch-DH5POG0T.js.map +1 -0
- package/dist/chunks/{Tabs-9sODd2Ut.js → Tabs-BFHikpml.js} +5 -5
- package/dist/chunks/Tabs-BFHikpml.js.map +1 -0
- package/dist/chunks/{Timeline-DOZgb1CG.js → Timeline-DNKY_yiK.js} +254 -253
- package/dist/chunks/Timeline-DNKY_yiK.js.map +1 -0
- package/dist/chunks/{Toast-LpN1WK8E.js → Toast-CI1UDuK6.js} +15 -15
- package/dist/chunks/Toast-CI1UDuK6.js.map +1 -0
- package/dist/chunks/{ToggleBar-Bxwv6xvj.js → ToggleBar-CClus5Cd.js} +8 -8
- package/dist/chunks/ToggleBar-CClus5Cd.js.map +1 -0
- package/dist/chunks/TokenPanel-BPHq24dc.js +634 -0
- package/dist/chunks/TokenPanel-BPHq24dc.js.map +1 -0
- package/dist/chunks/{ToolButton-B81YjdwO.js → ToolButton-9QzJCmuM.js} +7 -7
- package/dist/chunks/ToolButton-9QzJCmuM.js.map +1 -0
- package/dist/chunks/{ToolGroup-D7juDOC_.js → ToolGroup-BJiDrH_i.js} +3 -3
- package/dist/chunks/ToolGroup-BJiDrH_i.js.map +1 -0
- package/dist/chunks/ToolOptionsBar-CAM6RcUH.js +85 -0
- package/dist/chunks/ToolOptionsBar-CAM6RcUH.js.map +1 -0
- package/dist/chunks/{ToolPalette-BSzmRJS7.js → ToolPalette-DGkKwE7D.js} +8 -8
- package/dist/chunks/ToolPalette-DGkKwE7D.js.map +1 -0
- package/dist/chunks/{Tooltip-BHre_vbI.js → Tooltip-C4YBczLq.js} +3 -3
- package/dist/chunks/Tooltip-C4YBczLq.js.map +1 -0
- package/dist/chunks/{createKeyframeLayer-AL4jP0EX.js → createKeyframeLayer-DKtO0Sw_.js} +198 -193
- package/dist/chunks/createKeyframeLayer-DKtO0Sw_.js.map +1 -0
- package/dist/chunks/{icons-BV27dhKB.js → icons-DFLytcui.js} +35 -32
- package/dist/chunks/icons-DFLytcui.js.map +1 -0
- package/dist/chunks/model-13kZ_-mE.js +483 -0
- package/dist/chunks/model-13kZ_-mE.js.map +1 -0
- package/dist/chunks/number-BHz66zQO.js +89 -0
- package/dist/chunks/number-BHz66zQO.js.map +1 -0
- package/dist/chunks/range.module-DSsOIq1R.js +8 -0
- package/dist/chunks/range.module-DSsOIq1R.js.map +1 -0
- package/dist/chunks/{schema-CPdFNeP6.js → schema-Dft4Cu2p.js} +1 -1
- package/dist/chunks/schema-Dft4Cu2p.js.map +1 -0
- package/dist/chunks/segmentedControl.module-DS72X1ns.js +11 -0
- package/dist/chunks/segmentedControl.module-DS72X1ns.js.map +1 -0
- package/dist/chunks/snap-CEjuWOhN.js +13 -0
- package/dist/chunks/snap-CEjuWOhN.js.map +1 -0
- package/dist/chunks/useRovingTabIndex-Dkpf_KhN.js.map +1 -1
- package/dist/color/oklch.d.ts +2 -1
- package/dist/color/oklch.d.ts.map +1 -1
- package/dist/components/ActionBar/ActionBar.d.ts.map +1 -1
- package/dist/components/ActionBar/index.js +1 -1
- package/dist/components/ActionsBar/index.js +1 -1
- package/dist/components/Badge/index.js +1 -1
- package/dist/components/BandEditor/BandEditor.d.ts.map +1 -1
- package/dist/components/BandEditor/index.js +1 -1
- package/dist/components/BandEditor/scale.d.ts +1 -8
- package/dist/components/BandEditor/scale.d.ts.map +1 -1
- package/dist/components/Button/index.js +1 -1
- package/dist/components/Callout/index.js +1 -1
- package/dist/components/Checkbox/index.js +1 -1
- package/dist/components/ColorField/index.js +1 -1
- package/dist/components/ComboBox/index.js +1 -1
- package/dist/components/CurveEditor/createFunctionLayer.d.ts.map +1 -1
- package/dist/components/CurveEditor/createKeyframeLayer.d.ts.map +1 -1
- package/dist/components/CurveEditor/index.d.ts +1 -1
- package/dist/components/CurveEditor/index.d.ts.map +1 -1
- package/dist/components/CurveEditor/index.js +4 -3
- package/dist/components/DataGrid/index.js +1 -1
- package/dist/components/DetentSlider/DetentSlider.d.ts +9 -10
- package/dist/components/DetentSlider/DetentSlider.d.ts.map +1 -1
- package/dist/components/DetentSlider/index.js +1 -1
- package/dist/components/Dialog/index.js +1 -1
- package/dist/components/Disclosure/index.js +1 -1
- package/dist/components/Field/index.js +1 -1
- package/dist/components/FontFamilySelect/index.js +1 -1
- package/dist/components/GradientEditor/GradientEditor.d.ts +3 -0
- package/dist/components/GradientEditor/GradientEditor.d.ts.map +1 -1
- package/dist/components/GradientEditor/index.js +1 -1
- package/dist/components/InlineRange/index.js +1 -1
- package/dist/components/Input/index.js +1 -1
- package/dist/components/ItemList/index.js +1 -1
- package/dist/components/Jog/Jog.d.ts +28 -0
- package/dist/components/Jog/Jog.d.ts.map +1 -0
- package/dist/components/Jog/index.d.ts +3 -0
- package/dist/components/Jog/index.d.ts.map +1 -0
- package/dist/components/Jog/index.js +2 -0
- package/dist/components/Keycaps/index.js +1 -1
- package/dist/components/LayerStack/index.js +1 -1
- package/dist/components/MenuButton/index.js +1 -1
- package/dist/components/MeshEditor/MeshEditor.d.ts +30 -0
- package/dist/components/MeshEditor/MeshEditor.d.ts.map +1 -0
- package/dist/components/MeshEditor/index.d.ts +3 -0
- package/dist/components/MeshEditor/index.d.ts.map +1 -0
- package/dist/components/MeshEditor/index.js +2 -0
- package/dist/components/NumberField/UnitField.d.ts +2 -1
- package/dist/components/NumberField/UnitField.d.ts.map +1 -1
- package/dist/components/NumberField/index.js +1 -1
- package/dist/components/OptionsBar/index.js +1 -1
- package/dist/components/PaintField/PaintField.d.ts +36 -0
- package/dist/components/PaintField/PaintField.d.ts.map +1 -0
- package/dist/components/PaintField/index.d.ts +3 -0
- package/dist/components/PaintField/index.d.ts.map +1 -0
- package/dist/components/PaintField/index.js +2 -0
- package/dist/components/PaintInput/PaintInput.d.ts.map +1 -1
- package/dist/components/PaintInput/index.js +1 -1
- package/dist/components/PatternPicker/index.js +1 -1
- package/dist/components/Plot2D/index.js +1 -1
- package/dist/components/PointPlotter/index.js +1 -1
- package/dist/components/Powerline/index.js +2 -2
- package/dist/components/Prefs/PrefsForm.d.ts +4 -0
- package/dist/components/Prefs/PrefsForm.d.ts.map +1 -1
- package/dist/components/Prefs/index.js +2 -2
- package/dist/components/Prefs/schema.d.ts +2 -1
- package/dist/components/Prefs/schema.d.ts.map +1 -1
- package/dist/components/Properties/PropertyGroup.d.ts +7 -1
- package/dist/components/Properties/PropertyGroup.d.ts.map +1 -1
- package/dist/components/Properties/PropertyPanel.d.ts +91 -8
- package/dist/components/Properties/PropertyPanel.d.ts.map +1 -1
- package/dist/components/Properties/index.d.ts +2 -2
- package/dist/components/Properties/index.d.ts.map +1 -1
- package/dist/components/Properties/index.js +2 -2
- package/dist/components/Properties/storyLayouts.d.ts +1 -1
- package/dist/components/RadioGroup/index.js +1 -1
- package/dist/components/RangeSlider/index.js +1 -1
- package/dist/components/ResizeHandle/index.js +1 -1
- package/dist/components/Select/Select.d.ts +26 -0
- package/dist/components/Select/Select.d.ts.map +1 -1
- package/dist/components/Select/index.d.ts +1 -1
- package/dist/components/Select/index.d.ts.map +1 -1
- package/dist/components/Select/index.js +1 -1
- package/dist/components/SelectionPanel/SelectionPanel.d.ts +3 -50
- package/dist/components/SelectionPanel/SelectionPanel.d.ts.map +1 -1
- package/dist/components/SelectionPanel/index.js +3 -2
- package/dist/components/SelectionPanel/model.d.ts +4 -1
- package/dist/components/SelectionPanel/model.d.ts.map +1 -1
- package/dist/components/SelectionPanel/renderLeaf.d.ts +106 -0
- package/dist/components/SelectionPanel/renderLeaf.d.ts.map +1 -0
- package/dist/components/Sidebar/index.js +1 -1
- package/dist/components/SidebarPanel/index.js +1 -1
- package/dist/components/Slider/Slider.d.ts +19 -1
- package/dist/components/Slider/Slider.d.ts.map +1 -1
- package/dist/components/Slider/index.d.ts +1 -1
- package/dist/components/Slider/index.d.ts.map +1 -1
- package/dist/components/Slider/index.js +1 -1
- package/dist/components/StatusBar/index.js +1 -1
- package/dist/components/Switch/index.js +1 -1
- package/dist/components/Tabs/index.js +1 -1
- package/dist/components/Timeline/Lane.d.ts.map +1 -1
- package/dist/components/Timeline/index.js +2 -2
- package/dist/components/Timeline/keys.d.ts +1 -1
- package/dist/components/Timeline/keys.d.ts.map +1 -1
- package/dist/components/Toast/index.js +1 -1
- package/dist/components/ToggleBar/index.js +1 -1
- package/dist/components/TokenPanel/TokenPanel.d.ts +39 -0
- package/dist/components/TokenPanel/TokenPanel.d.ts.map +1 -0
- package/dist/components/TokenPanel/color.d.ts +7 -0
- package/dist/components/TokenPanel/color.d.ts.map +1 -0
- package/dist/components/TokenPanel/index.d.ts +5 -0
- package/dist/components/TokenPanel/index.d.ts.map +1 -0
- package/dist/components/TokenPanel/index.js +2 -0
- package/dist/components/TokenPanel/tokenTypes.d.ts +55 -0
- package/dist/components/TokenPanel/tokenTypes.d.ts.map +1 -0
- package/dist/components/ToolButton/index.js +1 -1
- package/dist/components/ToolGroup/index.js +1 -1
- package/dist/components/ToolOptionsBar/ToolOptionsBar.d.ts +29 -18
- package/dist/components/ToolOptionsBar/ToolOptionsBar.d.ts.map +1 -1
- package/dist/components/ToolOptionsBar/index.js +1 -1
- package/dist/components/ToolPalette/ToolPalette.d.ts +5 -4
- package/dist/components/ToolPalette/ToolPalette.d.ts.map +1 -1
- package/dist/components/ToolPalette/index.js +1 -1
- package/dist/components/Tooltip/index.js +1 -1
- package/dist/components/paintValue.d.ts +8 -0
- package/dist/components/paintValue.d.ts.map +1 -1
- package/dist/format/number.d.ts +10 -1
- package/dist/format/number.d.ts.map +1 -1
- package/dist/handles.d.ts +20 -0
- package/dist/handles.d.ts.map +1 -0
- package/dist/icons/Icon.d.ts +10 -2
- package/dist/icons/Icon.d.ts.map +1 -1
- package/dist/icons/index.d.ts +6 -3
- package/dist/icons/index.d.ts.map +1 -1
- package/dist/icons/paths.d.ts +279 -17
- package/dist/icons/paths.d.ts.map +1 -1
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +74 -75
- package/dist/index.js.map +1 -1
- package/dist/paintPreview.d.ts +13 -0
- package/dist/paintPreview.d.ts.map +1 -0
- package/dist/{components/CurveEditor/snap.d.ts → snap.d.ts} +2 -0
- package/dist/snap.d.ts.map +1 -0
- package/dist/style.css +1 -1
- package/dist/useRovingTabIndex.d.ts +7 -5
- package/dist/useRovingTabIndex.d.ts.map +1 -1
- package/package.json +8 -7
- package/dist/chunks/ActionBar-DxGp3WuZ.js.map +0 -1
- package/dist/chunks/Badge-Bf8Rd1R6.js.map +0 -1
- package/dist/chunks/BandEditor-BeWO56_w.js.map +0 -1
- package/dist/chunks/Button-CExdkQcU.js.map +0 -1
- package/dist/chunks/Callout-BPIA2is-.js.map +0 -1
- package/dist/chunks/Checkbox-D-pVpobU.js.map +0 -1
- package/dist/chunks/ColorField-C20aRvCg.js.map +0 -1
- package/dist/chunks/ComboBox-CPES6Y1i.js.map +0 -1
- package/dist/chunks/CurveEditor-Cj0lLiyR.js.map +0 -1
- package/dist/chunks/DataGrid-BVdDMZkQ.js.map +0 -1
- package/dist/chunks/DetentSlider-CYicfnKr.js +0 -83
- package/dist/chunks/DetentSlider-CYicfnKr.js.map +0 -1
- package/dist/chunks/Dialog-CYBLjwbd.js.map +0 -1
- package/dist/chunks/Disclosure-DiA6UKdM.js.map +0 -1
- package/dist/chunks/Field-dzlxOGxT.js.map +0 -1
- package/dist/chunks/GradientEditor-dBprHbS0.js.map +0 -1
- package/dist/chunks/Icon-DBXtBB1f.js +0 -101
- package/dist/chunks/Icon-DBXtBB1f.js.map +0 -1
- package/dist/chunks/Input-CoKOtyD0.js.map +0 -1
- package/dist/chunks/ItemList-BZJQReXD.js.map +0 -1
- package/dist/chunks/Keycaps-DSeq6QWH.js.map +0 -1
- package/dist/chunks/LayerStack-DOylrQcm.js.map +0 -1
- package/dist/chunks/MenuButton-Do8fFUx1.js.map +0 -1
- package/dist/chunks/NumberField-BWzhqS19.js.map +0 -1
- package/dist/chunks/PaintInput-DAevU7fd.js +0 -118
- package/dist/chunks/PaintInput-DAevU7fd.js.map +0 -1
- package/dist/chunks/PatternPicker-Ba22Bf4L.js.map +0 -1
- package/dist/chunks/Powerline-BaHDJlcO.js.map +0 -1
- package/dist/chunks/Prefs-CzIn-hlq.js +0 -302
- package/dist/chunks/Prefs-CzIn-hlq.js.map +0 -1
- package/dist/chunks/Properties-DJaDEJkT.js +0 -765
- package/dist/chunks/Properties-DJaDEJkT.js.map +0 -1
- package/dist/chunks/RadioGroup-B2_LUgDp.js.map +0 -1
- package/dist/chunks/RangeSlider-S2R3zA8N.js.map +0 -1
- package/dist/chunks/Select-CacMfs4v.js +0 -124
- package/dist/chunks/Select-CacMfs4v.js.map +0 -1
- package/dist/chunks/SelectionPanel-CbyUT3Dh.js +0 -572
- package/dist/chunks/SelectionPanel-CbyUT3Dh.js.map +0 -1
- package/dist/chunks/Sidebar-Cqcfx3_s.js.map +0 -1
- package/dist/chunks/SidebarPanel-BLzBo0S2.js.map +0 -1
- package/dist/chunks/Slider--DFRC_hc.js +0 -303
- package/dist/chunks/Slider--DFRC_hc.js.map +0 -1
- package/dist/chunks/StatusBar-B9NQ8atD.js.map +0 -1
- package/dist/chunks/Switch-C4NU-me1.js.map +0 -1
- package/dist/chunks/Tabs-9sODd2Ut.js.map +0 -1
- package/dist/chunks/Timeline-DOZgb1CG.js.map +0 -1
- package/dist/chunks/Toast-LpN1WK8E.js.map +0 -1
- package/dist/chunks/ToggleBar-Bxwv6xvj.js.map +0 -1
- package/dist/chunks/ToolButton-B81YjdwO.js.map +0 -1
- package/dist/chunks/ToolGroup-D7juDOC_.js.map +0 -1
- package/dist/chunks/ToolOptionsBar-B2xPWzJf.js +0 -27
- package/dist/chunks/ToolOptionsBar-B2xPWzJf.js.map +0 -1
- package/dist/chunks/ToolPalette-BSzmRJS7.js.map +0 -1
- package/dist/chunks/Tooltip-BHre_vbI.js.map +0 -1
- package/dist/chunks/createKeyframeLayer-AL4jP0EX.js.map +0 -1
- package/dist/chunks/icons-BV27dhKB.js.map +0 -1
- package/dist/chunks/number-f6PydOZK.js +0 -52
- package/dist/chunks/number-f6PydOZK.js.map +0 -1
- package/dist/chunks/range.module-CvSfABmu.js +0 -8
- package/dist/chunks/range.module-CvSfABmu.js.map +0 -1
- package/dist/chunks/schema-CPdFNeP6.js.map +0 -1
- package/dist/chunks/segmentedControl.module-BgvAPkSZ.js +0 -11
- package/dist/chunks/segmentedControl.module-BgvAPkSZ.js.map +0 -1
- package/dist/components/CurveEditor/snap.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC9C,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC9C,YAAY,EACV,WAAW,EACX,eAAe,EACf,YAAY,EACZ,eAAe,EACf,WAAW,GACZ,MAAM,UAAU,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, t } from "../../chunks/Select-
|
|
1
|
+
import { n as e, t } from "../../chunks/Select-BEope086.js";
|
|
2
2
|
export { t as Select, e as SelectItem };
|
|
@@ -1,54 +1,7 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
|
-
import { type NodePropertiesEntry, type NodeRoutingEntry, type Scene, type SelectionApi
|
|
3
|
-
|
|
4
|
-
export
|
|
5
|
-
/** Dotted node path of the leaf (`pose.x`, `data.fill`). */
|
|
6
|
-
path: string;
|
|
7
|
-
/** The schema leaf. App renderers narrow it to their own kind shape. */
|
|
8
|
-
pref: ToolPrefLeaf;
|
|
9
|
-
/** Aggregated value across the selection; `undefined` when mixed or unset. */
|
|
10
|
-
value: unknown;
|
|
11
|
-
/** True when selected nodes disagree at this path. */
|
|
12
|
-
mixed: boolean;
|
|
13
|
-
/**
|
|
14
|
-
* True when the nodes agree and what they agree on is nothing — the field
|
|
15
|
-
* is absent, and whatever paints comes from a fallback further down.
|
|
16
|
-
*
|
|
17
|
-
* Distinct from `mixed`, and both leave `value` undefined. A control must
|
|
18
|
-
* not substitute its schema default here: doing so shows a value the node
|
|
19
|
-
* does not hold, and the next edit writes that invention back.
|
|
20
|
-
*/
|
|
21
|
-
unset: boolean;
|
|
22
|
-
/**
|
|
23
|
-
* The fields of the object this leaf is a field of — `undefined` for a
|
|
24
|
-
* top-level leaf, and for a field of an object the node does not hold.
|
|
25
|
-
*
|
|
26
|
-
* What a control needs when its own field doesn't carry the whole answer:
|
|
27
|
-
* a stroke's dash lengths are multiples of the stroke's width, so reading
|
|
28
|
-
* the array as a style takes both.
|
|
29
|
-
*/
|
|
30
|
-
siblings?: Record<string, unknown>;
|
|
31
|
-
/** Commit a value — fans out to every selected node in one undo step. */
|
|
32
|
-
setValue: (value: unknown) => void;
|
|
33
|
-
/**
|
|
34
|
-
* The aggregated value at another node path — what `value` and `mixed` are
|
|
35
|
-
* for this leaf's own path, for any path.
|
|
36
|
-
*
|
|
37
|
-
* A control whose subject spans more than one field needs it: a font picker
|
|
38
|
-
* reporting which variant will actually paint has to read the node's weight
|
|
39
|
-
* and style. Reading it off `value` is impossible — a leaf is handed one
|
|
40
|
-
* field.
|
|
41
|
-
*/
|
|
42
|
-
valueAt: (path: string) => {
|
|
43
|
-
value: unknown;
|
|
44
|
-
mixed: boolean;
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Renders the control for one property across the whole selection.
|
|
49
|
-
* Returning `null` collapses the leaf.
|
|
50
|
-
*/
|
|
51
|
-
export type PropertyRenderer = (ctx: PropertyRenderContext) => ReactNode;
|
|
2
|
+
import { type NodePropertiesEntry, type NodeRoutingEntry, type Scene, type SelectionApi } from '@weasel-js/core';
|
|
3
|
+
import { type PropertyRenderer } from './renderLeaf';
|
|
4
|
+
export type { PropertyRenderContext, PropertyRenderer } from './renderLeaf';
|
|
52
5
|
/** Props for {@link SelectionPanel}. */
|
|
53
6
|
export interface SelectionPanelProps<TData, TLayer extends string, TPose> {
|
|
54
7
|
/** The scene handle (`useScene`). The panel subscribes itself, so it
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectionPanel.d.ts","sourceRoot":"","sources":["../../../src/components/SelectionPanel/SelectionPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"SelectionPanel.d.ts","sourceRoot":"","sources":["../../../src/components/SelectionPanel/SelectionPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAkC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACvE,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,KAAK,EACV,KAAK,YAAY,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAKL,KAAK,gBAAgB,EACtB,MAAM,cAAc,CAAC;AAatB,YAAY,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAE5E,wCAAwC;AACxC,MAAM,WAAW,mBAAmB,CAAC,KAAK,EAAE,MAAM,SAAS,MAAM,EAAE,KAAK;IACtE;sEACkE;IAClE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACnC,iEAAiE;IACjE,SAAS,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACzC;0EACsE;IACtE,UAAU,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC3C;2DACuD;IACvD,OAAO,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACrC;;;uCAGmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC7C,2DAA2D;IAC3D,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IACrC,4CAA4C;IAC5C,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAKD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,SAAS,MAAM,EAAE,KAAK,EAChE,KAAK,EAAE,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,2CAwHjD"}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { i as e, l as t, n, o as r, r as i, s as a, t as o } from "../../chunks/model-13kZ_-mE.js";
|
|
2
|
+
import { t as s } from "../../chunks/SelectionPanel-CEbLS-0D.js";
|
|
3
|
+
export { o as MIXED, s as SelectionPanel, n as aggregateValue, i as classifyKind, e as effectiveSections, r as kindBreakdown, a as nodeValueAt, t as setAtPath };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MIXED, type Mixed, type NodePropertiesEntry, type NodeRoutingEntry, type SceneNode, type ToolPrefLeaf } from '@weasel-js/core';
|
|
1
|
+
import { MIXED, type Mixed, type NodePropertiesEntry, type NodeRoutingEntry, type SceneNode, type ToolPrefGroup, type ToolPrefLeaf } from '@weasel-js/core';
|
|
2
2
|
export { MIXED };
|
|
3
3
|
export type { Mixed };
|
|
4
4
|
export type AnyNode = SceneNode<unknown, string, unknown>;
|
|
@@ -32,6 +32,9 @@ export interface PanelSection {
|
|
|
32
32
|
* `data` through the routing entries (first match wins, `'unknown'`
|
|
33
33
|
* otherwise) — same semantics as core's `NodeRouting.classify`. */
|
|
34
34
|
export declare function classifyKind(node: AnyNode, routing: readonly NodeRoutingEntry[]): string;
|
|
35
|
+
export declare function isGroup(n: ToolPrefLeaf | ToolPrefGroup): n is ToolPrefGroup;
|
|
36
|
+
/** Merge consecutive leaves sharing a `pair` id into one labeled row. */
|
|
37
|
+
export declare function pairRows(leaves: readonly PanelLeaf[]): PanelRow[];
|
|
35
38
|
/**
|
|
36
39
|
* The schema the panel shows for a set of kinds: one kind → its full
|
|
37
40
|
* schema; several → the intersection by (path, leaf kind), shaped by the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../src/components/SelectionPanel/model.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,KAAK,EACL,KAAK,KAAK,EACV,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,SAAS,
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../src/components/SelectionPanel/model.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,KAAK,EACL,KAAK,KAAK,EACV,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,YAAY,EAClB,MAAM,iBAAiB,CAAC;AAKzB,OAAO,EAAE,KAAK,EAAE,CAAC;AACjB,YAAY,EAAE,KAAK,EAAE,CAAC;AAEtB,MAAM,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAE1D;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,YAAY,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,EAAE,CAAC;CAClB;AAED;;oEAEoE;AACpE,wBAAgB,YAAY,CAC1B,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,SAAS,gBAAgB,EAAE,GACnC,MAAM,CAMR;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,YAAY,GAAG,aAAa,GAAG,CAAC,IAAI,aAAa,CAE3E;AA8BD,yEAAyE;AACzE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,GAAG,QAAQ,EAAE,CAYjE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,OAAO,EAAE,SAAS,mBAAmB,EAAE,GACtC,YAAY,EAAE,CAkChB;AAED;;;uEAGuE;AACvE,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAUhE;AAED;;;;gDAIgD;AAChD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAiB3F;AAED,mEAAmE;AACnE,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,OAAO,EAAE,EACzB,IAAI,EAAE,MAAM,GACX,OAAO,GAAG,KAAK,CAajB;AAED,kEAAkE;AAClE,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAM9D"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The leaf → control mapping: one `ToolPrefLeaf` and its value in, one
|
|
3
|
+
* rendered control out, plus the run logic that turns a row of paired
|
|
4
|
+
* toggles into a single segmented bar.
|
|
5
|
+
*
|
|
6
|
+
* It lives beside `SelectionPanel` because it grew there and still draws on
|
|
7
|
+
* that stylesheet, but it is not the panel's: `ToolOptionsBar` renders a
|
|
8
|
+
* tool's options through the same function, so a leaf kind gets its control
|
|
9
|
+
* decided once rather than once per surface.
|
|
10
|
+
*/
|
|
11
|
+
import { type ReactNode } from 'react';
|
|
12
|
+
import { type ToolPrefLeaf } from '@weasel-js/core';
|
|
13
|
+
/** What a {@link PropertyRenderer} is given for the property it is rendering. */
|
|
14
|
+
export interface PropertyRenderContext {
|
|
15
|
+
/** Dotted node path of the leaf (`pose.x`, `data.fill`). */
|
|
16
|
+
path: string;
|
|
17
|
+
/** The schema leaf. App renderers narrow it to their own kind shape. */
|
|
18
|
+
pref: ToolPrefLeaf;
|
|
19
|
+
/** Aggregated value across the selection; `undefined` when mixed or unset. */
|
|
20
|
+
value: unknown;
|
|
21
|
+
/** True when selected nodes disagree at this path. */
|
|
22
|
+
mixed: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* True when the nodes agree and what they agree on is nothing — the field
|
|
25
|
+
* is absent, and whatever paints comes from a fallback further down.
|
|
26
|
+
*
|
|
27
|
+
* Distinct from `mixed`, and both leave `value` undefined. A control must
|
|
28
|
+
* not substitute its schema default here: doing so shows a value the node
|
|
29
|
+
* does not hold, and the next edit writes that invention back.
|
|
30
|
+
*/
|
|
31
|
+
unset: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* The fields of the object this leaf is a field of — `undefined` for a
|
|
34
|
+
* top-level leaf, and for a field of an object the node does not hold.
|
|
35
|
+
*
|
|
36
|
+
* What a control needs when its own field doesn't carry the whole answer:
|
|
37
|
+
* a stroke's dash lengths are multiples of the stroke's width, so reading
|
|
38
|
+
* the array as a style takes both.
|
|
39
|
+
*/
|
|
40
|
+
siblings?: Record<string, unknown>;
|
|
41
|
+
/** Commit a value — fans out to every selected node in one undo step. */
|
|
42
|
+
setValue: (value: unknown) => void;
|
|
43
|
+
/**
|
|
44
|
+
* The aggregated value at another node path — what `value` and `mixed` are
|
|
45
|
+
* for this leaf's own path, for any path.
|
|
46
|
+
*
|
|
47
|
+
* A control whose subject spans more than one field needs it: a font picker
|
|
48
|
+
* reporting which variant will actually paint has to read the node's weight
|
|
49
|
+
* and style. Reading it off `value` is impossible — a leaf is handed one
|
|
50
|
+
* field.
|
|
51
|
+
*/
|
|
52
|
+
valueAt: (path: string) => {
|
|
53
|
+
value: unknown;
|
|
54
|
+
mixed: boolean;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Renders the control for one property across the whole selection.
|
|
59
|
+
* Returning `null` collapses the leaf.
|
|
60
|
+
*/
|
|
61
|
+
export type PropertyRenderer = (ctx: PropertyRenderContext) => ReactNode;
|
|
62
|
+
/**
|
|
63
|
+
* One leaf with its context built but nothing rendered yet.
|
|
64
|
+
*
|
|
65
|
+
* Deferring the render is what lets a run of sibling flags become one bar:
|
|
66
|
+
* whether a leaf joins its neighbors is a fact about the run, which no leaf
|
|
67
|
+
* rendering itself can see.
|
|
68
|
+
*/
|
|
69
|
+
export interface LeafCell {
|
|
70
|
+
key: string;
|
|
71
|
+
leaf: ToolPrefLeaf;
|
|
72
|
+
ctx: PropertyRenderContext;
|
|
73
|
+
/** The accessible name this leaf's control carries — qualified by the row's
|
|
74
|
+
* pair where the row holds more than one leaf. */
|
|
75
|
+
ariaLabel: string;
|
|
76
|
+
/** Renders the leaf on its own, chrome and all. */
|
|
77
|
+
render: () => ReactNode;
|
|
78
|
+
}
|
|
79
|
+
/** A cell's content, once the run it belongs to has been decided. */
|
|
80
|
+
export interface RenderedCell {
|
|
81
|
+
key: string;
|
|
82
|
+
/** The leaf that names the cell — the run's first, for a flag bar. */
|
|
83
|
+
leaf: ToolPrefLeaf;
|
|
84
|
+
block: boolean;
|
|
85
|
+
content: ReactNode;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* True for a leaf that can join a flag bar: a paired toggle boolean the
|
|
89
|
+
* consumer has not claimed with a renderer of its own.
|
|
90
|
+
*/
|
|
91
|
+
export declare function isFlagCell(cell: LeafCell, renderers?: Record<string, PropertyRenderer>): boolean;
|
|
92
|
+
/**
|
|
93
|
+
* Renders a row's cells, collapsing each run of adjacent same-`pair` toggle
|
|
94
|
+
* booleans into one segmented bar — the idiom the enum toggle a row away
|
|
95
|
+
* already uses, rather than one detached pill per flag.
|
|
96
|
+
*/
|
|
97
|
+
export declare function renderCells(cells: readonly LeafCell[], renderers?: Record<string, PropertyRenderer>): RenderedCell[];
|
|
98
|
+
export declare function renderBuiltin(ctx: PropertyRenderContext, ariaLabel: string, renderers?: Record<string, PropertyRenderer>,
|
|
99
|
+
/** Identifies the current selection, so a control holding per-selection
|
|
100
|
+
* scratch (the paint kind memory) is remounted rather than carried over. */
|
|
101
|
+
selectionKey?: string,
|
|
102
|
+
/** True for a field of an object leaf. Such a field writes itself into its
|
|
103
|
+
* parent, so it can only hold values its parent's type permits — which is
|
|
104
|
+
* what rules "none" out for a nested paint. */
|
|
105
|
+
nested?: boolean): ReactNode;
|
|
106
|
+
//# sourceMappingURL=renderLeaf.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderLeaf.d.ts","sourceRoot":"","sources":["../../../src/components/SelectionPanel/renderLeaf.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAsB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAML,KAAK,YAAY,EAKlB,MAAM,iBAAiB,CAAC;AAgBzB,iFAAiF;AACjF,MAAM,WAAW,qBAAqB;IACpC,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,wEAAwE;IACxE,IAAI,EAAE,YAAY,CAAC;IACnB,8EAA8E;IAC9E,KAAK,EAAE,OAAO,CAAC;IACf,sDAAsD;IACtD,KAAK,EAAE,OAAO,CAAC;IACf;;;;;;;OAOG;IACH,KAAK,EAAE,OAAO,CAAC;IACf;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,yEAAyE;IACzE,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC;;;;;;;;OAQG;IACH,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;CAC/D;AAED;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,qBAAqB,KAAK,SAAS,CAAC;AAGzE;;;;;;GAMG;AACH,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,YAAY,CAAC;IACnB,GAAG,EAAE,qBAAqB,CAAC;IAC3B;uDACmD;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,MAAM,EAAE,MAAM,SAAS,CAAC;CACzB;AAED,qEAAqE;AACrE,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,sEAAsE;IACtE,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,SAAS,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,OAAO,CAShG;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAC3C,YAAY,EAAE,CA8BhB;AA2CD,wBAAgB,aAAa,CAC3B,GAAG,EAAE,qBAAqB,EAC1B,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC;AAC5C;6EAC6E;AAC7E,YAAY,SAAK;AACjB;;gDAEgD;AAChD,MAAM,UAAQ,GACb,SAAS,CAgRX"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/Sidebar-
|
|
1
|
+
import { t as e } from "../../chunks/Sidebar-qn_oSCNX.js";
|
|
2
2
|
export { e as Sidebar };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/SidebarPanel-
|
|
1
|
+
import { t as e } from "../../chunks/SidebarPanel-Bs6V21hg.js";
|
|
2
2
|
export { e as SidebarPanel };
|
|
@@ -49,6 +49,11 @@ export type TrackCtx = {
|
|
|
49
49
|
trackWidth: number;
|
|
50
50
|
valueToFraction: (v: number) => number;
|
|
51
51
|
};
|
|
52
|
+
/** A {@link Slider} stop that carries a label, drawn under the track at the stop. */
|
|
53
|
+
export type SliderStop = {
|
|
54
|
+
value: number;
|
|
55
|
+
label?: ReactNode;
|
|
56
|
+
};
|
|
52
57
|
/**
|
|
53
58
|
* Props for {@link Slider}.
|
|
54
59
|
*
|
|
@@ -59,6 +64,16 @@ export type TrackCtx = {
|
|
|
59
64
|
* on it, and the arrow keys move stop to stop. `step` still quantizes the
|
|
60
65
|
* values between them. Each one is drawn on the track as a mark; pass
|
|
61
66
|
* `showStops: false` for a track whose own paint already reads as the stops.
|
|
67
|
+
* A stop given as a {@link SliderStop} with a `label` gets that label drawn
|
|
68
|
+
* under it; `stopLabels` narrows the row to the two ends or turns it off.
|
|
69
|
+
*
|
|
70
|
+
* `snap: 'strict'` makes every stop a detent the thumb must rest on: drags and
|
|
71
|
+
* track presses land on the nearest one, and `step` no longer applies.
|
|
72
|
+
* `spacing: 'even'` places the stops at equal intervals, runs the track from
|
|
73
|
+
* the first stop to the last, and maps values linearly within each gap — so a
|
|
74
|
+
* geometric list (0.25/0.5/1/2/4) gets usable room for every stop instead of
|
|
75
|
+
* four crowded into the first fifth. Both need stops; with fewer than two,
|
|
76
|
+
* `'even'` falls back to linear.
|
|
62
77
|
*
|
|
63
78
|
* `trackClick: 'move-nearest'` makes a press on bare track send the closest
|
|
64
79
|
* thumb there and continue as a drag. It is off by default because on a
|
|
@@ -78,8 +93,11 @@ export type SliderProps<T extends Thumb = Thumb> = {
|
|
|
78
93
|
min: number;
|
|
79
94
|
max: number;
|
|
80
95
|
step?: number;
|
|
81
|
-
stops?: number[];
|
|
96
|
+
stops?: readonly (number | SliderStop)[];
|
|
82
97
|
showStops?: boolean;
|
|
98
|
+
stopLabels?: 'all' | 'ends' | 'none';
|
|
99
|
+
snap?: 'magnetic' | 'strict';
|
|
100
|
+
spacing?: 'linear' | 'even';
|
|
83
101
|
trackClick?: 'none' | 'move-nearest';
|
|
84
102
|
constraint?: 'free' | 'ordered';
|
|
85
103
|
onAddThumb?: (atValue: number) => T | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../../src/components/Slider/Slider.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../../src/components/Slider/Slider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqL,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAK7O;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,UAAU,GAClB,OAAO,GACP,SAAS,GACT;IAAE,MAAM,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,SAAS,CAAA;CAAE,CAAC;AAEnD;;;;GAIG;AACH,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,SAAS,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnE;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;CACxC,CAAC;AAEF,qFAAqF;AACrF,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI;IACjD,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC;IACrB,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;IAC7B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC;IACzC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IACrC,IAAI,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAC;IAC7B,OAAO,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC;IAC3C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAC3C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,SAAS,CAAC;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;+EAC2E;IAC3E,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;IACvD,gBAAgB,CAAC,EAAE,MAAM,GAAG,cAAc,GAAG,aAAa,CAAC;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAiGF;;;;;;;GAOG;AACH,wBAAgB,MAAM,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,YAAY,CAianF"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { Slider } from './Slider';
|
|
2
|
-
export type { SliderProps, Thumb, ThumbShape, ThumbRenderCtx, BoundsCtx, TrackCtx, } from './Slider';
|
|
2
|
+
export type { SliderProps, SliderStop, Thumb, ThumbShape, ThumbRenderCtx, BoundsCtx, TrackCtx, } from './Slider';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Slider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,cAAc,EACd,SAAS,EACT,QAAQ,GACT,MAAM,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Slider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EACV,WAAW,EACX,UAAU,EACV,KAAK,EACL,UAAU,EACV,cAAc,EACd,SAAS,EACT,QAAQ,GACT,MAAM,UAAU,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/Slider
|
|
1
|
+
import { t as e } from "../../chunks/Slider-CIIrqiFS.js";
|
|
2
2
|
export { e as Slider };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, r as t, t as n } from "../../chunks/StatusBar-
|
|
1
|
+
import { n as e, r as t, t as n } from "../../chunks/StatusBar-B4L15DSm.js";
|
|
2
2
|
export { n as StatusBar, e as StatusBarItem, t as StatusBarSpacer };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/Switch-
|
|
1
|
+
import { t as e } from "../../chunks/Switch-DH5POG0T.js";
|
|
2
2
|
export { e as Switch };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { i as e, n as t, r as n, t as r } from "../../chunks/Tabs-
|
|
1
|
+
import { i as e, n as t, r as n, t as r } from "../../chunks/Tabs-BFHikpml.js";
|
|
2
2
|
export { r as Tab, t as TabList, n as TabPanel, e as Tabs };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Lane.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/Lane.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiH,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AACzJ,OAAO,EAAuC,KAAK,QAAQ,EAA8D,MAAM,iBAAiB,CAAC;AAGjJ,OAAO,EAA2C,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAGvF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"Lane.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/Lane.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiH,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AACzJ,OAAO,EAAuC,KAAK,QAAQ,EAA8D,MAAM,iBAAiB,CAAC;AAGjJ,OAAO,EAA2C,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAGvF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAKvC,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,OAAO,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,sDAAsD;IACtD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,qCAAqC;IACrC,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,gDAAgD;IAChD,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtD,mEAAmE;IACnE,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC;IAC1D,0DAA0D;IAC1D,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC;IAC3D,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,oCAAoC;IACpC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,8DAA8D;IAC9D,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAQD,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,YAAY,CAwKnD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c } from "../../chunks/Timeline-
|
|
2
|
-
export { c as AnimatedTimeline, a as EASING_NAMES, e as EasingPicker, i as Timeline,
|
|
1
|
+
import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c } from "../../chunks/Timeline-DNKY_yiK.js";
|
|
2
|
+
export { c as AnimatedTimeline, a as EASING_NAMES, e as EasingPicker, i as Timeline, n as Transport, s as easingBezier, t as easingLabel, o as samePath, r as sampleEasing };
|
|
@@ -31,5 +31,5 @@ export declare function setKeyEasing(tracks: readonly Track[], sel: KeySelection
|
|
|
31
31
|
export declare function setKeys(tracks: readonly Track[], trackPath: readonly number[], keys: readonly Keyframe<unknown>[]): Track[];
|
|
32
32
|
/** Set the selected key's value, leaving its time alone. */
|
|
33
33
|
export declare function setKeyValue(tracks: readonly Track[], sel: KeySelection, value: unknown): Track[];
|
|
34
|
-
export { snapToNearest as snapTime } from '
|
|
34
|
+
export { snapToNearest as snapTime } from '../../snap';
|
|
35
35
|
//# sourceMappingURL=keys.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,UAAU,EAAmB,KAAK,QAAQ,EAAyC,KAAK,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAGlJ,MAAM,WAAW,YAAY;IAC3B;;oBAEgB;IAChB,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,EAAE,YAAY,GAAG,IAAI,CAAC;CAChC;AAED,wDAAwD;AACxD,wBAAgB,QAAQ,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAE5E;AAgCD;;;;;;iEAMiE;AACjE,wBAAgB,OAAO,CACrB,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,GACxD,OAAO,CA+BT;AAED;mDACmD;AACnD,wBAAgB,SAAS,CACvB,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GACnE,OAAO,CAeT;AAED,iDAAiD;AACjD,wBAAgB,SAAS,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAY9E;AAED,iEAAiE;AACjE,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,GAAG,SAAS,GAC1E,KAAK,EAAE,CAST;AAED,uEAAuE;AACvE,wBAAgB,OAAO,CACrB,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,QAAQ,CAAC,OAAO,CAAC,EAAE,GACzF,KAAK,EAAE,CAIT;AAED,4DAA4D;AAC5D,wBAAgB,WAAW,CACzB,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,GAC1D,KAAK,EAAE,CAQT;AAED,OAAO,EAAE,aAAa,IAAI,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,UAAU,EAAmB,KAAK,QAAQ,EAAyC,KAAK,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAGlJ,MAAM,WAAW,YAAY;IAC3B;;oBAEgB;IAChB,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,EAAE,YAAY,GAAG,IAAI,CAAC;CAChC;AAED,wDAAwD;AACxD,wBAAgB,QAAQ,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAE5E;AAgCD;;;;;;iEAMiE;AACjE,wBAAgB,OAAO,CACrB,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,GACxD,OAAO,CA+BT;AAED;mDACmD;AACnD,wBAAgB,SAAS,CACvB,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GACnE,OAAO,CAeT;AAED,iDAAiD;AACjD,wBAAgB,SAAS,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAY9E;AAED,iEAAiE;AACjE,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,GAAG,SAAS,GAC1E,KAAK,EAAE,CAST;AAED,uEAAuE;AACvE,wBAAgB,OAAO,CACrB,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,QAAQ,CAAC,OAAO,CAAC,EAAE,GACzF,KAAK,EAAE,CAIT;AAED,4DAA4D;AAC5D,wBAAgB,WAAW,CACzB,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,GAC1D,KAAK,EAAE,CAQT;AAED,OAAO,EAAE,aAAa,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as e, i as t, n, r, t as i } from "../../chunks/Toast-
|
|
1
|
+
import { a as e, i as t, n, r, t as i } from "../../chunks/Toast-CI1UDuK6.js";
|
|
2
2
|
export { n as ToastQueue, i as ToastRegion, r as createToastQueue, t as defaultToastQueue, e as toast };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/ToggleBar-
|
|
1
|
+
import { t as e } from "../../chunks/ToggleBar-CClus5Cd.js";
|
|
2
2
|
export { e as ToggleBar };
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { type TokenCategory, type TokenEntry, type TokenScale } from './tokenTypes';
|
|
2
|
+
type OnChange = (name: string, value: string | null) => void;
|
|
3
|
+
/** Props for `<TokenPanel>`. */
|
|
4
|
+
export interface TokenPanelProps {
|
|
5
|
+
tokens: readonly TokenEntry[];
|
|
6
|
+
/** A token's new value, or null to drop its override. Keep it stable: rows re-render only when it or their token changes. */
|
|
7
|
+
onChange: OnChange;
|
|
8
|
+
/** Sections held closed, by category. Omit to let the panel keep that state itself. */
|
|
9
|
+
collapsed?: Readonly<Partial<Record<TokenCategory, boolean>>>;
|
|
10
|
+
onCollapsedChange?: (category: TokenCategory, collapsed: boolean) => void;
|
|
11
|
+
/** Groups generated from a base, by group name. Such a group edits its base and rule above its steps. */
|
|
12
|
+
scales?: Readonly<Record<string, TokenScale>>;
|
|
13
|
+
/** A scale's new base or rule. The panel does not regenerate the steps; the consumer does, through `onChange`. */
|
|
14
|
+
onScaleChange?: (group: string, scale: TokenScale) => void;
|
|
15
|
+
/** Files a token under a section. Defaults to `tokenCategory`. */
|
|
16
|
+
categorize?: (token: TokenEntry) => TokenCategory;
|
|
17
|
+
/** The fewest colors, or sizes, sharing a group that draw as one row of swatches or one grid of steps. Default 3. */
|
|
18
|
+
familySize?: number;
|
|
19
|
+
/**
|
|
20
|
+
* Row layout. `tight` puts a token on one line — name, control, Reset — with the
|
|
21
|
+
* names on a fixed rail so the values read down the panel as a column, and caps
|
|
22
|
+
* the field rather than letting it span the panel. Default `normal` stacks the
|
|
23
|
+
* control under its name.
|
|
24
|
+
*/
|
|
25
|
+
density?: 'tight' | 'normal';
|
|
26
|
+
className?: string;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Edits a set of design tokens by type: collapsible sections by category, a
|
|
30
|
+
* color group drawn as one row of swatches sized to fit, a group of sizes drawn
|
|
31
|
+
* as one grid of numbers labeled by step — with its base and rule above it when
|
|
32
|
+
* `scales` says how it is generated — and a control for each
|
|
33
|
+
* type — a number with its unit for dimensions and durations, the nine weights
|
|
34
|
+
* for a font weight, a curve beside a `cubic-bezier()`, a swatch beside a color,
|
|
35
|
+
* and text for everything else.
|
|
36
|
+
*/
|
|
37
|
+
export declare function TokenPanel({ tokens, onChange, collapsed, onCollapsedChange, scales, onScaleChange, categorize, familySize, density, className, }: TokenPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
38
|
+
export {};
|
|
39
|
+
//# sourceMappingURL=TokenPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TokenPanel.d.ts","sourceRoot":"","sources":["../../../src/components/TokenPanel/TokenPanel.tsx"],"names":[],"mappings":"AAWA,OAAO,EAKL,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,UAAU,EAGhB,MAAM,cAAc,CAAC;AAEtB,KAAK,QAAQ,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;AAE7D,gCAAgC;AAChC,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,SAAS,UAAU,EAAE,CAAC;IAC9B,6HAA6H;IAC7H,QAAQ,EAAE,QAAQ,CAAC;IACnB,uFAAuF;IACvF,SAAS,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9D,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1E,yGAAyG;IACzG,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IAC9C,kHAAkH;IAClH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC3D,kEAAkE;IAClE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,aAAa,CAAC;IAClD,qHAAqH;IACrH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA2aD;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,QAAQ,EACR,SAAS,EACT,iBAAiB,EACjB,MAAM,EACN,aAAa,EACb,UAA0B,EAC1B,UAAc,EACd,OAAkB,EAClB,SAAS,GACV,EAAE,eAAe,2CAqCjB"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
type Supports = ((value: string) => boolean) | null;
|
|
2
|
+
/** Whether `value` is a CSS color — the browser's answer where it has `CSS.supports`, a small parser's otherwise. */
|
|
3
|
+
export declare function parsesAsColor(value: string, supports?: Supports): boolean;
|
|
4
|
+
/** `value` as the `#rrggbb` a color input takes, alpha dropped; null when it cannot be converted. */
|
|
5
|
+
export declare function toHex(value: string): string | null;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=color.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../src/components/TokenPanel/color.ts"],"names":[],"mappings":"AA0BA,KAAK,QAAQ,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC;AAQpD,qHAAqH;AACrH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,QAA4B,GAAG,OAAO,CAM5F;AAqCD,qGAAqG;AACrG,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMlD"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { TokenPanel } from './TokenPanel';
|
|
2
|
+
export type { TokenPanelProps } from './TokenPanel';
|
|
3
|
+
export { inferTokenType, refitScale, TOKEN_CATEGORIES, tokenCategory } from './tokenTypes';
|
|
4
|
+
export type { TokenCategory, TokenEntry, TokenScale, TokenScaleRule } from './tokenTypes';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/TokenPanel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC3F,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/** A design token as `TokenPanel` edits it. */
|
|
2
|
+
export interface TokenEntry {
|
|
3
|
+
/** The custom property, e.g. `--wzl-gray-50`. */
|
|
4
|
+
name: string;
|
|
5
|
+
/** A DTCG type name. A type the panel has no control for edits as text. */
|
|
6
|
+
type: string;
|
|
7
|
+
/** Tokens sharing a group sit together; a color group large enough draws as one row of swatches. */
|
|
8
|
+
group: string;
|
|
9
|
+
value: string;
|
|
10
|
+
/** Whether `value` overrides the token's own, which offers Reset. */
|
|
11
|
+
overridden?: boolean;
|
|
12
|
+
description?: string;
|
|
13
|
+
}
|
|
14
|
+
/** How a scale's steps follow from its base: one multiplier per step, a constant ratio, or a constant step. */
|
|
15
|
+
export type TokenScaleRule = {
|
|
16
|
+
kind: 'factors';
|
|
17
|
+
factors: readonly number[];
|
|
18
|
+
} | {
|
|
19
|
+
kind: 'ratio';
|
|
20
|
+
ratio: number;
|
|
21
|
+
} | {
|
|
22
|
+
kind: 'step';
|
|
23
|
+
step: number;
|
|
24
|
+
};
|
|
25
|
+
/** A group whose steps are generated from a base, so the panel edits the base and the rule rather than each step. */
|
|
26
|
+
export interface TokenScale {
|
|
27
|
+
/** The generated tokens, smallest first. Anything else in the group draws as an ordinary step. */
|
|
28
|
+
tokens: readonly string[];
|
|
29
|
+
base: number;
|
|
30
|
+
rule: TokenScaleRule;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* The same scale under another rule, fitted to the amounts its steps have now.
|
|
34
|
+
* A ratio or step counts from the first step, so switching to one moves the
|
|
35
|
+
* base there.
|
|
36
|
+
*/
|
|
37
|
+
export declare function refitScale(scale: TokenScale, kind: TokenScaleRule['kind'], amounts: readonly number[]): TokenScale;
|
|
38
|
+
export type TokenCategory = 'color' | 'type' | 'size' | 'motion' | 'depth' | 'other';
|
|
39
|
+
/** The panel's sections, in the order it draws them. */
|
|
40
|
+
export declare const TOKEN_CATEGORIES: readonly {
|
|
41
|
+
id: TokenCategory;
|
|
42
|
+
title: string;
|
|
43
|
+
}[];
|
|
44
|
+
/** The section a token is filed under: by its type, and for a bare dimension or number by its group. */
|
|
45
|
+
export declare function tokenCategory(token: TokenEntry): TokenCategory;
|
|
46
|
+
/** A DTCG type read off the shape of a value, for a token that arrives without one. `'string'` when nothing fits. */
|
|
47
|
+
export declare function inferTokenType(value: string): string;
|
|
48
|
+
/** A number and its unit, or null for a value that is not one. */
|
|
49
|
+
export declare function splitUnit(value: string): {
|
|
50
|
+
amount: number;
|
|
51
|
+
unit: string;
|
|
52
|
+
} | null;
|
|
53
|
+
/** The four control points of a `cubic-bezier()`, or null for any other easing. */
|
|
54
|
+
export declare function bezierPoints(value: string): readonly [number, number, number, number] | null;
|
|
55
|
+
//# sourceMappingURL=tokenTypes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenTypes.d.ts","sourceRoot":"","sources":["../../../src/components/TokenPanel/tokenTypes.ts"],"names":[],"mappings":"AAEA,+CAA+C;AAC/C,MAAM,WAAW,UAAU;IACzB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb,oGAAoG;IACpG,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,+GAA+G;AAC/G,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnC,qHAAqH;AACrH,MAAM,WAAW,UAAU;IACzB,kGAAkG;IAClG,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;CACtB;AAID;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,UAAU,CAYlH;AAED,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;AAErF,wDAAwD;AACxD,eAAO,MAAM,gBAAgB,EAAE,SAAS;IAAE,EAAE,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAO3E,CAAC;AAIF,wGAAwG;AACxG,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,aAAa,CAqB9D;AAyBD,qHAAqH;AACrH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWpD;AAED,kEAAkE;AAClE,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAGhF;AAED,mFAAmF;AACnF,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAK5F"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/ToolButton-
|
|
1
|
+
import { t as e } from "../../chunks/ToolButton-9QzJCmuM.js";
|
|
2
2
|
export { e as ToolButton };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/ToolGroup-
|
|
1
|
+
import { t as e } from "../../chunks/ToolGroup-BJiDrH_i.js";
|
|
2
2
|
export { e as ToolGroup };
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { ReactNode } from 'react';
|
|
2
|
+
import type { ToolPrefGroup } from '@weasel-js/core';
|
|
3
|
+
import { type PropertyRenderer } from '../SelectionPanel/renderLeaf';
|
|
2
4
|
/** Props for {@link ToolOptionsBar}. */
|
|
3
5
|
export interface ToolOptionsBarProps {
|
|
4
6
|
/**
|
|
@@ -12,34 +14,43 @@ export interface ToolOptionsBarProps {
|
|
|
12
14
|
* toolbar", then "Text" again when browsing into the visible span).
|
|
13
15
|
* `aria-labelledby` would avoid the echo at the cost of id plumbing and
|
|
14
16
|
* an awkward no-`id`-to-point-at case when `label` is omitted. The
|
|
15
|
-
* double-announcement is common enough for
|
|
17
|
+
* double-announcement is common enough for labeled landmark regions
|
|
16
18
|
* that it's left as-is — considered, not missed.
|
|
17
19
|
*/
|
|
18
20
|
label?: string;
|
|
21
|
+
/**
|
|
22
|
+
* The active tool's options. Leaves draw through the same leaf → control
|
|
23
|
+
* mapping `SelectionPanel` uses, so a kind gets its control decided in one
|
|
24
|
+
* place; groups organize without drawing, since the bar is one line.
|
|
25
|
+
*/
|
|
26
|
+
schema?: ToolPrefGroup;
|
|
27
|
+
/** Each leaf's value, keyed by dotted path. A path with no entry is unset. */
|
|
28
|
+
values?: Readonly<Record<string, unknown>>;
|
|
29
|
+
/** A leaf edit, as the dotted path it was declared at and its new value. */
|
|
30
|
+
onChange?: (path: string, value: unknown) => void;
|
|
31
|
+
/** Paths whose sources disagree — drawn as the control's mixed state. */
|
|
32
|
+
mixed?: ReadonlySet<string>;
|
|
33
|
+
/** Control overrides, by dotted path or by leaf kind, as the panel takes. */
|
|
34
|
+
renderers?: Record<string, PropertyRenderer>;
|
|
19
35
|
children?: ReactNode;
|
|
20
36
|
className?: string;
|
|
21
37
|
}
|
|
22
38
|
/**
|
|
23
|
-
* Horizontal strip reserved above the workspace for contextual tool
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
* about text, or about any specific tool — any tool can fill it.
|
|
39
|
+
* Horizontal strip reserved above the workspace for contextual tool options.
|
|
40
|
+
* Given a `schema` it draws the active tool's options itself; the children
|
|
41
|
+
* slot stays open for a tenant that is not a tool's options at all, such as
|
|
42
|
+
* loupe controls.
|
|
28
43
|
*
|
|
29
|
-
* The row always renders, even
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
* canvas that's sized to the page.
|
|
44
|
+
* The row always renders, even empty, because the app reserves its height
|
|
45
|
+
* permanently rather than mounting it on demand — mounting mid-edit would
|
|
46
|
+
* resize the workspace under a canvas that's sized to the page.
|
|
33
47
|
*
|
|
34
48
|
* `role="toolbar"` without roving tabindex: the ARIA authoring practices
|
|
35
|
-
* expect arrow-key roving focus across a toolbar's items, but
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
* handling. Tab order falls back to normal DOM order for now; revisit
|
|
41
|
-
* once the first tenant's control set is concrete and a roving-focus
|
|
42
|
-
* contract can be designed in coordination with those controls.
|
|
49
|
+
* expect arrow-key roving focus across a toolbar's items, but a bar of
|
|
50
|
+
* compound controls (`NumberField`, `Select`, `ColorField`) must leave the
|
|
51
|
+
* arrow keys to them — they edit their own value with them. That is true of
|
|
52
|
+
* schema-drawn controls as much as of arbitrary children, so the bar keeps
|
|
53
|
+
* plain DOM tab order and `useRovingTabIndex` documents this as its opt-out.
|
|
43
54
|
*/
|
|
44
55
|
export declare function ToolOptionsBar(props: ToolOptionsBarProps): import("react/jsx-runtime").JSX.Element;
|
|
45
56
|
//# sourceMappingURL=ToolOptionsBar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolOptionsBar.d.ts","sourceRoot":"","sources":["../../../src/components/ToolOptionsBar/ToolOptionsBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ToolOptionsBar.d.ts","sourceRoot":"","sources":["../../../src/components/ToolOptionsBar/ToolOptionsBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAKL,KAAK,gBAAgB,EACtB,MAAM,8BAA8B,CAAC;AAItC,wCAAwC;AACxC,MAAM,WAAW,mBAAmB;IAClC;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC3C,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,yEAAyE;IACzE,KAAK,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,2CAsBxD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/ToolOptionsBar-
|
|
1
|
+
import { t as e } from "../../chunks/ToolOptionsBar-CAM6RcUH.js";
|
|
2
2
|
export { e as ToolOptionsBar };
|