@weasel-js/ui 1.5.0 → 1.5.1

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 (255) hide show
  1. package/dist/chunks/{ActionBar-DxGp3WuZ.js → ActionBar-GZdcfdQL.js} +1 -2
  2. package/dist/chunks/{ActionBar-DxGp3WuZ.js.map → ActionBar-GZdcfdQL.js.map} +1 -1
  3. package/dist/chunks/{ActionsBar-D1VFreoj.js → ActionsBar-Fhx_40iP.js} +2 -2
  4. package/dist/chunks/{ActionsBar-D1VFreoj.js.map → ActionsBar-Fhx_40iP.js.map} +1 -1
  5. package/dist/chunks/{BandEditor-BeWO56_w.js → BandEditor-D8I5Uun-.js} +93 -98
  6. package/dist/chunks/BandEditor-D8I5Uun-.js.map +1 -0
  7. package/dist/chunks/{Callout-BPIA2is-.js → Callout-cx5_CWcW.js} +1 -1
  8. package/dist/chunks/{Callout-BPIA2is-.js.map → Callout-cx5_CWcW.js.map} +1 -1
  9. package/dist/chunks/{Checkbox-D-pVpobU.js → Checkbox-BZZsPaVF.js} +1 -1
  10. package/dist/chunks/{Checkbox-D-pVpobU.js.map → Checkbox-BZZsPaVF.js.map} +1 -1
  11. package/dist/chunks/{ColorField-C20aRvCg.js → ColorField-YVf8irfr.js} +2 -2
  12. package/dist/chunks/{ColorField-C20aRvCg.js.map → ColorField-YVf8irfr.js.map} +1 -1
  13. package/dist/chunks/{ComboBox-CPES6Y1i.js → ComboBox-D57tNYDD.js} +2 -2
  14. package/dist/chunks/{ComboBox-CPES6Y1i.js.map → ComboBox-D57tNYDD.js.map} +1 -1
  15. package/dist/chunks/{CurveEditor-Cj0lLiyR.js → CurveEditor-BXiMoN9d.js} +175 -175
  16. package/dist/chunks/CurveEditor-BXiMoN9d.js.map +1 -0
  17. package/dist/chunks/DetentSlider-BWNSv07Z.js +72 -0
  18. package/dist/chunks/DetentSlider-BWNSv07Z.js.map +1 -0
  19. package/dist/chunks/{Dialog-CYBLjwbd.js → Dialog-DuOzsR2g.js} +1 -1
  20. package/dist/chunks/{Dialog-CYBLjwbd.js.map → Dialog-DuOzsR2g.js.map} +1 -1
  21. package/dist/chunks/{Disclosure-DiA6UKdM.js → Disclosure-9UgDzc7Z.js} +6 -6
  22. package/dist/chunks/{Disclosure-DiA6UKdM.js.map → Disclosure-9UgDzc7Z.js.map} +1 -1
  23. package/dist/chunks/{Field-dzlxOGxT.js → Field-BNqvUJfg.js} +1 -1
  24. package/dist/chunks/{Field-dzlxOGxT.js.map → Field-BNqvUJfg.js.map} +1 -1
  25. package/dist/chunks/{FontFamilySelect-DIJ4phXz.js → FontFamilySelect-CO19kyOO.js} +2 -2
  26. package/dist/chunks/{FontFamilySelect-DIJ4phXz.js.map → FontFamilySelect-CO19kyOO.js.map} +1 -1
  27. package/dist/chunks/{GradientEditor-dBprHbS0.js → GradientEditor-B_ymIr4Q.js} +74 -51
  28. package/dist/chunks/GradientEditor-B_ymIr4Q.js.map +1 -0
  29. package/dist/chunks/Icon-QhLhaGFe.js +498 -0
  30. package/dist/chunks/Icon-QhLhaGFe.js.map +1 -0
  31. package/dist/chunks/{InlineRange-CcfzY80y.js → InlineRange-DdIlfGqG.js} +2 -2
  32. package/dist/chunks/{InlineRange-CcfzY80y.js.map → InlineRange-DdIlfGqG.js.map} +1 -1
  33. package/dist/chunks/{Input-CoKOtyD0.js → Input-B9Vh7ASP.js} +2 -2
  34. package/dist/chunks/{Input-CoKOtyD0.js.map → Input-B9Vh7ASP.js.map} +1 -1
  35. package/dist/chunks/Jog-BYrxbAQU.js +81 -0
  36. package/dist/chunks/Jog-BYrxbAQU.js.map +1 -0
  37. package/dist/chunks/{Keycaps-DSeq6QWH.js → Keycaps-CGNQV2Pz.js} +5 -5
  38. package/dist/chunks/Keycaps-CGNQV2Pz.js.map +1 -0
  39. package/dist/chunks/{MenuButton-Do8fFUx1.js → MenuButton-DGE-0DP0.js} +1 -1
  40. package/dist/chunks/{MenuButton-Do8fFUx1.js.map → MenuButton-DGE-0DP0.js.map} +1 -1
  41. package/dist/chunks/MeshEditor-CHoGQ9K8.js +123 -0
  42. package/dist/chunks/MeshEditor-CHoGQ9K8.js.map +1 -0
  43. package/dist/chunks/{NumberField-BWzhqS19.js → NumberField-CQzS6TjF.js} +2 -2
  44. package/dist/chunks/{NumberField-BWzhqS19.js.map → NumberField-CQzS6TjF.js.map} +1 -1
  45. package/dist/chunks/{OptionsBar-D_Cd3ZYs.js → OptionsBar-BWaYG_OH.js} +2 -2
  46. package/dist/chunks/{OptionsBar-D_Cd3ZYs.js.map → OptionsBar-BWaYG_OH.js.map} +1 -1
  47. package/dist/chunks/PaintField-BVYMu3OI.js +62 -0
  48. package/dist/chunks/PaintField-BVYMu3OI.js.map +1 -0
  49. package/dist/chunks/PaintInput-BzAHCKro.js +131 -0
  50. package/dist/chunks/PaintInput-BzAHCKro.js.map +1 -0
  51. package/dist/chunks/{PatternPicker-Ba22Bf4L.js → PatternPicker-C4OryrYi.js} +2 -2
  52. package/dist/chunks/{PatternPicker-Ba22Bf4L.js.map → PatternPicker-C4OryrYi.js.map} +1 -1
  53. package/dist/chunks/{Plot2D-CVZwQpWJ.js → Plot2D-Czvyt_vG.js} +1 -1
  54. package/dist/chunks/{Plot2D-CVZwQpWJ.js.map → Plot2D-Czvyt_vG.js.map} +1 -1
  55. package/dist/chunks/{PointPlotter-anTHwz8f.js → PointPlotter-Xvb98GwB.js} +2 -2
  56. package/dist/chunks/{PointPlotter-anTHwz8f.js.map → PointPlotter-Xvb98GwB.js.map} +1 -1
  57. package/dist/chunks/{Powerline-BaHDJlcO.js → Powerline-B_EH-7Z-.js} +1 -1
  58. package/dist/chunks/{Powerline-BaHDJlcO.js.map → Powerline-B_EH-7Z-.js.map} +1 -1
  59. package/dist/chunks/Prefs-FuaJBs3t.js +308 -0
  60. package/dist/chunks/Prefs-FuaJBs3t.js.map +1 -0
  61. package/dist/chunks/Properties-B3KU69NI.js +874 -0
  62. package/dist/chunks/Properties-B3KU69NI.js.map +1 -0
  63. package/dist/chunks/{RadioGroup-B2_LUgDp.js → RadioGroup-C6xpdQNg.js} +2 -2
  64. package/dist/chunks/{RadioGroup-B2_LUgDp.js.map → RadioGroup-C6xpdQNg.js.map} +1 -1
  65. package/dist/chunks/{RangeSlider-S2R3zA8N.js → RangeSlider-CzgeGLVS.js} +1 -1
  66. package/dist/chunks/{RangeSlider-S2R3zA8N.js.map → RangeSlider-CzgeGLVS.js.map} +1 -1
  67. package/dist/chunks/{ResizeHandle-CiExUWP-.js → ResizeHandle-1Ey8AOij.js} +1 -1
  68. package/dist/chunks/{ResizeHandle-CiExUWP-.js.map → ResizeHandle-1Ey8AOij.js.map} +1 -1
  69. package/dist/chunks/{Select-CacMfs4v.js → Select-BMYVh10x.js} +20 -17
  70. package/dist/chunks/Select-BMYVh10x.js.map +1 -0
  71. package/dist/chunks/{SelectionPanel-CbyUT3Dh.js → SelectionPanel-DTpcQidl.js} +12 -12
  72. package/dist/chunks/{SelectionPanel-CbyUT3Dh.js.map → SelectionPanel-DTpcQidl.js.map} +1 -1
  73. package/dist/chunks/{Sidebar-Cqcfx3_s.js → Sidebar-BlUjn8lD.js} +1 -1
  74. package/dist/chunks/{Sidebar-Cqcfx3_s.js.map → Sidebar-BlUjn8lD.js.map} +1 -1
  75. package/dist/chunks/{SidebarPanel-BLzBo0S2.js → SidebarPanel-BqHfz6VK.js} +2 -2
  76. package/dist/chunks/{SidebarPanel-BLzBo0S2.js.map → SidebarPanel-BqHfz6VK.js.map} +1 -1
  77. package/dist/chunks/Slider-B2ywUZH6.js +381 -0
  78. package/dist/chunks/Slider-B2ywUZH6.js.map +1 -0
  79. package/dist/chunks/{StatusBar-B9NQ8atD.js → StatusBar-BFt7Yw5O.js} +1 -1
  80. package/dist/chunks/{StatusBar-B9NQ8atD.js.map → StatusBar-BFt7Yw5O.js.map} +1 -1
  81. package/dist/chunks/{Switch-C4NU-me1.js → Switch-Om3t3ASc.js} +1 -1
  82. package/dist/chunks/{Switch-C4NU-me1.js.map → Switch-Om3t3ASc.js.map} +1 -1
  83. package/dist/chunks/{Tabs-9sODd2Ut.js → Tabs-EAvYywil.js} +1 -1
  84. package/dist/chunks/{Tabs-9sODd2Ut.js.map → Tabs-EAvYywil.js.map} +1 -1
  85. package/dist/chunks/{Timeline-DOZgb1CG.js → Timeline-BEyKaBXl.js} +254 -253
  86. package/dist/chunks/Timeline-BEyKaBXl.js.map +1 -0
  87. package/dist/chunks/{Toast-LpN1WK8E.js → Toast-iqLDD_XZ.js} +1 -1
  88. package/dist/chunks/{Toast-LpN1WK8E.js.map → Toast-iqLDD_XZ.js.map} +1 -1
  89. package/dist/chunks/{ToggleBar-Bxwv6xvj.js → ToggleBar--9As2PWG.js} +8 -8
  90. package/dist/chunks/ToggleBar--9As2PWG.js.map +1 -0
  91. package/dist/chunks/TokenPanel-BL9hlq7x.js +374 -0
  92. package/dist/chunks/TokenPanel-BL9hlq7x.js.map +1 -0
  93. package/dist/chunks/{ToolButton-B81YjdwO.js → ToolButton-Dd-1T5aX.js} +1 -1
  94. package/dist/chunks/{ToolButton-B81YjdwO.js.map → ToolButton-Dd-1T5aX.js.map} +1 -1
  95. package/dist/chunks/{ToolGroup-D7juDOC_.js → ToolGroup-BBI-W-Gm.js} +1 -1
  96. package/dist/chunks/{ToolGroup-D7juDOC_.js.map → ToolGroup-BBI-W-Gm.js.map} +1 -1
  97. package/dist/chunks/{ToolPalette-BSzmRJS7.js → ToolPalette-BmTDDpmz.js} +3 -3
  98. package/dist/chunks/{ToolPalette-BSzmRJS7.js.map → ToolPalette-BmTDDpmz.js.map} +1 -1
  99. package/dist/chunks/{createKeyframeLayer-AL4jP0EX.js → createKeyframeLayer-7j7ukrSx.js} +198 -193
  100. package/dist/chunks/createKeyframeLayer-7j7ukrSx.js.map +1 -0
  101. package/dist/chunks/{icons-BV27dhKB.js → icons-Btrs-JD7.js} +35 -32
  102. package/dist/chunks/icons-Btrs-JD7.js.map +1 -0
  103. package/dist/chunks/range.module-DSsOIq1R.js +8 -0
  104. package/dist/chunks/range.module-DSsOIq1R.js.map +1 -0
  105. package/dist/chunks/{schema-CPdFNeP6.js → schema-MCVT1MLv.js} +1 -1
  106. package/dist/chunks/{schema-CPdFNeP6.js.map → schema-MCVT1MLv.js.map} +1 -1
  107. package/dist/chunks/segmentedControl.module-DmeUMYe3.js +11 -0
  108. package/dist/chunks/segmentedControl.module-DmeUMYe3.js.map +1 -0
  109. package/dist/chunks/snap-B0WQwetQ.js +13 -0
  110. package/dist/chunks/snap-B0WQwetQ.js.map +1 -0
  111. package/dist/components/ActionBar/ActionBar.d.ts.map +1 -1
  112. package/dist/components/ActionBar/index.js +1 -1
  113. package/dist/components/ActionsBar/index.js +1 -1
  114. package/dist/components/BandEditor/BandEditor.d.ts.map +1 -1
  115. package/dist/components/BandEditor/index.js +1 -1
  116. package/dist/components/BandEditor/scale.d.ts +1 -8
  117. package/dist/components/BandEditor/scale.d.ts.map +1 -1
  118. package/dist/components/Callout/index.js +1 -1
  119. package/dist/components/Checkbox/index.js +1 -1
  120. package/dist/components/ColorField/index.js +1 -1
  121. package/dist/components/ComboBox/index.js +1 -1
  122. package/dist/components/CurveEditor/createFunctionLayer.d.ts.map +1 -1
  123. package/dist/components/CurveEditor/createKeyframeLayer.d.ts.map +1 -1
  124. package/dist/components/CurveEditor/index.d.ts +1 -1
  125. package/dist/components/CurveEditor/index.d.ts.map +1 -1
  126. package/dist/components/CurveEditor/index.js +4 -3
  127. package/dist/components/DetentSlider/DetentSlider.d.ts +9 -10
  128. package/dist/components/DetentSlider/DetentSlider.d.ts.map +1 -1
  129. package/dist/components/DetentSlider/index.js +1 -1
  130. package/dist/components/Dialog/index.js +1 -1
  131. package/dist/components/Disclosure/index.js +1 -1
  132. package/dist/components/Field/index.js +1 -1
  133. package/dist/components/FontFamilySelect/index.js +1 -1
  134. package/dist/components/GradientEditor/GradientEditor.d.ts +3 -0
  135. package/dist/components/GradientEditor/GradientEditor.d.ts.map +1 -1
  136. package/dist/components/GradientEditor/index.js +1 -1
  137. package/dist/components/InlineRange/index.js +1 -1
  138. package/dist/components/Input/index.js +1 -1
  139. package/dist/components/Jog/Jog.d.ts +28 -0
  140. package/dist/components/Jog/Jog.d.ts.map +1 -0
  141. package/dist/components/Jog/index.d.ts +3 -0
  142. package/dist/components/Jog/index.d.ts.map +1 -0
  143. package/dist/components/Jog/index.js +2 -0
  144. package/dist/components/Keycaps/index.js +1 -1
  145. package/dist/components/MenuButton/index.js +1 -1
  146. package/dist/components/MeshEditor/MeshEditor.d.ts +30 -0
  147. package/dist/components/MeshEditor/MeshEditor.d.ts.map +1 -0
  148. package/dist/components/MeshEditor/index.d.ts +3 -0
  149. package/dist/components/MeshEditor/index.d.ts.map +1 -0
  150. package/dist/components/MeshEditor/index.js +2 -0
  151. package/dist/components/NumberField/index.js +1 -1
  152. package/dist/components/OptionsBar/index.js +1 -1
  153. package/dist/components/PaintField/PaintField.d.ts +36 -0
  154. package/dist/components/PaintField/PaintField.d.ts.map +1 -0
  155. package/dist/components/PaintField/index.d.ts +3 -0
  156. package/dist/components/PaintField/index.d.ts.map +1 -0
  157. package/dist/components/PaintField/index.js +2 -0
  158. package/dist/components/PaintInput/PaintInput.d.ts.map +1 -1
  159. package/dist/components/PaintInput/index.js +1 -1
  160. package/dist/components/PatternPicker/index.js +1 -1
  161. package/dist/components/Plot2D/index.js +1 -1
  162. package/dist/components/PointPlotter/index.js +1 -1
  163. package/dist/components/Powerline/index.js +1 -1
  164. package/dist/components/Prefs/PrefsForm.d.ts +4 -0
  165. package/dist/components/Prefs/PrefsForm.d.ts.map +1 -1
  166. package/dist/components/Prefs/index.js +2 -2
  167. package/dist/components/Properties/PinDot.d.ts +18 -0
  168. package/dist/components/Properties/PinDot.d.ts.map +1 -0
  169. package/dist/components/Properties/PropertyPanel.d.ts +93 -8
  170. package/dist/components/Properties/PropertyPanel.d.ts.map +1 -1
  171. package/dist/components/Properties/index.d.ts +4 -2
  172. package/dist/components/Properties/index.d.ts.map +1 -1
  173. package/dist/components/Properties/index.js +2 -2
  174. package/dist/components/Properties/storyLayouts.d.ts +1 -1
  175. package/dist/components/RadioGroup/index.js +1 -1
  176. package/dist/components/RangeSlider/index.js +1 -1
  177. package/dist/components/ResizeHandle/index.js +1 -1
  178. package/dist/components/Select/Select.d.ts +8 -0
  179. package/dist/components/Select/Select.d.ts.map +1 -1
  180. package/dist/components/Select/index.js +1 -1
  181. package/dist/components/SelectionPanel/index.js +1 -1
  182. package/dist/components/Sidebar/index.js +1 -1
  183. package/dist/components/SidebarPanel/index.js +1 -1
  184. package/dist/components/Slider/Slider.d.ts +19 -1
  185. package/dist/components/Slider/Slider.d.ts.map +1 -1
  186. package/dist/components/Slider/index.d.ts +1 -1
  187. package/dist/components/Slider/index.d.ts.map +1 -1
  188. package/dist/components/Slider/index.js +1 -1
  189. package/dist/components/StatusBar/index.js +1 -1
  190. package/dist/components/Switch/index.js +1 -1
  191. package/dist/components/Tabs/index.js +1 -1
  192. package/dist/components/Timeline/Lane.d.ts.map +1 -1
  193. package/dist/components/Timeline/index.js +2 -2
  194. package/dist/components/Timeline/keys.d.ts +1 -1
  195. package/dist/components/Timeline/keys.d.ts.map +1 -1
  196. package/dist/components/Toast/index.js +1 -1
  197. package/dist/components/ToggleBar/index.js +1 -1
  198. package/dist/components/TokenPanel/TokenPanel.d.ts +33 -0
  199. package/dist/components/TokenPanel/TokenPanel.d.ts.map +1 -0
  200. package/dist/components/TokenPanel/color.d.ts +7 -0
  201. package/dist/components/TokenPanel/color.d.ts.map +1 -0
  202. package/dist/components/TokenPanel/index.d.ts +5 -0
  203. package/dist/components/TokenPanel/index.d.ts.map +1 -0
  204. package/dist/components/TokenPanel/index.js +2 -0
  205. package/dist/components/TokenPanel/tokenTypes.d.ts +31 -0
  206. package/dist/components/TokenPanel/tokenTypes.d.ts.map +1 -0
  207. package/dist/components/ToolButton/index.js +1 -1
  208. package/dist/components/ToolGroup/index.js +1 -1
  209. package/dist/components/ToolPalette/index.js +1 -1
  210. package/dist/components/paintValue.d.ts +8 -0
  211. package/dist/components/paintValue.d.ts.map +1 -1
  212. package/dist/handles.d.ts +20 -0
  213. package/dist/handles.d.ts.map +1 -0
  214. package/dist/icons/Icon.d.ts +10 -2
  215. package/dist/icons/Icon.d.ts.map +1 -1
  216. package/dist/icons/index.d.ts +6 -3
  217. package/dist/icons/index.d.ts.map +1 -1
  218. package/dist/icons/paths.d.ts +270 -16
  219. package/dist/icons/paths.d.ts.map +1 -1
  220. package/dist/index.d.ts +7 -0
  221. package/dist/index.d.ts.map +1 -1
  222. package/dist/index.js +75 -70
  223. package/dist/index.js.map +1 -1
  224. package/dist/paintPreview.d.ts +13 -0
  225. package/dist/paintPreview.d.ts.map +1 -0
  226. package/dist/{components/CurveEditor/snap.d.ts → snap.d.ts} +2 -0
  227. package/dist/snap.d.ts.map +1 -0
  228. package/dist/style.css +1 -1
  229. package/package.json +8 -7
  230. package/dist/chunks/BandEditor-BeWO56_w.js.map +0 -1
  231. package/dist/chunks/CurveEditor-Cj0lLiyR.js.map +0 -1
  232. package/dist/chunks/DetentSlider-CYicfnKr.js +0 -83
  233. package/dist/chunks/DetentSlider-CYicfnKr.js.map +0 -1
  234. package/dist/chunks/GradientEditor-dBprHbS0.js.map +0 -1
  235. package/dist/chunks/Icon-DBXtBB1f.js +0 -101
  236. package/dist/chunks/Icon-DBXtBB1f.js.map +0 -1
  237. package/dist/chunks/Keycaps-DSeq6QWH.js.map +0 -1
  238. package/dist/chunks/PaintInput-DAevU7fd.js +0 -118
  239. package/dist/chunks/PaintInput-DAevU7fd.js.map +0 -1
  240. package/dist/chunks/Prefs-CzIn-hlq.js +0 -302
  241. package/dist/chunks/Prefs-CzIn-hlq.js.map +0 -1
  242. package/dist/chunks/Properties-DJaDEJkT.js +0 -765
  243. package/dist/chunks/Properties-DJaDEJkT.js.map +0 -1
  244. package/dist/chunks/Select-CacMfs4v.js.map +0 -1
  245. package/dist/chunks/Slider--DFRC_hc.js +0 -303
  246. package/dist/chunks/Slider--DFRC_hc.js.map +0 -1
  247. package/dist/chunks/Timeline-DOZgb1CG.js.map +0 -1
  248. package/dist/chunks/ToggleBar-Bxwv6xvj.js.map +0 -1
  249. package/dist/chunks/createKeyframeLayer-AL4jP0EX.js.map +0 -1
  250. package/dist/chunks/icons-BV27dhKB.js.map +0 -1
  251. package/dist/chunks/range.module-CvSfABmu.js +0 -8
  252. package/dist/chunks/range.module-CvSfABmu.js.map +0 -1
  253. package/dist/chunks/segmentedControl.module-BgvAPkSZ.js +0 -11
  254. package/dist/chunks/segmentedControl.module-BgvAPkSZ.js.map +0 -1
  255. package/dist/components/CurveEditor/snap.d.ts.map +0 -1
