@weasel-js/ui 1.7.3 → 1.8.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 (306) hide show
  1. package/dist/chunks/{ActionBar-xA73vzzF.js → ActionBar-CfXS7-9f.js} +2 -2
  2. package/dist/chunks/{ActionBar-xA73vzzF.js.map → ActionBar-CfXS7-9f.js.map} +1 -1
  3. package/dist/chunks/{Badge-jYQjrTKc.js → Badge-4ShpqA0h.js} +2 -2
  4. package/dist/chunks/{Badge-jYQjrTKc.js.map → Badge-4ShpqA0h.js.map} +1 -1
  5. package/dist/chunks/{Badge-CTc9Lkwn.js → Badge-qkV9EqKs.js} +6 -2
  6. package/dist/chunks/Badge-qkV9EqKs.js.map +1 -0
  7. package/dist/chunks/{Button-XB-T75YL.js → Button-CQA-K1g9.js} +17 -17
  8. package/dist/chunks/Button-CQA-K1g9.js.map +1 -0
  9. package/dist/chunks/Button-KF-qSGtA.js +11 -0
  10. package/dist/chunks/Button-KF-qSGtA.js.map +1 -0
  11. package/dist/chunks/{ButtonBar-CIMKPPRS.js → ButtonBar-B-cYuoem.js} +10 -4
  12. package/dist/chunks/ButtonBar-B-cYuoem.js.map +1 -0
  13. package/dist/chunks/{Callout-BUn0dP_S.js → Callout-VyYDIP7w.js} +26 -26
  14. package/dist/chunks/Callout-VyYDIP7w.js.map +1 -0
  15. package/dist/chunks/{Checkbox-DFn-x0JO.js → Checkbox-d4IfhiXh.js} +2 -2
  16. package/dist/chunks/{Checkbox-DFn-x0JO.js.map → Checkbox-d4IfhiXh.js.map} +1 -1
  17. package/dist/chunks/{CloseButton-BmNmRVtb.js → CloseButton-CKarkTT9.js} +3 -3
  18. package/dist/chunks/{CloseButton-BmNmRVtb.js.map → CloseButton-CKarkTT9.js.map} +1 -1
  19. package/dist/chunks/{Code-AsKpgnv6.js → Code-ChwKP1V0.js} +8 -2
  20. package/dist/chunks/Code-ChwKP1V0.js.map +1 -0
  21. package/dist/chunks/{ColorModeControl-DaVJ-SyX.js → ColorModeControl-CH9PmDlT.js} +6 -6
  22. package/dist/chunks/{ColorModeControl-DaVJ-SyX.js.map → ColorModeControl-CH9PmDlT.js.map} +1 -1
  23. package/dist/chunks/{ComboBox-DKln_mOd.js → ComboBox-BMj_IKBj.js} +4 -4
  24. package/dist/chunks/ComboBox-BMj_IKBj.js.map +1 -0
  25. package/dist/chunks/{DataGrid-CmHJe57v.js → DataGrid-CjiVKoaA.js} +3 -3
  26. package/dist/chunks/{DataGrid-CmHJe57v.js.map → DataGrid-CjiVKoaA.js.map} +1 -1
  27. package/dist/chunks/{DetentSlider-DNTAk8xP.js → DetentSlider-D40V8Oma.js} +2 -2
  28. package/dist/chunks/{DetentSlider-DNTAk8xP.js.map → DetentSlider-D40V8Oma.js.map} +1 -1
  29. package/dist/chunks/{Dialog-DKfsk5VN.js → Dialog-Du4POZ52.js} +12 -12
  30. package/dist/chunks/Dialog-Du4POZ52.js.map +1 -0
  31. package/dist/chunks/{Disclosure-Ch2KxYuB.js → Disclosure-CpWt87nO.js} +7 -7
  32. package/dist/chunks/{Disclosure-Ch2KxYuB.js.map → Disclosure-CpWt87nO.js.map} +1 -1
  33. package/dist/chunks/{DragGhost-BeYDJyLZ.js → DragGhost-_IpuN_xM.js} +2 -2
  34. package/dist/chunks/{DragGhost-BeYDJyLZ.js.map → DragGhost-_IpuN_xM.js.map} +1 -1
  35. package/dist/chunks/{FallthroughDiagram-CS1IhQaU.js → FallthroughDiagram-Cn6QLWKA.js} +9 -9
  36. package/dist/chunks/{FallthroughDiagram-CS1IhQaU.js.map → FallthroughDiagram-Cn6QLWKA.js.map} +1 -1
  37. package/dist/chunks/{FillStrokeSwatch-C4h3rUFM.js → FillStrokeSwatch-BkUhlpQL.js} +2 -2
  38. package/dist/chunks/{FillStrokeSwatch-C4h3rUFM.js.map → FillStrokeSwatch-BkUhlpQL.js.map} +1 -1
  39. package/dist/chunks/FitLabel-BzZGkWfL.js +76 -0
  40. package/dist/chunks/FitLabel-BzZGkWfL.js.map +1 -0
  41. package/dist/chunks/{FontFamilySelect-DEvMXyZd.js → FontFamilySelect-CXN7O2-p.js} +2 -2
  42. package/dist/chunks/{FontFamilySelect-DEvMXyZd.js.map → FontFamilySelect-CXN7O2-p.js.map} +1 -1
  43. package/dist/chunks/{FontWeightSelect-BLQ_LMJF.js → FontWeightSelect-BBuJGe_2.js} +2 -2
  44. package/dist/chunks/{FontWeightSelect-BLQ_LMJF.js.map → FontWeightSelect-BBuJGe_2.js.map} +1 -1
  45. package/dist/chunks/{GestureRoute-BXESrHI0.js → GestureRoute-BqHUrGeQ.js} +13 -13
  46. package/dist/chunks/{GestureRoute-BXESrHI0.js.map → GestureRoute-BqHUrGeQ.js.map} +1 -1
  47. package/dist/chunks/{GradientEditor-DD2OjQtn.js → GradientEditor-DX4sb1Hf.js} +4 -4
  48. package/dist/chunks/{GradientEditor-DD2OjQtn.js.map → GradientEditor-DX4sb1Hf.js.map} +1 -1
  49. package/dist/chunks/{Icon--B1ME-6c.js → Icon-BfqYtAX5.js} +33 -1
  50. package/dist/chunks/Icon-BfqYtAX5.js.map +1 -0
  51. package/dist/chunks/{ItemList-CRu9y7hL.js → ItemList-nbakLf3N.js} +32 -32
  52. package/dist/chunks/ItemList-nbakLf3N.js.map +1 -0
  53. package/dist/chunks/{Jog-BrkzdGV2.js → Jog-BU0xuM3G.js} +7 -7
  54. package/dist/chunks/{Jog-BrkzdGV2.js.map → Jog-BU0xuM3G.js.map} +1 -1
  55. package/dist/chunks/{Keycaps-C-FJyG8k.js → Keycaps-CM-gOj0e.js} +8 -2
  56. package/dist/chunks/Keycaps-CM-gOj0e.js.map +1 -0
  57. package/dist/chunks/LayerList-vfAoImxX.js +432 -0
  58. package/dist/chunks/LayerList-vfAoImxX.js.map +1 -0
  59. package/dist/chunks/{ListEditor-OQDzG4A5.js → ListEditor-BAKs47bN.js} +3 -3
  60. package/dist/chunks/{ListEditor-OQDzG4A5.js.map → ListEditor-BAKs47bN.js.map} +1 -1
  61. package/dist/chunks/{MenuButton-TAFg88Lp.js → MenuButton-CJGdhwGr.js} +5 -5
  62. package/dist/chunks/MenuButton-CJGdhwGr.js.map +1 -0
  63. package/dist/chunks/{MeshEditor-DWpvg8H6.js → MeshEditor-rhf7cXfG.js} +2 -2
  64. package/dist/chunks/{MeshEditor-DWpvg8H6.js.map → MeshEditor-rhf7cXfG.js.map} +1 -1
  65. package/dist/chunks/{NumberField-DS0WSiin.js → NumberField-BXFrOi5M.js} +8 -5
  66. package/dist/chunks/{NumberField-DS0WSiin.js.map → NumberField-BXFrOi5M.js.map} +1 -1
  67. package/dist/chunks/{OptionsBar-DeTAjVb7.js → OptionsBar-DyTXbev-.js} +9 -3
  68. package/dist/chunks/OptionsBar-DyTXbev-.js.map +1 -0
  69. package/dist/chunks/{PaintField-BdmQM53v.js → PaintField--GbF8sL7.js} +7 -7
  70. package/dist/chunks/PaintField--GbF8sL7.js.map +1 -0
  71. package/dist/chunks/{PaintInput-DaQMeBsI.js → PaintInput-DSS5IjXn.js} +5 -5
  72. package/dist/chunks/{PaintInput-DaQMeBsI.js.map → PaintInput-DSS5IjXn.js.map} +1 -1
  73. package/dist/chunks/{PatternPicker-B3HcMZWg.js → PatternPicker-82DCUvUk.js} +9 -9
  74. package/dist/chunks/PatternPicker-82DCUvUk.js.map +1 -0
  75. package/dist/chunks/{Powerline-6wIFmDik.js → Powerline-CogJv9VU.js} +2 -2
  76. package/dist/chunks/{Powerline-6wIFmDik.js.map → Powerline-CogJv9VU.js.map} +1 -1
  77. package/dist/chunks/{Prefs-BnVEyfWO.js → Prefs-BSSKOvPa.js} +41 -41
  78. package/dist/chunks/Prefs-BSSKOvPa.js.map +1 -0
  79. package/dist/chunks/{Properties-BoG2MMHR.js → Properties-DteSVEWs.js} +5 -5
  80. package/dist/chunks/{Properties-BoG2MMHR.js.map → Properties-DteSVEWs.js.map} +1 -1
  81. package/dist/chunks/PropertyField-CLbUOynA.js +751 -0
  82. package/dist/chunks/PropertyField-CLbUOynA.js.map +1 -0
  83. package/dist/chunks/{Select-ouV8O6cp.js → Select-BhHwjNsb.js} +13 -13
  84. package/dist/chunks/Select-BhHwjNsb.js.map +1 -0
  85. package/dist/chunks/{SelectionPanel-COZ6z9_P.js → SelectionPanel-B6HinSdB.js} +2 -2
  86. package/dist/chunks/{SelectionPanel-COZ6z9_P.js.map → SelectionPanel-B6HinSdB.js.map} +1 -1
  87. package/dist/chunks/{SidebarPanel-AXQ0jRDx.js → SidebarPanel-P3a8tIIj.js} +3 -3
  88. package/dist/chunks/{SidebarPanel-AXQ0jRDx.js.map → SidebarPanel-P3a8tIIj.js.map} +1 -1
  89. package/dist/chunks/Slider-CHBQ8uUC.js +439 -0
  90. package/dist/chunks/Slider-CHBQ8uUC.js.map +1 -0
  91. package/dist/chunks/{StatusBar-BEOfOX0D.js → StatusBar-DEh7J2Gj.js} +14 -9
  92. package/dist/chunks/StatusBar-DEh7J2Gj.js.map +1 -0
  93. package/dist/chunks/{SwatchGrid-9ZPiDmxd.js → SwatchGrid-DxK9e_IV.js} +3 -3
  94. package/dist/chunks/SwatchGrid-DxK9e_IV.js.map +1 -0
  95. package/dist/chunks/{SwatchStrip-Bi9iPLoh.js → SwatchStrip-D7YNn_p0.js} +3 -3
  96. package/dist/chunks/{SwatchStrip-Bi9iPLoh.js.map → SwatchStrip-D7YNn_p0.js.map} +1 -1
  97. package/dist/chunks/{ThemeSwitcher-DiBmMh_B.js → ThemeSwitcher-BJWP1l87.js} +6 -6
  98. package/dist/chunks/{ThemeSwitcher-DiBmMh_B.js.map → ThemeSwitcher-BJWP1l87.js.map} +1 -1
  99. package/dist/chunks/{Timeline-sMCH2fah.js → Timeline-CisRg82u.js} +4 -4
  100. package/dist/chunks/{Timeline-sMCH2fah.js.map → Timeline-CisRg82u.js.map} +1 -1
  101. package/dist/chunks/{Toast-C3ozq11V.js → Toast-DhkU9Z0b.js} +3 -3
  102. package/dist/chunks/{Toast-C3ozq11V.js.map → Toast-DhkU9Z0b.js.map} +1 -1
  103. package/dist/chunks/ToggleBar-CRc2k89_.js +10 -0
  104. package/dist/chunks/ToggleBar-CRc2k89_.js.map +1 -0
  105. package/dist/chunks/ToggleBar-CfYbMK3x.js +84 -0
  106. package/dist/chunks/ToggleBar-CfYbMK3x.js.map +1 -0
  107. package/dist/chunks/{TokenPanel-WtKGY2Db.js → TokenPanel-cL37E39j.js} +26 -26
  108. package/dist/chunks/{TokenPanel-WtKGY2Db.js.map → TokenPanel-cL37E39j.js.map} +1 -1
  109. package/dist/chunks/{ToolButton-BURp4YIO.js → ToolButton-Bo7WH1wt.js} +2 -2
  110. package/dist/chunks/{ToolButton-BURp4YIO.js.map → ToolButton-Bo7WH1wt.js.map} +1 -1
  111. package/dist/chunks/ToolOptionsBar-DmhzrOmd.js +94 -0
  112. package/dist/chunks/ToolOptionsBar-DmhzrOmd.js.map +1 -0
  113. package/dist/chunks/{ToolPalette-DKDFWOX-.js → ToolPalette-BTD84k9C.js} +2 -2
  114. package/dist/chunks/{ToolPalette-DKDFWOX-.js.map → ToolPalette-BTD84k9C.js.map} +1 -1
  115. package/dist/chunks/{Tooltip-C6eFCYxw.js → Tooltip-DljsPEQG.js} +4 -4
  116. package/dist/chunks/Tooltip-DljsPEQG.js.map +1 -0
  117. package/dist/chunks/Tree-B_PW6K-W.js +215 -0
  118. package/dist/chunks/Tree-B_PW6K-W.js.map +1 -0
  119. package/dist/chunks/checkbox.module-Dcx8ILgR.js +5 -0
  120. package/dist/chunks/checkbox.module-Dcx8ILgR.js.map +1 -0
  121. package/dist/chunks/{icons-Dr2-r30x.js → icons-B_fPKEis.js} +52 -43
  122. package/dist/chunks/icons-B_fPKEis.js.map +1 -0
  123. package/dist/chunks/{model-B6zuQg6b.js → model-Ca0f95r0.js} +134 -133
  124. package/dist/chunks/model-Ca0f95r0.js.map +1 -0
  125. package/dist/chunks/{portalHost-CE70wLzo.js → portalHost-RUQPxIoW.js} +3 -2
  126. package/dist/chunks/{portalHost-CE70wLzo.js.map → portalHost-RUQPxIoW.js.map} +1 -1
  127. package/dist/chunks/{prefField-BE_Ytr2H.js → prefField-DPPbAmRR.js} +81 -75
  128. package/dist/chunks/prefField-DPPbAmRR.js.map +1 -0
  129. package/dist/chunks/{segmentTooltip-CGxCOWNz.js → segmentTooltip-8VBPNgEc.js} +2 -2
  130. package/dist/chunks/{segmentTooltip-CGxCOWNz.js.map → segmentTooltip-8VBPNgEc.js.map} +1 -1
  131. package/dist/chunks/segmentedControl.module-62qjNWJk.js +11 -0
  132. package/dist/chunks/{segmentedControl.module-BzGXUL5G.js.map → segmentedControl.module-62qjNWJk.js.map} +1 -1
  133. package/dist/chunks/{useReorderDragList-CStYKjHl.js → useReorderDragList-DnqqvRGK.js} +38 -30
  134. package/dist/chunks/useReorderDragList-DnqqvRGK.js.map +1 -0
  135. package/dist/components/ActionBar/index.js +1 -1
  136. package/dist/components/Badge/index.d.ts +1 -0
  137. package/dist/components/Badge/index.d.ts.map +1 -1
  138. package/dist/components/Badge/index.js +3 -3
  139. package/dist/components/Badge/variantIcons.d.ts +5 -0
  140. package/dist/components/Badge/variantIcons.d.ts.map +1 -0
  141. package/dist/components/Button/index.d.ts +1 -0
  142. package/dist/components/Button/index.d.ts.map +1 -1
  143. package/dist/components/Button/index.js +3 -2
  144. package/dist/components/Button/variantIcons.d.ts +5 -0
  145. package/dist/components/Button/variantIcons.d.ts.map +1 -0
  146. package/dist/components/ButtonBar/index.d.ts +1 -0
  147. package/dist/components/ButtonBar/index.d.ts.map +1 -1
  148. package/dist/components/ButtonBar/index.js +2 -2
  149. package/dist/components/ButtonBar/variantIcons.d.ts +5 -0
  150. package/dist/components/ButtonBar/variantIcons.d.ts.map +1 -0
  151. package/dist/components/Callout/Callout.d.ts.map +1 -1
  152. package/dist/components/Callout/index.js +1 -1
  153. package/dist/components/Checkbox/index.js +1 -1
  154. package/dist/components/CloseButton/index.js +1 -1
  155. package/dist/components/Code/index.d.ts +1 -0
  156. package/dist/components/Code/index.d.ts.map +1 -1
  157. package/dist/components/Code/index.js +2 -2
  158. package/dist/components/Code/variantIcons.d.ts +5 -0
  159. package/dist/components/Code/variantIcons.d.ts.map +1 -0
  160. package/dist/components/ColorModeControl/index.js +1 -1
  161. package/dist/components/ComboBox/ComboBox.d.ts.map +1 -1
  162. package/dist/components/ComboBox/index.js +1 -1
  163. package/dist/components/DataGrid/index.js +1 -1
  164. package/dist/components/DetentSlider/index.js +1 -1
  165. package/dist/components/Dialog/Dialog.d.ts.map +1 -1
  166. package/dist/components/Dialog/index.js +1 -1
  167. package/dist/components/Disclosure/index.js +1 -1
  168. package/dist/components/DragGhost/index.js +1 -1
  169. package/dist/components/FallthroughDiagram/index.js +1 -1
  170. package/dist/components/FillStrokeSwatch/index.js +1 -1
  171. package/dist/components/FitLabel/FitLabel.d.ts +41 -0
  172. package/dist/components/FitLabel/FitLabel.d.ts.map +1 -0
  173. package/dist/components/FitLabel/index.d.ts +3 -0
  174. package/dist/components/FitLabel/index.d.ts.map +1 -0
  175. package/dist/components/FitLabel/index.js +2 -0
  176. package/dist/components/FontFamilySelect/index.js +1 -1
  177. package/dist/components/FontWeightSelect/index.js +1 -1
  178. package/dist/components/GestureRoute/index.js +1 -1
  179. package/dist/components/GradientEditor/index.js +1 -1
  180. package/dist/components/InlineRange/InlineRange.d.ts +1 -1
  181. package/dist/components/ItemList/index.js +1 -1
  182. package/dist/components/Jog/index.js +1 -1
  183. package/dist/components/Keycaps/index.d.ts +1 -0
  184. package/dist/components/Keycaps/index.d.ts.map +1 -1
  185. package/dist/components/Keycaps/index.js +2 -2
  186. package/dist/components/Keycaps/variantIcons.d.ts +5 -0
  187. package/dist/components/Keycaps/variantIcons.d.ts.map +1 -0
  188. package/dist/components/LayerList/LayerList.d.ts.map +1 -1
  189. package/dist/components/LayerList/index.js +1 -1
  190. package/dist/components/ListEditor/index.js +1 -1
  191. package/dist/components/MenuButton/MenuButton.d.ts.map +1 -1
  192. package/dist/components/MenuButton/index.js +1 -1
  193. package/dist/components/MeshEditor/index.js +1 -1
  194. package/dist/components/NumberField/UnitField.d.ts.map +1 -1
  195. package/dist/components/NumberField/index.js +1 -1
  196. package/dist/components/OptionsBar/index.d.ts +1 -0
  197. package/dist/components/OptionsBar/index.d.ts.map +1 -1
  198. package/dist/components/OptionsBar/index.js +2 -2
  199. package/dist/components/OptionsBar/variantIcons.d.ts +5 -0
  200. package/dist/components/OptionsBar/variantIcons.d.ts.map +1 -0
  201. package/dist/components/PaintField/PaintField.d.ts.map +1 -1
  202. package/dist/components/PaintField/index.js +1 -1
  203. package/dist/components/PaintInput/index.js +1 -1
  204. package/dist/components/PatternPicker/index.js +1 -1
  205. package/dist/components/Powerline/index.js +2 -2
  206. package/dist/components/Prefs/index.js +2 -2
  207. package/dist/components/Prefs/prefField.d.ts.map +1 -1
  208. package/dist/components/Properties/NumberControls.d.ts +16 -0
  209. package/dist/components/Properties/NumberControls.d.ts.map +1 -0
  210. package/dist/components/Properties/PropertyField.d.ts +18 -8
  211. package/dist/components/Properties/PropertyField.d.ts.map +1 -1
  212. package/dist/components/Properties/index.js +2 -2
  213. package/dist/components/Select/Select.d.ts.map +1 -1
  214. package/dist/components/Select/index.js +1 -1
  215. package/dist/components/SelectionPanel/index.js +2 -2
  216. package/dist/components/SelectionPanel/renderLeaf.d.ts.map +1 -1
  217. package/dist/components/SidebarPanel/index.js +1 -1
  218. package/dist/components/Slider/Slider.d.ts +6 -0
  219. package/dist/components/Slider/Slider.d.ts.map +1 -1
  220. package/dist/components/Slider/index.js +1 -1
  221. package/dist/components/StatusBar/StatusBar.d.ts +2 -0
  222. package/dist/components/StatusBar/StatusBar.d.ts.map +1 -1
  223. package/dist/components/StatusBar/index.js +1 -1
  224. package/dist/components/SwatchGrid/index.js +1 -1
  225. package/dist/components/SwatchStrip/index.js +1 -1
  226. package/dist/components/ThemeSwitcher/index.js +1 -1
  227. package/dist/components/Timeline/index.js +1 -1
  228. package/dist/components/Toast/index.js +1 -1
  229. package/dist/components/ToggleBar/ToggleBar.d.ts.map +1 -1
  230. package/dist/components/ToggleBar/index.d.ts +1 -0
  231. package/dist/components/ToggleBar/index.d.ts.map +1 -1
  232. package/dist/components/ToggleBar/index.js +3 -2
  233. package/dist/components/ToggleBar/variantIcons.d.ts +5 -0
  234. package/dist/components/ToggleBar/variantIcons.d.ts.map +1 -0
  235. package/dist/components/TokenPanel/index.js +1 -1
  236. package/dist/components/ToolButton/index.js +1 -1
  237. package/dist/components/ToolOptionsBar/ToolOptionsBar.d.ts +1 -1
  238. package/dist/components/ToolOptionsBar/ToolOptionsBar.d.ts.map +1 -1
  239. package/dist/components/ToolOptionsBar/index.js +1 -1
  240. package/dist/components/ToolPalette/index.js +1 -1
  241. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
  242. package/dist/components/Tooltip/index.js +1 -1
  243. package/dist/components/Tree/Tree.d.ts +1 -1
  244. package/dist/components/Tree/Tree.d.ts.map +1 -1
  245. package/dist/components/Tree/index.js +1 -1
  246. package/dist/components/stanceCss.d.ts +6 -0
  247. package/dist/components/stanceCss.d.ts.map +1 -1
  248. package/dist/components/stanceSurfaces.d.ts.map +1 -1
  249. package/dist/endless.d.ts +7 -0
  250. package/dist/endless.d.ts.map +1 -0
  251. package/dist/icons/index.d.ts +6 -0
  252. package/dist/icons/index.d.ts.map +1 -1
  253. package/dist/icons/paths.d.ts +14 -0
  254. package/dist/icons/paths.d.ts.map +1 -1
  255. package/dist/index.d.ts +1 -0
  256. package/dist/index.d.ts.map +1 -1
  257. package/dist/index.js +101 -97
  258. package/dist/index.js.map +1 -1
  259. package/dist/overlays/portalHost.d.ts +10 -4
  260. package/dist/overlays/portalHost.d.ts.map +1 -1
  261. package/dist/style.css +1 -1
  262. package/dist/useReorderDragList.d.ts +3 -0
  263. package/dist/useReorderDragList.d.ts.map +1 -1
  264. package/package.json +10 -9
  265. package/dist/chunks/Badge-CTc9Lkwn.js.map +0 -1
  266. package/dist/chunks/Button-XB-T75YL.js.map +0 -1
  267. package/dist/chunks/ButtonBar-CIMKPPRS.js.map +0 -1
  268. package/dist/chunks/Callout-BUn0dP_S.js.map +0 -1
  269. package/dist/chunks/Code-AsKpgnv6.js.map +0 -1
  270. package/dist/chunks/ComboBox-DKln_mOd.js.map +0 -1
  271. package/dist/chunks/Dialog-DKfsk5VN.js.map +0 -1
  272. package/dist/chunks/Icon--B1ME-6c.js.map +0 -1
  273. package/dist/chunks/ItemList-CRu9y7hL.js.map +0 -1
  274. package/dist/chunks/Keycaps-C-FJyG8k.js.map +0 -1
  275. package/dist/chunks/LayerList-BqeWFuGc.js +0 -421
  276. package/dist/chunks/LayerList-BqeWFuGc.js.map +0 -1
  277. package/dist/chunks/MenuButton-TAFg88Lp.js.map +0 -1
  278. package/dist/chunks/OptionsBar-DeTAjVb7.js.map +0 -1
  279. package/dist/chunks/PaintField-BdmQM53v.js.map +0 -1
  280. package/dist/chunks/PatternPicker-B3HcMZWg.js.map +0 -1
  281. package/dist/chunks/Prefs-BnVEyfWO.js.map +0 -1
  282. package/dist/chunks/PropertyField-PMrqBA0n.js +0 -743
  283. package/dist/chunks/PropertyField-PMrqBA0n.js.map +0 -1
  284. package/dist/chunks/Select-ouV8O6cp.js.map +0 -1
  285. package/dist/chunks/Slider-DSrlMEq8.js +0 -389
  286. package/dist/chunks/Slider-DSrlMEq8.js.map +0 -1
  287. package/dist/chunks/StatusBar-BEOfOX0D.js.map +0 -1
  288. package/dist/chunks/SwatchGrid-9ZPiDmxd.js.map +0 -1
  289. package/dist/chunks/ToggleBar-Z2jZiguF.js +0 -80
  290. package/dist/chunks/ToggleBar-Z2jZiguF.js.map +0 -1
  291. package/dist/chunks/ToolOptionsBar-BJKwnemU.js +0 -88
  292. package/dist/chunks/ToolOptionsBar-BJKwnemU.js.map +0 -1
  293. package/dist/chunks/Tooltip-C6eFCYxw.js.map +0 -1
  294. package/dist/chunks/Tree-Cc8lIzgM.js +0 -203
  295. package/dist/chunks/Tree-Cc8lIzgM.js.map +0 -1
  296. package/dist/chunks/checkbox.module-DLQV9tMX.js +0 -5
  297. package/dist/chunks/checkbox.module-DLQV9tMX.js.map +0 -1
  298. package/dist/chunks/icons-Dr2-r30x.js.map +0 -1
  299. package/dist/chunks/interactiveTarget-BNZmTow2.js +0 -24
  300. package/dist/chunks/interactiveTarget-BNZmTow2.js.map +0 -1
  301. package/dist/chunks/model-B6zuQg6b.js.map +0 -1
  302. package/dist/chunks/prefField-BE_Ytr2H.js.map +0 -1
  303. package/dist/chunks/segmentedControl.module-BzGXUL5G.js +0 -11
  304. package/dist/chunks/useReorderDragList-CStYKjHl.js.map +0 -1
  305. package/dist/interactiveTarget.d.ts +0 -9
  306. package/dist/interactiveTarget.d.ts.map +0 -1
