@weasel-js/ui 1.5.1 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (511) hide show
  1. package/dist/chunks/ActionBar-CYvfmEz0.js +57 -0
  2. package/dist/chunks/ActionBar-CYvfmEz0.js.map +1 -0
  3. package/dist/chunks/{Badge-Bf8Rd1R6.js → Badge-DZ0lFs14.js} +755 -738
  4. package/dist/chunks/Badge-DZ0lFs14.js.map +1 -0
  5. package/dist/chunks/{BandEditor-D8I5Uun-.js → BandEditor-D-nVrVO4.js} +44 -44
  6. package/dist/chunks/BandEditor-D-nVrVO4.js.map +1 -0
  7. package/dist/chunks/Button-Dyp31jMt.js +111 -0
  8. package/dist/chunks/Button-Dyp31jMt.js.map +1 -0
  9. package/dist/chunks/ButtonBar-smZzFuEo.js +46 -0
  10. package/dist/chunks/ButtonBar-smZzFuEo.js.map +1 -0
  11. package/dist/chunks/Callout-xLjnx7Mp.js +119 -0
  12. package/dist/chunks/Callout-xLjnx7Mp.js.map +1 -0
  13. package/dist/chunks/{Checkbox-BZZsPaVF.js → Checkbox-ChZz30Ds.js} +5 -5
  14. package/dist/chunks/Checkbox-ChZz30Ds.js.map +1 -0
  15. package/dist/chunks/Code-v4tDWuuN.js +24 -0
  16. package/dist/chunks/Code-v4tDWuuN.js.map +1 -0
  17. package/dist/chunks/{ColorField-YVf8irfr.js → ColorField-DJSCuSJv.js} +15 -15
  18. package/dist/chunks/{ColorField-YVf8irfr.js.map → ColorField-DJSCuSJv.js.map} +1 -1
  19. package/dist/chunks/ColorModeControl-JOEiqtE0.js +47 -0
  20. package/dist/chunks/ColorModeControl-JOEiqtE0.js.map +1 -0
  21. package/dist/chunks/{ComboBox-D57tNYDD.js → ComboBox-C1JgIpML.js} +13 -13
  22. package/dist/chunks/ComboBox-C1JgIpML.js.map +1 -0
  23. package/dist/chunks/{CurveEditor-BXiMoN9d.js → CurveEditor-f1R4kSbD.js} +2 -2
  24. package/dist/chunks/{CurveEditor-BXiMoN9d.js.map → CurveEditor-f1R4kSbD.js.map} +1 -1
  25. package/dist/chunks/DataGrid-CZPrB_3a.js +152 -0
  26. package/dist/chunks/DataGrid-CZPrB_3a.js.map +1 -0
  27. package/dist/chunks/DetailList-DHaXX4TG.js +43 -0
  28. package/dist/chunks/DetailList-DHaXX4TG.js.map +1 -0
  29. package/dist/chunks/{DetentSlider-BWNSv07Z.js → DetentSlider-BYyaZha6.js} +2 -2
  30. package/dist/chunks/{DetentSlider-BWNSv07Z.js.map → DetentSlider-BYyaZha6.js.map} +1 -1
  31. package/dist/chunks/Dialog-GIvjoDQj.js +66 -0
  32. package/dist/chunks/Dialog-GIvjoDQj.js.map +1 -0
  33. package/dist/chunks/Disclosure-D79jhmh2.js +58 -0
  34. package/dist/chunks/Disclosure-D79jhmh2.js.map +1 -0
  35. package/dist/chunks/DragGhost-DcU7cOwy.js +30 -0
  36. package/dist/chunks/DragGhost-DcU7cOwy.js.map +1 -0
  37. package/dist/chunks/{DragHandleGlyph-CppAz4_8.js → DragHandleGlyph-BtBxHjZS.js} +1 -1
  38. package/dist/chunks/{DragHandleGlyph-CppAz4_8.js.map → DragHandleGlyph-BtBxHjZS.js.map} +1 -1
  39. package/dist/chunks/{Field-BNqvUJfg.js → Field-xbqRmjsI.js} +6 -6
  40. package/dist/chunks/Field-xbqRmjsI.js.map +1 -0
  41. package/dist/chunks/FillStrokeSwatch-BViKXIPx.js +111 -0
  42. package/dist/chunks/FillStrokeSwatch-BViKXIPx.js.map +1 -0
  43. package/dist/chunks/{FontFamilySelect-CO19kyOO.js → FontFamilySelect-r9TV_xIH.js} +2 -2
  44. package/dist/chunks/{FontFamilySelect-CO19kyOO.js.map → FontFamilySelect-r9TV_xIH.js.map} +1 -1
  45. package/dist/chunks/GradientEditor-BRTxHG-W.js +333 -0
  46. package/dist/chunks/GradientEditor-BRTxHG-W.js.map +1 -0
  47. package/dist/chunks/{Icon-QhLhaGFe.js → Icon-BW0qv_U7.js} +50 -21
  48. package/dist/chunks/Icon-BW0qv_U7.js.map +1 -0
  49. package/dist/chunks/InlineRange-BwGFDhpT.js +29 -0
  50. package/dist/chunks/InlineRange-BwGFDhpT.js.map +1 -0
  51. package/dist/chunks/{Input-B9Vh7ASP.js → Input-Bx2cuUbS.js} +24 -19
  52. package/dist/chunks/Input-Bx2cuUbS.js.map +1 -0
  53. package/dist/chunks/ItemList-DzJ2lK0R.js +175 -0
  54. package/dist/chunks/ItemList-DzJ2lK0R.js.map +1 -0
  55. package/dist/chunks/ItemList.module-DDUXfuZL.js +14 -0
  56. package/dist/chunks/ItemList.module-DDUXfuZL.js.map +1 -0
  57. package/dist/chunks/{Jog-BYrxbAQU.js → Jog-LPoac9s4.js} +10 -10
  58. package/dist/chunks/Jog-LPoac9s4.js.map +1 -0
  59. package/dist/chunks/{Keycaps-CGNQV2Pz.js → Keycaps-CKiKOJnJ.js} +75 -69
  60. package/dist/chunks/Keycaps-CKiKOJnJ.js.map +1 -0
  61. package/dist/chunks/LayerList-BeGrkLb9.js +427 -0
  62. package/dist/chunks/LayerList-BeGrkLb9.js.map +1 -0
  63. package/dist/chunks/ListEditor-C6zLzCsJ.js +74 -0
  64. package/dist/chunks/ListEditor-C6zLzCsJ.js.map +1 -0
  65. package/dist/chunks/MenuButton-BcdhrNGh.js +70 -0
  66. package/dist/chunks/MenuButton-BcdhrNGh.js.map +1 -0
  67. package/dist/chunks/MeshEditor-BOOIFWnz.js +87 -0
  68. package/dist/chunks/MeshEditor-BOOIFWnz.js.map +1 -0
  69. package/dist/chunks/{NumberField-CQzS6TjF.js → NumberField-C1Y7zP-a.js} +27 -22
  70. package/dist/chunks/NumberField-C1Y7zP-a.js.map +1 -0
  71. package/dist/chunks/{OptionsBar-BWaYG_OH.js → OptionsBar-DlcagPYK.js} +3 -3
  72. package/dist/chunks/{OptionsBar-BWaYG_OH.js.map → OptionsBar-DlcagPYK.js.map} +1 -1
  73. package/dist/chunks/{PaintField-BVYMu3OI.js → PaintField-B2mLRZa4.js} +20 -20
  74. package/dist/chunks/PaintField-B2mLRZa4.js.map +1 -0
  75. package/dist/chunks/{PaintInput-BzAHCKro.js → PaintInput-BFKhd83I.js} +27 -27
  76. package/dist/chunks/PaintInput-BFKhd83I.js.map +1 -0
  77. package/dist/chunks/{PatternPicker-C4OryrYi.js → PatternPicker-DdfpxoQy.js} +6 -6
  78. package/dist/chunks/PatternPicker-DdfpxoQy.js.map +1 -0
  79. package/dist/chunks/{Plot2D-Czvyt_vG.js → Plot2D-lyO7waPQ.js} +1 -1
  80. package/dist/chunks/{Plot2D-Czvyt_vG.js.map → Plot2D-lyO7waPQ.js.map} +1 -1
  81. package/dist/chunks/{PointPlotter-Xvb98GwB.js → PointPlotter-DGs9i5P-.js} +2 -2
  82. package/dist/chunks/{PointPlotter-Xvb98GwB.js.map → PointPlotter-DGs9i5P-.js.map} +1 -1
  83. package/dist/chunks/{Powerline-B_EH-7Z-.js → Powerline-DBEPceLE.js} +7 -5
  84. package/dist/chunks/Powerline-DBEPceLE.js.map +1 -0
  85. package/dist/chunks/Prefs-Ctu0H4-b.js +475 -0
  86. package/dist/chunks/Prefs-Ctu0H4-b.js.map +1 -0
  87. package/dist/chunks/Properties-Bbneh1ws.js +281 -0
  88. package/dist/chunks/Properties-Bbneh1ws.js.map +1 -0
  89. package/dist/chunks/PropertyField-CDb19d3F.js +756 -0
  90. package/dist/chunks/PropertyField-CDb19d3F.js.map +1 -0
  91. package/dist/chunks/{RadioGroup-C6xpdQNg.js → RadioGroup-BK2mD6Q0.js} +6 -6
  92. package/dist/chunks/RadioGroup-BK2mD6Q0.js.map +1 -0
  93. package/dist/chunks/{RangeSlider-CzgeGLVS.js → RangeSlider-BiRAOsTh.js} +8 -8
  94. package/dist/chunks/RangeSlider-BiRAOsTh.js.map +1 -0
  95. package/dist/chunks/{ResizeHandle-1Ey8AOij.js → ResizeHandle-Cc6EOehs.js} +9 -9
  96. package/dist/chunks/{ResizeHandle-1Ey8AOij.js.map → ResizeHandle-Cc6EOehs.js.map} +1 -1
  97. package/dist/chunks/Select-DVValBe1.js +225 -0
  98. package/dist/chunks/Select-DVValBe1.js.map +1 -0
  99. package/dist/chunks/SelectionPanel-C5LmZA7b.js +103 -0
  100. package/dist/chunks/SelectionPanel-C5LmZA7b.js.map +1 -0
  101. package/dist/chunks/{Sidebar-BlUjn8lD.js → Sidebar-DKKd4R-x.js} +4 -4
  102. package/dist/chunks/Sidebar-DKKd4R-x.js.map +1 -0
  103. package/dist/chunks/{SidebarPanel-BqHfz6VK.js → SidebarPanel-u5NsuAZY.js} +15 -19
  104. package/dist/chunks/SidebarPanel-u5NsuAZY.js.map +1 -0
  105. package/dist/chunks/{Slider-B2ywUZH6.js → Slider-BwRrWHFW.js} +58 -58
  106. package/dist/chunks/Slider-BwRrWHFW.js.map +1 -0
  107. package/dist/chunks/{StatusBar-BFt7Yw5O.js → StatusBar-CdPdmmda.js} +6 -6
  108. package/dist/chunks/StatusBar-CdPdmmda.js.map +1 -0
  109. package/dist/chunks/SwatchGrid-C-Zx2Exd.js +73 -0
  110. package/dist/chunks/SwatchGrid-C-Zx2Exd.js.map +1 -0
  111. package/dist/chunks/{Switch-Om3t3ASc.js → Switch-DxF7TsEu.js} +5 -5
  112. package/dist/chunks/Switch-DxF7TsEu.js.map +1 -0
  113. package/dist/chunks/{Tabs-EAvYywil.js → Tabs-GXEfoe3o.js} +5 -5
  114. package/dist/chunks/Tabs-GXEfoe3o.js.map +1 -0
  115. package/dist/chunks/{Timeline-BEyKaBXl.js → Timeline-SgmpQtUV.js} +128 -132
  116. package/dist/chunks/Timeline-SgmpQtUV.js.map +1 -0
  117. package/dist/chunks/{Toast-iqLDD_XZ.js → Toast-BfcljZz6.js} +15 -15
  118. package/dist/chunks/Toast-BfcljZz6.js.map +1 -0
  119. package/dist/chunks/ToggleBar-Btnl5r7F.js +80 -0
  120. package/dist/chunks/ToggleBar-Btnl5r7F.js.map +1 -0
  121. package/dist/chunks/TokenPanel-5ajHEHha.js +634 -0
  122. package/dist/chunks/TokenPanel-5ajHEHha.js.map +1 -0
  123. package/dist/chunks/{ToolButton-Dd-1T5aX.js → ToolButton-rzqlFlAc.js} +9 -9
  124. package/dist/chunks/ToolButton-rzqlFlAc.js.map +1 -0
  125. package/dist/chunks/{ToolGroup-BBI-W-Gm.js → ToolGroup-4bUBV5k6.js} +3 -3
  126. package/dist/chunks/ToolGroup-4bUBV5k6.js.map +1 -0
  127. package/dist/chunks/ToolOptionsBar-BF3TNXA3.js +85 -0
  128. package/dist/chunks/ToolOptionsBar-BF3TNXA3.js.map +1 -0
  129. package/dist/chunks/ToolPalette-Uw4PvWwa.js +83 -0
  130. package/dist/chunks/ToolPalette-Uw4PvWwa.js.map +1 -0
  131. package/dist/chunks/Tooltip-9XiJF937.js +42 -0
  132. package/dist/chunks/Tooltip-9XiJF937.js.map +1 -0
  133. package/dist/chunks/Tree-BGt6P8tI.js +203 -0
  134. package/dist/chunks/Tree-BGt6P8tI.js.map +1 -0
  135. package/dist/chunks/{createKeyframeLayer-7j7ukrSx.js → createKeyframeLayer-BzDRCrrh.js} +71 -71
  136. package/dist/chunks/{createKeyframeLayer-7j7ukrSx.js.map → createKeyframeLayer-BzDRCrrh.js.map} +1 -1
  137. package/dist/chunks/formatShortcut-BoGqUoWi.js +15 -0
  138. package/dist/chunks/formatShortcut-BoGqUoWi.js.map +1 -0
  139. package/dist/chunks/icons-DbScMMqX.js +179 -0
  140. package/dist/chunks/icons-DbScMMqX.js.map +1 -0
  141. package/dist/chunks/interactiveTarget-C7QUBaJN.js +24 -0
  142. package/dist/chunks/interactiveTarget-C7QUBaJN.js.map +1 -0
  143. package/dist/chunks/{keyGlyph-Bp0wnLHn.js → keyGlyph-CLvUHU8c.js} +1 -1
  144. package/dist/chunks/{keyGlyph-Bp0wnLHn.js.map → keyGlyph-CLvUHU8c.js.map} +1 -1
  145. package/dist/chunks/model-BQMvTLnW.js +360 -0
  146. package/dist/chunks/model-BQMvTLnW.js.map +1 -0
  147. package/dist/chunks/number-6S8IzXVt.js +89 -0
  148. package/dist/chunks/number-6S8IzXVt.js.map +1 -0
  149. package/dist/chunks/paintPreview-DPtZS4yU.js +42 -0
  150. package/dist/chunks/paintPreview-DPtZS4yU.js.map +1 -0
  151. package/dist/chunks/paintValue-Bz6AVuh3.js +18 -0
  152. package/dist/chunks/paintValue-Bz6AVuh3.js.map +1 -0
  153. package/dist/chunks/prefField-CLkhrvYl.js +197 -0
  154. package/dist/chunks/prefField-CLkhrvYl.js.map +1 -0
  155. package/dist/chunks/segmentTooltip-CAkZlW-t.js +29 -0
  156. package/dist/chunks/segmentTooltip-CAkZlW-t.js.map +1 -0
  157. package/dist/chunks/segmentedControl.module-D2nw68Yo.js +11 -0
  158. package/dist/chunks/segmentedControl.module-D2nw68Yo.js.map +1 -0
  159. package/dist/chunks/{snap-B0WQwetQ.js → snap-DC4Km8xG.js} +1 -1
  160. package/dist/chunks/{snap-B0WQwetQ.js.map → snap-DC4Km8xG.js.map} +1 -1
  161. package/dist/chunks/stance-CarrcbbP.js +17 -0
  162. package/dist/chunks/stance-CarrcbbP.js.map +1 -0
  163. package/dist/chunks/useReorderDragList-Dcezzgix.js +131 -0
  164. package/dist/chunks/useReorderDragList-Dcezzgix.js.map +1 -0
  165. package/dist/chunks/{useRovingTabIndex-Dkpf_KhN.js → useRovingTabIndex-B4uJqiKP.js} +1 -1
  166. package/dist/chunks/useRovingTabIndex-B4uJqiKP.js.map +1 -0
  167. package/dist/color/oklch.d.ts +2 -1
  168. package/dist/color/oklch.d.ts.map +1 -1
  169. package/dist/color/ramp.d.ts +38 -0
  170. package/dist/color/ramp.d.ts.map +1 -0
  171. package/dist/components/ActionBar/ActionBar.d.ts +6 -4
  172. package/dist/components/ActionBar/ActionBar.d.ts.map +1 -1
  173. package/dist/components/ActionBar/index.js +1 -1
  174. package/dist/components/Badge/Badge.d.ts +21 -7
  175. package/dist/components/Badge/Badge.d.ts.map +1 -1
  176. package/dist/components/Badge/effects/Aqua.d.ts +1 -1
  177. package/dist/components/Badge/effects/Aqua.d.ts.map +1 -1
  178. package/dist/components/Badge/index.d.ts +1 -1
  179. package/dist/components/Badge/index.d.ts.map +1 -1
  180. package/dist/components/Badge/index.js +1 -1
  181. package/dist/components/Badge/types.d.ts +6 -5
  182. package/dist/components/Badge/types.d.ts.map +1 -1
  183. package/dist/components/BandEditor/index.js +1 -1
  184. package/dist/components/Button/Button.d.ts +17 -3
  185. package/dist/components/Button/Button.d.ts.map +1 -1
  186. package/dist/components/Button/index.d.ts +1 -1
  187. package/dist/components/Button/index.d.ts.map +1 -1
  188. package/dist/components/Button/index.js +1 -1
  189. package/dist/components/ButtonBar/ButtonBar.d.ts +36 -0
  190. package/dist/components/ButtonBar/ButtonBar.d.ts.map +1 -0
  191. package/dist/components/ButtonBar/index.d.ts +3 -0
  192. package/dist/components/ButtonBar/index.d.ts.map +1 -0
  193. package/dist/components/ButtonBar/index.js +2 -0
  194. package/dist/components/Callout/Callout.d.ts +2 -5
  195. package/dist/components/Callout/Callout.d.ts.map +1 -1
  196. package/dist/components/Callout/index.d.ts +1 -1
  197. package/dist/components/Callout/index.d.ts.map +1 -1
  198. package/dist/components/Callout/index.js +1 -1
  199. package/dist/components/Checkbox/index.js +1 -1
  200. package/dist/components/Code/Code.d.ts +28 -0
  201. package/dist/components/Code/Code.d.ts.map +1 -0
  202. package/dist/components/Code/index.d.ts +3 -0
  203. package/dist/components/Code/index.d.ts.map +1 -0
  204. package/dist/components/Code/index.js +2 -0
  205. package/dist/components/ColorField/index.js +1 -1
  206. package/dist/components/ColorModeControl/ColorModeControl.d.ts +21 -0
  207. package/dist/components/ColorModeControl/ColorModeControl.d.ts.map +1 -0
  208. package/dist/components/ColorModeControl/index.d.ts +3 -0
  209. package/dist/components/ColorModeControl/index.d.ts.map +1 -0
  210. package/dist/components/ColorModeControl/index.js +2 -0
  211. package/dist/components/ComboBox/index.js +1 -1
  212. package/dist/components/CurveEditor/index.js +3 -3
  213. package/dist/components/DataGrid/DataGrid.d.ts +22 -0
  214. package/dist/components/DataGrid/DataGrid.d.ts.map +1 -1
  215. package/dist/components/DataGrid/index.js +1 -1
  216. package/dist/components/DetailList/DetailList.d.ts +36 -0
  217. package/dist/components/DetailList/DetailList.d.ts.map +1 -0
  218. package/dist/components/DetailList/index.d.ts +3 -0
  219. package/dist/components/DetailList/index.d.ts.map +1 -0
  220. package/dist/components/DetailList/index.js +2 -0
  221. package/dist/components/DetentSlider/index.js +1 -1
  222. package/dist/components/Dialog/Dialog.d.ts +8 -2
  223. package/dist/components/Dialog/Dialog.d.ts.map +1 -1
  224. package/dist/components/Dialog/index.js +1 -1
  225. package/dist/components/Disclosure/Disclosure.d.ts +25 -17
  226. package/dist/components/Disclosure/Disclosure.d.ts.map +1 -1
  227. package/dist/components/Disclosure/index.d.ts +2 -2
  228. package/dist/components/Disclosure/index.d.ts.map +1 -1
  229. package/dist/components/Disclosure/index.js +2 -2
  230. package/dist/components/DragGhost/DragGhost.d.ts +21 -0
  231. package/dist/components/DragGhost/DragGhost.d.ts.map +1 -0
  232. package/dist/components/DragGhost/index.d.ts +3 -0
  233. package/dist/components/DragGhost/index.d.ts.map +1 -0
  234. package/dist/components/DragGhost/index.js +2 -0
  235. package/dist/components/DragHandleGlyph/index.js +1 -1
  236. package/dist/components/Field/index.js +1 -1
  237. package/dist/components/FillStrokeSwatch/FillStrokeSwatch.d.ts +45 -0
  238. package/dist/components/FillStrokeSwatch/FillStrokeSwatch.d.ts.map +1 -0
  239. package/dist/components/FillStrokeSwatch/index.d.ts +3 -0
  240. package/dist/components/FillStrokeSwatch/index.d.ts.map +1 -0
  241. package/dist/components/FillStrokeSwatch/index.js +2 -0
  242. package/dist/components/FontFamilySelect/index.js +1 -1
  243. package/dist/components/GradientEditor/SceneGradientHandles.d.ts.map +1 -1
  244. package/dist/components/GradientEditor/index.js +1 -1
  245. package/dist/components/InlineRange/InlineRange.d.ts +6 -2
  246. package/dist/components/InlineRange/InlineRange.d.ts.map +1 -1
  247. package/dist/components/InlineRange/index.js +1 -1
  248. package/dist/components/Input/Input.d.ts +13 -0
  249. package/dist/components/Input/Input.d.ts.map +1 -1
  250. package/dist/components/Input/index.js +1 -1
  251. package/dist/components/ItemList/ItemList.d.ts +70 -10
  252. package/dist/components/ItemList/ItemList.d.ts.map +1 -1
  253. package/dist/components/ItemList/index.js +1 -1
  254. package/dist/components/Jog/index.js +1 -1
  255. package/dist/components/Keycaps/index.d.ts +1 -0
  256. package/dist/components/Keycaps/index.d.ts.map +1 -1
  257. package/dist/components/Keycaps/index.js +3 -3
  258. package/dist/components/Keycaps/keySpecsFromMods.d.ts +2 -0
  259. package/dist/components/Keycaps/keySpecsFromMods.d.ts.map +1 -1
  260. package/dist/components/Keycaps/keySpecsFromShortcut.d.ts +16 -0
  261. package/dist/components/Keycaps/keySpecsFromShortcut.d.ts.map +1 -0
  262. package/dist/components/LayerList/LayerList.d.ts +79 -0
  263. package/dist/components/LayerList/LayerList.d.ts.map +1 -0
  264. package/dist/components/LayerList/index.d.ts +3 -0
  265. package/dist/components/LayerList/index.d.ts.map +1 -0
  266. package/dist/components/LayerList/index.js +2 -0
  267. package/dist/components/LayerList/useSceneLayerList.d.ts +20 -0
  268. package/dist/components/LayerList/useSceneLayerList.d.ts.map +1 -0
  269. package/dist/components/ListEditor/ListEditor.d.ts +23 -0
  270. package/dist/components/ListEditor/ListEditor.d.ts.map +1 -0
  271. package/dist/components/ListEditor/index.d.ts +3 -0
  272. package/dist/components/ListEditor/index.d.ts.map +1 -0
  273. package/dist/components/ListEditor/index.js +2 -0
  274. package/dist/components/MenuButton/MenuButton.d.ts +6 -2
  275. package/dist/components/MenuButton/MenuButton.d.ts.map +1 -1
  276. package/dist/components/MenuButton/index.js +1 -1
  277. package/dist/components/MeshEditor/index.js +1 -1
  278. package/dist/components/NumberField/NumberField.d.ts +13 -0
  279. package/dist/components/NumberField/NumberField.d.ts.map +1 -1
  280. package/dist/components/NumberField/UnitField.d.ts +2 -1
  281. package/dist/components/NumberField/UnitField.d.ts.map +1 -1
  282. package/dist/components/NumberField/index.js +1 -1
  283. package/dist/components/OptionsBar/index.js +1 -1
  284. package/dist/components/PaintField/index.js +1 -1
  285. package/dist/components/PaintInput/index.js +1 -1
  286. package/dist/components/PatternPicker/index.js +1 -1
  287. package/dist/components/Plot2D/index.js +1 -1
  288. package/dist/components/PointPlotter/index.js +1 -1
  289. package/dist/components/Powerline/Powerline.d.ts +4 -3
  290. package/dist/components/Powerline/Powerline.d.ts.map +1 -1
  291. package/dist/components/Powerline/index.js +2 -2
  292. package/dist/components/Prefs/PrefsDialog.d.ts +10 -2
  293. package/dist/components/Prefs/PrefsDialog.d.ts.map +1 -1
  294. package/dist/components/Prefs/PrefsForm.d.ts +26 -25
  295. package/dist/components/Prefs/PrefsForm.d.ts.map +1 -1
  296. package/dist/components/Prefs/PrefsPane.d.ts +24 -0
  297. package/dist/components/Prefs/PrefsPane.d.ts.map +1 -0
  298. package/dist/components/Prefs/PrefsRail.d.ts +32 -0
  299. package/dist/components/Prefs/PrefsRail.d.ts.map +1 -0
  300. package/dist/components/Prefs/PrefsRow.d.ts +32 -0
  301. package/dist/components/Prefs/PrefsRow.d.ts.map +1 -0
  302. package/dist/components/Prefs/index.d.ts +5 -2
  303. package/dist/components/Prefs/index.d.ts.map +1 -1
  304. package/dist/components/Prefs/index.js +3 -3
  305. package/dist/components/Prefs/prefField.d.ts +36 -0
  306. package/dist/components/Prefs/prefField.d.ts.map +1 -0
  307. package/dist/components/Prefs/schema.d.ts +32 -1
  308. package/dist/components/Prefs/schema.d.ts.map +1 -1
  309. package/dist/components/Properties/DialogRow.d.ts +33 -0
  310. package/dist/components/Properties/DialogRow.d.ts.map +1 -0
  311. package/dist/components/Properties/PropertyField.d.ts +238 -0
  312. package/dist/components/Properties/PropertyField.d.ts.map +1 -0
  313. package/dist/components/Properties/PropertyGroup.d.ts +18 -3
  314. package/dist/components/Properties/PropertyGroup.d.ts.map +1 -1
  315. package/dist/components/Properties/PropertyPanel.d.ts +50 -256
  316. package/dist/components/Properties/PropertyPanel.d.ts.map +1 -1
  317. package/dist/components/Properties/Subpanel.d.ts +14 -0
  318. package/dist/components/Properties/Subpanel.d.ts.map +1 -0
  319. package/dist/components/Properties/index.d.ts +8 -6
  320. package/dist/components/Properties/index.d.ts.map +1 -1
  321. package/dist/components/Properties/index.js +3 -2
  322. package/dist/components/Properties/storyLayouts.d.ts.map +1 -1
  323. package/dist/components/RadioGroup/index.js +1 -1
  324. package/dist/components/RangeSlider/index.js +1 -1
  325. package/dist/components/ResizeHandle/index.js +1 -1
  326. package/dist/components/Select/Select.d.ts +56 -5
  327. package/dist/components/Select/Select.d.ts.map +1 -1
  328. package/dist/components/Select/index.d.ts +2 -2
  329. package/dist/components/Select/index.d.ts.map +1 -1
  330. package/dist/components/Select/index.js +2 -2
  331. package/dist/components/SelectionPanel/SelectionPanel.d.ts +3 -50
  332. package/dist/components/SelectionPanel/SelectionPanel.d.ts.map +1 -1
  333. package/dist/components/SelectionPanel/index.js +3 -2
  334. package/dist/components/SelectionPanel/model.d.ts +4 -1
  335. package/dist/components/SelectionPanel/model.d.ts.map +1 -1
  336. package/dist/components/SelectionPanel/renderLeaf.d.ts +112 -0
  337. package/dist/components/SelectionPanel/renderLeaf.d.ts.map +1 -0
  338. package/dist/components/Sidebar/index.js +1 -1
  339. package/dist/components/SidebarPanel/SidebarPanel.d.ts +2 -2
  340. package/dist/components/SidebarPanel/SidebarPanel.d.ts.map +1 -1
  341. package/dist/components/SidebarPanel/index.js +1 -1
  342. package/dist/components/Slider/index.js +1 -1
  343. package/dist/components/StatusBar/index.js +1 -1
  344. package/dist/components/SwatchGrid/SwatchGrid.d.ts +34 -0
  345. package/dist/components/SwatchGrid/SwatchGrid.d.ts.map +1 -0
  346. package/dist/components/SwatchGrid/index.d.ts +3 -0
  347. package/dist/components/SwatchGrid/index.d.ts.map +1 -0
  348. package/dist/components/SwatchGrid/index.js +2 -0
  349. package/dist/components/Switch/index.js +1 -1
  350. package/dist/components/Tabs/index.js +1 -1
  351. package/dist/components/Timeline/Lane.d.ts.map +1 -1
  352. package/dist/components/Timeline/index.js +1 -1
  353. package/dist/components/Toast/index.js +1 -1
  354. package/dist/components/ToggleBar/ToggleBar.d.ts +2 -1
  355. package/dist/components/ToggleBar/ToggleBar.d.ts.map +1 -1
  356. package/dist/components/ToggleBar/index.js +1 -1
  357. package/dist/components/TokenPanel/TokenPanel.d.ts +10 -4
  358. package/dist/components/TokenPanel/TokenPanel.d.ts.map +1 -1
  359. package/dist/components/TokenPanel/index.d.ts +2 -2
  360. package/dist/components/TokenPanel/index.d.ts.map +1 -1
  361. package/dist/components/TokenPanel/index.js +2 -2
  362. package/dist/components/TokenPanel/tokenTypes.d.ts +24 -0
  363. package/dist/components/TokenPanel/tokenTypes.d.ts.map +1 -1
  364. package/dist/components/ToolButton/index.js +1 -1
  365. package/dist/components/ToolGroup/index.js +1 -1
  366. package/dist/components/ToolOptionsBar/ToolOptionsBar.d.ts +29 -18
  367. package/dist/components/ToolOptionsBar/ToolOptionsBar.d.ts.map +1 -1
  368. package/dist/components/ToolOptionsBar/index.js +1 -1
  369. package/dist/components/ToolPalette/ToolPalette.d.ts +5 -4
  370. package/dist/components/ToolPalette/ToolPalette.d.ts.map +1 -1
  371. package/dist/components/ToolPalette/index.d.ts +1 -0
  372. package/dist/components/ToolPalette/index.d.ts.map +1 -1
  373. package/dist/components/ToolPalette/index.js +3 -2
  374. package/dist/components/Tooltip/Tooltip.d.ts +6 -2
  375. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
  376. package/dist/components/Tooltip/index.d.ts +1 -1
  377. package/dist/components/Tooltip/index.d.ts.map +1 -1
  378. package/dist/components/Tooltip/index.js +2 -2
  379. package/dist/components/Tree/Tree.d.ts +84 -0
  380. package/dist/components/Tree/Tree.d.ts.map +1 -0
  381. package/dist/components/Tree/index.d.ts +3 -0
  382. package/dist/components/Tree/index.d.ts.map +1 -0
  383. package/dist/components/Tree/index.js +2 -0
  384. package/dist/components/segmentTooltip.d.ts +30 -0
  385. package/dist/components/segmentTooltip.d.ts.map +1 -0
  386. package/dist/components/stance.d.ts +30 -0
  387. package/dist/components/stance.d.ts.map +1 -0
  388. package/dist/components/stanceCss.d.ts +31 -0
  389. package/dist/components/stanceCss.d.ts.map +1 -0
  390. package/dist/components/stanceSurfaces.d.ts +4 -0
  391. package/dist/components/stanceSurfaces.d.ts.map +1 -0
  392. package/dist/format/number.d.ts +13 -3
  393. package/dist/format/number.d.ts.map +1 -1
  394. package/dist/icons/Icon.d.ts.map +1 -1
  395. package/dist/icons/ShapeKindIcon.d.ts +10 -0
  396. package/dist/icons/ShapeKindIcon.d.ts.map +1 -0
  397. package/dist/icons/index.d.ts +5 -3
  398. package/dist/icons/index.d.ts.map +1 -1
  399. package/dist/icons/paths.d.ts +11 -1
  400. package/dist/icons/paths.d.ts.map +1 -1
  401. package/dist/index.d.ts +16 -3
  402. package/dist/index.d.ts.map +1 -1
  403. package/dist/index.js +110 -84
  404. package/dist/index.js.map +1 -1
  405. package/dist/interactiveTarget.d.ts +9 -0
  406. package/dist/interactiveTarget.d.ts.map +1 -0
  407. package/dist/style.css +1 -1
  408. package/dist/useReorderDragList.d.ts +36 -7
  409. package/dist/useReorderDragList.d.ts.map +1 -1
  410. package/dist/useRovingTabIndex.d.ts +8 -6
  411. package/dist/useRovingTabIndex.d.ts.map +1 -1
  412. package/dist/useScrollSpy.d.ts +48 -0
  413. package/dist/useScrollSpy.d.ts.map +1 -0
  414. package/package.json +8 -8
  415. package/dist/chunks/ActionBar-GZdcfdQL.js +0 -62
  416. package/dist/chunks/ActionBar-GZdcfdQL.js.map +0 -1
  417. package/dist/chunks/ActionsBar-Fhx_40iP.js +0 -41
  418. package/dist/chunks/ActionsBar-Fhx_40iP.js.map +0 -1
  419. package/dist/chunks/Badge-Bf8Rd1R6.js.map +0 -1
  420. package/dist/chunks/BandEditor-D8I5Uun-.js.map +0 -1
  421. package/dist/chunks/Button-CExdkQcU.js +0 -90
  422. package/dist/chunks/Button-CExdkQcU.js.map +0 -1
  423. package/dist/chunks/Callout-cx5_CWcW.js +0 -122
  424. package/dist/chunks/Callout-cx5_CWcW.js.map +0 -1
  425. package/dist/chunks/Checkbox-BZZsPaVF.js.map +0 -1
  426. package/dist/chunks/ComboBox-D57tNYDD.js.map +0 -1
  427. package/dist/chunks/DataGrid-BVdDMZkQ.js +0 -104
  428. package/dist/chunks/DataGrid-BVdDMZkQ.js.map +0 -1
  429. package/dist/chunks/Dialog-DuOzsR2g.js +0 -61
  430. package/dist/chunks/Dialog-DuOzsR2g.js.map +0 -1
  431. package/dist/chunks/Disclosure-9UgDzc7Z.js +0 -47
  432. package/dist/chunks/Disclosure-9UgDzc7Z.js.map +0 -1
  433. package/dist/chunks/Field-BNqvUJfg.js.map +0 -1
  434. package/dist/chunks/GradientEditor-B_ymIr4Q.js +0 -333
  435. package/dist/chunks/GradientEditor-B_ymIr4Q.js.map +0 -1
  436. package/dist/chunks/Icon-QhLhaGFe.js.map +0 -1
  437. package/dist/chunks/InlineRange-DdIlfGqG.js +0 -29
  438. package/dist/chunks/InlineRange-DdIlfGqG.js.map +0 -1
  439. package/dist/chunks/Input-B9Vh7ASP.js.map +0 -1
  440. package/dist/chunks/ItemList-BZJQReXD.js +0 -42
  441. package/dist/chunks/ItemList-BZJQReXD.js.map +0 -1
  442. package/dist/chunks/Jog-BYrxbAQU.js.map +0 -1
  443. package/dist/chunks/Keycaps-CGNQV2Pz.js.map +0 -1
  444. package/dist/chunks/LayerStack-DOylrQcm.js +0 -142
  445. package/dist/chunks/LayerStack-DOylrQcm.js.map +0 -1
  446. package/dist/chunks/MenuButton-DGE-0DP0.js +0 -60
  447. package/dist/chunks/MenuButton-DGE-0DP0.js.map +0 -1
  448. package/dist/chunks/MeshEditor-CHoGQ9K8.js +0 -123
  449. package/dist/chunks/MeshEditor-CHoGQ9K8.js.map +0 -1
  450. package/dist/chunks/NumberField-CQzS6TjF.js.map +0 -1
  451. package/dist/chunks/PaintField-BVYMu3OI.js.map +0 -1
  452. package/dist/chunks/PaintInput-BzAHCKro.js.map +0 -1
  453. package/dist/chunks/PatternPicker-C4OryrYi.js.map +0 -1
  454. package/dist/chunks/Powerline-B_EH-7Z-.js.map +0 -1
  455. package/dist/chunks/Prefs-FuaJBs3t.js +0 -308
  456. package/dist/chunks/Prefs-FuaJBs3t.js.map +0 -1
  457. package/dist/chunks/Properties-B3KU69NI.js +0 -874
  458. package/dist/chunks/Properties-B3KU69NI.js.map +0 -1
  459. package/dist/chunks/RadioGroup-C6xpdQNg.js.map +0 -1
  460. package/dist/chunks/RangeSlider-CzgeGLVS.js.map +0 -1
  461. package/dist/chunks/Select-BMYVh10x.js +0 -127
  462. package/dist/chunks/Select-BMYVh10x.js.map +0 -1
  463. package/dist/chunks/SelectionPanel-DTpcQidl.js +0 -572
  464. package/dist/chunks/SelectionPanel-DTpcQidl.js.map +0 -1
  465. package/dist/chunks/Sidebar-BlUjn8lD.js.map +0 -1
  466. package/dist/chunks/SidebarPanel-BqHfz6VK.js.map +0 -1
  467. package/dist/chunks/Slider-B2ywUZH6.js.map +0 -1
  468. package/dist/chunks/StatusBar-BFt7Yw5O.js.map +0 -1
  469. package/dist/chunks/Switch-Om3t3ASc.js.map +0 -1
  470. package/dist/chunks/Tabs-EAvYywil.js.map +0 -1
  471. package/dist/chunks/Timeline-BEyKaBXl.js.map +0 -1
  472. package/dist/chunks/Toast-iqLDD_XZ.js.map +0 -1
  473. package/dist/chunks/ToggleBar--9As2PWG.js +0 -75
  474. package/dist/chunks/ToggleBar--9As2PWG.js.map +0 -1
  475. package/dist/chunks/TokenPanel-BL9hlq7x.js +0 -374
  476. package/dist/chunks/TokenPanel-BL9hlq7x.js.map +0 -1
  477. package/dist/chunks/ToolButton-Dd-1T5aX.js.map +0 -1
  478. package/dist/chunks/ToolGroup-BBI-W-Gm.js.map +0 -1
  479. package/dist/chunks/ToolOptionsBar-B2xPWzJf.js +0 -27
  480. package/dist/chunks/ToolOptionsBar-B2xPWzJf.js.map +0 -1
  481. package/dist/chunks/ToolPalette-BmTDDpmz.js +0 -97
  482. package/dist/chunks/ToolPalette-BmTDDpmz.js.map +0 -1
  483. package/dist/chunks/Tooltip-BHre_vbI.js +0 -42
  484. package/dist/chunks/Tooltip-BHre_vbI.js.map +0 -1
  485. package/dist/chunks/icons-Btrs-JD7.js +0 -165
  486. package/dist/chunks/icons-Btrs-JD7.js.map +0 -1
  487. package/dist/chunks/number-f6PydOZK.js +0 -52
  488. package/dist/chunks/number-f6PydOZK.js.map +0 -1
  489. package/dist/chunks/range.module-DSsOIq1R.js +0 -8
  490. package/dist/chunks/range.module-DSsOIq1R.js.map +0 -1
  491. package/dist/chunks/schema-MCVT1MLv.js +0 -47
  492. package/dist/chunks/schema-MCVT1MLv.js.map +0 -1
  493. package/dist/chunks/segmentedControl.module-DmeUMYe3.js +0 -11
  494. package/dist/chunks/segmentedControl.module-DmeUMYe3.js.map +0 -1
  495. package/dist/chunks/useReorderDragList-CSQGd7zQ.js +0 -102
  496. package/dist/chunks/useReorderDragList-CSQGd7zQ.js.map +0 -1
  497. package/dist/chunks/useRovingTabIndex-Dkpf_KhN.js.map +0 -1
  498. package/dist/components/ActionsBar/ActionsBar.d.ts +0 -35
  499. package/dist/components/ActionsBar/ActionsBar.d.ts.map +0 -1
  500. package/dist/components/ActionsBar/index.d.ts +0 -3
  501. package/dist/components/ActionsBar/index.d.ts.map +0 -1
  502. package/dist/components/ActionsBar/index.js +0 -2
  503. package/dist/components/LayerStack/LayerStack.d.ts +0 -62
  504. package/dist/components/LayerStack/LayerStack.d.ts.map +0 -1
  505. package/dist/components/LayerStack/index.d.ts +0 -2
  506. package/dist/components/LayerStack/index.d.ts.map +0 -1
  507. package/dist/components/LayerStack/index.js +0 -2
  508. package/dist/components/Properties/EffectCard.d.ts +0 -69
  509. package/dist/components/Properties/EffectCard.d.ts.map +0 -1
  510. package/dist/components/Properties/PinDot.d.ts +0 -18
  511. package/dist/components/Properties/PinDot.d.ts.map +0 -1
