@weasel-js/ui 1.3.0-pre.0 → 1.4.0-pre.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/dist/chunks/{ActionBar-BTev_ZZl.js → ActionBar-D4N1o4LB.js} +2 -2
- package/dist/chunks/{ActionBar-BTev_ZZl.js.map → ActionBar-D4N1o4LB.js.map} +1 -1
- package/dist/chunks/{ActionsBar-gTuCtkv8.js → ActionsBar-B-gWm0NE.js} +3 -3
- package/dist/chunks/{ActionsBar-gTuCtkv8.js.map → ActionsBar-B-gWm0NE.js.map} +1 -1
- package/dist/chunks/{Badge-9dPfvYOk.js → Badge-BXTDs-zi.js} +1 -1
- package/dist/chunks/{Badge-9dPfvYOk.js.map → Badge-BXTDs-zi.js.map} +1 -1
- package/dist/chunks/{BandEditor-DKbcHG2_.js → BandEditor-D13ybQN_.js} +1 -1
- package/dist/chunks/{BandEditor-DKbcHG2_.js.map → BandEditor-D13ybQN_.js.map} +1 -1
- package/dist/chunks/{Button-CIu40Epu.js → Button-0OdcoOMx.js} +1 -1
- package/dist/chunks/{Button-CIu40Epu.js.map → Button-0OdcoOMx.js.map} +1 -1
- package/dist/chunks/{Callout-CHs98djt.js → Callout-DAFusbzz.js} +1 -1
- package/dist/chunks/Callout-DAFusbzz.js.map +1 -0
- package/dist/chunks/{Checkbox-BLEw-wEb.js → Checkbox-BePa_djO.js} +1 -1
- package/dist/chunks/{Checkbox-BLEw-wEb.js.map → Checkbox-BePa_djO.js.map} +1 -1
- package/dist/chunks/{ColorField-D1t-BdSa.js → ColorField-CKbnsEUN.js} +2 -2
- package/dist/chunks/{ColorField-D1t-BdSa.js.map → ColorField-CKbnsEUN.js.map} +1 -1
- package/dist/chunks/{ComboBox-cvdKolWv.js → ComboBox-B6QS8y3j.js} +2 -2
- package/dist/chunks/{ComboBox-cvdKolWv.js.map → ComboBox-B6QS8y3j.js.map} +1 -1
- package/dist/chunks/{CurveEditor-BaA-PabB.js → CurveEditor-COJ6WK9K.js} +3 -2
- package/dist/chunks/{CurveEditor-BaA-PabB.js.map → CurveEditor-COJ6WK9K.js.map} +1 -1
- package/dist/chunks/DataGrid-BWZZUekH.js +107 -0
- package/dist/chunks/DataGrid-BWZZUekH.js.map +1 -0
- package/dist/chunks/DetentSlider-CXIeTHaM.js +83 -0
- package/dist/chunks/DetentSlider-CXIeTHaM.js.map +1 -0
- package/dist/chunks/{Dialog-DC1x46Sq.js → Dialog-CQAZ7hS7.js} +1 -1
- package/dist/chunks/{Dialog-DC1x46Sq.js.map → Dialog-CQAZ7hS7.js.map} +1 -1
- package/dist/chunks/DragHandleGlyph--2zsZzA2.js +47 -0
- package/dist/chunks/DragHandleGlyph--2zsZzA2.js.map +1 -0
- package/dist/chunks/{Field-BjFl_yng.js → Field-BCcTt6Fd.js} +1 -1
- package/dist/chunks/{Field-BjFl_yng.js.map → Field-BCcTt6Fd.js.map} +1 -1
- package/dist/chunks/FontFamilySelect-DwkwRYrr.js +29 -0
- package/dist/chunks/FontFamilySelect-DwkwRYrr.js.map +1 -0
- package/dist/chunks/{GradientEditor-BJRD0n1g.js → GradientEditor-FwNdxxf-.js} +4 -4
- package/dist/chunks/{GradientEditor-BJRD0n1g.js.map → GradientEditor-FwNdxxf-.js.map} +1 -1
- package/dist/chunks/{PaintInput-Cggm9OIl.js → Icon-CxoJb_bw.js} +17 -127
- package/dist/chunks/Icon-CxoJb_bw.js.map +1 -0
- package/dist/chunks/{InlineRange-C6UYKxLD.js → InlineRange-mb19EGOI.js} +1 -1
- package/dist/chunks/{InlineRange-C6UYKxLD.js.map → InlineRange-mb19EGOI.js.map} +1 -1
- package/dist/chunks/{Input-DhWBgpRx.js → Input-DRUeowbz.js} +2 -2
- package/dist/chunks/{Input-DhWBgpRx.js.map → Input-DRUeowbz.js.map} +1 -1
- package/dist/chunks/ItemList-BUTk9E8-.js +42 -0
- package/dist/chunks/ItemList-BUTk9E8-.js.map +1 -0
- package/dist/chunks/{Keycaps-BhCKdyws.js → Keycaps-DszN5Dwl.js} +1 -1
- package/dist/chunks/{Keycaps-BhCKdyws.js.map → Keycaps-DszN5Dwl.js.map} +1 -1
- package/dist/chunks/LayerStack-htMwIsJ6.js +145 -0
- package/dist/chunks/LayerStack-htMwIsJ6.js.map +1 -0
- package/dist/chunks/{NumberField-ZdVa4bpJ.js → NumberField-CQ7OJORF.js} +2 -2
- package/dist/chunks/{NumberField-ZdVa4bpJ.js.map → NumberField-CQ7OJORF.js.map} +1 -1
- package/dist/chunks/{OptionsBar-DahCI4Aq.js → OptionsBar-efIwfqYe.js} +3 -3
- package/dist/chunks/{OptionsBar-DahCI4Aq.js.map → OptionsBar-efIwfqYe.js.map} +1 -1
- package/dist/chunks/PaintInput-CgZR3B0r.js +118 -0
- package/dist/chunks/PaintInput-CgZR3B0r.js.map +1 -0
- package/dist/chunks/{PatternPicker-B63SlDoF.js → PatternPicker-v9BFsaMM.js} +2 -2
- package/dist/chunks/{PatternPicker-B63SlDoF.js.map → PatternPicker-v9BFsaMM.js.map} +1 -1
- package/dist/chunks/Plot2D-B08SYGQV.js +134 -0
- package/dist/chunks/Plot2D-B08SYGQV.js.map +1 -0
- package/dist/chunks/{PointPlotter-CLd9u5Bq.js → PointPlotter-DEh7a3xB.js} +2 -2
- package/dist/chunks/{PointPlotter-CLd9u5Bq.js.map → PointPlotter-DEh7a3xB.js.map} +1 -1
- package/dist/chunks/{Powerline-DhQJYaUg.js → Powerline-M1Q3Hx5E.js} +2 -2
- package/dist/chunks/{Powerline-DhQJYaUg.js.map → Powerline-M1Q3Hx5E.js.map} +1 -1
- package/dist/chunks/{Prefs-BSJ0lMmJ.js → Prefs-C2qhxnmt.js} +11 -11
- package/dist/chunks/{Prefs-BSJ0lMmJ.js.map → Prefs-C2qhxnmt.js.map} +1 -1
- package/dist/chunks/Properties-CFRJ8mYH.js +655 -0
- package/dist/chunks/Properties-CFRJ8mYH.js.map +1 -0
- package/dist/chunks/{RadioGroup-vtwjRiUm.js → RadioGroup-B8eMJ6lu.js} +2 -2
- package/dist/chunks/{RadioGroup-vtwjRiUm.js.map → RadioGroup-B8eMJ6lu.js.map} +1 -1
- package/dist/chunks/{RangeSlider-B-n_7AgJ.js → RangeSlider-JczhglgA.js} +1 -1
- package/dist/chunks/RangeSlider-JczhglgA.js.map +1 -0
- package/dist/chunks/{ResizeHandle--ZExnMfa.js → ResizeHandle-CXBXV6Px.js} +1 -1
- package/dist/chunks/{ResizeHandle--ZExnMfa.js.map → ResizeHandle-CXBXV6Px.js.map} +1 -1
- package/dist/chunks/{Select--BVTi-j0.js → Select-g8PhE010.js} +2 -2
- package/dist/chunks/{Select--BVTi-j0.js.map → Select-g8PhE010.js.map} +1 -1
- package/dist/chunks/SelectionPanel-Cl18SdD6.js +561 -0
- package/dist/chunks/SelectionPanel-Cl18SdD6.js.map +1 -0
- package/dist/chunks/{Sidebar-CtwBdr4n.js → Sidebar-mWGsndWw.js} +1 -1
- package/dist/chunks/{Sidebar-CtwBdr4n.js.map → Sidebar-mWGsndWw.js.map} +1 -1
- package/dist/chunks/SidebarPanel-B2d0erLv.js +59 -0
- package/dist/chunks/SidebarPanel-B2d0erLv.js.map +1 -0
- package/dist/chunks/Slider-BbbmHE0c.js +291 -0
- package/dist/chunks/Slider-BbbmHE0c.js.map +1 -0
- package/dist/chunks/{StatusBar-D_wu-SZh.js → StatusBar-xxCcWsfq.js} +1 -1
- package/dist/chunks/{StatusBar-D_wu-SZh.js.map → StatusBar-xxCcWsfq.js.map} +1 -1
- package/dist/chunks/{Switch-CtZwp5zm.js → Switch-QviBb61l.js} +1 -1
- package/dist/chunks/{Switch-CtZwp5zm.js.map → Switch-QviBb61l.js.map} +1 -1
- package/dist/chunks/{Tabs-lB0IB4TX.js → Tabs-DT-dIt6d.js} +1 -1
- package/dist/chunks/{Tabs-lB0IB4TX.js.map → Tabs-DT-dIt6d.js.map} +1 -1
- package/dist/chunks/Timeline-DsLeV5I1.js +894 -0
- package/dist/chunks/Timeline-DsLeV5I1.js.map +1 -0
- package/dist/chunks/{Toast-hr9BYsho.js → Toast-CfkiN0Nv.js} +1 -1
- package/dist/chunks/{Toast-hr9BYsho.js.map → Toast-CfkiN0Nv.js.map} +1 -1
- package/dist/chunks/{ToggleBar-BxgWq-wO.js → ToggleBar-D0veW91s.js} +2 -2
- package/dist/chunks/{ToggleBar-BxgWq-wO.js.map → ToggleBar-D0veW91s.js.map} +1 -1
- package/dist/chunks/{ToolButton-CJrPjbsj.js → ToolButton-CLoR9Z4o.js} +2 -2
- package/dist/chunks/{ToolButton-CJrPjbsj.js.map → ToolButton-CLoR9Z4o.js.map} +1 -1
- package/dist/chunks/{ToolGroup-D_lDzkvU.js → ToolGroup-BnE23mcA.js} +1 -1
- package/dist/chunks/{ToolGroup-D_lDzkvU.js.map → ToolGroup-BnE23mcA.js.map} +1 -1
- package/dist/chunks/{ToolOptionsBar-BA6Sb3U2.js → ToolOptionsBar-ByHX7y1M.js} +1 -1
- package/dist/chunks/{ToolOptionsBar-BA6Sb3U2.js.map → ToolOptionsBar-ByHX7y1M.js.map} +1 -1
- package/dist/chunks/{ToolPalette-TMvkaJwr.js → ToolPalette-W-rAsomq.js} +5 -5
- package/dist/chunks/{ToolPalette-TMvkaJwr.js.map → ToolPalette-W-rAsomq.js.map} +1 -1
- package/dist/chunks/{Tooltip-Di7vxbFa.js → Tooltip-Bq8Hvj4r.js} +1 -1
- package/dist/chunks/{Tooltip-Di7vxbFa.js.map → Tooltip-Bq8Hvj4r.js.map} +1 -1
- package/dist/chunks/dlog-CMYiRF3Q.js +38 -0
- package/dist/chunks/dlog-CMYiRF3Q.js.map +1 -0
- package/dist/chunks/icons-CdLHgzV8.js +144 -0
- package/dist/chunks/icons-CdLHgzV8.js.map +1 -0
- package/dist/chunks/{keyGlyph-DNpLxF8u.js → keyGlyph-BLFMKZgF.js} +1 -1
- package/dist/chunks/{keyGlyph-DNpLxF8u.js.map → keyGlyph-BLFMKZgF.js.map} +1 -1
- package/dist/chunks/number-D3TDawLC.js +18 -0
- package/dist/chunks/number-D3TDawLC.js.map +1 -0
- package/dist/chunks/{segmentedControl.module-D4b7x19O.js → segmentedControl.module-XADeq9e5.js} +1 -1
- package/dist/chunks/{segmentedControl.module-D4b7x19O.js.map → segmentedControl.module-XADeq9e5.js.map} +1 -1
- package/dist/chunks/useReorderDragList-nQMVwNBd.js +109 -0
- package/dist/chunks/useReorderDragList-nQMVwNBd.js.map +1 -0
- package/dist/chunks/{useRovingTabIndex-CQz8EiKh.js → useRovingTabIndex-ByjY4lnw.js} +1 -1
- package/dist/chunks/{useRovingTabIndex-CQz8EiKh.js.map → useRovingTabIndex-ByjY4lnw.js.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/index.js +1 -1
- package/dist/components/Button/index.js +1 -1
- package/dist/components/Callout/Callout.d.ts +3 -3
- 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/index.js +1 -1
- package/dist/components/DataGrid/index.js +1 -1
- package/dist/components/DetentSlider/DetentSlider.d.ts +52 -0
- package/dist/components/DetentSlider/DetentSlider.d.ts.map +1 -0
- package/dist/components/DetentSlider/index.d.ts +3 -0
- package/dist/components/DetentSlider/index.d.ts.map +1 -0
- package/dist/components/DetentSlider/index.js +2 -0
- package/dist/components/Dialog/index.js +1 -1
- package/dist/components/DragHandleGlyph/DragHandleGlyph.d.ts +12 -0
- package/dist/components/DragHandleGlyph/DragHandleGlyph.d.ts.map +1 -0
- package/dist/components/DragHandleGlyph/index.d.ts +3 -0
- package/dist/components/DragHandleGlyph/index.d.ts.map +1 -0
- package/dist/components/DragHandleGlyph/index.js +2 -0
- package/dist/components/Field/index.js +1 -1
- package/dist/components/FontFamilySelect/FontFamilySelect.d.ts +15 -0
- package/dist/components/FontFamilySelect/FontFamilySelect.d.ts.map +1 -0
- package/dist/components/FontFamilySelect/index.d.ts +3 -0
- package/dist/components/FontFamilySelect/index.d.ts.map +1 -0
- package/dist/components/FontFamilySelect/index.js +2 -0
- 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/ItemList.d.ts +45 -0
- package/dist/components/ItemList/ItemList.d.ts.map +1 -0
- package/dist/components/ItemList/index.d.ts +3 -0
- package/dist/components/ItemList/index.d.ts.map +1 -0
- package/dist/components/ItemList/index.js +2 -0
- package/dist/components/Keycaps/index.js +2 -2
- package/dist/components/LayerStack/LayerStack.d.ts +49 -0
- package/dist/components/LayerStack/LayerStack.d.ts.map +1 -0
- package/dist/components/LayerStack/index.d.ts +2 -0
- package/dist/components/LayerStack/index.d.ts.map +1 -0
- package/dist/components/LayerStack/index.js +2 -0
- package/dist/components/NumberField/index.js +1 -1
- package/dist/components/OptionsBar/index.js +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/index.js +1 -1
- package/dist/components/Properties/CurveField.d.ts +37 -0
- package/dist/components/Properties/CurveField.d.ts.map +1 -0
- package/dist/components/Properties/EffectCard.d.ts +68 -0
- package/dist/components/Properties/EffectCard.d.ts.map +1 -0
- package/dist/components/Properties/PropertyGroup.d.ts +24 -0
- package/dist/components/Properties/PropertyGroup.d.ts.map +1 -0
- package/dist/components/Properties/PropertyPanel.d.ts +195 -0
- package/dist/components/Properties/PropertyPanel.d.ts.map +1 -0
- package/dist/components/Properties/index.d.ts +9 -0
- package/dist/components/Properties/index.d.ts.map +1 -0
- package/dist/components/Properties/index.js +2 -0
- package/dist/components/Properties/storyLayouts.d.ts +11 -0
- package/dist/components/Properties/storyLayouts.d.ts.map +1 -0
- package/dist/components/RadioGroup/index.js +1 -1
- package/dist/components/RangeSlider/RangeSlider.d.ts +2 -2
- package/dist/components/RangeSlider/index.js +1 -1
- package/dist/components/ResizeHandle/index.js +1 -1
- package/dist/components/Select/index.js +1 -1
- package/dist/components/SelectionPanel/SelectionPanel.d.ts.map +1 -1
- package/dist/components/SelectionPanel/index.js +1 -1
- package/dist/components/Sidebar/index.js +1 -1
- package/dist/components/SidebarPanel/SidebarPanel.d.ts.map +1 -1
- package/dist/components/SidebarPanel/index.js +1 -1
- package/dist/components/Slider/Slider.d.ts +16 -1
- package/dist/components/Slider/Slider.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/AnimatedTimeline.d.ts +15 -0
- package/dist/components/Timeline/AnimatedTimeline.d.ts.map +1 -0
- package/dist/components/Timeline/EasingPicker.d.ts +8 -0
- package/dist/components/Timeline/EasingPicker.d.ts.map +1 -0
- package/dist/components/Timeline/Lane.d.ts +28 -0
- package/dist/components/Timeline/Lane.d.ts.map +1 -0
- package/dist/components/Timeline/Ruler.d.ts +12 -0
- package/dist/components/Timeline/Ruler.d.ts.map +1 -0
- package/dist/components/Timeline/Timeline.d.ts +39 -0
- package/dist/components/Timeline/Timeline.d.ts.map +1 -0
- package/dist/components/Timeline/Transport.d.ts +14 -0
- package/dist/components/Timeline/Transport.d.ts.map +1 -0
- package/dist/components/Timeline/easingSpec.d.ts +16 -0
- package/dist/components/Timeline/easingSpec.d.ts.map +1 -0
- package/dist/components/Timeline/index.d.ts +11 -0
- package/dist/components/Timeline/index.d.ts.map +1 -0
- package/dist/components/Timeline/index.js +2 -0
- package/dist/components/Timeline/keys.d.ts +34 -0
- package/dist/components/Timeline/keys.d.ts.map +1 -0
- package/dist/components/Timeline/lanes.d.ts +24 -0
- package/dist/components/Timeline/lanes.d.ts.map +1 -0
- package/dist/components/Timeline/timeScale.d.ts +31 -0
- package/dist/components/Timeline/timeScale.d.ts.map +1 -0
- package/dist/components/Toast/index.js +1 -1
- package/dist/components/ToggleBar/index.js +1 -1
- package/dist/components/ToolButton/index.js +1 -1
- package/dist/components/ToolGroup/index.js +1 -1
- package/dist/components/ToolOptionsBar/index.js +1 -1
- package/dist/components/ToolPalette/index.js +1 -1
- package/dist/components/Tooltip/index.js +1 -1
- package/dist/format/number.d.ts +13 -0
- package/dist/format/number.d.ts.map +1 -1
- package/dist/icons/index.d.ts +3 -1
- package/dist/icons/index.d.ts.map +1 -1
- package/dist/icons/paths.d.ts +2 -0
- package/dist/icons/paths.d.ts.map +1 -1
- package/dist/index.d.ts +8 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +63 -184
- package/dist/index.js.map +1 -1
- package/dist/style.css +1 -1
- package/package.json +5 -4
- package/dist/chunks/Callout-CHs98djt.js.map +0 -1
- package/dist/chunks/DataGrid-D15I779H.js +0 -210
- package/dist/chunks/DataGrid-D15I779H.js.map +0 -1
- package/dist/chunks/PaintInput-Cggm9OIl.js.map +0 -1
- package/dist/chunks/Plot2D-sPXTw_-l.js +0 -168
- package/dist/chunks/Plot2D-sPXTw_-l.js.map +0 -1
- package/dist/chunks/RangeSlider-B-n_7AgJ.js.map +0 -1
- package/dist/chunks/SelectionPanel-C7kygTFE.js +0 -446
- package/dist/chunks/SelectionPanel-C7kygTFE.js.map +0 -1
- package/dist/chunks/SidebarPanel-AeSc7wNR.js +0 -59
- package/dist/chunks/SidebarPanel-AeSc7wNR.js.map +0 -1
- package/dist/chunks/Slider-cxWR47gi.js +0 -259
- package/dist/chunks/Slider-cxWR47gi.js.map +0 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type { CurveFieldProps, CurveMark } from './CurveField';
|
|
2
|
+
export { CurveField } from './CurveField';
|
|
3
|
+
export type { EffectCardListItem, EffectCardListProps, EffectCardProps, SubpanelProps, } from './EffectCard';
|
|
4
|
+
export { EffectCard, EffectCardList, Subpanel } from './EffectCard';
|
|
5
|
+
export type { PropertyGroupProps } from './PropertyGroup';
|
|
6
|
+
export { PropertyGroup } from './PropertyGroup';
|
|
7
|
+
export type { CheckboxRowProps, ColorRowProps, NumberRowProps, PropertyListPack, PropertyListProps, PropertyOption, PropertyPanelProps, PropertyRowLayout, PropertyRowProps, PropertyRowVariant, PropertySpanProps, SelectRowProps, SliderRowProps, TextRowProps, ToggleRowProps, } from './PropertyPanel';
|
|
8
|
+
export { CheckboxRow, ColorRow, NumberRow, PropertyList, PropertyPanel, PropertyRow, PropertySpan, SelectRow, SliderRow, TextRow, ToggleRow, } from './PropertyPanel';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Properties/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EACV,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACpE,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,YAAY,EACZ,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,WAAW,EACX,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,aAAa,EACb,WAAW,EACX,YAAY,EACZ,SAAS,EACT,SAAS,EACT,OAAO,EACP,SAAS,GACV,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { a as e, c as t, d as n, f as r, g as i, h as a, i as o, l as s, m as c, n as l, o as u, p as d, r as f, s as p, t as m, u as h } from "../../chunks/Properties-CFRJ8mYH.js";
|
|
2
|
+
export { m as CheckboxRow, l as ColorRow, i as CurveField, d as EffectCard, c as EffectCardList, f as NumberRow, r as PropertyGroup, o as PropertyList, e as PropertyPanel, u as PropertyRow, p as PropertySpan, t as SelectRow, s as SliderRow, a as Subpanel, h as TextRow, n as ToggleRow };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Side-by-side comparison used by row stories to show block + inline layouts
|
|
4
|
+
* at the same time. Not a stories file — name has no .stories. suffix so
|
|
5
|
+
* Storybook's glob skips it.
|
|
6
|
+
*/
|
|
7
|
+
export declare function SideBySide({ block, inline }: {
|
|
8
|
+
block: ReactNode;
|
|
9
|
+
inline: ReactNode;
|
|
10
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
//# sourceMappingURL=storyLayouts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storyLayouts.d.ts","sourceRoot":"","sources":["../../../src/components/Properties/storyLayouts.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,2CA4BpF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, t } from "../../chunks/RadioGroup-
|
|
1
|
+
import { n as e, t } from "../../chunks/RadioGroup-B8eMJ6lu.js";
|
|
2
2
|
export { t as Radio, e as RadioGroup };
|
|
@@ -12,8 +12,8 @@ export type RangeSliderProps = Omit<RACSliderProps, 'children' | 'className'> &
|
|
|
12
12
|
};
|
|
13
13
|
/**
|
|
14
14
|
* Linear range slider on React Aria. Single-value by default; pass an array
|
|
15
|
-
* to `value` / `defaultValue` for multi-thumb. Distinct from
|
|
16
|
-
*
|
|
15
|
+
* to `value` / `defaultValue` for multi-thumb. Distinct from `Slider`, which
|
|
16
|
+
* is fully controlled and gives each thumb its own bounds and readout.
|
|
17
17
|
*/
|
|
18
18
|
export declare function RangeSlider(props: RangeSliderProps): import("react/jsx-runtime").JSX.Element;
|
|
19
19
|
//# sourceMappingURL=RangeSlider.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/RangeSlider-
|
|
1
|
+
import { t as e } from "../../chunks/RangeSlider-JczhglgA.js";
|
|
2
2
|
export { e as RangeSlider };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/ResizeHandle
|
|
1
|
+
import { t as e } from "../../chunks/ResizeHandle-CXBXV6Px.js";
|
|
2
2
|
export { e as ResizeHandle };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, t } from "../../chunks/Select
|
|
1
|
+
import { n as e, t } from "../../chunks/Select-g8PhE010.js";
|
|
2
2
|
export { t as Select, e as SelectItem };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectionPanel.d.ts","sourceRoot":"","sources":["../../../src/components/SelectionPanel/SelectionPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA4C,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACjF,OAAO,EAIL,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,KAAK,EACV,KAAK,YAAY,
|
|
1
|
+
{"version":3,"file":"SelectionPanel.d.ts","sourceRoot":"","sources":["../../../src/components/SelectionPanel/SelectionPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA4C,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACjF,OAAO,EAIL,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,KAAK,EACV,KAAK,YAAY,EAIjB,KAAK,YAAY,EAKlB,MAAM,iBAAiB,CAAC;AAwBzB,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;AAEzE,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,2 @@
|
|
|
1
|
-
import { a as e, c as t, i as n, n as r, o as i, r as a, s as o, t as s } from "../../chunks/SelectionPanel-
|
|
1
|
+
import { a as e, c as t, i as n, n as r, o as i, r as a, s as o, t as s } from "../../chunks/SelectionPanel-Cl18SdD6.js";
|
|
2
2
|
export { r as MIXED, s as SelectionPanel, a as aggregateValue, n as classifyKind, e as effectiveSections, i as kindBreakdown, o as nodeValueAt, t as setAtPath };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/Sidebar-
|
|
1
|
+
import { t as e } from "../../chunks/Sidebar-mWGsndWw.js";
|
|
2
2
|
export { e as Sidebar };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SidebarPanel.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarPanel/SidebarPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"SidebarPanel.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarPanel/SidebarPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAMvC,sCAAsC;AACtC,MAAM,WAAW,iBAAiB;IAChC,gDAAgD;IAChD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,gBAAgB,CAAC,IAAI,IAAI,CAAC;IAC1B;;;;OAIG;IACH,MAAM,CAAC,IAAI,IAAI,CAAC;IAChB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,2CA4CpD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/SidebarPanel-
|
|
1
|
+
import { t as e } from "../../chunks/SidebarPanel-B2d0erLv.js";
|
|
2
2
|
export { e as SidebarPanel };
|
|
@@ -25,6 +25,13 @@ export type Thumb = {
|
|
|
25
25
|
label?: string;
|
|
26
26
|
shape?: ThumbShape;
|
|
27
27
|
bounds?: [number, number] | ((ctx: BoundsCtx) => [number, number]);
|
|
28
|
+
/**
|
|
29
|
+
* Spoken form of `value`, published as `aria-valuetext`. Required by ARIA
|
|
30
|
+
* whenever `value` is not the quantity the user is choosing — an index into
|
|
31
|
+
* a value list, a log-scaled position — since `aria-valuenow` alone then
|
|
32
|
+
* announces a number that means nothing.
|
|
33
|
+
*/
|
|
34
|
+
valueText?: string;
|
|
28
35
|
};
|
|
29
36
|
/**
|
|
30
37
|
* Passed to a thumb's `bounds` function: the full thumb list and this thumb's
|
|
@@ -50,7 +57,13 @@ export type TrackCtx = {
|
|
|
50
57
|
*
|
|
51
58
|
* `stops` are attractors: a drag that passes within a few pixels of one lands
|
|
52
59
|
* on it, and the arrow keys move stop to stop. `step` still quantizes the
|
|
53
|
-
* values between them.
|
|
60
|
+
* values between them. Each one is drawn on the track as a mark; pass
|
|
61
|
+
* `showStops: false` for a track whose own paint already reads as the stops.
|
|
62
|
+
*
|
|
63
|
+
* `trackClick: 'move-nearest'` makes a press on bare track send the closest
|
|
64
|
+
* thumb there and continue as a drag. It is off by default because on a
|
|
65
|
+
* multi-thumb editor a stray click would yank a stop the user was not aiming
|
|
66
|
+
* at; `onAddThumb`, where it is set, keeps the track press.
|
|
54
67
|
*
|
|
55
68
|
* `constraint: 'ordered'` keeps thumbs from crossing each other. Supplying
|
|
56
69
|
* `onAddThumb` makes a click on empty track create a thumb, and supplying
|
|
@@ -66,6 +79,8 @@ export type SliderProps<T extends Thumb = Thumb> = {
|
|
|
66
79
|
max: number;
|
|
67
80
|
step?: number;
|
|
68
81
|
stops?: number[];
|
|
82
|
+
showStops?: boolean;
|
|
83
|
+
trackClick?: 'none' | 'move-nearest';
|
|
69
84
|
constraint?: 'free' | 'ordered';
|
|
70
85
|
onAddThumb?: (atValue: number) => T | null;
|
|
71
86
|
onRemoveThumb?: (index: number) => boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../../src/components/Slider/Slider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA4K,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIpO;;;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;
|
|
1
|
+
{"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../../src/components/Slider/Slider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA4K,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIpO;;;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;;;;;;;;;;;;;;;;;;;;;GAqBG;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,MAAM,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,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,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;AAkFF;;;;;;;GAOG;AACH,wBAAgB,MAAM,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,YAAY,CA8WnF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/Slider-
|
|
1
|
+
import { t as e } from "../../chunks/Slider-BbbmHE0c.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-xxCcWsfq.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-QviBb61l.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-DT-dIt6d.js";
|
|
2
2
|
export { r as Tab, t as TabList, n as TabPanel, e as Tabs };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type ReactElement } from 'react';
|
|
2
|
+
import { type TimelineHandle } from '@weasel-js/core';
|
|
3
|
+
import { type TimelineProps } from './Timeline';
|
|
4
|
+
export interface AnimatedTimelineProps extends Omit<TimelineProps, 'tracks' | 'duration' | 'playhead' | 'onChange' | 'onScrub' | 'transport'> {
|
|
5
|
+
handle: TimelineHandle;
|
|
6
|
+
/** `false` hides the transport, as on `<Timeline>`. */
|
|
7
|
+
transport?: false;
|
|
8
|
+
}
|
|
9
|
+
/** Binds `<Timeline>` to a live handle.
|
|
10
|
+
*
|
|
11
|
+
* `handle.tracks()` returns the timeline's own array, not a copy, so an edit
|
|
12
|
+
* splices it in place inside `edit()`. Assigning a replacement array would
|
|
13
|
+
* update nothing and raise nothing. */
|
|
14
|
+
export declare function AnimatedTimeline(props: AnimatedTimelineProps): ReactElement;
|
|
15
|
+
//# sourceMappingURL=AnimatedTimeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimatedTimeline.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/AnimatedTimeline.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA8C,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AACtF,OAAO,EAAiB,KAAK,cAAc,EAAc,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAE1D,MAAM,WAAW,qBACf,SAAQ,IAAI,CAAC,aAAa,EAAE,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC;IACtG,MAAM,EAAE,cAAc,CAAC;IACvB,uDAAuD;IACvD,SAAS,CAAC,EAAE,KAAK,CAAC;CACnB;AAED;;;;wCAIwC;AACxC,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,YAAY,CA0D3E"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
2
|
+
import type { EasingSpec } from '@weasel-js/core';
|
|
3
|
+
export interface EasingPickerProps {
|
|
4
|
+
value: EasingSpec | undefined;
|
|
5
|
+
onChange: (next: EasingSpec | undefined) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare function EasingPicker(props: EasingPickerProps): ReactElement;
|
|
8
|
+
//# sourceMappingURL=EasingPicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EasingPicker.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/EasingPicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAwBlD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC;IAC9B,QAAQ,EAAE,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,KAAK,IAAI,CAAC;CAClD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,YAAY,CAwCnE"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type ReactElement } from 'react';
|
|
2
|
+
import { type EasingSpec } from '@weasel-js/core';
|
|
3
|
+
import { type TimeWindow } from './timeScale';
|
|
4
|
+
import type { LaneRow } from './lanes';
|
|
5
|
+
export interface LaneProps {
|
|
6
|
+
row: LaneRow;
|
|
7
|
+
window: TimeWindow;
|
|
8
|
+
mode: 'dope' | 'graph';
|
|
9
|
+
/** Index of the selected key on THIS row, or null. */
|
|
10
|
+
selection: number | null;
|
|
11
|
+
onSelect: (keyIndex: number) => void;
|
|
12
|
+
/** Live during a drag. `value` is set only in graph mode on a numeric row. */
|
|
13
|
+
onKeyInput: (keyIndex: number, toMs: number, value?: number) => void;
|
|
14
|
+
/** Once, at the end of a gesture. `value` is set only in graph mode on a numeric row. */
|
|
15
|
+
onKeyCommit: (keyIndex: number, toMs: number, value?: number) => void;
|
|
16
|
+
onInsert: (atMs: number) => void;
|
|
17
|
+
onToggleExpand: () => void;
|
|
18
|
+
expanded: boolean;
|
|
19
|
+
/** Times a dragged key snaps to. */
|
|
20
|
+
snapTimes: readonly number[];
|
|
21
|
+
/** Index of the key a selected segment runs INTO, or null. */
|
|
22
|
+
selectedSegment?: number | null;
|
|
23
|
+
onSelectSegment?: (keyIndex: number) => void;
|
|
24
|
+
/** Once, at the end of a bezier-handle drag. */
|
|
25
|
+
onEasingCommit?: (keyIndex: number, easing: EasingSpec) => void;
|
|
26
|
+
}
|
|
27
|
+
export declare function Lane(props: LaneProps): ReactElement;
|
|
28
|
+
//# sourceMappingURL=Lane.d.ts.map
|
|
@@ -0,0 +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,EAAqB,KAAK,UAAU,EAA0D,MAAM,iBAAiB,CAAC;AAG7H,OAAO,EAAuD,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAGnG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAevC,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,8EAA8E;IAC9E,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACrE,yFAAyF;IACzF,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACtE,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;IAC7C,gDAAgD;IAChD,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;CACjE;AAqBD,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,YAAY,CAiRnD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type ReactElement } from 'react';
|
|
2
|
+
import { type TimeWindow } from './timeScale';
|
|
3
|
+
export interface RulerProps {
|
|
4
|
+
window: TimeWindow;
|
|
5
|
+
/** The full extent the window may cover — normally `{ from: 0, to: duration }`. */
|
|
6
|
+
bounds: TimeWindow;
|
|
7
|
+
playhead: number;
|
|
8
|
+
onScrub: (t: number) => void;
|
|
9
|
+
onWindowChange: (w: TimeWindow) => void;
|
|
10
|
+
}
|
|
11
|
+
export declare function Ruler(props: RulerProps): ReactElement;
|
|
12
|
+
//# sourceMappingURL=Ruler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Ruler.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/Ruler.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwF,KAAK,YAAY,EAAsC,MAAM,OAAO,CAAC;AAEpK,OAAO,EAAgE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAQ5G,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,UAAU,CAAC;IACnB,mFAAmF;IACnF,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,cAAc,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;CACzC;AAOD,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,YAAY,CAsFrD"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { type ReactElement, type ReactNode } from 'react';
|
|
2
|
+
import type { EasingSpec, Keyframe, SampledTrack, Track } from '@weasel-js/core';
|
|
3
|
+
import { type TransportProps } from './Transport';
|
|
4
|
+
import { type KeySelection } from './keys';
|
|
5
|
+
import type { TimeWindow } from './timeScale';
|
|
6
|
+
export type { KeySelection } from './keys';
|
|
7
|
+
export type { TimeWindow } from './timeScale';
|
|
8
|
+
export interface KeyEditorCtx<T = unknown> {
|
|
9
|
+
key: Keyframe<T>;
|
|
10
|
+
track: SampledTrack<T>;
|
|
11
|
+
selection: KeySelection;
|
|
12
|
+
/** Replace the selected key; routed through this component's `onChange`. */
|
|
13
|
+
commit: (next: Keyframe<T>) => void;
|
|
14
|
+
/** Set the easing shaping the approach into this key. */
|
|
15
|
+
setEasing: (easing: EasingSpec | undefined) => void;
|
|
16
|
+
}
|
|
17
|
+
export interface TimelineProps {
|
|
18
|
+
tracks: readonly Track[];
|
|
19
|
+
duration: number;
|
|
20
|
+
playhead: number;
|
|
21
|
+
mode?: 'dope' | 'graph';
|
|
22
|
+
onModeChange?: (mode: 'dope' | 'graph') => void;
|
|
23
|
+
/** Live during a drag — wire for preview, do not write to history. */
|
|
24
|
+
onInput?: (next: Track[]) => void;
|
|
25
|
+
/** Committed at gesture end: one call per gesture. */
|
|
26
|
+
onChange: (next: Track[]) => void;
|
|
27
|
+
onScrub: (t: number) => void;
|
|
28
|
+
/** `false` hides the transport. */
|
|
29
|
+
transport?: Omit<TransportProps, 'playhead' | 'duration'> | false;
|
|
30
|
+
selection?: KeySelection | null;
|
|
31
|
+
onSelect?: (sel: KeySelection | null) => void;
|
|
32
|
+
renderKeyEditor?: (ctx: KeyEditorCtx) => ReactNode;
|
|
33
|
+
window?: TimeWindow;
|
|
34
|
+
onWindowChange?: (w: TimeWindow) => void;
|
|
35
|
+
label?: ReactNode;
|
|
36
|
+
className?: string;
|
|
37
|
+
}
|
|
38
|
+
export declare function Timeline(props: TimelineProps): ReactElement;
|
|
39
|
+
//# sourceMappingURL=Timeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Timeline.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/Timeline.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+D,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACvH,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAKjF,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,EAAsE,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC/G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,YAAY,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IACjB,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACvB,SAAS,EAAE,YAAY,CAAC;IACxB,4EAA4E;IAC5E,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IACpC,yDAAyD;IACzD,SAAS,EAAE,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IAEjB,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,KAAK,IAAI,CAAC;IAEhD,sEAAsE;IACtE,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC;IAClC,sDAAsD;IACtD,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC;IAClC,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7B,mCAAmC;IACnC,SAAS,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,UAAU,CAAC,GAAG,KAAK,CAAC;IAClE,SAAS,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI,KAAK,IAAI,CAAC;IAC9C,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,SAAS,CAAC;IAEnD,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IAEzC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,YAAY,CAmK3D"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
2
|
+
export interface TransportProps {
|
|
3
|
+
paused: boolean;
|
|
4
|
+
loop: boolean | number;
|
|
5
|
+
rate: number;
|
|
6
|
+
playhead: number;
|
|
7
|
+
duration: number;
|
|
8
|
+
onPlay: () => void;
|
|
9
|
+
onPause: () => void;
|
|
10
|
+
onLoopChange: (loop: boolean | number) => void;
|
|
11
|
+
onRateChange: (rate: number) => void;
|
|
12
|
+
}
|
|
13
|
+
export declare function Transport(props: TransportProps): ReactElement;
|
|
14
|
+
//# sourceMappingURL=Transport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/Transport.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAQ1C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,KAAK,IAAI,CAAC;IAC/C,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAID,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,YAAY,CAmD7D"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type EasingName, type EasingSpec } from '@weasel-js/core';
|
|
2
|
+
/** Control points, for the graph view's draggable handles. `null` means this
|
|
3
|
+
* spec has no handles to drag — the view offers to convert it to a bezier. */
|
|
4
|
+
export declare function easingBezier(spec?: EasingSpec): readonly [number, number, number, number] | null;
|
|
5
|
+
/** What the picker shows for a spec.
|
|
6
|
+
*
|
|
7
|
+
* A function is matched against the built-ins by reference so a consumer that
|
|
8
|
+
* passed `easeOutBack` directly still reads back as `'easeOutBack'`. A wrapped
|
|
9
|
+
* or hand-written function cannot be named and reads as `'custom'` — which is
|
|
10
|
+
* why an editor writes names and control points rather than functions. */
|
|
11
|
+
export declare function easingLabel(spec?: EasingSpec): string;
|
|
12
|
+
/** `count` evenly spaced samples of the curve over 0..1, for drawing it. */
|
|
13
|
+
export declare function sampleEasing(spec: EasingSpec | undefined, count: number): number[];
|
|
14
|
+
/** Every built-in name, for the picker's list. */
|
|
15
|
+
export declare const EASING_NAMES: EasingName[];
|
|
16
|
+
//# sourceMappingURL=easingSpec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"easingSpec.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/easingSpec.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAO3F;+EAC+E;AAC/E,wBAAgB,YAAY,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAGhG;AAED;;;;;2EAK2E;AAC3E,wBAAgB,WAAW,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,CASrD;AAED,4EAA4E;AAC5E,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAMlF;AAED,kDAAkD;AAClD,eAAO,MAAM,YAAY,EAA2B,UAAU,EAAE,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { Timeline } from './Timeline';
|
|
2
|
+
export type { KeyEditorCtx, KeySelection, TimelineProps, TimeWindow } from './Timeline';
|
|
3
|
+
export { samePath } from './keys';
|
|
4
|
+
export { AnimatedTimeline } from './AnimatedTimeline';
|
|
5
|
+
export type { AnimatedTimelineProps } from './AnimatedTimeline';
|
|
6
|
+
export { Transport } from './Transport';
|
|
7
|
+
export type { TransportProps } from './Transport';
|
|
8
|
+
export { EasingPicker } from './EasingPicker';
|
|
9
|
+
export type { EasingPickerProps } from './EasingPicker';
|
|
10
|
+
export { EASING_NAMES, easingBezier, easingLabel, sampleEasing } from './easingSpec';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxF,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +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-DsLeV5I1.js";
|
|
2
|
+
export { c as AnimatedTimeline, a as EASING_NAMES, e as EasingPicker, i as Timeline, o as Transport, s as easingBezier, t as easingLabel, n as samePath, r as sampleEasing };
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { type EasingSpec, type Track } from '@weasel-js/core';
|
|
2
|
+
export interface KeySelection {
|
|
3
|
+
/** Index path into the track tree, outermost first — a `LaneRow.path`. A
|
|
4
|
+
* top-level track is `[i]`; a track inside the nested timeline at `i` is
|
|
5
|
+
* `[i, j]`. */
|
|
6
|
+
trackPath: readonly number[];
|
|
7
|
+
keyIndex: number;
|
|
8
|
+
}
|
|
9
|
+
export interface KeyEdit {
|
|
10
|
+
tracks: Track[];
|
|
11
|
+
selection: KeySelection | null;
|
|
12
|
+
}
|
|
13
|
+
/** True when two index paths address the same track. */
|
|
14
|
+
export declare function samePath(a: readonly number[], b: readonly number[]): boolean;
|
|
15
|
+
/** Move a key or an event crossing to `toMs`, clamped at zero. `toMs` is in the
|
|
16
|
+
* addressed track's own time, not the ruler's — a nested track's keys are
|
|
17
|
+
* measured from its parent's `at`.
|
|
18
|
+
*
|
|
19
|
+
* Re-sorts, and reports the moved entry's new index. `sampleTrack` binary-
|
|
20
|
+
* searches without sorting first, so a drag past a neighbour that left the list
|
|
21
|
+
* unsorted would sample the wrong segment and raise nothing. */
|
|
22
|
+
export declare function moveKey(tracks: readonly Track[], sel: KeySelection, toMs: number): KeyEdit;
|
|
23
|
+
/** Insert a key at `atMs`, seeded with whatever the track already reads there
|
|
24
|
+
* so inserting alone never changes the motion. */
|
|
25
|
+
export declare function insertKey(tracks: readonly Track[], trackPath: readonly number[], atMs: number): KeyEdit;
|
|
26
|
+
/** Remove a key, selecting the one before it. */
|
|
27
|
+
export declare function deleteKey(tracks: readonly Track[], sel: KeySelection): KeyEdit;
|
|
28
|
+
/** Set the easing shaping the approach INTO the selected key. */
|
|
29
|
+
export declare function setKeyEasing(tracks: readonly Track[], sel: KeySelection, easing: EasingSpec | undefined): Track[];
|
|
30
|
+
/** Set the selected key's value, leaving its time alone. */
|
|
31
|
+
export declare function setKeyValue(tracks: readonly Track[], sel: KeySelection, value: unknown): Track[];
|
|
32
|
+
/** Snap `ms` to the nearest candidate within `toleranceMs`, else return it. */
|
|
33
|
+
export declare function snapTime(ms: number, candidates: readonly number[], toleranceMs: number): number;
|
|
34
|
+
//# sourceMappingURL=keys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,UAAU,EAAyE,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,4DAA4D;AAC5D,wBAAgB,WAAW,CACzB,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,GAC1D,KAAK,EAAE,CAQT;AAED,+EAA+E;AAC/E,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAW/F"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { Track } from '@weasel-js/core';
|
|
2
|
+
export interface LaneRow {
|
|
3
|
+
/** Stable across re-renders and edits: the dotted index path. */
|
|
4
|
+
key: string;
|
|
5
|
+
/** Index path into the track tree, outermost first. */
|
|
6
|
+
path: number[];
|
|
7
|
+
track: Track;
|
|
8
|
+
label: string;
|
|
9
|
+
/** Nesting depth; 0 for a top-level track. */
|
|
10
|
+
depth: number;
|
|
11
|
+
/** Accumulated `at` from every nested parent, in ms. A key drawn on this row
|
|
12
|
+
* sits at `offset + key.t` on the ruler. */
|
|
13
|
+
offset: number;
|
|
14
|
+
kind: Track['kind'];
|
|
15
|
+
/** True only for a sampled track whose every key value is a number — the
|
|
16
|
+
* sole case where a value axis has an honest meaning. */
|
|
17
|
+
numeric: boolean;
|
|
18
|
+
}
|
|
19
|
+
/** Flatten the track tree to rows, descending only into expanded nested
|
|
20
|
+
* timelines. `expanded` holds the `key` of each open nested row. */
|
|
21
|
+
export declare function buildLanes(tracks: readonly Track[], expanded: ReadonlySet<string>): LaneRow[];
|
|
22
|
+
/** The track at an index path, or `undefined` when the path leaves the tree. */
|
|
23
|
+
export declare function trackAtPath(tracks: readonly Track[], path: readonly number[]): Track | undefined;
|
|
24
|
+
//# sourceMappingURL=lanes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lanes.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/lanes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE3D,MAAM,WAAW,OAAO;IACtB,iEAAiE;IACjE,GAAG,EAAE,MAAM,CAAC;IACZ,uDAAuD;IACvD,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd;iDAC6C;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACpB;8DAC0D;IAC1D,OAAO,EAAE,OAAO,CAAC;CAClB;AAQD;qEACqE;AACrE,wBAAgB,UAAU,CACxB,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,GAC5B,OAAO,EAAE,CAuBX;AAED,gFAAgF;AAChF,wBAAgB,WAAW,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,KAAK,GAAG,SAAS,CAShG"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/** A visible span of timeline time, in ms. */
|
|
2
|
+
export interface TimeWindow {
|
|
3
|
+
from: number;
|
|
4
|
+
to: number;
|
|
5
|
+
}
|
|
6
|
+
export interface TimeScale {
|
|
7
|
+
window: TimeWindow;
|
|
8
|
+
widthPx: number;
|
|
9
|
+
toPx(ms: number): number;
|
|
10
|
+
toMs(px: number): number;
|
|
11
|
+
}
|
|
12
|
+
export declare function createTimeScale(window: TimeWindow, widthPx: number): TimeScale;
|
|
13
|
+
/** Where `ms` sits in the window, as a fraction. The width-free half of
|
|
14
|
+
* `createTimeScale` — a CSS `left: %` needs no pixel width, and asking for one
|
|
15
|
+
* is what drove three copies of this arithmetic into the lane and the ruler. */
|
|
16
|
+
export declare function toFraction(window: TimeWindow, ms: number): number;
|
|
17
|
+
/** `toFraction` as a CSS percentage. */
|
|
18
|
+
export declare function toPercent(window: TimeWindow, ms: number): string;
|
|
19
|
+
/** A duration as a fraction of the window. Distinct from `toFraction`, which
|
|
20
|
+
* measures a position and so subtracts `window.from`. */
|
|
21
|
+
export declare function spanFraction(window: TimeWindow, ms: number): number;
|
|
22
|
+
/** A duration as a CSS percentage, for a width. */
|
|
23
|
+
export declare function spanPercent(window: TimeWindow, ms: number): string;
|
|
24
|
+
/** Scale the window by `factor` about `atMs`, which stays at the same fraction
|
|
25
|
+
* of the track. `factor < 1` zooms in. */
|
|
26
|
+
export declare function zoomWindow(w: TimeWindow, atMs: number, factor: number, bounds: TimeWindow): TimeWindow;
|
|
27
|
+
/** Shift the window by `byMs`, preserving its span. */
|
|
28
|
+
export declare function panWindow(w: TimeWindow, byMs: number, bounds: TimeWindow): TimeWindow;
|
|
29
|
+
/** Ruler tick times inside `w`, spaced at least `minSpacingPx` apart. */
|
|
30
|
+
export declare function tickTimes(w: TimeWindow, widthPx: number, minSpacingPx: number): number[];
|
|
31
|
+
//# sourceMappingURL=timeScale.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timeScale.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/timeScale.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B;AAMD,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,CAU9E;AAED;;iFAEiF;AACjF,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAGjE;AAED,wCAAwC;AACxC,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED;0DAC0D;AAC1D,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAGnE;AAED,mDAAmD;AACnD,wBAAgB,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAElE;AAUD;2CAC2C;AAC3C,wBAAgB,UAAU,CACxB,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAC9D,UAAU,CAMZ;AAED,uDAAuD;AACvD,wBAAgB,SAAS,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,UAAU,CAErF;AAUD,yEAAyE;AACzE,wBAAgB,SAAS,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CASxF"}
|
|
@@ -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-CfkiN0Nv.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-D0veW91s.js";
|
|
2
2
|
export { e as ToggleBar };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/ToolButton-
|
|
1
|
+
import { t as e } from "../../chunks/ToolButton-CLoR9Z4o.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-BnE23mcA.js";
|
|
2
2
|
export { e as ToolGroup };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../chunks/ToolOptionsBar-
|
|
1
|
+
import { t as e } from "../../chunks/ToolOptionsBar-ByHX7y1M.js";
|
|
2
2
|
export { e as ToolOptionsBar };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, r as t, t as n } from "../../chunks/ToolPalette-
|
|
1
|
+
import { n as e, r as t, t as n } from "../../chunks/ToolPalette-W-rAsomq.js";
|
|
2
2
|
export { n as ToolPalette, e as formatShortcut, t as formatShortcutParts };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, t } from "../../chunks/Tooltip-
|
|
1
|
+
import { n as e, t } from "../../chunks/Tooltip-Bq8Hvj4r.js";
|
|
2
2
|
export { t as Tooltip, e as TooltipTrigger };
|
package/dist/format/number.d.ts
CHANGED
|
@@ -14,4 +14,17 @@ export declare const MINUS_SIGN = "\u2212";
|
|
|
14
14
|
* hyphen `toLocaleString` emits. Non-finite values stringify as-is.
|
|
15
15
|
*/
|
|
16
16
|
export declare function formatNumber(value: number, options?: Intl.NumberFormatOptions): string;
|
|
17
|
+
/**
|
|
18
|
+
* Parses a string that may carry {@link MINUS_SIGN} in place of the ASCII
|
|
19
|
+
* hyphen. The inverse of {@link formatNumber} for any editing surface that
|
|
20
|
+
* renders its value through it and reads the edited text back.
|
|
21
|
+
*/
|
|
22
|
+
export declare function parseSignedNumber(text: string): number;
|
|
23
|
+
/**
|
|
24
|
+
* Formats a zoom factor for display. Below 2x a percentage reads naturally;
|
|
25
|
+
* past it the numbers get long and a multiplier is what people say out loud,
|
|
26
|
+
* so 250% shows as `2.5x`. Past 100x a tenth is noise, so the decimal is
|
|
27
|
+
* dropped and thousands are grouped: `1009.74` reads as `1,010x`.
|
|
28
|
+
*/
|
|
29
|
+
export declare function formatZoom(zoom: number): string;
|
|
17
30
|
//# sourceMappingURL=number.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"number.d.ts","sourceRoot":"","sources":["../../src/format/number.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,WAAM,CAAC;AAE9B;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAKtF"}
|
|
1
|
+
{"version":3,"file":"number.d.ts","sourceRoot":"","sources":["../../src/format/number.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,WAAM,CAAC;AAE9B;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAKtF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAQD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK/C"}
|
package/dist/icons/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export { Icon } from './Icon';
|
|
|
3
3
|
export type { IconProps } from './Icon';
|
|
4
4
|
export { ICON_PATHS } from './paths';
|
|
5
5
|
export type { IconName } from './paths';
|
|
6
|
-
export { SelectIcon, LassoIcon, RectIcon, EllipseIcon, ImageIcon, EyedropperIcon, LineIcon, PolygonIcon, StarIcon, PencilIcon, TextIcon, PenIcon, HandIcon, UnknownIcon, } from '@weasel-js/core';
|
|
6
|
+
export { SelectIcon, LassoIcon, RectIcon, EllipseIcon, ImageIcon, EyedropperIcon, LineIcon, ArrowIcon, PolygonIcon, StarIcon, PencilIcon, TextIcon, PenIcon, HandIcon, UnknownIcon, } from '@weasel-js/core';
|
|
7
7
|
export declare const CloneIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
8
|
export declare const ResetIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
9
|
export declare const CloseIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -28,6 +28,7 @@ export declare const FullscreenIcon: (p: IconProps) => import("react/jsx-runtime
|
|
|
28
28
|
export declare const CompareIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
29
29
|
export declare const FilterIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
30
30
|
export declare const SearchIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
31
|
+
export declare const LoupeIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
31
32
|
export declare const LayersIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
32
33
|
export declare const LockIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
33
34
|
export declare const UnlockIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -37,6 +38,7 @@ export declare const PinIcon: (p: IconProps) => import("react/jsx-runtime").JSX.
|
|
|
37
38
|
export declare const LinkIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
38
39
|
export declare const CollapseIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
39
40
|
export declare const ExpandIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
41
|
+
export declare const ChevronIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
40
42
|
export declare const TuneIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
41
43
|
export declare const GridIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
42
44
|
export declare const SnapIcon: (p: IconProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/icons/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAKxC,OAAO,EACL,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EACvE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/icons/index.tsx"],"names":[],"mappings":"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"}
|