package/dist/index.js CHANGED
@@ -1,97 +1,101 @@
1
1
  import { n as e, t } from "./chunks/dlog-F0I8KsIW.js";
2
- import { a as n, i as r, n as i, r as a, t as o } from "./chunks/Icon--B1ME-6c.js";
3
- import { $ as s, A as c, At as l, B as u, C as d, Ct as f, D as p, Dt as m, E as ee, Et as te, F as ne, Ft as re, G as ie, H as ae, I as oe, It as se, J as ce, K as le, L as ue, M as de, Mt as h, N as g, Nt as _, O as v, Ot as y, P as b, Pt as x, Q as S, R as C, S as w, St as T, T as E, Tt as D, U as O, V as k, W as A, X as j, Y as M, Z as N, _ as P, _t as F, a as I, at as L, b as R, bt as z, c as B, ct as V, d as H, dt as fe, et as pe, f as me, ft as he, g as ge, gt as _e, h as ve, ht as ye, i as be, it as xe, j as Se, jt as Ce, k as we, kt as Te, l as Ee, lt as De, m as Oe, mt as ke, n as Ae, nt as je, o as Me, ot as Ne, p as Pe, pt as Fe, q as Ie, r as Le, rt as Re, s as ze, st as Be, t as Ve, tt as He, u as Ue, ut as We, v as Ge, vt as Ke, w as qe, wt as Je, x as Ye, xt as Xe, y as Ze, yt as Qe, z as $e } from "./chunks/icons-Dr2-r30x.js";
4
- import { n as et, r as tt } from "./chunks/paintValue-BpaGPjV3.js";
5
- import { i as nt, n as rt, r as it, t as at } from "./chunks/portalHost-CE70wLzo.js";
6
- import { n as ot, r as st, t as ct } from "./chunks/Tooltip-C6eFCYxw.js";
7
- import { t as lt } from "./chunks/keyGlyph-C0qTakG-.js";
8
- import { n as ut, t as dt } from "./chunks/formatShortcut-DRQrVThu.js";
9
- import { t as ft } from "./chunks/ActionBar-xA73vzzF.js";
10
- import { n as pt, t as mt } from "./chunks/Badge-jYQjrTKc.js";
11
- import { t as ht } from "./chunks/stance-BFQpS_fL.js";
12
- import { t as gt } from "./chunks/Badge-CTc9Lkwn.js";
13
- import { t as _t } from "./chunks/Button-XB-T75YL.js";
14
- import { t as vt } from "./chunks/CloseButton-BmNmRVtb.js";
15
- import { t as yt } from "./chunks/Code-AsKpgnv6.js";
16
- import { t as bt } from "./chunks/useReorderDragList-CStYKjHl.js";
17
- import { n as xt, r as St, t as Ct } from "./chunks/Disclosure-Ch2KxYuB.js";
18
- import { t as wt } from "./chunks/DataGrid-CmHJe57v.js";
19
- import { n as Tt, t as Et } from "./chunks/DetailList-BpU50XVe.js";
20
- import { t as Dt } from "./chunks/DragGhost-BeYDJyLZ.js";
21
- import { t as Ot } from "./chunks/DragGrip-AoIZXfZb.js";
22
- import { a as kt, i as At, n as jt, o as Mt, r as Nt, s as Pt, t as Ft } from "./chunks/Keycaps-C-FJyG8k.js";
23
- import { a as It, c as Lt, i as Rt, n as zt, o as Bt, r as Vt, s as Ht, t as Ut } from "./chunks/Plot2D-BrvQS0dh.js";
24
- import { a as Wt, i as Gt, n as Kt, r as qt, t as Jt } from "./chunks/CurveEditor-0EE00D6s.js";
25
- import { i as Yt, n as Xt, r as Zt, t as Qt } from "./chunks/createKeyframeLayer-DSVf13Su.js";
26
- import { n as $t, r as en, t as tn } from "./chunks/handles-CqVANLtu.js";
27
- import { t as nn } from "./chunks/snap-DRjbOiG9.js";
28
- import { i as rn, n as an, r as on, t as sn } from "./chunks/Properties-BoG2MMHR.js";
29
- import { t as cn } from "./chunks/Dialog-DKfsk5VN.js";
30
- import { a as ln, c as un, i as dn, l as fn, n as pn, o as mn, s as hn, t as gn } from "./chunks/PropertyField-PMrqBA0n.js";
31
- import { a as _n, i as U, n as vn, o as yn, r as bn, t as xn } from "./chunks/RecentColorsProvider-DHcfk25u.js";
32
- import { t as Sn } from "./chunks/InlineRange-DPjIsJB3.js";
33
- import { t as Cn } from "./chunks/ColorField-BwlelY26.js";
34
- import { n as wn, r as Tn, t as En } from "./chunks/Select-ouV8O6cp.js";
35
- import { t as Dn } from "./chunks/FontFamilySelect-DEvMXyZd.js";
36
- import { n as On, t as kn } from "./chunks/FontWeightSelect-BLQ_LMJF.js";
37
- import { t as An } from "./chunks/Input-D7SDKbST.js";
38
- import { r as jn, t as Mn } from "./chunks/NumberField-DS0WSiin.js";
39
- import { t as Nn } from "./chunks/paintPreview-CuSZiHpR.js";
40
- import { t as Pn } from "./chunks/Slider-DSrlMEq8.js";
41
- import { t as Fn } from "./chunks/ToggleBar-Z2jZiguF.js";
42
- import { t as In } from "./chunks/useRovingTabIndex-D7u22Ia_.js";
43
- import { o as Ln, s as Rn, t as zn } from "./chunks/MeshEditor-DWpvg8H6.js";
44
- import { i as Bn, n as Vn, r as Hn, t as Un } from "./chunks/GradientEditor-DD2OjQtn.js";
45
- import { n as Wn, t as Gn } from "./chunks/PatternPicker-B3HcMZWg.js";
46
- import { t as Kn } from "./chunks/PaintInput-DaQMeBsI.js";
47
- import { t as qn } from "./chunks/PaintField-BdmQM53v.js";
48
- import { n as Jn, t as Yn } from "./chunks/Field-DiX_WByH.js";
49
- import { n as Xn, t as Zn } from "./chunks/RadioGroup-B70_M-gT.js";
50
- import { t as Qn } from "./chunks/Switch-CSYmcM8y.js";
51
- import { n as $n, r as er, t as tr } from "./chunks/LayerList-BqeWFuGc.js";
52
- import { t as nr } from "./chunks/ItemList-CRu9y7hL.js";
53
- import { t as rr } from "./chunks/ListEditor-OQDzG4A5.js";
54
- import { t as ir } from "./chunks/ColorModeControl-DaVJ-SyX.js";
55
- import { n as ar, t as or } from "./chunks/ThemeSwitcher-DiBmMh_B.js";
56
- import { t as sr } from "./chunks/OptionsBar-DeTAjVb7.js";
57
- import { t as cr } from "./chunks/ButtonBar-CIMKPPRS.js";
58
- import { a as lr, i as ur, n as dr, o as fr, r as pr, s as mr, t as hr } from "./chunks/prefField-BE_Ytr2H.js";
59
- import { i as gr, l as _r, n as vr, o as yr, r as br, s as xr, t as Sr } from "./chunks/model-B6zuQg6b.js";
60
- import { t as Cr } from "./chunks/ToolOptionsBar-BJKwnemU.js";
61
- import { t as wr } from "./chunks/FillStrokeSwatch-C4h3rUFM.js";
62
- import { t as Tr } from "./chunks/SwatchGrid-9ZPiDmxd.js";
63
- import { a as Er, i as Dr, n as Or, r as kr, t as Ar } from "./chunks/SwatchStrip-Bi9iPLoh.js";
64
- import { t as jr } from "./chunks/Powerline-6wIFmDik.js";
65
- import { n as Mr, t as Nr } from "./chunks/GestureRoute-BXESrHI0.js";
66
- import { t as Pr } from "./chunks/FallthroughDiagram-CS1IhQaU.js";
67
- import { a as Fr, i as Ir, n as Lr, o as Rr, r as zr, t as Br } from "./chunks/Prefs-BnVEyfWO.js";
68
- import { t as Vr } from "./chunks/SelectionPanel-COZ6z9_P.js";
69
- import { t as Hr } from "./chunks/ResizeHandle-CbAgCQOt.js";
70
- import { t as Ur } from "./chunks/Sidebar-BZ0m4afn.js";
71
- import { t as Wr } from "./chunks/SidebarPanel-AXQ0jRDx.js";
72
- import { n as Gr, r as Kr, t as qr } from "./chunks/StatusBar-BEOfOX0D.js";
73
- import { t as Jr } from "./chunks/ToolButton-BURp4YIO.js";
74
- import { t as Yr } from "./chunks/ToolGroup-Dpg1LN0l.js";
75
- import { t as Xr } from "./chunks/ToolPalette-DKDFWOX-.js";
2
+ import { a as n, i as r, n as i, r as a, t as o } from "./chunks/Icon-BfqYtAX5.js";
3
+ import { $ as s, A as c, At as l, B as u, C as d, Ct as f, D as p, Dt as m, E as ee, Et as te, F as ne, Ft as re, G as ie, H as ae, I as oe, It as se, J as ce, K as le, L as ue, Lt as de, M as h, Mt as g, N as _, Nt as v, O as y, Ot as b, P as x, Pt as S, Q as C, R as w, Rt as T, S as E, St as D, T as O, Tt as k, U as A, V as j, W as M, X as N, Y as P, Z as F, _ as I, _t as L, a as R, at as z, b as B, bt as V, c as H, ct as fe, d as pe, dt as me, et as he, f as ge, ft as _e, g as ve, gt as ye, h as be, ht as xe, i as Se, it as Ce, j as we, jt as Te, k as Ee, kt as De, l as Oe, lt as ke, m as Ae, mt as je, n as Me, nt as Ne, o as Pe, ot as Fe, p as Ie, pt as Le, q as Re, r as ze, rt as Be, s as Ve, st as He, t as Ue, tt as We, u as Ge, ut as Ke, v as qe, vt as Je, w as Ye, wt as Xe, x as Ze, xt as Qe, y as $e, yt as et, z as tt, zt as nt } from "./chunks/icons-B_fPKEis.js";
4
+ import { n as rt, r as it } from "./chunks/paintValue-BpaGPjV3.js";
5
+ import { i as at, n as ot, r as st, t as ct } from "./chunks/portalHost-RUQPxIoW.js";
6
+ import { n as lt, r as ut, t as dt } from "./chunks/Tooltip-DljsPEQG.js";
7
+ import { t as ft } from "./chunks/keyGlyph-C0qTakG-.js";
8
+ import { n as pt, t as mt } from "./chunks/formatShortcut-DRQrVThu.js";
9
+ import { t as ht } from "./chunks/ActionBar-CfXS7-9f.js";
10
+ import { n as gt, t as _t } from "./chunks/Badge-4ShpqA0h.js";
11
+ import { t as vt } from "./chunks/stance-BFQpS_fL.js";
12
+ import { n as yt, t as bt } from "./chunks/Badge-qkV9EqKs.js";
13
+ import { t as xt } from "./chunks/Button-CQA-K1g9.js";
14
+ import { t as St } from "./chunks/Button-KF-qSGtA.js";
15
+ import { t as Ct } from "./chunks/CloseButton-CKarkTT9.js";
16
+ import { n as wt, t as Tt } from "./chunks/Code-ChwKP1V0.js";
17
+ import { n as Et } from "./chunks/useReorderDragList-DnqqvRGK.js";
18
+ import { n as Dt, r as Ot, t as kt } from "./chunks/Disclosure-CpWt87nO.js";
19
+ import { t as At } from "./chunks/DataGrid-CjiVKoaA.js";
20
+ import { n as jt, t as Mt } from "./chunks/DetailList-BpU50XVe.js";
21
+ import { t as Nt } from "./chunks/DragGhost-_IpuN_xM.js";
22
+ import { t as Pt } from "./chunks/DragGrip-AoIZXfZb.js";
23
+ import { a as Ft, c as It, i as Lt, n as Rt, o as zt, r as Bt, s as Vt, t as Ht } from "./chunks/Keycaps-CM-gOj0e.js";
24
+ import { a as Ut, c as Wt, i as Gt, n as Kt, o as qt, r as Jt, s as Yt, t as Xt } from "./chunks/Plot2D-BrvQS0dh.js";
25
+ import { a as Zt, i as Qt, n as $t, r as en, t as tn } from "./chunks/CurveEditor-0EE00D6s.js";
26
+ import { i as nn, n as rn, r as an, t as on } from "./chunks/createKeyframeLayer-DSVf13Su.js";
27
+ import { n as sn, r as cn, t as ln } from "./chunks/handles-CqVANLtu.js";
28
+ import { t as un } from "./chunks/snap-DRjbOiG9.js";
29
+ import { i as dn, n as fn, r as pn, t as mn } from "./chunks/Properties-DteSVEWs.js";
30
+ import { t as hn } from "./chunks/Dialog-Du4POZ52.js";
31
+ import { a as gn, c as _n, i as vn, l as yn, n as bn, o as xn, s as Sn, t as Cn } from "./chunks/PropertyField-CLbUOynA.js";
32
+ import { a as wn, i as Tn, n as En, o as Dn, r as On, t as kn } from "./chunks/RecentColorsProvider-DHcfk25u.js";
33
+ import { t as U } from "./chunks/InlineRange-DPjIsJB3.js";
34
+ import { t as An } from "./chunks/ColorField-BwlelY26.js";
35
+ import { n as jn, r as Mn, t as Nn } from "./chunks/Select-BhHwjNsb.js";
36
+ import { t as Pn } from "./chunks/FontFamilySelect-CXN7O2-p.js";
37
+ import { n as Fn, t as In } from "./chunks/FontWeightSelect-BBuJGe_2.js";
38
+ import { t as Ln } from "./chunks/Input-D7SDKbST.js";
39
+ import { t as Rn } from "./chunks/paintPreview-CuSZiHpR.js";
40
+ import { t as zn } from "./chunks/Slider-CHBQ8uUC.js";
41
+ import { t as Bn } from "./chunks/ToggleBar-CfYbMK3x.js";
42
+ import { t as Vn } from "./chunks/useRovingTabIndex-D7u22Ia_.js";
43
+ import { i as Hn, n as Un, r as Wn, t as Gn } from "./chunks/FitLabel-BzZGkWfL.js";
44
+ import { t as Kn } from "./chunks/ToggleBar-CRc2k89_.js";
45
+ import { o as qn, s as Jn, t as Yn } from "./chunks/MeshEditor-rhf7cXfG.js";
46
+ import { i as Xn, n as Zn, r as Qn, t as $n } from "./chunks/GradientEditor-DX4sb1Hf.js";
47
+ import { r as er, t as tr } from "./chunks/NumberField-BXFrOi5M.js";
48
+ import { n as nr, t as rr } from "./chunks/PatternPicker-82DCUvUk.js";
49
+ import { t as ir } from "./chunks/PaintInput-DSS5IjXn.js";
50
+ import { t as ar } from "./chunks/PaintField--GbF8sL7.js";
51
+ import { n as or, t as sr } from "./chunks/Field-DiX_WByH.js";
52
+ import { n as cr, t as lr } from "./chunks/RadioGroup-B70_M-gT.js";
53
+ import { t as ur } from "./chunks/Switch-CSYmcM8y.js";
54
+ import { n as dr, r as fr, t as pr } from "./chunks/LayerList-vfAoImxX.js";
55
+ import { t as mr } from "./chunks/ItemList-nbakLf3N.js";
56
+ import { t as hr } from "./chunks/ListEditor-BAKs47bN.js";
57
+ import "./components/FitLabel/index.js";
58
+ import { t as gr } from "./chunks/ColorModeControl-CH9PmDlT.js";
59
+ import { n as _r, t as vr } from "./chunks/ThemeSwitcher-BJWP1l87.js";
60
+ import { n as yr, t as br } from "./chunks/OptionsBar-DyTXbev-.js";
61
+ import { n as xr, t as Sr } from "./chunks/ButtonBar-B-cYuoem.js";
62
+ import { a as Cr, i as wr, n as Tr, o as Er, r as Dr, s as Or, t as kr } from "./chunks/prefField-DPPbAmRR.js";
63
+ import { i as Ar, l as jr, n as Mr, o as Nr, r as Pr, s as Fr, t as Ir } from "./chunks/model-Ca0f95r0.js";
64
+ import { t as Lr } from "./chunks/ToolOptionsBar-DmhzrOmd.js";
65
+ import { t as Rr } from "./chunks/FillStrokeSwatch-BkUhlpQL.js";
66
+ import { t as zr } from "./chunks/SwatchGrid-DxK9e_IV.js";
67
+ import { a as Br, i as Vr, n as Hr, r as Ur, t as Wr } from "./chunks/SwatchStrip-D7YNn_p0.js";
68
+ import { t as Gr } from "./chunks/Powerline-CogJv9VU.js";
69
+ import { n as Kr, t as qr } from "./chunks/GestureRoute-BqHUrGeQ.js";
70
+ import { t as Jr } from "./chunks/FallthroughDiagram-Cn6QLWKA.js";
71
+ import { a as Yr, i as Xr, n as Zr, o as Qr, r as $r, t as ei } from "./chunks/Prefs-BSSKOvPa.js";
72
+ import { t as ti } from "./chunks/SelectionPanel-B6HinSdB.js";
73
+ import { t as ni } from "./chunks/ResizeHandle-CbAgCQOt.js";
74
+ import { t as ri } from "./chunks/Sidebar-BZ0m4afn.js";
75
+ import { t as ii } from "./chunks/SidebarPanel-P3a8tIIj.js";
76
+ import { n as ai, r as oi, t as si } from "./chunks/StatusBar-DEh7J2Gj.js";
77
+ import { t as ci } from "./chunks/ToolButton-Bo7WH1wt.js";
78
+ import { t as li } from "./chunks/ToolGroup-Dpg1LN0l.js";
79
+ import { t as ui } from "./chunks/ToolPalette-BTD84k9C.js";
76
80
  import "./components/Field/index.js";
