@weasel-js/ui 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. package/dist/color/oklch.d.ts +14 -0
  2. package/dist/color/oklch.d.ts.map +1 -0
  3. package/dist/components/ActionBar/ActionBar.d.ts +36 -0
  4. package/dist/components/ActionBar/ActionBar.d.ts.map +1 -0
  5. package/dist/components/ActionBar/index.d.ts +3 -0
  6. package/dist/components/ActionBar/index.d.ts.map +1 -0
  7. package/dist/components/ActionsBar/ActionsBar.d.ts +20 -0
  8. package/dist/components/ActionsBar/ActionsBar.d.ts.map +1 -0
  9. package/dist/components/ActionsBar/index.d.ts +3 -0
  10. package/dist/components/ActionsBar/index.d.ts.map +1 -0
  11. package/dist/components/Badge/Badge.d.ts +50 -0
  12. package/dist/components/Badge/Badge.d.ts.map +1 -0
  13. package/dist/components/Badge/bases/ChamferedRect.d.ts +8 -0
  14. package/dist/components/Badge/bases/ChamferedRect.d.ts.map +1 -0
  15. package/dist/components/Badge/bases/OctantBSpline.d.ts +71 -0
  16. package/dist/components/Badge/bases/OctantBSpline.d.ts.map +1 -0
  17. package/dist/components/Badge/bases/OctantSpline.d.ts +79 -0
  18. package/dist/components/Badge/bases/OctantSpline.d.ts.map +1 -0
  19. package/dist/components/Badge/bases/Polygon.d.ts +8 -0
  20. package/dist/components/Badge/bases/Polygon.d.ts.map +1 -0
  21. package/dist/components/Badge/bases/Powerline.d.ts +13 -0
  22. package/dist/components/Badge/bases/Powerline.d.ts.map +1 -0
  23. package/dist/components/Badge/bases/Puzzle.d.ts +15 -0
  24. package/dist/components/Badge/bases/Puzzle.d.ts.map +1 -0
  25. package/dist/components/Badge/bases/Quatrefoil.d.ts +46 -0
  26. package/dist/components/Badge/bases/Quatrefoil.d.ts.map +1 -0
  27. package/dist/components/Badge/bases/Ribbon.d.ts +12 -0
  28. package/dist/components/Badge/bases/Ribbon.d.ts.map +1 -0
  29. package/dist/components/Badge/bases/RoundedRect.d.ts +14 -0
  30. package/dist/components/Badge/bases/RoundedRect.d.ts.map +1 -0
  31. package/dist/components/Badge/bases/edgeProfiles.d.ts +6 -0
  32. package/dist/components/Badge/bases/edgeProfiles.d.ts.map +1 -0
  33. package/dist/components/Badge/bases/index.d.ts +24 -0
  34. package/dist/components/Badge/bases/index.d.ts.map +1 -0
  35. package/dist/components/Badge/bases/polygonSampler.d.ts +4 -0
  36. package/dist/components/Badge/bases/polygonSampler.d.ts.map +1 -0
  37. package/dist/components/Badge/bases/types.d.ts +69 -0
  38. package/dist/components/Badge/bases/types.d.ts.map +1 -0
  39. package/dist/components/Badge/effects/Aqua.d.ts +49 -0
  40. package/dist/components/Badge/effects/Aqua.d.ts.map +1 -0
  41. package/dist/components/Badge/effects/Bevel.d.ts +11 -0
  42. package/dist/components/Badge/effects/Bevel.d.ts.map +1 -0
  43. package/dist/components/Badge/effects/Bevel2.d.ts +11 -0
  44. package/dist/components/Badge/effects/Bevel2.d.ts.map +1 -0
  45. package/dist/components/Badge/effects/Bites.d.ts +10 -0
  46. package/dist/components/Badge/effects/Bites.d.ts.map +1 -0
  47. package/dist/components/Badge/effects/Metal.d.ts +41 -0
  48. package/dist/components/Badge/effects/Metal.d.ts.map +1 -0
  49. package/dist/components/Badge/effects/Outline.d.ts +17 -0
  50. package/dist/components/Badge/effects/Outline.d.ts.map +1 -0
  51. package/dist/components/Badge/effects/Perforations.d.ts +11 -0
  52. package/dist/components/Badge/effects/Perforations.d.ts.map +1 -0
  53. package/dist/components/Badge/effects/Puffs.d.ts +10 -0
  54. package/dist/components/Badge/effects/Puffs.d.ts.map +1 -0
  55. package/dist/components/Badge/effects/Rivets.d.ts +13 -0
  56. package/dist/components/Badge/effects/Rivets.d.ts.map +1 -0
  57. package/dist/components/Badge/effects/Scallops.d.ts +10 -0
  58. package/dist/components/Badge/effects/Scallops.d.ts.map +1 -0
  59. package/dist/components/Badge/effects/Shadow.d.ts +11 -0
  60. package/dist/components/Badge/effects/Shadow.d.ts.map +1 -0
  61. package/dist/components/Badge/effects/Sheen.d.ts +10 -0
  62. package/dist/components/Badge/effects/Sheen.d.ts.map +1 -0
  63. package/dist/components/Badge/effects/Spikes.d.ts +20 -0
  64. package/dist/components/Badge/effects/Spikes.d.ts.map +1 -0
  65. package/dist/components/Badge/effects/Sunbeams.d.ts +29 -0
  66. package/dist/components/Badge/effects/Sunbeams.d.ts.map +1 -0
  67. package/dist/components/Badge/effects/Woodgrain.d.ts +12 -0
  68. package/dist/components/Badge/effects/Woodgrain.d.ts.map +1 -0
  69. package/dist/components/Badge/effects/index.d.ts +40 -0
  70. package/dist/components/Badge/effects/index.d.ts.map +1 -0
  71. package/dist/components/Badge/effects/rangeMask.d.ts +13 -0
  72. package/dist/components/Badge/effects/rangeMask.d.ts.map +1 -0
  73. package/dist/components/Badge/index.d.ts +4 -0
  74. package/dist/components/Badge/index.d.ts.map +1 -0
  75. package/dist/components/Badge/shapeControls.d.ts +29 -0
  76. package/dist/components/Badge/shapeControls.d.ts.map +1 -0
  77. package/dist/components/Badge/shapes/Beavis.d.ts +11 -0
  78. package/dist/components/Badge/shapes/Beavis.d.ts.map +1 -0
  79. package/dist/components/Badge/shapes/Cloud.d.ts +11 -0
  80. package/dist/components/Badge/shapes/Cloud.d.ts.map +1 -0
  81. package/dist/components/Badge/shapes/Coffin.d.ts +12 -0
  82. package/dist/components/Badge/shapes/Coffin.d.ts.map +1 -0
  83. package/dist/components/Badge/shapes/Crest.d.ts +8 -0
  84. package/dist/components/Badge/shapes/Crest.d.ts.map +1 -0
  85. package/dist/components/Badge/shapes/Hexagon.d.ts +10 -0
  86. package/dist/components/Badge/shapes/Hexagon.d.ts.map +1 -0
  87. package/dist/components/Badge/shapes/House.d.ts +9 -0
  88. package/dist/components/Badge/shapes/House.d.ts.map +1 -0
  89. package/dist/components/Badge/shapes/Notched.d.ts +10 -0
  90. package/dist/components/Badge/shapes/Notched.d.ts.map +1 -0
  91. package/dist/components/Badge/shapes/Perforated.d.ts +8 -0
  92. package/dist/components/Badge/shapes/Perforated.d.ts.map +1 -0
  93. package/dist/components/Badge/shapes/Pill.d.ts +4 -0
  94. package/dist/components/Badge/shapes/Pill.d.ts.map +1 -0
  95. package/dist/components/Badge/shapes/Plain.d.ts +4 -0
  96. package/dist/components/Badge/shapes/Plain.d.ts.map +1 -0
  97. package/dist/components/Badge/shapes/Plaque.d.ts +12 -0
  98. package/dist/components/Badge/shapes/Plaque.d.ts.map +1 -0
  99. package/dist/components/Badge/shapes/Postage.d.ts +9 -0
  100. package/dist/components/Badge/shapes/Postage.d.ts.map +1 -0
  101. package/dist/components/Badge/shapes/Quatrefoil.d.ts +19 -0
  102. package/dist/components/Badge/shapes/Quatrefoil.d.ts.map +1 -0
  103. package/dist/components/Badge/shapes/Receipt.d.ts +9 -0
  104. package/dist/components/Badge/shapes/Receipt.d.ts.map +1 -0
  105. package/dist/components/Badge/shapes/Ribbon.d.ts +13 -0
  106. package/dist/components/Badge/shapes/Ribbon.d.ts.map +1 -0
  107. package/dist/components/Badge/shapes/Scalloped.d.ts +9 -0
  108. package/dist/components/Badge/shapes/Scalloped.d.ts.map +1 -0
  109. package/dist/components/Badge/shapes/Shield.d.ts +11 -0
  110. package/dist/components/Badge/shapes/Shield.d.ts.map +1 -0
  111. package/dist/components/Badge/shapes/Sparkler.d.ts +10 -0
  112. package/dist/components/Badge/shapes/Sparkler.d.ts.map +1 -0
  113. package/dist/components/Badge/shapes/Square.d.ts +8 -0
  114. package/dist/components/Badge/shapes/Square.d.ts.map +1 -0
  115. package/dist/components/Badge/shapes/Starburst.d.ts +11 -0
  116. package/dist/components/Badge/shapes/Starburst.d.ts.map +1 -0
  117. package/dist/components/Badge/shapes/Urn.d.ts +4 -0
  118. package/dist/components/Badge/shapes/Urn.d.ts.map +1 -0
  119. package/dist/components/Badge/shapes/Wood.d.ts +4 -0
  120. package/dist/components/Badge/shapes/Wood.d.ts.map +1 -0
  121. package/dist/components/Badge/shapes/index.d.ts +46 -0
  122. package/dist/components/Badge/shapes/index.d.ts.map +1 -0
  123. package/dist/components/Badge/types.d.ts +39 -0
  124. package/dist/components/Badge/types.d.ts.map +1 -0
  125. package/dist/components/Button/Button.d.ts +29 -0
  126. package/dist/components/Button/Button.d.ts.map +1 -0
  127. package/dist/components/Button/index.d.ts +3 -0
  128. package/dist/components/Button/index.d.ts.map +1 -0
  129. package/dist/components/Callout/Callout.d.ts +67 -0
  130. package/dist/components/Callout/Callout.d.ts.map +1 -0
  131. package/dist/components/Callout/index.d.ts +3 -0
  132. package/dist/components/Callout/index.d.ts.map +1 -0
  133. package/dist/components/Checkbox/Checkbox.d.ts +15 -0
  134. package/dist/components/Checkbox/Checkbox.d.ts.map +1 -0
  135. package/dist/components/Checkbox/index.d.ts +3 -0
  136. package/dist/components/Checkbox/index.d.ts.map +1 -0
  137. package/dist/components/ColorField/ColorField.d.ts +28 -0
  138. package/dist/components/ColorField/ColorField.d.ts.map +1 -0
  139. package/dist/components/ColorField/index.d.ts +2 -0
  140. package/dist/components/ColorField/index.d.ts.map +1 -0
  141. package/dist/components/ComboBox/ComboBox.d.ts +36 -0
  142. package/dist/components/ComboBox/ComboBox.d.ts.map +1 -0
  143. package/dist/components/ComboBox/index.d.ts +3 -0
  144. package/dist/components/ComboBox/index.d.ts.map +1 -0
  145. package/dist/components/CurveEditor/CurveEditor.d.ts +41 -0
  146. package/dist/components/CurveEditor/CurveEditor.d.ts.map +1 -0
  147. package/dist/components/CurveEditor/LayeredCurveEditor.d.ts +40 -0
  148. package/dist/components/CurveEditor/LayeredCurveEditor.d.ts.map +1 -0
  149. package/dist/components/CurveEditor/catmullRom.d.ts +35 -0
  150. package/dist/components/CurveEditor/catmullRom.d.ts.map +1 -0
  151. package/dist/components/CurveEditor/createFunctionLayer.d.ts +72 -0
  152. package/dist/components/CurveEditor/createFunctionLayer.d.ts.map +1 -0
  153. package/dist/components/CurveEditor/hitTest.d.ts +29 -0
  154. package/dist/components/CurveEditor/hitTest.d.ts.map +1 -0
  155. package/dist/components/CurveEditor/index.d.ts +7 -0
  156. package/dist/components/CurveEditor/index.d.ts.map +1 -0
  157. package/dist/components/CurveEditor/interpolation.d.ts +15 -0
  158. package/dist/components/CurveEditor/interpolation.d.ts.map +1 -0
  159. package/dist/components/CurveEditor/layerTypes.d.ts +103 -0
  160. package/dist/components/CurveEditor/layerTypes.d.ts.map +1 -0
  161. package/dist/components/CurveEditor/monotone.d.ts +25 -0
  162. package/dist/components/CurveEditor/monotone.d.ts.map +1 -0
  163. package/dist/components/CurveEditor/setCurveOp.d.ts +35 -0
  164. package/dist/components/CurveEditor/setCurveOp.d.ts.map +1 -0
  165. package/dist/components/DataGrid/DataGrid.d.ts +34 -0
  166. package/dist/components/DataGrid/DataGrid.d.ts.map +1 -0
  167. package/dist/components/DataGrid/index.d.ts +3 -0
  168. package/dist/components/DataGrid/index.d.ts.map +1 -0
  169. package/dist/components/Dialog/Dialog.d.ts +29 -0
  170. package/dist/components/Dialog/Dialog.d.ts.map +1 -0
  171. package/dist/components/Dialog/index.d.ts +3 -0
  172. package/dist/components/Dialog/index.d.ts.map +1 -0
  173. package/dist/components/Field/Field.d.ts +25 -0
  174. package/dist/components/Field/Field.d.ts.map +1 -0
  175. package/dist/components/Field/index.d.ts +3 -0
  176. package/dist/components/Field/index.d.ts.map +1 -0
  177. package/dist/components/Input/Input.d.ts +28 -0
  178. package/dist/components/Input/Input.d.ts.map +1 -0
  179. package/dist/components/Input/index.d.ts +3 -0
  180. package/dist/components/Input/index.d.ts.map +1 -0
  181. package/dist/components/Keycaps/Keycap.d.ts +34 -0
  182. package/dist/components/Keycaps/Keycap.d.ts.map +1 -0
  183. package/dist/components/Keycaps/Keycaps.d.ts +29 -0
  184. package/dist/components/Keycaps/Keycaps.d.ts.map +1 -0
  185. package/dist/components/Keycaps/index.d.ts +8 -0
  186. package/dist/components/Keycaps/index.d.ts.map +1 -0
  187. package/dist/components/Keycaps/keyGlyph.d.ts +7 -0
  188. package/dist/components/Keycaps/keyGlyph.d.ts.map +1 -0
  189. package/dist/components/Keycaps/keySpecsFromMods.d.ts +81 -0
  190. package/dist/components/Keycaps/keySpecsFromMods.d.ts.map +1 -0
  191. package/dist/components/NumberField/NumberField.d.ts +25 -0
  192. package/dist/components/NumberField/NumberField.d.ts.map +1 -0
  193. package/dist/components/NumberField/index.d.ts +3 -0
  194. package/dist/components/NumberField/index.d.ts.map +1 -0
  195. package/dist/components/OptionsBar/OptionsBar.d.ts +25 -0
  196. package/dist/components/OptionsBar/OptionsBar.d.ts.map +1 -0
  197. package/dist/components/OptionsBar/index.d.ts +3 -0
  198. package/dist/components/OptionsBar/index.d.ts.map +1 -0
  199. package/dist/components/Plot2D/Plot2D.d.ts +60 -0
  200. package/dist/components/Plot2D/Plot2D.d.ts.map +1 -0
  201. package/dist/components/Plot2D/geometry.d.ts +24 -0
  202. package/dist/components/Plot2D/geometry.d.ts.map +1 -0
  203. package/dist/components/Plot2D/index.d.ts +3 -0
  204. package/dist/components/Plot2D/index.d.ts.map +1 -0
  205. package/dist/components/PointPlotter/PointPlotter.d.ts +51 -0
  206. package/dist/components/PointPlotter/PointPlotter.d.ts.map +1 -0
  207. package/dist/components/PointPlotter/index.d.ts +2 -0
  208. package/dist/components/PointPlotter/index.d.ts.map +1 -0
  209. package/dist/components/Powerline/Powerline.d.ts +32 -0
  210. package/dist/components/Powerline/Powerline.d.ts.map +1 -0
  211. package/dist/components/Powerline/index.d.ts +5 -0
  212. package/dist/components/Powerline/index.d.ts.map +1 -0
  213. package/dist/components/Prefs/PrefsDialog.d.ts +21 -0
  214. package/dist/components/Prefs/PrefsDialog.d.ts.map +1 -0
  215. package/dist/components/Prefs/PrefsForm.d.ts +42 -0
  216. package/dist/components/Prefs/PrefsForm.d.ts.map +1 -0
  217. package/dist/components/Prefs/index.d.ts +4 -0
  218. package/dist/components/Prefs/index.d.ts.map +1 -0
  219. package/dist/components/Prefs/schema.d.ts +85 -0
  220. package/dist/components/Prefs/schema.d.ts.map +1 -0
  221. package/dist/components/RadioGroup/RadioGroup.d.ts +16 -0
  222. package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -0
  223. package/dist/components/RadioGroup/index.d.ts +3 -0
  224. package/dist/components/RadioGroup/index.d.ts.map +1 -0
  225. package/dist/components/RangeSlider/RangeSlider.d.ts +18 -0
  226. package/dist/components/RangeSlider/RangeSlider.d.ts.map +1 -0
  227. package/dist/components/RangeSlider/index.d.ts +3 -0
  228. package/dist/components/RangeSlider/index.d.ts.map +1 -0
  229. package/dist/components/Select/Select.d.ts +39 -0
  230. package/dist/components/Select/Select.d.ts.map +1 -0
  231. package/dist/components/Select/index.d.ts +3 -0
  232. package/dist/components/Select/index.d.ts.map +1 -0
  233. package/dist/components/SelectionPanel/SelectionPanel.d.ts +46 -0
  234. package/dist/components/SelectionPanel/SelectionPanel.d.ts.map +1 -0
  235. package/dist/components/SelectionPanel/index.d.ts +3 -0
  236. package/dist/components/SelectionPanel/index.d.ts.map +1 -0
  237. package/dist/components/SelectionPanel/model.d.ts +43 -0
  238. package/dist/components/SelectionPanel/model.d.ts.map +1 -0
  239. package/dist/components/Sidebar/Sidebar.d.ts +31 -0
  240. package/dist/components/Sidebar/Sidebar.d.ts.map +1 -0
  241. package/dist/components/Sidebar/index.d.ts +3 -0
  242. package/dist/components/Sidebar/index.d.ts.map +1 -0
  243. package/dist/components/SidebarPanel/SidebarPanel.d.ts +35 -0
  244. package/dist/components/SidebarPanel/SidebarPanel.d.ts.map +1 -0
  245. package/dist/components/SidebarPanel/index.d.ts +3 -0
  246. package/dist/components/SidebarPanel/index.d.ts.map +1 -0
  247. package/dist/components/Slider/Slider.d.ts +43 -0
  248. package/dist/components/Slider/Slider.d.ts.map +1 -0
  249. package/dist/components/Slider/index.d.ts +3 -0
  250. package/dist/components/Slider/index.d.ts.map +1 -0
  251. package/dist/components/Switch/Switch.d.ts +11 -0
  252. package/dist/components/Switch/Switch.d.ts.map +1 -0
  253. package/dist/components/Switch/index.d.ts +3 -0
  254. package/dist/components/Switch/index.d.ts.map +1 -0
  255. package/dist/components/Tabs/Tabs.d.ts +22 -0
  256. package/dist/components/Tabs/Tabs.d.ts.map +1 -0
  257. package/dist/components/Tabs/index.d.ts +3 -0
  258. package/dist/components/Tabs/index.d.ts.map +1 -0
  259. package/dist/components/Toast/Toast.d.ts +18 -0
  260. package/dist/components/Toast/Toast.d.ts.map +1 -0
  261. package/dist/components/Toast/index.d.ts +5 -0
  262. package/dist/components/Toast/index.d.ts.map +1 -0
  263. package/dist/components/Toast/queue.d.ts +56 -0
  264. package/dist/components/Toast/queue.d.ts.map +1 -0
  265. package/dist/components/ToggleBar/ToggleBar.d.ts +35 -0
  266. package/dist/components/ToggleBar/ToggleBar.d.ts.map +1 -0
  267. package/dist/components/ToggleBar/index.d.ts +3 -0
  268. package/dist/components/ToggleBar/index.d.ts.map +1 -0
  269. package/dist/components/ToolButton/ToolButton.d.ts +41 -0
  270. package/dist/components/ToolButton/ToolButton.d.ts.map +1 -0
  271. package/dist/components/ToolButton/index.d.ts +3 -0
  272. package/dist/components/ToolButton/index.d.ts.map +1 -0
  273. package/dist/components/ToolGroup/ToolGroup.d.ts +25 -0
  274. package/dist/components/ToolGroup/ToolGroup.d.ts.map +1 -0
  275. package/dist/components/ToolGroup/index.d.ts +3 -0
  276. package/dist/components/ToolGroup/index.d.ts.map +1 -0
  277. package/dist/components/ToolPalette/ToolPalette.d.ts +27 -0
  278. package/dist/components/ToolPalette/ToolPalette.d.ts.map +1 -0
  279. package/dist/components/ToolPalette/formatShortcut.d.ts +17 -0
  280. package/dist/components/ToolPalette/formatShortcut.d.ts.map +1 -0
  281. package/dist/components/ToolPalette/index.d.ts +4 -0
  282. package/dist/components/ToolPalette/index.d.ts.map +1 -0
  283. package/dist/components/Tooltip/Tooltip.d.ts +24 -0
  284. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -0
  285. package/dist/components/Tooltip/index.d.ts +3 -0
  286. package/dist/components/Tooltip/index.d.ts.map +1 -0
  287. package/dist/dlog.d.ts +33 -0
  288. package/dist/dlog.d.ts.map +1 -0
  289. package/dist/format/number.d.ts +13 -0
  290. package/dist/format/number.d.ts.map +1 -0
  291. package/dist/index.d.ts +44 -0
  292. package/dist/index.d.ts.map +1 -0
  293. package/dist/paintGradientTrack.d.ts +15 -0
  294. package/dist/paintGradientTrack.d.ts.map +1 -0
  295. package/dist/useReorderDragList.d.ts +35 -0
  296. package/dist/useReorderDragList.d.ts.map +1 -0
  297. package/package.json +2 -2
