entangle-ui 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (346) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/esm/components/Icons/CheckIcon.js +27 -0
  3. package/dist/esm/components/Icons/CheckIcon.js.map +1 -0
  4. package/dist/esm/components/Icons/ChevronDownIcon.js +27 -0
  5. package/dist/esm/components/Icons/ChevronDownIcon.js.map +1 -0
  6. package/dist/esm/components/Icons/ChevronUpIcon.js +27 -0
  7. package/dist/esm/components/Icons/ChevronUpIcon.js.map +1 -0
  8. package/dist/esm/components/Icons/CircleIcon.js +27 -0
  9. package/dist/esm/components/Icons/CircleIcon.js.map +1 -0
  10. package/dist/esm/components/Icons/CloseIcon.js +27 -0
  11. package/dist/esm/components/Icons/CloseIcon.js.map +1 -0
  12. package/dist/esm/components/Icons/EyeDropperIcon.js +28 -0
  13. package/dist/esm/components/Icons/EyeDropperIcon.js.map +1 -0
  14. package/dist/esm/components/Icons/TangentAlignedIcon.js +9 -0
  15. package/dist/esm/components/Icons/TangentAlignedIcon.js.map +1 -0
  16. package/dist/esm/components/Icons/TangentAutoIcon.js +9 -0
  17. package/dist/esm/components/Icons/TangentAutoIcon.js.map +1 -0
  18. package/dist/esm/components/Icons/TangentFreeIcon.js +9 -0
  19. package/dist/esm/components/Icons/TangentFreeIcon.js.map +1 -0
  20. package/dist/esm/components/Icons/TangentLinearIcon.js +9 -0
  21. package/dist/esm/components/Icons/TangentLinearIcon.js.map +1 -0
  22. package/dist/esm/components/Icons/TangentMirroredIcon.js +9 -0
  23. package/dist/esm/components/Icons/TangentMirroredIcon.js.map +1 -0
  24. package/dist/esm/components/Icons/TangentStepIcon.js +9 -0
  25. package/dist/esm/components/Icons/TangentStepIcon.js.map +1 -0
  26. package/dist/esm/components/controls/ColorPicker/AlphaSlider.js +92 -0
  27. package/dist/esm/components/controls/ColorPicker/AlphaSlider.js.map +1 -0
  28. package/dist/esm/components/controls/ColorPicker/ColorArea.js +93 -0
  29. package/dist/esm/components/controls/ColorPicker/ColorArea.js.map +1 -0
  30. package/dist/esm/components/controls/ColorPicker/ColorInputs.js +129 -0
  31. package/dist/esm/components/controls/ColorPicker/ColorInputs.js.map +1 -0
  32. package/dist/esm/components/controls/ColorPicker/ColorPalette.js +89 -0
  33. package/dist/esm/components/controls/ColorPicker/ColorPalette.js.map +1 -0
  34. package/dist/esm/components/controls/ColorPicker/ColorPicker.js +75 -0
  35. package/dist/esm/components/controls/ColorPicker/ColorPicker.js.map +1 -0
  36. package/dist/esm/components/controls/ColorPicker/ColorPresets.js +57 -0
  37. package/dist/esm/components/controls/ColorPicker/ColorPresets.js.map +1 -0
  38. package/dist/esm/components/controls/ColorPicker/ColorSwatch.js +67 -0
  39. package/dist/esm/components/controls/ColorPicker/ColorSwatch.js.map +1 -0
  40. package/dist/esm/components/controls/ColorPicker/EyeDropper.js +85 -0
  41. package/dist/esm/components/controls/ColorPicker/EyeDropper.js.map +1 -0
  42. package/dist/esm/components/controls/ColorPicker/HueSlider.js +85 -0
  43. package/dist/esm/components/controls/ColorPicker/HueSlider.js.map +1 -0
  44. package/dist/esm/components/controls/ColorPicker/colorUtils.js +220 -0
  45. package/dist/esm/components/controls/ColorPicker/colorUtils.js.map +1 -0
  46. package/dist/esm/components/controls/ColorPicker/palettes/material.js +299 -0
  47. package/dist/esm/components/controls/ColorPicker/palettes/material.js.map +1 -0
  48. package/dist/esm/components/controls/ColorPicker/palettes/professional.js +479 -0
  49. package/dist/esm/components/controls/ColorPicker/palettes/professional.js.map +1 -0
  50. package/dist/esm/components/controls/ColorPicker/palettes/tailwind.js +366 -0
  51. package/dist/esm/components/controls/ColorPicker/palettes/tailwind.js.map +1 -0
  52. package/dist/esm/components/controls/ColorPicker/useColor.js +63 -0
  53. package/dist/esm/components/controls/ColorPicker/useColor.js.map +1 -0
  54. package/dist/esm/components/controls/CurveEditor/CurveCanvas.js +84 -0
  55. package/dist/esm/components/controls/CurveEditor/CurveCanvas.js.map +1 -0
  56. package/dist/esm/components/controls/CurveEditor/CurveEditor.js +134 -0
  57. package/dist/esm/components/controls/CurveEditor/CurveEditor.js.map +1 -0
  58. package/dist/esm/components/controls/CurveEditor/CurveToolbar.js +96 -0
  59. package/dist/esm/components/controls/CurveEditor/CurveToolbar.js.map +1 -0
  60. package/dist/esm/components/controls/CurveEditor/curvePresets.js +184 -0
  61. package/dist/esm/components/controls/CurveEditor/curvePresets.js.map +1 -0
  62. package/dist/esm/components/controls/CurveEditor/curveUtils.js +338 -0
  63. package/dist/esm/components/controls/CurveEditor/curveUtils.js.map +1 -0
  64. package/dist/esm/components/controls/CurveEditor/useCurveInteraction.js +569 -0
  65. package/dist/esm/components/controls/CurveEditor/useCurveInteraction.js.map +1 -0
  66. package/dist/esm/components/controls/CurveEditor/useCurveRenderer.js +400 -0
  67. package/dist/esm/components/controls/CurveEditor/useCurveRenderer.js.map +1 -0
  68. package/dist/esm/components/controls/NumberInput/NumberInput.js +377 -0
  69. package/dist/esm/components/controls/NumberInput/NumberInput.js.map +1 -0
  70. package/dist/esm/components/controls/NumberInput/useNumberInput.js +324 -0
  71. package/dist/esm/components/controls/NumberInput/useNumberInput.js.map +1 -0
  72. package/dist/esm/components/controls/Select/Select.js +533 -0
  73. package/dist/esm/components/controls/Select/Select.js.map +1 -0
  74. package/dist/esm/components/controls/Slider/Slider.js +413 -0
  75. package/dist/esm/components/controls/Slider/Slider.js.map +1 -0
  76. package/dist/esm/components/controls/TreeView/TreeNode.js +189 -0
  77. package/dist/esm/components/controls/TreeView/TreeNode.js.map +1 -0
  78. package/dist/esm/components/controls/TreeView/TreeView.js +213 -0
  79. package/dist/esm/components/controls/TreeView/TreeView.js.map +1 -0
  80. package/dist/esm/components/controls/TreeView/useTreeState.js +154 -0
  81. package/dist/esm/components/controls/TreeView/useTreeState.js.map +1 -0
  82. package/dist/esm/components/controls/VectorInput/VectorInput.js +202 -0
  83. package/dist/esm/components/controls/VectorInput/VectorInput.js.map +1 -0
  84. package/dist/esm/components/editor/PropertyInspector/PropertyGroup.js +42 -0
  85. package/dist/esm/components/editor/PropertyInspector/PropertyGroup.js.map +1 -0
  86. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.js +98 -0
  87. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.js.map +1 -0
  88. package/dist/esm/components/editor/PropertyInspector/PropertyRow.js +154 -0
  89. package/dist/esm/components/editor/PropertyInspector/PropertyRow.js.map +1 -0
  90. package/dist/esm/components/editor/PropertyInspector/PropertySection.js +136 -0
  91. package/dist/esm/components/editor/PropertyInspector/PropertySection.js.map +1 -0
  92. package/dist/esm/components/editor/PropertyInspector/usePropertyUndo.js +86 -0
  93. package/dist/esm/components/editor/PropertyInspector/usePropertyUndo.js.map +1 -0
  94. package/dist/esm/components/feedback/Dialog/Dialog.js +92 -0
  95. package/dist/esm/components/feedback/Dialog/Dialog.js.map +1 -0
  96. package/dist/esm/components/feedback/Dialog/Dialog.styled.js +80 -0
  97. package/dist/esm/components/feedback/Dialog/Dialog.styled.js.map +1 -0
  98. package/dist/esm/components/feedback/Dialog/DialogBody.js +33 -0
  99. package/dist/esm/components/feedback/Dialog/DialogBody.js.map +1 -0
  100. package/dist/esm/components/feedback/Dialog/DialogClose.js +26 -0
  101. package/dist/esm/components/feedback/Dialog/DialogClose.js.map +1 -0
  102. package/dist/esm/components/feedback/Dialog/DialogFooter.js +43 -0
  103. package/dist/esm/components/feedback/Dialog/DialogFooter.js.map +1 -0
  104. package/dist/esm/components/feedback/Dialog/DialogHeader.js +84 -0
  105. package/dist/esm/components/feedback/Dialog/DialogHeader.js.map +1 -0
  106. package/dist/esm/components/feedback/Dialog/useDialogAnimation.js +70 -0
  107. package/dist/esm/components/feedback/Dialog/useDialogAnimation.js.map +1 -0
  108. package/dist/esm/components/feedback/Dialog/useFocusTrap.js +55 -0
  109. package/dist/esm/components/feedback/Dialog/useFocusTrap.js.map +1 -0
  110. package/dist/esm/components/feedback/Toast/ToastContainer.js +34 -0
  111. package/dist/esm/components/feedback/Toast/ToastContainer.js.map +1 -0
  112. package/dist/esm/components/feedback/Toast/ToastItem.js +214 -0
  113. package/dist/esm/components/feedback/Toast/ToastItem.js.map +1 -0
  114. package/dist/esm/components/feedback/Toast/ToastProvider.js +47 -0
  115. package/dist/esm/components/feedback/Toast/ToastProvider.js.map +1 -0
  116. package/dist/esm/components/feedback/Toast/useToast.js +60 -0
  117. package/dist/esm/components/feedback/Toast/useToast.js.map +1 -0
  118. package/dist/esm/components/form/FormHelperText.js +38 -0
  119. package/dist/esm/components/form/FormHelperText.js.map +1 -0
  120. package/dist/esm/components/form/FormLabel.js +43 -0
  121. package/dist/esm/components/form/FormLabel.js.map +1 -0
  122. package/dist/esm/components/form/InputWrapper.js +100 -0
  123. package/dist/esm/components/form/InputWrapper.js.map +1 -0
  124. package/dist/esm/components/layout/Accordion/Accordion.js +103 -0
  125. package/dist/esm/components/layout/Accordion/Accordion.js.map +1 -0
  126. package/dist/esm/components/layout/Accordion/AccordionContent.js +37 -0
  127. package/dist/esm/components/layout/Accordion/AccordionContent.js.map +1 -0
  128. package/dist/esm/components/layout/Accordion/AccordionItem.js +24 -0
  129. package/dist/esm/components/layout/Accordion/AccordionItem.js.map +1 -0
  130. package/dist/esm/components/layout/Accordion/AccordionTrigger.js +123 -0
  131. package/dist/esm/components/layout/Accordion/AccordionTrigger.js.map +1 -0
  132. package/dist/esm/components/layout/Flex/Flex.js +149 -0
  133. package/dist/esm/components/layout/Flex/Flex.js.map +1 -0
  134. package/dist/esm/components/layout/Grid/Grid.js +118 -0
  135. package/dist/esm/components/layout/Grid/Grid.js.map +1 -0
  136. package/dist/esm/components/layout/PanelSurface/PanelSurface.js +106 -0
  137. package/dist/esm/components/layout/PanelSurface/PanelSurface.js.map +1 -0
  138. package/dist/esm/components/layout/ScrollArea/ScrollArea.js +362 -0
  139. package/dist/esm/components/layout/ScrollArea/ScrollArea.js.map +1 -0
  140. package/dist/esm/components/layout/Spacer/Spacer.js +78 -0
  141. package/dist/esm/components/layout/Spacer/Spacer.js.map +1 -0
  142. package/dist/esm/components/layout/SplitPane/SplitPane.js +581 -0
  143. package/dist/esm/components/layout/SplitPane/SplitPane.js.map +1 -0
  144. package/dist/esm/components/layout/SplitPane/SplitPanePanel.js +29 -0
  145. package/dist/esm/components/layout/SplitPane/SplitPanePanel.js.map +1 -0
  146. package/dist/esm/components/layout/Stack/Stack.js +138 -0
  147. package/dist/esm/components/layout/Stack/Stack.js.map +1 -0
  148. package/dist/esm/components/navigation/ContextMenu/ContextMenu.js +45 -0
  149. package/dist/esm/components/navigation/ContextMenu/ContextMenu.js.map +1 -0
  150. package/dist/esm/components/navigation/ContextMenu/useContextMenuTarget.js +52 -0
  151. package/dist/esm/components/navigation/ContextMenu/useContextMenuTarget.js.map +1 -0
  152. package/dist/esm/components/navigation/Menu/Menu.helpers.js +52 -0
  153. package/dist/esm/components/navigation/Menu/Menu.helpers.js.map +1 -0
  154. package/dist/esm/components/navigation/Menu/Menu.js +80 -0
  155. package/dist/esm/components/navigation/Menu/Menu.js.map +1 -0
  156. package/dist/esm/components/navigation/Menu/Menu.styled.js +83 -0
  157. package/dist/esm/components/navigation/Menu/Menu.styled.js.map +1 -0
  158. package/dist/esm/components/navigation/Menu/useMenu.js +87 -0
  159. package/dist/esm/components/navigation/Menu/useMenu.js.map +1 -0
  160. package/dist/esm/components/navigation/Tabs/Tab.js +222 -0
  161. package/dist/esm/components/navigation/Tabs/Tab.js.map +1 -0
  162. package/dist/esm/components/navigation/Tabs/TabList.js +115 -0
  163. package/dist/esm/components/navigation/Tabs/TabList.js.map +1 -0
  164. package/dist/esm/components/navigation/Tabs/TabPanel.js +32 -0
  165. package/dist/esm/components/navigation/Tabs/TabPanel.js.map +1 -0
  166. package/dist/esm/components/navigation/Tabs/Tabs.js +77 -0
  167. package/dist/esm/components/navigation/Tabs/Tabs.js.map +1 -0
  168. package/dist/esm/components/primitives/BaseButton/BaseButton.js +17 -0
  169. package/dist/esm/components/primitives/BaseButton/BaseButton.js.map +1 -0
  170. package/dist/esm/components/primitives/Button/Button.js +183 -0
  171. package/dist/esm/components/primitives/Button/Button.js.map +1 -0
  172. package/dist/esm/components/primitives/Checkbox/Checkbox.js +205 -0
  173. package/dist/esm/components/primitives/Checkbox/Checkbox.js.map +1 -0
  174. package/dist/esm/components/primitives/Checkbox/CheckboxGroup.js +71 -0
  175. package/dist/esm/components/primitives/Checkbox/CheckboxGroup.js.map +1 -0
  176. package/dist/esm/components/primitives/Collapsible/Collapsible.js +116 -0
  177. package/dist/esm/components/primitives/Collapsible/Collapsible.js.map +1 -0
  178. package/dist/esm/components/primitives/Icon/Icon.js +63 -0
  179. package/dist/esm/components/primitives/Icon/Icon.js.map +1 -0
  180. package/dist/esm/components/primitives/IconButton/IconButton.js +222 -0
  181. package/dist/esm/components/primitives/IconButton/IconButton.js.map +1 -0
  182. package/dist/esm/components/primitives/Input/Input.js +133 -0
  183. package/dist/esm/components/primitives/Input/Input.js.map +1 -0
  184. package/dist/esm/components/primitives/Paper/Paper.js +146 -0
  185. package/dist/esm/components/primitives/Paper/Paper.js.map +1 -0
  186. package/dist/esm/components/primitives/Popover/Popover.js +121 -0
  187. package/dist/esm/components/primitives/Popover/Popover.js.map +1 -0
  188. package/dist/esm/components/primitives/Popover/PopoverClose.js +50 -0
  189. package/dist/esm/components/primitives/Popover/PopoverClose.js.map +1 -0
  190. package/dist/esm/components/primitives/Popover/PopoverContent.js +102 -0
  191. package/dist/esm/components/primitives/Popover/PopoverContent.js.map +1 -0
  192. package/dist/esm/components/primitives/Popover/PopoverTrigger.js +37 -0
  193. package/dist/esm/components/primitives/Popover/PopoverTrigger.js.map +1 -0
  194. package/dist/esm/components/primitives/Switch/Switch.js +170 -0
  195. package/dist/esm/components/primitives/Switch/Switch.js.map +1 -0
  196. package/dist/esm/components/primitives/Text/Text.js +166 -0
  197. package/dist/esm/components/primitives/Text/Text.js.map +1 -0
  198. package/dist/esm/components/primitives/Tooltip/Arrow.js +52 -0
  199. package/dist/esm/components/primitives/Tooltip/Arrow.js.map +1 -0
  200. package/dist/esm/components/primitives/Tooltip/Tooltip.js +219 -0
  201. package/dist/esm/components/primitives/Tooltip/Tooltip.js.map +1 -0
  202. package/dist/esm/components/primitives/Tooltip/utils.js +66 -0
  203. package/dist/esm/components/primitives/Tooltip/utils.js.map +1 -0
  204. package/dist/esm/components/shell/AppShell/AppShell.js +157 -0
  205. package/dist/esm/components/shell/AppShell/AppShell.js.map +1 -0
  206. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.js +236 -0
  207. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.js.map +1 -0
  208. package/dist/esm/components/shell/MenuBar/MenuBar.js +340 -0
  209. package/dist/esm/components/shell/MenuBar/MenuBar.js.map +1 -0
  210. package/dist/esm/components/shell/StatusBar/StatusBar.js +134 -0
  211. package/dist/esm/components/shell/StatusBar/StatusBar.js.map +1 -0
  212. package/dist/esm/components/shell/Toolbar/Toolbar.js +185 -0
  213. package/dist/esm/components/shell/Toolbar/Toolbar.js.map +1 -0
  214. package/dist/esm/context/KeyboardContext.js +14 -0
  215. package/dist/esm/context/KeyboardContext.js.map +1 -0
  216. package/dist/esm/index.js +78 -0
  217. package/dist/esm/index.js.map +1 -0
  218. package/dist/esm/palettes.js +4 -0
  219. package/dist/esm/palettes.js.map +1 -0
  220. package/dist/esm/theme/ThemeProvider.js +12 -0
  221. package/dist/esm/theme/ThemeProvider.js.map +1 -0
  222. package/dist/esm/theme/createTheme.js +10 -0
  223. package/dist/esm/theme/createTheme.js.map +1 -0
  224. package/dist/esm/theme/tokens.js +144 -0
  225. package/dist/esm/theme/tokens.js.map +1 -0
  226. package/dist/esm/utils/cn.js +6 -0
  227. package/dist/esm/utils/cn.js.map +1 -0
  228. package/dist/esm/utils/mathExpression.js +275 -0
  229. package/dist/esm/utils/mathExpression.js.map +1 -0
  230. package/dist/esm/utils/mathUtils.js +18 -0
  231. package/dist/esm/utils/mathUtils.js.map +1 -0
  232. package/dist/esm/utils/objects.js +22 -0
  233. package/dist/esm/utils/objects.js.map +1 -0
  234. package/dist/esm/utils/styledUtils.js +81 -0
  235. package/dist/esm/utils/styledUtils.js.map +1 -0
  236. package/dist/types/components/controls/ColorPicker/ColorPalette.d.ts +16 -0
  237. package/dist/types/components/controls/ColorPicker/ColorPicker.d.ts +6 -0
  238. package/dist/types/components/controls/ColorPicker/ColorPicker.types.d.ts +120 -0
  239. package/dist/types/components/controls/ColorPicker/ColorSwatch.d.ts +6 -0
  240. package/dist/types/components/controls/ColorPicker/EyeDropper.d.ts +28 -0
  241. package/dist/types/components/controls/ColorPicker/colorUtils.d.ts +3 -0
  242. package/dist/types/components/controls/ColorPicker/palettes/material.d.ts +24 -0
  243. package/dist/types/components/controls/ColorPicker/palettes/professional.d.ts +19 -0
  244. package/dist/types/components/controls/ColorPicker/palettes/tailwind.d.ts +12 -0
  245. package/dist/types/components/controls/CurveEditor/CurveEditor.d.ts +6 -0
  246. package/dist/types/components/controls/CurveEditor/CurveEditor.types.d.ts +297 -0
  247. package/dist/types/components/controls/CurveEditor/curvePresets.d.ts +5 -0
  248. package/dist/types/components/controls/CurveEditor/curveUtils.d.ts +28 -0
  249. package/dist/types/components/controls/NumberInput/NumberInput.d.ts +150 -0
  250. package/dist/types/components/controls/NumberInput/useNumberInput.d.ts +65 -0
  251. package/dist/types/components/controls/Select/Select.d.ts +29 -0
  252. package/dist/types/components/controls/Select/Select.types.d.ts +131 -0
  253. package/dist/types/components/controls/Slider/Slider.d.ts +178 -0
  254. package/dist/types/components/controls/TreeView/TreeView.d.ts +27 -0
  255. package/dist/types/components/controls/TreeView/TreeView.types.d.ts +135 -0
  256. package/dist/types/components/controls/VectorInput/VectorInput.d.ts +26 -0
  257. package/dist/types/components/controls/VectorInput/VectorInput.types.d.ts +158 -0
  258. package/dist/types/components/editor/PropertyInspector/PropertyGroup.d.ts +6 -0
  259. package/dist/types/components/editor/PropertyInspector/PropertyInspector.types.d.ts +238 -0
  260. package/dist/types/components/editor/PropertyInspector/PropertyPanel.d.ts +6 -0
  261. package/dist/types/components/editor/PropertyInspector/PropertyRow.d.ts +6 -0
  262. package/dist/types/components/editor/PropertyInspector/PropertySection.d.ts +6 -0
  263. package/dist/types/components/editor/PropertyInspector/usePropertyUndo.d.ts +9 -0
  264. package/dist/types/components/feedback/Dialog/Dialog.d.ts +25 -0
  265. package/dist/types/components/feedback/Dialog/Dialog.types.d.ts +55 -0
  266. package/dist/types/components/feedback/Dialog/DialogBody.d.ts +16 -0
  267. package/dist/types/components/feedback/Dialog/DialogClose.d.ts +21 -0
  268. package/dist/types/components/feedback/Dialog/DialogFooter.d.ts +17 -0
  269. package/dist/types/components/feedback/Dialog/DialogHeader.d.ts +17 -0
  270. package/dist/types/components/feedback/Toast/Toast.types.d.ts +39 -0
  271. package/dist/types/components/feedback/Toast/ToastProvider.d.ts +19 -0
  272. package/dist/types/components/feedback/Toast/useToast.d.ts +22 -0
  273. package/dist/types/components/form/FormHelperText.d.ts +321 -0
  274. package/dist/types/components/form/FormLabel.d.ts +331 -0
  275. package/dist/types/components/form/InputWrapper.d.ts +346 -0
  276. package/dist/types/components/layout/Accordion/Accordion.d.ts +23 -0
  277. package/dist/types/components/layout/Accordion/Accordion.types.d.ts +109 -0
  278. package/dist/types/components/layout/Accordion/AccordionContent.d.ts +6 -0
  279. package/dist/types/components/layout/Accordion/AccordionItem.d.ts +6 -0
  280. package/dist/types/components/layout/Accordion/AccordionTrigger.d.ts +6 -0
  281. package/dist/types/components/layout/Flex/Flex.d.ts +215 -0
  282. package/dist/types/components/layout/Grid/Grid.d.ts +113 -0
  283. package/dist/types/components/layout/PanelSurface/PanelSurface.d.ts +1153 -0
  284. package/dist/types/components/layout/PanelSurface/PanelSurface.types.d.ts +64 -0
  285. package/dist/types/components/layout/ScrollArea/ScrollArea.d.ts +6 -0
  286. package/dist/types/components/layout/ScrollArea/ScrollArea.types.d.ts +93 -0
  287. package/dist/types/components/layout/Spacer/Spacer.d.ts +329 -0
  288. package/dist/types/components/layout/SplitPane/SplitPane.d.ts +21 -0
  289. package/dist/types/components/layout/SplitPane/SplitPane.types.d.ts +87 -0
  290. package/dist/types/components/layout/SplitPane/SplitPanePanel.d.ts +20 -0
  291. package/dist/types/components/layout/Stack/Stack.d.ts +166 -0
  292. package/dist/types/components/navigation/ContextMenu/ContextMenu.d.ts +6 -0
  293. package/dist/types/components/navigation/ContextMenu/ContextMenu.types.d.ts +74 -0
  294. package/dist/types/components/navigation/ContextMenu/useContextMenuTarget.d.ts +5 -0
  295. package/dist/types/components/navigation/Menu/Menu.d.ts +42 -0
  296. package/dist/types/components/navigation/Menu/Menu.types.d.ts +94 -0
  297. package/dist/types/components/navigation/Menu/useMenu.d.ts +16 -0
  298. package/dist/types/components/navigation/Tabs/Tab.d.ts +6 -0
  299. package/dist/types/components/navigation/Tabs/TabList.d.ts +6 -0
  300. package/dist/types/components/navigation/Tabs/TabPanel.d.ts +6 -0
  301. package/dist/types/components/navigation/Tabs/Tabs.d.ts +23 -0
  302. package/dist/types/components/navigation/Tabs/Tabs.types.d.ts +117 -0
  303. package/dist/types/components/primitives/Button/Button.d.ts +392 -0
  304. package/dist/types/components/primitives/Checkbox/Checkbox.d.ts +20 -0
  305. package/dist/types/components/primitives/Checkbox/Checkbox.types.d.ts +156 -0
  306. package/dist/types/components/primitives/Checkbox/CheckboxGroup.d.ts +25 -0
  307. package/dist/types/components/primitives/Collapsible/Collapsible.d.ts +6 -0
  308. package/dist/types/components/primitives/Collapsible/Collapsible.types.d.ts +28 -0
  309. package/dist/types/components/primitives/Icon/Icon.d.ts +40 -0
  310. package/dist/types/components/primitives/IconButton/IconButton.d.ts +354 -0
  311. package/dist/types/components/primitives/Input/Input.d.ts +134 -0
  312. package/dist/types/components/primitives/Paper/Paper.d.ts +419 -0
  313. package/dist/types/components/primitives/Popover/Popover.d.ts +25 -0
  314. package/dist/types/components/primitives/Popover/Popover.types.d.ts +99 -0
  315. package/dist/types/components/primitives/Popover/PopoverClose.d.ts +6 -0
  316. package/dist/types/components/primitives/Popover/PopoverContent.d.ts +6 -0
  317. package/dist/types/components/primitives/Popover/PopoverTrigger.d.ts +10 -0
  318. package/dist/types/components/primitives/Switch/Switch.d.ts +78 -0
  319. package/dist/types/components/primitives/Text/Text.d.ts +442 -0
  320. package/dist/types/components/primitives/Tooltip/Tooltip.d.ts +175 -0
  321. package/dist/types/components/primitives/Tooltip/types.d.ts +82 -0
  322. package/dist/types/components/shell/AppShell/AppShell.d.ts +1437 -0
  323. package/dist/types/components/shell/AppShell/AppShell.types.d.ts +48 -0
  324. package/dist/types/components/shell/FloatingPanel/FloatingPanel.d.ts +7 -0
  325. package/dist/types/components/shell/FloatingPanel/FloatingPanel.types.d.ts +61 -0
  326. package/dist/types/components/shell/MenuBar/MenuBar.d.ts +1441 -0
  327. package/dist/types/components/shell/MenuBar/MenuBar.types.d.ts +48 -0
  328. package/dist/types/components/shell/StatusBar/StatusBar.d.ts +868 -0
  329. package/dist/types/components/shell/StatusBar/StatusBar.types.d.ts +40 -0
  330. package/dist/types/components/shell/Toolbar/Toolbar.d.ts +1728 -0
  331. package/dist/types/components/shell/Toolbar/Toolbar.types.d.ts +59 -0
  332. package/dist/types/index.d.ts +101 -0
  333. package/dist/types/palettes.d.ts +3 -0
  334. package/dist/types/theme/ThemeProvider.d.ts +11 -0
  335. package/dist/types/theme/createTheme.d.ts +6 -0
  336. package/dist/types/theme/tokens.d.ts +147 -0
  337. package/dist/types/theme/types.d.ts +7 -0
  338. package/dist/types/types/common.d.ts +24 -0
  339. package/dist/types/types/utilities.d.ts +72 -0
  340. package/dist/types/utils/cn.d.ts +3 -0
  341. package/package.json +23 -7
  342. package/dist/index.d.ts +0 -12
  343. package/dist/index.esm.js +0 -13962
  344. package/dist/index.esm.js.map +0 -1
  345. package/dist/index.js +0 -14048
  346. package/dist/index.js.map +0 -1