77
- import { t as Zr } from "./chunks/Checkbox-DFn-x0JO.js";
78
- import { i as Qr, n as $r, r as ei, t as ti } from "./chunks/Tabs-BbpzLLdY.js";
79
- import { n as ni, r as ri, t as ii } from "./chunks/Tree-Cc8lIzgM.js";
80
- import { t as ai } from "./chunks/MenuButton-TAFg88Lp.js";
81
- import { n as oi, t as si } from "./chunks/ComboBox-DKln_mOd.js";
82
- import { t as ci } from "./chunks/RangeSlider-DO5TZVk7.js";
83
- import { t as li } from "./chunks/DetentSlider-DNTAk8xP.js";
84
- import { n as ui, t as di } from "./chunks/Callout-BUn0dP_S.js";
85
- import { a as fi, i as pi, n as mi, r as hi, t as gi } from "./chunks/Toast-C3ozq11V.js";
86
- import { t as _i } from "./chunks/PointPlotter-BBXpQ_QD.js";
87
- import { a as vi, i as yi, n as bi, r as xi, t as Si } from "./chunks/TokenPanel-WtKGY2Db.js";
88
- import { n as Ci, r as wi, t as Ti } from "./chunks/BandEditor-B4jUAHQ8.js";
89
- import { t as Ei } from "./chunks/Jog-BrkzdGV2.js";
90
- import { a as Di, c as Oi, i as ki, l as Ai, n as ji, o as Mi, r as Ni, s as Pi, t as Fi } from "./chunks/Timeline-sMCH2fah.js";
91
- import { hexToOklchDeg as W, hexToRgba as Ii, interpolateSrgb as G, oklchDegToHex as Li, rgbaToHex as K, useLatest as Ri } from "@weasel-js/core";
92
- import { useCallback as zi, useEffect as q, useRef as J, useState as Y } from "react";
81
+ import { t as di } from "./chunks/Checkbox-d4IfhiXh.js";
82
+ import { i as fi, n as pi, r as mi, t as hi } from "./chunks/Tabs-BbpzLLdY.js";
83
+ import { n as gi, r as _i, t as vi } from "./chunks/Tree-B_PW6K-W.js";
84
+ import { t as yi } from "./chunks/MenuButton-CJGdhwGr.js";
85
+ import { n as bi, t as xi } from "./chunks/ComboBox-BMj_IKBj.js";
86
+ import { t as Si } from "./chunks/RangeSlider-DO5TZVk7.js";
87
+ import { t as Ci } from "./chunks/DetentSlider-D40V8Oma.js";
88
+ import { n as wi, t as Ti } from "./chunks/Callout-VyYDIP7w.js";
89
+ import { a as Ei, i as Di, n as Oi, r as ki, t as Ai } from "./chunks/Toast-DhkU9Z0b.js";
90
+ import { t as ji } from "./chunks/PointPlotter-BBXpQ_QD.js";
91
+ import { a as Mi, i as Ni, n as Pi, r as Fi, t as Ii } from "./chunks/TokenPanel-cL37E39j.js";
92
+ import { n as Li, r as Ri, t as zi } from "./chunks/BandEditor-B4jUAHQ8.js";
93
+ import { t as Bi } from "./chunks/Jog-BU0xuM3G.js";
94
+ import { a as Vi, c as Hi, i as Ui, l as Wi, n as Gi, o as Ki, r as qi, s as Ji, t as Yi } from "./chunks/Timeline-CisRg82u.js";
95
+ import { hexToOklchDeg as W, hexToRgba as Xi, interpolateSrgb as G, oklchDegToHex as Zi, rgbaToHex as K, useLatest as Qi } from "@weasel-js/core";
96
+ import { useCallback as $i, useEffect as q, useRef as J, useState as Y } from "react";
93
97
  //#region src/color/oklch.ts
