@weasel-js/ui 1.6.1 → 1.7.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.
Files changed (340) hide show
  1. package/dist/chunks/Badge-CTc9Lkwn.js +14 -0
  2. package/dist/chunks/Badge-CTc9Lkwn.js.map +1 -0
  3. package/dist/chunks/{Badge-CyAIZSDo.js → Badge-D2aD7xVL.js} +277 -228
  4. package/dist/chunks/Badge-D2aD7xVL.js.map +1 -0
  5. package/dist/chunks/BandEditor-Dd0egAgE.js +292 -0
  6. package/dist/chunks/BandEditor-Dd0egAgE.js.map +1 -0
  7. package/dist/chunks/{ButtonBar-D5Vi0aj_.js → ButtonBar-DIQTe5GQ.js} +2 -2
  8. package/dist/chunks/{ButtonBar-D5Vi0aj_.js.map → ButtonBar-DIQTe5GQ.js.map} +1 -1
  9. package/dist/chunks/Callout-ndW5_Bqx.js +116 -0
  10. package/dist/chunks/Callout-ndW5_Bqx.js.map +1 -0
  11. package/dist/chunks/CloseButton-C2J7wVfo.js +26 -0
  12. package/dist/chunks/CloseButton-C2J7wVfo.js.map +1 -0
  13. package/dist/chunks/ColorField-Yz_BkcCT.js +69 -0
  14. package/dist/chunks/ColorField-Yz_BkcCT.js.map +1 -0
  15. package/dist/chunks/{ColorModeControl-ke5PXbBa.js → ColorModeControl-BewxA0rX.js} +3 -3
  16. package/dist/chunks/{ColorModeControl-ke5PXbBa.js.map → ColorModeControl-BewxA0rX.js.map} +1 -1
  17. package/dist/chunks/{ComboBox-DpT8lc3p.js → ComboBox-B34H76CW.js} +12 -12
  18. package/dist/chunks/ComboBox-B34H76CW.js.map +1 -0
  19. package/dist/chunks/{CurveEditor-BDJXjEvK.js → CurveEditor-DUVjd25R.js} +2 -2
  20. package/dist/chunks/{CurveEditor-BDJXjEvK.js.map → CurveEditor-DUVjd25R.js.map} +1 -1
  21. package/dist/chunks/{DataGrid-D-dZj1BD.js → DataGrid-LZ2JgY2Y.js} +17 -17
  22. package/dist/chunks/DataGrid-LZ2JgY2Y.js.map +1 -0
  23. package/dist/chunks/DetailList-BKomDzg5.js +52 -0
  24. package/dist/chunks/DetailList-BKomDzg5.js.map +1 -0
  25. package/dist/chunks/{DetentSlider-CL8TlX3S.js → DetentSlider-5uQPFucv.js} +2 -2
  26. package/dist/chunks/{DetentSlider-CL8TlX3S.js.map → DetentSlider-5uQPFucv.js.map} +1 -1
  27. package/dist/chunks/Dialog-DGFutQ--.js +63 -0
  28. package/dist/chunks/Dialog-DGFutQ--.js.map +1 -0
  29. package/dist/chunks/{Disclosure-0G0uh2fa.js → Disclosure-Ch2KxYuB.js} +7 -7
  30. package/dist/chunks/Disclosure-Ch2KxYuB.js.map +1 -0
  31. package/dist/chunks/{DragHandleGlyph-Dr7Fgo0I.js → DragGrip-AoIZXfZb.js} +2 -2
  32. package/dist/chunks/DragGrip-AoIZXfZb.js.map +1 -0
  33. package/dist/chunks/FallthroughDiagram-BEHiM5IS.js +284 -0
  34. package/dist/chunks/FallthroughDiagram-BEHiM5IS.js.map +1 -0
  35. package/dist/chunks/{FontFamilySelect-DXlMKWfK.js → FontFamilySelect-DkRgNtag.js} +2 -2
  36. package/dist/chunks/{FontFamilySelect-DXlMKWfK.js.map → FontFamilySelect-DkRgNtag.js.map} +1 -1
  37. package/dist/chunks/GestureRoute-C_YGl7bJ.js +82 -0
  38. package/dist/chunks/GestureRoute-C_YGl7bJ.js.map +1 -0
  39. package/dist/chunks/GradientEditor-b7v4Ph3i.js +363 -0
  40. package/dist/chunks/GradientEditor-b7v4Ph3i.js.map +1 -0
  41. package/dist/chunks/{Icon-Cgzy8VgC.js → Icon-CcVjdq2C.js} +31 -1
  42. package/dist/chunks/Icon-CcVjdq2C.js.map +1 -0
  43. package/dist/chunks/{InlineRange-eOj6JpJl.js → InlineRange-P01ABSzo.js} +3 -3
  44. package/dist/chunks/InlineRange-P01ABSzo.js.map +1 -0
  45. package/dist/chunks/{Jog-DESxZ44P.js → Jog-DRmfrkCg.js} +3 -3
  46. package/dist/chunks/{Jog-DESxZ44P.js.map → Jog-DRmfrkCg.js.map} +1 -1
  47. package/dist/chunks/{Keycaps-C0H_v2gO.js → Keycaps-C-FJyG8k.js} +14 -14
  48. package/dist/chunks/Keycaps-C-FJyG8k.js.map +1 -0
  49. package/dist/chunks/{LayerList-nz-QYvTF.js → LayerList-wCI1EueM.js} +148 -152
  50. package/dist/chunks/LayerList-wCI1EueM.js.map +1 -0
  51. package/dist/chunks/ListEditor-BeA60TAA.js +71 -0
  52. package/dist/chunks/ListEditor-BeA60TAA.js.map +1 -0
  53. package/dist/chunks/{MenuButton-DtaGenKf.js → MenuButton-BSqEChJE.js} +7 -7
  54. package/dist/chunks/MenuButton-BSqEChJE.js.map +1 -0
  55. package/dist/chunks/{MeshEditor-qqGc6hlD.js → MeshEditor-D1HLZcAh.js} +3 -3
  56. package/dist/chunks/{MeshEditor-qqGc6hlD.js.map → MeshEditor-D1HLZcAh.js.map} +1 -1
  57. package/dist/chunks/NumberField-BnJxcazc.js +206 -0
  58. package/dist/chunks/NumberField-BnJxcazc.js.map +1 -0
  59. package/dist/chunks/{OptionsBar-DbzAgIln.js → OptionsBar-ujxYidhj.js} +2 -2
  60. package/dist/chunks/{OptionsBar-DbzAgIln.js.map → OptionsBar-ujxYidhj.js.map} +1 -1
  61. package/dist/chunks/{PaintField-DaJukRc6.js → PaintField-DadOELMg.js} +2 -2
  62. package/dist/chunks/{PaintField-DaJukRc6.js.map → PaintField-DadOELMg.js.map} +1 -1
  63. package/dist/chunks/PaintInput-v8Y7MDbH.js +121 -0
  64. package/dist/chunks/PaintInput-v8Y7MDbH.js.map +1 -0
  65. package/dist/chunks/{PatternPicker-B-cUt-JT.js → PatternPicker-R_EQtw2Q.js} +2 -2
  66. package/dist/chunks/{PatternPicker-B-cUt-JT.js.map → PatternPicker-R_EQtw2Q.js.map} +1 -1
  67. package/dist/chunks/{PointPlotter-Bxo6haKe.js → PointPlotter-ldI4RrU1.js} +2 -2
  68. package/dist/chunks/{PointPlotter-Bxo6haKe.js.map → PointPlotter-ldI4RrU1.js.map} +1 -1
  69. package/dist/chunks/{Powerline-ExO5GwEr.js → Powerline-DNyH885r.js} +2 -2
  70. package/dist/chunks/{Powerline-ExO5GwEr.js.map → Powerline-DNyH885r.js.map} +1 -1
  71. package/dist/chunks/{Prefs-DpqFKiwY.js → Prefs-ByA-x51i.js} +46 -34
  72. package/dist/chunks/Prefs-ByA-x51i.js.map +1 -0
  73. package/dist/chunks/{Properties-D_KzDN9K.js → Properties-DmAeQ3mk.js} +35 -29
  74. package/dist/chunks/Properties-DmAeQ3mk.js.map +1 -0
  75. package/dist/chunks/PropertyField-DfIJJ5GS.js +673 -0
  76. package/dist/chunks/PropertyField-DfIJJ5GS.js.map +1 -0
  77. package/dist/chunks/{RangeSlider-BKRRTPTZ.js → RangeSlider-SEGE-7VF.js} +8 -8
  78. package/dist/chunks/RangeSlider-SEGE-7VF.js.map +1 -0
  79. package/dist/chunks/{ResizeHandle-BKT0XYpx.js → ResizeHandle-rKVWyeTG.js} +3 -3
  80. package/dist/chunks/ResizeHandle-rKVWyeTG.js.map +1 -0
  81. package/dist/chunks/Select-ClmKtyWg.js +229 -0
  82. package/dist/chunks/Select-ClmKtyWg.js.map +1 -0
  83. package/dist/chunks/SelectionPanel-BaQnX4Bs.js +106 -0
  84. package/dist/chunks/SelectionPanel-BaQnX4Bs.js.map +1 -0
  85. package/dist/chunks/SidebarPanel-BblDEz4G.js +53 -0
  86. package/dist/chunks/SidebarPanel-BblDEz4G.js.map +1 -0
  87. package/dist/chunks/Slider-YofwGOI4.js +389 -0
  88. package/dist/chunks/Slider-YofwGOI4.js.map +1 -0
  89. package/dist/chunks/{StatusBar-DzoPDY4k.js → StatusBar-Ca9Dvhhq.js} +6 -6
  90. package/dist/chunks/StatusBar-Ca9Dvhhq.js.map +1 -0
  91. package/dist/chunks/{SwatchGrid-BARC3rnF.js → SwatchGrid-BYvA8Bmh.js} +3 -3
  92. package/dist/chunks/SwatchGrid-BYvA8Bmh.js.map +1 -0
  93. package/dist/chunks/ThemeSwitcher-BlsInAmR.js +38 -0
  94. package/dist/chunks/ThemeSwitcher-BlsInAmR.js.map +1 -0
  95. package/dist/chunks/{Timeline--58F7MED.js → Timeline-B39cwfMB.js} +207 -203
  96. package/dist/chunks/Timeline-B39cwfMB.js.map +1 -0
  97. package/dist/chunks/{Toast-DNBb-24H.js → Toast-BF9GE0HC.js} +25 -27
  98. package/dist/chunks/Toast-BF9GE0HC.js.map +1 -0
  99. package/dist/chunks/{ToggleBar-DTjGeS0Q.js → ToggleBar-BTYkBXU9.js} +8 -8
  100. package/dist/chunks/ToggleBar-BTYkBXU9.js.map +1 -0
  101. package/dist/chunks/{TokenPanel-CMq7uydV.js → TokenPanel-CMDAOfYH.js} +5 -5
  102. package/dist/chunks/{TokenPanel-CMq7uydV.js.map → TokenPanel-CMDAOfYH.js.map} +1 -1
  103. package/dist/chunks/{ToolButton-CR4sQlxF.js → ToolButton-CAHBa08P.js} +6 -6
  104. package/dist/chunks/ToolButton-CAHBa08P.js.map +1 -0
  105. package/dist/chunks/{ToolOptionsBar-CtzTlaN2.js → ToolOptionsBar-D_GCrBAN.js} +8 -7
  106. package/dist/chunks/ToolOptionsBar-D_GCrBAN.js.map +1 -0
  107. package/dist/chunks/{ToolPalette-CKG9qY6P.js → ToolPalette-OOWN51Xx.js} +3 -3
  108. package/dist/chunks/ToolPalette-OOWN51Xx.js.map +1 -0
  109. package/dist/chunks/{Tree-DVOtc9R5.js → Tree-Cc8lIzgM.js} +2 -2
  110. package/dist/chunks/{Tree-DVOtc9R5.js.map → Tree-Cc8lIzgM.js.map} +1 -1
  111. package/dist/chunks/{createKeyframeLayer-Czj6Y235.js → createKeyframeLayer-DVl321_l.js} +15 -16
  112. package/dist/chunks/createKeyframeLayer-DVl321_l.js.map +1 -0
  113. package/dist/chunks/{icons-Dk8SRS8g.js → icons-BhcR1l64.js} +2 -2
  114. package/dist/chunks/icons-BhcR1l64.js.map +1 -0
  115. package/dist/chunks/{model-Du7Lta4C.js → model-BaF65rnX.js} +95 -90
  116. package/dist/chunks/model-BaF65rnX.js.map +1 -0
  117. package/dist/chunks/{prefField-Dnl7nmjQ.js → prefField-BopW9bjx.js} +17 -13
  118. package/dist/chunks/prefField-BopW9bjx.js.map +1 -0
  119. package/dist/chunks/segmentedControl.module-D6SzYJD7.js +11 -0
  120. package/dist/chunks/segmentedControl.module-D6SzYJD7.js.map +1 -0
  121. package/dist/chunks/{useReorderDragList-B_-5L5Gu.js → useReorderDragList-FCMoFIzH.js} +2 -2
  122. package/dist/chunks/useReorderDragList-FCMoFIzH.js.map +1 -0
  123. package/dist/components/Badge/bases/Powerline.d.ts.map +1 -1
  124. package/dist/components/Badge/bases/edgeProfiles.d.ts +31 -4
  125. package/dist/components/Badge/bases/edgeProfiles.d.ts.map +1 -1
  126. package/dist/components/Badge/index.d.ts +1 -0
  127. package/dist/components/Badge/index.d.ts.map +1 -1
  128. package/dist/components/Badge/index.js +3 -2
  129. package/dist/components/Badge/statusIcons.d.ts +5 -0
  130. package/dist/components/Badge/statusIcons.d.ts.map +1 -0
  131. package/dist/components/BandEditor/BandEditor.d.ts +16 -7
  132. package/dist/components/BandEditor/BandEditor.d.ts.map +1 -1
  133. package/dist/components/BandEditor/bands.d.ts +5 -2
  134. package/dist/components/BandEditor/bands.d.ts.map +1 -1
  135. package/dist/components/BandEditor/index.js +1 -1
  136. package/dist/components/ButtonBar/index.js +1 -1
  137. package/dist/components/Callout/Callout.d.ts +2 -2
  138. package/dist/components/Callout/Callout.d.ts.map +1 -1
  139. package/dist/components/Callout/index.js +1 -1
  140. package/dist/components/CloseButton/CloseButton.d.ts +21 -0
  141. package/dist/components/CloseButton/CloseButton.d.ts.map +1 -0
  142. package/dist/components/CloseButton/index.d.ts +3 -0
  143. package/dist/components/CloseButton/index.d.ts.map +1 -0
  144. package/dist/components/CloseButton/index.js +2 -0
  145. package/dist/components/ColorField/ColorField.d.ts +5 -1
  146. package/dist/components/ColorField/ColorField.d.ts.map +1 -1
  147. package/dist/components/ColorField/index.js +1 -1
  148. package/dist/components/ColorModeControl/index.js +1 -1
  149. package/dist/components/ComboBox/index.js +1 -1
  150. package/dist/components/CurveEditor/index.js +2 -2
  151. package/dist/components/DataGrid/index.js +1 -1
  152. package/dist/components/DetailList/DetailList.d.ts +31 -5
  153. package/dist/components/DetailList/DetailList.d.ts.map +1 -1
  154. package/dist/components/DetailList/index.d.ts +1 -1
  155. package/dist/components/DetailList/index.d.ts.map +1 -1
  156. package/dist/components/DetailList/index.js +1 -1
  157. package/dist/components/DetentSlider/index.js +1 -1
  158. package/dist/components/Dialog/Dialog.d.ts.map +1 -1
  159. package/dist/components/Dialog/index.js +1 -1
  160. package/dist/components/Disclosure/Disclosure.d.ts +1 -1
  161. package/dist/components/Disclosure/index.js +1 -1
  162. package/dist/components/{DragHandleGlyph/DragHandleGlyph.d.ts → DragGrip/DragGrip.d.ts} +4 -4
  163. package/dist/components/DragGrip/DragGrip.d.ts.map +1 -0
  164. package/dist/components/DragGrip/index.d.ts +3 -0
  165. package/dist/components/DragGrip/index.d.ts.map +1 -0
  166. package/dist/components/DragGrip/index.js +2 -0
  167. package/dist/components/FallthroughDiagram/FallthroughDiagram.d.ts +14 -0
  168. package/dist/components/FallthroughDiagram/FallthroughDiagram.d.ts.map +1 -0
  169. package/dist/components/FallthroughDiagram/fixtures.d.ts +17 -0
  170. package/dist/components/FallthroughDiagram/fixtures.d.ts.map +1 -0
  171. package/dist/components/FallthroughDiagram/index.d.ts +3 -0
  172. package/dist/components/FallthroughDiagram/index.d.ts.map +1 -0
  173. package/dist/components/FallthroughDiagram/index.js +2 -0
  174. package/dist/components/FontFamilySelect/index.js +1 -1
  175. package/dist/components/GestureRoute/GestureRoute.d.ts +19 -0
  176. package/dist/components/GestureRoute/GestureRoute.d.ts.map +1 -0
  177. package/dist/components/GestureRoute/index.d.ts +3 -0
  178. package/dist/components/GestureRoute/index.d.ts.map +1 -0
  179. package/dist/components/GestureRoute/index.js +2 -0
  180. package/dist/components/GradientEditor/GradientEditor.d.ts +22 -8
  181. package/dist/components/GradientEditor/GradientEditor.d.ts.map +1 -1
  182. package/dist/components/GradientEditor/index.js +1 -1
  183. package/dist/components/InlineRange/index.js +1 -1
  184. package/dist/components/Jog/index.js +1 -1
  185. package/dist/components/Keycaps/Keycaps.d.ts +11 -5
  186. package/dist/components/Keycaps/Keycaps.d.ts.map +1 -1
  187. package/dist/components/Keycaps/index.d.ts +1 -1
  188. package/dist/components/Keycaps/index.d.ts.map +1 -1
  189. package/dist/components/Keycaps/index.js +1 -1
  190. package/dist/components/LayerList/LayerList.d.ts +1 -1
  191. package/dist/components/LayerList/LayerList.d.ts.map +1 -1
  192. package/dist/components/LayerList/index.js +1 -1
  193. package/dist/components/ListEditor/ListEditor.d.ts.map +1 -1
  194. package/dist/components/ListEditor/index.js +1 -1
  195. package/dist/components/MenuButton/index.js +1 -1
  196. package/dist/components/MeshEditor/index.js +1 -1
  197. package/dist/components/NumberField/UnitField.d.ts +20 -7
  198. package/dist/components/NumberField/UnitField.d.ts.map +1 -1
  199. package/dist/components/NumberField/index.js +1 -1
  200. package/dist/components/OptionsBar/index.js +1 -1
  201. package/dist/components/PaintField/index.js +1 -1
  202. package/dist/components/PaintInput/PaintInput.d.ts.map +1 -1
  203. package/dist/components/PaintInput/index.js +1 -1
  204. package/dist/components/PatternPicker/index.js +1 -1
  205. package/dist/components/PointPlotter/index.js +1 -1
  206. package/dist/components/Powerline/index.d.ts +1 -1
  207. package/dist/components/Powerline/index.d.ts.map +1 -1
  208. package/dist/components/Powerline/index.js +2 -2
  209. package/dist/components/Prefs/PrefsRow.d.ts.map +1 -1
  210. package/dist/components/Prefs/index.d.ts +1 -1
  211. package/dist/components/Prefs/index.d.ts.map +1 -1
  212. package/dist/components/Prefs/index.js +2 -2
  213. package/dist/components/Prefs/prefField.d.ts.map +1 -1
  214. package/dist/components/Prefs/schema.d.ts +2 -2
  215. package/dist/components/Prefs/schema.d.ts.map +1 -1
  216. package/dist/components/Properties/PropertyField.d.ts +22 -30
  217. package/dist/components/Properties/PropertyField.d.ts.map +1 -1
  218. package/dist/components/Properties/PropertyGroup.d.ts.map +1 -1
  219. package/dist/components/Properties/PropertyPanel.d.ts +1 -8
  220. package/dist/components/Properties/PropertyPanel.d.ts.map +1 -1
  221. package/dist/components/Properties/index.d.ts +1 -1
  222. package/dist/components/Properties/index.d.ts.map +1 -1
  223. package/dist/components/Properties/index.js +2 -2
  224. package/dist/components/RangeSlider/index.js +1 -1
  225. package/dist/components/ResizeHandle/index.js +1 -1
  226. package/dist/components/Select/Select.d.ts.map +1 -1
  227. package/dist/components/Select/index.js +1 -1
  228. package/dist/components/SelectionPanel/SelectionPanel.d.ts.map +1 -1
  229. package/dist/components/SelectionPanel/index.js +2 -2
  230. package/dist/components/SelectionPanel/renderLeaf.d.ts +7 -0
  231. package/dist/components/SelectionPanel/renderLeaf.d.ts.map +1 -1
  232. package/dist/components/SidebarPanel/SidebarPanel.d.ts +1 -1
  233. package/dist/components/SidebarPanel/SidebarPanel.d.ts.map +1 -1
  234. package/dist/components/SidebarPanel/index.js +1 -1
  235. package/dist/components/Slider/Slider.d.ts +19 -2
  236. package/dist/components/Slider/Slider.d.ts.map +1 -1
  237. package/dist/components/Slider/index.js +1 -1
  238. package/dist/components/StatusBar/index.js +1 -1
  239. package/dist/components/SwatchGrid/index.js +1 -1
  240. package/dist/components/ThemeSwitcher/ThemeSwitcher.d.ts +38 -0
  241. package/dist/components/ThemeSwitcher/ThemeSwitcher.d.ts.map +1 -0
  242. package/dist/components/ThemeSwitcher/index.d.ts +3 -0
  243. package/dist/components/ThemeSwitcher/index.d.ts.map +1 -0
  244. package/dist/components/ThemeSwitcher/index.js +2 -0
  245. package/dist/components/Timeline/Transport.d.ts.map +1 -1
  246. package/dist/components/Timeline/index.js +1 -1
  247. package/dist/components/Toast/Toast.d.ts.map +1 -1
  248. package/dist/components/Toast/index.js +1 -1
  249. package/dist/components/ToggleBar/index.js +1 -1
  250. package/dist/components/TokenPanel/index.js +1 -1
  251. package/dist/components/ToolButton/index.js +1 -1
  252. package/dist/components/ToolOptionsBar/index.js +1 -1
  253. package/dist/components/ToolPalette/ToolPalette.d.ts +2 -1
  254. package/dist/components/ToolPalette/ToolPalette.d.ts.map +1 -1
  255. package/dist/components/ToolPalette/index.js +1 -1
  256. package/dist/components/Tree/index.js +1 -1
  257. package/dist/components/spin.d.ts +16 -0
  258. package/dist/components/spin.d.ts.map +1 -0
  259. package/dist/components/stanceSurfaces.d.ts.map +1 -1
  260. package/dist/icons/index.d.ts +0 -2
  261. package/dist/icons/index.d.ts.map +1 -1
  262. package/dist/icons/paths.d.ts +10 -0
  263. package/dist/icons/paths.d.ts.map +1 -1
  264. package/dist/index.d.ts +5 -2
  265. package/dist/index.d.ts.map +1 -1
  266. package/dist/index.js +83 -99
  267. package/dist/index.js.map +1 -1
  268. package/dist/paintGradientTrack.d.ts +5 -2
  269. package/dist/paintGradientTrack.d.ts.map +1 -1
  270. package/dist/style.css +1 -1
  271. package/dist/useReorderDragList.d.ts +1 -1
  272. package/dist/useReorderDragList.d.ts.map +1 -1
  273. package/package.json +9 -8
  274. package/dist/chunks/Badge-CyAIZSDo.js.map +0 -1
  275. package/dist/chunks/BandEditor-Dhm_Xrlr.js +0 -248
  276. package/dist/chunks/BandEditor-Dhm_Xrlr.js.map +0 -1
  277. package/dist/chunks/Callout-yEn9iPlh.js +0 -119
  278. package/dist/chunks/Callout-yEn9iPlh.js.map +0 -1
  279. package/dist/chunks/ColorField-BcMcW8Sa.js +0 -60
  280. package/dist/chunks/ColorField-BcMcW8Sa.js.map +0 -1
  281. package/dist/chunks/ComboBox-DpT8lc3p.js.map +0 -1
  282. package/dist/chunks/DataGrid-D-dZj1BD.js.map +0 -1
  283. package/dist/chunks/DetailList-BMER1LUZ.js +0 -43
  284. package/dist/chunks/DetailList-BMER1LUZ.js.map +0 -1
  285. package/dist/chunks/Dialog-BWyNMgpf.js +0 -66
  286. package/dist/chunks/Dialog-BWyNMgpf.js.map +0 -1
  287. package/dist/chunks/Disclosure-0G0uh2fa.js.map +0 -1
  288. package/dist/chunks/DragHandleGlyph-Dr7Fgo0I.js.map +0 -1
  289. package/dist/chunks/GradientEditor-B3a-MsVJ.js +0 -335
  290. package/dist/chunks/GradientEditor-B3a-MsVJ.js.map +0 -1
  291. package/dist/chunks/Icon-Cgzy8VgC.js.map +0 -1
  292. package/dist/chunks/InlineRange-eOj6JpJl.js.map +0 -1
  293. package/dist/chunks/Keycaps-C0H_v2gO.js.map +0 -1
  294. package/dist/chunks/LayerList-nz-QYvTF.js.map +0 -1
  295. package/dist/chunks/ListEditor-BQ6AV3Ac.js +0 -74
  296. package/dist/chunks/ListEditor-BQ6AV3Ac.js.map +0 -1
  297. package/dist/chunks/MenuButton-DtaGenKf.js.map +0 -1
  298. package/dist/chunks/NumberField-CwJOMmQR.js +0 -117
  299. package/dist/chunks/NumberField-CwJOMmQR.js.map +0 -1
  300. package/dist/chunks/PaintInput-Byhna3H-.js +0 -131
  301. package/dist/chunks/PaintInput-Byhna3H-.js.map +0 -1
  302. package/dist/chunks/Prefs-DpqFKiwY.js.map +0 -1
  303. package/dist/chunks/Properties-D_KzDN9K.js.map +0 -1
  304. package/dist/chunks/PropertyField-DGCecAnV.js +0 -758
  305. package/dist/chunks/PropertyField-DGCecAnV.js.map +0 -1
  306. package/dist/chunks/RangeSlider-BKRRTPTZ.js.map +0 -1
  307. package/dist/chunks/ResizeHandle-BKT0XYpx.js.map +0 -1
  308. package/dist/chunks/Select-CzyfaXzp.js +0 -225
  309. package/dist/chunks/Select-CzyfaXzp.js.map +0 -1
  310. package/dist/chunks/SelectionPanel-BgUM1h03.js +0 -103
  311. package/dist/chunks/SelectionPanel-BgUM1h03.js.map +0 -1
  312. package/dist/chunks/SidebarPanel-aoIqxbtq.js +0 -55
  313. package/dist/chunks/SidebarPanel-aoIqxbtq.js.map +0 -1
  314. package/dist/chunks/Slider-CFwQYQ10.js +0 -383
  315. package/dist/chunks/Slider-CFwQYQ10.js.map +0 -1
  316. package/dist/chunks/StatusBar-DzoPDY4k.js.map +0 -1
  317. package/dist/chunks/SwatchGrid-BARC3rnF.js.map +0 -1
  318. package/dist/chunks/Timeline--58F7MED.js.map +0 -1
  319. package/dist/chunks/Toast-DNBb-24H.js.map +0 -1
  320. package/dist/chunks/ToggleBar-DTjGeS0Q.js.map +0 -1
  321. package/dist/chunks/ToolButton-CR4sQlxF.js.map +0 -1
  322. package/dist/chunks/ToolOptionsBar-CtzTlaN2.js.map +0 -1
  323. package/dist/chunks/ToolPalette-CKG9qY6P.js.map +0 -1
  324. package/dist/chunks/createKeyframeLayer-Czj6Y235.js.map +0 -1
  325. package/dist/chunks/icons-Dk8SRS8g.js.map +0 -1
  326. package/dist/chunks/model-Du7Lta4C.js.map +0 -1
  327. package/dist/chunks/number-D3NEx_8r.js +0 -89
  328. package/dist/chunks/number-D3NEx_8r.js.map +0 -1
  329. package/dist/chunks/prefField-Dnl7nmjQ.js.map +0 -1
  330. package/dist/chunks/segmentedControl.module-Bv7DEg8f.js +0 -11
  331. package/dist/chunks/segmentedControl.module-Bv7DEg8f.js.map +0 -1
  332. package/dist/chunks/useReorderDragList-B_-5L5Gu.js.map +0 -1
  333. package/dist/components/DragHandleGlyph/DragHandleGlyph.d.ts.map +0 -1
  334. package/dist/components/DragHandleGlyph/index.d.ts +0 -3
  335. package/dist/components/DragHandleGlyph/index.d.ts.map +0 -1
  336. package/dist/components/DragHandleGlyph/index.js +0 -2
  337. package/dist/format/number.d.ts +0 -56
  338. package/dist/format/number.d.ts.map +0 -1
  339. package/dist/icons/ShapeKindIcon.d.ts +0 -10
  340. package/dist/icons/ShapeKindIcon.d.ts.map +0 -1