@@ -0,0 +1,41 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface ToolButtonProps {
3
+ /** Icon node (typically an SVG component). */
4
+ icon: ReactNode;
5
+ /** Human-readable label shown under the icon. */
6
+ label: string;
7
+ /** Optional shortcut hint (e.g. "V" or "⌘Z"). */
8
+ shortcut?: string;
9
+ /** Selected/active state — toggles the active visual treatment. */
10
+ active?: boolean;
11
+ /** Disabled state — passes through to the underlying button. */
12
+ disabled?: boolean;
13
+ /**
14
+ * When true, sets `aria-disabled="true"` on the button without using the
15
+ * native `disabled` attribute. This keeps the button focusable and reachable
16
+ * by keyboard (roving-tabindex still applies) while marking it as ineligible
17
+ * to screen readers. The caller is responsible for making `onClick` a no-op.
18
+ */
19
+ ariaDisabled?: boolean;
20
+ /**
21
+ * Whether this button is the currently tabbable member of its toolbar.
22
+ * Toolbars use roving tabindex: exactly one button has `tabIndex=0` at
23
+ * a time; the rest are `-1`. Caller manages which.
24
+ */
25
+ tabbable?: boolean;
26
+ /** Click handler. */
27
+ onClick(): void;
28
+ /**
29
+ * Tooltip content. Defaults to `label` (plus `shortcut` if provided).
30
+ */
31
+ title?: string;
32
+ /** Additional class for the root button. */
33
+ className?: string;
34
+ }
35
+ /**
36
+ * Generic icon-+-label toolbar button — building block for `ToolPalette`
37
+ * and similar surfaces. Headless about layout direction (parent group
38
+ * supplies flex direction via `ToolGroup`). Theme via `--wzl-*` tokens.
39
+ */
40
+ export declare function ToolButton(props: ToolButtonProps): import("react/jsx-runtime").JSX.Element;
41
+ //# sourceMappingURL=ToolButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolButton.d.ts","sourceRoot":"","sources":["../../../src/components/ToolButton/ToolButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,MAAM,WAAW,eAAe;IAC9B,8CAA8C;IAC9C,IAAI,EAAE,SAAS,CAAC;IAChB,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qBAAqB;IACrB,OAAO,IAAI,IAAI,CAAC;IAChB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,2CAwBhD"}
@@ -0,0 +1,3 @@
1
+ export { ToolButton } from './ToolButton';
2
+ export type { ToolButtonProps } from './ToolButton';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ToolButton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,25 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface ToolGroupProps {
3
+ children: ReactNode;
4
+ /**
5
+ * Lays children along an axis. `'vertical'` (default) stacks them in
6
+ * a column; `'horizontal'` lays them in a row. Independent of the
7
+ * parent toolbar's own orientation.
8
+ */
9
+ orientation?: 'vertical' | 'horizontal';
10
+ /**
11
+ * Optional `data-group` attribute — useful for parents that want to
12
+ * select the group from CSS or tests by name.
13
+ */
14
+ groupKey?: string;
15
+ /** Accessible name for the group (rendered as `aria-label`). */
16
+ ariaLabel?: string;
17
+ className?: string;
18
+ }
19
+ /**
20
+ * Generic toolbar group — a `role="group"` flex container that arranges
21
+ * `<ToolButton>`s (or any children) along a chosen axis. No visual chrome
22
+ * beyond layout; theming lives on the buttons.
23
+ */
24
+ export declare function ToolGroup(props: ToolGroupProps): import("react/jsx-runtime").JSX.Element;
25
+ //# sourceMappingURL=ToolGroup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolGroup.d.ts","sourceRoot":"","sources":["../../../src/components/ToolGroup/ToolGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;OAIG;IACH,WAAW,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACxC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CAS9C"}
@@ -0,0 +1,3 @@
1
+ export { ToolGroup } from './ToolGroup';
2
+ export type { ToolGroupProps } from './ToolGroup';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ToolGroup/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { ToolsApi } from '@weasel-js/core';
2
+ import { type ModeRegistry } from '@weasel-js/modes';
3
+ import { type ShortcutInput } from './formatShortcut';
4
+ export interface ToolPaletteProps {
5
+ tools: ToolsApi;
6
+ orientation?: 'vertical' | 'horizontal';
7
+ className?: string;
8
+ /** Derive the keyboard shortcut for a tool button from the action registry.
9
+ * Called with the tool's id; return `undefined` to suppress a chip. When
10
+ * omitted, falls back to `tool.keybinding` (legacy path). */
11
+ lookupShortcut?: (toolId: string) => ShortcutInput | undefined;
12
+ /**
13
+ * Optional mode registry. When provided, tools whose `capabilities` do not
14
+ * match the current mode are rendered greyed-out, aria-disabled, and their
15
+ * onClick is suppressed. When omitted, all tools are treated as eligible
16
+ * (preserves existing behaviour in consumers that haven't wired a registry).
17
+ */
18
+ modeRegistry?: ModeRegistry;
19
+ /**
20
+ * Presentation-group display order. Groups not listed keep their registry
21
+ * insertion order after the listed ones; `misc` always renders last.
22
+ * Defaults to `['select', 'shape', 'draw', 'type', 'view']`.
23
+ */
24
+ groupOrder?: readonly string[];
25
+ }
26
+ export declare function ToolPalette(props: ToolPaletteProps): import("react/jsx-runtime").JSX.Element;
27
+ //# sourceMappingURL=ToolPalette.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolPalette.d.ts","sourceRoot":"","sources":["../../../src/components/ToolPalette/ToolPalette.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAW,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAInE,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AA8CtE,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,QAAQ,CAAC;IAChB,WAAW,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;kEAE8D;IAC9D,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,aAAa,GAAG,SAAS,CAAC;IAC/D;;;;;OAKG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B;;;;OAIG;IACH,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAgGlD"}
@@ -0,0 +1,17 @@
1
+ export interface ShortcutInput {
2
+ key: string | readonly string[];
3
+ mod?: boolean;
4
+ alt?: boolean;
5
+ shift?: boolean | 'optional';
6
+ }
7
+ /** Format a shortcut as an array of display chips, one per key — modifier
8
+ * icons (⌘, ↑, ⌥) followed by the key glyph. UIs that want a boxed
9
+ * per-key look render each chip in its own element. `shift: 'optional'` is
10
+ * treated as falsy. */
11
+ export declare function formatShortcutParts(b: ShortcutInput | undefined): readonly string[] | undefined;
12
+ /** Format a shortcut as a single display string. Order: mod, shift, alt,
13
+ * key. Returns `undefined` for `undefined` input so callers can `??` a
14
+ * fallback. When `key` is an array, the first element is used. `shift: 'optional'`
15
+ * is treated as falsy. */
16
+ export declare function formatShortcut(b: ShortcutInput | undefined): string | undefined;
17
+ //# sourceMappingURL=formatShortcut.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatShortcut.d.ts","sourceRoot":"","sources":["../../../src/components/ToolPalette/formatShortcut.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IAChC,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;CAC9B;AAED;;;wBAGwB;AACxB,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,aAAa,GAAG,SAAS,GAAG,SAAS,MAAM,EAAE,GAAG,SAAS,CAS/F;AAED;;;2BAG2B;AAC3B,wBAAgB,cAAc,CAAC,CAAC,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAG/E"}
@@ -0,0 +1,4 @@
1
+ export { ToolPalette } from './ToolPalette';
2
+ export type { ToolPaletteProps } from './ToolPalette';
3
+ export { formatShortcut, formatShortcutParts } from './formatShortcut';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ToolPalette/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { ReactNode } from 'react';
2
+ import { type TooltipProps as RACTooltipProps, type TooltipTriggerComponentProps } from 'react-aria-components';
3
+ export type TooltipTriggerProps = TooltipTriggerComponentProps;
4
+ /**
5
+ * TooltipTrigger with kit defaults: ~600 ms open delay, instant close.
6
+ * Wrap a focusable trigger plus a `<Tooltip>`. Non-RAC triggers (plain
7
+ * `<button>` etc.) must be wrapped in `<Focusable>` from
8
+ * react-aria-components so hover/focus props reach the DOM node.
9
+ *
10
+ * Caveat: while a tooltip is open, react-aria captures the first Escape
11
+ * keydown (document-level, capture phase) to dismiss it — app-level
12
+ * Escape handlers (deselect, cancel gesture) see only the second press.
13
+ */
14
+ export declare function TooltipTrigger(props: TooltipTriggerProps): import("react/jsx-runtime").JSX.Element;
15
+ export type TooltipProps = Omit<RACTooltipProps, 'children' | 'className'> & {
16
+ children?: ReactNode;
17
+ className?: string;
18
+ };
19
+ /**
20
+ * Tooltip bubble with an arrow pointing at the trigger. Non-interactive
21
+ * content only (ARIA tooltip semantics). Use inside `<TooltipTrigger>`.
22
+ */
23
+ export declare function Tooltip(props: TooltipProps): import("react/jsx-runtime").JSX.Element;
24
+ //# sourceMappingURL=Tooltip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/Tooltip/Tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAIL,KAAK,YAAY,IAAI,eAAe,EACpC,KAAK,4BAA4B,EAClC,MAAM,uBAAuB,CAAC;AAG/B,MAAM,MAAM,mBAAmB,GAAG,4BAA4B,CAAC;AAE/D;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,2CAGxD;AAED,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,UAAU,GAAG,WAAW,CAAC,GAAG;IAC3E,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,2CAiB1C"}
@@ -0,0 +1,3 @@
1
+ export { Tooltip, TooltipTrigger } from './Tooltip';
2
+ export type { TooltipProps, TooltipTriggerProps } from './Tooltip';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Tooltip/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACpD,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC"}
package/dist/dlog.d.ts ADDED
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Namespaced, opt-in console tracing. Off by default; production builds
3
+ * may strip the calls entirely depending on the bundler.
4
+ *
5
+ * Enable in the browser:
6
+ *
7
+ * localStorage.setItem('weasel.debug', '*') // all namespaces
8
+ * localStorage.setItem('weasel.debug', 'curve-editor') // just curve editor
9
+ * localStorage.setItem('weasel.debug', 'curve-editor,layer-stack')
10
+ *
11
+ * Each component picks a stable namespace and calls `dlog(namespace, ...)`.
12
+ * Useful for tracing pointer/event flows that are hard to capture
13
+ * post-hoc (drag handlers, gesture sequences, selection mutations).
14
+ *
15
+ * The flag is read once and cached for the page session — reload to
16
+ * pick up changes. Cheap hot-path checks (one nullish-coalesce + Set
17
+ * lookup) so leaving calls in place is fine.
18
+ *
19
+ * Mirrors `src/debug/flag.ts` in the kit. Two impls live here because
20
+ * weasel-ui doesn't depend on the kit, but both read the same
21
+ * localStorage keys so behavior is uniform. See the kit copy for the
22
+ * canonical list of kit-level namespaces.
23
+ *
24
+ * Known weasel-ui namespaces:
25
+ * - plot2d — Plot2D mount / unmount
26
+ * - curve-editor — CurveEditor pointer flow
27
+ */
28
+ /** True when `namespace` (or `*`) is enabled. */
29
+ export declare function isDebugEnabled(namespace: string): boolean;
30
+ /** Conditional `console.debug` — no-op unless `namespace` (or `*`) is enabled.
31
+ * Each call is prefixed with `[namespace]` so the source is searchable. */
32
+ export declare function dlog(namespace: string, ...args: unknown[]): void;
33
+ //# sourceMappingURL=dlog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dlog.d.ts","sourceRoot":"","sources":["../src/dlog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAgCH,iDAAiD;AACjD,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAGzD;AAED;4EAC4E;AAC5E,wBAAgB,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAIhE"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Display-formatter for numbers. Use this anywhere a number is shown to
3
+ * a user. The whole point: negative values get prefixed with the real
4
+ * MINUS SIGN (U+2212) instead of the ASCII HYPHEN-MINUS (U+002D) that
5
+ * `toLocaleString` and template literals produce by default.
6
+ *
7
+ * U+2212 is the same visual width as `+` and reads as a sign rather
8
+ * than a hyphen — columns of signed numbers align cleanly and the
9
+ * glyph doesn't get confused with a bullet or list dash.
10
+ */
11
+ export declare const MINUS_SIGN = "\u2212";
12
+ export declare function formatNumber(value: number, options?: Intl.NumberFormatOptions): string;
13
+ //# sourceMappingURL=number.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number.d.ts","sourceRoot":"","sources":["../../src/format/number.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,WAAM,CAAC;AAE9B,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAKtF"}
@@ -0,0 +1,44 @@
1
+ export { dlog, isDebugEnabled } from './dlog';
2
+ export * from './components/ActionBar';
3
+ export * from './components/Badge';
4
+ export * from './components/Button';
5
+ export * from './components/DataGrid';
6
+ export * from './components/Keycaps';
7
+ export * from './components/Slider';
8
+ export * from './components/ToggleBar';
9
+ export * from './components/OptionsBar';
10
+ export * from './components/ActionsBar';
11
+ export * from './components/Powerline';
12
+ export * from './components/Prefs';
13
+ export * from './components/SelectionPanel';
14
+ export * from './components/Sidebar';
15
+ export * from './components/SidebarPanel';
16
+ export * from './components/ToolButton';
17
+ export * from './components/ToolGroup';
18
+ export * from './components/ToolPalette';
19
+ export * from './components/Field';
20
+ export * from './components/Input';
21
+ export * from './components/Checkbox';
22
+ export * from './components/Switch';
23
+ export * from './components/Tabs';
24
+ export * from './components/RadioGroup';
25
+ export * from './components/NumberField';
26
+ export * from './components/Select';
27
+ export * from './components/ComboBox';
28
+ export * from './components/RangeSlider';
29
+ export * from './components/Dialog';
30
+ export * from './components/Tooltip';
31
+ export * from './components/Callout';
32
+ export * from './components/Toast';
33
+ export * from './components/Plot2D';
34
+ export * from './components/CurveEditor';
35
+ export * from './components/PointPlotter';
36
+ export * from './components/ColorField';
37
+ export { paintGradientTrack } from './paintGradientTrack';
38
+ export type { GradientTrackOpts } from './paintGradientTrack';
39
+ export { oklchToHex, chromaAt } from './color/oklch';
40
+ export type { ChromaCurve, ChromaCurvePoint } from './color/oklch';
41
+ export { useReorderDragList } from './useReorderDragList';
42
+ export { formatNumber, MINUS_SIGN } from './format/number';
43
+ export type { LayerListItem, UseReorderDragListOptions, ReorderDragState, ReorderDragHandlers, } from './useReorderDragList';
44
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACrD,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,YAAY,EACV,aAAa,EACb,yBAAyB,EACzB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { TrackCtx } from './components/Slider';
3
+ export type GradientTrackOpts = {
4
+ gradient: (t: number) => string;
5
+ samples?: number;
6
+ activeRange?: [number, number];
7
+ hatch?: {
8
+ angleDeg?: number;
9
+ stripe?: number;
10
+ gap?: number;
11
+ dim?: number;
12
+ };
13
+ };
14
+ export declare function paintGradientTrack(opts: GradientTrackOpts): (ctx: TrackCtx) => ReactNode;
15
+ //# sourceMappingURL=paintGradientTrack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paintGradientTrack.d.ts","sourceRoot":"","sources":["../src/paintGradientTrack.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,OAAO,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,KAAK,CAAC,EAAE;QACN,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;CACH,CAAC;AAIF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,iBAAiB,GAAG,CAAC,GAAG,EAAE,QAAQ,KAAK,SAAS,CAuCxF"}
@@ -0,0 +1,35 @@
1
+ import type { ReactNode, PointerEvent as ReactPointerEvent, RefCallback } from 'react';
2
+ export interface LayerListItem {
3
+ id: string;
4
+ label: ReactNode;
5
+ /** Locked rows cannot be dragged, cannot be crossed by drops, and
6
+ * never combine with other rows in a multi-selection. */
7
+ locked?: boolean;
8
+ /** Optional color swatch rendered before the label. Any CSS color string. */
9
+ swatch?: string;
10
+ }
11
+ export interface UseReorderDragListOptions {
12
+ items: LayerListItem[];
13
+ selectedIds: string[];
14
+ onReorder(ids: string[], targetIndex: number): void;
15
+ /** Pointer-move distance (px) before pending drag engages. Default 4. */
16
+ threshold?: number;
17
+ }
18
+ export interface ReorderDragState {
19
+ draggedIds: string[] | null;
20
+ targetIndex: number | null;
21
+ }
22
+ export interface ReorderDragHandlers {
23
+ rowProps(id: string, index: number): {
24
+ onPointerDown(e: ReactPointerEvent): void;
25
+ };
26
+ containerProps: {
27
+ ref: RefCallback<HTMLElement>;
28
+ onPointerMove(e: ReactPointerEvent): void;
29
+ onPointerUp(e: ReactPointerEvent): void;
30
+ onPointerCancel(e: ReactPointerEvent): void;
31
+ };
32
+ state: ReorderDragState;
33
+ }
34
+ export declare function useReorderDragList(opts: UseReorderDragListOptions): ReorderDragHandlers;
35
+ //# sourceMappingURL=useReorderDragList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReorderDragList.d.ts","sourceRoot":"","sources":["../src/useReorderDragList.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,IAAI,iBAAiB,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEvF,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;IACjB;8DAC0D;IAC1D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpD,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG;QAAE,aAAa,CAAC,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAA;KAAE,CAAC;IACnF,cAAc,EAAE;QACd,GAAG,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;QAC9B,aAAa,CAAC,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;QAC1C,WAAW,CAAC,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;QACxC,eAAe,CAAC,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;KAC7C,CAAC;IACF,KAAK,EAAE,gBAAgB,CAAC;CACzB;AAeD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,yBAAyB,GAAG,mBAAmB,CAqIvF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@weasel-js/ui",
3
- "version": "0.5.0",
3
+ "version": "0.5.1",
4
4
  "description": "UI chrome primitives for weasel apps (properties panel, etc.)",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -19,7 +19,7 @@
19
19
  "./package.json": "./package.json"
20
20
  },
21
21
  "dependencies": {
22
- "@weasel-js/modes": "0.5.0",
22
+ "@weasel-js/modes": "0.5.1",
23
23
  "react-aria-components": "^1.5.0"
24
24
  },
25
25
  "peerDependencies": {