entangle-ui 0.1.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 (347) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/README.md +129 -75
  3. package/dist/esm/components/Icons/CheckIcon.js +27 -0
  4. package/dist/esm/components/Icons/CheckIcon.js.map +1 -0
  5. package/dist/esm/components/Icons/ChevronDownIcon.js +27 -0
  6. package/dist/esm/components/Icons/ChevronDownIcon.js.map +1 -0
  7. package/dist/esm/components/Icons/ChevronUpIcon.js +27 -0
  8. package/dist/esm/components/Icons/ChevronUpIcon.js.map +1 -0
  9. package/dist/esm/components/Icons/CircleIcon.js +27 -0
  10. package/dist/esm/components/Icons/CircleIcon.js.map +1 -0
  11. package/dist/esm/components/Icons/CloseIcon.js +27 -0
  12. package/dist/esm/components/Icons/CloseIcon.js.map +1 -0
  13. package/dist/esm/components/Icons/EyeDropperIcon.js +28 -0
  14. package/dist/esm/components/Icons/EyeDropperIcon.js.map +1 -0
  15. package/dist/esm/components/Icons/TangentAlignedIcon.js +9 -0
  16. package/dist/esm/components/Icons/TangentAlignedIcon.js.map +1 -0
  17. package/dist/esm/components/Icons/TangentAutoIcon.js +9 -0
  18. package/dist/esm/components/Icons/TangentAutoIcon.js.map +1 -0
  19. package/dist/esm/components/Icons/TangentFreeIcon.js +9 -0
  20. package/dist/esm/components/Icons/TangentFreeIcon.js.map +1 -0
  21. package/dist/esm/components/Icons/TangentLinearIcon.js +9 -0
  22. package/dist/esm/components/Icons/TangentLinearIcon.js.map +1 -0
  23. package/dist/esm/components/Icons/TangentMirroredIcon.js +9 -0
  24. package/dist/esm/components/Icons/TangentMirroredIcon.js.map +1 -0
  25. package/dist/esm/components/Icons/TangentStepIcon.js +9 -0
  26. package/dist/esm/components/Icons/TangentStepIcon.js.map +1 -0
  27. package/dist/esm/components/controls/ColorPicker/AlphaSlider.js +92 -0
  28. package/dist/esm/components/controls/ColorPicker/AlphaSlider.js.map +1 -0
  29. package/dist/esm/components/controls/ColorPicker/ColorArea.js +93 -0
  30. package/dist/esm/components/controls/ColorPicker/ColorArea.js.map +1 -0
  31. package/dist/esm/components/controls/ColorPicker/ColorInputs.js +129 -0
  32. package/dist/esm/components/controls/ColorPicker/ColorInputs.js.map +1 -0
  33. package/dist/esm/components/controls/ColorPicker/ColorPalette.js +89 -0
  34. package/dist/esm/components/controls/ColorPicker/ColorPalette.js.map +1 -0
  35. package/dist/esm/components/controls/ColorPicker/ColorPicker.js +75 -0
  36. package/dist/esm/components/controls/ColorPicker/ColorPicker.js.map +1 -0
  37. package/dist/esm/components/controls/ColorPicker/ColorPresets.js +57 -0
  38. package/dist/esm/components/controls/ColorPicker/ColorPresets.js.map +1 -0
  39. package/dist/esm/components/controls/ColorPicker/ColorSwatch.js +67 -0
  40. package/dist/esm/components/controls/ColorPicker/ColorSwatch.js.map +1 -0
  41. package/dist/esm/components/controls/ColorPicker/EyeDropper.js +85 -0
  42. package/dist/esm/components/controls/ColorPicker/EyeDropper.js.map +1 -0
  43. package/dist/esm/components/controls/ColorPicker/HueSlider.js +85 -0
  44. package/dist/esm/components/controls/ColorPicker/HueSlider.js.map +1 -0
  45. package/dist/esm/components/controls/ColorPicker/colorUtils.js +220 -0
  46. package/dist/esm/components/controls/ColorPicker/colorUtils.js.map +1 -0
  47. package/dist/esm/components/controls/ColorPicker/palettes/material.js +299 -0
  48. package/dist/esm/components/controls/ColorPicker/palettes/material.js.map +1 -0
  49. package/dist/esm/components/controls/ColorPicker/palettes/professional.js +479 -0
  50. package/dist/esm/components/controls/ColorPicker/palettes/professional.js.map +1 -0
  51. package/dist/esm/components/controls/ColorPicker/palettes/tailwind.js +366 -0
  52. package/dist/esm/components/controls/ColorPicker/palettes/tailwind.js.map +1 -0
  53. package/dist/esm/components/controls/ColorPicker/useColor.js +63 -0
  54. package/dist/esm/components/controls/ColorPicker/useColor.js.map +1 -0
  55. package/dist/esm/components/controls/CurveEditor/CurveCanvas.js +84 -0
  56. package/dist/esm/components/controls/CurveEditor/CurveCanvas.js.map +1 -0
  57. package/dist/esm/components/controls/CurveEditor/CurveEditor.js +134 -0
  58. package/dist/esm/components/controls/CurveEditor/CurveEditor.js.map +1 -0
  59. package/dist/esm/components/controls/CurveEditor/CurveToolbar.js +96 -0
  60. package/dist/esm/components/controls/CurveEditor/CurveToolbar.js.map +1 -0
  61. package/dist/esm/components/controls/CurveEditor/curvePresets.js +184 -0
  62. package/dist/esm/components/controls/CurveEditor/curvePresets.js.map +1 -0
  63. package/dist/esm/components/controls/CurveEditor/curveUtils.js +338 -0
  64. package/dist/esm/components/controls/CurveEditor/curveUtils.js.map +1 -0
  65. package/dist/esm/components/controls/CurveEditor/useCurveInteraction.js +569 -0
  66. package/dist/esm/components/controls/CurveEditor/useCurveInteraction.js.map +1 -0
  67. package/dist/esm/components/controls/CurveEditor/useCurveRenderer.js +400 -0
  68. package/dist/esm/components/controls/CurveEditor/useCurveRenderer.js.map +1 -0
  69. package/dist/esm/components/controls/NumberInput/NumberInput.js +377 -0
  70. package/dist/esm/components/controls/NumberInput/NumberInput.js.map +1 -0
  71. package/dist/esm/components/controls/NumberInput/useNumberInput.js +324 -0
  72. package/dist/esm/components/controls/NumberInput/useNumberInput.js.map +1 -0
  73. package/dist/esm/components/controls/Select/Select.js +533 -0
  74. package/dist/esm/components/controls/Select/Select.js.map +1 -0
  75. package/dist/esm/components/controls/Slider/Slider.js +413 -0
  76. package/dist/esm/components/controls/Slider/Slider.js.map +1 -0
  77. package/dist/esm/components/controls/TreeView/TreeNode.js +189 -0
  78. package/dist/esm/components/controls/TreeView/TreeNode.js.map +1 -0
  79. package/dist/esm/components/controls/TreeView/TreeView.js +213 -0
  80. package/dist/esm/components/controls/TreeView/TreeView.js.map +1 -0
  81. package/dist/esm/components/controls/TreeView/useTreeState.js +154 -0
  82. package/dist/esm/components/controls/TreeView/useTreeState.js.map +1 -0
  83. package/dist/esm/components/controls/VectorInput/VectorInput.js +202 -0
  84. package/dist/esm/components/controls/VectorInput/VectorInput.js.map +1 -0
  85. package/dist/esm/components/editor/PropertyInspector/PropertyGroup.js +42 -0
  86. package/dist/esm/components/editor/PropertyInspector/PropertyGroup.js.map +1 -0
  87. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.js +98 -0
  88. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.js.map +1 -0
  89. package/dist/esm/components/editor/PropertyInspector/PropertyRow.js +154 -0
  90. package/dist/esm/components/editor/PropertyInspector/PropertyRow.js.map +1 -0
  91. package/dist/esm/components/editor/PropertyInspector/PropertySection.js +136 -0
  92. package/dist/esm/components/editor/PropertyInspector/PropertySection.js.map +1 -0
  93. package/dist/esm/components/editor/PropertyInspector/usePropertyUndo.js +86 -0
  94. package/dist/esm/components/editor/PropertyInspector/usePropertyUndo.js.map +1 -0
  95. package/dist/esm/components/feedback/Dialog/Dialog.js +92 -0
  96. package/dist/esm/components/feedback/Dialog/Dialog.js.map +1 -0
  97. package/dist/esm/components/feedback/Dialog/Dialog.styled.js +80 -0
  98. package/dist/esm/components/feedback/Dialog/Dialog.styled.js.map +1 -0
  99. package/dist/esm/components/feedback/Dialog/DialogBody.js +33 -0
  100. package/dist/esm/components/feedback/Dialog/DialogBody.js.map +1 -0
  101. package/dist/esm/components/feedback/Dialog/DialogClose.js +26 -0
  102. package/dist/esm/components/feedback/Dialog/DialogClose.js.map +1 -0
  103. package/dist/esm/components/feedback/Dialog/DialogFooter.js +43 -0
  104. package/dist/esm/components/feedback/Dialog/DialogFooter.js.map +1 -0
  105. package/dist/esm/components/feedback/Dialog/DialogHeader.js +84 -0
  106. package/dist/esm/components/feedback/Dialog/DialogHeader.js.map +1 -0
  107. package/dist/esm/components/feedback/Dialog/useDialogAnimation.js +70 -0
  108. package/dist/esm/components/feedback/Dialog/useDialogAnimation.js.map +1 -0
  109. package/dist/esm/components/feedback/Dialog/useFocusTrap.js +55 -0
  110. package/dist/esm/components/feedback/Dialog/useFocusTrap.js.map +1 -0
  111. package/dist/esm/components/feedback/Toast/ToastContainer.js +34 -0
  112. package/dist/esm/components/feedback/Toast/ToastContainer.js.map +1 -0
  113. package/dist/esm/components/feedback/Toast/ToastItem.js +214 -0
  114. package/dist/esm/components/feedback/Toast/ToastItem.js.map +1 -0
  115. package/dist/esm/components/feedback/Toast/ToastProvider.js +47 -0
  116. package/dist/esm/components/feedback/Toast/ToastProvider.js.map +1 -0
  117. package/dist/esm/components/feedback/Toast/useToast.js +60 -0
  118. package/dist/esm/components/feedback/Toast/useToast.js.map +1 -0
  119. package/dist/esm/components/form/FormHelperText.js +38 -0
  120. package/dist/esm/components/form/FormHelperText.js.map +1 -0
  121. package/dist/esm/components/form/FormLabel.js +43 -0
  122. package/dist/esm/components/form/FormLabel.js.map +1 -0
  123. package/dist/esm/components/form/InputWrapper.js +100 -0
  124. package/dist/esm/components/form/InputWrapper.js.map +1 -0
  125. package/dist/esm/components/layout/Accordion/Accordion.js +103 -0
  126. package/dist/esm/components/layout/Accordion/Accordion.js.map +1 -0
  127. package/dist/esm/components/layout/Accordion/AccordionContent.js +37 -0
  128. package/dist/esm/components/layout/Accordion/AccordionContent.js.map +1 -0
  129. package/dist/esm/components/layout/Accordion/AccordionItem.js +24 -0
  130. package/dist/esm/components/layout/Accordion/AccordionItem.js.map +1 -0
  131. package/dist/esm/components/layout/Accordion/AccordionTrigger.js +123 -0
  132. package/dist/esm/components/layout/Accordion/AccordionTrigger.js.map +1 -0
  133. package/dist/esm/components/layout/Flex/Flex.js +149 -0
  134. package/dist/esm/components/layout/Flex/Flex.js.map +1 -0
  135. package/dist/esm/components/layout/Grid/Grid.js +118 -0
  136. package/dist/esm/components/layout/Grid/Grid.js.map +1 -0
  137. package/dist/esm/components/layout/PanelSurface/PanelSurface.js +106 -0
  138. package/dist/esm/components/layout/PanelSurface/PanelSurface.js.map +1 -0
  139. package/dist/esm/components/layout/ScrollArea/ScrollArea.js +362 -0
  140. package/dist/esm/components/layout/ScrollArea/ScrollArea.js.map +1 -0
  141. package/dist/esm/components/layout/Spacer/Spacer.js +78 -0
  142. package/dist/esm/components/layout/Spacer/Spacer.js.map +1 -0
  143. package/dist/esm/components/layout/SplitPane/SplitPane.js +581 -0
  144. package/dist/esm/components/layout/SplitPane/SplitPane.js.map +1 -0
  145. package/dist/esm/components/layout/SplitPane/SplitPanePanel.js +29 -0
  146. package/dist/esm/components/layout/SplitPane/SplitPanePanel.js.map +1 -0
  147. package/dist/esm/components/layout/Stack/Stack.js +138 -0
  148. package/dist/esm/components/layout/Stack/Stack.js.map +1 -0
  149. package/dist/esm/components/navigation/ContextMenu/ContextMenu.js +45 -0
  150. package/dist/esm/components/navigation/ContextMenu/ContextMenu.js.map +1 -0
  151. package/dist/esm/components/navigation/ContextMenu/useContextMenuTarget.js +52 -0
  152. package/dist/esm/components/navigation/ContextMenu/useContextMenuTarget.js.map +1 -0
  153. package/dist/esm/components/navigation/Menu/Menu.helpers.js +52 -0
  154. package/dist/esm/components/navigation/Menu/Menu.helpers.js.map +1 -0
  155. package/dist/esm/components/navigation/Menu/Menu.js +80 -0
  156. package/dist/esm/components/navigation/Menu/Menu.js.map +1 -0
  157. package/dist/esm/components/navigation/Menu/Menu.styled.js +83 -0
  158. package/dist/esm/components/navigation/Menu/Menu.styled.js.map +1 -0
  159. package/dist/esm/components/navigation/Menu/useMenu.js +87 -0
  160. package/dist/esm/components/navigation/Menu/useMenu.js.map +1 -0
  161. package/dist/esm/components/navigation/Tabs/Tab.js +222 -0
  162. package/dist/esm/components/navigation/Tabs/Tab.js.map +1 -0
  163. package/dist/esm/components/navigation/Tabs/TabList.js +115 -0
  164. package/dist/esm/components/navigation/Tabs/TabList.js.map +1 -0
  165. package/dist/esm/components/navigation/Tabs/TabPanel.js +32 -0
  166. package/dist/esm/components/navigation/Tabs/TabPanel.js.map +1 -0
  167. package/dist/esm/components/navigation/Tabs/Tabs.js +77 -0
  168. package/dist/esm/components/navigation/Tabs/Tabs.js.map +1 -0
  169. package/dist/esm/components/primitives/BaseButton/BaseButton.js +17 -0
  170. package/dist/esm/components/primitives/BaseButton/BaseButton.js.map +1 -0
  171. package/dist/esm/components/primitives/Button/Button.js +183 -0
  172. package/dist/esm/components/primitives/Button/Button.js.map +1 -0
  173. package/dist/esm/components/primitives/Checkbox/Checkbox.js +205 -0
  174. package/dist/esm/components/primitives/Checkbox/Checkbox.js.map +1 -0
  175. package/dist/esm/components/primitives/Checkbox/CheckboxGroup.js +71 -0
  176. package/dist/esm/components/primitives/Checkbox/CheckboxGroup.js.map +1 -0
  177. package/dist/esm/components/primitives/Collapsible/Collapsible.js +116 -0
  178. package/dist/esm/components/primitives/Collapsible/Collapsible.js.map +1 -0
  179. package/dist/esm/components/primitives/Icon/Icon.js +63 -0
  180. package/dist/esm/components/primitives/Icon/Icon.js.map +1 -0
  181. package/dist/esm/components/primitives/IconButton/IconButton.js +222 -0
  182. package/dist/esm/components/primitives/IconButton/IconButton.js.map +1 -0
  183. package/dist/esm/components/primitives/Input/Input.js +133 -0
  184. package/dist/esm/components/primitives/Input/Input.js.map +1 -0
  185. package/dist/esm/components/primitives/Paper/Paper.js +146 -0
  186. package/dist/esm/components/primitives/Paper/Paper.js.map +1 -0
  187. package/dist/esm/components/primitives/Popover/Popover.js +121 -0
  188. package/dist/esm/components/primitives/Popover/Popover.js.map +1 -0
  189. package/dist/esm/components/primitives/Popover/PopoverClose.js +50 -0
  190. package/dist/esm/components/primitives/Popover/PopoverClose.js.map +1 -0
  191. package/dist/esm/components/primitives/Popover/PopoverContent.js +102 -0
  192. package/dist/esm/components/primitives/Popover/PopoverContent.js.map +1 -0
  193. package/dist/esm/components/primitives/Popover/PopoverTrigger.js +37 -0
  194. package/dist/esm/components/primitives/Popover/PopoverTrigger.js.map +1 -0
  195. package/dist/esm/components/primitives/Switch/Switch.js +170 -0
  196. package/dist/esm/components/primitives/Switch/Switch.js.map +1 -0
  197. package/dist/esm/components/primitives/Text/Text.js +166 -0
  198. package/dist/esm/components/primitives/Text/Text.js.map +1 -0
  199. package/dist/esm/components/primitives/Tooltip/Arrow.js +52 -0
  200. package/dist/esm/components/primitives/Tooltip/Arrow.js.map +1 -0
  201. package/dist/esm/components/primitives/Tooltip/Tooltip.js +219 -0
  202. package/dist/esm/components/primitives/Tooltip/Tooltip.js.map +1 -0
  203. package/dist/esm/components/primitives/Tooltip/utils.js +66 -0
  204. package/dist/esm/components/primitives/Tooltip/utils.js.map +1 -0
  205. package/dist/esm/components/shell/AppShell/AppShell.js +157 -0
  206. package/dist/esm/components/shell/AppShell/AppShell.js.map +1 -0
  207. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.js +236 -0
  208. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.js.map +1 -0
  209. package/dist/esm/components/shell/MenuBar/MenuBar.js +340 -0
  210. package/dist/esm/components/shell/MenuBar/MenuBar.js.map +1 -0
  211. package/dist/esm/components/shell/StatusBar/StatusBar.js +134 -0
  212. package/dist/esm/components/shell/StatusBar/StatusBar.js.map +1 -0
  213. package/dist/esm/components/shell/Toolbar/Toolbar.js +185 -0
  214. package/dist/esm/components/shell/Toolbar/Toolbar.js.map +1 -0
  215. package/dist/esm/context/KeyboardContext.js +14 -0
  216. package/dist/esm/context/KeyboardContext.js.map +1 -0
  217. package/dist/esm/index.js +78 -0
  218. package/dist/esm/index.js.map +1 -0
  219. package/dist/esm/palettes.js +4 -0
  220. package/dist/esm/palettes.js.map +1 -0
  221. package/dist/esm/theme/ThemeProvider.js +12 -0
  222. package/dist/esm/theme/ThemeProvider.js.map +1 -0
  223. package/dist/esm/theme/createTheme.js +10 -0
  224. package/dist/esm/theme/createTheme.js.map +1 -0
  225. package/dist/esm/theme/tokens.js +144 -0
  226. package/dist/esm/theme/tokens.js.map +1 -0
  227. package/dist/esm/utils/cn.js +6 -0
  228. package/dist/esm/utils/cn.js.map +1 -0
  229. package/dist/esm/utils/mathExpression.js +275 -0
  230. package/dist/esm/utils/mathExpression.js.map +1 -0
  231. package/dist/esm/utils/mathUtils.js +18 -0
  232. package/dist/esm/utils/mathUtils.js.map +1 -0
  233. package/dist/esm/utils/objects.js +22 -0
  234. package/dist/esm/utils/objects.js.map +1 -0
  235. package/dist/esm/utils/styledUtils.js +81 -0
  236. package/dist/esm/utils/styledUtils.js.map +1 -0
  237. package/dist/types/components/controls/ColorPicker/ColorPalette.d.ts +16 -0
  238. package/dist/types/components/controls/ColorPicker/ColorPicker.d.ts +6 -0
  239. package/dist/types/components/controls/ColorPicker/ColorPicker.types.d.ts +120 -0
  240. package/dist/types/components/controls/ColorPicker/ColorSwatch.d.ts +6 -0
  241. package/dist/types/components/controls/ColorPicker/EyeDropper.d.ts +28 -0
  242. package/dist/types/components/controls/ColorPicker/colorUtils.d.ts +3 -0
  243. package/dist/types/components/controls/ColorPicker/palettes/material.d.ts +24 -0
  244. package/dist/types/components/controls/ColorPicker/palettes/professional.d.ts +19 -0
  245. package/dist/types/components/controls/ColorPicker/palettes/tailwind.d.ts +12 -0
  246. package/dist/types/components/controls/CurveEditor/CurveEditor.d.ts +6 -0
  247. package/dist/types/components/controls/CurveEditor/CurveEditor.types.d.ts +297 -0
  248. package/dist/types/components/controls/CurveEditor/curvePresets.d.ts +5 -0
  249. package/dist/types/components/controls/CurveEditor/curveUtils.d.ts +28 -0
  250. package/dist/types/components/controls/NumberInput/NumberInput.d.ts +150 -0
  251. package/dist/types/components/controls/NumberInput/useNumberInput.d.ts +65 -0
  252. package/dist/types/components/controls/Select/Select.d.ts +29 -0
  253. package/dist/types/components/controls/Select/Select.types.d.ts +131 -0
  254. package/dist/types/components/controls/Slider/Slider.d.ts +178 -0
  255. package/dist/types/components/controls/TreeView/TreeView.d.ts +27 -0
  256. package/dist/types/components/controls/TreeView/TreeView.types.d.ts +135 -0
  257. package/dist/types/components/controls/VectorInput/VectorInput.d.ts +26 -0
  258. package/dist/types/components/controls/VectorInput/VectorInput.types.d.ts +158 -0
  259. package/dist/types/components/editor/PropertyInspector/PropertyGroup.d.ts +6 -0
  260. package/dist/types/components/editor/PropertyInspector/PropertyInspector.types.d.ts +238 -0
  261. package/dist/types/components/editor/PropertyInspector/PropertyPanel.d.ts +6 -0
  262. package/dist/types/components/editor/PropertyInspector/PropertyRow.d.ts +6 -0
  263. package/dist/types/components/editor/PropertyInspector/PropertySection.d.ts +6 -0
  264. package/dist/types/components/editor/PropertyInspector/usePropertyUndo.d.ts +9 -0
  265. package/dist/types/components/feedback/Dialog/Dialog.d.ts +25 -0
  266. package/dist/types/components/feedback/Dialog/Dialog.types.d.ts +55 -0
  267. package/dist/types/components/feedback/Dialog/DialogBody.d.ts +16 -0
  268. package/dist/types/components/feedback/Dialog/DialogClose.d.ts +21 -0
  269. package/dist/types/components/feedback/Dialog/DialogFooter.d.ts +17 -0
  270. package/dist/types/components/feedback/Dialog/DialogHeader.d.ts +17 -0
  271. package/dist/types/components/feedback/Toast/Toast.types.d.ts +39 -0
  272. package/dist/types/components/feedback/Toast/ToastProvider.d.ts +19 -0
  273. package/dist/types/components/feedback/Toast/useToast.d.ts +22 -0
  274. package/dist/types/components/form/FormHelperText.d.ts +321 -0
  275. package/dist/types/components/form/FormLabel.d.ts +331 -0
  276. package/dist/types/components/form/InputWrapper.d.ts +346 -0
  277. package/dist/types/components/layout/Accordion/Accordion.d.ts +23 -0
  278. package/dist/types/components/layout/Accordion/Accordion.types.d.ts +109 -0
  279. package/dist/types/components/layout/Accordion/AccordionContent.d.ts +6 -0
  280. package/dist/types/components/layout/Accordion/AccordionItem.d.ts +6 -0
  281. package/dist/types/components/layout/Accordion/AccordionTrigger.d.ts +6 -0
  282. package/dist/types/components/layout/Flex/Flex.d.ts +215 -0
  283. package/dist/types/components/layout/Grid/Grid.d.ts +113 -0
  284. package/dist/types/components/layout/PanelSurface/PanelSurface.d.ts +1153 -0
  285. package/dist/types/components/layout/PanelSurface/PanelSurface.types.d.ts +64 -0
  286. package/dist/types/components/layout/ScrollArea/ScrollArea.d.ts +6 -0
  287. package/dist/types/components/layout/ScrollArea/ScrollArea.types.d.ts +93 -0
  288. package/dist/types/components/layout/Spacer/Spacer.d.ts +329 -0
  289. package/dist/types/components/layout/SplitPane/SplitPane.d.ts +21 -0
  290. package/dist/types/components/layout/SplitPane/SplitPane.types.d.ts +87 -0
  291. package/dist/types/components/layout/SplitPane/SplitPanePanel.d.ts +20 -0
  292. package/dist/types/components/layout/Stack/Stack.d.ts +166 -0
  293. package/dist/types/components/navigation/ContextMenu/ContextMenu.d.ts +6 -0
  294. package/dist/types/components/navigation/ContextMenu/ContextMenu.types.d.ts +74 -0
  295. package/dist/types/components/navigation/ContextMenu/useContextMenuTarget.d.ts +5 -0
  296. package/dist/types/components/navigation/Menu/Menu.d.ts +42 -0
  297. package/dist/types/components/navigation/Menu/Menu.types.d.ts +94 -0
  298. package/dist/types/components/navigation/Menu/useMenu.d.ts +16 -0
  299. package/dist/types/components/navigation/Tabs/Tab.d.ts +6 -0
  300. package/dist/types/components/navigation/Tabs/TabList.d.ts +6 -0
  301. package/dist/types/components/navigation/Tabs/TabPanel.d.ts +6 -0
  302. package/dist/types/components/navigation/Tabs/Tabs.d.ts +23 -0
  303. package/dist/types/components/navigation/Tabs/Tabs.types.d.ts +117 -0
  304. package/dist/types/components/primitives/Button/Button.d.ts +392 -0
  305. package/dist/types/components/primitives/Checkbox/Checkbox.d.ts +20 -0
  306. package/dist/types/components/primitives/Checkbox/Checkbox.types.d.ts +156 -0
  307. package/dist/types/components/primitives/Checkbox/CheckboxGroup.d.ts +25 -0
  308. package/dist/types/components/primitives/Collapsible/Collapsible.d.ts +6 -0
  309. package/dist/types/components/primitives/Collapsible/Collapsible.types.d.ts +28 -0
  310. package/dist/types/components/primitives/Icon/Icon.d.ts +40 -0
  311. package/dist/types/components/primitives/IconButton/IconButton.d.ts +354 -0
  312. package/dist/types/components/primitives/Input/Input.d.ts +134 -0
  313. package/dist/types/components/primitives/Paper/Paper.d.ts +419 -0
  314. package/dist/types/components/primitives/Popover/Popover.d.ts +25 -0
  315. package/dist/types/components/primitives/Popover/Popover.types.d.ts +99 -0
  316. package/dist/types/components/primitives/Popover/PopoverClose.d.ts +6 -0
  317. package/dist/types/components/primitives/Popover/PopoverContent.d.ts +6 -0
  318. package/dist/types/components/primitives/Popover/PopoverTrigger.d.ts +10 -0
  319. package/dist/types/components/primitives/Switch/Switch.d.ts +78 -0
  320. package/dist/types/components/primitives/Text/Text.d.ts +442 -0
  321. package/dist/types/components/primitives/Tooltip/Tooltip.d.ts +175 -0
  322. package/dist/types/components/primitives/Tooltip/types.d.ts +82 -0
  323. package/dist/types/components/shell/AppShell/AppShell.d.ts +1437 -0
  324. package/dist/types/components/shell/AppShell/AppShell.types.d.ts +48 -0
  325. package/dist/types/components/shell/FloatingPanel/FloatingPanel.d.ts +7 -0
  326. package/dist/types/components/shell/FloatingPanel/FloatingPanel.types.d.ts +61 -0
  327. package/dist/types/components/shell/MenuBar/MenuBar.d.ts +1441 -0
  328. package/dist/types/components/shell/MenuBar/MenuBar.types.d.ts +48 -0
  329. package/dist/types/components/shell/StatusBar/StatusBar.d.ts +868 -0
  330. package/dist/types/components/shell/StatusBar/StatusBar.types.d.ts +40 -0
  331. package/dist/types/components/shell/Toolbar/Toolbar.d.ts +1728 -0
  332. package/dist/types/components/shell/Toolbar/Toolbar.types.d.ts +59 -0
  333. package/dist/types/index.d.ts +101 -0
  334. package/dist/types/palettes.d.ts +3 -0
  335. package/dist/types/theme/ThemeProvider.d.ts +11 -0
  336. package/dist/types/theme/createTheme.d.ts +6 -0
  337. package/dist/types/theme/tokens.d.ts +147 -0
  338. package/dist/types/theme/types.d.ts +7 -0
  339. package/dist/types/types/common.d.ts +24 -0
  340. package/dist/types/types/utilities.d.ts +72 -0
  341. package/dist/types/utils/cn.d.ts +3 -0
  342. package/package.json +23 -7
  343. package/dist/index.d.ts +0 -11
  344. package/dist/index.esm.js +0 -12149
  345. package/dist/index.esm.js.map +0 -1
  346. package/dist/index.js +0 -12223
  347. package/dist/index.js.map +0 -1