@@ -1,68 +1,69 @@
1
- import { rt as e, st as t } from "./icons-Dk8SRS8g.js";
2
- import { n } from "./Disclosure-0G0uh2fa.js";
1
+ import { rt as e, st as t } from "./icons-BhcR1l64.js";
2
+ import { n } from "./Disclosure-Ch2KxYuB.js";
3
3
  import { r } from "./Plot2D-CTXHkL5p.js";
4
- import { i, n as a, t as o } from "./createKeyframeLayer-Czj6Y235.js";
4
+ import { i, n as a, t as o } from "./createKeyframeLayer-DVl321_l.js";
5
5
  import { t as s } from "./snap-DRjbOiG9.js";
6
- import { t as c } from "./DetentSlider-CL8TlX3S.js";
6
+ import { t as c } from "./DetentSlider-5uQPFucv.js";
7
7
  import { EASINGS as l, openPointerSession as u, resolveEasing as d, sampleTrack as f, useVisibleRaf as p } from "@weasel-js/core";
8
8
  import { Fragment as m, jsx as h, jsxs as g } from "react/jsx-runtime";
9
9
  import { useCallback as _, useEffect as v, useLayoutEffect as y, useMemo as b, useReducer as x, useRef as S, useState as C } from "react";
10
- var w = {
11
- ruler: "_ruler_g66rp_1",
12
- tick: "_tick_g66rp_11",
13
- playhead: "_playhead_g66rp_29",
14
- lane: "_lane_g66rp_38",
15
- laneLabel: "_laneLabel_g66rp_45",
16
- disclosure: "_disclosure_g66rp_65",
17
- laneTrack: "_laneTrack_g66rp_67",
18
- key: "_key_g66rp_74",
19
- eventMark: "_eventMark_g66rp_74",
20
- keyGhost: "_keyGhost_g66rp_94",
21
- eventGhost: "_eventGhost_g66rp_94",
22
- graphHost: "_graphHost_g66rp_111",
23
- graph: "_graph_g66rp_111",
24
- nestedBar: "_nestedBar_g66rp_130",
25
- transport: "_transport_g66rp_139",
26
- transportButton: "_transportButton_g66rp_148",
27
- transportRow: "_transportRow_g66rp_174",
28
- time: "_time_g66rp_192",
29
- rate: "_rate_g66rp_198",
30
- rateSlider: "_rateSlider_g66rp_199",
31
- rateReadout: "_rateReadout_g66rp_203",
32
- root: "_root_g66rp_209",
33
- label: "_label_g66rp_224",
34
- body: "_body_g66rp_226",
35
- gutter: "_gutter_g66rp_46",
36
- rulerWrap: "_rulerWrap_g66rp_228",
37
- lanes: "_lanes_g66rp_230",
38
- inspector: "_inspector_g66rp_237",
39
- segment: "_segment_g66rp_246",
40
- easingPicker: "_easingPicker_g66rp_256",
41
- easingLabel: "_easingLabel_g66rp_257",
42
- easingPreview: "_easingPreview_g66rp_259"
10
+ import { multiplier as w, qty as T } from "@weasel-js/quantity";
11
+ var E = {
12
+ ruler: "_ruler_65nbe_1",
13
+ tick: "_tick_65nbe_11",
14
+ playhead: "_playhead_65nbe_29",
15
+ lane: "_lane_65nbe_38",
16
+ laneLabel: "_laneLabel_65nbe_45",
17
+ disclosure: "_disclosure_65nbe_65",
18
+ laneTrack: "_laneTrack_65nbe_67",
19
+ key: "_key_65nbe_74",
20
+ eventMark: "_eventMark_65nbe_74",
21
+ keyGhost: "_keyGhost_65nbe_94",
22
+ eventGhost: "_eventGhost_65nbe_94",
23
+ graphHost: "_graphHost_65nbe_111",
24
+ graph: "_graph_65nbe_111",
25
+ nestedBar: "_nestedBar_65nbe_130",
26
+ transport: "_transport_65nbe_139",
27
+ transportButton: "_transportButton_65nbe_148",
28
+ transportRow: "_transportRow_65nbe_175",
29
+ time: "_time_65nbe_193",
30
+ rate: "_rate_65nbe_199",
31
+ rateSlider: "_rateSlider_65nbe_200",
32
+ rateReadout: "_rateReadout_65nbe_204",
33
+ root: "_root_65nbe_210",
34
+ label: "_label_65nbe_225",
35
+ body: "_body_65nbe_227",
36
+ gutter: "_gutter_65nbe_46",
37
+ rulerWrap: "_rulerWrap_65nbe_229",
38
+ lanes: "_lanes_65nbe_231",
39
+ inspector: "_inspector_65nbe_238",
40
+ segment: "_segment_65nbe_247",
41
+ easingPicker: "_easingPicker_65nbe_257",
42
+ easingLabel: "_easingLabel_65nbe_258",
43
+ easingPreview: "_easingPreview_65nbe_260"
43
44
  };
44
45
  //#endregion
45
46
  //#region src/components/Timeline/easingSpec.ts
46
- function T(e) {
47
+ function D(e) {
47
48
  return typeof e == "object" && e && "bezier" in e ? e.bezier : null;
48
49
  }
49
- function E(e) {
50
- return e === void 0 ? null : T(e);
50
+ function O(e) {
51
+ return e === void 0 ? null : D(e);
51
52
  }
52
- function D(e) {
53
+ function k(e) {
53
54
  if (e === void 0) return "linear";
54
55
  if (typeof e == "string") return e;
55
- let t = T(e);
56
+ let t = D(e);
56
57
  if (t) return `cubic-bezier(${t.join(", ")})`;
57
58
  for (let [t, n] of Object.entries(l)) if (n === e) return t;
58
59
  return "custom";
59
60
  }
60
- function O(e, t) {
61
+ function A(e, t) {
61
62
  let n = d(e), r = Array(t), i = t - 1;
62
63
  for (let e = 0; e < t; e++) r[e] = n(i === 0 ? 0 : e / i);
63
64
  return r;
64
65
  }
65
- var k = Object.keys(l), A = 24, j = {
66
+ var j = Object.keys(l), M = 24, N = {
66
67
  linear: [
67
68
  0,
68
69
  0,
@@ -123,16 +124,16 @@ var k = Object.keys(l), A = 24, j = {
123
124
  .63,
124
125
  1
125
126
  ]
126
- }, M = [
127
+ }, P = [
127
128
  .25,
128
129
  .1,
129
130
  .25,
130
131
  1
131
132
  ];
132
- function N(e) {
133
- let { value: t, onChange: n } = e, r = E(t), i = D(t), a = r === null && k.includes(i), o = r === null ? a ? i : "linear" : "custom", s = O(t, A).map((e, t) => `${t / 23 * 100},${100 - e * 100}`).join(" ");
133
+ function F(e) {
134
+ let { value: t, onChange: n } = e, r = O(t), i = k(t), a = r === null && j.includes(i), o = r === null ? a ? i : "linear" : "custom", s = A(t, M).map((e, t) => `${t / 23 * 100},${100 - e * 100}`).join(" ");
134
135
  return /* @__PURE__ */ g("div", {
135
- className: w.easingPicker,
136
+ className: E.easingPicker,
136
137
  children: [
137
138
  /* @__PURE__ */ g("label", { children: ["Easing", /* @__PURE__ */ g("select", {
138
139
  value: o,
@@ -142,7 +143,7 @@ function N(e) {
142
143
  value: "linear",
143
144
  children: "linear"
144
145
  }),
145
- k.filter((e) => e !== "linear").map((e) => /* @__PURE__ */ h("option", {
146
+ j.filter((e) => e !== "linear").map((e) => /* @__PURE__ */ h("option", {
146
147
  value: e,
147
148
  children: e
148
149
  }, e)),
@@ -154,15 +155,15 @@ function N(e) {
154
155
  })] }),
155
156
  r === null ? /* @__PURE__ */ h("button", {
156
157
  type: "button",
157
- className: w.transportButton,
158
- onClick: () => n({ bezier: j[o] ?? M }),
158
+ className: E.transportButton,
159
+ onClick: () => n({ bezier: N[o] ?? P }),
159
160
  children: "Convert to bezier"
160
161
  }) : /* @__PURE__ */ h("span", {
161
- className: w.easingLabel,
162
+ className: E.easingLabel,
162
163
  children: i
163
164
  }),
164
165
  /* @__PURE__ */ h("svg", {
165
- className: w.easingPreview,
166
+ className: E.easingPreview,
166
167
  "data-testid": "easing-preview",
167
168
  viewBox: "0 0 100 100",
168
169
  preserveAspectRatio: "none",
@@ -176,8 +177,8 @@ function N(e) {
176
177
  }
177
178
  //#endregion
178
179
  //#region src/components/Timeline/timeScale.ts
179
- var P = 1;
180
- function F(e, t) {
180
+ var I = 1;
181
+ function L(e, t) {
181
182
  let n = e.to - e.from, r = n === 0 ? 0 : t / n, i = t === 0 ? 0 : n / t;
182
183
  return {
183
184
  window: e,
@@ -186,36 +187,36 @@ function F(e, t) {
186
187
  toMs: (t) => e.from + t * i
187
188
  };
188
189
  }
189
- function I(e, t) {
190
+ function R(e, t) {
190
191
  let n = e.to - e.from;
191
192
  return n === 0 ? 0 : (t - e.from) / n;
192
193
  }
193
- function L(e, t) {
194
- return `${I(e, t) * 100}%`;
194
+ function z(e, t) {
195
+ return `${R(e, t) * 100}%`;
195
196
  }
196
- function R(e, t) {
197
+ function ee(e, t) {
197
198
  let n = e.to - e.from;
198
199
  return n === 0 ? 0 : t / n;
199
200
  }
200
- function z(e, t) {
201
- return `${R(e, t) * 100}%`;
202
- }
203
201
  function B(e, t) {
202
+ return `${ee(e, t) * 100}%`;
203
+ }
204
+ function V(e, t) {
204
205
  let n = Math.min(e.to - e.from, t.to - t.from), r = e.from;
205
206
  return r < t.from && (r = t.from), r + n > t.to && (r = t.to - n), {
206
207
  from: r,
207
208
  to: r + n
208
209
  };
209
210
  }
210
- function V(e, t, n, r) {
211
- let i = e.to - e.from, a = r.to - r.from, o = Math.min(a, Math.max(P, i * n)), s = i === 0 ? .5 : (t - e.from) / i;
212
- return B({
211
+ function te(e, t, n, r) {
212
+ let i = e.to - e.from, a = r.to - r.from, o = Math.min(a, Math.max(I, i * n)), s = i === 0 ? .5 : (t - e.from) / i;
213
+ return V({
213
214
  from: t - s * o,
214
215
  to: t + (1 - s) * o
215
216
  }, r);
216
217
  }
217
- function ee(e, t, n) {
218
- return B({
218
+ function ne(e, t, n) {
219
+ return V({
219
220
  from: e.from + t,
220
221
  to: e.to + t
221
222
  }, n);
@@ -229,12 +230,12 @@ function H(e, t, n) {
229
230
  }
230
231
  //#endregion
231
232
  //#region src/components/Timeline/LaneGraph.tsx
232
- var te = 8, ne = 10;
233
- function re(e) {
234
- let t = e.map((e) => e.value), n = Math.min(...t), r = Math.max(...t) - n || 1, i = r * te / 84;
233
+ var re = 8, ie = 10;
234
+ function ae(e) {
235
+ let t = e.map((e) => e.value), n = Math.min(...t), r = Math.max(...t) - n || 1, i = r * re / 84;
235
236
  return [n - i, n + r + i];
236
237
  }
237
- function ie(e) {
238
+ function oe(e) {
238
239
  let { keys: t, label: n, window: r, offset: s, snapTimes: c, selection: l, selectedSegment: u, onSelect: d, onSelectSegment: f, onKeysInput: p, onKeysCommit: m } = e, g = S(null), [_, v] = C({
239
240
  width: 0,
240
241
  height: 0
@@ -259,12 +260,12 @@ function ie(e) {
259
260
  formatX: (e) => `${Math.round(e)} ms`,
260
261
  snapX: c.map((e) => e - s),
261
262
  xClamp: [0, Infinity],
262
- step: { x: ne }
263
+ step: { x: ie }
263
264
  }), [
264
265
  n,
265
266
  c,
266
267
  s
267
- ]), T = b(() => ({
268
+ ]), w = b(() => ({
268
269
  keys: t,
269
270
  selectedKey: l,
270
271
  selectedSegment: u,
@@ -273,7 +274,7 @@ function ie(e) {
273
274
  t,
274
275
  l,
275
276
  u
276
- ]), [E, D] = C(null), O = E ?? T, k = S(O);
277
+ ]), [T, D] = C(null), O = T ?? w, k = S(O);
277
278
  k.current = O;
278
279
  let A = b(() => [{
279
280
  layer: x,
@@ -291,12 +292,12 @@ function ie(e) {
291
292
  D(null);
292
293
  let r = t;
293
294
  r.keys !== n.keys && m(r.keys);
294
- }, [N, P] = re(O.keys), F = _.width > 0 ? H(r, _.width, 64) : [];
295
+ }, [N, P] = ae(O.keys), F = _.width > 0 ? H(r, _.width, 64) : [];
295
296
  return /* @__PURE__ */ h("div", {
296
297
  ref: g,
297
- className: w.graphHost,
298
+ className: E.graphHost,
298
299
  children: _.width > 0 && _.height > 0 ? /* @__PURE__ */ h(i, {
299
- className: w.graph,
300
+ className: E.graph,
300
301
  "aria-label": `${n} graph`,
301
302
  layers: A,
302
303
  onLayerChange: j,
@@ -321,22 +322,22 @@ function ie(e) {
321
322
  }
322
323
  //#endregion
323
324
  //#region src/components/Timeline/Lane.tsx
324
- var ae = 10;
325
- function oe(e) {
325
+ var se = 10;
326
+ function ce(e) {
326
327
  return e.kind === "sampled" ? e.track.keys.map((e) => e.t) : e.kind === "event" ? e.track.events.map((e) => e.t) : [];
327
328
  }
328
- function se(e) {
329
- let { row: t, window: r, mode: i, selection: a, onSelect: o, onKeyInput: c, onKeyCommit: l, onInsert: d, onToggleExpand: f, expanded: p, snapTimes: _, selectedSegment: y = null, onSelectSegment: b, onKeysInput: x, onKeysCommit: T } = e, E = S(null), D = S(null);
329
+ function le(e) {
330
+ let { row: t, window: r, mode: i, selection: a, onSelect: o, onKeyInput: c, onKeyCommit: l, onInsert: d, onToggleExpand: f, expanded: p, snapTimes: _, selectedSegment: y = null, onSelectSegment: b, onKeysInput: x, onKeysCommit: w } = e, T = S(null), D = S(null);
330
331
  v(() => () => {
331
332
  D.current?.cancel();
332
333
  }, []);
333
- let [O, k] = C(null), A = (e) => L(r, e + t.offset), j = (e) => {
334
- let n = E.current?.getBoundingClientRect();
335
- return n ? F(r, n.width).toMs(e - n.left) - t.offset : r.from;
334
+ let [O, k] = C(null), A = (e) => z(r, e + t.offset), j = (e) => {
335
+ let n = T.current?.getBoundingClientRect();
336
+ return n ? L(r, n.width).toMs(e - n.left) - t.offset : r.from;
336
337
  }, M = () => {
337
- let e = E.current?.getBoundingClientRect().width ?? 0, t = F(r, e);
338
+ let e = T.current?.getBoundingClientRect().width ?? 0, t = L(r, e);
338
339
  return t.toMs(6) - t.toMs(0);
339
- }, N = i === "graph" && t.numeric, P = t.kind === "sampled" ? t.track.keys : [], I = (e) => (n) => {
340
+ }, N = i === "graph" && t.numeric, P = t.kind === "sampled" ? t.track.keys : [], F = (e) => (n) => {
340
341
  if (n.button !== 0) return;
341
342
  n.stopPropagation(), o(e);
342
343
  let r = (e) => {
@@ -345,7 +346,7 @@ function se(e) {
345
346
  };
346
347
  k({
347
348
  keyIndex: e,
348
- t: B[e]
349
+ t: R[e]
349
350
  });
350
351
  let i = () => {
351
352
  k(null), D.current = null;
@@ -362,23 +363,23 @@ function se(e) {
362
363
  },
363
364
  onCancel: i
364
365
  }, { capture: !1 });
365
- }, R = (e, t) => (n) => {
366
- let r = ae * (n.shiftKey ? 10 : 1);
366
+ }, I = (e, t) => (n) => {
367
+ let r = se * (n.shiftKey ? 10 : 1);
367
368
  n.key === "ArrowRight" && (n.preventDefault(), l(e, t + r)), n.key === "ArrowLeft" && (n.preventDefault(), l(e, Math.max(0, t - r)));
368
- }, B = oe(t);
369
+ }, R = ce(t);
369
370
  return /* @__PURE__ */ g("div", {
370
- className: w.lane,
371
+ className: E.lane,
371
372
  "data-depth": t.depth,
372
373
  "data-mode": i,
373
374
  "data-graph": N ? "true" : void 0,
374
375
  children: [/* @__PURE__ */ g("div", {
375
- className: w.laneLabel,
376
+ className: E.laneLabel,
376
377
  children: [t.kind === "timeline" ? /* @__PURE__ */ h("span", {
377
378
  role: "button",
378
379
  tabIndex: 0,
379
380
  "aria-expanded": p,
380
381
  "data-testid": "timeline-disclosure",
381
- className: w.disclosure,
382
+ className: E.disclosure,
382
383
  onClick: f,
383
384
  onKeyDown: (e) => {
384
385
  (e.key === "Enter" || e.key === " ") && (e.preventDefault(), f());
@@ -386,13 +387,13 @@ function se(e) {
386
387
  children: /* @__PURE__ */ h(n, { open: p })
387
388
  }) : null, t.label]
388
389
  }), /* @__PURE__ */ h("div", {
389
- className: w.laneTrack,
390
- ref: E,
390
+ className: E.laneTrack,
391
+ ref: T,
391
392
  "data-testid": "timeline-lane-track",
392
393
  onDoubleClick: (e) => {
393
394
  t.kind === "sampled" && d(Math.max(0, j(e.clientX)));
394
395
  },
395
- children: N ? /* @__PURE__ */ h(ie, {
396
+ children: N ? /* @__PURE__ */ h(oe, {
396
397
  keys: P,
397
398
  label: t.label,
398
399
  window: r,
@@ -403,14 +404,14 @@ function se(e) {
403
404
  onSelect: o,
404
405
  onSelectSegment: b,
405
406
  onKeysInput: x,
406
- onKeysCommit: (e) => T?.(e)
407
+ onKeysCommit: (e) => w?.(e)
407
408
  }) : /* @__PURE__ */ g(m, { children: [
408
409
  t.kind === "timeline" ? /* @__PURE__ */ h("div", {
409
- className: w.nestedBar,
410
+ className: E.nestedBar,
410
411
  "data-testid": "timeline-nested",
411
412
  style: {
412
413
  left: A(0),
413
- width: z(r, t.track.timeline.duration ?? 0)
414
+ width: B(r, t.track.timeline.duration ?? 0)
414
415
  }
415
416
  }) : null,
416
417
  t.kind === "sampled" ? P.slice(1).map((e, n) => {
@@ -421,10 +422,10 @@ function se(e) {
421
422
  "aria-label": `${t.label} segment into ${Math.round(e.t)} ms`,
422
423
  "aria-current": y === i ? "true" : void 0,
423
424
  "data-testid": "timeline-segment",
424
- className: w.segment,
425
+ className: E.segment,
425
426
  style: {
426
427
  left: A(P[i - 1].t),
427
- width: z(r, e.t - P[i - 1].t)
428
+ width: B(r, e.t - P[i - 1].t)
428
429
  },
429
430
  onClick: () => b?.(i),
430
431
  onKeyDown: (e) => {
@@ -432,22 +433,22 @@ function se(e) {
432
433
  }
433
434
  }, `seg-${i}`);
434
435
  }) : null,
435
- B.map((e, n) => /* @__PURE__ */ h("div", {
436
+ R.map((e, n) => /* @__PURE__ */ h("div", {
436
437
  role: "button",
437
438
  tabIndex: 0,
438
439
  "aria-label": `${t.label} key at ${Math.round(e)} ms`,
439
440
  "aria-current": a === n ? "true" : void 0,
440
441
  "data-testid": t.kind === "event" ? "timeline-event" : "timeline-key",
441
442
  "data-dragging": O?.keyIndex === n ? "true" : void 0,
442
- className: t.kind === "event" ? w.eventMark : w.key,
443
+ className: t.kind === "event" ? E.eventMark : E.key,
443
444
  style: { left: A(e) },
444
- onPointerDown: I(n),
445
- onKeyDown: R(n, e)
445
+ onPointerDown: F(n),
446
+ onKeyDown: I(n, e)
446
447
  }, n)),
447
448
  O ? /* @__PURE__ */ h("div", {
448
449
  "aria-hidden": "true",
449
450
  "data-testid": "timeline-key-ghost",
450
- className: t.kind === "event" ? w.eventGhost : w.keyGhost,
451
+ className: t.kind === "event" ? E.eventGhost : E.keyGhost,
451
452
  style: { left: A(O.t) }
452
453
  }) : null
453
454
  ] })
@@ -456,11 +457,11 @@ function se(e) {
456
457
  }
457
458
  //#endregion
458
459
  //#region src/components/Timeline/Ruler.tsx
459
- var ce = .0015;
460
- function le(e) {
460
+ var ue = .0015;
461
+ function de(e) {
461
462
  return e >= 1e3 ? `${(e / 1e3).toFixed(e % 1e3 == 0 ? 0 : 2)}s` : `${Math.round(e)}ms`;
462
463
  }
463
- function ue(e) {
464
+ function fe(e) {
464
465
  let { window: t, bounds: n, playhead: r, onScrub: i, onWindowChange: a } = e, o = S(null), s = S(null);
465
466
  v(() => () => {
466
467
  s.current?.cancel();
@@ -477,7 +478,7 @@ function ue(e) {
477
478
  let d = () => o.current?.getBoundingClientRect().width ?? 0, f = (e) => {
478
479
  let n = o.current?.getBoundingClientRect();
479
480
  if (!n) return t.from;
480
- let r = F(t, n.width).toMs(e - n.left);
481
+ let r = L(t, n.width).toMs(e - n.left);
481
482
  return Math.min(t.to, Math.max(t.from, r));
482
483
  }, p = (e) => {
483
484
  if (e.button !== 0) return;
@@ -493,25 +494,25 @@ function ue(e) {
493
494
  onCancel: t
494
495
  }, { capture: !1 });
495
496
  }, m = (e) => {
496
- if (e.ctrlKey) a(V(t, f(e.clientX), Math.exp(e.deltaY * ce), n));
497
+ if (e.ctrlKey) a(te(t, f(e.clientX), Math.exp(e.deltaY * ue), n));
497
498
  else {
498
499
  let r = d(), i = r === 0 ? 0 : (t.to - t.from) / r;
499
- a(ee(t, e.deltaY * i, n));
500
+ a(ne(t, e.deltaY * i, n));
500
501
  }
501
- }, _ = H(t, c, 64), b = (e) => L(t, e);
502
+ }, _ = H(t, c, 64), b = (e) => z(t, e);
502
503
  return /* @__PURE__ */ g("div", {
503
- className: w.ruler,
504
+ className: E.ruler,
504
505
  ref: o,
505
506
  "data-testid": "timeline-ruler",
506
507
  onPointerDown: p,
507
508
  onWheel: m,
508
509
  children: [_.map((e) => /* @__PURE__ */ h("span", {
509
- className: w.tick,
510
+ className: E.tick,
510
511
  "data-testid": "timeline-tick",
511
512
  style: { left: b(e) },
512
- children: le(e)
513
+ children: de(e)
513
514
  }, e)), /* @__PURE__ */ h("div", {
514
- className: w.playhead,
515
+ className: E.playhead,
515
516
  "data-testid": "timeline-playhead",
516
517
  style: { left: b(r) }
517
518
  })]
@@ -519,21 +520,21 @@ function ue(e) {
519
520
  }
520
521
  //#endregion
521
522
  //#region src/components/Timeline/Transport.tsx
522
- var U = [
523
+ var U = w({ symbol: "x" }), W = [
523
524
  .25,
524
525
  .5,
525
526
  1,
526
527
  2,
527
528
  4
528
- ], W = (e) => `${(e / 1e3).toFixed(2)}s`;
529
- function G(n) {
530
- let { paused: r, loop: i, rate: a, playhead: o, duration: s, onPlay: l, onPause: u, onLoopChange: d, onRateChange: f } = n, p = i !== !1 && i !== 0, m = U.includes(a) ? U : [...U, a].sort((e, t) => e - t);
529
+ ], G = (e) => `${(e / 1e3).toFixed(2)}s`;
530
+ function K(n) {
531
+ let { paused: r, loop: i, rate: a, playhead: o, duration: s, onPlay: l, onPause: u, onLoopChange: d, onRateChange: f } = n, p = i !== !1 && i !== 0, m = W.includes(a) ? W : [...W, a].sort((e, t) => e - t);
531
532
  return /* @__PURE__ */ g("div", {
532
- className: w.transport,
533
+ className: E.transport,
533
534
  children: [
534
535
  /* @__PURE__ */ h("button", {
535
536
  type: "button",
536
- className: w.transportButton,
537
+ className: E.transportButton,
537
538
  "aria-label": r ? "Play" : "Pause",
538
539
  onClick: r ? l : u,
539
540
  children: h(r ? t : e, { size: 14 })
@@ -543,36 +544,39 @@ function G(n) {
543
544
  role: "switch",
544
545
  "aria-checked": p,
545
546
  "aria-label": "Loop",
546
- className: w.transportButton,
547
+ className: E.transportButton,
547
548
  onClick: () => d(!p),
548
549
  children: "⟲"
549
550
  }),
550
551
  /* @__PURE__ */ g("div", {
551
- className: w.rate,
552
+ className: E.rate,
552
553
  children: [
553
554
  "Rate",
554
555
  /* @__PURE__ */ h(c, {
555
556
  ariaLabel: "Rate",
556
- items: m,
557
+ items: m.map((e) => ({
558
+ value: e,
559
+ ariaLabel: T(e, U).spoken
560
+ })),
557
561
  value: a,
558
562
  onChange: f,
559
- formatLabel: (e) => `${e}x`,
563
+ formatLabel: (e) => T(e, U).text,
560
564
  labels: "none",
561
- className: w.rateSlider
565
+ className: E.rateSlider
562
566
  }),
563
- /* @__PURE__ */ g("span", {
564
- className: w.rateReadout,
565
- children: [a, "x"]
567
+ /* @__PURE__ */ h("span", {
568
+ className: E.rateReadout,
569
+ children: T(a, U).text
566
570
  })
567
571
  ]
568
572
  }),
569
573
  /* @__PURE__ */ g("span", {
570
- className: w.time,
574
+ className: E.time,
571
575
  "data-testid": "timeline-time",
572
576
  children: [
573
- W(o),
577
+ G(o),
574
578
  " / ",
575
- W(s)
579
+ G(s)
576
580
  ]
577
581
  })
578
582
  ]
@@ -580,12 +584,12 @@ function G(n) {
580
584
  }
581
585
  //#endregion
582
586
  //#region src/components/Timeline/lanes.ts
583
- function de(e) {
587
+ function pe(e) {
584
588
  if (e.kind !== "sampled") return !1;
585
589
  let t = e.keys;
586
590
  return t.length > 0 && t.every((e) => typeof e.value == "number");
587
591
  }
588
- function fe(e, t) {
592
+ function me(e, t) {
589
593
  let n = [], r = (e, i, a, o) => {
590
594
  e.forEach((e, s) => {
591
595
  let c = [...i, s], l = c.join(".");
@@ -597,13 +601,13 @@ function fe(e, t) {
597
601
  depth: a,
598
602
  offset: o,
599
603
  kind: e.kind,
600
- numeric: de(e)
604
+ numeric: pe(e)
601
605
  }), e.kind === "timeline" && t.has(l) && r(e.timeline.tracks, c, a + 1, o + e.at);
602
606
  });
603
607
  };
604
608
  return r(e, [], 0, 0), n;
605
609
  }
606
- function K(e, t) {
610
+ function q(e, t) {
607
611
  let n = e, r;
608
612
  for (let e of t) {
609
613
  if (r = n[e], !r) return;
@@ -613,22 +617,22 @@ function K(e, t) {
613
617
  }
614
618
  //#endregion
615
619
  //#region src/components/Timeline/keys.ts
616
- function q(e, t) {
620
+ function J(e, t) {
617
621
  return e.length === t.length && e.every((e, n) => e === t[n]);
618
622
  }
619
- function J(e, t) {
623
+ function Y(e, t) {
620
624
  return {
621
625
  ...e,
622
626
  keys: t
623
627
  };
624
628
  }
625
- function pe(e, t) {
629
+ function he(e, t) {
626
630
  return {
627
631
  ...e,
628
632
  events: t
629
633
  };
630
634
  }
631
- function Y(e, t, n) {
635
+ function X(e, t, n) {
632
636
  let r = e.slice(), [i, ...a] = t;
633
637
  if (a.length === 0) return r[i] = n, r;
634
638
  let o = r[i];
@@ -638,19 +642,19 @@ function Y(e, t, n) {
638
642
  ...s,
639
643
  timeline: {
640
644
  ...s.timeline,
641
- tracks: Y(s.timeline.tracks, a, n)
645
+ tracks: X(s.timeline.tracks, a, n)
642
646
  }
643
647
  }, r;
644
648
  }
645
- function X(e, t, n) {
646
- let r = K(e, t.trackPath), i = Math.max(0, n);
649
+ function Z(e, t, n) {
650
+ let r = q(e, t.trackPath), i = Math.max(0, n);
647
651
  if (r?.kind === "sampled") {
648
652
  let n = r, a = {
649
653
  ...n.keys[t.keyIndex],
650
654
  t: i
651
655
  }, o = n.keys.filter((e, n) => n !== t.keyIndex), s = o.findIndex((e) => e.t > i), c = s === -1 ? o.length : s;
652
656
  return o.splice(c, 0, a), {
653
- tracks: Y(e, t.trackPath, J(r, o)),
657
+ tracks: X(e, t.trackPath, Y(r, o)),
654
658
  selection: {
655
659
  trackPath: t.trackPath,
656
660
  keyIndex: c
@@ -663,7 +667,7 @@ function X(e, t, n) {
663
667
  t: i
664
668
  }, o = n.events.filter((e, n) => n !== t.keyIndex), s = o.findIndex((e) => e.t > i), c = s === -1 ? o.length : s;
665
669
  return o.splice(c, 0, a), {
666
- tracks: Y(e, t.trackPath, pe(r, o)),
670
+ tracks: X(e, t.trackPath, he(r, o)),
667
671
  selection: {
668
672
  trackPath: t.trackPath,
669
673
  keyIndex: c
@@ -675,8 +679,8 @@ function X(e, t, n) {
675
679
  selection: t
676
680
  };
677
681
  }
678
- function me(e, t, n) {
679
- let r = K(e, t);
682
+ function ge(e, t, n) {
683
+ let r = q(e, t);
680
684
  if (r?.kind !== "sampled") return {
681
685
  tracks: e.slice(),
682
686
  selection: null
@@ -686,60 +690,60 @@ function me(e, t, n) {
686
690
  t: a,
687
691
  value: o
688
692
  }), {
689
- tracks: Y(e, t, J(r, s)),
693
+ tracks: X(e, t, Y(r, s)),
690
694
  selection: {
691
695
  trackPath: t,
692
696
  keyIndex: l
693
697
  }
694
698
  };
695
699
  }
696
- function he(e, t) {
697
- let n = K(e, t.trackPath);
700
+ function _e(e, t) {
701
+ let n = q(e, t.trackPath);
698
702
  if (n?.kind !== "sampled") return {
699
703
  tracks: e.slice(),
700
704
  selection: t
701
705
  };
702
706
  let r = n.keys.filter((e, n) => n !== t.keyIndex);
703
707
  return {
704
- tracks: Y(e, t.trackPath, J(n, r)),
708
+ tracks: X(e, t.trackPath, Y(n, r)),
705
709
  selection: r.length === 0 ? null : {
706
710
  trackPath: t.trackPath,
707
711
  keyIndex: Math.max(0, t.keyIndex - 1)
708
712
  }
709
713
  };
710
714
  }
711
- function Z(e, t, n) {
712
- let r = K(e, t.trackPath);
715
+ function Q(e, t, n) {
716
+ let r = q(e, t.trackPath);
713
717
  if (r?.kind !== "sampled") return e.slice();
714
718
  let i = r.keys.slice(), { easing: a, ...o } = i[t.keyIndex];
715
719
  return i[t.keyIndex] = n === void 0 ? o : {
716
720
  ...o,
717
721
  easing: n
718
- }, Y(e, t.trackPath, J(r, i));
722
+ }, X(e, t.trackPath, Y(r, i));
719
723
  }
720
- function Q(e, t, n) {
721
- let r = K(e, t);
722
- return r?.kind === "sampled" ? Y(e, t, J(r, n.slice())) : e.slice();
724
+ function $(e, t, n) {
725
+ let r = q(e, t);
726
+ return r?.kind === "sampled" ? X(e, t, Y(r, n.slice())) : e.slice();
723
727
  }
724
- function ge(e, t, n) {
725
- let r = K(e, t.trackPath);
728
+ function ve(e, t, n) {
729
+ let r = q(e, t.trackPath);
726
730
  if (r?.kind !== "sampled") return e.slice();
727
731
  let i = r.keys.slice();
728
732
  return i[t.keyIndex] = {
729
733
  ...i[t.keyIndex],
730
734
  value: n
731
- }, Y(e, t.trackPath, J(r, i));
735
+ }, X(e, t.trackPath, Y(r, i));
732
736
  }
733
737
  //#endregion
734
738
  //#region src/components/Timeline/Timeline.tsx
735
- function $(e) {
739
+ function ye(e) {
736
740
  let { tracks: t, duration: n, playhead: r, onInput: i, onChange: a, onScrub: o, renderKeyEditor: s, label: c, className: l } = e, [u, d] = C(() => /* @__PURE__ */ new Set()), [f, p] = C({
737
741
  from: 0,
738
742
  to: n
739
- }), [m, _] = C(null), [v, y] = C(null), x = e.window ?? f, S = e.onWindowChange ?? p, T = e.selection === void 0 ? m : e.selection, E = e.onSelect ?? _, D = {
743
+ }), [m, _] = C(null), [v, y] = C(null), x = e.window ?? f, S = e.onWindowChange ?? p, w = e.selection === void 0 ? m : e.selection, T = e.onSelect ?? _, D = {
740
744
  from: 0,
741
745
  to: n
742
- }, O = b(() => fe(t, u), [t, u]), k = b(() => {
746
+ }, O = b(() => me(t, u), [t, u]), k = b(() => {
743
747
  let e = /* @__PURE__ */ new Set([0, n]);
744
748
  for (let t of O) if (t.kind === "sampled") for (let n of t.track.keys) e.add(n.t + t.offset);
745
749
  return [...e];
@@ -749,25 +753,25 @@ function $(e) {
749
753
  return n.has(e) ? n.delete(e) : n.add(e), n;
750
754
  });
751
755
  }, j = (e) => {
752
- if ((e.key === "Delete" || e.key === "Backspace") && T) {
756
+ if ((e.key === "Delete" || e.key === "Backspace") && w) {
753
757
  e.preventDefault();
754
- let n = he(t, T);
755
- a(n.tracks), E(n.selection);
758
+ let n = _e(t, w);
759
+ a(n.tracks), T(n.selection);
756
760
  }
757
- }, M = T ? K(t, T.trackPath) : void 0, P = M?.kind === "sampled" ? M.keys[T.keyIndex] : void 0, F = v ? K(t, v.trackPath) : void 0, I = F?.kind === "sampled" ? F.keys[v.keyIndex] : void 0;
761
+ }, M = w ? q(t, w.trackPath) : void 0, N = M?.kind === "sampled" ? M.keys[w.keyIndex] : void 0, P = v ? q(t, v.trackPath) : void 0, I = P?.kind === "sampled" ? P.keys[v.keyIndex] : void 0;
758
762
  return /* @__PURE__ */ g("div", {
759
- className: [w.root, l].filter(Boolean).join(" "),
763
+ className: [E.root, l].filter(Boolean).join(" "),
760
764
  "data-testid": "timeline-root",
761
765
  tabIndex: -1,
762
766
  onKeyDown: j,
763
767
  children: [
764
768
  c ? /* @__PURE__ */ h("div", {
765
- className: w.label,
769
+ className: E.label,
766
770
  children: c
767
771
  }) : null,
768
772
  e.transport === !1 ? null : /* @__PURE__ */ g("div", {
769
- className: w.transportRow,
770
- children: [/* @__PURE__ */ h(G, {
773
+ className: E.transportRow,
774
+ children: [/* @__PURE__ */ h(K, {
771
775
  ...e.transport ?? {
772
776
  paused: !0,
773
777
  loop: !1,
@@ -784,16 +788,16 @@ function $(e) {
784
788
  role: "switch",
785
789
  "aria-checked": (e.mode ?? "dope") === "graph",
786
790
  "aria-label": "Graph mode",
787
- className: w.transportButton,
791
+ className: E.transportButton,
788
792
  onClick: () => e.onModeChange?.((e.mode ?? "dope") === "graph" ? "dope" : "graph"),
789
793
  children: "Graph"
790
794
  })]
791
795
  }),
792
796
  /* @__PURE__ */ g("div", {
793
- className: w.body,
794
- children: [/* @__PURE__ */ h("div", { className: w.gutter }), /* @__PURE__ */ h("div", {
795
- className: w.rulerWrap,
796
- children: /* @__PURE__ */ h(ue, {
797
+ className: E.body,
798
+ children: [/* @__PURE__ */ h("div", { className: E.gutter }), /* @__PURE__ */ h("div", {
799
+ className: E.rulerWrap,
800
+ children: /* @__PURE__ */ h(fe, {
797
801
  window: x,
798
802
  bounds: D,
799
803
  playhead: r,
@@ -803,41 +807,41 @@ function $(e) {
803
807
  })]
804
808
  }),
805
809
  /* @__PURE__ */ h("div", {
806
- className: w.lanes,
810
+ className: E.lanes,
807
811
  children: O.map((n) => {
808
812
  let r = n.path;
809
- return /* @__PURE__ */ h(se, {
813
+ return /* @__PURE__ */ h(le, {
810
814
  row: n,
811
815
  window: x,
812
816
  mode: e.mode ?? "dope",
813
- selection: T && q(T.trackPath, r) ? T.keyIndex : null,
817
+ selection: w && J(w.trackPath, r) ? w.keyIndex : null,
814
818
  expanded: u.has(n.key),
815
819
  snapTimes: k,
816
820
  onToggleExpand: () => A(n.key),
817
- onSelect: (e) => E({
821
+ onSelect: (e) => T({
818
822
  trackPath: r,
819
823
  keyIndex: e
820
824
  }),
821
825
  onKeyInput: (e, n) => {
822
- i?.(X(t, {
826
+ i?.(Z(t, {
823
827
  trackPath: r,
824
828
  keyIndex: e
825
829
  }, n).tracks);
826
830
  },
827
831
  onKeyCommit: (e, n) => {
828
- let i = X(t, {
832
+ let i = Z(t, {
829
833
  trackPath: r,
830
834
  keyIndex: e
831
835
  }, n);
832
- a(i.tracks), E(i.selection);
836
+ a(i.tracks), T(i.selection);
833
837
  },
834
- onKeysInput: (e) => i?.(Q(t, r, e)),
835
- onKeysCommit: (e) => a(Q(t, r, e)),
838
+ onKeysInput: (e) => i?.($(t, r, e)),
839
+ onKeysCommit: (e) => a($(t, r, e)),
836
840
  onInsert: (e) => {
837
- let n = me(t, r, e);
838
- a(n.tracks), E(n.selection);
841
+ let n = ge(t, r, e);
842
+ a(n.tracks), T(n.selection);
839
843
  },
840
- selectedSegment: v && q(v.trackPath, r) ? v.keyIndex : null,
844
+ selectedSegment: v && J(v.trackPath, r) ? v.keyIndex : null,
841
845
  onSelectSegment: (e) => y({
842
846
  trackPath: r,
843
847
  keyIndex: e
@@ -845,21 +849,21 @@ function $(e) {
845
849
  }, n.key);
846
850
  })
847
851
  }),
848
- s && T && P && M?.kind === "sampled" ? /* @__PURE__ */ h("div", {
849
- className: w.inspector,
852
+ s && w && N && M?.kind === "sampled" ? /* @__PURE__ */ h("div", {
853
+ className: E.inspector,
850
854
  children: s({
851
- key: P,
855
+ key: N,
852
856
  track: M,
853
- selection: T,
854
- commit: (e) => a(ge(t, T, e.value)),
855
- setEasing: (e) => a(Z(t, T, e))
857
+ selection: w,
858
+ commit: (e) => a(ve(t, w, e.value)),
859
+ setEasing: (e) => a(Q(t, w, e))
856
860
  })
857
861
  }) : null,
858
862
  v && I ? /* @__PURE__ */ h("div", {
859
- className: w.inspector,
860
- children: /* @__PURE__ */ h(N, {
863
+ className: E.inspector,
864
+ children: /* @__PURE__ */ h(F, {
861
865
  value: I.easing,
862
- onChange: (e) => a(Z(t, v, e))
866
+ onChange: (e) => a(Q(t, v, e))
863
867
  })
864
868
  }) : null
865
869
  ]
@@ -867,7 +871,7 @@ function $(e) {
867
871
  }
868
872
  //#endregion
869
873
  //#region src/components/Timeline/AnimatedTimeline.tsx
870
- function _e(e) {
874
+ function be(e) {
871
875
  let { handle: t, ...n } = e, [, r] = x((e) => e + 1, 0);
872
876
  v(() => t.subscribe(r), [t]);
873
877
  let i = S(null), a = p(() => {
@@ -880,7 +884,7 @@ function _e(e) {
880
884
  n.splice(0, n.length, ...e);
881
885
  });
882
886
  }, [t]), s = t.time(), c = t.duration();
883
- return /* @__PURE__ */ h($, {
887
+ return /* @__PURE__ */ h(ye, {
884
888
  ...n,
885
889
  tracks: t.tracks(),
886
890
  duration: c,
@@ -907,6 +911,6 @@ function _e(e) {
907
911
  });
908
912
  }
909
913
  //#endregion
910
- export { N as a, D as c, G as i, O as l, $ as n, k as o, q as r, E as s, _e as t };
914
+ export { F as a, k as c, K as i, A as l, ye as n, j as o, J as r, O as s, be as t };
911
915
 
912
- //# sourceMappingURL=Timeline--58F7MED.js.map
916
+ //# sourceMappingURL=Timeline-B39cwfMB.js.map