package/dist/index.js CHANGED
@@ -1,85 +1,90 @@
1
1
  import { n as e, t } from "./chunks/dlog-CMYiRF3Q.js";
2
- import { n, t as r } from "./chunks/Icon-DBXtBB1f.js";
3
- import { $ as i, A as a, B as o, C as s, D as c, E as l, F as u, G as d, H as f, I as p, J as m, K as ee, L as te, M as ne, N as re, O as ie, P as h, Q as g, R as _, S as v, T as y, U as b, V as x, W as S, X as C, Y as w, Z as T, _ as E, a as D, at as O, b as k, c as A, ct as j, d as M, dt as N, et as P, f as F, ft as I, g as L, h as R, i as z, it as B, j as V, k as H, l as U, lt as W, m as G, n as K, nt as q, o as J, ot as Y, p as ae, q as oe, r as se, rt as ce, s as le, st as ue, t as de, tt as fe, u as pe, ut as me, v as he, w as ge, x as _e, y as ve, z as ye } from "./chunks/icons-BV27dhKB.js";
4
- import { i as be, n as xe, r as Se, t as Ce } from "./chunks/Prefs-CzIn-hlq.js";
5
- import { n as we, r as Te, t as Ee } from "./chunks/portalHost-CjpCnuGU.js";
6
- import { n as De, t as Oe } from "./chunks/Tooltip-BHre_vbI.js";
7
- import { t as ke } from "./chunks/ActionBar-DxGp3WuZ.js";
8
- import { n as Ae, t as je } from "./chunks/Badge-Bf8Rd1R6.js";
2
+ import { a as n, i as r, n as i, r as a, t as o } from "./chunks/Icon-QhLhaGFe.js";
3
+ import { $ as s, A as c, B as l, C as u, D as d, E as f, F as p, G as m, H as ee, I as te, J as ne, K as re, L as ie, M as h, N as g, O as _, P as v, Q as y, R as b, S as x, T as S, U as C, V as w, W as T, X as E, Y as D, Z as O, _ as k, a as A, at as j, b as M, c as N, ct as P, d as F, dt as I, et as L, f as R, ft as z, g as B, h as V, i as H, it as U, j as W, k as G, l as K, lt as q, m as J, mt as Y, n as ae, nt as oe, o as se, ot as ce, p as le, pt as ue, q as de, r as fe, rt as pe, s as me, st as he, t as ge, tt as _e, u as ve, ut as ye, v as be, w as xe, x as Se, y as Ce, z as we } from "./chunks/icons-Btrs-JD7.js";
4
+ import { i as Te, n as Ee, r as De, t as Oe } from "./chunks/Prefs-FuaJBs3t.js";
5
+ import { n as ke, r as Ae, t as je } from "./chunks/portalHost-CjpCnuGU.js";
6
+ import { n as Me, t as Ne } from "./chunks/Tooltip-BHre_vbI.js";
7
+ import { t as Pe } from "./chunks/ActionBar-GZdcfdQL.js";
8
+ import { n as Fe, t as Ie } from "./chunks/Badge-Bf8Rd1R6.js";
9
9
  import "./components/Badge/index.js";