@@ -0,0 +1,20 @@
1
+ import type { Scene, SceneNode, SelectionApi } from '@weasel-js/core';
2
+ import type { LayerListItem, LayerListProps } from './LayerList';
3
+ /** Arguments for {@link useSceneLayerList}. */
4
+ export interface UseSceneLayerListArgs<TData, TLayer extends string, TPose> {
5
+ scene: Scene<TData, TLayer, TPose>;
6
+ selection: SelectionApi;
7
+ /** What the reorder op is dispatched against — the adapter `<SceneCanvas>` uses. */
8
+ adapter: object;
9
+ /** A row's content for a node: its label, a leading swatch or icon, whether it is locked. */
10
+ itemFor: (node: SceneNode<TData, TLayer, TPose>) => Omit<LayerListItem, 'id' | 'children'>;
11
+ /** Label of the reorder's history entry. Default `'Reorder'`. */
12
+ label?: string;
13
+ }
14
+ /**
15
+ * The props that put a scene in a `<LayerList>`: a row per node, a container's
16
+ * children nested under it, the front-most at the top, selection read from and
17
+ * written to `selection`, and a drag dispatched as a `MoveToIndexOp`.
18
+ */
19
+ export declare function useSceneLayerList<TData, TLayer extends string, TPose>(args: UseSceneLayerListArgs<TData, TLayer, TPose>): Required<Pick<LayerListProps, 'items' | 'selectedIds' | 'onSelect' | 'onReorder'>>;
20
+ //# sourceMappingURL=useSceneLayerList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSceneLayerList.d.ts","sourceRoot":"","sources":["../../../src/components/LayerList/useSceneLayerList.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAU,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEjE,+CAA+C;AAC/C,MAAM,WAAW,qBAAqB,CAAC,KAAK,EAAE,MAAM,SAAS,MAAM,EAAE,KAAK;IACxE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACnC,SAAS,EAAE,YAAY,CAAC;IACxB,oFAAoF;IACpF,OAAO,EAAE,MAAM,CAAC;IAChB,6FAA6F;IAC7F,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC,aAAa,EAAE,IAAI,GAAG,UAAU,CAAC,CAAC;IAC3F,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,SAAS,MAAM,EAAE,KAAK,EACnE,IAAI,EAAE,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAChD,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,GAAG,aAAa,GAAG,UAAU,GAAG,WAAW,CAAC,CAAC,CAyBpF"}
@@ -0,0 +1,23 @@
1
+ /** Props for {@link ListEditor}. */
2
+ export interface ListEditorProps {
3
+ value: readonly string[];
4
+ /** Every edit, add and removal, with the whole list. Entries are written as
5
+ * typed — an empty one stays until it is removed. */
6
+ onChange: (next: string[]) => void;
7
+ /** Shown in an empty entry. */
8
+ placeholder?: string;
9
+ /** Shown in place of the entries when there are none. */
10
+ empty?: string;
11
+ /** Text of the add button. */
12
+ addLabel?: string;
13
+ /** Names the list for assistive tech; each entry is named from it. */
14
+ 'aria-label'?: string;
15
+ className?: string;
16
+ }
17
+ /**
18
+ * An editable list of strings: one field per entry, a remove button beside
19
+ * each, and an add button under them. Enter in an entry adds one after it;
20
+ * Backspace in an empty one removes it.
21
+ */
22
+ export declare function ListEditor({ value, onChange, placeholder, empty, addLabel, 'aria-label': ariaLabel, className, }: ListEditorProps): import("react/jsx-runtime").JSX.Element;
23
+ //# sourceMappingURL=ListEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListEditor.d.ts","sourceRoot":"","sources":["../../../src/components/ListEditor/ListEditor.tsx"],"names":[],"mappings":"AAIA,oCAAoC;AACpC,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB;0DACsD;IACtD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACnC,+BAA+B;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,QAAQ,EACR,WAAW,EACX,KAAc,EACd,QAAgB,EAChB,YAAY,EAAE,SAAS,EACvB,SAAS,GACV,EAAE,eAAe,2CAsEjB"}
@@ -0,0 +1,3 @@
1
+ export { ListEditor } from './ListEditor';
2
+ export type { ListEditorProps } from './ListEditor';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ListEditor/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../../chunks/ListEditor-C6zLzCsJ.js";
2
+ export { e as ListEditor };
@@ -1,5 +1,6 @@
1
1
  import type { ReactNode } from 'react';