@@ -0,0 +1,178 @@
1
+ import React from 'react';
2
+ import { Prettify } from '../../../types/utilities.js';
3
+ import { BaseComponent, Size } from '../../../types/common.js';
4
+
5
+ /**
6
+ * Props specific to Slider component
7
+ */
8
+ interface SliderBaseProps extends Omit<BaseComponent, 'onChange'> {
9
+ /**
10
+ * Current numeric value
11
+ */
12
+ value: number;
13
+ /**
14
+ * Callback when value changes
15
+ */
16
+ onChange: (value: number) => void;
17
+ /**
18
+ * Minimum allowed value
19
+ * @default 0
20
+ */
21
+ min?: number;
22
+ /**
23
+ * Maximum allowed value
24
+ * @default 100
25
+ */
26
+ max?: number;
27
+ /**
28
+ * Step size for value increments
29
+ * @default 1
30
+ */
31
+ step?: number;
32
+ /**
33
+ * Step size when Shift is held (precision mode)
34
+ * @default step / 10
35
+ */
36
+ precisionStep?: number;
37
+ /**
38
+ * Step size when Ctrl is held (large steps)
39
+ * @default step * 10
40
+ */
41
+ largeStep?: number;
42
+ /**
43
+ * Number of decimal places to round to
44
+ */
45
+ precision?: number;
46
+ /**
47
+ * Slider size using standard library sizing
48
+ * - `sm`: Compact for toolbars
49
+ * - `md`: Standard for forms
50
+ * - `lg`: Prominent sliders
51
+ * @default "md"
52
+ */
53
+ size?: Size;
54
+ /**
55
+ * Whether the slider is disabled
56
+ * @default false
57
+ */
58
+ disabled?: boolean;
59
+ /**
60
+ * Whether the slider is read-only
61
+ * @default false
62
+ */
63
+ readOnly?: boolean;
64
+ /**
65
+ * Slider label
66
+ */
67
+ label?: string;
68
+ /**
69
+ * Helper text displayed below the slider
70
+ */
71
+ helperText?: string;
72
+ /**
73
+ * Error message displayed when error is true
74
+ */
75
+ errorMessage?: string;
76
+ /**
77
+ * Whether the slider has an error state
78
+ * @default false
79
+ */
80
+ error?: boolean;
81
+ /**
82
+ * Whether the slider is required
83
+ * @default false
84
+ */
85
+ required?: boolean;
86
+ /**
87
+ * Unit suffix to display (e.g., "px", "%", "°")
88
+ */
89
+ unit?: string;
90
+ /**
91
+ * Format value for display
92
+ */
93
+ formatValue?: (value: number) => string;
94
+ /**
95
+ * Show value tooltip while dragging
96
+ * @default true
97
+ */
98
+ showTooltip?: boolean;
99
+ /**
100
+ * Show tick marks along the track
101
+ * @default false
102
+ */
103
+ showTicks?: boolean;
104
+ /**
105
+ * Number of tick marks to show (when showTicks is true)
106
+ * @default 5
107
+ */
108
+ tickCount?: number;
109
+ /**
110
+ * Focus event handler
111
+ */
112
+ onFocus?: (event: React.FocusEvent<HTMLElement>) => void;
113
+ /**
114
+ * Blur event handler
115
+ */
116
+ onBlur?: (event: React.FocusEvent<HTMLElement>) => void;
117
+ /**
118
+ * Key down event handler
119
+ */
120
+ onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;
121
+ }
122
+ /**
123
+ * Props for the Slider component with prettified type for better IntelliSense
124
+ */
125
+ type SliderProps = Prettify<SliderBaseProps>;
126
+ /**
127
+ * A professional slider component with drag interaction and keyboard support.
128
+ *
129
+ * Features:
130
+ * - Smooth drag interaction with visual feedback
131
+ * - Keyboard navigation with arrow keys
132
+ * - Modifier key support: Ctrl (large steps), Shift (precision)
133
+ * - Optional tick marks and value tooltip
134
+ * - Comprehensive theming and size variants
135
+ * - Accessible with proper ARIA attributes
136
+ *
137
+ * @example
138
+ * ```tsx
139
+ * // Basic slider
140
+ * <Slider
141
+ * value={opacity}
142
+ * onChange={setOpacity}
143
+ * min={0}
144
+ * max={1}
145
+ * step={0.1}
146
+ * unit="%"
147
+ * />
148
+ *
149
+ * // Slider with ticks and custom formatting
150
+ * <Slider
151
+ * value={rotation}
152
+ * onChange={setRotation}
153
+ * min={0}
154
+ * max={360}
155
+ * step={15}
156
+ * unit="°"
157
+ * showTicks
158
+ * tickCount={8}
159
+ * formatValue={(v) => `${v}°`}
160
+ * />
161
+ *
162
+ * // Precision slider for fine control
163
+ * <Slider
164
+ * value={scale}
165
+ * onChange={setScale}
166
+ * min={0.1}
167
+ * max={5}
168
+ * step={0.1}
169
+ * precisionStep={0.01}
170
+ * largeStep={1}
171
+ * precision={2}
172
+ * />
173
+ * ```
174
+ */
175
+ declare const Slider: React.FC<SliderProps>;
176
+
177
+ export { Slider };
178
+ export type { SliderBaseProps, SliderProps };
@@ -0,0 +1,27 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { TreeViewProps } from './TreeView.types.js';
3
+
4
+ /**
5
+ * A hierarchical collapsible tree for displaying and managing nested data.
6
+ *
7
+ * Supports multi-selection, keyboard navigation, inline renaming,
8
+ * and custom node rendering. The most iconic editor panel — scene hierarchy,
9
+ * file browser, layer stack.
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * const nodes = [
14
+ * { id: '1', label: 'Root', children: [
15
+ * { id: '1.1', label: 'Child A' },
16
+ * { id: '1.2', label: 'Child B' },
17
+ * ]},
18
+ * ];
19
+ * <TreeView nodes={nodes} onSelectionChange={setSelected} />
20
+ * ```
21
+ */
22
+ declare const TreeView: {
23
+ ({ nodes, expandedIds, defaultExpandedIds, selectedIds, defaultSelectedIds, selectionMode, renamable, size, indent, showChevrons, showGuideLines, expandOnSelect, maxHeight, renderNode, renderActions, emptyContent, onExpandedChange, onSelectionChange, onNodeClick, onNodeDoubleClick, onNodeContextMenu, onNodeRename, className, testId, ...rest }: TreeViewProps): react_jsx_runtime.JSX.Element;
24
+ displayName: string;
25
+ };
26
+
27
+ export { TreeView };
@@ -0,0 +1,135 @@
1
+ import React from 'react';
2
+ import { Prettify } from '../../../types/utilities.js';
3
+ import { BaseComponent, Size } from '../../../types/common.js';
4
+
5
+ type TreeViewSize = Size;
6
+ /**
7
+ * Selection mode for the tree.
8
+ * - `single`: Only one node can be selected
9
+ * - `multiple`: Multiple nodes via Ctrl+Click, Shift+Click
10
+ * - `none`: No selection, tree is display-only
11
+ */
12
+ type TreeSelectionMode = 'single' | 'multiple' | 'none';
13
+ /**
14
+ * Generic tree node data structure.
15
+ */
16
+ interface TreeNodeData {
17
+ /** Unique identifier for this node */
18
+ id: string;
19
+ /** Display label */
20
+ label: string;
21
+ /** Optional icon rendered before the label */
22
+ icon?: React.ReactNode;
23
+ /** Child nodes (empty array or undefined for leaf nodes) */
24
+ children?: TreeNodeData[];
25
+ /** Whether this node is disabled */
26
+ disabled?: boolean;
27
+ /** Whether this node can be dragged */
28
+ draggable?: boolean;
29
+ /** Whether this node can accept children via drag-and-drop */
30
+ droppable?: boolean;
31
+ /** Whether this node can be renamed inline */
32
+ renamable?: boolean;
33
+ /** Additional data attached to this node */
34
+ data?: Record<string, unknown>;
35
+ }
36
+ /**
37
+ * State information passed to render functions.
38
+ */
39
+ interface TreeNodeState {
40
+ selected: boolean;
41
+ expanded: boolean;
42
+ focused: boolean;
43
+ depth: number;
44
+ isLeaf: boolean;
45
+ isFirst: boolean;
46
+ isLast: boolean;
47
+ }
48
+ interface TreeViewBaseProps extends Omit<BaseComponent, 'onChange'> {
49
+ /**
50
+ * Tree data — array of root-level nodes.
51
+ */
52
+ nodes: TreeNodeData[];
53
+ /**
54
+ * Expanded node IDs (controlled).
55
+ */
56
+ expandedIds?: string[];
57
+ /**
58
+ * Default expanded node IDs (uncontrolled).
59
+ */
60
+ defaultExpandedIds?: string[];
61
+ /**
62
+ * Selected node IDs (controlled).
63
+ */
64
+ selectedIds?: string[];
65
+ /**
66
+ * Default selected node IDs (uncontrolled).
67
+ */
68
+ defaultSelectedIds?: string[];
69
+ /**
70
+ * Selection mode.
71
+ * @default "single"
72
+ */
73
+ selectionMode?: TreeSelectionMode;
74
+ /**
75
+ * Whether to allow inline renaming (double-click on label).
76
+ * @default false
77
+ */
78
+ renamable?: boolean;
79
+ /**
80
+ * Tree node size.
81
+ * @default "md"
82
+ */
83
+ size?: TreeViewSize;
84
+ /**
85
+ * Indentation per depth level in pixels.
86
+ * @default 16
87
+ */
88
+ indent?: number;
89
+ /**
90
+ * Whether to show expand/collapse chevrons for parent nodes.
91
+ * @default true
92
+ */
93
+ showChevrons?: boolean;
94
+ /**
95
+ * Whether to show connecting guide lines.
96
+ * @default false
97
+ */
98
+ showGuideLines?: boolean;
99
+ /**
100
+ * Whether to expand parent nodes when they are selected.
101
+ * @default false
102
+ */
103
+ expandOnSelect?: boolean;
104
+ /**
105
+ * Maximum height before scrolling.
106
+ */
107
+ maxHeight?: number | string;
108
+ /**
109
+ * Custom render function for node content.
110
+ */
111
+ renderNode?: (node: TreeNodeData, state: TreeNodeState) => React.ReactNode;
112
+ /**
113
+ * Custom render function for trailing actions (right side of node).
114
+ */
115
+ renderActions?: (node: TreeNodeData, state: TreeNodeState) => React.ReactNode;
116
+ /**
117
+ * Empty state content when nodes array is empty.
118
+ */
119
+ emptyContent?: React.ReactNode;
120
+ /** Fired when expanded nodes change. */
121
+ onExpandedChange?: (expandedIds: string[]) => void;
122
+ /** Fired when selected nodes change. */
123
+ onSelectionChange?: (selectedIds: string[]) => void;
124
+ /** Fired when a node is clicked. */
125
+ onNodeClick?: (node: TreeNodeData, event: React.MouseEvent) => void;
126
+ /** Fired when a node is double-clicked. */
127
+ onNodeDoubleClick?: (node: TreeNodeData, event: React.MouseEvent) => void;
128
+ /** Fired when a node is right-clicked. */
129
+ onNodeContextMenu?: (node: TreeNodeData, event: React.MouseEvent) => void;
130
+ /** Fired when a node is renamed. */
131
+ onNodeRename?: (nodeId: string, newLabel: string) => void;
132
+ }
133
+ type TreeViewProps = Prettify<TreeViewBaseProps>;
134
+
135
+ export type { TreeNodeData, TreeNodeState, TreeSelectionMode, TreeViewBaseProps, TreeViewProps, TreeViewSize };
@@ -0,0 +1,26 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { VectorInputProps } from './VectorInput.types.js';
3
+
4
+ /**
5
+ * A grouped numeric input for Vec2, Vec3, and Vec4 vectors.
6
+ *
7
+ * Used for position, rotation, scale, color channels, UV coordinates,
8
+ * bounding box extents, and more. Composes NumberInput with per-axis labels,
9
+ * optional color coding, and linked/unlinked proportional editing.
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * <VectorInput
14
+ * label="Position"
15
+ * value={[0, 0, 0]}
16
+ * onChange={(val) => setPosition(val)}
17
+ * unit="px"
18
+ * />
19
+ * ```
20
+ */
21
+ declare const VectorInput: {
22
+ ({ value: controlledValue, defaultValue, dimension, labelPreset, axisLabels: customAxisLabels, colorPreset, axisColors: customAxisColors, min, max, step, precisionStep, largeStep, precision, unit, size, label, helperText, error, errorMessage, disabled, showLink, defaultLinked, linked: controlledLinked, onLinkedChange, direction, gap, onChange, onChangeComplete, className, testId, ...rest }: VectorInputProps): react_jsx_runtime.JSX.Element;
23
+ displayName: string;
24
+ };
25
+
26
+ export { VectorInput };
@@ -0,0 +1,158 @@
1
+ import { Prettify } from '../../../types/utilities.js';
2
+ import { BaseComponent, Size } from '../../../types/common.js';
3
+
4
+ type VectorInputSize = Size;
5
+ /**
6
+ * Number of components in the vector.
7
+ */
8
+ type VectorDimension = 2 | 3 | 4;
9
+ /**
10
+ * Axis label preset configurations.
11
+ * - `xyz`: X, Y, Z, W — position, rotation, scale
12
+ * - `rgba`: R, G, B, A — color channels
13
+ * - `uvw`: U, V, W — texture coordinates
14
+ * - `custom`: use `axisLabels` prop
15
+ */
16
+ type VectorLabelPreset = 'xyz' | 'rgba' | 'uvw' | 'custom';
17
+ /**
18
+ * Color coding preset for axis labels.
19
+ * - `spatial`: X=red, Y=green, Z=blue, W=purple (standard 3D convention)
20
+ * - `color`: R=red, G=green, B=blue, A=white
21
+ * - `none`: all labels use default text color
22
+ * - `custom`: use `axisColors` prop
23
+ */
24
+ type VectorColorPreset = 'spatial' | 'color' | 'none' | 'custom';
25
+ interface VectorInputBaseProps extends Omit<BaseComponent, 'onChange' | 'value' | 'defaultValue'> {
26
+ /**
27
+ * Current vector value (controlled).
28
+ * Array length must match `dimension`.
29
+ */
30
+ value?: number[];
31
+ /**
32
+ * Default vector value (uncontrolled).
33
+ */
34
+ defaultValue?: number[];
35
+ /**
36
+ * Number of vector components.
37
+ * @default 3
38
+ */
39
+ dimension?: VectorDimension;
40
+ /**
41
+ * Axis label preset.
42
+ * @default "xyz"
43
+ */
44
+ labelPreset?: VectorLabelPreset;
45
+ /**
46
+ * Custom axis labels (when labelPreset is "custom").
47
+ * Array length must match `dimension`.
48
+ */
49
+ axisLabels?: string[];
50
+ /**
51
+ * Color coding for axis labels.
52
+ * @default "spatial"
53
+ */
54
+ colorPreset?: VectorColorPreset;
55
+ /**
56
+ * Custom axis colors (when colorPreset is "custom").
57
+ * Array of CSS color strings, length must match `dimension`.
58
+ */
59
+ axisColors?: string[];
60
+ /**
61
+ * Minimum allowed value (applies to all axes).
62
+ */
63
+ min?: number;
64
+ /**
65
+ * Maximum allowed value (applies to all axes).
66
+ */
67
+ max?: number;
68
+ /**
69
+ * Step size for value increments.
70
+ * @default 1
71
+ */
72
+ step?: number;
73
+ /**
74
+ * Step size when Shift is held (precision mode).
75
+ */
76
+ precisionStep?: number;
77
+ /**
78
+ * Step size when Ctrl is held (large steps).
79
+ */
80
+ largeStep?: number;
81
+ /**
82
+ * Number of decimal places.
83
+ * @default 2
84
+ */
85
+ precision?: number;
86
+ /**
87
+ * Unit suffix displayed in each input (e.g., "px", "deg", "%").
88
+ */
89
+ unit?: string;
90
+ /**
91
+ * Component size using standard library sizing.
92
+ * @default "md"
93
+ */
94
+ size?: VectorInputSize;
95
+ /**
96
+ * Label displayed above the vector input.
97
+ */
98
+ label?: string;
99
+ /**
100
+ * Helper text displayed below.
101
+ */
102
+ helperText?: string;
103
+ /**
104
+ * Error state.
105
+ * @default false
106
+ */
107
+ error?: boolean;
108
+ /**
109
+ * Error message.
110
+ */
111
+ errorMessage?: string;
112
+ /**
113
+ * Whether the vector input is disabled.
114
+ * @default false
115
+ */
116
+ disabled?: boolean;
117
+ /**
118
+ * Whether to show the lock/link proportions toggle.
119
+ * @default false
120
+ */
121
+ showLink?: boolean;
122
+ /**
123
+ * Whether axes are linked by default.
124
+ * @default false
125
+ */
126
+ defaultLinked?: boolean;
127
+ /**
128
+ * Whether axes are linked (controlled).
129
+ */
130
+ linked?: boolean;
131
+ /**
132
+ * Callback when linked state changes.
133
+ */
134
+ onLinkedChange?: (linked: boolean) => void;
135
+ /**
136
+ * Layout direction.
137
+ * @default "row"
138
+ */
139
+ direction?: 'row' | 'column';
140
+ /**
141
+ * Gap between axis inputs in pixels.
142
+ * @default 2
143
+ */
144
+ gap?: number;
145
+ /**
146
+ * Callback when any axis value changes.
147
+ * @param value - Complete vector array with the changed axis.
148
+ * @param axisIndex - Which axis changed (0-based).
149
+ */
150
+ onChange?: (value: number[], axisIndex: number) => void;
151
+ /**
152
+ * Callback when editing is committed (blur, Enter).
153
+ */
154
+ onChangeComplete?: (value: number[]) => void;
155
+ }
156
+ type VectorInputProps = Prettify<VectorInputBaseProps>;
157
+
158
+ export type { VectorColorPreset, VectorDimension, VectorInputBaseProps, VectorInputProps, VectorInputSize, VectorLabelPreset };
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { PropertyGroupProps } from './PropertyInspector.types.js';
3
+
4
+ declare const PropertyGroup: React.FC<PropertyGroupProps>;
5
+
6
+ export { PropertyGroup };