10
- import { t as Me } from "./chunks/Button-CExdkQcU.js";
11
- import { t as Ne } from "./chunks/useReorderDragList-CSQGd7zQ.js";
12
- import { t as Pe } from "./chunks/DataGrid-BVdDMZkQ.js";
13
- import { n as Fe, t as Ie } from "./chunks/Disclosure-DiA6UKdM.js";
14
- import { t as Le } from "./chunks/DragHandleGlyph-CppAz4_8.js";
15
- import { a as Re, i as ze, n as Be, o as Ve, r as He, t as Ue } from "./chunks/Keycaps-DSeq6QWH.js";
16
- import { t as We } from "./chunks/keyGlyph-Bp0wnLHn.js";
17
- import { t as Ge } from "./chunks/LayerStack-DOylrQcm.js";
18
- import { t as Ke } from "./chunks/Slider--DFRC_hc.js";
19
- import { a as qe, i as Je, n as Ye, o as Xe, r as Ze, t as Qe } from "./chunks/number-f6PydOZK.js";
20
- import { t as $e } from "./chunks/ItemList-BZJQReXD.js";
21
- import { t as et } from "./chunks/ToggleBar-Bxwv6xvj.js";
22
- import { t as tt } from "./chunks/useRovingTabIndex-Dkpf_KhN.js";
23
- import { t as nt } from "./chunks/OptionsBar-D_Cd3ZYs.js";
24
- import { t as rt } from "./chunks/ActionsBar-D1VFreoj.js";
25
- import { t as it } from "./chunks/ToolOptionsBar-B2xPWzJf.js";
26
- import { t as at } from "./chunks/InlineRange-CcfzY80y.js";
27
- import { t as ot } from "./chunks/ColorField-C20aRvCg.js";
28
- import { i as st, n as ct, r as lt, t as ut } from "./chunks/GradientEditor-dBprHbS0.js";
29
- import { n as dt, t as ft } from "./chunks/PatternPicker-Ba22Bf4L.js";
30
- import { t as pt } from "./chunks/PaintInput-DAevU7fd.js";
31
- import { t as mt } from "./chunks/Powerline-BaHDJlcO.js";
32
- import { t as ht } from "./chunks/Checkbox-D-pVpobU.js";
33
- import { n as gt, t as _t } from "./chunks/Field-dzlxOGxT.js";
34
- import { n as vt, t as yt } from "./chunks/Select-CacMfs4v.js";
35
- import { t as bt } from "./chunks/FontFamilySelect-DIJ4phXz.js";
36
- import { t as xt } from "./chunks/Input-CoKOtyD0.js";
37
- import { n as St, t as Ct } from "./chunks/NumberField-BWzhqS19.js";
38
- import { n as wt, t as Tt } from "./chunks/RadioGroup-B2_LUgDp.js";
39
- import { t as Et } from "./chunks/RangeSlider-S2R3zA8N.js";
40
- import { t as Dt } from "./chunks/Switch-C4NU-me1.js";
41
- import { a as Ot, i as kt, n as At, t as jt } from "./chunks/schema-CPdFNeP6.js";
42
- import { t as Mt } from "./chunks/Dialog-CYBLjwbd.js";
43
- import { a as Nt, c as Pt, i as Ft, n as It, o as Lt, r as Rt, s as zt, t as Bt } from "./chunks/Plot2D-CVZwQpWJ.js";
44
- import { a as Vt, i as Ht, n as Ut, r as Wt, t as Gt } from "./chunks/CurveEditor-Cj0lLiyR.js";
45
- import { a as Kt, i as qt, n as Jt, r as Yt, t as Xt } from "./chunks/createKeyframeLayer-AL4jP0EX.js";
46
- import { a as Zt, c as Qt, d as $t, f as en, g as tn, h as nn, i as rn, l as an, m as on, n as sn, o as cn, p as ln, r as un, s as dn, t as fn, u as pn } from "./chunks/Properties-DJaDEJkT.js";
47
- import { a as mn, c as hn, i as gn, n as _n, o as vn, r as yn, s as bn, t as xn } from "./chunks/SelectionPanel-CbyUT3Dh.js";
48
- import { t as Sn } from "./chunks/ResizeHandle-CiExUWP-.js";
49
- import { t as Cn } from "./chunks/Sidebar-Cqcfx3_s.js";
50
- import { t as wn } from "./chunks/SidebarPanel-BLzBo0S2.js";
51
- import { n as Tn, r as En, t as Dn } from "./chunks/StatusBar-B9NQ8atD.js";
52
- import { t as On } from "./chunks/ToolButton-B81YjdwO.js";
53
- import { t as kn } from "./chunks/ToolGroup-D7juDOC_.js";
54
- import { n as An, r as jn, t as Mn } from "./chunks/ToolPalette-BSzmRJS7.js";
10
+ import { t as Le } from "./chunks/Button-CExdkQcU.js";
11
+ import { t as Re } from "./chunks/useReorderDragList-CSQGd7zQ.js";
12
+ import { t as ze } from "./chunks/DataGrid-BVdDMZkQ.js";
13
+ import { n as Be, t as Ve } from "./chunks/Disclosure-9UgDzc7Z.js";
14
+ import { t as He } from "./chunks/DragHandleGlyph-CppAz4_8.js";
15
+ import { a as Ue, i as We, n as Ge, o as Ke, r as qe, t as Je } from "./chunks/Keycaps-CGNQV2Pz.js";
16
+ import { t as Ye } from "./chunks/keyGlyph-Bp0wnLHn.js";
17
+ import { t as Xe } from "./chunks/LayerStack-DOylrQcm.js";
18
+ import { t as Ze } from "./chunks/Slider-B2ywUZH6.js";
19
+ import { a as Qe, i as $e, n as et, o as tt, r as nt, t as rt } from "./chunks/number-f6PydOZK.js";
20
+ import { t as it } from "./chunks/ItemList-BZJQReXD.js";
21
+ import { t as at } from "./chunks/ToggleBar--9As2PWG.js";
22
+ import { t as ot } from "./chunks/useRovingTabIndex-Dkpf_KhN.js";
23
+ import { t as st } from "./chunks/OptionsBar-BWaYG_OH.js";
24
+ import { t as ct } from "./chunks/ActionsBar-Fhx_40iP.js";
25
+ import { t as lt } from "./chunks/ToolOptionsBar-B2xPWzJf.js";
26
+ import { t as ut } from "./chunks/InlineRange-DdIlfGqG.js";
27
+ import { t as dt } from "./chunks/ColorField-YVf8irfr.js";
28
+ import { i as ft, n as pt, r as mt, t as ht } from "./chunks/GradientEditor-B_ymIr4Q.js";
29
+ import { n as gt, r as _t, t as vt } from "./chunks/MeshEditor-CHoGQ9K8.js";
30
+ import { n as yt, t as bt } from "./chunks/PatternPicker-C4OryrYi.js";
31
+ import { t as xt } from "./chunks/PaintInput-BzAHCKro.js";
32
+ import { t as St } from "./chunks/PaintField-BVYMu3OI.js";
33
+ import { t as Ct } from "./chunks/Powerline-B_EH-7Z-.js";
34
+ import { t as wt } from "./chunks/Checkbox-BZZsPaVF.js";
35
+ import { n as Tt, t as Et } from "./chunks/Field-BNqvUJfg.js";
36
+ import { n as Dt, t as Ot } from "./chunks/Select-BMYVh10x.js";
37
+ import { t as kt } from "./chunks/FontFamilySelect-CO19kyOO.js";
38
+ import { t as At } from "./chunks/Input-B9Vh7ASP.js";
39
+ import { n as jt, t as Mt } from "./chunks/NumberField-CQzS6TjF.js";
40
+ import { n as Nt, t as Pt } from "./chunks/RadioGroup-C6xpdQNg.js";
41
+ import { t as Ft } from "./chunks/RangeSlider-CzgeGLVS.js";
42
+ import { t as It } from "./chunks/Switch-Om3t3ASc.js";
43
+ import { a as Lt, i as Rt, n as zt, t as Bt } from "./chunks/schema-MCVT1MLv.js";
44
+ import { t as Vt } from "./chunks/Dialog-DuOzsR2g.js";
45
+ import { a as Ht, c as Ut, i as Wt, n as Gt, o as Kt, r as qt, s as Jt, t as Yt } from "./chunks/Plot2D-Czvyt_vG.js";
46
+ import { a as Xt, i as Zt, n as Qt, r as $t, t as en } from "./chunks/CurveEditor-BXiMoN9d.js";
47
+ import { c as tn, i as nn, n as rn, o as an, r as on, s as sn, t as cn } from "./chunks/createKeyframeLayer-7j7ukrSx.js";
48
+ import { t as ln } from "./chunks/snap-B0WQwetQ.js";
49
+ import { _ as un, a as dn, c as fn, d as pn, f as mn, g as hn, h as gn, i as _n, l as vn, m as yn, n as bn, o as xn, p as Sn, r as Cn, s as wn, t as Tn, u as En, v as Dn } from "./chunks/Properties-B3KU69NI.js";
50
+ import { a as On, c as kn, i as An, n as jn, o as Mn, r as Nn, s as Pn, t as Fn } from "./chunks/SelectionPanel-DTpcQidl.js";
51
+ import { t as In } from "./chunks/ResizeHandle-1Ey8AOij.js";
52
+ import { t as Ln } from "./chunks/Sidebar-BlUjn8lD.js";
53
+ import { t as Rn } from "./chunks/SidebarPanel-BqHfz6VK.js";
54
+ import { n as zn, r as Bn, t as Vn } from "./chunks/StatusBar-BFt7Yw5O.js";
55
+ import { t as Hn } from "./chunks/ToolButton-Dd-1T5aX.js";
56
+ import { t as Un } from "./chunks/ToolGroup-BBI-W-Gm.js";
57
+ import { n as Wn, r as Gn, t as Kn } from "./chunks/ToolPalette-BmTDDpmz.js";
55
58
  import "./components/Field/index.js";