@@ -0,0 +1,238 @@
1
+ import React from 'react';
2
+ import { Prettify } from '../../../types/utilities.js';
3
+ import { BaseComponent, Size } from '../../../types/common.js';
4
+
5
+ type PropertyInspectorSize = Size;
6
+ interface PropertyPanelBaseProps extends BaseComponent {
7
+ /**
8
+ * Panel content — PropertySection, PropertyGroup, or any elements
9
+ */
10
+ children: React.ReactNode;
11
+ /**
12
+ * Content rendered in the fixed header area (above scrollable content)
13
+ */
14
+ header?: React.ReactNode;
15
+ /**
16
+ * Content rendered in the fixed footer area (below scrollable content)
17
+ */
18
+ footer?: React.ReactNode;
19
+ /**
20
+ * Size applied to all nested PropertySection and PropertyRow components.
21
+ * Individual components can override this.
22
+ * @default "md"
23
+ */
24
+ size?: PropertyInspectorSize;
25
+ /**
26
+ * Maximum height of the panel (enables scrolling via ScrollArea)
27
+ * @default "100%"
28
+ */
29
+ maxHeight?: number | string;
30
+ /**
31
+ * Whether to show a search/filter input in the header
32
+ * @default false
33
+ */
34
+ searchable?: boolean;
35
+ /**
36
+ * Placeholder for the search input
37
+ * @default "Search properties..."
38
+ */
39
+ searchPlaceholder?: string;
40
+ /**
41
+ * Callback when search query changes
42
+ */
43
+ onSearchChange?: (query: string) => void;
44
+ /**
45
+ * Top padding for the scrollable content area (in px).
46
+ * Use this to increase/decrease the space before the first property section.
47
+ * @default theme.spacing.sm
48
+ */
49
+ contentTopSpacing?: number;
50
+ /**
51
+ * Bottom padding for the scrollable content area (in px).
52
+ * Use this to increase/decrease the space after the last property section.
53
+ * @default theme.spacing.md
54
+ */
55
+ contentBottomSpacing?: number;
56
+ /**
57
+ * Text displayed when no sections/rows match the search
58
+ * @default "No matching properties"
59
+ */
60
+ emptySearchMessage?: string;
61
+ }
62
+ type PropertyPanelProps = Prettify<PropertyPanelBaseProps>;
63
+ interface PropertySectionBaseProps extends Omit<BaseComponent, 'onChange'> {
64
+ /**
65
+ * Section title displayed in the collapsible header
66
+ */
67
+ title: string;
68
+ /**
69
+ * Unique identifier for this section (used for expansion state).
70
+ * Defaults to title if not provided.
71
+ */
72
+ value?: string;
73
+ /**
74
+ * Icon displayed before the section title
75
+ */
76
+ icon?: React.ReactNode;
77
+ /**
78
+ * Action buttons rendered on the right side of the header.
79
+ * Clicking actions does NOT toggle the section.
80
+ */
81
+ actions?: React.ReactNode;
82
+ /**
83
+ * Whether this section is expanded (controlled)
84
+ */
85
+ expanded?: boolean;
86
+ /**
87
+ * Whether this section starts expanded (uncontrolled)
88
+ * @default true
89
+ */
90
+ defaultExpanded?: boolean;
91
+ /**
92
+ * Callback when expanded state changes
93
+ */
94
+ onExpandedChange?: (expanded: boolean) => void;
95
+ /**
96
+ * Whether to keep content mounted when collapsed
97
+ * @default false
98
+ */
99
+ keepMounted?: boolean;
100
+ /**
101
+ * Whether this section is disabled (not collapsible, dimmed)
102
+ * @default false
103
+ */
104
+ disabled?: boolean;
105
+ /**
106
+ * Size override for this section and its rows
107
+ */
108
+ size?: PropertyInspectorSize;
109
+ /**
110
+ * Section content — PropertyRow, PropertyGroup, or any elements
111
+ */
112
+ children: React.ReactNode;
113
+ /**
114
+ * Custom chevron indicator — pass `null` to hide
115
+ * @default built-in chevron icon
116
+ */
117
+ indicator?: React.ReactNode | null;
118
+ /**
119
+ * Right-click context menu handler on the section header
120
+ */
121
+ onContextMenu?: (event: React.MouseEvent) => void;
122
+ }
123
+ type PropertySectionProps = Prettify<PropertySectionBaseProps>;
124
+ interface PropertyRowBaseProps extends BaseComponent {
125
+ /**
126
+ * Property label text
127
+ */
128
+ label: string;
129
+ /**
130
+ * Tooltip text for the label (shown on hover)
131
+ */
132
+ tooltip?: string;
133
+ /**
134
+ * Control content — any form control or custom content.
135
+ * Displayed on the right side, fills remaining space.
136
+ */
137
+ children: React.ReactNode;
138
+ /**
139
+ * Whether the row spans full width (label above, control below)
140
+ * @default false
141
+ */
142
+ fullWidth?: boolean;
143
+ /**
144
+ * Label/value split ratio as percentages [label%, value%].
145
+ * @default [40, 60]
146
+ */
147
+ splitRatio?: [number, number];
148
+ /**
149
+ * Whether this property has been modified from its default value.
150
+ * Shows a visual indicator (dot or bold label).
151
+ * @default false
152
+ */
153
+ modified?: boolean;
154
+ /**
155
+ * Whether this row is disabled
156
+ * @default false
157
+ */
158
+ disabled?: boolean;
159
+ /**
160
+ * Whether this row is visible (controlled by search filtering)
161
+ * @default true
162
+ */
163
+ visible?: boolean;
164
+ /**
165
+ * Size override for this row
166
+ */
167
+ size?: PropertyInspectorSize;
168
+ /**
169
+ * Action button on the right edge of the row (e.g., reset to default).
170
+ * Appears on hover.
171
+ */
172
+ action?: React.ReactNode;
173
+ /**
174
+ * Callback when label is right-clicked (for context menu)
175
+ */
176
+ onLabelContextMenu?: (event: React.MouseEvent) => void;
177
+ /**
178
+ * Callback when reset action is triggered.
179
+ * If provided, a reset button automatically appears on hover.
180
+ */
181
+ onReset?: () => void;
182
+ }
183
+ type PropertyRowProps = Prettify<PropertyRowBaseProps>;
184
+ interface PropertyGroupBaseProps extends BaseComponent {
185
+ /**
186
+ * Optional group title (rendered as a small label divider)
187
+ */
188
+ title?: string;
189
+ /**
190
+ * Group content — PropertyRow elements
191
+ */
192
+ children: React.ReactNode;
193
+ /**
194
+ * Indent level for nested groups (number of indent steps)
195
+ * @default 0
196
+ */
197
+ indent?: number;
198
+ /**
199
+ * Whether all rows in this group are disabled
200
+ * @default false
201
+ */
202
+ disabled?: boolean;
203
+ }
204
+ type PropertyGroupProps = Prettify<PropertyGroupBaseProps>;
205
+ interface PropertyUndoEntry<T = unknown> {
206
+ /** Property path or identifier */
207
+ propertyId: string;
208
+ /** Value before the change */
209
+ previousValue: T;
210
+ /** Value after the change */
211
+ newValue: T;
212
+ /** Human-readable description */
213
+ label: string;
214
+ /** Timestamp */
215
+ timestamp: number;
216
+ }
217
+ interface UsePropertyUndoOptions {
218
+ /** Maximum undo stack size @default 50 */
219
+ maxHistory?: number;
220
+ }
221
+ interface UsePropertyUndoReturn<T = unknown> {
222
+ /** Wrap a value change to record it in the undo stack */
223
+ record: (entry: Omit<PropertyUndoEntry<T>, 'timestamp'>) => void;
224
+ /** Undo the last change — returns the entry that was undone, or null */
225
+ undo: () => PropertyUndoEntry<T> | null;
226
+ /** Redo the last undone change — returns the entry, or null */
227
+ redo: () => PropertyUndoEntry<T> | null;
228
+ /** Whether undo is available */
229
+ canUndo: boolean;
230
+ /** Whether redo is available */
231
+ canRedo: boolean;
232
+ /** Full undo history */
233
+ history: PropertyUndoEntry<T>[];
234
+ /** Clear all history */
235
+ clear: () => void;
236
+ }
237
+
238
+ export type { PropertyGroupBaseProps, PropertyGroupProps, PropertyInspectorSize, PropertyPanelBaseProps, PropertyPanelProps, PropertyRowBaseProps, PropertyRowProps, PropertySectionBaseProps, PropertySectionProps, PropertyUndoEntry, UsePropertyUndoOptions, UsePropertyUndoReturn };
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { PropertyPanelProps } from './PropertyInspector.types.js';
3
+
4
+ declare const PropertyPanel: React.FC<PropertyPanelProps>;
5
+
6
+ export { PropertyPanel };
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { PropertyRowProps } from './PropertyInspector.types.js';
3
+
4
+ declare const PropertyRow: React.FC<PropertyRowProps>;
5
+
6
+ export { PropertyRow };
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { PropertySectionProps } from './PropertyInspector.types.js';
3
+
4
+ declare const PropertySection: React.FC<PropertySectionProps>;
5
+
6
+ export { PropertySection };
@@ -0,0 +1,9 @@
1
+ import { UsePropertyUndoOptions, UsePropertyUndoReturn } from './PropertyInspector.types.js';
2
+
3
+ /**
4
+ * Lightweight undo/redo stack for property changes.
5
+ * Records entries with property identifiers and values for precise undo control.
6
+ */
7
+ declare function usePropertyUndo<T = unknown>(options?: UsePropertyUndoOptions): UsePropertyUndoReturn<T>;
8
+
9
+ export { usePropertyUndo };
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import { DialogProps } from './Dialog.types.js';
3
+
4
+ /**
5
+ * Dialog component for modal overlays in editor interfaces.
6
+ *
7
+ * Renders an accessible modal dialog with overlay, focus trap,
8
+ * and keyboard support. Compound component pattern: use with
9
+ * DialogHeader, DialogBody, DialogFooter, and DialogClose.
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * <Dialog open={isOpen} onClose={() => setIsOpen(false)} title="Confirm">
14
+ * <DialogHeader>Confirm Action</DialogHeader>
15
+ * <DialogBody>Are you sure?</DialogBody>
16
+ * <DialogFooter align="right">
17
+ * <Button onClick={() => setIsOpen(false)}>Cancel</Button>
18
+ * <Button variant="filled">Confirm</Button>
19
+ * </DialogFooter>
20
+ * </Dialog>
21
+ * ```
22
+ */
23
+ declare const Dialog: React.FC<DialogProps>;
24
+
25
+ export { Dialog };
@@ -0,0 +1,55 @@
1
+ import React from 'react';
2
+ import { Prettify } from '../../../types/utilities.js';
3
+ import { BaseComponent } from '../../../types/common.js';
4
+
5
+ type DialogSize = 'sm' | 'md' | 'lg' | 'xl' | 'fullscreen';
6
+ interface DialogBaseProps extends BaseComponent {
7
+ /** Whether the dialog is open */
8
+ open: boolean;
9
+ /** Callback fired when the dialog should close */
10
+ onClose: () => void;
11
+ /** Dialog width preset */
12
+ size?: DialogSize;
13
+ /** Dialog title — used for aria-labelledby */
14
+ title?: string;
15
+ /** Dialog description — used for aria-describedby */
16
+ description?: string;
17
+ /** Whether clicking the overlay closes the dialog */
18
+ closeOnOverlayClick?: boolean;
19
+ /** Whether pressing Escape closes the dialog */
20
+ closeOnEscape?: boolean;
21
+ /** Whether to show the overlay backdrop */
22
+ showOverlay?: boolean;
23
+ /** Whether to trap focus within the dialog */
24
+ trapFocus?: boolean;
25
+ /** Ref to the element that should receive initial focus */
26
+ initialFocusRef?: React.RefObject<HTMLElement>;
27
+ /** Whether to render the dialog in a portal (document.body) */
28
+ portal?: boolean;
29
+ /** Dialog content (use DialogHeader, DialogBody, DialogFooter) */
30
+ children: React.ReactNode;
31
+ }
32
+ type DialogProps = Prettify<DialogBaseProps>;
33
+ interface DialogHeaderBaseProps extends BaseComponent {
34
+ /** Header content (typically a title) */
35
+ children: React.ReactNode;
36
+ /** Whether to show the close button */
37
+ showClose?: boolean;
38
+ /** Optional description text below the title */
39
+ description?: string;
40
+ }
41
+ type DialogHeaderProps = Prettify<DialogHeaderBaseProps>;
42
+ interface DialogBodyBaseProps extends BaseComponent {
43
+ /** Body content */
44
+ children: React.ReactNode;
45
+ }
46
+ type DialogBodyProps = Prettify<DialogBodyBaseProps>;
47
+ interface DialogFooterBaseProps extends BaseComponent {
48
+ /** Footer content (typically action buttons) */
49
+ children: React.ReactNode;
50
+ /** Horizontal alignment of footer content */
51
+ align?: 'left' | 'center' | 'right' | 'space-between';
52
+ }
53
+ type DialogFooterProps = Prettify<DialogFooterBaseProps>;
54
+
55
+ export type { DialogBaseProps, DialogBodyBaseProps, DialogBodyProps, DialogFooterBaseProps, DialogFooterProps, DialogHeaderBaseProps, DialogHeaderProps, DialogProps, DialogSize };
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ import { DialogBodyProps } from './Dialog.types.js';
3
+
4
+ /**
5
+ * DialogBody renders the scrollable content area of a Dialog.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * <DialogBody>
10
+ * <p>Dialog content goes here.</p>
11
+ * </DialogBody>
12
+ * ```
13
+ */
14
+ declare const DialogBody: React.FC<DialogBodyProps>;
15
+
16
+ export { DialogBody };
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+
3
+ interface DialogCloseProps {
4
+ /** The element to wrap with close behavior */
5
+ children: React.ReactElement<{
6
+ onClick?: React.MouseEventHandler;
7
+ }>;
8
+ }
9
+ /**
10
+ * DialogClose wraps a child element and adds onClick to close the dialog.
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * <DialogClose>
15
+ * <Button>Cancel</Button>
16
+ * </DialogClose>
17
+ * ```
18
+ */
19
+ declare const DialogClose: React.FC<DialogCloseProps>;
20
+
21
+ export { DialogClose };
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import { DialogFooterProps } from './Dialog.types.js';
3
+
4
+ /**
5
+ * DialogFooter renders the action area at the bottom of a Dialog.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * <DialogFooter align="right">
10
+ * <Button onClick={onCancel}>Cancel</Button>
11
+ * <Button variant="filled" onClick={onConfirm}>Confirm</Button>
12
+ * </DialogFooter>
13
+ * ```
14
+ */
15
+ declare const DialogFooter: React.FC<DialogFooterProps>;
16
+
17
+ export { DialogFooter };
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import { DialogHeaderProps } from './Dialog.types.js';
3
+
4
+ /**
5
+ * DialogHeader renders the title, optional description, and close button
6
+ * for a Dialog.
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * <DialogHeader description="This cannot be undone">
11
+ * Delete Item
12
+ * </DialogHeader>
13
+ * ```
14
+ */
15
+ declare const DialogHeader: React.FC<DialogHeaderProps>;
16
+
17
+ export { DialogHeader };
@@ -0,0 +1,39 @@
1
+ import React from 'react';
2
+ import { Prettify } from '../../../types/utilities.js';
3
+
4
+ type ToastSeverity = 'info' | 'success' | 'warning' | 'error';
5
+ type ToastPosition = 'top-right' | 'top-left' | 'top-center' | 'bottom-right' | 'bottom-left' | 'bottom-center';
6
+ interface ToastData {
7
+ id?: string;
8
+ title?: string;
9
+ message: string;
10
+ severity?: ToastSeverity;
11
+ duration?: number;
12
+ closable?: boolean;
13
+ showProgress?: boolean;
14
+ icon?: React.ReactNode;
15
+ action?: {
16
+ label: string;
17
+ onClick: () => void;
18
+ };
19
+ }
20
+ interface ToastProviderBaseProps {
21
+ children: React.ReactNode;
22
+ position?: ToastPosition;
23
+ maxVisible?: number;
24
+ defaultDuration?: number;
25
+ gap?: number;
26
+ zIndex?: number;
27
+ }
28
+ type ToastProviderProps = Prettify<ToastProviderBaseProps>;
29
+ interface UseToastReturn {
30
+ toast: (data: ToastData) => string;
31
+ info: (message: string, options?: Partial<ToastData>) => string;
32
+ success: (message: string, options?: Partial<ToastData>) => string;
33
+ warning: (message: string, options?: Partial<ToastData>) => string;
34
+ error: (message: string, options?: Partial<ToastData>) => string;
35
+ dismiss: (id: string) => void;
36
+ dismissAll: () => void;
37
+ }
38
+
39
+ export type { ToastData, ToastPosition, ToastProviderBaseProps, ToastProviderProps, ToastSeverity, UseToastReturn };
@@ -0,0 +1,19 @@
1
+ import React from 'react';
2
+ import { ToastProviderProps } from './Toast.types.js';
3
+
4
+ /**
5
+ * ToastProvider manages toast notification state and renders them via portal.
6
+ *
7
+ * Wrap your application (or a section of it) with this provider, then use
8
+ * the `useToast()` hook to trigger notifications from any child component.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * <ToastProvider position="bottom-right" maxVisible={5}>
13
+ * <App />
14
+ * </ToastProvider>
15
+ * ```
16
+ */
17
+ declare const ToastProvider: React.FC<ToastProviderProps>;
18
+
19
+ export { ToastProvider };
@@ -0,0 +1,22 @@
1
+ import { UseToastReturn } from './Toast.types.js';
2
+
3
+ /**
4
+ * Hook to trigger toast notifications from any component
5
+ * inside a `<ToastProvider>`.
6
+ *
7
+ * @throws Error if used outside of a `<ToastProvider>`
8
+ *
9
+ * @example
10
+ * ```tsx
11
+ * const { toast, success, error, dismiss } = useToast();
12
+ *
13
+ * success('File saved successfully');
14
+ * error('Failed to export', { title: 'Export Error' });
15
+ *
16
+ * const id = toast({ message: 'Custom toast', severity: 'info' });
17
+ * dismiss(id);
18
+ * ```
19
+ */
20
+ declare function useToast(): UseToastReturn;
21
+
22
+ export { useToast };