@weasel-js/ui 1.0.1 → 1.0.3

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 (267) hide show
  1. package/dist/chunks/ActionBar-GThu74LC.js.map +1 -1
  2. package/dist/chunks/{ActionsBar-CAjrj_Pt.js → ActionsBar-9aR5N3lU.js} +10 -17
  3. package/dist/chunks/ActionsBar-9aR5N3lU.js.map +1 -0
  4. package/dist/chunks/Badge-DZQqAV4d.js.map +1 -1
  5. package/dist/chunks/BandEditor-13K91O9M.js +228 -0
  6. package/dist/chunks/BandEditor-13K91O9M.js.map +1 -0
  7. package/dist/chunks/Button-9QNIYugK.js.map +1 -1
  8. package/dist/chunks/{Callout-DlirfLJl.js → Callout-CFqG5xho.js} +1 -1
  9. package/dist/chunks/Callout-CFqG5xho.js.map +1 -0
  10. package/dist/chunks/{Checkbox-B3Z_u7k0.js → Checkbox-KQ5L8APP.js} +1 -1
  11. package/dist/chunks/Checkbox-KQ5L8APP.js.map +1 -0
  12. package/dist/chunks/{ColorField-B4Hd2qqS.js → ColorField-ykpiD3XU.js} +1 -1
  13. package/dist/chunks/ColorField-ykpiD3XU.js.map +1 -0
  14. package/dist/chunks/{ComboBox-tbmgND-F.js → ComboBox-DpxsFVBy.js} +2 -2
  15. package/dist/chunks/ComboBox-DpxsFVBy.js.map +1 -0
  16. package/dist/chunks/{CurveEditor-CSKqAXMp.js → CurveEditor-CqIt_Xph.js} +3 -3
  17. package/dist/chunks/CurveEditor-CqIt_Xph.js.map +1 -0
  18. package/dist/chunks/DataGrid-BQklXGRl.js.map +1 -1
  19. package/dist/chunks/{Dialog-BFuakycR.js → Dialog-3FCd_gYi.js} +1 -1
  20. package/dist/chunks/Dialog-3FCd_gYi.js.map +1 -0
  21. package/dist/chunks/{Field-DPxmJzZz.js → Field-VQwmrIna.js} +1 -1
  22. package/dist/chunks/Field-VQwmrIna.js.map +1 -0
  23. package/dist/chunks/{GradientEditor-3pYXGAPg.js → GradientEditor-DeptQpWX.js} +5 -5
  24. package/dist/chunks/GradientEditor-DeptQpWX.js.map +1 -0
  25. package/dist/chunks/{Input-Dg_CYXg4.js → Input-DpkwYtUY.js} +2 -2
  26. package/dist/chunks/Input-DpkwYtUY.js.map +1 -0
  27. package/dist/chunks/Keycaps-CFX7UAj8.js.map +1 -1
  28. package/dist/chunks/{NumberField-BhxUgi43.js → NumberField-BbzI0GtU.js} +2 -2
  29. package/dist/chunks/NumberField-BbzI0GtU.js.map +1 -0
  30. package/dist/chunks/{OptionsBar-hQN-wfd-.js → OptionsBar-CHvH4n4u.js} +10 -17
  31. package/dist/chunks/OptionsBar-CHvH4n4u.js.map +1 -0
  32. package/dist/chunks/Plot2D-CEnhzodm.js.map +1 -1
  33. package/dist/chunks/{PointPlotter-DCSjvpN0.js → PointPlotter-DD-bWmRc.js} +2 -2
  34. package/dist/chunks/PointPlotter-DD-bWmRc.js.map +1 -0
  35. package/dist/chunks/{Powerline-DkOTPnUV.js → Powerline-Dd9Ukhcl.js} +1 -1
  36. package/dist/chunks/Powerline-Dd9Ukhcl.js.map +1 -0
  37. package/dist/chunks/{Prefs-C4HfuTvm.js → Prefs-lgI4x4jF.js} +10 -10
  38. package/dist/chunks/Prefs-lgI4x4jF.js.map +1 -0
  39. package/dist/chunks/{RadioGroup-Bg3Rqxe2.js → RadioGroup-CIpHr3g6.js} +2 -2
  40. package/dist/chunks/RadioGroup-CIpHr3g6.js.map +1 -0
  41. package/dist/chunks/{RangeSlider-BvM_DGSr.js → RangeSlider-CaDogGTj.js} +1 -1
  42. package/dist/chunks/RangeSlider-CaDogGTj.js.map +1 -0
  43. package/dist/chunks/{ResizeHandle-BUkW2kZC.js → ResizeHandle-BOpmtOOj.js} +2 -2
  44. package/dist/chunks/ResizeHandle-BOpmtOOj.js.map +1 -0
  45. package/dist/chunks/{Select-DC0AjrEe.js → Select-BE3Y1NrH.js} +2 -2
  46. package/dist/chunks/Select-BE3Y1NrH.js.map +1 -0
  47. package/dist/chunks/{SelectionPanel-DoTdisRY.js → SelectionPanel-Zaw8tYQH.js} +6 -6
  48. package/dist/chunks/SelectionPanel-Zaw8tYQH.js.map +1 -0
  49. package/dist/chunks/{Sidebar-B8qig3BQ.js → Sidebar-DP_nyJze.js} +1 -1
  50. package/dist/chunks/Sidebar-DP_nyJze.js.map +1 -0
  51. package/dist/chunks/{SidebarPanel-LOt2c-wb.js → SidebarPanel-BpD0ptyg.js} +1 -1
  52. package/dist/chunks/SidebarPanel-BpD0ptyg.js.map +1 -0
  53. package/dist/chunks/{Slider-Di2kNqVy.js → Slider-CmPeFJ3x.js} +4 -4
  54. package/dist/chunks/Slider-CmPeFJ3x.js.map +1 -0
  55. package/dist/chunks/{StatusBar-Cg2LzdAm.js → StatusBar-DBO0E0Yd.js} +1 -1
  56. package/dist/chunks/StatusBar-DBO0E0Yd.js.map +1 -0
  57. package/dist/chunks/{Switch-I4putUAY.js → Switch-JyVSSAzC.js} +1 -1
  58. package/dist/chunks/{Switch-I4putUAY.js.map → Switch-JyVSSAzC.js.map} +1 -1
  59. package/dist/chunks/{Tabs-irZuG_PN.js → Tabs-Df0sDomx.js} +1 -1
  60. package/dist/chunks/Tabs-Df0sDomx.js.map +1 -0
  61. package/dist/chunks/{Toast-BGYP8Pw0.js → Toast-DFw4IrD_.js} +1 -1
  62. package/dist/chunks/Toast-DFw4IrD_.js.map +1 -0
  63. package/dist/chunks/ToggleBar-BP1zFcvg.js.map +1 -1
  64. package/dist/chunks/{ToolButton-DUeg8fPN.js → ToolButton-DpT-mukU.js} +6 -5
  65. package/dist/chunks/ToolButton-DpT-mukU.js.map +1 -0
  66. package/dist/chunks/{ToolGroup-D0CvyQhQ.js → ToolGroup-BTIwd4U4.js} +1 -1
  67. package/dist/chunks/ToolGroup-BTIwd4U4.js.map +1 -0
  68. package/dist/chunks/{ToolOptionsBar-N_MQcSo4.js → ToolOptionsBar-JvmY7iNe.js} +1 -1
  69. package/dist/chunks/ToolOptionsBar-JvmY7iNe.js.map +1 -0
  70. package/dist/chunks/{ToolPalette-BipoMdZz.js → ToolPalette-DPn0owno.js} +27 -47
  71. package/dist/chunks/ToolPalette-DPn0owno.js.map +1 -0
  72. package/dist/chunks/Tooltip-Clgn4trm.js.map +1 -1
  73. package/dist/chunks/segmentedControl.module-DCyuDbj1.js +11 -0
  74. package/dist/chunks/segmentedControl.module-DCyuDbj1.js.map +1 -0
  75. package/dist/chunks/useRovingTabIndex-DBZtq4IH.js.map +1 -1
  76. package/dist/color/oklch.d.ts +12 -0
  77. package/dist/color/oklch.d.ts.map +1 -1
  78. package/dist/components/ActionBar/ActionBar.d.ts +1 -0
  79. package/dist/components/ActionBar/ActionBar.d.ts.map +1 -1
  80. package/dist/components/ActionsBar/ActionsBar.d.ts +15 -0
  81. package/dist/components/ActionsBar/ActionsBar.d.ts.map +1 -1
  82. package/dist/components/ActionsBar/index.js +1 -1
  83. package/dist/components/Badge/Badge.d.ts +14 -0
  84. package/dist/components/Badge/Badge.d.ts.map +1 -1
  85. package/dist/components/Badge/bases/edgeProfiles.d.ts +8 -0
  86. package/dist/components/Badge/bases/edgeProfiles.d.ts.map +1 -1
  87. package/dist/components/Badge/types.d.ts +11 -0
  88. package/dist/components/Badge/types.d.ts.map +1 -1
  89. package/dist/components/BandEditor/BandEditor.d.ts +56 -0
  90. package/dist/components/BandEditor/BandEditor.d.ts.map +1 -0
  91. package/dist/components/BandEditor/bands.d.ts +45 -0
  92. package/dist/components/BandEditor/bands.d.ts.map +1 -0
  93. package/dist/components/BandEditor/index.d.ts +4 -0
  94. package/dist/components/BandEditor/index.d.ts.map +1 -0
  95. package/dist/components/BandEditor/index.js +2 -0
  96. package/dist/components/BandEditor/scale.d.ts +25 -0
  97. package/dist/components/BandEditor/scale.d.ts.map +1 -0
  98. package/dist/components/Button/Button.d.ts +13 -0
  99. package/dist/components/Button/Button.d.ts.map +1 -1
  100. package/dist/components/Callout/Callout.d.ts +2 -0
  101. package/dist/components/Callout/Callout.d.ts.map +1 -1
  102. package/dist/components/Callout/index.js +1 -1
  103. package/dist/components/Checkbox/Checkbox.d.ts +4 -0
  104. package/dist/components/Checkbox/Checkbox.d.ts.map +1 -1
  105. package/dist/components/Checkbox/index.js +1 -1
  106. package/dist/components/ColorField/ColorField.d.ts +4 -0
  107. package/dist/components/ColorField/ColorField.d.ts.map +1 -1
  108. package/dist/components/ColorField/index.js +1 -1
  109. package/dist/components/ComboBox/ComboBox.d.ts +11 -0
  110. package/dist/components/ComboBox/ComboBox.d.ts.map +1 -1
  111. package/dist/components/ComboBox/index.js +1 -1
  112. package/dist/components/CurveEditor/CurveEditor.d.ts +14 -2
  113. package/dist/components/CurveEditor/CurveEditor.d.ts.map +1 -1
  114. package/dist/components/CurveEditor/LayeredCurveEditor.d.ts +15 -0
  115. package/dist/components/CurveEditor/LayeredCurveEditor.d.ts.map +1 -1
  116. package/dist/components/CurveEditor/createFunctionLayer.d.ts +39 -0
  117. package/dist/components/CurveEditor/createFunctionLayer.d.ts.map +1 -1
  118. package/dist/components/CurveEditor/index.js +1 -1
  119. package/dist/components/CurveEditor/layerTypes.d.ts +5 -0
  120. package/dist/components/CurveEditor/layerTypes.d.ts.map +1 -1
  121. package/dist/components/CurveEditor/setCurveOp.d.ts +4 -0
  122. package/dist/components/CurveEditor/setCurveOp.d.ts.map +1 -1
  123. package/dist/components/DataGrid/DataGrid.d.ts +12 -0
  124. package/dist/components/DataGrid/DataGrid.d.ts.map +1 -1
  125. package/dist/components/Dialog/Dialog.d.ts +1 -0
  126. package/dist/components/Dialog/Dialog.d.ts.map +1 -1
  127. package/dist/components/Dialog/index.js +1 -1
  128. package/dist/components/Field/Field.d.ts +9 -0
  129. package/dist/components/Field/Field.d.ts.map +1 -1
  130. package/dist/components/Field/index.js +1 -1
  131. package/dist/components/GradientEditor/GradientEditor.d.ts +4 -0
  132. package/dist/components/GradientEditor/GradientEditor.d.ts.map +1 -1
  133. package/dist/components/GradientEditor/GradientHandles.d.ts +4 -0
  134. package/dist/components/GradientEditor/GradientHandles.d.ts.map +1 -1
  135. package/dist/components/GradientEditor/index.js +1 -1
  136. package/dist/components/Input/Input.d.ts +1 -0
  137. package/dist/components/Input/Input.d.ts.map +1 -1
  138. package/dist/components/Input/index.js +1 -1
  139. package/dist/components/Keycaps/Keycap.d.ts +10 -0
  140. package/dist/components/Keycaps/Keycap.d.ts.map +1 -1
  141. package/dist/components/Keycaps/Keycaps.d.ts +2 -0
  142. package/dist/components/Keycaps/Keycaps.d.ts.map +1 -1
  143. package/dist/components/Keycaps/keySpecsFromMods.d.ts +2 -0
  144. package/dist/components/Keycaps/keySpecsFromMods.d.ts.map +1 -1
  145. package/dist/components/NumberField/NumberField.d.ts +9 -0
  146. package/dist/components/NumberField/NumberField.d.ts.map +1 -1
  147. package/dist/components/NumberField/index.js +1 -1
  148. package/dist/components/OptionsBar/OptionsBar.d.ts +12 -0
  149. package/dist/components/OptionsBar/OptionsBar.d.ts.map +1 -1
  150. package/dist/components/OptionsBar/index.js +1 -1
  151. package/dist/components/Plot2D/Plot2D.d.ts +14 -0
  152. package/dist/components/Plot2D/Plot2D.d.ts.map +1 -1
  153. package/dist/components/Plot2D/geometry.d.ts +10 -0
  154. package/dist/components/Plot2D/geometry.d.ts.map +1 -1
  155. package/dist/components/PointPlotter/PointPlotter.d.ts +3 -2
  156. package/dist/components/PointPlotter/PointPlotter.d.ts.map +1 -1
  157. package/dist/components/PointPlotter/index.js +1 -1
  158. package/dist/components/Powerline/Powerline.d.ts +13 -0
  159. package/dist/components/Powerline/Powerline.d.ts.map +1 -1
  160. package/dist/components/Powerline/index.js +1 -1
  161. package/dist/components/Prefs/PrefsDialog.d.ts +4 -0
  162. package/dist/components/Prefs/PrefsDialog.d.ts.map +1 -1
  163. package/dist/components/Prefs/PrefsForm.d.ts +6 -0
  164. package/dist/components/Prefs/PrefsForm.d.ts.map +1 -1
  165. package/dist/components/Prefs/index.js +1 -1
  166. package/dist/components/Prefs/schema.d.ts +17 -0
  167. package/dist/components/Prefs/schema.d.ts.map +1 -1
  168. package/dist/components/RadioGroup/RadioGroup.d.ts +8 -0
  169. package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -1
  170. package/dist/components/RadioGroup/index.js +1 -1
  171. package/dist/components/RangeSlider/RangeSlider.d.ts +1 -0
  172. package/dist/components/RangeSlider/RangeSlider.d.ts.map +1 -1
  173. package/dist/components/RangeSlider/index.js +1 -1
  174. package/dist/components/ResizeHandle/ResizeHandle.d.ts +7 -3
  175. package/dist/components/ResizeHandle/ResizeHandle.d.ts.map +1 -1
  176. package/dist/components/ResizeHandle/index.js +1 -1
  177. package/dist/components/Select/Select.d.ts +11 -0
  178. package/dist/components/Select/Select.d.ts.map +1 -1
  179. package/dist/components/Select/index.js +1 -1
  180. package/dist/components/SelectionPanel/SelectionPanel.d.ts +6 -0
  181. package/dist/components/SelectionPanel/SelectionPanel.d.ts.map +1 -1
  182. package/dist/components/SelectionPanel/index.js +1 -1
  183. package/dist/components/SelectionPanel/model.d.ts +12 -0
  184. package/dist/components/SelectionPanel/model.d.ts.map +1 -1
  185. package/dist/components/Sidebar/Sidebar.d.ts +1 -0
  186. package/dist/components/Sidebar/Sidebar.d.ts.map +1 -1
  187. package/dist/components/Sidebar/index.js +1 -1
  188. package/dist/components/SidebarPanel/SidebarPanel.d.ts +1 -0
  189. package/dist/components/SidebarPanel/SidebarPanel.d.ts.map +1 -1
  190. package/dist/components/SidebarPanel/index.js +1 -1
  191. package/dist/components/Slider/Slider.d.ts +43 -2
  192. package/dist/components/Slider/Slider.d.ts.map +1 -1
  193. package/dist/components/Slider/index.js +1 -1
  194. package/dist/components/StatusBar/StatusBar.d.ts +2 -0
  195. package/dist/components/StatusBar/StatusBar.d.ts.map +1 -1
  196. package/dist/components/StatusBar/index.js +1 -1
  197. package/dist/components/Switch/Switch.d.ts +11 -0
  198. package/dist/components/Switch/Switch.d.ts.map +1 -1
  199. package/dist/components/Switch/index.js +1 -1
  200. package/dist/components/Tabs/Tabs.d.ts +11 -0
  201. package/dist/components/Tabs/Tabs.d.ts.map +1 -1
  202. package/dist/components/Tabs/index.js +1 -1
  203. package/dist/components/Toast/Toast.d.ts +2 -0
  204. package/dist/components/Toast/Toast.d.ts.map +1 -1
  205. package/dist/components/Toast/index.js +1 -1
  206. package/dist/components/Toast/queue.d.ts +7 -0
  207. package/dist/components/Toast/queue.d.ts.map +1 -1
  208. package/dist/components/ToggleBar/ToggleBar.d.ts +16 -0
  209. package/dist/components/ToggleBar/ToggleBar.d.ts.map +1 -1
  210. package/dist/components/ToolButton/ToolButton.d.ts +5 -1
  211. package/dist/components/ToolButton/ToolButton.d.ts.map +1 -1
  212. package/dist/components/ToolButton/index.js +1 -1
  213. package/dist/components/ToolGroup/ToolGroup.d.ts +1 -0
  214. package/dist/components/ToolGroup/ToolGroup.d.ts.map +1 -1
  215. package/dist/components/ToolGroup/index.js +1 -1
  216. package/dist/components/ToolOptionsBar/ToolOptionsBar.d.ts +1 -0
  217. package/dist/components/ToolOptionsBar/ToolOptionsBar.d.ts.map +1 -1
  218. package/dist/components/ToolOptionsBar/index.js +1 -1
  219. package/dist/components/ToolPalette/ToolPalette.d.ts +9 -0
  220. package/dist/components/ToolPalette/ToolPalette.d.ts.map +1 -1
  221. package/dist/components/ToolPalette/index.js +1 -1
  222. package/dist/components/Tooltip/Tooltip.d.ts +5 -0
  223. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
  224. package/dist/format/number.d.ts +4 -0
  225. package/dist/format/number.d.ts.map +1 -1
  226. package/dist/index.d.ts +1 -0
  227. package/dist/index.d.ts.map +1 -1
  228. package/dist/index.js +38 -37
  229. package/dist/index.js.map +1 -1
  230. package/dist/paintGradientTrack.d.ts +13 -0
  231. package/dist/paintGradientTrack.d.ts.map +1 -1
  232. package/dist/style.css +1 -1
  233. package/dist/useReorderDragList.d.ts +23 -0
  234. package/dist/useReorderDragList.d.ts.map +1 -1
  235. package/dist/useRovingTabIndex.d.ts +5 -0
  236. package/dist/useRovingTabIndex.d.ts.map +1 -1
  237. package/package.json +2 -2
  238. package/dist/chunks/ActionsBar-CAjrj_Pt.js.map +0 -1
  239. package/dist/chunks/Callout-DlirfLJl.js.map +0 -1
  240. package/dist/chunks/Checkbox-B3Z_u7k0.js.map +0 -1
  241. package/dist/chunks/ColorField-B4Hd2qqS.js.map +0 -1
  242. package/dist/chunks/ComboBox-tbmgND-F.js.map +0 -1
  243. package/dist/chunks/CurveEditor-CSKqAXMp.js.map +0 -1
  244. package/dist/chunks/Dialog-BFuakycR.js.map +0 -1
  245. package/dist/chunks/Field-DPxmJzZz.js.map +0 -1
  246. package/dist/chunks/GradientEditor-3pYXGAPg.js.map +0 -1
  247. package/dist/chunks/Input-Dg_CYXg4.js.map +0 -1
  248. package/dist/chunks/NumberField-BhxUgi43.js.map +0 -1
  249. package/dist/chunks/OptionsBar-hQN-wfd-.js.map +0 -1
  250. package/dist/chunks/PointPlotter-DCSjvpN0.js.map +0 -1
  251. package/dist/chunks/Powerline-DkOTPnUV.js.map +0 -1
  252. package/dist/chunks/Prefs-C4HfuTvm.js.map +0 -1
  253. package/dist/chunks/RadioGroup-Bg3Rqxe2.js.map +0 -1
  254. package/dist/chunks/RangeSlider-BvM_DGSr.js.map +0 -1
  255. package/dist/chunks/ResizeHandle-BUkW2kZC.js.map +0 -1
  256. package/dist/chunks/Select-DC0AjrEe.js.map +0 -1
  257. package/dist/chunks/SelectionPanel-DoTdisRY.js.map +0 -1
  258. package/dist/chunks/Sidebar-B8qig3BQ.js.map +0 -1
  259. package/dist/chunks/SidebarPanel-LOt2c-wb.js.map +0 -1
  260. package/dist/chunks/Slider-Di2kNqVy.js.map +0 -1
  261. package/dist/chunks/StatusBar-Cg2LzdAm.js.map +0 -1
  262. package/dist/chunks/Tabs-irZuG_PN.js.map +0 -1
  263. package/dist/chunks/Toast-BGYP8Pw0.js.map +0 -1
  264. package/dist/chunks/ToolButton-DUeg8fPN.js.map +0 -1
  265. package/dist/chunks/ToolGroup-D0CvyQhQ.js.map +0 -1
  266. package/dist/chunks/ToolOptionsBar-N_MQcSo4.js.map +0 -1
  267. package/dist/chunks/ToolPalette-BipoMdZz.js.map +0 -1