94
- var X = Li;
98
+ var X = Zi;
95
99
  function Z(e, t) {
96
100
  let [n, r] = t.lRange;
97
101
  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));
@@ -99,7 +103,7 @@ function Z(e, t) {
99
103
  //#endregion
100
104
  //#region src/color/ramp.ts
101
105
  var Q = (e) => {
102
- let [t, n, r] = Ii(e);
106
+ let [t, n, r] = Xi(e);
103
107
  return [
104
108
  t,
105
109
  n,
@@ -112,13 +116,13 @@ function $(e, t, n, r = {}) {
112
116
  let u = W(l), d = u.C > 1e-4 ? u.H : W(K(G(s, c, n, "oklch", a))).H;
113
117
  return X(u.L, Z(u.L, o), d);
114
118
  }
115
- function Bi(e, t, n, r = {}) {
119
+ function ea(e, t, n, r = {}) {
116
120
  return n <= 1 ? n === 1 ? [$(e, t, 0, r)] : [] : Array.from({ length: n }, (i, a) => $(e, t, a / (n - 1), r));
117
121
  }
118
122
  //#endregion
119
123
  //#region src/useAsyncOptions.ts
120
- function Vi({ load: e, debounceMs: t = 150, minLength: n = 0 }) {
121
- let [r, i] = Y(""), [a, o] = Y([]), [s, c] = Y(!1), [l, u] = Y(null), d = Ri(e), f = J(0), p = J(0), m = J(null);
124
+ function ta({ load: e, debounceMs: t = 150, minLength: n = 0 }) {
125
+ let [r, i] = Y(""), [a, o] = Y([]), [s, c] = Y(!1), [l, u] = Y(null), d = Qi(e), f = J(0), p = J(0), m = J(null);
122
126
  return q(() => {
123
127
  if (r.length < n) {
124
128
  m.current?.abort(), m.current = null, p.current = f.current, o([]), c(!1), u(null);
@@ -143,10 +147,10 @@ function Vi({ load: e, debounceMs: t = 150, minLength: n = 0 }) {
143
147
  isLoading: s,
144
148
  loadError: l,
145
149
  inputValue: r,
146
- onInputChange: zi((e) => i(e), [])
150
+ onInputChange: $i((e) => i(e), [])
147
151
  };
148
152
  }
149
153
  //#endregion
150
- export { ft as ActionBar, Ve as AddIcon, Ae as AlignBottomIcon, Le as AlignCenterXIcon, be as AlignCenterYIcon, I as AlignLeftIcon, Me as AlignRightIcon, ze as AlignTopIcon, Fi as AnimatedTimeline, B as ArrowIcon, gt as BADGE_STATUS_ICONS, kr as BASIC_PALETTE, Dr as BUILTIN_PALETTES, mt as Badge, Ti as BandEditor, Ee as BringForwardIcon, Ue as BringToFrontIcon, H as BusyIcon, _t as Button, cr as ButtonBar, or as COLOR_MODE_OPTIONS, di as Callout, ui as CalloutTrigger, me as CheckIcon, Zr as Checkbox, Pe as ChevronIcon, Oe as CloneIcon, vt as CloseButton, ve as CloseIcon, yt as Code, ge as CollapseIcon, Cn as ColorField, ir as ColorModeControl, si as ComboBox, oi as ComboBoxItem, P as CompareIcon, Ge as CopyIcon, Ze as CrosshairIcon, Kt as CurveEditor, rn as CurveField, R as CutIcon, wt as DataGrid, Ye as DeleteIcon, Et as DetailList, Tt as DetailRow, li as DetentSlider, cn as Dialog, on as DialogRow, Ct as Disclosure, xt as DisclosureMark, St as DisclosureRow, w as DistributeHorizontalIcon, d as DistributeVerticalIcon, Dt as DragGhost, Ot as DragGrip, qe as DuplicateIcon, Mi as EASING_NAMES, pt as EDGE_PROFILES, Di as EasingPicker, E as EllipseIcon, ee as ErrorIcon, p as ExpandIcon, v as ExportIcon, we as EyedropperIcon, Pr as FallthroughDiagram, Yn as Field, wr as FillStrokeSwatch, c as FilterIcon, Se as FitIcon, de as FlipXIcon, g as FlipYIcon, ct as Focusable, Dn as FontFamilySelect, kn as FontWeightSelect, b as FullscreenIcon, Nr as GestureRoute, Hn as GradientEditor, Vn as GradientHandles, ne as GridIcon, oe as GroupIcon, tn as HANDLE_SIZE_TOKENS, ue as HandIcon, C as HiddenIcon, a as ICON_FILLS, r as ICON_GROUPS, n as ICON_PATHS, o as Icon, $e as ImageIcon, u as InfoIcon, Sn as InlineRange, An as Input, nr as ItemList, Ei as Jog, Nt as KeyCap, jt as KeySequence, k as LassoIcon, $n as LayerList, Yt as LayeredCurveEditor, ae as LayersIcon, O as LayoutColumnsIcon, A as LayoutGridIcon, ie as LayoutRowsIcon, le as LineIcon, Ie as LinkIcon, rr as ListEditor, ce as LockIcon, M as LoupeIcon, Sr as MIXED, j as MeasureIcon, ai as MenuButton, Ln as MeshEditor, zn as MeshHandles, N as ModeAutoIcon, S as ModeDarkIcon, s as ModeLightIcon, jn as NumberField, sr as OptionsBar, at as OverlayPortalProvider, pe as PageIcon, qn as PaintField, Kn as PaintInput, He as PanIcon, je as PasteIcon, Gn as PatternPicker, Re as PauseIcon, xe as PenIcon, L as PencilIcon, Ne as PinIcon, Be as PlayIcon, Ut as Plot2D, _i as PointPlotter, V as PolygonIcon, jr as Powerline, Br as PrefsDialog, Lr as PrefsForm, Ir as PrefsPane, zr as PrefsRail, gn as PropertyControl, pn as PropertyField, an as PropertyGroup, dn as PropertyHelp, ln as PropertyList, mn as PropertyNote, hn as PropertyPanel, un as PropertyRow, fn as PropertySpan, Zn as Radio, Xn as RadioGroup, De as RandomizeIcon, ci as RangeSlider, xn as RecentColorsProvider, We as RectIcon, fe as RedoIcon, he as RefreshIcon, Fe as RemoveIcon, ke as ResetIcon, Hr as ResizeHandle, Er as STANDARD_PALETTE, Un as SceneGradientHandles, ye as SearchIcon, En as Select, _e as SelectIcon, wn as SelectItem, Tn as SelectSection, Vr as SelectionPanel, F as SendBackwardIcon, Ke as SendToBackIcon, Ur as Sidebar, Wr as SidebarPanel, Pn as Slider, Qe as SnapIcon, z as SnapshotIcon, Xe as SortIcon, T as StarIcon, qr as StatusBar, Gr as StatusBarItem, Kr as StatusBarSpacer, f as StepBackIcon, Je as StepForwardIcon, D as StepIcon, te as StopIcon, sn as Subpanel, Tr as SwatchGrid, Ar as SwatchStrip, Qn as Switch, bi as TOKEN_CATEGORIES, ti as Tab, $r as TabList, ei as TabPanel, Qr as Tabs, m as TextIcon, ar as ThemeSwitcher, ji as Timeline, mi as ToastQueue, gi as ToastRegion, Fn as ToggleBar, Si as TokenPanel, Jr as ToolButton, Yr as ToolGroup, Cr as ToolOptionsBar, Xr as ToolPalette, ot as Tooltip, st as TooltipTrigger, ki as Transport, ii as Tree, y as TuneIcon, Te as UndoIcon, l as UngroupIcon, Mn as UnitField, Ce as UnknownIcon, h as UnlockIcon, _ as VisibleIcon, x as WarningIcon, re as ZoomInIcon, se as ZoomOutIcon, vr as aggregateValue, Qt as applyKeyframeDrag, Z as chromaAt, br as classifyKind, Bi as colorRamp, qt as createFunctionLayer, Xt as createKeyframeLayer, _n as createRecentColorsStore, Jt as createSetCurveOp, hi as createToastQueue, pi as defaultToastQueue, Or as describeColor, kt as detectPlatform, t as dlog, Pi as easingBezier, Oi as easingLabel, gr as effectiveSections, Jn as fieldClasses, dr as filterPrefSubtree, ni as filterTree, On as fontWeightLabel, dt as formatShortcut, ut as formatShortcutParts, zt as formatTick, Gt as functionLayerState, Mr as gestureRouteSegments, $t as handleHalf, en as handleSize, At as inferKeycapKind, xi as inferTokenType, e as isDebugEnabled, i as isFillable, Rn as isMeshPaint, pr as isPrefLeaf, lt as keyGlyph, Mt as keySpecFromKey, Pt as keySpecsFromMods, Ft as keySpecsFromShortcut, Zt as keyframeLayerState, yr as kindBreakdown, Ci as linearScale, wi as logScale, Ht as modelToPlot, er as moveLayers, rt as nearestPortalHost, Vt as niceStep, Rt as niceTicks, xr as nodeValueAt, yn as normalizeRecentColor, X as oklchToHex, Bn as paintGradientTrack, Nn as paintPreviewCss, Fr as pickActiveSection, Lt as plotToModel, ur as prefDisplayBounds, hr as prefFieldProps, lr as prefRailItems, fr as prefValueAtPath, $ as rampColor, yi as refitScale, Ni as samePath, Wt as sampleByInterpolation, Ai as sampleEasing, Wn as seedPattern, _r as setAtPath, nn as snapToNearest, et as solidColorOf, It as stepDecimals, tt as strokeColorOf, Bt as tickDecimals, fi as toast, vi as tokenCategory, ri as treeBranchIds, it as useAssignedPortalContainer, Vi as useAsyncOptions, nt as useOverlayPortal, vn as useRecentColors, bn as useRecentColorsStore, U as useRecordRecentColor, bt as useReorderDragList, In as useRovingTabIndex, tr as useSceneLayerList, Rr as useScrollSpy, ht as useStance, mr as visiblePrefSubtree };
154
+ export { ht as ActionBar, Ue as AddIcon, Me as AlignBottomIcon, ze as AlignCenterXIcon, Se as AlignCenterYIcon, R as AlignLeftIcon, Pe as AlignRightIcon, Ve as AlignTopIcon, Yi as AnimatedTimeline, H as ArrowIcon, yt as BADGE_STATUS_ICONS, bt as BADGE_VARIANT_ICONS, Ur as BASIC_PALETTE, Vr as BUILTIN_PALETTES, Sr as BUTTON_BAR_VARIANT_ICONS, St as BUTTON_VARIANT_ICONS, _t as Badge, zi as BandEditor, Oe as BringForwardIcon, Ge as BringToFrontIcon, pe as BusyIcon, xt as Button, xr as ButtonBar, Tt as CODE_VARIANT_ICONS, vr as COLOR_MODE_OPTIONS, Ti as Callout, wi as CalloutTrigger, ge as CheckIcon, di as Checkbox, Ie as ChevronIcon, Ae as CloneIcon, Ct as CloseButton, be as CloseIcon, wt as Code, ve as CollapseIcon, An as ColorField, gr as ColorModeControl, xi as ComboBox, bi as ComboBoxItem, I as CompareIcon, qe as CopyIcon, $e as CrosshairIcon, $t as CurveEditor, dn as CurveField, B as CutIcon, At as DataGrid, Ze as DeleteIcon, Mt as DetailList, jt as DetailRow, Ci as DetentSlider, hn as Dialog, pn as DialogRow, kt as Disclosure, Dt as DisclosureMark, Ot as DisclosureRow, E as DistributeHorizontalIcon, d as DistributeVerticalIcon, Nt as DragGhost, Pt as DragGrip, Ye as DuplicateIcon, Ki as EASING_NAMES, gt as EDGE_PROFILES, Vi as EasingPicker, O as EllipseIcon, ee as ErrorIcon, p as ExpandIcon, y as ExportIcon, Ee as EyedropperIcon, Jr as FallthroughDiagram, sr as Field, Rr as FillStrokeSwatch, c as FilterIcon, we as FitContainIcon, h as FitFillIcon, _ as FitIcon, Gn as FitLabel, Un as FitScope, x as FitStretchIcon, ne as FlipXIcon, oe as FlipYIcon, dt as Focusable, Pn as FontFamilySelect, In as FontWeightSelect, ue as FullscreenIcon, qr as GestureRoute, Qn as GradientEditor, Zn as GradientHandles, w as GridIcon, tt as GroupIcon, ln as HANDLE_SIZE_TOKENS, u as HandIcon, j as HiddenIcon, a as ICON_FILLS, r as ICON_GROUPS, n as ICON_PATHS, o as Icon, ae as ImageIcon, A as InfoIcon, U as InlineRange, Ln as Input, mr as ItemList, Bi as Jog, Ht as KEYCAP_VARIANT_ICONS, Lt as KeyCap, Bt as KeySequence, M as LassoIcon, dr as LayerList, nn as LayeredCurveEditor, ie as LayersIcon, le as LayoutColumnsIcon, Re as LayoutGridIcon, ce as LayoutRowsIcon, P as LineIcon, N as LinkIcon, hr as ListEditor, F as LockIcon, C as LoupeIcon, Ir as MIXED, s as MeasureIcon, yi as MenuButton, qn as MeshEditor, Yn as MeshHandles, he as ModeAutoIcon, We as ModeDarkIcon, Ne as ModeLightIcon, er as NumberField, br as OPTIONS_BAR_VARIANT_ICONS, yr as OptionsBar, ct as OverlayPortalProvider, Be as PageIcon, ar as PaintField, ir as PaintInput, Ce as PanIcon, z as PasteIcon, rr as PatternPicker, Fe as PauseIcon, He as PenIcon, fe as PencilIcon, ke as PinIcon, Ke as PlayIcon, Xt as Plot2D, ji as PointPlotter, me as PolygonIcon, Gr as Powerline, ei as PrefsDialog, Zr as PrefsForm, Xr as PrefsPane, $r as PrefsRail, Cn as PropertyControl, bn as PropertyField, fn as PropertyGroup, vn as PropertyHelp, gn as PropertyList, xn as PropertyNote, Sn as PropertyPanel, _n as PropertyRow, yn as PropertySpan, lr as Radio, cr as RadioGroup, _e as RandomizeIcon, Si as RangeSlider, kn as RecentColorsProvider, Le as RectIcon, je as RedoIcon, xe as RefreshIcon, ye as RemoveIcon, L as ResetIcon, ni as ResizeHandle, Br as STANDARD_PALETTE, $n as SceneGradientHandles, Je as SearchIcon, Nn as Select, et as SelectIcon, jn as SelectItem, Mn as SelectSection, ti as SelectionPanel, V as SendBackwardIcon, Qe as SendToBackIcon, ri as Sidebar, ii as SidebarPanel, zn as Slider, D as SnapIcon, f as SnapshotIcon, Xe as SortIcon, k as StarIcon, si as StatusBar, ai as StatusBarItem, oi as StatusBarSpacer, te as StepBackIcon, m as StepForwardIcon, b as StepIcon, De as StopIcon, mn as Subpanel, zr as SwatchGrid, Wr as SwatchStrip, ur as Switch, Kn as TOGGLE_BAR_VARIANT_ICONS, Pi as TOKEN_CATEGORIES, hi as Tab, pi as TabList, mi as TabPanel, fi as Tabs, l as TextIcon, _r as ThemeSwitcher, Gi as Timeline, Oi as ToastQueue, Ai as ToastRegion, Bn as ToggleBar, Ii as TokenPanel, ci as ToolButton, li as ToolGroup, Lr as ToolOptionsBar, ui as ToolPalette, lt as Tooltip, ut as TooltipTrigger, Ui as Transport, vi as Tree, Te as TuneIcon, g as UndoIcon, v as UngroupIcon, tr as UnitField, S as UnknownIcon, re as UnlockIcon, se as VisibleIcon, de as WarningIcon, T as ZoomInIcon, nt as ZoomOutIcon, Mr as aggregateValue, on as applyKeyframeDrag, Z as chromaAt, Pr as classifyKind, ea as colorRamp, en as createFunctionLayer, rn as createKeyframeLayer, wn as createRecentColorsStore, tn as createSetCurveOp, ki as createToastQueue, Di as defaultToastQueue, Hr as describeColor, zt as detectPlatform, t as dlog, Ji as easingBezier, Hi as easingLabel, Ar as effectiveSections, or as fieldClasses, Tr as filterPrefSubtree, gi as filterTree, Fn as fontWeightLabel, mt as formatShortcut, pt as formatShortcutParts, Kt as formatTick, Qt as functionLayerState, Kr as gestureRouteSegments, sn as handleHalf, cn as handleSize, Ft as inferKeycapKind, Fi as inferTokenType, e as isDebugEnabled, i as isFillable, Jn as isMeshPaint, Dr as isPrefLeaf, ft as keyGlyph, Vt as keySpecFromKey, It as keySpecsFromMods, Rt as keySpecsFromShortcut, an as keyframeLayerState, Nr as kindBreakdown, Wn as labelForms, Li as linearScale, Ri as logScale, Yt as modelToPlot, fr as moveLayers, ot as nearestPortalHost, Jt as niceStep, Gt as niceTicks, Fr as nodeValueAt, Dn as normalizeRecentColor, X as oklchToHex, Xn as paintGradientTrack, Rn as paintPreviewCss, Yr as pickActiveSection, Wt as plotToModel, wr as prefDisplayBounds, kr as prefFieldProps, Cr as prefRailItems, Er as prefValueAtPath, $ as rampColor, Ni as refitScale, qi as samePath, Zt as sampleByInterpolation, Wi as sampleEasing, nr as seedPattern, jr as setAtPath, un as snapToNearest, rt as solidColorOf, Ut as stepDecimals, it as strokeColorOf, qt as tickDecimals, Ei as toast, Mi as tokenCategory, _i as treeBranchIds, st as useAssignedPortalContainer, ta as useAsyncOptions, Hn as useFitScope, at as useOverlayPortal, En as useRecentColors, On as useRecentColorsStore, Tn as useRecordRecentColor, Et as useReorderDragList, Vn as useRovingTabIndex, pr as useSceneLayerList, Qr as useScrollSpy, vt as useStance, Or as visiblePrefSubtree };
151
155
 
152
156
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["isDebugEnabled","ICON_PATHS","ICON_GROUPS","isFillable","ICON_FILLS","Icon","ModeLightIcon","FilterIcon","UngroupIcon","InfoIcon","DistributeVerticalIcon","StepBackIcon","ExpandIcon","TextIcon","ErrorIcon","StopIcon","GridIcon","ZoomInIcon","LayoutRowsIcon","LayersIcon","GroupIcon","ZoomOutIcon","LockIcon","LineIcon","HandIcon","FlipXIcon","UnlockIcon","FlipYIcon","VisibleIcon","ExportIcon","TuneIcon","FullscreenIcon","WarningIcon","ModeDarkIcon","HiddenIcon","DistributeHorizontalIcon","StarIcon","EllipseIcon","StepIcon","LayoutColumnsIcon","LassoIcon","LayoutGridIcon","MeasureIcon","LoupeIcon","ModeAutoIcon","CompareIcon","SendBackwardIcon","AlignLeftIcon","PencilIcon","CutIcon","SnapshotIcon","ArrowIcon","PolygonIcon","BusyIcon","RedoIcon","PageIcon","CheckIcon","RefreshIcon","CollapseIcon","SelectIcon","CloseIcon","SearchIcon","AlignCenterYIcon","PenIcon","FitIcon","UnknownIcon","EyedropperIcon","UndoIcon","BringForwardIcon","RandomizeIcon","CloneIcon","ResetIcon","AlignBottomIcon","PasteIcon","AlignRightIcon","PinIcon","ChevronIcon","RemoveIcon","LinkIcon","AlignCenterXIcon","PauseIcon","AlignTopIcon","PlayIcon","AddIcon","PanIcon","BringToFrontIcon","RectIcon","CopyIcon","SendToBackIcon","DuplicateIcon","StepForwardIcon","DeleteIcon","SortIcon","CrosshairIcon","SnapIcon","ImageIcon","solidColorOf","strokeColorOf","useOverlayPortal","nearestPortalHost","useAssignedPortalContainer","OverlayPortalProvider","Tooltip","TooltipTrigger","Focusable","keyGlyph","formatShortcutParts","formatShortcut","ActionBar","EDGE_PROFILES","Badge","useStance","BADGE_STATUS_ICONS","Button","CloseButton","Code","useReorderDragList","DisclosureMark","DisclosureRow","Disclosure","DataGrid","DetailRow","DetailList","DragGhost","DragGrip","detectPlatform","inferKeycapKind","KeySequence","keySpecFromKey","KeyCap","keySpecsFromMods","keySpecsFromShortcut","stepDecimals","plotToModel","niceTicks","formatTick","tickDecimals","niceStep","modelToPlot","Plot2D","sampleByInterpolation","functionLayerState","CurveEditor","createFunctionLayer","createSetCurveOp","LayeredCurveEditor","createKeyframeLayer","keyframeLayerState","applyKeyframeDrag","handleHalf","handleSize","HANDLE_SIZE_TOKENS","snapToNearest","CurveField","PropertyGroup","DialogRow","Subpanel","Dialog","PropertyList","PropertyRow","PropertyHelp","PropertySpan","PropertyField","PropertyNote","PropertyPanel","PropertyControl","createRecentColorsStore","useRecordRecentColor","useRecentColors","normalizeRecentColor","useRecentColorsStore","RecentColorsProvider","InlineRange","ColorField","SelectItem","SelectSection","Select","FontFamilySelect","fontWeightLabel","FontWeightSelect","Input","NumberField","UnitField","paintPreviewCss","Slider","ToggleBar","useRovingTabIndex","MeshEditor","isMeshPaint","MeshHandles","paintGradientTrack","GradientHandles","GradientEditor","SceneGradientHandles","seedPattern","PatternPicker","PaintInput","PaintField","fieldClasses","Field","RadioGroup","Radio","Switch","LayerList","moveLayers","useSceneLayerList","ItemList","ListEditor","ColorModeControl","ThemeSwitcher","COLOR_MODE_OPTIONS","OptionsBar","ButtonBar","prefRailItems","prefDisplayBounds","filterPrefSubtree","prefValueAtPath","isPrefLeaf","visiblePrefSubtree","prefFieldProps","effectiveSections","setAtPath","aggregateValue","kindBreakdown","classifyKind","nodeValueAt","MIXED","ToolOptionsBar","FillStrokeSwatch","SwatchGrid","STANDARD_PALETTE","BUILTIN_PALETTES","describeColor","BASIC_PALETTE","SwatchStrip","Powerline","gestureRouteSegments","GestureRoute","FallthroughDiagram","pickActiveSection","PrefsPane","PrefsForm","useScrollSpy","PrefsRail","PrefsDialog","SelectionPanel","ResizeHandle","Sidebar","SidebarPanel","StatusBarItem","StatusBarSpacer","StatusBar","ToolButton","ToolGroup","ToolPalette","Checkbox","Tabs","TabList","TabPanel","Tab","filterTree","treeBranchIds","Tree","MenuButton","ComboBoxItem","ComboBox","RangeSlider","DetentSlider","DialogTrigger","Callout","toast","defaultToastQueue","ToastQueue","createToastQueue","ToastRegion","PointPlotter","tokenCategory","refitScale","TOKEN_CATEGORIES","inferTokenType","TokenPanel","linearScale","logScale","BandEditor","Jog","EasingPicker","easingLabel","Transport","sampleEasing","Timeline","EASING_NAMES","samePath","easingBezier","AnimatedTimeline","oklchToHex","oklchDegToHex","chromaAt","lo","hi","curve","L","rgb","r","g","b","hexToRgba","hex","rampColor","options","a","from","to","rgbaToHex","interpolateSrgb","t","space","hue","chroma","s","hexToOklchDeg","H","colorRamp","steps","i","useAsyncOptions","inputValue","setInputValue","useState","setOptions","isLoading","setIsLoading","loadError","setLoadError","loadRef","useLatest","load","issued","useRef","applied","inFlight","useEffect","minLength","timer","mine","controller","next","error","debounceMs","useCallback","dlog"],"sources":["../src/color/oklch.ts","../src/color/ramp.ts","../src/useAsyncOptions.ts"],"sourcesContent":["// OKLCH math from Björn Ottosson: https://bottosson.github.io/posts/oklab/\nimport { oklchDegToHex } 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 const oklchToHex = oklchDegToHex;\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 {\n hexToOklchDeg,\n hexToRgba,\n interpolateSrgb,\n rgbaToHex,\n type ColorInterpolationSpace,\n type HueInterpolation,\n} from '@weasel-js/core';\nimport { chromaAt, oklchToHex, type ChromaCurve } from './oklch';\n\n/**\n * How {@link rampColor} and {@link colorRamp} travel between two endpoints.\n *\n * What each space interpolates:\n *\n * | `space` | components lerped | hue |\n * | --------------- | ---------------------------- | -------------------- |\n * | `'oklch'` | L, C, H | around the wheel |\n * | `'hsl'` | H, S, L | around the wheel |\n * | `'oklab'` | L, a, b | through the wheel |\n * | `'srgb'` | gamma-encoded R, G, B | through the wheel |\n * | `'srgb-linear'` | linear-light R, G, B | through the wheel |\n *\n * A lightness ramp is two endpoints that differ in lightness, and a hue ramp\n * two that differ in hue: the polar spaces keep chroma or saturation fixed\n * while they move, and the others cut a straight line between the two colors,\n * which for a hue ramp passes through gray.\n *\n * `chroma` is an OKLCH envelope in every space, since {@link ChromaCurve}'s\n * numbers are OKLCH chroma over OKLCH lightness. It runs after the\n * interpolation: each sample keeps its lightness and hue, and its chroma is\n * replaced with the curve's value at that lightness. A sample left with no\n * hue (a gray midpoint) takes the hue an OKLCH ramp would have had there.\n */\nexport interface ColorRampOptions {\n /** Default `'oklch'`. */\n space?: ColorInterpolationSpace;\n /** Polar spaces only. Default `'shorter'`. */\n hue?: HueInterpolation;\n chroma?: ChromaCurve;\n}\n\nconst rgb = (hex: string): [number, number, number] => {\n const [r, g, b] = hexToRgba(hex);\n return [r, g, b];\n};\n\n/** One sample of a ramp from `from` to `to` (`#rrggbb`), `t` in 0..1. */\nexport function rampColor(from: string, to: string, t: number, options: ColorRampOptions = {}): string {\n const { space = 'oklch', hue = 'shorter', chroma } = options;\n const a = rgb(from);\n const b = rgb(to);\n const hex = rgbaToHex(interpolateSrgb(a, b, t, space, hue));\n if (!chroma) return hex;\n const s = hexToOklchDeg(hex);\n const H = s.C > 1e-4 ? s.H : hexToOklchDeg(rgbaToHex(interpolateSrgb(a, b, t, 'oklch', hue))).H;\n return oklchToHex(s.L, chromaAt(s.L, chroma), H);\n}\n\n/** `steps` evenly spaced samples from `from` to `to`, both ends included. */\nexport function colorRamp(from: string, to: string, steps: number, options: ColorRampOptions = {}): string[] {\n if (steps <= 1) return steps === 1 ? [rampColor(from, to, 0, options)] : [];\n return Array.from({ length: steps }, (_, i) => rampColor(from, to, i / (steps - 1), options));\n}\n","import { useCallback, useEffect, useRef, useState } from 'react';\nimport { useLatest } from '@weasel-js/core';\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 = useLatest(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, loadRef]);\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":"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"}
1
+ {"version":3,"file":"index.js","names":["isDebugEnabled","ICON_PATHS","ICON_GROUPS","isFillable","ICON_FILLS","Icon","MeasureIcon","FilterIcon","TextIcon","HandIcon","DistributeVerticalIcon","SnapshotIcon","ExpandIcon","StepForwardIcon","ErrorIcon","StepBackIcon","FlipXIcon","UnlockIcon","LayersIcon","ImageIcon","FlipYIcon","VisibleIcon","LayoutRowsIcon","LayoutColumnsIcon","FullscreenIcon","WarningIcon","FitFillIcon","UndoIcon","FitIcon","UngroupIcon","ExportIcon","StepIcon","FitStretchIcon","UnknownIcon","LoupeIcon","GridIcon","ZoomInIcon","DistributeHorizontalIcon","SnapIcon","EllipseIcon","StarIcon","InfoIcon","HiddenIcon","LassoIcon","LinkIcon","LineIcon","LockIcon","CompareIcon","ResetIcon","AlignLeftIcon","PasteIcon","CutIcon","SendBackwardIcon","ArrowIcon","PencilIcon","BusyIcon","PolygonIcon","ModeAutoIcon","CheckIcon","RandomizeIcon","CollapseIcon","RemoveIcon","CloseIcon","RefreshIcon","AlignCenterYIcon","PanIcon","FitContainIcon","TuneIcon","EyedropperIcon","StopIcon","BringForwardIcon","PinIcon","CloneIcon","RedoIcon","AlignBottomIcon","ModeLightIcon","AlignRightIcon","PauseIcon","ChevronIcon","RectIcon","LayoutGridIcon","AlignCenterXIcon","PageIcon","AlignTopIcon","PenIcon","AddIcon","ModeDarkIcon","BringToFrontIcon","PlayIcon","CopyIcon","SearchIcon","DuplicateIcon","SortIcon","DeleteIcon","SendToBackIcon","CrosshairIcon","SelectIcon","GroupIcon","ZoomOutIcon","solidColorOf","strokeColorOf","useOverlayPortal","nearestPortalHost","useAssignedPortalContainer","OverlayPortalProvider","Tooltip","TooltipTrigger","Focusable","keyGlyph","formatShortcutParts","formatShortcut","ActionBar","EDGE_PROFILES","Badge","useStance","BADGE_STATUS_ICONS","BADGE_VARIANT_ICONS","Button","BUTTON_VARIANT_ICONS","CloseButton","Code","CODE_VARIANT_ICONS","useReorderDragList","DisclosureMark","DisclosureRow","Disclosure","DataGrid","DetailRow","DetailList","DragGhost","DragGrip","inferKeycapKind","keySpecsFromMods","KeyCap","keySpecsFromShortcut","detectPlatform","KeySequence","keySpecFromKey","KEYCAP_VARIANT_ICONS","stepDecimals","plotToModel","niceTicks","formatTick","tickDecimals","niceStep","modelToPlot","Plot2D","sampleByInterpolation","functionLayerState","CurveEditor","createFunctionLayer","createSetCurveOp","LayeredCurveEditor","createKeyframeLayer","keyframeLayerState","applyKeyframeDrag","handleHalf","handleSize","HANDLE_SIZE_TOKENS","snapToNearest","CurveField","PropertyGroup","DialogRow","Subpanel","Dialog","PropertyList","PropertyRow","PropertyHelp","PropertySpan","PropertyField","PropertyNote","PropertyPanel","PropertyControl","createRecentColorsStore","useRecordRecentColor","useRecentColors","normalizeRecentColor","useRecentColorsStore","RecentColorsProvider","InlineRange","ColorField","SelectItem","SelectSection","Select","FontFamilySelect","fontWeightLabel","FontWeightSelect","Input","paintPreviewCss","Slider","ToggleBar","useRovingTabIndex","useFitScope","FitScope","labelForms","FitLabel","TOGGLE_BAR_VARIANT_ICONS","MeshEditor","isMeshPaint","MeshHandles","paintGradientTrack","GradientHandles","GradientEditor","SceneGradientHandles","NumberField","UnitField","seedPattern","PatternPicker","PaintInput","PaintField","fieldClasses","Field","RadioGroup","Radio","Switch","LayerList","moveLayers","useSceneLayerList","ItemList","ListEditor","ColorModeControl","ThemeSwitcher","COLOR_MODE_OPTIONS","OptionsBar","OPTIONS_BAR_VARIANT_ICONS","ButtonBar","BUTTON_BAR_VARIANT_ICONS","prefRailItems","prefDisplayBounds","filterPrefSubtree","prefValueAtPath","isPrefLeaf","visiblePrefSubtree","prefFieldProps","effectiveSections","setAtPath","aggregateValue","kindBreakdown","classifyKind","nodeValueAt","MIXED","ToolOptionsBar","FillStrokeSwatch","SwatchGrid","STANDARD_PALETTE","BUILTIN_PALETTES","describeColor","BASIC_PALETTE","SwatchStrip","Powerline","gestureRouteSegments","GestureRoute","FallthroughDiagram","pickActiveSection","PrefsPane","PrefsForm","useScrollSpy","PrefsRail","PrefsDialog","SelectionPanel","ResizeHandle","Sidebar","SidebarPanel","StatusBarItem","StatusBarSpacer","StatusBar","ToolButton","ToolGroup","ToolPalette","Checkbox","Tabs","TabList","TabPanel","Tab","filterTree","treeBranchIds","Tree","MenuButton","ComboBoxItem","ComboBox","RangeSlider","DetentSlider","DialogTrigger","Callout","toast","defaultToastQueue","ToastQueue","createToastQueue","ToastRegion","PointPlotter","tokenCategory","refitScale","TOKEN_CATEGORIES","inferTokenType","TokenPanel","linearScale","logScale","BandEditor","Jog","EasingPicker","easingLabel","Transport","sampleEasing","Timeline","EASING_NAMES","samePath","easingBezier","AnimatedTimeline","oklchToHex","oklchDegToHex","chromaAt","lo","hi","curve","L","rgb","r","g","b","hexToRgba","hex","rampColor","options","a","from","to","rgbaToHex","interpolateSrgb","t","space","hue","chroma","s","hexToOklchDeg","H","colorRamp","steps","i","useAsyncOptions","inputValue","setInputValue","useState","setOptions","isLoading","setIsLoading","loadError","setLoadError","loadRef","useLatest","load","issued","useRef","applied","inFlight","useEffect","minLength","timer","mine","controller","next","error","debounceMs","useCallback","dlog"],"sources":["../src/color/oklch.ts","../src/color/ramp.ts","../src/useAsyncOptions.ts"],"sourcesContent":["// OKLCH math from Björn Ottosson: https://bottosson.github.io/posts/oklab/\nimport { oklchDegToHex } 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 const oklchToHex = oklchDegToHex;\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 {\n hexToOklchDeg,\n hexToRgba,\n interpolateSrgb,\n rgbaToHex,\n type ColorInterpolationSpace,\n type HueInterpolation,\n} from '@weasel-js/core';\nimport { chromaAt, oklchToHex, type ChromaCurve } from './oklch';\n\n/**\n * How {@link rampColor} and {@link colorRamp} travel between two endpoints.\n *\n * What each space interpolates:\n *\n * | `space` | components lerped | hue |\n * | --------------- | ---------------------------- | -------------------- |\n * | `'oklch'` | L, C, H | around the wheel |\n * | `'hsl'` | H, S, L | around the wheel |\n * | `'oklab'` | L, a, b | through the wheel |\n * | `'srgb'` | gamma-encoded R, G, B | through the wheel |\n * | `'srgb-linear'` | linear-light R, G, B | through the wheel |\n *\n * A lightness ramp is two endpoints that differ in lightness, and a hue ramp\n * two that differ in hue: the polar spaces keep chroma or saturation fixed\n * while they move, and the others cut a straight line between the two colors,\n * which for a hue ramp passes through gray.\n *\n * `chroma` is an OKLCH envelope in every space, since {@link ChromaCurve}'s\n * numbers are OKLCH chroma over OKLCH lightness. It runs after the\n * interpolation: each sample keeps its lightness and hue, and its chroma is\n * replaced with the curve's value at that lightness. A sample left with no\n * hue (a gray midpoint) takes the hue an OKLCH ramp would have had there.\n */\nexport interface ColorRampOptions {\n /** Default `'oklch'`. */\n space?: ColorInterpolationSpace;\n /** Polar spaces only. Default `'shorter'`. */\n hue?: HueInterpolation;\n chroma?: ChromaCurve;\n}\n\nconst rgb = (hex: string): [number, number, number] => {\n const [r, g, b] = hexToRgba(hex);\n return [r, g, b];\n};\n\n/** One sample of a ramp from `from` to `to` (`#rrggbb`), `t` in 0..1. */\nexport function rampColor(from: string, to: string, t: number, options: ColorRampOptions = {}): string {\n const { space = 'oklch', hue = 'shorter', chroma } = options;\n const a = rgb(from);\n const b = rgb(to);\n const hex = rgbaToHex(interpolateSrgb(a, b, t, space, hue));\n if (!chroma) return hex;\n const s = hexToOklchDeg(hex);\n const H = s.C > 1e-4 ? s.H : hexToOklchDeg(rgbaToHex(interpolateSrgb(a, b, t, 'oklch', hue))).H;\n return oklchToHex(s.L, chromaAt(s.L, chroma), H);\n}\n\n/** `steps` evenly spaced samples from `from` to `to`, both ends included. */\nexport function colorRamp(from: string, to: string, steps: number, options: ColorRampOptions = {}): string[] {\n if (steps <= 1) return steps === 1 ? [rampColor(from, to, 0, options)] : [];\n return Array.from({ length: steps }, (_, i) => rampColor(from, to, i / (steps - 1), options));\n}\n","import { useCallback, useEffect, useRef, useState } from 'react';\nimport { useLatest } from '@weasel-js/core';\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 = useLatest(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, loadRef]);\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":"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"}
@@ -49,13 +49,19 @@ export interface OverlayPortalTarget {
49
49
  * never read — a failure that shows up as an unthemed overlay, not an error.
50
50
  *
51
51
  * Render `anchor` at the component's own position in the tree — outside the
52
- * portal — and spread `portalProps` onto the React Aria overlay. The anchor
53
- * is what "nearest themed ancestor" is measured from; the first render has
54
- * none yet, so an overlay that mounts already open lands in its host on the
55
- * following render, before paint.
52
+ * portal — and spread `portalProps` onto the React Aria overlay. Render the
53
+ * overlay only once `ready` is true.
54
+ *
55
+ * The anchor is what "nearest themed ancestor" is measured from, and the
56
+ * first render has none yet. An overlay rendered then would portal into the
57
+ * body and move on the next render, but React Aria hides everything outside
58
+ * it on the first mount — so a modal that mounted open left the app root
59
+ * `inert` with itself now inside it. `ready` turns true on that next render,
60
+ * still before paint.
56
61
  */
57
62
  export declare function useOverlayPortal(explicit?: Element | null): {
58
63
  anchor: ReactElement;
59
64
  portalProps: OverlayPortalTarget;
65
+ ready: boolean;
60
66
  };
61
67
  //# sourceMappingURL=portalHost.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"portalHost.d.ts","sourceRoot":"","sources":["../../src/overlays/portalHost.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuC,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAW/F;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,WAAW,GAAG,IAAI,CAEtF;AAKD,+CAA+C;AAC/C,MAAM,WAAW,0BAA0B;IACzC,2EAA2E;IAC3E,SAAS,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,0BAA0B,+BAIxF;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAGhG;AAED,+DAA+D;AAC/D,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAClC;AAED,mEAAmE;AACnE,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC;AAEzE;4EAC4E;AAC5E,MAAM,WAAW,mBAAmB;IAClC,wBAAwB,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG;IAC3D,MAAM,EAAE,YAAY,CAAC;IACrB,WAAW,EAAE,mBAAmB,CAAC;CAClC,CASA"}
1
+ {"version":3,"file":"portalHost.d.ts","sourceRoot":"","sources":["../../src/overlays/portalHost.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuC,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAW/F;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,WAAW,GAAG,IAAI,CAEtF;AAKD,+CAA+C;AAC/C,MAAM,WAAW,0BAA0B;IACzC,2EAA2E;IAC3E,SAAS,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,0BAA0B,+BAIxF;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAGhG;AAED,+DAA+D;AAC/D,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAClC;AAED,mEAAmE;AACnE,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC;AAEzE;4EAC4E;AAC5E,MAAM,WAAW,mBAAmB;IAClC,wBAAwB,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/C;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG;IAC3D,MAAM,EAAE,YAAY,CAAC;IACrB,WAAW,EAAE,mBAAmB,CAAC;IACjC,KAAK,EAAE,OAAO,CAAC;CAChB,CAUA"}