56
- import { i as Nn, n as Pn, r as Fn, t as In } from "./chunks/Tabs-9sODd2Ut.js";
57
- import { t as Ln } from "./chunks/MenuButton-Do8fFUx1.js";
58
- import { n as Rn, t as zn } from "./chunks/ComboBox-CPES6Y1i.js";
59
- import { t as Bn } from "./chunks/DetentSlider-CYicfnKr.js";
60
- import { n as Vn, t as Hn } from "./chunks/Callout-BPIA2is-.js";
61
- import { a as Un, i as Wn, n as Gn, r as Kn, t as qn } from "./chunks/Toast-LpN1WK8E.js";
62
- import { t as Jn } from "./chunks/PointPlotter-anTHwz8f.js";
63
- import { n as Yn, r as Xn, t as X } from "./chunks/BandEditor-BeWO56_w.js";
64
- import { a as Zn, c as Qn, i as $n, l as er, n as tr, o as nr, r as rr, s as ir, t as ar } from "./chunks/Timeline-DOZgb1CG.js";
65
- import { oklabToSrgbU8 as or, oklchToOklab as sr, rgbaToHex as cr } from "@weasel-js/core";
66
- import { useCallback as lr, useEffect as Z, useRef as Q, useState as $ } from "react";
59
+ import { i as qn, n as Jn, r as Yn, t as Xn } from "./chunks/Tabs-EAvYywil.js";
60
+ import { t as Zn } from "./chunks/MenuButton-DGE-0DP0.js";
61
+ import { n as Qn, t as $n } from "./chunks/ComboBox-D57tNYDD.js";
62
+ import { t as er } from "./chunks/DetentSlider-BWNSv07Z.js";
63
+ import { n as tr, t as nr } from "./chunks/Callout-cx5_CWcW.js";
64
+ import { a as rr, i as ir, n as ar, r as or, t as sr } from "./chunks/Toast-iqLDD_XZ.js";
65
+ import { t as cr } from "./chunks/PointPlotter-Xvb98GwB.js";
66
+ import { i as lr, n as ur, r as X, t as dr } from "./chunks/TokenPanel-BL9hlq7x.js";
67
+ import { n as fr, r as pr, t as mr } from "./chunks/BandEditor-D8I5Uun-.js";
68
+ import { t as hr } from "./chunks/Jog-BYrxbAQU.js";
69
+ import { a as gr, c as _r, i as vr, l as yr, n as br, o as xr, r as Sr, s as Cr, t as wr } from "./chunks/Timeline-BEyKaBXl.js";
70
+ import { oklabToSrgbU8 as Tr, oklchToOklab as Er, rgbaToHex as Dr } from "@weasel-js/core";
71
+ import { useCallback as Or, useEffect as Z, useRef as Q, useState as $ } from "react";
67
72
  //#region src/color/oklch.ts