@@ -1,4 +1,5 @@
1
1
  import { type ReactNode } from 'react';
2
+ /** Props for {@link ActionBar}. */
2
3
  export interface ActionBarProps {
3
4
  /** Group key — only actions with `action.group === group` are rendered. */
4
5
  group: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBar.d.ts","sourceRoot":"","sources":["../../../src/components/ActionBar/ActionBar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAc7D,MAAM,WAAW,cAAc;IAC7B,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAClC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAaD;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CAkE9C"}
1
+ {"version":3,"file":"ActionBar.d.ts","sourceRoot":"","sources":["../../../src/components/ActionBar/ActionBar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAc7D,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAClC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAaD;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CAkE9C"}
@@ -1,4 +1,8 @@
1
1
  import { type ReactElement, type ReactNode } from 'react';
2
+ /**
3
+ * One button in an {@link ActionsBar}. `value` is only a React key; the item
4
+ * carries no selected state.
5
+ */
2
6
  export type ActionsBarItem<V extends string | number = string> = {
3
7
  value: V;
4
8
  label?: ReactNode;
@@ -6,8 +10,11 @@ export type ActionsBarItem<V extends string | number = string> = {
6
10
  disabled?: boolean;
7
11
  onAction: () => void;
8
12
  };
13
+ /** Segment height and type scale for an {@link ActionsBar}. */
9
14
  export type ActionsBarSize = 'sm' | 'md';
15
+ /** Visual treatment of an {@link ActionsBar}. */
10
16
  export type ActionsBarVariant = 'default' | 'minimal';
17
+ /** Props for {@link ActionsBar}. */
11
18
  export type ActionsBarProps<V extends string | number = string> = {
12
19
  items: readonly ActionsBarItem<V>[];
13
20
  ariaLabel?: string;
@@ -16,5 +23,13 @@ export type ActionsBarProps<V extends string | number = string> = {
16
23
  size?: ActionsBarSize;
17
24
  variant?: ActionsBarVariant;
18
25
  };
26
+ /**
27
+ * Segmented strip of momentary buttons — each press fires and nothing stays
28
+ * selected. Shares the look and the arrow-key navigation of `ToggleBar` and
29
+ * `OptionsBar`.
30
+ *
31
+ * This is a plain callback bar. For buttons driven by the kit's actions
32
+ * registry, use `ActionBar` instead.
33
+ */
19
34
  export declare function ActionsBar<V extends string | number = string>(props: ActionsBarProps<V>): ReactElement;
20
35
  //# sourceMappingURL=ActionsBar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ActionsBar.d.ts","sourceRoot":"","sources":["../../../src/components/ActionsBar/ActionsBar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAI9E,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI;IAC/D,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC;AACzC,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,SAAS,CAAC;AAEtD,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI;IAChE,KAAK,EAAE,SAAS,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B,CAAC;AAEF,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,YAAY,CA8CtG"}
1
+ {"version":3,"file":"ActionsBar.d.ts","sourceRoot":"","sources":["../../../src/components/ActionsBar/ActionsBar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAI9E;;;GAGG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI;IAC/D,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAEF,+DAA+D;AAC/D,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC;AACzC,iDAAiD;AACjD,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,SAAS,CAAC;AAEtD,oCAAoC;AACpC,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI;IAChE,KAAK,EAAE,SAAS,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,YAAY,CA8CtG"}
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../chunks/ActionsBar-CAjrj_Pt.js";
1
+ import { t as e } from "../../chunks/ActionsBar-9aR5N3lU.js";
2
2
  export { e as ActionsBar };
@@ -44,7 +44,21 @@ type BadgePropsByShape = {
44
44
  shapeParams?: BadgeShapeParams[S];
45
45
  };
46
46
  }[BadgeShape];
47
+ /**
48
+ * Props for {@link Badge}. Discriminated on `shape` so `shapeParams` is typed
49
+ * to the chosen shape's own parameters.
50
+ */
47
51
  export type BadgeProps = BadgePropsByShape;
52
+ /**
53
+ * A small labelled chip. Renders as a `<span>`, or as a `<button>`/`<a>` when
54
+ * given `onClick`/`href` — override with `as`.
55
+ *
56
+ * Beyond the built-in {@link BadgeShape} silhouettes, a badge can be composed:
57
+ * `base` picks the underlying outline and `effects` layer perimeter treatments
58
+ * over it, which stack additively. `bloat` pushes the whole silhouette outward
59
+ * along its normals before effects run, and `crawl` animates perimeter
60
+ * patterns.
61
+ */
48
62
  export declare function Badge(props: BadgeProps): import("react/jsx-runtime").JSX.Element;
49
63
  export {};
50
64
  //# sourceMappingURL=Badge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../src/components/Badge/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuD,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAEhH,OAAO,EAAU,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,EAAS,KAAK,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AACtE,OAAO,EAAW,KAAK,UAAU,EAAoB,MAAM,WAAW,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE9E,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB;;wCAEoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC/B,+GAA+G;IAC/G,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,mGAAmG;IACnG,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACxC,oEAAoE;IACpE,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,GAAG,CAAC;IAC7B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;iFAC6E;IAC7E,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,KAAK,iBAAiB,GAAG;KACtB,CAAC,IAAI,UAAU,GAAG,cAAc,GAAG;QAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAA;KAAE;CACrF,CAAC,UAAU,CAAC,CAAC;AAEd,MAAM,MAAM,UAAU,GAAG,iBAAiB,CAAC;AAS3C,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,2CAqQtC"}
1
+ {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../src/components/Badge/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuD,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAEhH,OAAO,EAAU,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,EAAS,KAAK,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AACtE,OAAO,EAAW,KAAK,UAAU,EAAoB,MAAM,WAAW,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE9E,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB;;wCAEoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC/B,+GAA+G;IAC/G,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,mGAAmG;IACnG,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACxC,oEAAoE;IACpE,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,GAAG,CAAC;IAC7B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;iFAC6E;IAC7E,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,KAAK,iBAAiB,GAAG;KACtB,CAAC,IAAI,UAAU,GAAG,cAAc,GAAG;QAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAA;KAAE;CACrF,CAAC,UAAU,CAAC,CAAC;AAEd;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,iBAAiB,CAAC;AAS3C;;;;;;;;;GASG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,2CAqQtC"}
@@ -1,6 +1,14 @@
1
+ /**
2
+ * Shapes one vertical edge of a badge base. Given a position down the edge
3
+ * (`t`, 0 at the top to 1 at the bottom) and the configured depth in CSS px,
4
+ * returns the horizontal displacement of that point, positive to the right.
5
+ */
1
6
  export type EdgeProfile = (t: number, depth: number) => number;
7
+ /** The named edge profiles in {@link EDGE_PROFILES}. */
2
8
  export type BuiltInEdgeName = 'flat' | 'chevron' | 'slant' | 'slant-up' | 'round' | 'scallop' | 'concave-chevron';
9
+ /** An edge profile, either by name or as a function. */
3
10
  export type EdgeCap = BuiltInEdgeName | EdgeProfile;
11
+ /** The built-in {@link EdgeProfile} implementations, by name. */
4
12
  export declare const EDGE_PROFILES: Record<BuiltInEdgeName, EdgeProfile>;
5
13
  export declare function resolveEdge(cap: EdgeCap): EdgeProfile;
6
14
  //# sourceMappingURL=edgeProfiles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"edgeProfiles.d.ts","sourceRoot":"","sources":["../../../../src/components/Badge/bases/edgeProfiles.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AAE/D,MAAM,MAAM,eAAe,GACvB,MAAM,GACN,SAAS,GACT,OAAO,GACP,UAAU,GACV,OAAO,GACP,SAAS,GACT,iBAAiB,CAAC;AAEtB,MAAM,MAAM,OAAO,GAAG,eAAe,GAAG,WAAW,CAAC;AAEpD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,eAAe,EAAE,WAAW,CAQ9D,CAAC;AAEF,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW,CAGrD"}
1
+ {"version":3,"file":"edgeProfiles.d.ts","sourceRoot":"","sources":["../../../../src/components/Badge/bases/edgeProfiles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AAE/D,wDAAwD;AACxD,MAAM,MAAM,eAAe,GACvB,MAAM,GACN,SAAS,GACT,OAAO,GACP,UAAU,GACV,OAAO,GACP,SAAS,GACT,iBAAiB,CAAC;AAEtB,wDAAwD;AACxD,MAAM,MAAM,OAAO,GAAG,eAAe,GAAG,WAAW,CAAC;AAEpD,iEAAiE;AACjE,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,eAAe,EAAE,WAAW,CAQ9D,CAAC;AAEF,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW,CAGrD"}
@@ -1,7 +1,18 @@
1
1
  import type { ReactNode } from 'react';
2
+ /**
3
+ * Built-in badge silhouettes. `pill`, `plain` and `square` are drawn in CSS;
4
+ * the rest are SVG outlines, several of which route through the compose
5
+ * pipeline (a base shape plus perimeter effects).
6
+ */
2
7
  export type BadgeShape = 'pill' | 'plain' | 'square' | 'notched' | 'perforated' | 'hexagon' | 'starburst' | 'scalloped' | 'shield' | 'ribbon' | 'beavis' | 'sparkler' | 'postage' | 'cloud' | 'house' | 'plaque' | 'crest' | 'urn' | 'coffin' | 'receipt' | 'wood' | 'quatrefoil';
8
+ /**
9
+ * Semantic color of a badge. `custom` paints from the `--badge-edge` custom
10
+ * property instead of a theme token, so a call site can supply its own color.
11
+ */
3
12
  export type BadgeTone = 'accent' | 'info' | 'warn' | 'danger' | 'muted' | 'neutral' | 'custom';
13
+ /** How a badge's tone is applied: outline only, filled, or a soft tinted fill. */
4
14
  export type BadgeVariant = 'outline' | 'solid' | 'subtle';
15
+ /** Badge type scale and padding step. */
5
16
  export type BadgeSize = 'sm' | 'md';
6
17
  export interface ShapeRenderProps<P = Record<string, never>> {
7
18
  variant: BadgeVariant;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/Badge/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,UAAU,GAClB,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,YAAY,GACtD,SAAS,GACT,WAAW,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAC1D,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GACrD,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,YAAY,CAAC;AAEnE,MAAM,MAAM,SAAS,GACjB,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE3E,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAC1D,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC;AAEpC,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IACzD,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,CAAC,CAAC;IACV,0FAA0F;IAC1F,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAAG,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;AAEzF;yGACyG;AACzG,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAAE,CAAC;CAChE;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IACpD,2HAA2H;IAC3H,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;IACtD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,gBAAgB,CAAC;IAC1C,MAAM,EAAE,WAAW,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,WAAW,CAAC,CAAC;IACnD,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAC3B,QAAQ,CAAC,EAAE,CAAC,CAAC;CACd"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/Badge/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAClB,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,YAAY,GACtD,SAAS,GACT,WAAW,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAC1D,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GACrD,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,YAAY,CAAC;AAEnE;;;GAGG;AACH,MAAM,MAAM,SAAS,GACjB,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE3E,kFAAkF;AAClF,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAC1D,yCAAyC;AACzC,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC;AAEpC,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IACzD,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,CAAC,CAAC;IACV,0FAA0F;IAC1F,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAAG,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;AAEzF;yGACyG;AACzG,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAAE,CAAC;CAChE;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IACpD,2HAA2H;IAC3H,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;IACtD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,gBAAgB,CAAC;IAC1C,MAAM,EAAE,WAAW,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,WAAW,CAAC,CAAC;IACnD,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAC3B,QAAQ,CAAC,EAAE,CAAC,CAAC;CACd"}
@@ -0,0 +1,56 @@
1
+ import { type ReactElement, type ReactNode } from 'react';
2
+ import { type BandScale } from './scale';
3
+ import { type Band } from './bands';
4
+ export type { Band, BandScale };
5
+ export interface BandEditorProps<T> {
6
+ /** Ascending by `from`. `value[0].from` is normalized to `min` on read. */
7
+ value: Band<T>[];
8
+ /** Live during a drag — wire for preview, do not write to history. */
9
+ onInput?: (next: Band<T>[]) => void;
10
+ /** Committed at gesture end: one call per gesture. */
11
+ onChange: (next: Band<T>[]) => void;
12
+ min: number;
13
+ max: number;
14
+ /** Default `'log'`. */
15
+ scale?: 'linear' | 'log' | BandScale;
16
+ ticks?: {
17
+ at: number;
18
+ label?: ReactNode;
19
+ }[];
20
+ /** Snap a dragged seam to a tick within ~6px. Default true; `alt` defeats it per-drag. */
21
+ snap?: boolean;
22
+ renderBand?: (band: Band<T>, index: number) => ReactNode;
23
+ selectedIndex?: number | null;
24
+ onSelect?: (index: number) => void;
25
+ /** Payload for a band split off an existing one. Default duplicates `from`. */
26
+ splitBand?: (at: number, from: T) => T;
27
+ label?: ReactNode;
28
+ className?: string;
29
+ }
30
+ /**
31
+ * Divides a numeric axis into contiguous bands and lets you drag the seams
32
+ * between them. Each band carries a payload the consumer supplies and
33
+ * renders through `renderBand`; the control itself knows nothing about what
34
+ * a band means.
35
+ *
36
+ * The axis is always fully covered — N bands, N−1 interior seams, no gaps and
37
+ * no overlaps — so editing is editing a sorted list of seam positions. Seams
38
+ * clamp at their neighbours rather than crossing, which means a drag can
39
+ * never destroy a band: removal is only ever the explicit `x` / `Delete`
40
+ * merge. The first band is doubly exceptional, its left edge pinned to `min`
41
+ * and its body immovable, and it has no left neighbour to merge into.
42
+ *
43
+ * | Gesture | Effect |
44
+ * |---|---|
45
+ * | drag a seam | resize the two bands either side |
46
+ * | drag a band body | move both its seams, preserving its span |
47
+ * | click the ruler | split the band under the pointer |
48
+ * | `x` / `Delete` | merge the selected band into its left neighbour |
49
+ * | click a band | select it |
50
+ * | `←` `→` on a focused seam | move it by one step; `shift` for ten |
51
+ *
52
+ * `scale` defaults to `'log'`, because the interesting part of a width axis
53
+ * is usually its narrow end.
54
+ */
55
+ export declare function BandEditor<T>(props: BandEditorProps<T>): ReactElement;
56
+ //# sourceMappingURL=BandEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BandEditor.d.ts","sourceRoot":"","sources":["../../../src/components/BandEditor/BandEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,EAAyB,KAAK,SAAS,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAWL,KAAK,IAAI,EACV,MAAM,SAAS,CAAC;AAEjB,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AAEhC,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,2EAA2E;IAC3E,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACjB,sEAAsE;IACtE,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC;IACpC,sDAAsD;IACtD,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,uBAAuB;IACvB,KAAK,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;IACrC,KAAK,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,SAAS,CAAA;KAAE,EAAE,CAAC;IAC5C,0FAA0F;IAC1F,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;IACzD,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,+EAA+E;IAC/E,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;IACvC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAgBD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,YAAY,CAqMrE"}
@@ -0,0 +1,45 @@
1
+ import type { BandScale } from './scale';
2
+ export interface Band<T> {
3
+ /** Domain value where this band starts. The first band's is normalized to `min`. */
4
+ from: number;
5
+ data: T;
6
+ }
7
+ /**
8
+ * A band list covers `[min, max]` exactly: N bands, N−1 interior seams, no
9
+ * gaps and no overlaps. Seam *k* is `bands[k + 1].from`, and lives between
10
+ * `bands[k].from` and the start of the band after next (or `max`).
11
+ *
12
+ * Every function here preserves that. Each returns the array it was given
13
+ * when the edit would be a no-op, so callers can skip a callback with `===`.
14
+ */
15
+ /** Pins the first band's start to `min`; leaves the rest alone. */
16
+ export declare function normalizeBands<T>(value: readonly Band<T>[], min: number): Band<T>[];
17
+ /** `[from, to]` of band `index` in domain space. */
18
+ export declare function bandBounds<T>(bands: readonly Band<T>[], index: number, min: number, max: number): [number, number];
19
+ /** How far seam `index` can travel before it would cross a neighbour. */
20
+ export declare function seamBounds<T>(bands: readonly Band<T>[], index: number, min: number, max: number): [number, number];
21
+ /** Clamps a target position for seam `index` to its neighbours, inclusive. */
22
+ export declare function clampSeamTo<T>(bands: readonly Band<T>[], index: number, to: number, min: number, max: number): number;
23
+ export declare function setSeam<T>(bands: readonly Band<T>[], index: number, to: number): Band<T>[];
24
+ /** Band edges as track positions: `length + 1` values from 0 to 1. */
25
+ export declare function unitEdges<T>(bands: readonly Band<T>[], scale: BandScale, min: number, max: number): number[];
26
+ /**
27
+ * Largest part of `shift` band `index` can take without pushing a neighbour's
28
+ * far edge past it. Zero for the first and last band, whose outer edges are
29
+ * `min` and `max` and do not move.
30
+ */
31
+ export declare function clampBandShift(edges: readonly number[], index: number, shift: number): number;
32
+ /** Moves both edges of band `index`, which is the same as moving two seams. */
33
+ export declare function moveBandEdges<T>(bands: readonly Band<T>[], index: number, from: number, to: number): Band<T>[];
34
+ /**
35
+ * Splits the band containing `at` in two, the new band starting there.
36
+ * A position already on a seam or on `min` / `max` splits nothing.
37
+ */
38
+ export declare function splitBands<T>(bands: readonly Band<T>[], at: number, min: number, max: number, makeData: (at: number, from: T) => T): Band<T>[];
39
+ /**
40
+ * Merges band `index` into its left neighbour, which keeps its payload and
41
+ * absorbs the span. The first band has no left neighbour and cannot be
42
+ * merged away — a partition always has at least one part.
43
+ */
44
+ export declare function mergeBand<T>(bands: readonly Band<T>[], index: number): Band<T>[];
45
+ //# sourceMappingURL=bands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bands.d.ts","sourceRoot":"","sources":["../../../src/components/BandEditor/bands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGzC,MAAM,WAAW,IAAI,CAAC,CAAC;IACrB,oFAAoF;IACpF,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,CAAC,CAAC;CACT;AAED;;;;;;;GAOG;AAEH,mEAAmE;AACnE,wBAAgB,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAInF;AAED,oDAAoD;AACpD,wBAAgB,UAAU,CAAC,CAAC,EAC1B,KAAK,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,EACzB,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,CAAC,MAAM,EAAE,MAAM,CAAC,CAIlB;AAED,yEAAyE;AACzE,wBAAgB,UAAU,CAAC,CAAC,EAC1B,KAAK,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,EACzB,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,CAAC,MAAM,EAAE,MAAM,CAAC,CAIlB;AAED,8EAA8E;AAC9E,wBAAgB,WAAW,CAAC,CAAC,EAC3B,KAAK,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,EACzB,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,MAAM,CAGR;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAK1F;AAED,sEAAsE;AACtE,wBAAgB,SAAS,CAAC,CAAC,EACzB,KAAK,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,EACzB,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,MAAM,EAAE,CAIV;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAO7F;AAED,+EAA+E;AAC/E,wBAAgB,aAAa,CAAC,CAAC,EAC7B,KAAK,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,EACzB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,GACT,IAAI,CAAC,CAAC,CAAC,EAAE,CAKX;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC1B,KAAK,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,EACzB,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,GACnC,IAAI,CAAC,CAAC,CAAC,EAAE,CAcX;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAGhF"}
@@ -0,0 +1,4 @@
1
+ export { BandEditor } from './BandEditor';
2
+ export type { Band, BandEditorProps, BandScale } from './BandEditor';
3
+ export { linearScale, logScale } from './scale';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/BandEditor/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { n as e, r as t, t as n } from "../../chunks/BandEditor-13K91O9M.js";
2
+ export { n as BandEditor, e as linearScale, t as logScale };
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Maps a domain value onto its position along the track, and back.
3
+ *
4
+ * Deliberately narrow — two functions over an explicit `[min, max]` — rather
5
+ * than a general scale type for the package. `Plot2D`, `CurveEditor` and
6
+ * `@weasel-js/core` each already use "scale" or "domain" to mean something
7
+ * else; generalizing is a job for a second consumer that needs one.
8
+ */
9
+ export interface BandScale {
10
+ /** Domain → position in [0,1]. Must be monotonic increasing. */
11
+ toUnit(value: number, min: number, max: number): number;
12
+ /** Inverse of `toUnit`. */
13
+ fromUnit(unit: number, min: number, max: number): number;
14
+ }
15
+ export declare function clamp01(u: number): number;
16
+ /** Even domain steps take even track steps. */
17
+ export declare const linearScale: BandScale;
18
+ /** Even *ratios* take even track steps. Requires `min > 0`. */
19
+ export declare const logScale: BandScale;
20
+ /**
21
+ * Resolves the `scale` prop, substituting `linearScale` for a `logScale`
22
+ * that `min` would send to `NaN`.
23
+ */
24
+ export declare function resolveScale(scale: 'linear' | 'log' | BandScale | undefined, min: number): BandScale;
25
+ //# sourceMappingURL=scale.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scale.d.ts","sourceRoot":"","sources":["../../../src/components/BandEditor/scale.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,SAAS;IACxB,gEAAgE;IAChE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACxD,2BAA2B;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1D;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAEzC;AAED,+CAA+C;AAC/C,eAAO,MAAM,WAAW,EAAE,SAGzB,CAAC;AAEF,+DAA+D;AAC/D,eAAO,MAAM,QAAQ,EAAE,SAUtB,CAAC;AAQF;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,EAC/C,GAAG,EAAE,MAAM,GACV,SAAS,CAkBX"}
@@ -1,5 +1,7 @@
1
1
  import { type ButtonHTMLAttributes, type ReactNode } from 'react';
2
+ /** Visual weight of a button. Defaults to `secondary`. */
2
3
  export type ButtonVariant = 'primary' | 'secondary' | 'ghost';
4
+ /** Button height and type scale. */
3
5
  export type ButtonSize = 'sm' | 'md';
4
6
  type ButtonBase = {
5
7
  variant?: ButtonVariant;
@@ -23,7 +25,18 @@ type ButtonIconOnly = ButtonBase & {
23
25
  iconOnly: true;
24
26
  ariaLabel: string;
25
27
  };
28
+ /**
29
+ * Props for {@link Button}. Setting `iconOnly` makes `ariaLabel` required,
30
+ * since an icon-only button has no text for a screen reader to announce.
31
+ */
26
32
  export type ButtonProps = ButtonRegular | ButtonIconOnly;
33
+ /**
34
+ * Standard button. `loading` swaps the leading icon for a spinner, marks the
35
+ * button `aria-busy`, and leaves the label in place; it does not disable the
36
+ * button, so pass `disabled` too if the click should be blocked.
37
+ *
38
+ * `ref` forwards to the underlying `<button>`.
39
+ */
27
40
  export declare const Button: import("react").ForwardRefExoticComponent<ButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
28
41
  export {};
29
42
  //# sourceMappingURL=Button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/Button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,oBAAoB,EAAE,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAGxF,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;AAC9D,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,CAAC;AAErC,KAAK,UAAU,GAAG;IAChB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC;IACzD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,OAAO,CAAC,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,CAAC;CAC9D,CAAC;AAEF,KAAK,aAAa,GAAG,UAAU,GAAG;IAChC,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,KAAK,cAAc,GAAG,UAAU,GAAG;IACjC,QAAQ,EAAE,IAAI,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,cAAc,CAAC;AA2BzD,eAAO,MAAM,MAAM,2GA2DjB,CAAC"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/Button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,oBAAoB,EAAE,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAGxF,0DAA0D;AAC1D,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;AAC9D,oCAAoC;AACpC,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,CAAC;AAErC,KAAK,UAAU,GAAG;IAChB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC;IACzD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,OAAO,CAAC,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,CAAC;CAC9D,CAAC;AAEF,KAAK,aAAa,GAAG,UAAU,GAAG;IAChC,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,KAAK,cAAc,GAAG,UAAU,GAAG;IACjC,QAAQ,EAAE,IAAI,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,cAAc,CAAC;AA2BzD;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,2GA2DjB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { type ReactNode, type RefObject } from 'react';
2
2
  import { DialogTrigger, type PopoverProps as RACPopoverProps } from 'react-aria-components';
3
+ /** Accent color of a {@link Callout}'s border and arrow. */
3
4
  export type CalloutTone = 'info' | 'warning' | 'danger';
4
5
  /**
5
6
  * Composition wrapper for press-to-open callouts:
@@ -10,6 +11,7 @@ export type CalloutTone = 'info' | 'warning' | 'danger';
10
11
  * RAC detaches to local open state on the trigger, not the popover.
11
12
  */
12
13
  export { DialogTrigger as CalloutTrigger };
14
+ /** Props for {@link Callout}, on top of React Aria's `Popover` props. */
13
15
  export type CalloutProps = Omit<RACPopoverProps, 'children' | 'className' | 'isNonModal' | 'triggerRef'> & {
14
16
  children?: ReactNode;
15
17
  className?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Callout.d.ts","sourceRoot":"","sources":["../../../src/components/Callout/Callout.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAyC,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE9F,OAAO,EACL,aAAa,EAKb,KAAK,YAAY,IAAI,eAAe,EACrC,MAAM,uBAAuB,CAAC;AAG/B,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;AAExD;;;;;;;GAOG;AACH,OAAO,EAAE,aAAa,IAAI,cAAc,EAAE,CAAC;AAE3C,MAAM,MAAM,YAAY,GAAG,IAAI,CAC7B,eAAe,EACf,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,YAAY,CACvD,GAAG;IACF,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,sDAAsD;IACtD,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,wEAAwE;IACxE,UAAU,CAAC,EAAE,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IACvC;;;;;OAKG;IACH,UAAU,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CACtE,CAAC;AAQF;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,2CA2I1C"}
1
+ {"version":3,"file":"Callout.d.ts","sourceRoot":"","sources":["../../../src/components/Callout/Callout.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAyC,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE9F,OAAO,EACL,aAAa,EAKb,KAAK,YAAY,IAAI,eAAe,EACrC,MAAM,uBAAuB,CAAC;AAG/B,4DAA4D;AAC5D,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;AAExD;;;;;;;GAOG;AACH,OAAO,EAAE,aAAa,IAAI,cAAc,EAAE,CAAC;AAE3C,yEAAyE;AACzE,MAAM,MAAM,YAAY,GAAG,IAAI,CAC7B,eAAe,EACf,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,YAAY,CACvD,GAAG;IACF,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,sDAAsD;IACtD,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,wEAAwE;IACxE,UAAU,CAAC,EAAE,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IACvC;;;;;OAKG;IACH,UAAU,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CACtE,CAAC;AAQF;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,2CA2I1C"}
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "../../chunks/Callout-DlirfLJl.js";
1
+ import { n as e, t } from "../../chunks/Callout-CFqG5xho.js";
2
2
  export { t as Callout, e as CalloutTrigger };
@@ -1,5 +1,9 @@
1
1
  import { type ReactNode } from 'react';
2
2
  import { type CheckboxProps as RACCheckboxProps } from 'react-aria-components';
3
+ /**
4
+ * Props for {@link Checkbox}, on top of React Aria's `Checkbox` props. The
5
+ * label is passed as children.
6
+ */
3
7
  export type CheckboxProps = Omit<RACCheckboxProps, 'children' | 'className'> & {
4
8
  children?: ReactNode;
5
9
  className?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAC7D,OAAO,EAEL,KAAK,aAAa,IAAI,gBAAgB,EACvC,MAAM,uBAAuB,CAAC;AAG/B,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE,UAAU,GAAG,WAAW,CAAC,GAAG;IAC7E,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,QAAQ;eARR,SAAS;gBACR,MAAM;oDAyClB,CAAC"}
1
+ {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAC7D,OAAO,EAEL,KAAK,aAAa,IAAI,gBAAgB,EACvC,MAAM,uBAAuB,CAAC;AAG/B;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE,UAAU,GAAG,WAAW,CAAC,GAAG;IAC7E,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,QAAQ;eARR,SAAS;gBACR,MAAM;oDAyClB,CAAC"}
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../chunks/Checkbox-B3Z_u7k0.js";
1
+ import { t as e } from "../../chunks/Checkbox-KQ5L8APP.js";
2
2
  export { e as Checkbox };
@@ -1,3 +1,7 @@
1
+ /**
2
+ * Props for {@link ColorField}. `onInput` fires throughout a gesture and
3
+ * `onChange` once at its end.
4
+ */
1
5
  export interface ColorFieldProps {
2
6
  /** Current color, `#rrggbb` or `#rrggbbaa`. Omit when `mixed`. */
3
7
  value?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ColorField.d.ts","sourceRoot":"","sources":["../../../src/components/ColorField/ColorField.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,eAAe;IAC9B,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;8BAI0B;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;uEACmE;IACnE,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC;yDACqD;IACrD,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,2CA4EhD"}
1
+ {"version":3,"file":"ColorField.d.ts","sourceRoot":"","sources":["../../../src/components/ColorField/ColorField.tsx"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;8BAI0B;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;uEACmE;IACnE,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC;yDACqD;IACrD,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,2CA4EhD"}
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../chunks/ColorField-B4Hd2qqS.js";
1
+ import { t as e } from "../../chunks/ColorField-ykpiD3XU.js";
2
2
  export { e as ColorField };
@@ -1,5 +1,10 @@
1
1
  import type { ReactNode } from 'react';
2
2
  import { type ComboBoxProps as RACComboBoxProps, type ListBoxItemProps as RACListBoxItemProps, type ValidationResult } from 'react-aria-components';
3
+ /**
4
+ * One option in a {@link ComboBox}'s `options` list. `textValue` is the
5
+ * plain-text form used for filtering and screen readers, needed only when
6
+ * `label` isn't a bare string.
7
+ */
3
8
  export type ComboBoxOption = {
4
9
  value: string;
5
10
  label: ReactNode;
@@ -7,6 +12,10 @@ export type ComboBoxOption = {
7
12
  isDisabled?: boolean;
8
13
  };
9
14
  type Key = string | number;
15
+ /**
16
+ * Props for {@link ComboBox}, on top of React Aria's `ComboBox` props, with
17
+ * the selection key narrowed to the option value type.
18
+ */
10
19
  export type ComboBoxProps<T extends Key = string> = Omit<RACComboBoxProps<object>, 'children' | 'className' | 'selectedKey' | 'defaultSelectedKey' | 'onSelectionChange'> & {
11
20
  label?: ReactNode;
12
21
  description?: ReactNode;
@@ -28,9 +37,11 @@ export type ComboBoxProps<T extends Key = string> = Omit<RACComboBoxProps<object
28
37
  * is in the input, selection clears (key becomes null).
29
38
  */
30
39
  export declare function ComboBox<T extends Key = string>(props: ComboBoxProps<T>): import("react/jsx-runtime").JSX.Element;
40
+ /** Props for {@link ComboBoxItem}, on top of React Aria's `ListBoxItem` props. */
31
41
  export type ComboBoxItemProps = Omit<RACListBoxItemProps, 'className'> & {
32
42
  className?: string;
33
43
  };
44
+ /** One row in a {@link ComboBox}'s filtered list. */
34
45
  export declare function ComboBoxItem({ className, ...rest }: ComboBoxItemProps): import("react/jsx-runtime").JSX.Element;
35
46
  export {};
36
47
  //# sourceMappingURL=ComboBox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBox.d.ts","sourceRoot":"","sources":["../../../src/components/ComboBox/ComboBox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAUL,KAAK,aAAa,IAAI,gBAAgB,EACtC,KAAK,gBAAgB,IAAI,mBAAmB,EAC5C,KAAK,gBAAgB,EACtB,MAAM,uBAAuB,CAAC;AAI/B,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,KAAK,GAAG,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3B,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,GAAG,GAAG,MAAM,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,aAAa,GAAG,oBAAoB,GAAG,mBAAmB,CAAC,GAAG;IAC1K,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,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,aAAa,CAAC,cAAc,GAAG;QAAE,KAAK,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC;IACvD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,WAAW,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACvB,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACvB,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IAC5C,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,GAAG,GAAG,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,2CAoDvE;AAED,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,GAAG;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,iBAAiB,2CAErE"}
1
+ {"version":3,"file":"ComboBox.d.ts","sourceRoot":"","sources":["../../../src/components/ComboBox/ComboBox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAUL,KAAK,aAAa,IAAI,gBAAgB,EACtC,KAAK,gBAAgB,IAAI,mBAAmB,EAC5C,KAAK,gBAAgB,EACtB,MAAM,uBAAuB,CAAC;AAI/B;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,KAAK,GAAG,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3B;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,GAAG,GAAG,MAAM,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,aAAa,GAAG,oBAAoB,GAAG,mBAAmB,CAAC,GAAG;IAC1K,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,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,aAAa,CAAC,cAAc,GAAG;QAAE,KAAK,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC;IACvD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,WAAW,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACvB,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACvB,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IAC5C,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,GAAG,GAAG,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,2CAoDvE;AAED,kFAAkF;AAClF,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,GAAG;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,qDAAqD;AACrD,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,iBAAiB,2CAErE"}
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "../../chunks/ComboBox-tbmgND-F.js";
1
+ import { n as e, t } from "../../chunks/ComboBox-DpxsFVBy.js";
2
2
  export { t as ComboBox, e as ComboBoxItem };
@@ -10,10 +10,14 @@ import type { InterpolationMode } from './interpolation';
10
10
  import { type ControlPoint, type CurveDomain, type EndpointMode, type AddPointMode, type CurveSettings, type FillSettings, type AnchorRenderProps } from './createFunctionLayer';
11
11
  export type { GridSettings, AxesSettings };
12
12
  export type { ControlPoint, CurveDomain, EndpointMode, AddPointMode, CurveSettings, FillSettings, AnchorRenderProps, };
13
+ /**
14
+ * Props for {@link CurveEditor}. `onInput` fires throughout a gesture and
15
+ * `onChange` once at its end, with the pre-gesture points as `prev`.
16
+ */
13
17
  export interface CurveEditorProps {
14
18
  value: readonly ControlPoint[];
15
- onChange: (next: ControlPoint[]) => void;
16
- onChangeCommit?: (next: ControlPoint[], prev: readonly ControlPoint[]) => void;
19
+ onInput: (next: ControlPoint[]) => void;
20
+ onChange?: (next: ControlPoint[], prev: readonly ControlPoint[]) => void;
17
21
  domain?: CurveDomain;
18
22
  interpolation?: InterpolationMode;
19
23
  endpoints?: EndpointMode;
@@ -37,5 +41,13 @@ export interface CurveEditorProps {
37
41
  className?: string;
38
42
  style?: CSSProperties;
39
43
  }
44
+ /**
45
+ * Editable curve through a list of control points: drag anchors, click to
46
+ * insert, right-click to delete, with optional built-in undo.
47
+ *
48
+ * This is the single-curve API, implemented as one `createFunctionLayer` on
49
+ * a `LayeredCurveEditor`. Reach for those directly to stack several curves
50
+ * on one plot.
51
+ */
40
52
  export declare function CurveEditor(props: CurveEditorProps): import("react/jsx-runtime").JSX.Element;
41
53
  //# sourceMappingURL=CurveEditor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CurveEditor.d.ts","sourceRoot":"","sources":["../../../src/components/CurveEditor/CurveEditor.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAEL,KAAK,aAAa,EAElB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,YAAY,EAClB,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EAEvB,MAAM,uBAAuB,CAAC;AAG/B,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;AAC3C,YAAY,EACV,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EACrD,aAAa,EAAE,YAAY,EAAE,iBAAiB,GAC/C,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/B,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,IAAI,CAAC;IACzC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,YAAY,EAAE,KAAK,IAAI,CAAC;IAC/E,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,SAAS,CAAC,EAAE,YAAY,CAAC;IACzB,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,IAAI,CAAC;IACnC,IAAI,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,aAAa,GAAG,KAAK,GAAG,IAAI,CAAC;IACrC,IAAI,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,IAAI,CAAC;IACnC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,SAAS,CAAC;IACtD,+DAA+D;IAC/D,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CA4GlD"}
1
+ {"version":3,"file":"CurveEditor.d.ts","sourceRoot":"","sources":["../../../src/components/CurveEditor/CurveEditor.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAEL,KAAK,aAAa,EAElB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,YAAY,EAClB,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EAEvB,MAAM,uBAAuB,CAAC;AAG/B,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;AAC3C,YAAY,EACV,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EACrD,aAAa,EAAE,YAAY,EAAE,iBAAiB,GAC/C,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/B,OAAO,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,YAAY,EAAE,KAAK,IAAI,CAAC;IACzE,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,SAAS,CAAC,EAAE,YAAY,CAAC;IACzB,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,IAAI,CAAC;IACnC,IAAI,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,aAAa,GAAG,KAAK,GAAG,IAAI,CAAC;IACrC,IAAI,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,IAAI,CAAC;IACnC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,SAAS,CAAC;IACtD,+DAA+D;IAC/D,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CA4GlD"}
@@ -1,10 +1,15 @@
1
1
  import { type CSSProperties, type ReactNode } from 'react';
2
2
  import { type GridSettings, type AxesSettings } from '../Plot2D';
3
3
  import type { CurveLayer } from './layerTypes';
4
+ /**
5
+ * A layer paired with the state the consumer holds for it. The editor never
6
+ * stores layer state itself.
7
+ */
4
8
  export interface LayerBinding<S = unknown> {
5
9
  layer: CurveLayer<S>;
6
10
  state: S;
7
11
  }
12
+ /** Props for {@link LayeredCurveEditor}. */
8
13
  export interface LayeredCurveEditorProps {
9
14
  /** Bottom-to-top render order: `layers[0]` paints first, `layers[N-1]`
10
15
  * paints on top. Hit-testing runs in reverse (topmost claim wins). */
@@ -36,5 +41,15 @@ export interface LayeredCurveEditorProps {
36
41
  * worth modeling as a layer. */
37
42
  children?: ReactNode;
38
43
  }
44
+ /**
45
+ * A `Plot2D` that hosts a stack of composable curve layers. It owns the
46
+ * pointer gestures and the coordinate mapping; each layer supplies its own
47
+ * drawing, hit testing and gesture behavior.
48
+ *
49
+ * Layer state stays with the consumer: the editor reports changes through
50
+ * `onLayerChange` during a gesture and `onLayerCommit` at its end, and reads
51
+ * the state back from props each frame. That is what lets one layer's drag
52
+ * update another layer's state mid-gesture.
53
+ */
39
54
  export declare function LayeredCurveEditor(props: LayeredCurveEditorProps): import("react/jsx-runtime").JSX.Element;
40
55
  //# sourceMappingURL=LayeredCurveEditor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LayeredCurveEditor.d.ts","sourceRoot":"","sources":["../../../src/components/CurveEditor/LayeredCurveEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,aAAa,EAGlB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,YAAY,EAClB,MAAM,WAAW,CAAC;AAOnB,OAAO,KAAK,EACV,UAAU,EACX,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,KAAK,EAAE,CAAC,CAAC;CACV;AAED,MAAM,WAAW,uBAAuB;IACtC;2EACuE;IACvE,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IAEzC;+CAC2C;IAC3C,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAE/C;;0CAEsC;IACtC,aAAa,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAE/D,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,2CAA2C;IAC3C,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,IAAI,CAAC;IACnC,IAAI,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,IAAI,CAAC;IAEnC;;;mCAG+B;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB;;qCAEiC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAmBD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,2CA0UhE"}
1
+ {"version":3,"file":"LayeredCurveEditor.d.ts","sourceRoot":"","sources":["../../../src/components/CurveEditor/LayeredCurveEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,aAAa,EAGlB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,YAAY,EAClB,MAAM,WAAW,CAAC;AAOnB,OAAO,KAAK,EACV,UAAU,EACX,MAAM,cAAc,CAAC;AAEtB;;;GAGG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,KAAK,EAAE,CAAC,CAAC;CACV;AAED,4CAA4C;AAC5C,MAAM,WAAW,uBAAuB;IACtC;2EACuE;IACvE,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IAEzC;+CAC2C;IAC3C,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAE/C;;0CAEsC;IACtC,aAAa,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAE/D,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,2CAA2C;IAC3C,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,IAAI,CAAC;IACnC,IAAI,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,IAAI,CAAC;IAEnC;;;mCAG+B;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB;;qCAEiC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAmBD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,2CA0UhE"}