2
2
  import { type OverlayPortalProps } from '../../overlays/portalHost';
3
+ import { type SegmentTooltipFields } from '../segmentTooltip';
3
4
  /** One row in a {@link MenuButton}'s list. */
4
5
  export type MenuButtonItem<T extends string = string> = {
5
6
  value: T;
@@ -19,11 +20,14 @@ export type MenuButtonProps<T extends string = string> = {
19
20
  isDisabled?: boolean;
20
21
  className?: string;
21
22
  'aria-label'?: string;
22
- } & OverlayPortalProps;
23
+ } & SegmentTooltipFields & OverlayPortalProps;
23
24
  /**
24
25
  * A button that opens a list and acts on the row chosen — "Add trial…",
25
26
  * "Load…". Unlike a {@link Select} it holds no value, so it sizes to its own
26
27
  * label rather than to its widest row.
28
+ *
29
+ * `shortcut` adds a kit tooltip reading `Name (⌘N)`, named by `aria-label` or
30
+ * a string `label`, as `Button` does; `tooltip` replaces that text.
27
31
  */
28
- export declare function MenuButton<T extends string = string>({ label, items, onAction, isDisabled, className, 'aria-label': ariaLabel, portalContainer, }: MenuButtonProps<T>): import("react/jsx-runtime").JSX.Element;
32
+ export declare function MenuButton<T extends string = string>({ label, items, onAction, isDisabled, className, 'aria-label': ariaLabel, portalContainer, shortcut, tooltip, }: MenuButtonProps<T>): import("react/jsx-runtime").JSX.Element;
29
33
  //# sourceMappingURL=MenuButton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MenuButton.d.ts","sourceRoot":"","sources":["../../../src/components/MenuButton/MenuButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAQvC,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGtF,8CAA8C;AAC9C,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IACtD,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;6CACyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,oCAAoC;AACpC,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IACvD,mEAAmE;IACnE,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,8CAA8C;IAC9C,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,kBAAkB,CAAC;AAEvB;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,EACpD,KAAK,EACL,KAAK,EACL,QAAQ,EACR,UAAU,EACV,SAAS,EACT,YAAY,EAAE,SAAS,EACvB,eAAe,GAChB,EAAE,eAAe,CAAC,CAAC,CAAC,2CAkCpB"}