68
- function ur(e, t, n) {
69
- let [r, i, a] = sr(e, t, n * Math.PI / 180), [o, s, c] = or(r, i, a);
70
- return cr([
73
+ function kr(e, t, n) {
74
+ let [r, i, a] = Er(e, t, n * Math.PI / 180), [o, s, c] = Tr(r, i, a);
75
+ return Dr([
71
76
  o / 255,
72
77
  s / 255,
73
78
  c / 255
74
79
  ]);
75
80
  }
76
- function dr(e, t) {
81
+ function Ar(e, t) {
77
82
  let [n, r] = t.lRange;
78
83
  return e <= n ? t.cBot : e >= r ? t.cTop : e <= t.midL ? t.cBot + (t.cPeak - t.cBot) * ((e - n) / (t.midL - n)) : t.cPeak + (t.cTop - t.cPeak) * ((e - t.midL) / (r - t.midL));
79
84
  }
80
85
  //#endregion
81
86
  //#region src/useAsyncOptions.ts
82
- function fr({ load: e, debounceMs: t = 150, minLength: n = 0 }) {
87
+ function jr({ load: e, debounceMs: t = 150, minLength: n = 0 }) {
83
88
  let [r, i] = $(""), [a, o] = $([]), [s, c] = $(!1), [l, u] = $(null), d = Q(e);
84
89
  d.current = e;
85
90
  let f = Q(0), p = Q(0), m = Q(null);
@@ -106,10 +111,10 @@ function fr({ load: e, debounceMs: t = 150, minLength: n = 0 }) {
106
111
  isLoading: s,
107
112
  loadError: l,
108
113
  inputValue: r,
109
- onInputChange: lr((e) => i(e), [])
114
+ onInputChange: Or((e) => i(e), [])
110
115
  };
111
116
  }
112
117
  //#endregion
113
- export { ke as ActionBar, rt as ActionsBar, de as AddIcon, ar as AnimatedTimeline, K as ArrowIcon, je as Badge, X as BandEditor, se as BusyIcon, Me as Button, Hn as Callout, Vn as CalloutTrigger, ht as Checkbox, Zt as CheckboxRow, z as ChevronIcon, D as CloneIcon, J as CloseIcon, le as CollapseIcon, ot as ColorField, cn as ColorRow, zn as ComboBox, Rn as ComboBoxItem, A as CompareIcon, U as CrosshairIcon, Ut as CurveEditor, tn as CurveField, Pe as DataGrid, pe as DeleteIcon, Bn as DetentSlider, Mt as Dialog, Ie as Disclosure, Fe as DisclosureRow, Le as DragHandleGlyph, nr as EASING_NAMES, Ae as EDGE_PROFILES, Zn as EasingPicker, sn as EffectCard, un as EffectCardList, M as EllipseIcon, F as ErrorIcon, ae as ExpandIcon, G as ExportIcon, R as EyedropperIcon, _t as Field, L as FilterIcon, E as FitIcon, bt as FontFamilySelect, he as FullscreenIcon, lt as GradientEditor, ct as GradientHandles, ve as GridIcon, k as HandIcon, _e as HiddenIcon, n as ICON_PATHS, r as Icon, v as ImageIcon, s as InfoIcon, at as InlineRange, xt as Input, $e as ItemList, Re as KeyCap, ze as KeySequence, ge as LassoIcon, Ge as LayerStack, Kt as LayeredCurveEditor, y as LayersIcon, l as LayoutColumnsIcon, c as LayoutGridIcon, ie as LayoutRowsIcon, H as LineIcon, a as LinkIcon, V as LockIcon, ne as LoupeIcon, Qe as MINUS_SIGN, _n as MIXED, re as MeasureIcon, Ln as MenuButton, h as ModeAutoIcon, u as ModeDarkIcon, p as ModeLightIcon, St as NumberField, dn as NumberRow, nt as OptionsBar, Ee as OverlayPortalProvider, pt as PaintInput, te as PanIcon, ft as PatternPicker, _ as PauseIcon, ye as PenIcon, o as PencilIcon, x as PinIcon, f as PlayIcon, Bt as Plot2D, Jn as PointPlotter, b as PolygonIcon, mt as Powerline, Ce as PrefsDialog, xe as PrefsForm, fn as PropertyGroup, Qt as PropertyList, an as PropertyPanel, pn as PropertyRow, $t as PropertySpan, Tt as Radio, wt as RadioGroup, S as RandomizeIcon, Et as RangeSlider, d as RectIcon, ee as RedoIcon, oe as RefreshIcon, m as RemoveIcon, w as ResetIcon, Sn as ResizeHandle, ut as SceneGradientHandles, C as SearchIcon, yt as Select, T as SelectIcon, vt as SelectItem, en as SelectRow, xn as SelectionPanel, Cn as Sidebar, wn as SidebarPanel, Ke as Slider, ln as SliderRow, g as SnapIcon, i as SnapshotIcon, P as SortIcon, fe as StarIcon, Dn as StatusBar, Tn as StatusBarItem, En as StatusBarSpacer, q as StepIcon, ce as StopIcon, rn as Subpanel, Dt as Switch, In as Tab, Pn as TabList, Fn as TabPanel, Nn as Tabs, B as TextIcon, on as TextRow, tr as Timeline, Gn as ToastQueue, qn as ToastRegion, et as ToggleBar, nn as ToggleRow, On as ToolButton, kn as ToolGroup, it as ToolOptionsBar, Mn as ToolPalette, Oe as Tooltip, De as TooltipTrigger, rr as Transport, O as TuneIcon, Y as UndoIcon, Ct as UnitField, ue as UnknownIcon, j as UnlockIcon, W as VisibleIcon, me as WarningIcon, N as ZoomInIcon, I as ZoomOutIcon, yn as aggregateValue, Xt as applyKeyframeDrag, dr as chromaAt, gn as classifyKind, Wt as createFunctionLayer, Jt as createKeyframeLayer, Gt as createSetCurveOp, Kn as createToastQueue, Wn as defaultToastQueue, Ue as detectPlatform, t as dlog, ir as easingBezier, Qn as easingLabel, mn as effectiveSections, gt as fieldClasses, Ye as formatCompact, Ze as formatNumber, An as formatShortcut, jn as formatShortcutParts, It as formatTick, Je as formatZoom, Ht as functionLayerState, Ve as inferKeycapKind, e as isDebugEnabled, jt as isPrefLeaf, We as keyGlyph, Be as keySpecFromKey, He as keySpecsFromMods, Yt as keyframeLayerState, vn as kindBreakdown, Yn as linearScale, Xn as logScale, zt as modelToPlot, we as nearestPortalHost, Rt as niceStep, Ft as niceTicks, bn as nodeValueAt, ur as oklchToHex, st as paintGradientTrack, qe as parseNumber, Xe as parseSignedNumber, Pt as plotToModel, At as prefDisplayBounds, kt as prefValueAtPath, $n as samePath, Vt as sampleByInterpolation, er as sampleEasing, dt as seedPattern, hn as setAtPath, qt as snapToNearest, Se as solidColorOf, Nt as stepDecimals, be as strokeColorOf, Lt as tickDecimals, Un as toast, fr as useAsyncOptions, Te as useOverlayPortal, Ne as useReorderDragList, tt as useRovingTabIndex, Ot as visiblePrefSubtree };
118
+ export { Pe as ActionBar, ct as ActionsBar, ge as AddIcon, wr as AnimatedTimeline, ae as ArrowIcon, Ie as Badge, mr as BandEditor, fe as BusyIcon, Le as Button, nr as Callout, tr as CalloutTrigger, wt as Checkbox, dn as CheckboxRow, H as ChevronIcon, A as CloneIcon, se as CloseIcon, me as CollapseIcon, dt as ColorField, xn as ColorRow, $n as ComboBox, Qn as ComboBoxItem, N as CompareIcon, K as CrosshairIcon, Qt as CurveEditor, Dn as CurveField, ze as DataGrid, ve as DeleteIcon, er as DetentSlider, Vt as Dialog, Ve as Disclosure, Be as DisclosureRow, He as DragHandleGlyph, xr as EASING_NAMES, Fe as EDGE_PROFILES, gr as EasingPicker, bn as EffectCard, Cn as EffectCardList, F as EllipseIcon, R as ErrorIcon, le as ExpandIcon, J as ExportIcon, V as EyedropperIcon, Et as Field, B as FilterIcon, k as FitIcon, kt as FontFamilySelect, be as FullscreenIcon, mt as GradientEditor, pt as GradientHandles, Ce as GridIcon, an as HANDLE_SIZE_TOKENS, M as HandIcon, Se as HiddenIcon, a as ICON_FILLS, r as ICON_GROUPS, n as ICON_PATHS, o as Icon, x as ImageIcon, u as InfoIcon, ut as InlineRange, At as Input, it as ItemList, hr as Jog, Ue as KeyCap, We as KeySequence, xe as LassoIcon, Xe as LayerStack, nn as LayeredCurveEditor, S as LayersIcon, f as LayoutColumnsIcon, d as LayoutGridIcon, _ as LayoutRowsIcon, G as LineIcon, c as LinkIcon, W as LockIcon, h as LoupeIcon, rt as MINUS_SIGN, jn as MIXED, g as MeasureIcon, Zn as MenuButton, vt as MeshEditor, v as ModeAutoIcon, p as ModeDarkIcon, te as ModeLightIcon, jt as NumberField, wn as NumberRow, st as OptionsBar, je as OverlayPortalProvider, St as PaintField, xt as PaintInput, ie as PanIcon, bt as PatternPicker, b as PauseIcon, we as PenIcon, l as PencilIcon, un as PinDot, w as PinIcon, ee as PlayIcon, Yt as Plot2D, cr as PointPlotter, C as PolygonIcon, Ct as Powerline, Oe as PrefsDialog, Ee as PrefsForm, Tn as PropertyGroup, fn as PropertyList, vn as PropertyPanel, En as PropertyRow, pn as PropertySpan, Pt as Radio, Nt as RadioGroup, T as RandomizeIcon, Ft as RangeSlider, m as RectIcon, re as RedoIcon, de as RefreshIcon, ne as RemoveIcon, D as ResetIcon, In as ResizeHandle, ht as SceneGradientHandles, E as SearchIcon, Ot as Select, O as SelectIcon, Dt as SelectItem, mn as SelectRow, Fn as SelectionPanel, Ln as Sidebar, Rn as SidebarPanel, Ze as Slider, Sn as SliderRow, y as SnapIcon, s as SnapshotIcon, L as SortIcon, _e as StarIcon, Vn as StatusBar, zn as StatusBarItem, Bn as StatusBarSpacer, oe as StepBackIcon, pe as StepForwardIcon, U as StepIcon, j as StopIcon, _n as Subpanel, It as Switch, yn as SwitchRow, ur as TOKEN_CATEGORIES, Xn as Tab, Jn as TabList, Yn as TabPanel, qn as Tabs, ce as TextIcon, gn as TextRow, br as Timeline, ar as ToastQueue, sr as ToastRegion, at as ToggleBar, hn as ToggleRow, dr as TokenPanel, Hn as ToolButton, Un as ToolGroup, lt as ToolOptionsBar, Kn as ToolPalette, Ne as Tooltip, Me as TooltipTrigger, vr as Transport, he as TuneIcon, P as UndoIcon, Mt as UnitField, q as UnknownIcon, ye as UnlockIcon, I as VisibleIcon, z as WarningIcon, ue as ZoomInIcon, Y as ZoomOutIcon, Nn as aggregateValue, cn as applyKeyframeDrag, Ar as chromaAt, An as classifyKind, $t as createFunctionLayer, rn as createKeyframeLayer, en as createSetCurveOp, or as createToastQueue, ir as defaultToastQueue, Je as detectPlatform, t as dlog, Cr as easingBezier, _r as easingLabel, On as effectiveSections, Tt as fieldClasses, et as formatCompact, nt as formatNumber, Wn as formatShortcut, Gn as formatShortcutParts, Gt as formatTick, $e as formatZoom, Zt as functionLayerState, sn as handleHalf, tn as handleSize, Ke as inferKeycapKind, X as inferTokenType, e as isDebugEnabled, i as isFillable, gt as isMeshPaint, Bt as isPrefLeaf, Ye as keyGlyph, Ge as keySpecFromKey, qe as keySpecsFromMods, on as keyframeLayerState, Mn as kindBreakdown, fr as linearScale, pr as logScale, Jt as modelToPlot, ke as nearestPortalHost, qt as niceStep, Wt as niceTicks, Pn as nodeValueAt, kr as oklchToHex, ft as paintGradientTrack, _t as paintPreviewCss, Qe as parseNumber, tt as parseSignedNumber, Ut as plotToModel, zt as prefDisplayBounds, Rt as prefValueAtPath, Sr as samePath, Xt as sampleByInterpolation, yr as sampleEasing, yt as seedPattern, kn as setAtPath, ln as snapToNearest, De as solidColorOf, Ht as stepDecimals, Te as strokeColorOf, Kt as tickDecimals, rr as toast, lr as tokenCategory, jr as useAsyncOptions, Ae as useOverlayPortal, Re as useReorderDragList, ot as useRovingTabIndex, Lt as visiblePrefSubtree };
114
119
 
115
120
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../src/color/oklch.ts","../src/useAsyncOptions.ts"],"sourcesContent":["// OKLCH math from Björn Ottosson: https://bottosson.github.io/posts/oklab/\nimport { oklchToOklab, oklabToSrgbU8, rgbaToHex } from '@weasel-js/core';\n\n/**\n * A chroma envelope over lightness, as three linear segments: flat at `cBot`\n * below `lRange[0]`, rising to `cPeak` at `midL`, falling to `cTop` at\n * `lRange[1]`, flat beyond. Keeps a color ramp inside gamut at the light and\n * dark ends while staying saturated through the middle.\n */\nexport type ChromaCurve = {\n lRange: [number, number];\n midL: number;\n cBot: number;\n cPeak: number;\n cTop: number;\n};\n\n/** A single lightness/chroma sample. */\nexport type ChromaCurvePoint = { L: number; C: number };\n\n/**\n * Converts an OKLCH color to a gamut-clipped `#rrggbb` string. Hue is in\n * degrees, unlike the kit's OKLab helpers which take radians.\n */\nexport function oklchToHex(L: number, C: number, Hdeg: number): string {\n // Delegate to the kit's OKLab pipeline (kit angle unit is radians) →\n // gamut-clipped u8 sRGB → `#rrggbb`.\n const [l, a, b] = oklchToOklab(L, C, (Hdeg * Math.PI) / 180);\n const [r, g, bl] = oklabToSrgbU8(l, a, b);\n return rgbaToHex([r / 255, g / 255, bl / 255]);\n}\n\n/** Evaluates a {@link ChromaCurve} at a lightness, clamping outside its range. */\nexport function chromaAt(L: number, curve: ChromaCurve): number {\n const [lo, hi] = curve.lRange;\n if (L <= lo) return curve.cBot;\n if (L >= hi) return curve.cTop;\n if (L <= curve.midL) return curve.cBot + (curve.cPeak - curve.cBot) * ((L - lo) / (curve.midL - lo));\n return curve.cPeak + (curve.cTop - curve.cPeak) * ((L - curve.midL) / (hi - curve.midL));\n}\n","import { useCallback, useEffect, useRef, useState } from 'react';\nimport type { ComboBoxOption } from './components/ComboBox/ComboBox';\n\ntype Key = string | number;\n\n/** An option list keyed to the value type its combo box commits. */\nexport type AsyncOption<T extends Key> = ComboBoxOption & { value: T };\n\n/** Options for {@link useAsyncOptions}. */\nexport type UseAsyncOptionsProps<T extends Key> = {\n /**\n * Fetches the options for a query. The signal aborts when a later keystroke\n * supersedes this call, so a `fetch` should forward it.\n */\n load: (query: string, signal: AbortSignal) => Promise<ReadonlyArray<AsyncOption<T>>>;\n /** Quiet period before a query is sent. */\n debounceMs?: number;\n /** Shorter queries are not sent, and empty the options. */\n minLength?: number;\n};\n\n/** What {@link useAsyncOptions} returns, shaped to spread into a `ComboBox`. */\nexport type AsyncOptionsResult<T extends Key> = {\n options: ReadonlyArray<AsyncOption<T>>;\n isLoading: boolean;\n loadError: unknown | null;\n inputValue: string;\n onInputChange: (next: string) => void;\n};\n\n/**\n * Drives a combo box whose options come from a server: debounces the query,\n * discards responses overtaken by a later one, and reports a failed load\n * separately from an empty result.\n *\n * `options` holds the last *resolved* list and is never emptied to mean\n * \"working\", so the previous results stay on screen — and stay arrowable —\n * while the next request is in flight.\n */\nexport function useAsyncOptions<T extends Key = string>({\n load,\n debounceMs = 150,\n minLength = 0,\n}: UseAsyncOptionsProps<T>): AsyncOptionsResult<T> {\n const [inputValue, setInputValue] = useState('');\n const [options, setOptions] = useState<ReadonlyArray<AsyncOption<T>>>([]);\n const [isLoading, setIsLoading] = useState(false);\n const [loadError, setLoadError] = useState<unknown | null>(null);\n\n // Read through a ref: a consumer passing an inline arrow re-creates `load`\n // every render, and depending on it directly would refire the request.\n const loadRef = useRef(load);\n loadRef.current = load;\n\n // A monotonic id per request, and the highest one whose result has been\n // applied. A liveness flag cannot do this job: two requests from adjacent\n // keystrokes are both live, so the slower one overwrites the newer result\n // if it lands second.\n const issued = useRef(0);\n const applied = useRef(0);\n const inFlight = useRef<AbortController | null>(null);\n\n useEffect(() => {\n if (inputValue.length < minLength) {\n inFlight.current?.abort();\n inFlight.current = null;\n applied.current = issued.current;\n setOptions([]);\n setIsLoading(false);\n setLoadError(null);\n return;\n }\n\n const timer = setTimeout(() => {\n const mine = ++issued.current;\n const controller = new AbortController();\n inFlight.current?.abort();\n inFlight.current = controller;\n setIsLoading(true);\n\n loadRef.current(inputValue, controller.signal).then(\n (next) => {\n if (mine <= applied.current) return;\n applied.current = mine;\n setOptions(next);\n setLoadError(null);\n setIsLoading(false);\n },\n (error: unknown) => {\n if (controller.signal.aborted || mine <= applied.current) return;\n applied.current = mine;\n setLoadError(error);\n setIsLoading(false);\n },\n );\n }, debounceMs);\n\n return () => clearTimeout(timer);\n }, [inputValue, debounceMs, minLength]);\n\n useEffect(() => () => inFlight.current?.abort(), []);\n\n const onInputChange = useCallback((next: string) => setInputValue(next), []);\n\n return { options, isLoading, loadError, inputValue, onInputChange };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,SAAgB,GAAW,GAAW,GAAW,GAAsB;CAGrE,IAAM,CAAC,GAAG,GAAG,KAAK,GAAa,GAAG,GAAI,IAAO,KAAK,KAAM,IAAI,EACtD,CAAC,GAAG,GAAG,KAAM,GAAc,GAAG,GAAG,EAAE;AACzC,QAAO,GAAU;EAAC,IAAI;EAAK,IAAI;EAAK,IAAK;EAAI,CAAC;;AAIhD,SAAgB,GAAS,GAAW,GAA4B;CAC9D,IAAM,CAAC,GAAI,KAAM,EAAM;AAIvB,QAHI,KAAK,IAAW,EAAM,OACtB,KAAK,IAAW,EAAM,OACtB,KAAK,EAAM,OAAa,EAAM,QAAQ,EAAM,QAAQ,EAAM,UAAU,IAAI,MAAO,EAAM,OAAO,MACzF,EAAM,SAAS,EAAM,OAAO,EAAM,WAAW,IAAI,EAAM,SAAS,IAAK,EAAM;;;;ACCpF,SAAgB,GAAwC,EACtD,SACA,gBAAa,KACb,eAAY,KACqC;CACjD,IAAM,CAAC,GAAY,KAAiB,EAAS,GAAG,EAC1C,CAAC,GAAS,KAAc,EAAwC,EAAE,CAAC,EACnE,CAAC,GAAW,KAAgB,EAAS,GAAM,EAC3C,CAAC,GAAW,KAAgB,EAAyB,KAAK,EAI1D,IAAU,EAAO,EAAK;AAC5B,GAAQ,UAAU;CAMlB,IAAM,IAAS,EAAO,EAAE,EAClB,IAAU,EAAO,EAAE,EACnB,IAAW,EAA+B,KAAK;AA4CrD,QA1CA,QAAgB;AACd,MAAI,EAAW,SAAS,GAAW;AAMjC,GALA,EAAS,SAAS,OAAO,EACzB,EAAS,UAAU,MACnB,EAAQ,UAAU,EAAO,SACzB,EAAW,EAAE,CAAC,EACd,EAAa,GAAM,EACnB,EAAa,KAAK;AAClB;;EAGF,IAAM,IAAQ,iBAAiB;GAC7B,IAAM,IAAO,EAAE,EAAO,SAChB,IAAa,IAAI,iBAAiB;AAKxC,GAJA,EAAS,SAAS,OAAO,EACzB,EAAS,UAAU,GACnB,EAAa,GAAK,EAElB,EAAQ,QAAQ,GAAY,EAAW,OAAO,CAAC,MAC5C,MAAS;AACJ,SAAQ,EAAQ,YACpB,EAAQ,UAAU,GAClB,EAAW,EAAK,EAChB,EAAa,KAAK,EAClB,EAAa,GAAM;OAEpB,MAAmB;AACd,MAAW,OAAO,WAAW,KAAQ,EAAQ,YACjD,EAAQ,UAAU,GAClB,EAAa,EAAM,EACnB,EAAa,GAAM;KAEtB;KACA,EAAW;AAEd,eAAa,aAAa,EAAM;IAC/B;EAAC;EAAY;EAAY;EAAU,CAAC,EAEvC,cAAsB,EAAS,SAAS,OAAO,EAAE,EAAE,CAAC,EAI7C;EAAE;EAAS;EAAW;EAAW;EAAY,eAF9B,IAAa,MAAiB,EAAc,EAAK,EAAE,EAAE,CAEvB;EAAe"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../src/color/oklch.ts","../src/useAsyncOptions.ts"],"sourcesContent":["// OKLCH math from Björn Ottosson: https://bottosson.github.io/posts/oklab/\nimport { oklchToOklab, oklabToSrgbU8, rgbaToHex } from '@weasel-js/core';\n\n/**\n * A chroma envelope over lightness, as three linear segments: flat at `cBot`\n * below `lRange[0]`, rising to `cPeak` at `midL`, falling to `cTop` at\n * `lRange[1]`, flat beyond. Keeps a color ramp inside gamut at the light and\n * dark ends while staying saturated through the middle.\n */\nexport type ChromaCurve = {\n lRange: [number, number];\n midL: number;\n cBot: number;\n cPeak: number;\n cTop: number;\n};\n\n/** A single lightness/chroma sample. */\nexport type ChromaCurvePoint = { L: number; C: number };\n\n/**\n * Converts an OKLCH color to a gamut-clipped `#rrggbb` string. Hue is in\n * degrees, unlike the kit's OKLab helpers which take radians.\n */\nexport function oklchToHex(L: number, C: number, Hdeg: number): string {\n // Delegate to the kit's OKLab pipeline (kit angle unit is radians) →\n // gamut-clipped u8 sRGB → `#rrggbb`.\n const [l, a, b] = oklchToOklab(L, C, (Hdeg * Math.PI) / 180);\n const [r, g, bl] = oklabToSrgbU8(l, a, b);\n return rgbaToHex([r / 255, g / 255, bl / 255]);\n}\n\n/** Evaluates a {@link ChromaCurve} at a lightness, clamping outside its range. */\nexport function chromaAt(L: number, curve: ChromaCurve): number {\n const [lo, hi] = curve.lRange;\n if (L <= lo) return curve.cBot;\n if (L >= hi) return curve.cTop;\n if (L <= curve.midL) return curve.cBot + (curve.cPeak - curve.cBot) * ((L - lo) / (curve.midL - lo));\n return curve.cPeak + (curve.cTop - curve.cPeak) * ((L - curve.midL) / (hi - curve.midL));\n}\n","import { useCallback, useEffect, useRef, useState } from 'react';\nimport type { ComboBoxOption } from './components/ComboBox/ComboBox';\n\ntype Key = string | number;\n\n/** An option list keyed to the value type its combo box commits. */\nexport type AsyncOption<T extends Key> = ComboBoxOption & { value: T };\n\n/** Options for {@link useAsyncOptions}. */\nexport type UseAsyncOptionsProps<T extends Key> = {\n /**\n * Fetches the options for a query. The signal aborts when a later keystroke\n * supersedes this call, so a `fetch` should forward it.\n */\n load: (query: string, signal: AbortSignal) => Promise<ReadonlyArray<AsyncOption<T>>>;\n /** Quiet period before a query is sent. */\n debounceMs?: number;\n /** Shorter queries are not sent, and empty the options. */\n minLength?: number;\n};\n\n/** What {@link useAsyncOptions} returns, shaped to spread into a `ComboBox`. */\nexport type AsyncOptionsResult<T extends Key> = {\n options: ReadonlyArray<AsyncOption<T>>;\n isLoading: boolean;\n loadError: unknown | null;\n inputValue: string;\n onInputChange: (next: string) => void;\n};\n\n/**\n * Drives a combo box whose options come from a server: debounces the query,\n * discards responses overtaken by a later one, and reports a failed load\n * separately from an empty result.\n *\n * `options` holds the last *resolved* list and is never emptied to mean\n * \"working\", so the previous results stay on screen — and stay arrowable —\n * while the next request is in flight.\n */\nexport function useAsyncOptions<T extends Key = string>({\n load,\n debounceMs = 150,\n minLength = 0,\n}: UseAsyncOptionsProps<T>): AsyncOptionsResult<T> {\n const [inputValue, setInputValue] = useState('');\n const [options, setOptions] = useState<ReadonlyArray<AsyncOption<T>>>([]);\n const [isLoading, setIsLoading] = useState(false);\n const [loadError, setLoadError] = useState<unknown | null>(null);\n\n // Read through a ref: a consumer passing an inline arrow re-creates `load`\n // every render, and depending on it directly would refire the request.\n const loadRef = useRef(load);\n loadRef.current = load;\n\n // A monotonic id per request, and the highest one whose result has been\n // applied. A liveness flag cannot do this job: two requests from adjacent\n // keystrokes are both live, so the slower one overwrites the newer result\n // if it lands second.\n const issued = useRef(0);\n const applied = useRef(0);\n const inFlight = useRef<AbortController | null>(null);\n\n useEffect(() => {\n if (inputValue.length < minLength) {\n inFlight.current?.abort();\n inFlight.current = null;\n applied.current = issued.current;\n setOptions([]);\n setIsLoading(false);\n setLoadError(null);\n return;\n }\n\n const timer = setTimeout(() => {\n const mine = ++issued.current;\n const controller = new AbortController();\n inFlight.current?.abort();\n inFlight.current = controller;\n setIsLoading(true);\n\n loadRef.current(inputValue, controller.signal).then(\n (next) => {\n if (mine <= applied.current) return;\n applied.current = mine;\n setOptions(next);\n setLoadError(null);\n setIsLoading(false);\n },\n (error: unknown) => {\n if (controller.signal.aborted || mine <= applied.current) return;\n applied.current = mine;\n setLoadError(error);\n setIsLoading(false);\n },\n );\n }, debounceMs);\n\n return () => clearTimeout(timer);\n }, [inputValue, debounceMs, minLength]);\n\n useEffect(() => () => inFlight.current?.abort(), []);\n\n const onInputChange = useCallback((next: string) => setInputValue(next), []);\n\n return { options, isLoading, loadError, inputValue, onInputChange };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,SAAgB,GAAW,GAAW,GAAW,GAAsB;CAGrE,IAAM,CAAC,GAAG,GAAG,KAAK,GAAa,GAAG,GAAI,IAAO,KAAK,KAAM,IAAI,EACtD,CAAC,GAAG,GAAG,KAAM,GAAc,GAAG,GAAG,EAAE;AACzC,QAAO,GAAU;EAAC,IAAI;EAAK,IAAI;EAAK,IAAK;EAAI,CAAC;;AAIhD,SAAgB,GAAS,GAAW,GAA4B;CAC9D,IAAM,CAAC,GAAI,KAAM,EAAM;AAIvB,QAHI,KAAK,IAAW,EAAM,OACtB,KAAK,IAAW,EAAM,OACtB,KAAK,EAAM,OAAa,EAAM,QAAQ,EAAM,QAAQ,EAAM,UAAU,IAAI,MAAO,EAAM,OAAO,MACzF,EAAM,SAAS,EAAM,OAAO,EAAM,WAAW,IAAI,EAAM,SAAS,IAAK,EAAM;;;;ACCpF,SAAgB,GAAwC,EACtD,SACA,gBAAa,KACb,eAAY,KACqC;CACjD,IAAM,CAAC,GAAY,KAAiB,EAAS,GAAG,EAC1C,CAAC,GAAS,KAAc,EAAwC,EAAE,CAAC,EACnE,CAAC,GAAW,KAAgB,EAAS,GAAM,EAC3C,CAAC,GAAW,KAAgB,EAAyB,KAAK,EAI1D,IAAU,EAAO,EAAK;AAC5B,GAAQ,UAAU;CAMlB,IAAM,IAAS,EAAO,EAAE,EAClB,IAAU,EAAO,EAAE,EACnB,IAAW,EAA+B,KAAK;AA4CrD,QA1CA,QAAgB;AACd,MAAI,EAAW,SAAS,GAAW;AAMjC,GALA,EAAS,SAAS,OAAO,EACzB,EAAS,UAAU,MACnB,EAAQ,UAAU,EAAO,SACzB,EAAW,EAAE,CAAC,EACd,EAAa,GAAM,EACnB,EAAa,KAAK;AAClB;;EAGF,IAAM,IAAQ,iBAAiB;GAC7B,IAAM,IAAO,EAAE,EAAO,SAChB,IAAa,IAAI,iBAAiB;AAKxC,GAJA,EAAS,SAAS,OAAO,EACzB,EAAS,UAAU,GACnB,EAAa,GAAK,EAElB,EAAQ,QAAQ,GAAY,EAAW,OAAO,CAAC,MAC5C,MAAS;AACJ,SAAQ,EAAQ,YACpB,EAAQ,UAAU,GAClB,EAAW,EAAK,EAChB,EAAa,KAAK,EAClB,EAAa,GAAM;OAEpB,MAAmB;AACd,MAAW,OAAO,WAAW,KAAQ,EAAQ,YACjD,EAAQ,UAAU,GAClB,EAAa,EAAM,EACnB,EAAa,GAAM;KAEtB;KACA,EAAW;AAEd,eAAa,aAAa,EAAM;IAC/B;EAAC;EAAY;EAAY;EAAU,CAAC,EAEvC,cAAsB,EAAS,SAAS,OAAO,EAAE,EAAE,CAAC,EAI7C;EAAE;EAAS;EAAW;EAAW;EAAY,eAF9B,IAAa,MAAiB,EAAc,EAAK,EAAE,EAAE,CAEvB;EAAe"}
@@ -0,0 +1,13 @@
1
+ import { type FillStyle } from '@weasel-js/core';
2
+ /**
3
+ * `paint` as a CSS `background` value, or `undefined` for a paint with no CSS
4
+ * form — a pattern, a registered kind — which a caller shows as a checker or
5
+ * a placeholder rather than as an invented color.
6
+ *
7
+ * Gradient geometry is honored as far as CSS can carry it: the angle of a
8
+ * linear gradient, the center of a radial or conic one. A paint in `'world'`
9
+ * or `'local'` units is measured in the scene rather than in the chip, so its
10
+ * preview shows the ramp and not the placement.
11
+ */
12
+ export declare function paintPreviewCss(paint: FillStyle | null | undefined): string | undefined;
13
+ //# sourceMappingURL=paintPreview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paintPreview.d.ts","sourceRoot":"","sources":["../src/paintPreview.ts"],"names":[],"mappings":"AASA,OAAO,EAAuB,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAkDtE;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CA0BvF"}
@@ -1,3 +1,5 @@
1
+ /** How close, in screen pixels, a drag has to come to a candidate to snap to it. */
2
+ export declare const SNAP_RADIUS_PX = 6;
1
3
  /** Snap `value` to the nearest candidate within `tolerance`, else return it. */
2
4
  export declare function snapToNearest(value: number, candidates: readonly number[], tolerance: number): number;
3
5
  //# sourceMappingURL=snap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snap.d.ts","sourceRoot":"","sources":["../src/snap.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC,gFAAgF;AAChF,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAWrG"}