1
+ {"version":3,"file":"MenuButton.d.ts","sourceRoot":"","sources":["../../../src/components/MenuButton/MenuButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAQvC,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEtF,OAAO,EAAyC,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAErG,8CAA8C;AAC9C,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IACtD,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;6CACyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,oCAAoC;AACpC,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IACvD,mEAAmE;IACnE,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,8CAA8C;IAC9C,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,oBAAoB,GAAG,kBAAkB,CAAC;AAE9C;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,EACpD,KAAK,EACL,KAAK,EACL,QAAQ,EACR,UAAU,EACV,SAAS,EACT,YAAY,EAAE,SAAS,EACvB,eAAe,EACf,QAAQ,EACR,OAAO,GACR,EAAE,eAAe,CAAC,CAAC,CAAC,2CAuCpB"}
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../chunks/MenuButton-DGE-0DP0.js";
1
+ import { t as e } from "../../chunks/MenuButton-BcdhrNGh.js";
2
2
  export { e as MenuButton };
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "../../chunks/MeshEditor-CHoGQ9K8.js";
1
+ import { n as e, t } from "../../chunks/MeshEditor-BOOIFWnz.js";
2
2
  export { t as MeshEditor, e as isMeshPaint };
@@ -1,8 +1,15 @@
1
1
  import { type ReactNode } from 'react';
2
2
  import { type NumberFieldProps as RACNumberFieldProps, type ValidationResult } from 'react-aria-components';
3
+ import { type FieldOrientation } from '../Field/Field';
3
4
  /** Props for {@link NumberField}, on top of React Aria's `NumberField` props. */
4
5
  export type NumberFieldProps = Omit<RACNumberFieldProps, 'children' | 'className'> & {
5
6
  label?: ReactNode;
7
+ /**
8
+ * `'stacked'` (the default) puts the label above the field; `'row'` sets it
9
+ * beside the field at its own width, with any description or error on a
10
+ * line below. Same vocabulary as {@link Field}'s `orientation`.
11
+ */
12
+ orientation?: FieldOrientation;
6
13
  description?: ReactNode;
7
14
  errorMessage?: ReactNode | ((v: ValidationResult) => ReactNode);
8
15
  /** Hide the up/down stepper buttons. Defaults to false. */
@@ -31,6 +38,12 @@ export type NumberFieldProps = Omit<RACNumberFieldProps, 'children' | 'className
31
38
  */
32
39
  export declare const NumberField: import("react").ForwardRefExoticComponent<Omit<RACNumberFieldProps, "className" | "children"> & {
33
40
  label?: ReactNode;
41
+ /**
42
+ * `'stacked'` (the default) puts the label above the field; `'row'` sets it
43
+ * beside the field at its own width, with any description or error on a
44
+ * line below. Same vocabulary as {@link Field}'s `orientation`.
45
+ */
46
+ orientation?: FieldOrientation;
34
47
  description?: ReactNode;
35
48
  errorMessage?: ReactNode | ((v: ValidationResult) => ReactNode);
36
49
  /** Hide the up/down stepper buttons. Defaults to false. */
@@ -1 +1 @@
1
- {"version":3,"file":"NumberField.d.ts","sourceRoot":"","sources":["../../../src/components/NumberField/NumberField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAC7D,OAAO,EAQL,KAAK,gBAAgB,IAAI,mBAAmB,EAC5C,KAAK,gBAAgB,EACtB,MAAM,uBAAuB,CAAC;AAI/B,iFAAiF;AACjF,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,EAAE,UAAU,GAAG,WAAW,CAAC,GAAG;IACnF,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,YAAY,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,gBAAgB,KAAK,SAAS,CAAC,CAAC;IAChE,2DAA2D;IAC3D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;qFACiF;IACjF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;uCACmC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW;YA5Bd,SAAS;kBACH,SAAS;mBACR,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,gBAAgB,KAAK,SAAS,CAAC;IAC/D,2DAA2D;mBAC5C,OAAO;IACtB;qFACiF;YACzE,OAAO;IACf;uCACmC;kBACrB,MAAM;IACpB;;;;OAIG;YACK,MAAM,GAAG,KAAK;gBACV,MAAM;oDAmDlB,CAAC"}
1
+ {"version":3,"file":"NumberField.d.ts","sourceRoot":"","sources":["../../../src/components/NumberField/NumberField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAC7D,OAAO,EAQL,KAAK,gBAAgB,IAAI,mBAAmB,EAC5C,KAAK,gBAAgB,EACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAgB,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGrE,iFAAiF;AACjF,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,EAAE,UAAU,GAAG,WAAW,CAAC,GAAG;IACnF,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;OAIG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,YAAY,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,gBAAgB,KAAK,SAAS,CAAC,CAAC;IAChE,2DAA2D;IAC3D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;qFACiF;IACjF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;uCACmC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW;YAlCd,SAAS;IACjB;;;;OAIG;kBACW,gBAAgB;kBAChB,SAAS;mBACR,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,gBAAgB,KAAK,SAAS,CAAC;IAC/D,2DAA2D;mBAC5C,OAAO;IACtB;qFACiF;YACzE,OAAO;IACf;uCACmC;kBACrB,MAAM;IACpB;;;;OAIG;YACK,MAAM,GAAG,KAAK;gBACV,MAAM;oDA2DlB,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { type UnitTable } from '../../format/number';
1
2
  /** Props for {@link UnitField}. */
2
3
  export interface UnitFieldProps {
3
4
  /** The value in the unit the field shows. NaN shows an empty field. */
@@ -10,7 +11,7 @@ export interface UnitFieldProps {
10
11
  step?: number;
11
12
  /** Units a person may type, each mapped to the factor that turns a number
12
13
  * in it into the unit the field shows: `{ mm: 0.1, cm: 1 }`. */
13
- accepts?: Readonly<Record<string, number>>;
14
+ accepts?: Readonly<UnitTable>;
14
15
  placeholder?: string;
15
16
  /** Render with no box until focused, as {@link NumberField}'s `ghost` does. */
16
17
  ghost?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"UnitField.d.ts","sourceRoot":"","sources":["../../../src/components/NumberField/UnitField.tsx"],"names":[],"mappings":"AAKA,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;qEACiE;IACjE,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,IAAQ,EACR,OAAO,EACP,WAAW,EACX,KAAK,EACL,KAAc,EACd,SAAS,EACT,YAAY,EAAE,SAAS,GACxB,EAAE,cAAc,2CAwDhB"}
1
+ {"version":3,"file":"UnitField.d.ts","sourceRoot":"","sources":["../../../src/components/NumberField/UnitField.tsx"],"names":[],"mappings":"AACA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAIhF,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;qEACiE;IACjE,OAAO,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,IAAQ,EACR,OAAO,EACP,WAAW,EACX,KAAK,EACL,KAAc,EACd,SAAS,EACT,YAAY,EAAE,SAAS,GACxB,EAAE,cAAc,2CAwDhB"}
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "../../chunks/NumberField-CQzS6TjF.js";
1
+ import { n as e, t } from "../../chunks/NumberField-C1Y7zP-a.js";
2
2
  export { e as NumberField, t as UnitField };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../chunks/OptionsBar-BWaYG_OH.js";
1
+ import { t as e } from "../../chunks/OptionsBar-DlcagPYK.js";
2
2
  export { e as OptionsBar };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../chunks/PaintField-BVYMu3OI.js";
1
+ import { t as e } from "../../chunks/PaintField-B2mLRZa4.js";
2
2
  export { e as PaintField };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../chunks/PaintInput-BzAHCKro.js";
1
+ import { t as e } from "../../chunks/PaintInput-BFKhd83I.js";
2
2
  export { e as PaintInput };
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "../../chunks/PatternPicker-C4OryrYi.js";
1
+ import { n as e, t } from "../../chunks/PatternPicker-DdfpxoQy.js";
2
2
  export { t as PatternPicker, e as seedPattern };
@@ -1,2 +1,2 @@
1
- import { a as e, c as t, i as n, n as r, o as i, r as a, s as o, t as s } from "../../chunks/Plot2D-Czvyt_vG.js";
1
+ import { a as e, c as t, i as n, n as r, o as i, r as a, s as o, t as s } from "../../chunks/Plot2D-lyO7waPQ.js";
2
2
  export { s as Plot2D, r as formatTick, o as modelToPlot, a as niceStep, n as niceTicks, t as plotToModel, e as stepDecimals, i as tickDecimals };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../chunks/PointPlotter-Xvb98GwB.js";
1
+ import { t as e } from "../../chunks/PointPlotter-DGs9i5P-.js";
2
2
  export { e as PointPlotter };
@@ -1,15 +1,16 @@
1
1
  import type { ReactNode } from 'react';
2
- import type { BadgeSize, BadgeTone, BadgeVariant } from '../Badge/types';
2
+ import type { BadgeSize, BadgeStatus, BadgeVariant } from '../Badge/types';
3
+ import type { StanceProps } from '../stance';
3
4
  import type { EdgeCap } from '../Badge/bases/edgeProfiles';
4
5
  /**
5
6
  * One segment of a {@link Powerline}. Giving it `onClick` or `href` makes it
6
7
  * interactive, the same way it does on a `Badge`.
7
8
  */
8
- export interface PowerlineSegment {
9
+ export interface PowerlineSegment extends StanceProps {
9
10
  text: ReactNode;
10
11
  /** Cap on this segment's right edge. Next segment's left edge adopts the same profile. */
11
12
  endCap?: EdgeCap;
12
- tone?: BadgeTone;
13
+ status?: BadgeStatus;
13
14
  variant?: BadgeVariant;
14
15
  size?: BadgeSize;
15
16
  onClick?: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"Powerline.d.ts","sourceRoot":"","sources":["../../../src/components/Powerline/Powerline.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAG3D;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,SAAS,CAAC;IAChB,0FAA0F;IAC1F,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gEAAgE;IAChE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,sEAAsE;IACtE,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;kFAC8E;IAC9E,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,QAAiB,EACjB,IAAI,EACJ,OAAO,EACP,KAAK,EACL,GAAG,EACH,SAAS,EACT,GAAG,IAAI,EACR,EAAE,cAAc,2CA6BhB"}
1
+ {"version":3,"file":"Powerline.d.ts","sourceRoot":"","sources":["../../../src/components/Powerline/Powerline.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAG3D;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACnD,IAAI,EAAE,SAAS,CAAC;IAChB,0FAA0F;IAC1F,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gEAAgE;IAChE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,sEAAsE;IACtE,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;kFAC8E;IAC9E,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,QAAiB,EACjB,IAAI,EACJ,OAAO,EACP,KAAK,EACL,GAAG,EACH,SAAS,EACT,GAAG,IAAI,EACR,EAAE,cAAc,2CA+BhB"}
@@ -1,3 +1,3 @@
1
- import { n as e } from "../../chunks/Badge-Bf8Rd1R6.js";
2
- import { t } from "../../chunks/Powerline-B_EH-7Z-.js";
1
+ import { n as e } from "../../chunks/Badge-DZ0lFs14.js";
2
+ import { t } from "../../chunks/Powerline-DBEPceLE.js";
3
3
  export { e as EDGE_PROFILES, t as Powerline };
@@ -9,9 +9,14 @@ export interface PrefsDialogProps extends PrefsFormProps {
9
9
  onOpenChange: (open: boolean) => void;
10
10
  /** Dialog heading. Defaults to the schema root's `name`. */
11
11
  title?: ReactNode;
12
- /** Extra chrome rendered inline with the title (e.g. a dev-mode
13
- * "Show hidden" switch). */
12
+ /** Extra chrome rendered at the end of the title row (e.g. a dev-mode
13
+ * "Show hidden" switch). An action the reader acts on when they are done
14
+ * — resetting, importing — belongs in `footer` instead, where a dialog's
15
+ * actions live. */
14
16
  headerExtra?: ReactNode;
17
+ /** Footer slot, passed through to `Dialog` — typically a reset or done
18
+ * action. */
19
+ footer?: ReactNode;
15
20
  /** Class applied to the dialog's modal box. */
16
21
  dialogClassName?: string;
17
22
  }
@@ -20,6 +25,9 @@ export interface PrefsDialogProps extends PrefsFormProps {
20
25
  * live through `onChange` — there is no OK/Cancel staging. For custom
21
26
  * placement (sidebar, popover, inline page), compose `PrefsForm`
22
27
  * directly; this wrapper is intentionally thin.
28
+ *
29
+ * `layout="rail"` is what a dialog usually wants: the default columns wrap
30
+ * sideways past two groups, and this box is 900px at its widest.
23
31
  */
24
32
  export declare function PrefsDialog(props: PrefsDialogProps): import("react/jsx-runtime").JSX.Element;
25
33
  //# sourceMappingURL=PrefsDialog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PrefsDialog.d.ts","sourceRoot":"","sources":["../../../src/components/Prefs/PrefsDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7D;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACtD,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,4DAA4D;IAC5D,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;iCAC6B;IAC7B,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAsBlD"}
1
+ {"version":3,"file":"PrefsDialog.d.ts","sourceRoot":"","sources":["../../../src/components/Prefs/PrefsDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7D;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACtD,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,4DAA4D;IAC5D,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;wBAGoB;IACpB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB;kBACc;IACd,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAyBlD"}
@@ -1,24 +1,8 @@
1
- import { type ReactNode } from 'react';
2
- import { type PrefGroup, type PrefLeaf } from './schema';
3
- /** What a {@link PrefRenderer} is given for the leaf it is rendering. */
4
- export interface PrefRenderContext {
5
- /** Dotted path of the leaf within the schema root. */
6
- path: string;
7
- /** The schema node. App renderers narrow this to their own kind shape. */
8
- pref: PrefLeaf;
9
- /** Current value — `values` at `path`, falling back to `pref.default`. */
10
- value: unknown;
11
- setValue: (value: unknown) => void;
12
- /** Whether this leaf is currently auto — not pinned, computed by the owner. */
13
- auto: boolean;
14
- /** Toggle this leaf's auto state. */
15
- setAuto: (next: boolean) => void;
16
- }
17
- /**
18
- * Renders the control cell for one preference leaf. Returning `null`
19
- * collapses the row.
20
- */
21
- export type PrefRenderer = (ctx: PrefRenderContext) => ReactNode;
1
+ import { type PrefGroup } from './schema';
2
+ import { type PrefRenderer } from './PrefsRow';
3
+ export type { PrefRenderer, PrefRenderContext } from './PrefsRow';
4
+ /** How a {@link PrefsForm} lays its groups out. */
5
+ export type PrefsLayout = 'columns' | 'rail';
22
6
  /** Props for {@link PrefsForm}. */
23
7
  export interface PrefsFormProps {
24
8
  /** Root of the schema tree. Core `ToolPrefGroup`s assign structurally. */
@@ -40,13 +24,30 @@ export interface PrefsFormProps {
40
24
  renderers?: Record<string, PrefRenderer>;
41
25
  /** Reveal `hidden` leaves (dev tooling). Default false. */
42
26
  showHidden?: boolean;
27
+ /**
28
+ * `'columns'` (the default) wraps each top-level group into its own panel
29
+ * column. `'rail'` puts a two-level navigation rail beside one group's
30
+ * settings at a time — what a dialog-sized surface wants, since columns
31
+ * overflow sideways once there are more than two.
32
+ */
33
+ layout?: PrefsLayout;
34
+ /** Show a filter field that narrows the form to matching leaves. */
35
+ filterable?: boolean;
36
+ /** Rail layout: path of the open top-level group. Controlled. */
37
+ section?: string;
38
+ /** Rail layout: path of the group open before the reader picks one.
39
+ * Defaults to the first in the schema. */
40
+ defaultSection?: string;
41
+ onSectionChange?: (path: string) => void;
43
42
  className?: string;
44
43
  }
45
44
  /**
46
- * Schema-driven preferences form. Top-level groups render as columns,
47
- * nested groups as indented sub-panels, leaves as label + control rows.
48
- * Storage-agnostic: pair with `PrefsDialog` for the modal composition,
49
- * and persist however the app likes via `onChange`.
45
+ * Schema-driven preferences form. Leaves render as label + control rows;
46
+ * how the groups around them are arranged is `layout`'s to say — columns of
47
+ * panels, or a navigation rail beside one group at a time.
48
+ *
49
+ * Storage-agnostic: pair with `PrefsDialog` for the modal composition, and
50
+ * persist however the app likes via `onChange`.
50
51
  */
51
52
  export declare function PrefsForm(props: PrefsFormProps): import("react/jsx-runtime").JSX.Element;
52
53
  //# sourceMappingURL=PrefsForm.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PrefsForm.d.ts","sourceRoot":"","sources":["../../../src/components/Prefs/PrefsForm.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAehD,OAAO,EAML,KAAK,SAAS,EACd,KAAK,QAAQ,EACd,MAAM,UAAU,CAAC;AAGlB,yEAAyE;AACzE,MAAM,WAAW,iBAAiB;IAChC,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,IAAI,EAAE,QAAQ,CAAC;IACf,0EAA0E;IAC1E,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,+EAA+E;IAC/E,IAAI,EAAE,OAAO,CAAC;IACd,qCAAqC;IACrC,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,iBAAiB,KAAK,SAAS,CAAC;AAEjE,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,MAAM,EAAE,SAAS,CAAC;IAClB;8DAC0D;IAC1D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;0CACsC;IACtC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACzC,2DAA2D;IAC3D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CAsB9C"}
1
+ {"version":3,"file":"PrefsForm.d.ts","sourceRoot":"","sources":["../../../src/components/Prefs/PrefsForm.tsx"],"names":[],"mappings":"AAGA,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,UAAU,CAAC;AAClB,OAAO,EAAW,KAAK,YAAY,EAAgB,MAAM,YAAY,CAAC;AAKtE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAElE,mDAAmD;AACnD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,MAAM,CAAC;AAE7C,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,MAAM,EAAE,SAAS,CAAC;IAClB;8DAC0D;IAC1D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;0CACsC;IACtC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACzC,2DAA2D;IAC3D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,oEAAoE;IACpE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;+CAC2C;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CAgE9C"}
@@ -0,0 +1,24 @@
1
+ import { type RefObject } from 'react';
2
+ import { type PrefGroup } from './schema';
3
+ import { type WalkCtx } from './PrefsRow';
4
+ /** Props for {@link PrefsPane}. */
5
+ export interface PrefsPaneProps {
6
+ ctx: WalkCtx;
7
+ /** The open group, or a synthetic one holding the root's loose leaves. */
8
+ group: PrefGroup;
9
+ /** Dotted path of `group`. Empty for the loose-leaf pane. */
10
+ path: string;
11
+ /** The pane's scroll container, for the rail's scroll spy. */
12
+ scrollRef: RefObject<HTMLDivElement | null>;
13
+ className?: string;
14
+ }
15
+ /**
16
+ * One rail section's settings: the group's own leaves, then one headed
17
+ * section per nested group.
18
+ *
19
+ * Nothing here draws a panel. The rail is the layout's structure, and a card
20
+ * inside a dialog that already has a border only restates it — the columns
21
+ * layout's sunken panels are what this is the alternative to.
22
+ */
23
+ export declare function PrefsPane(props: PrefsPaneProps): import("react/jsx-runtime").JSX.Element;
24
+ //# sourceMappingURL=PrefsPane.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrefsPane.d.ts","sourceRoot":"","sources":["../../../src/components/Prefs/PrefsPane.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAc,KAAK,SAAS,EAAiB,MAAM,UAAU,CAAC;AACrE,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAGnD,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,OAAO,CAAC;IACb,0EAA0E;IAC1E,KAAK,EAAE,SAAS,CAAC;IACjB,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,SAAS,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CAoC9C"}
@@ -0,0 +1,32 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { PrefRailItem } from './schema';
3
+ /** Props for {@link PrefsRail}. */
4
+ export interface PrefsRailProps {
5
+ items: readonly PrefRailItem[];
6
+ /** Path of the open depth-0 group. */
7
+ section: string;
8
+ /** Path of the depth-1 group in view, from the pane's scroll spy. */
9
+ current: string | null;
10
+ /** A depth-0 entry was chosen: open its pane. */
11
+ onOpen: (path: string) => void;
12
+ /** A depth-1 entry was chosen: scroll the open pane to it. */
13
+ onScrollTo: (path: string) => void;
14
+ /** Accessible name for the rail's landmark. */
15
+ ariaLabel: string;
16
+ /** Rendered above the list — the filter field, when there is one. */
17
+ header?: ReactNode;
18
+ /** Show each entry's match count. Only meaningful while filtering. */
19
+ showCounts?: boolean;
20
+ }
21
+ /**
22
+ * The rail beside a `PrefsForm` pane: depth-0 groups, each followed by the
23
+ * depth-1 groups that scroll within it.
24
+ *
25
+ * A list of buttons rather than a tablist, because only half of these entries
26
+ * switch anything — the nested ones scroll the pane the selected entry already
27
+ * opened, and a tab that does not own a panel has no honest role. The open
28
+ * group is `aria-current="page"`; the nested group in view is
29
+ * `aria-current="location"`.
30
+ */
31
+ export declare function PrefsRail(props: PrefsRailProps): import("react/jsx-runtime").JSX.Element;
32
+ //# sourceMappingURL=PrefsRail.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrefsRail.d.ts","sourceRoot":"","sources":["../../../src/components/Prefs/PrefsRail.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAG7C,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/B,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,iDAAiD;IACjD,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,8DAA8D;IAC9D,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,qEAAqE;IACrE,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,sEAAsE;IACtE,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CAyC9C"}
@@ -0,0 +1,32 @@
1
+ import { type ReactNode } from 'react';
2
+ import { type PrefLeaf } from './schema';
3
+ /** What a {@link PrefRenderer} is given for the leaf it is rendering. */
4
+ export interface PrefRenderContext {
5
+ /** Dotted path of the leaf within the schema root. */
6
+ path: string;
7
+ /** The schema node. App renderers narrow this to their own kind shape. */
8
+ pref: PrefLeaf;
9
+ /** Current value — `values` at `path`, falling back to `pref.default`. */
10
+ value: unknown;
11
+ setValue: (value: unknown) => void;
12
+ /** Whether this leaf is currently auto — not pinned, computed by the owner. */
13
+ auto: boolean;
14
+ /** Toggle this leaf's auto state. */
15
+ setAuto: (next: boolean) => void;
16
+ }
17
+ /**
18
+ * Renders the control cell for one preference leaf. Returning `null`
19
+ * collapses the row.
20
+ */
21
+ export type PrefRenderer = (ctx: PrefRenderContext) => ReactNode;
22
+ export interface WalkCtx {
23
+ values: unknown;
24
+ onChange: (path: string, value: unknown) => void;
25
+ renderers?: Record<string, PrefRenderer>;
26
+ }
27
+ export declare function PrefRow({ ctx, path, pref }: {
28
+ ctx: WalkCtx;
29
+ path: string;
30
+ pref: PrefLeaf;
31
+ }): import("react/jsx-runtime").JSX.Element | null;
32
+ //# sourceMappingURL=PrefsRow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrefsRow.d.ts","sourceRoot":"","sources":["../../../src/components/Prefs/PrefsRow.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,EAIL,KAAK,QAAQ,EAEd,MAAM,UAAU,CAAC;AAGlB,yEAAyE;AACzE,MAAM,WAAW,iBAAiB;IAChC,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,IAAI,EAAE,QAAQ,CAAC;IACf,0EAA0E;IAC1E,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,+EAA+E;IAC/E,IAAI,EAAE,OAAO,CAAC;IACd,qCAAqC;IACrC,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,iBAAiB,KAAK,SAAS,CAAC;AAEjE,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CAC1C;AAED,wBAAgB,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,kDA+B1F"}
@@ -1,4 +1,7 @@
1
- export { PrefsForm, type PrefsFormProps, type PrefRenderer, type PrefRenderContext } from './PrefsForm';
1
+ export { PrefsForm, type PrefsFormProps, type PrefsLayout, type PrefRenderer, type PrefRenderContext, } from './PrefsForm';
2
+ export { prefFieldProps, type PrefFieldState } from './prefField';
3
+ export { PrefsRail, type PrefsRailProps } from './PrefsRail';
4
+ export { PrefsPane, type PrefsPaneProps } from './PrefsPane';
2
5
  export { PrefsDialog, type PrefsDialogProps } from './PrefsDialog';
3
- export { isPrefLeaf, prefDisplayBounds, prefValueAtPath, visiblePrefSubtree, type BuiltinPref, type PrefBoolean, type PrefBooleanControl, type PrefColor, type PrefCustom, type PrefEnum, type PrefEnumControl, type PrefEnumEncoding, type PrefGroup, type PrefKind, type PrefLeaf, type PrefNumber, type PrefNumberControl, type PrefNumberFormat, type PrefNumberUnit, type PrefPaint, type PrefObject, type PrefString, type PrefStringControl, } from './schema';
6
+ export { filterPrefSubtree, isPrefLeaf, prefDisplayBounds, prefRailItems, prefValueAtPath, visiblePrefSubtree, type PrefRailItem, type BuiltinPref, type PrefBoolean, type PrefBooleanControl, type PrefColor, type PrefCustom, type PrefEnum, type PrefEnumControl, type PrefEnumEncoding, type PrefGroup, type PrefKind, type PrefLeaf, type PrefNumber, type PrefNumberControl, type PrefNumberFormat, type PrefNumberUnit, type PrefPaint, type PrefObject, type PrefString, type PrefStringControl, } from './schema';
4
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Prefs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACxG,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,iBAAiB,GACvB,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Prefs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,iBAAiB,GACvB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EACL,iBAAiB,EACjB,UAAU,EACV,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,iBAAiB,GACvB,MAAM,UAAU,CAAC"}
@@ -1,3 +1,3 @@
1
- import { n as e, t } from "../../chunks/Prefs-FuaJBs3t.js";
2
- import { a as n, i as r, n as i, t as a } from "../../chunks/schema-MCVT1MLv.js";
3
- export { t as PrefsDialog, e as PrefsForm, a as isPrefLeaf, i as prefDisplayBounds, r as prefValueAtPath, n as visiblePrefSubtree };
1
+ import { a as e, i as t, n, o as r, r as i, s as a, t as o } from "../../chunks/prefField-CLkhrvYl.js";
2
+ import { i as s, n as c, r as l, t as u } from "../../chunks/Prefs-Ctu0H4-b.js";
3
+ export { u as PrefsDialog, c as PrefsForm, s as PrefsPane, l as PrefsRail, n as filterPrefSubtree, i as isPrefLeaf, t as prefDisplayBounds, o as prefFieldProps, e as prefRailItems, r as prefValueAtPath, a as visiblePrefSubtree };
@@ -0,0 +1,36 @@
1
+ import type { PropertyControlProps } from '../Properties/PropertyField';
2
+ import { type PrefLeaf } from './schema';
3
+ /** What {@link prefFieldProps} is told about one leaf's value. */
4
+ export interface PrefFieldState {
5
+ /** The value held at the leaf. `undefined` when `mixed` or `unset`. */
6
+ value: unknown;
7
+ mixed?: boolean;
8
+ unset?: boolean;
9
+ /** The object the leaf is a field of, for an enum `encoding` and a font's
10
+ * weight and slant. `undefined` for a top-level leaf. */
11
+ siblings?: Record<string, unknown>;
12
+ /** Writes a value in the leaf's stored form. */
13
+ setValue: (value: unknown) => void;
14
+ /** A font family's weight and slant, where they are not `siblings`' own
15
+ * `fontWeight` / `fontStyle`. */
16
+ fontVariant?: {
17
+ weight?: unknown;
18
+ style?: unknown;
19
+ };
20
+ }
21
+ /**
22
+ * A schema leaf as {@link PropertyControl} props: its value, bounds and
23
+ * options in the form it is shown in, and a writer that stores what the
24
+ * control reports in the form the leaf holds.
25
+ *
26
+ * The conversions every schema-driven surface needs live here once — a
27
+ * number's display unit and its bounds, an enum's `encoding`, a color's
28
+ * alpha, an icon resolved to a glyph. A leaf that is not a single control —
29
+ * an `object`, whose fields each are, or an app-defined kind — returns
30
+ * `null`, and the surface draws it.
31
+ *
32
+ * Spread the result and add what the surface decides: `chrome`, `name`, a
33
+ * class, a different default `control`.
34
+ */
35
+ export declare function prefFieldProps(leaf: PrefLeaf, state: PrefFieldState): PropertyControlProps | null;
36
+ //# sourceMappingURL=prefField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prefField.d.ts","sourceRoot":"","sources":["../../../src/components/Prefs/prefField.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAsC,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAE7E,kEAAkE;AAClE,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;8DAC0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,gDAAgD;IAChD,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC;sCACkC;IAClC,WAAW,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CACrD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,GAAG,oBAAoB,GAAG,IAAI,CAqIjG"}
@@ -1,4 +1,5 @@
1
1
  export type { ToolPref as BuiltinPref, ToolPrefBoolean as PrefBoolean, ToolPrefBooleanControl as PrefBooleanControl, ToolPrefColor as PrefColor, ToolPrefCustom as PrefCustom, ToolPrefEnum as PrefEnum, ToolPrefEnumControl as PrefEnumControl, ToolPrefEnumEncoding as PrefEnumEncoding, ToolPrefGroup as PrefGroup, ToolPrefKind as PrefKind, ToolPrefLeaf as PrefLeaf, ToolPrefNumber as PrefNumber, ToolPrefNumberControl as PrefNumberControl, ToolPrefNumberFormat as PrefNumberFormat, ToolPrefNumberUnit as PrefNumberUnit, ToolPrefObject as PrefObject, ToolPrefPaint as PrefPaint, ToolPrefString as PrefString, ToolPrefStringControl as PrefStringControl, } from '@weasel-js/core';
2
+ import type { UnitTable } from '../../format/number';
2
3
  import type { ToolPrefGroup, ToolPrefLeaf, ToolPrefNumber, ToolPrefNumberUnit as PrefNumberUnitType } from '@weasel-js/core';
3
4
  /**
4
5
  * A number leaf's bounds in the unit it is displayed in.
@@ -18,7 +19,7 @@ export declare function prefDisplayBounds(p: ToolPrefNumber): {
18
19
  };
19
20
  /** What a unit leaf's field reads as typed text: its `accepts` table, and its
20
21
  * `suffix` as the display unit itself. */
21
- export declare function prefUnitAccepts(unit: PrefNumberUnitType): Readonly<Record<string, number>>;
22
+ export declare function prefUnitAccepts(unit: PrefNumberUnitType): Readonly<UnitTable>;
22
23
  /** Distinguishes a leaf from a group while walking a schema tree. */
23
24
  export declare function isPrefLeaf(node: ToolPrefLeaf | ToolPrefGroup): node is ToolPrefLeaf;
24
25
  /** Get the value at a dotted path inside a nested value tree. Returns
@@ -29,4 +30,34 @@ export declare function prefValueAtPath(values: unknown, path: string): unknown;
29
30
  * that end up empty. Returns null when the entire subtree is hidden.
30
31
  */
31
32
  export declare function visiblePrefSubtree<T extends ToolPrefLeaf | ToolPrefGroup>(node: T, showHidden: boolean): T | null;
33
+ /** One entry in a {@link PrefsForm} rail: a group the reader can navigate to. */
34
+ export interface PrefRailItem {
35
+ /** Dotted path of the group. Empty for the entry holding loose root leaves. */
36
+ path: string;
37
+ name: string;
38
+ /** 0 opens a pane; 1 scrolls within the open one. The rail goes no deeper. */
39
+ depth: 0 | 1;
40
+ /** Path of the depth-0 ancestor — its own path when `depth` is 0. */
41
+ section: string;
42
+ /** Leaves surviving the active filter, counted over the whole subtree. */
43
+ matches: number;
44
+ }
45
+ /**
46
+ * The rail's model for a schema: depth-0 groups, each followed by its depth-1
47
+ * children. Deeper groups render inside a pane and get no entry — a schema
48
+ * that nests ten deep still navigates two levels.
49
+ *
50
+ * Loose leaves directly under the root lead the list under an entry named for
51
+ * the root itself, since they belong to no group that could name them.
52
+ */
53
+ export declare function prefRailItems(root: ToolPrefGroup): PrefRailItem[];
54
+ /**
55
+ * Drop every leaf that does not answer to `query`, pruning groups left empty.
56
+ * A group whose own name matches keeps all of its leaves — a reader who typed
57
+ * the group's name is asking for the group, not for leaves repeating it.
58
+ *
59
+ * An empty or whitespace query matches everything, so a cleared field restores
60
+ * the tree rather than emptying it.
61
+ */
62
+ export declare function filterPrefSubtree<T extends ToolPrefLeaf | ToolPrefGroup>(node: T, query: string, path?: string): T | null;
32
63
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/components/Prefs/schema.ts"],"names":[],"mappings":"AAKA,YAAY,EACV,QAAQ,IAAI,WAAW,EACvB,eAAe,IAAI,WAAW,EAC9B,sBAAsB,IAAI,kBAAkB,EAC5C,aAAa,IAAI,SAAS,EAC1B,cAAc,IAAI,UAAU,EAC5B,YAAY,IAAI,QAAQ,EACxB,mBAAmB,IAAI,eAAe,EACtC,oBAAoB,IAAI,gBAAgB,EACxC,aAAa,IAAI,SAAS,EAC1B,YAAY,IAAI,QAAQ,EACxB,YAAY,IAAI,QAAQ,EACxB,cAAc,IAAI,UAAU,EAC5B,qBAAqB,IAAI,iBAAiB,EAC1C,oBAAoB,IAAI,gBAAgB,EACxC,kBAAkB,IAAI,cAAc,EACpC,cAAc,IAAI,UAAU,EAC5B,aAAa,IAAI,SAAS,EAC1B,cAAc,IAAI,UAAU,EAC5B,qBAAqB,IAAI,iBAAiB,GAC3C,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,kBAAkB,IAAI,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE7H;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE,cAAc,GAChB;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAU9C;AAED;2CAC2C;AAC3C,wBAAgB,eAAe,CAAC,IAAI,EAAE,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAE1F;AAED,qEAAqE;AACrE,wBAAgB,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,aAAa,GAAG,IAAI,IAAI,YAAY,CAEnF;AAED;kEACkE;AAClE,wBAAgB,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAOtE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,YAAY,GAAG,aAAa,EACvE,IAAI,EAAE,CAAC,EACP,UAAU,EAAE,OAAO,GAClB,CAAC,GAAG,IAAI,CAUV"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/components/Prefs/schema.ts"],"names":[],"mappings":"AAKA,YAAY,EACV,QAAQ,IAAI,WAAW,EACvB,eAAe,IAAI,WAAW,EAC9B,sBAAsB,IAAI,kBAAkB,EAC5C,aAAa,IAAI,SAAS,EAC1B,cAAc,IAAI,UAAU,EAC5B,YAAY,IAAI,QAAQ,EACxB,mBAAmB,IAAI,eAAe,EACtC,oBAAoB,IAAI,gBAAgB,EACxC,aAAa,IAAI,SAAS,EAC1B,YAAY,IAAI,QAAQ,EACxB,YAAY,IAAI,QAAQ,EACxB,cAAc,IAAI,UAAU,EAC5B,qBAAqB,IAAI,iBAAiB,EAC1C,oBAAoB,IAAI,gBAAgB,EACxC,kBAAkB,IAAI,cAAc,EACpC,cAAc,IAAI,UAAU,EAC5B,aAAa,IAAI,SAAS,EAC1B,cAAc,IAAI,UAAU,EAC5B,qBAAqB,IAAI,iBAAiB,GAC3C,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,kBAAkB,IAAI,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE7H;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE,cAAc,GAChB;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAU9C;AAED;2CAC2C;AAC3C,wBAAgB,eAAe,CAAC,IAAI,EAAE,kBAAkB,GAAG,QAAQ,CAAC,SAAS,CAAC,CAE7E;AAED,qEAAqE;AACrE,wBAAgB,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,aAAa,GAAG,IAAI,IAAI,YAAY,CAEnF;AAED;kEACkE;AAClE,wBAAgB,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAOtE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,YAAY,GAAG,aAAa,EACvE,IAAI,EAAE,CAAC,EACP,UAAU,EAAE,OAAO,GAClB,CAAC,GAAG,IAAI,CAUV;AAED,iFAAiF;AACjF,MAAM,WAAW,YAAY;IAC3B,+EAA+E;IAC/E,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;IACb,qEAAqE;IACrE,OAAO,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC;CACjB;AAUD;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,aAAa,GAAG,YAAY,EAAE,CA2BjE;AASD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,YAAY,GAAG,aAAa,EACtE,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,MAAM,EACb,IAAI,SAAK,GACR,CAAC,GAAG,IAAI,CAaV"}