entangle-ui 0.9.0 → 0.11.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 (1053) hide show
  1. package/CHANGELOG.md +766 -0
  2. package/README.md +8 -6
  3. package/dist/esm/assets/src/components/controls/FileTree/FileTree.css.ts.vanilla-YmktPvnr.css +48 -0
  4. package/dist/esm/assets/src/components/controls/Select/{Select.css.ts.vanilla-oZnFUorL.css → Select.css.ts.vanilla-Cpu2BvWL.css} +3 -0
  5. package/dist/esm/assets/src/components/controls/TreeView/{TreeNode.css.ts.vanilla-B_f8pUb8.css → TreeNode.css.ts.vanilla-DXPJRWZZ.css} +31 -24
  6. package/dist/esm/assets/src/components/editor/AssetBrowser/AssetBrowser.css.ts.vanilla-B2S4cEiY.css +262 -0
  7. package/dist/esm/assets/src/components/editor/Minimap/Minimap.css.ts.vanilla--rNdWQwy.css +133 -0
  8. package/dist/esm/assets/src/components/editor/NodeGraph/NodeGraph.css.ts.vanilla-ClF4YZvl.css +401 -0
  9. package/dist/esm/assets/src/components/editor/PropertyInspector/{PropertyPanel.css.ts.vanilla-RYv_XgOu.css → PropertyPanel.css.ts.vanilla-Dpr_k5I3.css} +4 -1
  10. package/dist/esm/assets/src/components/editor/PropertyInspector/{PropertyRow.css.ts.vanilla-C3YZnnHb.css → PropertyRow.css.ts.vanilla-pq1Uhd2a.css} +15 -8
  11. package/dist/esm/assets/src/components/editor/PropertyInspector/{PropertySection.css.ts.vanilla-DK12opZc.css → PropertySection.css.ts.vanilla-6MWWAqyd.css} +50 -32
  12. package/dist/esm/assets/src/components/editor/Timeline/Timeline.css.ts.vanilla-DDX6Zalo.css +203 -0
  13. package/dist/esm/assets/src/components/feedback/LogView/LogView.css.ts.vanilla-nB5ENOpw.css +312 -0
  14. package/dist/esm/assets/src/components/navigation/Menu/Menu.css.ts.vanilla-B5iVe5S2.css +88 -0
  15. package/dist/esm/assets/src/components/navigation/PathBar/PathBar.css.ts.vanilla-BIEzQQOf.css +10 -0
  16. package/dist/esm/assets/src/components/primitives/viewport/Viewport.css.ts.vanilla-CkFBJ7Vo.css +65 -0
  17. package/dist/esm/assets/src/components/shell/FloatingPanel/{FloatingPanel.css.ts.vanilla-1rIAXEFp.css → FloatingPanel.css.ts.vanilla-CRaeYJ2b.css} +20 -13
  18. package/dist/esm/assets/src/theme/{darkTheme.css.ts.vanilla-ab1WD4dr.css → darkTheme.css.ts.vanilla-BHZ3ecRn.css} +3 -3
  19. package/dist/esm/assets/src/theme/{lightTheme.css.ts.vanilla-OaRI_wIc.css → lightTheme.css.ts.vanilla-Ct6f9Iym.css} +3 -3
  20. package/dist/esm/components/Icons/AddIcon.js.map +1 -1
  21. package/dist/esm/components/Icons/AiChatIcon.js.map +1 -1
  22. package/dist/esm/components/Icons/AiSparklesIcon.js.map +1 -1
  23. package/dist/esm/components/Icons/ArchiveIcon.js.map +1 -1
  24. package/dist/esm/components/Icons/ArrowDownIcon.js.map +1 -1
  25. package/dist/esm/components/Icons/ArrowLeftIcon.js.map +1 -1
  26. package/dist/esm/components/Icons/ArrowRightIcon.js.map +1 -1
  27. package/dist/esm/components/Icons/ArrowUpIcon.js.map +1 -1
  28. package/dist/esm/components/Icons/BookmarkIcon.js.map +1 -1
  29. package/dist/esm/components/Icons/BugIcon.js.map +1 -1
  30. package/dist/esm/components/Icons/BuildingIcon.js.map +1 -1
  31. package/dist/esm/components/Icons/CalendarIcon.js.map +1 -1
  32. package/dist/esm/components/Icons/CameraIcon.js +31 -0
  33. package/dist/esm/components/Icons/CameraIcon.js.map +1 -0
  34. package/dist/esm/components/Icons/CheckIcon.js.map +1 -1
  35. package/dist/esm/components/Icons/ChevronDownIcon.js.map +1 -1
  36. package/dist/esm/components/Icons/ChevronLeftIcon.js.map +1 -1
  37. package/dist/esm/components/Icons/ChevronRightIcon.js.map +1 -1
  38. package/dist/esm/components/Icons/ChevronUpIcon.js.map +1 -1
  39. package/dist/esm/components/Icons/CircleIcon.js.map +1 -1
  40. package/dist/esm/components/Icons/ClockIcon.js.map +1 -1
  41. package/dist/esm/components/Icons/CloseIcon.js.map +1 -1
  42. package/dist/esm/components/Icons/CloudUploadIcon.js.map +1 -1
  43. package/dist/esm/components/Icons/CodeIcon.js.map +1 -1
  44. package/dist/esm/components/Icons/CopyIcon.js.map +1 -1
  45. package/dist/esm/components/Icons/CubeIcon.js +31 -0
  46. package/dist/esm/components/Icons/CubeIcon.js.map +1 -0
  47. package/dist/esm/components/Icons/CutIcon.js.map +1 -1
  48. package/dist/esm/components/Icons/DotsHorizontalIcon.js.map +1 -1
  49. package/dist/esm/components/Icons/DotsVerticalIcon.js.map +1 -1
  50. package/dist/esm/components/Icons/DownloadIcon.js.map +1 -1
  51. package/dist/esm/components/Icons/EditIcon.js.map +1 -1
  52. package/dist/esm/components/Icons/ErrorIcon.js.map +1 -1
  53. package/dist/esm/components/Icons/ExternalLinkIcon.js.map +1 -1
  54. package/dist/esm/components/Icons/EyeDropperIcon.js.map +1 -1
  55. package/dist/esm/components/Icons/EyeIcon.js.map +1 -1
  56. package/dist/esm/components/Icons/FileTextIcon.js.map +1 -1
  57. package/dist/esm/components/Icons/FilterIcon.js.map +1 -1
  58. package/dist/esm/components/Icons/FirstIcon.js.map +1 -1
  59. package/dist/esm/components/Icons/FolderCogIcon.js.map +1 -1
  60. package/dist/esm/components/Icons/FolderIcon.js.map +1 -1
  61. package/dist/esm/components/Icons/FolderOpenIcon.js +2 -2
  62. package/dist/esm/components/Icons/FolderOpenIcon.js.map +1 -1
  63. package/dist/esm/components/Icons/FullscreenIcon.js.map +1 -1
  64. package/dist/esm/components/Icons/GitBranchIcon.js.map +1 -1
  65. package/dist/esm/components/Icons/GridIcon.js.map +1 -1
  66. package/dist/esm/components/Icons/HeartIcon.js.map +1 -1
  67. package/dist/esm/components/Icons/HelpIcon.js.map +1 -1
  68. package/dist/esm/components/Icons/HomeIcon.js.map +1 -1
  69. package/dist/esm/components/Icons/ImageIcon.js +31 -0
  70. package/dist/esm/components/Icons/ImageIcon.js.map +1 -0
  71. package/dist/esm/components/Icons/InfoIcon.js.map +1 -1
  72. package/dist/esm/components/Icons/LastIcon.js.map +1 -1
  73. package/dist/esm/components/Icons/LinkIcon.js.map +1 -1
  74. package/dist/esm/components/Icons/ListIcon.js.map +1 -1
  75. package/dist/esm/components/Icons/LockIcon.js.map +1 -1
  76. package/dist/esm/components/Icons/MaximizeIcon.js.map +1 -1
  77. package/dist/esm/components/Icons/MenuIcon.js.map +1 -1
  78. package/dist/esm/components/Icons/MinimizeIcon.js.map +1 -1
  79. package/dist/esm/components/Icons/MinusIcon.js.map +1 -1
  80. package/dist/esm/components/Icons/OrbitIcon.js +31 -0
  81. package/dist/esm/components/Icons/OrbitIcon.js.map +1 -0
  82. package/dist/esm/components/Icons/PasteIcon.js.map +1 -1
  83. package/dist/esm/components/Icons/PauseIcon.js +2 -2
  84. package/dist/esm/components/Icons/PauseIcon.js.map +1 -1
  85. package/dist/esm/components/Icons/PinIcon.js.map +1 -1
  86. package/dist/esm/components/Icons/PlayIcon.js.map +1 -1
  87. package/dist/esm/components/Icons/RedoIcon.js.map +1 -1
  88. package/dist/esm/components/Icons/RefreshIcon.js.map +1 -1
  89. package/dist/esm/components/Icons/RobotIcon.js.map +1 -1
  90. package/dist/esm/components/Icons/RotateIcon.js +32 -0
  91. package/dist/esm/components/Icons/RotateIcon.js.map +1 -0
  92. package/dist/esm/components/Icons/SaveIcon.js.map +1 -1
  93. package/dist/esm/components/Icons/SearchIcon.js.map +1 -1
  94. package/dist/esm/components/Icons/SendIcon.js.map +1 -1
  95. package/dist/esm/components/Icons/SettingsIcon.js.map +1 -1
  96. package/dist/esm/components/Icons/SortIcon.js.map +1 -1
  97. package/dist/esm/components/Icons/SpinIcon.js +32 -0
  98. package/dist/esm/components/Icons/SpinIcon.js.map +1 -0
  99. package/dist/esm/components/Icons/StarIcon.js.map +1 -1
  100. package/dist/esm/components/Icons/StopIcon.js.map +1 -1
  101. package/dist/esm/components/Icons/SuccessIcon.js.map +1 -1
  102. package/dist/esm/components/Icons/TagIcon.js.map +1 -1
  103. package/dist/esm/components/Icons/TangentAlignedIcon.js.map +1 -1
  104. package/dist/esm/components/Icons/TangentAutoIcon.js.map +1 -1
  105. package/dist/esm/components/Icons/TangentFreeIcon.js.map +1 -1
  106. package/dist/esm/components/Icons/TangentLinearIcon.js.map +1 -1
  107. package/dist/esm/components/Icons/TangentMirroredIcon.js.map +1 -1
  108. package/dist/esm/components/Icons/TangentStepIcon.js.map +1 -1
  109. package/dist/esm/components/Icons/TerminalIcon.js.map +1 -1
  110. package/dist/esm/components/Icons/TrashIcon.js.map +1 -1
  111. package/dist/esm/components/Icons/UndoIcon.js.map +1 -1
  112. package/dist/esm/components/Icons/UnlinkIcon.js.map +1 -1
  113. package/dist/esm/components/Icons/UnlockIcon.js.map +1 -1
  114. package/dist/esm/components/Icons/UploadIcon.js.map +1 -1
  115. package/dist/esm/components/Icons/UserIcon.js.map +1 -1
  116. package/dist/esm/components/Icons/UsersIcon.js.map +1 -1
  117. package/dist/esm/components/Icons/WarningIcon.js.map +1 -1
  118. package/dist/esm/components/Icons/ZoomFitIcon.js +32 -0
  119. package/dist/esm/components/Icons/ZoomFitIcon.js.map +1 -0
  120. package/dist/esm/components/Icons/ZoomInIcon.js.map +1 -1
  121. package/dist/esm/components/Icons/ZoomOutIcon.js.map +1 -1
  122. package/dist/esm/components/controls/CartesianPicker/CartesianPicker.js +3 -3
  123. package/dist/esm/components/controls/CartesianPicker/CartesianPicker.js.map +1 -1
  124. package/dist/esm/components/controls/CartesianPicker/useCartesianInteraction.js +7 -5
  125. package/dist/esm/components/controls/CartesianPicker/useCartesianInteraction.js.map +1 -1
  126. package/dist/esm/components/controls/CartesianPicker/useCartesianRenderer.js.map +1 -1
  127. package/dist/esm/components/controls/ColorPicker/AlphaSlider.js.map +1 -1
  128. package/dist/esm/components/controls/ColorPicker/ColorArea.js +2 -2
  129. package/dist/esm/components/controls/ColorPicker/ColorArea.js.map +1 -1
  130. package/dist/esm/components/controls/ColorPicker/ColorInputs.js +16 -2
  131. package/dist/esm/components/controls/ColorPicker/ColorInputs.js.map +1 -1
  132. package/dist/esm/components/controls/ColorPicker/ColorPalette.js +3 -1
  133. package/dist/esm/components/controls/ColorPicker/ColorPalette.js.map +1 -1
  134. package/dist/esm/components/controls/ColorPicker/ColorPicker.js +6 -6
  135. package/dist/esm/components/controls/ColorPicker/ColorPicker.js.map +1 -1
  136. package/dist/esm/components/controls/ColorPicker/ColorPresets.js +3 -1
  137. package/dist/esm/components/controls/ColorPicker/ColorPresets.js.map +1 -1
  138. package/dist/esm/components/controls/ColorPicker/ColorSwatch.js.map +1 -1
  139. package/dist/esm/components/controls/ColorPicker/EyeDropper.js.map +1 -1
  140. package/dist/esm/components/controls/ColorPicker/HueSlider.js.map +1 -1
  141. package/dist/esm/components/controls/ColorPicker/colorUtils.js.map +1 -1
  142. package/dist/esm/components/controls/ColorPicker/palettes/material.js.map +1 -1
  143. package/dist/esm/components/controls/ColorPicker/palettes/professional.js.map +1 -1
  144. package/dist/esm/components/controls/ColorPicker/palettes/tailwind.js.map +1 -1
  145. package/dist/esm/components/controls/ColorPicker/useColor.js.map +1 -1
  146. package/dist/esm/components/controls/Combobox/Combobox.js +46 -23
  147. package/dist/esm/components/controls/Combobox/Combobox.js.map +1 -1
  148. package/dist/esm/components/controls/CurveEditor/CurveCanvas.js +11 -4
  149. package/dist/esm/components/controls/CurveEditor/CurveCanvas.js.map +1 -1
  150. package/dist/esm/components/controls/CurveEditor/CurveEditor.js +4 -4
  151. package/dist/esm/components/controls/CurveEditor/CurveEditor.js.map +1 -1
  152. package/dist/esm/components/controls/CurveEditor/CurveToolbar.js +7 -5
  153. package/dist/esm/components/controls/CurveEditor/CurveToolbar.js.map +1 -1
  154. package/dist/esm/components/controls/CurveEditor/curvePresets.js.map +1 -1
  155. package/dist/esm/components/controls/CurveEditor/curveUtils.js +13 -15
  156. package/dist/esm/components/controls/CurveEditor/curveUtils.js.map +1 -1
  157. package/dist/esm/components/controls/CurveEditor/useCurveInteraction.js +72 -50
  158. package/dist/esm/components/controls/CurveEditor/useCurveInteraction.js.map +1 -1
  159. package/dist/esm/components/controls/CurveEditor/useCurveRenderer.js +11 -3
  160. package/dist/esm/components/controls/CurveEditor/useCurveRenderer.js.map +1 -1
  161. package/dist/esm/components/controls/FileTree/FileTree.css.js +9 -0
  162. package/dist/esm/components/controls/FileTree/FileTree.css.js.map +1 -0
  163. package/dist/esm/components/controls/FileTree/FileTree.js +252 -0
  164. package/dist/esm/components/controls/FileTree/FileTree.js.map +1 -0
  165. package/dist/esm/components/controls/FileTree/fileTreeIcons.js +129 -0
  166. package/dist/esm/components/controls/FileTree/fileTreeIcons.js.map +1 -0
  167. package/dist/esm/components/controls/FileTree/fileTreeLabels.js +8 -0
  168. package/dist/esm/components/controls/FileTree/fileTreeLabels.js.map +1 -0
  169. package/dist/esm/components/controls/FileTree/useFileTreeDrop.js +115 -0
  170. package/dist/esm/components/controls/FileTree/useFileTreeDrop.js.map +1 -0
  171. package/dist/esm/components/controls/FileUploader/FileUploader.js +3 -6
  172. package/dist/esm/components/controls/FileUploader/FileUploader.js.map +1 -1
  173. package/dist/esm/components/controls/MultiSelect/MultiSelect.js +46 -15
  174. package/dist/esm/components/controls/MultiSelect/MultiSelect.js.map +1 -1
  175. package/dist/esm/components/controls/NumberInput/NumberInput.js +11 -4
  176. package/dist/esm/components/controls/NumberInput/NumberInput.js.map +1 -1
  177. package/dist/esm/components/controls/NumberInput/useNumberInput.js +6 -2
  178. package/dist/esm/components/controls/NumberInput/useNumberInput.js.map +1 -1
  179. package/dist/esm/components/controls/Select/Select.css.js +1 -1
  180. package/dist/esm/components/controls/Select/Select.js +44 -16
  181. package/dist/esm/components/controls/Select/Select.js.map +1 -1
  182. package/dist/esm/components/controls/Slider/Slider.js +6 -8
  183. package/dist/esm/components/controls/Slider/Slider.js.map +1 -1
  184. package/dist/esm/components/controls/TagInput/TagInput.js +4 -2
  185. package/dist/esm/components/controls/TagInput/TagInput.js.map +1 -1
  186. package/dist/esm/components/controls/TreeView/TreeNode.css.js +9 -8
  187. package/dist/esm/components/controls/TreeView/TreeNode.css.js.map +1 -1
  188. package/dist/esm/components/controls/TreeView/TreeNode.js +42 -7
  189. package/dist/esm/components/controls/TreeView/TreeNode.js.map +1 -1
  190. package/dist/esm/components/controls/TreeView/TreeView.js +18 -6
  191. package/dist/esm/components/controls/TreeView/TreeView.js.map +1 -1
  192. package/dist/esm/components/controls/TreeView/useTreeState.js +2 -6
  193. package/dist/esm/components/controls/TreeView/useTreeState.js.map +1 -1
  194. package/dist/esm/components/controls/VectorInput/VectorInput.js +13 -4
  195. package/dist/esm/components/controls/VectorInput/VectorInput.js.map +1 -1
  196. package/dist/esm/components/data/DataTable/DataTable.js +25 -8
  197. package/dist/esm/components/data/DataTable/DataTable.js.map +1 -1
  198. package/dist/esm/components/editor/AssetBrowser/AssetBrowser.css.js +46 -0
  199. package/dist/esm/components/editor/AssetBrowser/AssetBrowser.css.js.map +1 -0
  200. package/dist/esm/components/editor/AssetBrowser/AssetBrowser.js +254 -0
  201. package/dist/esm/components/editor/AssetBrowser/AssetBrowser.js.map +1 -0
  202. package/dist/esm/components/editor/AssetBrowser/AssetBrowserAnnouncementLive.js +17 -0
  203. package/dist/esm/components/editor/AssetBrowser/AssetBrowserAnnouncementLive.js.map +1 -0
  204. package/dist/esm/components/editor/AssetBrowser/AssetBrowserBreadcrumbs.js +25 -0
  205. package/dist/esm/components/editor/AssetBrowser/AssetBrowserBreadcrumbs.js.map +1 -0
  206. package/dist/esm/components/editor/AssetBrowser/AssetBrowserContent.js +140 -0
  207. package/dist/esm/components/editor/AssetBrowser/AssetBrowserContent.js.map +1 -0
  208. package/dist/esm/components/editor/AssetBrowser/AssetBrowserContext.js +81 -0
  209. package/dist/esm/components/editor/AssetBrowser/AssetBrowserContext.js.map +1 -0
  210. package/dist/esm/components/editor/AssetBrowser/AssetBrowserContextMenu.js +123 -0
  211. package/dist/esm/components/editor/AssetBrowser/AssetBrowserContextMenu.js.map +1 -0
  212. package/dist/esm/components/editor/AssetBrowser/AssetBrowserDefaultMenus.js +136 -0
  213. package/dist/esm/components/editor/AssetBrowser/AssetBrowserDefaultMenus.js.map +1 -0
  214. package/dist/esm/components/editor/AssetBrowser/AssetBrowserGrid.js +137 -0
  215. package/dist/esm/components/editor/AssetBrowser/AssetBrowserGrid.js.map +1 -0
  216. package/dist/esm/components/editor/AssetBrowser/AssetBrowserGridItem.js +226 -0
  217. package/dist/esm/components/editor/AssetBrowser/AssetBrowserGridItem.js.map +1 -0
  218. package/dist/esm/components/editor/AssetBrowser/AssetBrowserList.js +189 -0
  219. package/dist/esm/components/editor/AssetBrowser/AssetBrowserList.js.map +1 -0
  220. package/dist/esm/components/editor/AssetBrowser/AssetBrowserRenameField.js +63 -0
  221. package/dist/esm/components/editor/AssetBrowser/AssetBrowserRenameField.js.map +1 -0
  222. package/dist/esm/components/editor/AssetBrowser/AssetBrowserSidebar.js +19 -0
  223. package/dist/esm/components/editor/AssetBrowser/AssetBrowserSidebar.js.map +1 -0
  224. package/dist/esm/components/editor/AssetBrowser/AssetBrowserStatusBar.js +24 -0
  225. package/dist/esm/components/editor/AssetBrowser/AssetBrowserStatusBar.js.map +1 -0
  226. package/dist/esm/components/editor/AssetBrowser/AssetBrowserStore.js +176 -0
  227. package/dist/esm/components/editor/AssetBrowser/AssetBrowserStore.js.map +1 -0
  228. package/dist/esm/components/editor/AssetBrowser/AssetBrowserSurface.js +120 -0
  229. package/dist/esm/components/editor/AssetBrowser/AssetBrowserSurface.js.map +1 -0
  230. package/dist/esm/components/editor/AssetBrowser/AssetBrowserToolbar.js +134 -0
  231. package/dist/esm/components/editor/AssetBrowser/AssetBrowserToolbar.js.map +1 -0
  232. package/dist/esm/components/editor/AssetBrowser/assetBrowserFilter.js +90 -0
  233. package/dist/esm/components/editor/AssetBrowser/assetBrowserFilter.js.map +1 -0
  234. package/dist/esm/components/editor/AssetBrowser/assetBrowserFormat.js +32 -0
  235. package/dist/esm/components/editor/AssetBrowser/assetBrowserFormat.js.map +1 -0
  236. package/dist/esm/components/editor/AssetBrowser/assetBrowserGeometry.js +70 -0
  237. package/dist/esm/components/editor/AssetBrowser/assetBrowserGeometry.js.map +1 -0
  238. package/dist/esm/components/editor/AssetBrowser/assetBrowserKeyboard.js +62 -0
  239. package/dist/esm/components/editor/AssetBrowser/assetBrowserKeyboard.js.map +1 -0
  240. package/dist/esm/components/editor/AssetBrowser/assetBrowserLabels.js +52 -0
  241. package/dist/esm/components/editor/AssetBrowser/assetBrowserLabels.js.map +1 -0
  242. package/dist/esm/components/editor/AssetBrowser/slots.js +18 -0
  243. package/dist/esm/components/editor/AssetBrowser/slots.js.map +1 -0
  244. package/dist/esm/components/editor/AssetBrowser/useAssetBrowserAnnouncement.js +19 -0
  245. package/dist/esm/components/editor/AssetBrowser/useAssetBrowserAnnouncement.js.map +1 -0
  246. package/dist/esm/components/editor/AssetBrowser/useAssetBrowserHandle.js +70 -0
  247. package/dist/esm/components/editor/AssetBrowser/useAssetBrowserHandle.js.map +1 -0
  248. package/dist/esm/components/editor/AssetBrowser/useAssetBrowserViewState.js +108 -0
  249. package/dist/esm/components/editor/AssetBrowser/useAssetBrowserViewState.js.map +1 -0
  250. package/dist/esm/components/editor/AssetBrowser/useAssetDnd.js +192 -0
  251. package/dist/esm/components/editor/AssetBrowser/useAssetDnd.js.map +1 -0
  252. package/dist/esm/components/editor/AssetBrowser/useAssetGridKeyboardNav.js +91 -0
  253. package/dist/esm/components/editor/AssetBrowser/useAssetGridKeyboardNav.js.map +1 -0
  254. package/dist/esm/components/editor/AssetBrowser/useAssetGridVirtualizer.js +91 -0
  255. package/dist/esm/components/editor/AssetBrowser/useAssetGridVirtualizer.js.map +1 -0
  256. package/dist/esm/components/editor/AssetBrowser/useAssetMarqueeGesture.js +128 -0
  257. package/dist/esm/components/editor/AssetBrowser/useAssetMarqueeGesture.js.map +1 -0
  258. package/dist/esm/components/editor/AssetBrowser/useAssetMutationKeyboard.js +72 -0
  259. package/dist/esm/components/editor/AssetBrowser/useAssetMutationKeyboard.js.map +1 -0
  260. package/dist/esm/components/editor/AssetBrowser/useAssetMutations.js +141 -0
  261. package/dist/esm/components/editor/AssetBrowser/useAssetMutations.js.map +1 -0
  262. package/dist/esm/components/editor/AssetBrowser/useAssetNavigation.js +113 -0
  263. package/dist/esm/components/editor/AssetBrowser/useAssetNavigation.js.map +1 -0
  264. package/dist/esm/components/editor/AssetBrowser/useAssetSelectionController.js +174 -0
  265. package/dist/esm/components/editor/AssetBrowser/useAssetSelectionController.js.map +1 -0
  266. package/dist/esm/components/editor/ChatPanel/ChatActionBar.js.map +1 -1
  267. package/dist/esm/components/editor/ChatPanel/ChatAttachment.js +8 -2
  268. package/dist/esm/components/editor/ChatPanel/ChatAttachment.js.map +1 -1
  269. package/dist/esm/components/editor/ChatPanel/ChatBubble.js.map +1 -1
  270. package/dist/esm/components/editor/ChatPanel/ChatCodeBlock.js +20 -4
  271. package/dist/esm/components/editor/ChatPanel/ChatCodeBlock.js.map +1 -1
  272. package/dist/esm/components/editor/ChatPanel/ChatContextChip.js +1 -1
  273. package/dist/esm/components/editor/ChatPanel/ChatContextChip.js.map +1 -1
  274. package/dist/esm/components/editor/ChatPanel/ChatEmptyState.js +3 -1
  275. package/dist/esm/components/editor/ChatPanel/ChatEmptyState.js.map +1 -1
  276. package/dist/esm/components/editor/ChatPanel/ChatIcons.js.map +1 -1
  277. package/dist/esm/components/editor/ChatPanel/ChatInput.js +10 -3
  278. package/dist/esm/components/editor/ChatPanel/ChatInput.js.map +1 -1
  279. package/dist/esm/components/editor/ChatPanel/ChatInputToolbar.js.map +1 -1
  280. package/dist/esm/components/editor/ChatPanel/ChatMarkdownRenderer.js +1 -1
  281. package/dist/esm/components/editor/ChatPanel/ChatMarkdownRenderer.js.map +1 -1
  282. package/dist/esm/components/editor/ChatPanel/ChatMessage.js +10 -3
  283. package/dist/esm/components/editor/ChatPanel/ChatMessage.js.map +1 -1
  284. package/dist/esm/components/editor/ChatPanel/ChatMessageList.js +5 -3
  285. package/dist/esm/components/editor/ChatPanel/ChatMessageList.js.map +1 -1
  286. package/dist/esm/components/editor/ChatPanel/ChatPanel.js.map +1 -1
  287. package/dist/esm/components/editor/ChatPanel/ChatToolCall.js +1 -1
  288. package/dist/esm/components/editor/ChatPanel/ChatToolCall.js.map +1 -1
  289. package/dist/esm/components/editor/ChatPanel/ChatTypingIndicator.js.map +1 -1
  290. package/dist/esm/components/editor/ChatPanel/useChatInput.js.map +1 -1
  291. package/dist/esm/components/editor/ChatPanel/useChatMessages.js +7 -4
  292. package/dist/esm/components/editor/ChatPanel/useChatMessages.js.map +1 -1
  293. package/dist/esm/components/editor/ChatPanel/useChatScroll.js +6 -1
  294. package/dist/esm/components/editor/ChatPanel/useChatScroll.js.map +1 -1
  295. package/dist/esm/components/editor/Minimap/Minimap.css.js +18 -0
  296. package/dist/esm/components/editor/Minimap/Minimap.css.js.map +1 -0
  297. package/dist/esm/components/editor/Minimap/Minimap.js +257 -0
  298. package/dist/esm/components/editor/Minimap/Minimap.js.map +1 -0
  299. package/dist/esm/components/editor/Minimap/Minimap.types.js +11 -0
  300. package/dist/esm/components/editor/Minimap/Minimap.types.js.map +1 -0
  301. package/dist/esm/components/editor/Minimap/MinimapContext.js +48 -0
  302. package/dist/esm/components/editor/Minimap/MinimapContext.js.map +1 -0
  303. package/dist/esm/components/editor/Minimap/MinimapCorner.js +16 -0
  304. package/dist/esm/components/editor/Minimap/MinimapCorner.js.map +1 -0
  305. package/dist/esm/components/editor/Minimap/MinimapFooter.js +16 -0
  306. package/dist/esm/components/editor/Minimap/MinimapFooter.js.map +1 -0
  307. package/dist/esm/components/editor/Minimap/MinimapStore.js +166 -0
  308. package/dist/esm/components/editor/Minimap/MinimapStore.js.map +1 -0
  309. package/dist/esm/components/editor/Minimap/MinimapTitle.js +16 -0
  310. package/dist/esm/components/editor/Minimap/MinimapTitle.js.map +1 -0
  311. package/dist/esm/components/editor/Minimap/ViewportMinimap.js +69 -0
  312. package/dist/esm/components/editor/Minimap/ViewportMinimap.js.map +1 -0
  313. package/dist/esm/components/editor/Minimap/computeBoundsFromItems.js +65 -0
  314. package/dist/esm/components/editor/Minimap/computeBoundsFromItems.js.map +1 -0
  315. package/dist/esm/components/editor/Minimap/index.js +15 -0
  316. package/dist/esm/components/editor/Minimap/index.js.map +1 -0
  317. package/dist/esm/components/editor/Minimap/minimapCoords.js +105 -0
  318. package/dist/esm/components/editor/Minimap/minimapCoords.js.map +1 -0
  319. package/dist/esm/components/editor/Minimap/minimapDrawing.js +93 -0
  320. package/dist/esm/components/editor/Minimap/minimapDrawing.js.map +1 -0
  321. package/dist/esm/components/editor/Minimap/minimapHitTest.js +59 -0
  322. package/dist/esm/components/editor/Minimap/minimapHitTest.js.map +1 -0
  323. package/dist/esm/components/editor/Minimap/useMinimapGestures.js +299 -0
  324. package/dist/esm/components/editor/Minimap/useMinimapGestures.js.map +1 -0
  325. package/dist/esm/components/editor/NodeGraph/NodeGraph.css.js +36 -0
  326. package/dist/esm/components/editor/NodeGraph/NodeGraph.css.js.map +1 -0
  327. package/dist/esm/components/editor/NodeGraph/NodeGraph.js +627 -0
  328. package/dist/esm/components/editor/NodeGraph/NodeGraph.js.map +1 -0
  329. package/dist/esm/components/editor/NodeGraph/NodeGraph.types.js +10 -0
  330. package/dist/esm/components/editor/NodeGraph/NodeGraph.types.js.map +1 -0
  331. package/dist/esm/components/editor/NodeGraph/NodeGraphContext.js +54 -0
  332. package/dist/esm/components/editor/NodeGraph/NodeGraphContext.js.map +1 -0
  333. package/dist/esm/components/editor/NodeGraph/NodeGraphEdgeLabels.js +137 -0
  334. package/dist/esm/components/editor/NodeGraph/NodeGraphEdgeLabels.js.map +1 -0
  335. package/dist/esm/components/editor/NodeGraph/NodeGraphGroup.js +211 -0
  336. package/dist/esm/components/editor/NodeGraph/NodeGraphGroup.js.map +1 -0
  337. package/dist/esm/components/editor/NodeGraph/NodeGraphMinimap.js +122 -0
  338. package/dist/esm/components/editor/NodeGraph/NodeGraphMinimap.js.map +1 -0
  339. package/dist/esm/components/editor/NodeGraph/NodeGraphNode.js +170 -0
  340. package/dist/esm/components/editor/NodeGraph/NodeGraphNode.js.map +1 -0
  341. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeContext.js +21 -0
  342. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeContext.js.map +1 -0
  343. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeParts.js +56 -0
  344. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeParts.js.map +1 -0
  345. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeSection.js +59 -0
  346. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeSection.js.map +1 -0
  347. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeSectionContext.js +17 -0
  348. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeSectionContext.js.map +1 -0
  349. package/dist/esm/components/editor/NodeGraph/NodeGraphPin.js +35 -0
  350. package/dist/esm/components/editor/NodeGraph/NodeGraphPin.js.map +1 -0
  351. package/dist/esm/components/editor/NodeGraph/NodeGraphPort.js +191 -0
  352. package/dist/esm/components/editor/NodeGraph/NodeGraphPort.js.map +1 -0
  353. package/dist/esm/components/editor/NodeGraph/NodeGraphPortVisual.js +46 -0
  354. package/dist/esm/components/editor/NodeGraph/NodeGraphPortVisual.js.map +1 -0
  355. package/dist/esm/components/editor/NodeGraph/NodeGraphSlots.js +50 -0
  356. package/dist/esm/components/editor/NodeGraph/NodeGraphSlots.js.map +1 -0
  357. package/dist/esm/components/editor/NodeGraph/NodeGraphSpawnPalette.js +70 -0
  358. package/dist/esm/components/editor/NodeGraph/NodeGraphSpawnPalette.js.map +1 -0
  359. package/dist/esm/components/editor/NodeGraph/NodeGraphStore.js +543 -0
  360. package/dist/esm/components/editor/NodeGraph/NodeGraphStore.js.map +1 -0
  361. package/dist/esm/components/editor/NodeGraph/NodeGraphToolbar.js +100 -0
  362. package/dist/esm/components/editor/NodeGraph/NodeGraphToolbar.js.map +1 -0
  363. package/dist/esm/components/editor/NodeGraph/createTypeMatchValidator.js +37 -0
  364. package/dist/esm/components/editor/NodeGraph/createTypeMatchValidator.js.map +1 -0
  365. package/dist/esm/components/editor/NodeGraph/nodeGraphActions.js +53 -0
  366. package/dist/esm/components/editor/NodeGraph/nodeGraphActions.js.map +1 -0
  367. package/dist/esm/components/editor/NodeGraph/nodeGraphDrawing.js +461 -0
  368. package/dist/esm/components/editor/NodeGraph/nodeGraphDrawing.js.map +1 -0
  369. package/dist/esm/components/editor/NodeGraph/nodeGraphIds.js +31 -0
  370. package/dist/esm/components/editor/NodeGraph/nodeGraphIds.js.map +1 -0
  371. package/dist/esm/components/editor/NodeGraph/nodeGraphMath.js +350 -0
  372. package/dist/esm/components/editor/NodeGraph/nodeGraphMath.js.map +1 -0
  373. package/dist/esm/components/editor/NodeGraph/sortSlots.js +69 -0
  374. package/dist/esm/components/editor/NodeGraph/sortSlots.js.map +1 -0
  375. package/dist/esm/components/editor/NodeGraph/useDragGesture.js +63 -0
  376. package/dist/esm/components/editor/NodeGraph/useDragGesture.js.map +1 -0
  377. package/dist/esm/components/editor/NodeGraph/useNodeGraph.js +207 -0
  378. package/dist/esm/components/editor/NodeGraph/useNodeGraph.js.map +1 -0
  379. package/dist/esm/components/editor/NodeGraph/useNodeGraphConnection.js +334 -0
  380. package/dist/esm/components/editor/NodeGraph/useNodeGraphConnection.js.map +1 -0
  381. package/dist/esm/components/editor/NodeGraph/useNodeGraphEdgeInteraction.js +137 -0
  382. package/dist/esm/components/editor/NodeGraph/useNodeGraphEdgeInteraction.js.map +1 -0
  383. package/dist/esm/components/editor/NodeGraph/useNodeGraphGroupDrag.js +392 -0
  384. package/dist/esm/components/editor/NodeGraph/useNodeGraphGroupDrag.js.map +1 -0
  385. package/dist/esm/components/editor/NodeGraph/useNodeGraphKeyboard.js +164 -0
  386. package/dist/esm/components/editor/NodeGraph/useNodeGraphKeyboard.js.map +1 -0
  387. package/dist/esm/components/editor/NodeGraph/useNodeGraphNodeDrag.js +234 -0
  388. package/dist/esm/components/editor/NodeGraph/useNodeGraphNodeDrag.js.map +1 -0
  389. package/dist/esm/components/editor/NodeGraph/useStoreSlice.js +49 -0
  390. package/dist/esm/components/editor/NodeGraph/useStoreSlice.js.map +1 -0
  391. package/dist/esm/components/editor/PropertyInspector/PropertyGroup.js +1 -1
  392. package/dist/esm/components/editor/PropertyInspector/PropertyGroup.js.map +1 -1
  393. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.css.js +4 -3
  394. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.css.js.map +1 -1
  395. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.js +12 -7
  396. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.js.map +1 -1
  397. package/dist/esm/components/editor/PropertyInspector/PropertyRow.css.js +7 -6
  398. package/dist/esm/components/editor/PropertyInspector/PropertyRow.css.js.map +1 -1
  399. package/dist/esm/components/editor/PropertyInspector/PropertyRow.js +21 -5
  400. package/dist/esm/components/editor/PropertyInspector/PropertyRow.js.map +1 -1
  401. package/dist/esm/components/editor/PropertyInspector/PropertySection.css.js +11 -10
  402. package/dist/esm/components/editor/PropertyInspector/PropertySection.css.js.map +1 -1
  403. package/dist/esm/components/editor/PropertyInspector/PropertySection.js +32 -11
  404. package/dist/esm/components/editor/PropertyInspector/PropertySection.js.map +1 -1
  405. package/dist/esm/components/editor/PropertyInspector/usePropertyUndo.js.map +1 -1
  406. package/dist/esm/components/editor/Timeline/Timeline.css.js +23 -0
  407. package/dist/esm/components/editor/Timeline/Timeline.css.js.map +1 -0
  408. package/dist/esm/components/editor/Timeline/Timeline.js +450 -0
  409. package/dist/esm/components/editor/Timeline/Timeline.js.map +1 -0
  410. package/dist/esm/components/editor/Timeline/Timeline.types.js +10 -0
  411. package/dist/esm/components/editor/Timeline/Timeline.types.js.map +1 -0
  412. package/dist/esm/components/editor/Timeline/TimelineContext.js +69 -0
  413. package/dist/esm/components/editor/Timeline/TimelineContext.js.map +1 -0
  414. package/dist/esm/components/editor/Timeline/TimelineFooter.js +16 -0
  415. package/dist/esm/components/editor/Timeline/TimelineFooter.js.map +1 -0
  416. package/dist/esm/components/editor/Timeline/TimelineMinimap.js +280 -0
  417. package/dist/esm/components/editor/Timeline/TimelineMinimap.js.map +1 -0
  418. package/dist/esm/components/editor/Timeline/TimelineStore.js +289 -0
  419. package/dist/esm/components/editor/Timeline/TimelineStore.js.map +1 -0
  420. package/dist/esm/components/editor/Timeline/TimelineToolbar.js +15 -0
  421. package/dist/esm/components/editor/Timeline/TimelineToolbar.js.map +1 -0
  422. package/dist/esm/components/editor/Timeline/TimelineTrackHeaders.js +142 -0
  423. package/dist/esm/components/editor/Timeline/TimelineTrackHeaders.js.map +1 -0
  424. package/dist/esm/components/editor/Timeline/TimelineTrackScale.js +18 -0
  425. package/dist/esm/components/editor/Timeline/TimelineTrackScale.js.map +1 -0
  426. package/dist/esm/components/editor/Timeline/index.js +18 -0
  427. package/dist/esm/components/editor/Timeline/index.js.map +1 -0
  428. package/dist/esm/components/editor/Timeline/timelineCoords.js +118 -0
  429. package/dist/esm/components/editor/Timeline/timelineCoords.js.map +1 -0
  430. package/dist/esm/components/editor/Timeline/timelineDrawing.js +390 -0
  431. package/dist/esm/components/editor/Timeline/timelineDrawing.js.map +1 -0
  432. package/dist/esm/components/editor/Timeline/timelineEdits.js +323 -0
  433. package/dist/esm/components/editor/Timeline/timelineEdits.js.map +1 -0
  434. package/dist/esm/components/editor/Timeline/timelineHitTest.js +153 -0
  435. package/dist/esm/components/editor/Timeline/timelineHitTest.js.map +1 -0
  436. package/dist/esm/components/editor/Timeline/timelineLayout.js +39 -0
  437. package/dist/esm/components/editor/Timeline/timelineLayout.js.map +1 -0
  438. package/dist/esm/components/editor/Timeline/timelineSelection.js +0 -0
  439. package/dist/esm/components/editor/Timeline/timelineSelection.js.map +1 -0
  440. package/dist/esm/components/editor/Timeline/useTimelineDraw.js +156 -0
  441. package/dist/esm/components/editor/Timeline/useTimelineDraw.js.map +1 -0
  442. package/dist/esm/components/editor/Timeline/useTimelineGestures.js +587 -0
  443. package/dist/esm/components/editor/Timeline/useTimelineGestures.js.map +1 -0
  444. package/dist/esm/components/editor/Timeline/useTimelinePlayback.js +85 -0
  445. package/dist/esm/components/editor/Timeline/useTimelinePlayback.js.map +1 -0
  446. package/dist/esm/components/editor/TransformControl/TransformControl.js +4 -4
  447. package/dist/esm/components/editor/TransformControl/TransformControl.js.map +1 -1
  448. package/dist/esm/components/editor/ViewportGizmo/ViewportGizmo.js +8 -4
  449. package/dist/esm/components/editor/ViewportGizmo/ViewportGizmo.js.map +1 -1
  450. package/dist/esm/components/editor/ViewportGizmo/gizmoMath.js +6 -2
  451. package/dist/esm/components/editor/ViewportGizmo/gizmoMath.js.map +1 -1
  452. package/dist/esm/components/editor/ViewportGizmo/useGizmoInteraction.js +8 -6
  453. package/dist/esm/components/editor/ViewportGizmo/useGizmoInteraction.js.map +1 -1
  454. package/dist/esm/components/editor/ViewportGizmo/useGizmoRenderer.js +1 -2
  455. package/dist/esm/components/editor/ViewportGizmo/useGizmoRenderer.js.map +1 -1
  456. package/dist/esm/components/feedback/Alert/Alert.js +8 -8
  457. package/dist/esm/components/feedback/Alert/Alert.js.map +1 -1
  458. package/dist/esm/components/feedback/Alert/AlertActions.js.map +1 -1
  459. package/dist/esm/components/feedback/Alert/AlertDescription.js.map +1 -1
  460. package/dist/esm/components/feedback/Alert/AlertTitle.js.map +1 -1
  461. package/dist/esm/components/feedback/CommandPalette/CommandPalette.js +32 -22
  462. package/dist/esm/components/feedback/CommandPalette/CommandPalette.js.map +1 -1
  463. package/dist/esm/components/feedback/CommandPalette/fuzzySearch.js.map +1 -1
  464. package/dist/esm/components/feedback/CommandPalette/useRecentItems.js +3 -1
  465. package/dist/esm/components/feedback/CommandPalette/useRecentItems.js.map +1 -1
  466. package/dist/esm/components/feedback/Dialog/Dialog.js +6 -3
  467. package/dist/esm/components/feedback/Dialog/Dialog.js.map +1 -1
  468. package/dist/esm/components/feedback/Dialog/DialogBody.js.map +1 -1
  469. package/dist/esm/components/feedback/Dialog/DialogClose.js.map +1 -1
  470. package/dist/esm/components/feedback/Dialog/DialogFooter.js.map +1 -1
  471. package/dist/esm/components/feedback/Dialog/DialogHeader.js +1 -1
  472. package/dist/esm/components/feedback/Dialog/DialogHeader.js.map +1 -1
  473. package/dist/esm/components/feedback/Dialog/useDialogAnimation.js +10 -2
  474. package/dist/esm/components/feedback/Dialog/useDialogAnimation.js.map +1 -1
  475. package/dist/esm/components/feedback/Drawer/Drawer.js +4 -1
  476. package/dist/esm/components/feedback/Drawer/Drawer.js.map +1 -1
  477. package/dist/esm/components/feedback/Drawer/useDrawerAnimation.js +4 -0
  478. package/dist/esm/components/feedback/Drawer/useDrawerAnimation.js.map +1 -1
  479. package/dist/esm/components/feedback/EmptyState/EmptyState.js +1 -1
  480. package/dist/esm/components/feedback/EmptyState/EmptyState.js.map +1 -1
  481. package/dist/esm/components/feedback/LogView/LogView.css.js +35 -0
  482. package/dist/esm/components/feedback/LogView/LogView.css.js.map +1 -0
  483. package/dist/esm/components/feedback/LogView/LogView.js +297 -0
  484. package/dist/esm/components/feedback/LogView/LogView.js.map +1 -0
  485. package/dist/esm/components/feedback/LogView/LogViewBody.js +205 -0
  486. package/dist/esm/components/feedback/LogView/LogViewBody.js.map +1 -0
  487. package/dist/esm/components/feedback/LogView/LogViewContext.js +31 -0
  488. package/dist/esm/components/feedback/LogView/LogViewContext.js.map +1 -0
  489. package/dist/esm/components/feedback/LogView/LogViewParts.js +73 -0
  490. package/dist/esm/components/feedback/LogView/LogViewParts.js.map +1 -0
  491. package/dist/esm/components/feedback/LogView/LogViewStore.js +240 -0
  492. package/dist/esm/components/feedback/LogView/LogViewStore.js.map +1 -0
  493. package/dist/esm/components/feedback/LogView/logViewLabels.js +25 -0
  494. package/dist/esm/components/feedback/LogView/logViewLabels.js.map +1 -0
  495. package/dist/esm/components/feedback/LogView/logViewLevels.js +74 -0
  496. package/dist/esm/components/feedback/LogView/logViewLevels.js.map +1 -0
  497. package/dist/esm/components/feedback/LogView/logViewUtils.js +128 -0
  498. package/dist/esm/components/feedback/LogView/logViewUtils.js.map +1 -0
  499. package/dist/esm/components/feedback/LogView/useFollowTail.js +95 -0
  500. package/dist/esm/components/feedback/LogView/useFollowTail.js.map +1 -0
  501. package/dist/esm/components/feedback/LogView/useLogSelection.js +113 -0
  502. package/dist/esm/components/feedback/LogView/useLogSelection.js.map +1 -0
  503. package/dist/esm/components/feedback/ProgressBar/CircularProgress.js +1 -1
  504. package/dist/esm/components/feedback/ProgressBar/CircularProgress.js.map +1 -1
  505. package/dist/esm/components/feedback/ProgressBar/ProgressBar.js +1 -1
  506. package/dist/esm/components/feedback/ProgressBar/ProgressBar.js.map +1 -1
  507. package/dist/esm/components/feedback/Skeleton/Skeleton.js +1 -1
  508. package/dist/esm/components/feedback/Skeleton/Skeleton.js.map +1 -1
  509. package/dist/esm/components/feedback/Skeleton/SkeletonGroup.js +1 -1
  510. package/dist/esm/components/feedback/Skeleton/SkeletonGroup.js.map +1 -1
  511. package/dist/esm/components/feedback/Skeleton/SkeletonLayout.js +1 -1
  512. package/dist/esm/components/feedback/Skeleton/SkeletonLayout.js.map +1 -1
  513. package/dist/esm/components/feedback/Spinner/Spinner.js +1 -1
  514. package/dist/esm/components/feedback/Spinner/Spinner.js.map +1 -1
  515. package/dist/esm/components/feedback/Stat/Stat.js.map +1 -1
  516. package/dist/esm/components/feedback/Toast/ToastContainer.js +1 -1
  517. package/dist/esm/components/feedback/Toast/ToastContainer.js.map +1 -1
  518. package/dist/esm/components/feedback/Toast/ToastItem.js +7 -3
  519. package/dist/esm/components/feedback/Toast/ToastItem.js.map +1 -1
  520. package/dist/esm/components/feedback/Toast/ToastProvider.js.map +1 -1
  521. package/dist/esm/components/feedback/Toast/useToast.js.map +1 -1
  522. package/dist/esm/components/form/FormHelperText.js.map +1 -1
  523. package/dist/esm/components/form/FormLabel.js.map +1 -1
  524. package/dist/esm/components/form/InputWrapper.js.map +1 -1
  525. package/dist/esm/components/layout/Accordion/Accordion.js +1 -1
  526. package/dist/esm/components/layout/Accordion/Accordion.js.map +1 -1
  527. package/dist/esm/components/layout/Accordion/AccordionContent.js +1 -1
  528. package/dist/esm/components/layout/Accordion/AccordionContent.js.map +1 -1
  529. package/dist/esm/components/layout/Accordion/AccordionItem.js +1 -1
  530. package/dist/esm/components/layout/Accordion/AccordionItem.js.map +1 -1
  531. package/dist/esm/components/layout/Accordion/AccordionTrigger.js +7 -2
  532. package/dist/esm/components/layout/Accordion/AccordionTrigger.js.map +1 -1
  533. package/dist/esm/components/layout/Card/Card.js +2 -2
  534. package/dist/esm/components/layout/Card/Card.js.map +1 -1
  535. package/dist/esm/components/layout/Divider/Divider.js.map +1 -1
  536. package/dist/esm/components/layout/Flex/Flex.js +1 -1
  537. package/dist/esm/components/layout/Flex/Flex.js.map +1 -1
  538. package/dist/esm/components/layout/Grid/Grid.js +1 -1
  539. package/dist/esm/components/layout/Grid/Grid.js.map +1 -1
  540. package/dist/esm/components/layout/ListItem/ListItem.js +1 -1
  541. package/dist/esm/components/layout/ListItem/ListItem.js.map +1 -1
  542. package/dist/esm/components/layout/PageHeader/PageHeader.js.map +1 -1
  543. package/dist/esm/components/layout/PanelSurface/PanelSurface.js +3 -3
  544. package/dist/esm/components/layout/PanelSurface/PanelSurface.js.map +1 -1
  545. package/dist/esm/components/layout/ScrollArea/ScrollArea.js +91 -23
  546. package/dist/esm/components/layout/ScrollArea/ScrollArea.js.map +1 -1
  547. package/dist/esm/components/layout/Spacer/Spacer.js.map +1 -1
  548. package/dist/esm/components/layout/SplitPane/SplitPane.js +29 -16
  549. package/dist/esm/components/layout/SplitPane/SplitPane.js.map +1 -1
  550. package/dist/esm/components/layout/SplitPane/SplitPanePanel.js.map +1 -1
  551. package/dist/esm/components/layout/Stack/Stack.js +1 -1
  552. package/dist/esm/components/layout/Stack/Stack.js.map +1 -1
  553. package/dist/esm/components/navigation/Breadcrumbs/BreadcrumbEllipsis.js +4 -0
  554. package/dist/esm/components/navigation/Breadcrumbs/BreadcrumbEllipsis.js.map +1 -1
  555. package/dist/esm/components/navigation/Breadcrumbs/BreadcrumbItem.js +6 -2
  556. package/dist/esm/components/navigation/Breadcrumbs/BreadcrumbItem.js.map +1 -1
  557. package/dist/esm/components/navigation/Breadcrumbs/BreadcrumbSeparator.js.map +1 -1
  558. package/dist/esm/components/navigation/Breadcrumbs/Breadcrumbs.js +13 -2
  559. package/dist/esm/components/navigation/Breadcrumbs/Breadcrumbs.js.map +1 -1
  560. package/dist/esm/components/navigation/ContextMenu/ContextMenu.js +45 -39
  561. package/dist/esm/components/navigation/ContextMenu/ContextMenu.js.map +1 -1
  562. package/dist/esm/components/navigation/Menu/Menu.css.js +9 -12
  563. package/dist/esm/components/navigation/Menu/Menu.css.js.map +1 -1
  564. package/dist/esm/components/navigation/Menu/Menu.js +97 -63
  565. package/dist/esm/components/navigation/Menu/Menu.js.map +1 -1
  566. package/dist/esm/components/navigation/Menu/MenuGapContext.js +19 -0
  567. package/dist/esm/components/navigation/Menu/MenuGapContext.js.map +1 -0
  568. package/dist/esm/components/navigation/Pagination/Pagination.js.map +1 -1
  569. package/dist/esm/components/navigation/Pagination/usePagination.js.map +1 -1
  570. package/dist/esm/components/navigation/PathBar/PathBar.css.js +6 -0
  571. package/dist/esm/components/navigation/PathBar/PathBar.css.js.map +1 -0
  572. package/dist/esm/components/navigation/PathBar/PathBar.js +184 -0
  573. package/dist/esm/components/navigation/PathBar/PathBar.js.map +1 -0
  574. package/dist/esm/components/navigation/PathBar/PathBarSiblingMenu.js +151 -0
  575. package/dist/esm/components/navigation/PathBar/PathBarSiblingMenu.js.map +1 -0
  576. package/dist/esm/components/navigation/PathBar/pathUtils.js +118 -0
  577. package/dist/esm/components/navigation/PathBar/pathUtils.js.map +1 -0
  578. package/dist/esm/components/navigation/SegmentedControl/SegmentedControl.js +16 -6
  579. package/dist/esm/components/navigation/SegmentedControl/SegmentedControl.js.map +1 -1
  580. package/dist/esm/components/navigation/SegmentedControl/SegmentedControlItem.js +1 -1
  581. package/dist/esm/components/navigation/SegmentedControl/SegmentedControlItem.js.map +1 -1
  582. package/dist/esm/components/navigation/Tabs/Tab.js +10 -3
  583. package/dist/esm/components/navigation/Tabs/Tab.js.map +1 -1
  584. package/dist/esm/components/navigation/Tabs/TabList.js +5 -2
  585. package/dist/esm/components/navigation/Tabs/TabList.js.map +1 -1
  586. package/dist/esm/components/navigation/Tabs/TabPanel.js +1 -1
  587. package/dist/esm/components/navigation/Tabs/TabPanel.js.map +1 -1
  588. package/dist/esm/components/navigation/Tabs/Tabs.js.map +1 -1
  589. package/dist/esm/components/primitives/Avatar/Avatar.js +11 -4
  590. package/dist/esm/components/primitives/Avatar/Avatar.js.map +1 -1
  591. package/dist/esm/components/primitives/Avatar/AvatarGroup.js +2 -2
  592. package/dist/esm/components/primitives/Avatar/AvatarGroup.js.map +1 -1
  593. package/dist/esm/components/primitives/Badge/Badge.js +10 -3
  594. package/dist/esm/components/primitives/Badge/Badge.js.map +1 -1
  595. package/dist/esm/components/primitives/Button/Button.js.map +1 -1
  596. package/dist/esm/components/primitives/Checkbox/Checkbox.js +6 -4
  597. package/dist/esm/components/primitives/Checkbox/Checkbox.js.map +1 -1
  598. package/dist/esm/components/primitives/Checkbox/CheckboxGroup.js +2 -2
  599. package/dist/esm/components/primitives/Checkbox/CheckboxGroup.js.map +1 -1
  600. package/dist/esm/components/primitives/Code/Code.js.map +1 -1
  601. package/dist/esm/components/primitives/Collapsible/Collapsible.js +2 -2
  602. package/dist/esm/components/primitives/Collapsible/Collapsible.js.map +1 -1
  603. package/dist/esm/components/primitives/HoverCard/HoverCard.js +5 -3
  604. package/dist/esm/components/primitives/HoverCard/HoverCard.js.map +1 -1
  605. package/dist/esm/components/primitives/Icon/Icon.js +1 -1
  606. package/dist/esm/components/primitives/Icon/Icon.js.map +1 -1
  607. package/dist/esm/components/primitives/IconButton/IconButton.js.map +1 -1
  608. package/dist/esm/components/primitives/Input/Input.js +1 -1
  609. package/dist/esm/components/primitives/Input/Input.js.map +1 -1
  610. package/dist/esm/components/primitives/Kbd/Kbd.js +1 -1
  611. package/dist/esm/components/primitives/Kbd/Kbd.js.map +1 -1
  612. package/dist/esm/components/primitives/Link/Link.js.map +1 -1
  613. package/dist/esm/components/primitives/Paper/Paper.js.map +1 -1
  614. package/dist/esm/components/primitives/Popover/Popover.js +1 -1
  615. package/dist/esm/components/primitives/Popover/Popover.js.map +1 -1
  616. package/dist/esm/components/primitives/Popover/PopoverClose.js +1 -1
  617. package/dist/esm/components/primitives/Popover/PopoverClose.js.map +1 -1
  618. package/dist/esm/components/primitives/Popover/PopoverContent.js +6 -4
  619. package/dist/esm/components/primitives/Popover/PopoverContent.js.map +1 -1
  620. package/dist/esm/components/primitives/Popover/PopoverTrigger.js.map +1 -1
  621. package/dist/esm/components/primitives/Radio/Radio.js +3 -3
  622. package/dist/esm/components/primitives/Radio/Radio.js.map +1 -1
  623. package/dist/esm/components/primitives/Radio/RadioGroup.js +2 -2
  624. package/dist/esm/components/primitives/Radio/RadioGroup.js.map +1 -1
  625. package/dist/esm/components/primitives/Switch/Switch.js +1 -1
  626. package/dist/esm/components/primitives/Switch/Switch.js.map +1 -1
  627. package/dist/esm/components/primitives/Text/Text.js.map +1 -1
  628. package/dist/esm/components/primitives/TextArea/TextArea.js +3 -4
  629. package/dist/esm/components/primitives/TextArea/TextArea.js.map +1 -1
  630. package/dist/esm/components/primitives/Tooltip/Arrow.js +1 -1
  631. package/dist/esm/components/primitives/Tooltip/Arrow.js.map +1 -1
  632. package/dist/esm/components/primitives/Tooltip/Tooltip.js +9 -7
  633. package/dist/esm/components/primitives/Tooltip/Tooltip.js.map +1 -1
  634. package/dist/esm/components/primitives/Tooltip/utils.js +1 -1
  635. package/dist/esm/components/primitives/Tooltip/utils.js.map +1 -1
  636. package/dist/esm/components/primitives/VisuallyHidden/VisuallyHidden.js.map +1 -1
  637. package/dist/esm/components/primitives/canvas/CanvasContainer.js +1 -1
  638. package/dist/esm/components/primitives/canvas/CanvasContainer.js.map +1 -1
  639. package/dist/esm/components/primitives/canvas/canvasCoords.js.map +1 -1
  640. package/dist/esm/components/primitives/canvas/canvasDrawing.js +1 -1
  641. package/dist/esm/components/primitives/canvas/canvasDrawing.js.map +1 -1
  642. package/dist/esm/components/primitives/canvas/canvasTheme.js.map +1 -1
  643. package/dist/esm/components/primitives/canvas/useCanvasRenderer.js +8 -2
  644. package/dist/esm/components/primitives/canvas/useCanvasRenderer.js.map +1 -1
  645. package/dist/esm/components/primitives/viewport/Viewport.css.js +12 -0
  646. package/dist/esm/components/primitives/viewport/Viewport.css.js.map +1 -0
  647. package/dist/esm/components/primitives/viewport/Viewport.js +189 -0
  648. package/dist/esm/components/primitives/viewport/Viewport.js.map +1 -0
  649. package/dist/esm/components/primitives/viewport/ViewportContext.js +47 -0
  650. package/dist/esm/components/primitives/viewport/ViewportContext.js.map +1 -0
  651. package/dist/esm/components/primitives/viewport/ViewportLayer.js +113 -0
  652. package/dist/esm/components/primitives/viewport/ViewportLayer.js.map +1 -0
  653. package/dist/esm/components/primitives/viewport/ViewportOverlay.js +47 -0
  654. package/dist/esm/components/primitives/viewport/ViewportOverlay.js.map +1 -0
  655. package/dist/esm/components/primitives/viewport/ViewportStore.js +210 -0
  656. package/dist/esm/components/primitives/viewport/ViewportStore.js.map +1 -0
  657. package/dist/esm/components/primitives/viewport/ViewportWorld.js +38 -0
  658. package/dist/esm/components/primitives/viewport/ViewportWorld.js.map +1 -0
  659. package/dist/esm/components/primitives/viewport/useViewportGestures.js +333 -0
  660. package/dist/esm/components/primitives/viewport/useViewportGestures.js.map +1 -0
  661. package/dist/esm/components/primitives/viewport/viewportCoords.js +37 -0
  662. package/dist/esm/components/primitives/viewport/viewportCoords.js.map +1 -0
  663. package/dist/esm/components/primitives/viewport/viewportMath.js +77 -0
  664. package/dist/esm/components/primitives/viewport/viewportMath.js.map +1 -0
  665. package/dist/esm/components/shell/AppShell/AppShell.js +1 -1
  666. package/dist/esm/components/shell/AppShell/AppShell.js.map +1 -1
  667. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.css.js +11 -10
  668. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.css.js.map +1 -1
  669. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.js +60 -24
  670. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.js.map +1 -1
  671. package/dist/esm/components/shell/MenuBar/MenuBar.js +23 -16
  672. package/dist/esm/components/shell/MenuBar/MenuBar.js.map +1 -1
  673. package/dist/esm/components/shell/StatusBar/StatusBar.js.map +1 -1
  674. package/dist/esm/components/shell/Toolbar/Toolbar.js +4 -3
  675. package/dist/esm/components/shell/Toolbar/Toolbar.js.map +1 -1
  676. package/dist/esm/context/KeyboardContext.js.map +1 -1
  677. package/dist/esm/hooks/useBreakpoint/useBreakpoint.js +1 -1
  678. package/dist/esm/hooks/useBreakpoint/useBreakpoint.js.map +1 -1
  679. package/dist/esm/hooks/useClickOutside/useClickOutside.js +9 -9
  680. package/dist/esm/hooks/useClickOutside/useClickOutside.js.map +1 -1
  681. package/dist/esm/hooks/useClipboard/useClipboard.js +4 -0
  682. package/dist/esm/hooks/useClipboard/useClipboard.js.map +1 -1
  683. package/dist/esm/hooks/useControlledState/useControlledState.js.map +1 -1
  684. package/dist/esm/hooks/useDebounced/useDebouncedCallback.js +11 -6
  685. package/dist/esm/hooks/useDebounced/useDebouncedCallback.js.map +1 -1
  686. package/dist/esm/hooks/useDebounced/useDebouncedValue.js +16 -4
  687. package/dist/esm/hooks/useDebounced/useDebouncedValue.js.map +1 -1
  688. package/dist/esm/hooks/useDisclosure/useDisclosure.js.map +1 -1
  689. package/dist/esm/hooks/useEventCallback/useEventCallback.js +49 -0
  690. package/dist/esm/hooks/useEventCallback/useEventCallback.js.map +1 -0
  691. package/dist/esm/hooks/useFocusTrap/useFocusTrap.js.map +1 -1
  692. package/dist/esm/hooks/useHotkey/useHotkey.js +7 -12
  693. package/dist/esm/hooks/useHotkey/useHotkey.js.map +1 -1
  694. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -0
  695. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js.map +1 -1
  696. package/dist/esm/hooks/useIsMounted/useIsMounted.js +43 -0
  697. package/dist/esm/hooks/useIsMounted/useIsMounted.js.map +1 -0
  698. package/dist/esm/hooks/useKeyboard/useKeyboard.js.map +1 -1
  699. package/dist/esm/hooks/useKeyboard/utils.js.map +1 -1
  700. package/dist/esm/hooks/useLatest/useLatest.js +31 -0
  701. package/dist/esm/hooks/useLatest/useLatest.js.map +1 -0
  702. package/dist/esm/hooks/useListboxNav/useListboxNav.js +29 -13
  703. package/dist/esm/hooks/useListboxNav/useListboxNav.js.map +1 -1
  704. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js +7 -1
  705. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js.map +1 -1
  706. package/dist/esm/hooks/useMergedRef/useMergedRef.js +6 -1
  707. package/dist/esm/hooks/useMergedRef/useMergedRef.js.map +1 -1
  708. package/dist/esm/hooks/useNavigationHistory/useNavigationHistory.js +146 -0
  709. package/dist/esm/hooks/useNavigationHistory/useNavigationHistory.js.map +1 -0
  710. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js +6 -8
  711. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js.map +1 -1
  712. package/dist/esm/hooks/useTheme/useTheme.js +6 -3
  713. package/dist/esm/hooks/useTheme/useTheme.js.map +1 -1
  714. package/dist/esm/hooks/useThrottledCallback/useThrottledCallback.js +9 -4
  715. package/dist/esm/hooks/useThrottledCallback/useThrottledCallback.js.map +1 -1
  716. package/dist/esm/index.js +63 -4
  717. package/dist/esm/index.js.map +1 -1
  718. package/dist/esm/node_modules/tslib/tslib.es6.js +37 -0
  719. package/dist/esm/node_modules/tslib/tslib.es6.js.map +1 -0
  720. package/dist/esm/styles.js +3 -0
  721. package/dist/esm/styles.js.map +1 -0
  722. package/dist/esm/theme/ThemeProvider.js +6 -4
  723. package/dist/esm/theme/ThemeProvider.js.map +1 -1
  724. package/dist/esm/theme/VanillaThemeProvider.js.map +1 -1
  725. package/dist/esm/theme/breakpoints.js.map +1 -1
  726. package/dist/esm/theme/contract.css.js +1 -1
  727. package/dist/esm/theme/createCustomTheme.js +2 -2
  728. package/dist/esm/theme/createCustomTheme.js.map +1 -1
  729. package/dist/esm/theme/createLightTheme.js.map +1 -1
  730. package/dist/esm/theme/darkTheme.css.js +2 -2
  731. package/dist/esm/theme/darkThemeValues.js +1 -1
  732. package/dist/esm/theme/darkThemeValues.js.map +1 -1
  733. package/dist/esm/theme/lightTheme.css.js +1 -1
  734. package/dist/esm/theme/lightThemeValues.js +1 -1
  735. package/dist/esm/theme/lightThemeValues.js.map +1 -1
  736. package/dist/esm/theme/themeContractData.js +4 -4
  737. package/dist/esm/theme/themeContractData.js.map +1 -1
  738. package/dist/esm/utils/cx.js.map +1 -1
  739. package/dist/esm/utils/devWarn.js +1 -1
  740. package/dist/esm/utils/devWarn.js.map +1 -1
  741. package/dist/esm/utils/mathExpression.js +1 -1
  742. package/dist/esm/utils/mathExpression.js.map +1 -1
  743. package/dist/esm/utils/mathUtils.js.map +1 -1
  744. package/dist/esm/utils/objects.js.map +1 -1
  745. package/dist/esm/utils/platform.js.map +1 -1
  746. package/dist/tokens/tokens.dark.css +1 -1
  747. package/dist/tokens/tokens.json +1 -1
  748. package/dist/tokens/tokens.light.css +1 -1
  749. package/dist/types/components/Icons/AddIcon.d.ts +1 -1
  750. package/dist/types/components/Icons/AiChatIcon.d.ts +1 -1
  751. package/dist/types/components/Icons/AiSparklesIcon.d.ts +1 -1
  752. package/dist/types/components/Icons/ArchiveIcon.d.ts +1 -1
  753. package/dist/types/components/Icons/ArrowDownIcon.d.ts +1 -1
  754. package/dist/types/components/Icons/ArrowLeftIcon.d.ts +1 -1
  755. package/dist/types/components/Icons/ArrowRightIcon.d.ts +1 -1
  756. package/dist/types/components/Icons/ArrowUpIcon.d.ts +1 -1
  757. package/dist/types/components/Icons/BookmarkIcon.d.ts +1 -1
  758. package/dist/types/components/Icons/BugIcon.d.ts +1 -1
  759. package/dist/types/components/Icons/BuildingIcon.d.ts +1 -1
  760. package/dist/types/components/Icons/CalendarIcon.d.ts +1 -1
  761. package/dist/types/components/Icons/CameraIcon.d.ts +34 -0
  762. package/dist/types/components/Icons/CheckIcon.d.ts +1 -1
  763. package/dist/types/components/Icons/ChevronDownIcon.d.ts +1 -1
  764. package/dist/types/components/Icons/ChevronLeftIcon.d.ts +1 -1
  765. package/dist/types/components/Icons/ChevronRightIcon.d.ts +1 -1
  766. package/dist/types/components/Icons/ChevronUpIcon.d.ts +1 -1
  767. package/dist/types/components/Icons/CircleIcon.d.ts +1 -1
  768. package/dist/types/components/Icons/ClockIcon.d.ts +1 -1
  769. package/dist/types/components/Icons/CloseIcon.d.ts +1 -1
  770. package/dist/types/components/Icons/CloudUploadIcon.d.ts +1 -1
  771. package/dist/types/components/Icons/CodeIcon.d.ts +1 -1
  772. package/dist/types/components/Icons/CopyIcon.d.ts +1 -1
  773. package/dist/types/components/Icons/CubeIcon.d.ts +34 -0
  774. package/dist/types/components/Icons/CutIcon.d.ts +1 -1
  775. package/dist/types/components/Icons/DotsHorizontalIcon.d.ts +1 -1
  776. package/dist/types/components/Icons/DotsVerticalIcon.d.ts +1 -1
  777. package/dist/types/components/Icons/DownloadIcon.d.ts +1 -1
  778. package/dist/types/components/Icons/EditIcon.d.ts +1 -1
  779. package/dist/types/components/Icons/ErrorIcon.d.ts +1 -1
  780. package/dist/types/components/Icons/ExternalLinkIcon.d.ts +1 -1
  781. package/dist/types/components/Icons/EyeDropperIcon.d.ts +1 -1
  782. package/dist/types/components/Icons/EyeIcon.d.ts +1 -1
  783. package/dist/types/components/Icons/FileTextIcon.d.ts +1 -1
  784. package/dist/types/components/Icons/FilterIcon.d.ts +1 -1
  785. package/dist/types/components/Icons/FirstIcon.d.ts +1 -1
  786. package/dist/types/components/Icons/FolderCogIcon.d.ts +1 -1
  787. package/dist/types/components/Icons/FolderIcon.d.ts +1 -1
  788. package/dist/types/components/Icons/FolderOpenIcon.d.ts +1 -1
  789. package/dist/types/components/Icons/FullscreenIcon.d.ts +1 -1
  790. package/dist/types/components/Icons/GitBranchIcon.d.ts +1 -1
  791. package/dist/types/components/Icons/GridIcon.d.ts +1 -1
  792. package/dist/types/components/Icons/HeartIcon.d.ts +1 -1
  793. package/dist/types/components/Icons/HelpIcon.d.ts +1 -1
  794. package/dist/types/components/Icons/HomeIcon.d.ts +1 -1
  795. package/dist/types/components/Icons/ImageIcon.d.ts +34 -0
  796. package/dist/types/components/Icons/InfoIcon.d.ts +1 -1
  797. package/dist/types/components/Icons/LastIcon.d.ts +1 -1
  798. package/dist/types/components/Icons/LinkIcon.d.ts +1 -1
  799. package/dist/types/components/Icons/ListIcon.d.ts +1 -1
  800. package/dist/types/components/Icons/LockIcon.d.ts +1 -1
  801. package/dist/types/components/Icons/MaximizeIcon.d.ts +1 -1
  802. package/dist/types/components/Icons/MenuIcon.d.ts +1 -1
  803. package/dist/types/components/Icons/MinimizeIcon.d.ts +1 -1
  804. package/dist/types/components/Icons/MinusIcon.d.ts +1 -1
  805. package/dist/types/components/Icons/OrbitIcon.d.ts +34 -0
  806. package/dist/types/components/Icons/PasteIcon.d.ts +1 -1
  807. package/dist/types/components/Icons/PauseIcon.d.ts +1 -1
  808. package/dist/types/components/Icons/PinIcon.d.ts +1 -1
  809. package/dist/types/components/Icons/PlayIcon.d.ts +1 -1
  810. package/dist/types/components/Icons/RedoIcon.d.ts +1 -1
  811. package/dist/types/components/Icons/RefreshIcon.d.ts +1 -1
  812. package/dist/types/components/Icons/RobotIcon.d.ts +1 -1
  813. package/dist/types/components/Icons/RotateIcon.d.ts +35 -0
  814. package/dist/types/components/Icons/SaveIcon.d.ts +1 -1
  815. package/dist/types/components/Icons/SearchIcon.d.ts +1 -1
  816. package/dist/types/components/Icons/SendIcon.d.ts +1 -1
  817. package/dist/types/components/Icons/SettingsIcon.d.ts +1 -1
  818. package/dist/types/components/Icons/SortIcon.d.ts +1 -1
  819. package/dist/types/components/Icons/SpinIcon.d.ts +35 -0
  820. package/dist/types/components/Icons/StarIcon.d.ts +1 -1
  821. package/dist/types/components/Icons/StopIcon.d.ts +1 -1
  822. package/dist/types/components/Icons/SuccessIcon.d.ts +1 -1
  823. package/dist/types/components/Icons/TagIcon.d.ts +1 -1
  824. package/dist/types/components/Icons/TangentAlignedIcon.d.ts +1 -1
  825. package/dist/types/components/Icons/TangentAutoIcon.d.ts +1 -1
  826. package/dist/types/components/Icons/TangentFreeIcon.d.ts +1 -1
  827. package/dist/types/components/Icons/TangentLinearIcon.d.ts +1 -1
  828. package/dist/types/components/Icons/TangentMirroredIcon.d.ts +1 -1
  829. package/dist/types/components/Icons/TangentStepIcon.d.ts +1 -1
  830. package/dist/types/components/Icons/TerminalIcon.d.ts +1 -1
  831. package/dist/types/components/Icons/TrashIcon.d.ts +1 -1
  832. package/dist/types/components/Icons/UndoIcon.d.ts +1 -1
  833. package/dist/types/components/Icons/UnlinkIcon.d.ts +1 -1
  834. package/dist/types/components/Icons/UnlockIcon.d.ts +1 -1
  835. package/dist/types/components/Icons/UploadIcon.d.ts +1 -1
  836. package/dist/types/components/Icons/UserIcon.d.ts +1 -1
  837. package/dist/types/components/Icons/UsersIcon.d.ts +1 -1
  838. package/dist/types/components/Icons/WarningIcon.d.ts +1 -1
  839. package/dist/types/components/Icons/ZoomFitIcon.d.ts +35 -0
  840. package/dist/types/components/Icons/ZoomInIcon.d.ts +1 -1
  841. package/dist/types/components/Icons/ZoomOutIcon.d.ts +1 -1
  842. package/dist/types/components/controls/CartesianPicker/CartesianPicker.types.d.ts +3 -3
  843. package/dist/types/components/controls/ColorPicker/ColorPicker.types.d.ts +2 -2
  844. package/dist/types/components/controls/ColorPicker/EyeDropper.d.ts +1 -1
  845. package/dist/types/components/controls/Combobox/Combobox.types.d.ts +1 -1
  846. package/dist/types/components/controls/CurveEditor/CurveEditor.types.d.ts +8 -58
  847. package/dist/types/components/controls/CurveEditor/curveUtils.d.ts +2 -1
  848. package/dist/types/components/controls/FileTree/FileTree.d.ts +34 -0
  849. package/dist/types/components/controls/FileTree/FileTree.types.d.ts +133 -0
  850. package/dist/types/components/controls/FileTree/fileTreeIcons.d.ts +29 -0
  851. package/dist/types/components/controls/FileTree/fileTreeLabels.d.ts +19 -0
  852. package/dist/types/components/controls/FileUploader/FileUploader.types.d.ts +2 -2
  853. package/dist/types/components/controls/MultiSelect/MultiSelect.types.d.ts +1 -1
  854. package/dist/types/components/controls/NumberInput/NumberInput.d.ts +2 -2
  855. package/dist/types/components/controls/Select/Select.d.ts +1 -1
  856. package/dist/types/components/controls/Select/Select.types.d.ts +45 -11
  857. package/dist/types/components/controls/Slider/Slider.d.ts +1 -1
  858. package/dist/types/components/controls/TagInput/TagInput.types.d.ts +2 -2
  859. package/dist/types/components/controls/TreeView/TreeView.d.ts +1 -1
  860. package/dist/types/components/controls/TreeView/TreeView.types.d.ts +24 -2
  861. package/dist/types/components/controls/VectorInput/VectorInput.types.d.ts +1 -1
  862. package/dist/types/components/data/DataTable/DataTable.types.d.ts +2 -2
  863. package/dist/types/components/editor/AssetBrowser/AssetBrowser.d.ts +13 -0
  864. package/dist/types/components/editor/AssetBrowser/AssetBrowser.types.d.ts +241 -0
  865. package/dist/types/components/editor/AssetBrowser/assetBrowserLabels.d.ts +70 -0
  866. package/dist/types/components/editor/ChatPanel/ChatMarkdownRenderer.types.d.ts +1 -1
  867. package/dist/types/components/editor/ChatPanel/ChatPanel.types.d.ts +2 -2
  868. package/dist/types/components/editor/Minimap/Minimap.d.ts +26 -0
  869. package/dist/types/components/editor/Minimap/Minimap.types.d.ts +249 -0
  870. package/dist/types/components/editor/Minimap/MinimapContext.d.ts +27 -0
  871. package/dist/types/components/editor/Minimap/MinimapCorner.d.ts +8 -0
  872. package/dist/types/components/editor/Minimap/MinimapFooter.d.ts +8 -0
  873. package/dist/types/components/editor/Minimap/MinimapStore.d.ts +17 -0
  874. package/dist/types/components/editor/Minimap/MinimapTitle.d.ts +8 -0
  875. package/dist/types/components/editor/Minimap/ViewportMinimap.d.ts +52 -0
  876. package/dist/types/components/editor/Minimap/computeBoundsFromItems.d.ts +13 -0
  877. package/dist/types/components/editor/Minimap/index.d.ts +13 -0
  878. package/dist/types/components/editor/NodeGraph/NodeGraph.d.ts +63 -0
  879. package/dist/types/components/editor/NodeGraph/NodeGraph.types.d.ts +568 -0
  880. package/dist/types/components/editor/NodeGraph/NodeGraphContext.d.ts +30 -0
  881. package/dist/types/components/editor/NodeGraph/NodeGraphNodeParts.d.ts +86 -0
  882. package/dist/types/components/editor/NodeGraph/NodeGraphNodeSection.d.ts +47 -0
  883. package/dist/types/components/editor/NodeGraph/NodeGraphPin.d.ts +57 -0
  884. package/dist/types/components/editor/NodeGraph/NodeGraphPort.d.ts +30 -0
  885. package/dist/types/components/editor/NodeGraph/NodeGraphPortVisual.d.ts +46 -0
  886. package/dist/types/components/editor/NodeGraph/NodeGraphSlots.d.ts +16 -0
  887. package/dist/types/components/editor/NodeGraph/NodeGraphStore.d.ts +256 -0
  888. package/dist/types/components/editor/NodeGraph/NodeGraphToolbar.d.ts +54 -0
  889. package/dist/types/components/editor/NodeGraph/createTypeMatchValidator.d.ts +43 -0
  890. package/dist/types/components/editor/NodeGraph/nodeGraphActions.d.ts +39 -0
  891. package/dist/types/components/editor/NodeGraph/nodeGraphIds.d.ts +16 -0
  892. package/dist/types/components/editor/NodeGraph/useNodeGraph.d.ts +103 -0
  893. package/dist/types/components/editor/PropertyInspector/PropertyInspector.types.d.ts +51 -5
  894. package/dist/types/components/editor/Timeline/Timeline.d.ts +18 -0
  895. package/dist/types/components/editor/Timeline/Timeline.types.d.ts +348 -0
  896. package/dist/types/components/editor/Timeline/TimelineContext.d.ts +51 -0
  897. package/dist/types/components/editor/Timeline/TimelineFooter.d.ts +8 -0
  898. package/dist/types/components/editor/Timeline/TimelineMinimap.d.ts +21 -0
  899. package/dist/types/components/editor/Timeline/TimelineStore.d.ts +41 -0
  900. package/dist/types/components/editor/Timeline/TimelineToolbar.d.ts +8 -0
  901. package/dist/types/components/editor/Timeline/TimelineTrackScale.d.ts +8 -0
  902. package/dist/types/components/editor/Timeline/index.d.ts +15 -0
  903. package/dist/types/components/editor/Timeline/timelineCoords.d.ts +7 -0
  904. package/dist/types/components/editor/Timeline/timelineEdits.d.ts +18 -0
  905. package/dist/types/components/editor/TransformControl/TransformControl.types.d.ts +2 -2
  906. package/dist/types/components/editor/ViewportGizmo/ViewportGizmo.types.d.ts +1 -1
  907. package/dist/types/components/feedback/Alert/Alert.d.ts +2 -2
  908. package/dist/types/components/feedback/Alert/Alert.types.d.ts +5 -5
  909. package/dist/types/components/feedback/CommandPalette/CommandPalette.types.d.ts +1 -3
  910. package/dist/types/components/feedback/Dialog/Dialog.types.d.ts +2 -2
  911. package/dist/types/components/feedback/Drawer/Drawer.types.d.ts +1 -1
  912. package/dist/types/components/feedback/EmptyState/EmptyState.types.d.ts +2 -2
  913. package/dist/types/components/feedback/LogView/LogView.d.ts +58 -0
  914. package/dist/types/components/feedback/LogView/LogView.types.d.ts +333 -0
  915. package/dist/types/components/feedback/LogView/LogViewBody.d.ts +15 -0
  916. package/dist/types/components/feedback/LogView/LogViewContext.d.ts +9 -0
  917. package/dist/types/components/feedback/LogView/LogViewParts.d.ts +35 -0
  918. package/dist/types/components/feedback/LogView/LogViewStore.d.ts +4 -0
  919. package/dist/types/components/feedback/LogView/logViewLabels.d.ts +9 -0
  920. package/dist/types/components/feedback/LogView/logViewUtils.d.ts +41 -0
  921. package/dist/types/components/feedback/ProgressBar/ProgressBar.types.d.ts +3 -3
  922. package/dist/types/components/feedback/Skeleton/Skeleton.types.d.ts +4 -4
  923. package/dist/types/components/feedback/Stat/Stat.types.d.ts +2 -2
  924. package/dist/types/components/feedback/Toast/Toast.types.d.ts +1 -1
  925. package/dist/types/components/form/FormHelperText.d.ts +2 -2
  926. package/dist/types/components/form/FormLabel.d.ts +1 -1
  927. package/dist/types/components/form/InputWrapper.d.ts +2 -2
  928. package/dist/types/components/layout/Accordion/Accordion.types.d.ts +2 -2
  929. package/dist/types/components/layout/Card/Card.types.d.ts +6 -6
  930. package/dist/types/components/layout/Divider/Divider.types.d.ts +2 -2
  931. package/dist/types/components/layout/Flex/Flex.d.ts +1 -1
  932. package/dist/types/components/layout/Grid/Grid.d.ts +1 -1
  933. package/dist/types/components/layout/ListItem/ListItem.types.d.ts +2 -2
  934. package/dist/types/components/layout/PageHeader/PageHeader.types.d.ts +1 -1
  935. package/dist/types/components/layout/PanelSurface/PanelSurface.types.d.ts +6 -6
  936. package/dist/types/components/layout/ScrollArea/ScrollArea.types.d.ts +2 -2
  937. package/dist/types/components/layout/Stack/Stack.d.ts +1 -1
  938. package/dist/types/components/navigation/Breadcrumbs/BreadcrumbItem.d.ts +1 -0
  939. package/dist/types/components/navigation/Breadcrumbs/Breadcrumbs.types.d.ts +7 -0
  940. package/dist/types/components/navigation/ContextMenu/ContextMenu.d.ts +18 -3
  941. package/dist/types/components/navigation/ContextMenu/ContextMenu.types.d.ts +55 -63
  942. package/dist/types/components/navigation/Menu/Menu.d.ts +38 -35
  943. package/dist/types/components/navigation/Menu/Menu.types.d.ts +190 -71
  944. package/dist/types/components/navigation/Pagination/Pagination.types.d.ts +1 -1
  945. package/dist/types/components/navigation/PathBar/PathBar.d.ts +31 -0
  946. package/dist/types/components/navigation/PathBar/PathBar.types.d.ts +79 -0
  947. package/dist/types/components/navigation/SegmentedControl/SegmentedControl.types.d.ts +3 -3
  948. package/dist/types/components/navigation/Tabs/Tabs.types.d.ts +2 -2
  949. package/dist/types/components/primitives/Avatar/Avatar.types.d.ts +2 -2
  950. package/dist/types/components/primitives/Badge/Badge.types.d.ts +1 -1
  951. package/dist/types/components/primitives/Button/Button.d.ts +2 -2
  952. package/dist/types/components/primitives/Checkbox/Checkbox.types.d.ts +2 -2
  953. package/dist/types/components/primitives/Code/Code.types.d.ts +1 -1
  954. package/dist/types/components/primitives/Collapsible/Collapsible.types.d.ts +2 -2
  955. package/dist/types/components/primitives/HoverCard/HoverCard.types.d.ts +3 -3
  956. package/dist/types/components/primitives/Icon/Icon.d.ts +2 -2
  957. package/dist/types/components/primitives/IconButton/IconButton.d.ts +1 -1
  958. package/dist/types/components/primitives/Input/Input.d.ts +1 -1
  959. package/dist/types/components/primitives/Kbd/Kbd.types.d.ts +1 -1
  960. package/dist/types/components/primitives/Link/Link.types.d.ts +1 -1
  961. package/dist/types/components/primitives/Popover/Popover.types.d.ts +2 -2
  962. package/dist/types/components/primitives/Radio/Radio.types.d.ts +3 -3
  963. package/dist/types/components/primitives/Switch/Switch.d.ts +1 -1
  964. package/dist/types/components/primitives/TextArea/TextArea.types.d.ts +1 -1
  965. package/dist/types/components/primitives/Tooltip/Tooltip.d.ts +1 -1
  966. package/dist/types/components/primitives/VisuallyHidden/VisuallyHidden.types.d.ts +1 -1
  967. package/dist/types/components/primitives/canvas/canvas.types.d.ts +16 -1
  968. package/dist/types/components/primitives/viewport/Viewport.d.ts +38 -0
  969. package/dist/types/components/primitives/viewport/Viewport.types.d.ts +257 -0
  970. package/dist/types/components/primitives/viewport/ViewportContext.d.ts +23 -0
  971. package/dist/types/components/primitives/viewport/ViewportLayer.d.ts +26 -0
  972. package/dist/types/components/primitives/viewport/ViewportOverlay.d.ts +27 -0
  973. package/dist/types/components/primitives/viewport/ViewportWorld.d.ts +25 -0
  974. package/dist/types/components/primitives/viewport/viewportCoords.d.ts +25 -0
  975. package/dist/types/components/primitives/viewport/viewportMath.d.ts +35 -0
  976. package/dist/types/components/shell/AppShell/AppShell.types.d.ts +2 -2
  977. package/dist/types/components/shell/FloatingPanel/FloatingPanel.types.d.ts +2 -2
  978. package/dist/types/components/shell/MenuBar/MenuBar.types.d.ts +5 -5
  979. package/dist/types/components/shell/StatusBar/StatusBar.types.d.ts +3 -3
  980. package/dist/types/components/shell/Toolbar/Toolbar.types.d.ts +5 -5
  981. package/dist/types/hooks/useDebounced/useDebouncedValue.d.ts +13 -4
  982. package/dist/types/hooks/useEventCallback/useEventCallback.d.ts +32 -0
  983. package/dist/types/hooks/useIsMounted/useIsMounted.d.ts +28 -0
  984. package/dist/types/hooks/useKeyboard/types.d.ts +1 -1
  985. package/dist/types/hooks/useLatest/useLatest.d.ts +23 -0
  986. package/dist/types/hooks/useResizeObserver/useResizeObserver.d.ts +3 -3
  987. package/dist/types/index.d.ts +71 -6
  988. package/dist/types/theme/ThemeProvider.d.ts +5 -3
  989. package/dist/types/theme/contract.css.d.ts +1 -1
  990. package/dist/types/theme/createCustomTheme.d.ts +1 -1
  991. package/dist/types/theme/darkThemeValues.d.ts +1 -1
  992. package/dist/types/theme/lightThemeValues.d.ts +1 -1
  993. package/dist/types/theme/themeContractData.d.ts +4 -4
  994. package/dist/types/theme-values.d.ts +1 -1
  995. package/dist/types/types/keyframe.d.ts +64 -0
  996. package/package.json +34 -18
  997. package/dist/esm/_virtual/_commonjsHelpers.js +0 -6
  998. package/dist/esm/_virtual/_commonjsHelpers.js.map +0 -1
  999. package/dist/esm/_virtual/cjs.js +0 -4
  1000. package/dist/esm/_virtual/cjs.js.map +0 -1
  1001. package/dist/esm/_virtual/cssesc.js +0 -8
  1002. package/dist/esm/_virtual/cssesc.js.map +0 -1
  1003. package/dist/esm/_virtual/picocolors.js +0 -8
  1004. package/dist/esm/_virtual/picocolors.js.map +0 -1
  1005. package/dist/esm/_virtual/picocolors2.js +0 -4
  1006. package/dist/esm/_virtual/picocolors2.js.map +0 -1
  1007. package/dist/esm/assets/src/components/navigation/Menu/Menu.css.ts.vanilla-DD0c5D10.css +0 -67
  1008. package/dist/esm/components/navigation/ContextMenu/useContextMenuTarget.js +0 -53
  1009. package/dist/esm/components/navigation/ContextMenu/useContextMenuTarget.js.map +0 -1
  1010. package/dist/esm/components/navigation/Menu/Menu.helpers.js +0 -53
  1011. package/dist/esm/components/navigation/Menu/Menu.helpers.js.map +0 -1
  1012. package/dist/esm/components/navigation/Menu/useMenu.js +0 -88
  1013. package/dist/esm/components/navigation/Menu/useMenu.js.map +0 -1
  1014. package/dist/esm/node_modules/@emotion/hash/dist/emotion-hash.esm.js +0 -56
  1015. package/dist/esm/node_modules/@emotion/hash/dist/emotion-hash.esm.js.map +0 -1
  1016. package/dist/esm/node_modules/@vanilla-extract/css/adapter/dist/vanilla-extract-css-adapter.esm.js +0 -46
  1017. package/dist/esm/node_modules/@vanilla-extract/css/adapter/dist/vanilla-extract-css-adapter.esm.js.map +0 -1
  1018. package/dist/esm/node_modules/@vanilla-extract/css/dist/taggedTemplateLiteral-10998315.esm.js +0 -13
  1019. package/dist/esm/node_modules/@vanilla-extract/css/dist/taggedTemplateLiteral-10998315.esm.js.map +0 -1
  1020. package/dist/esm/node_modules/@vanilla-extract/css/dist/transformCss-fd0786e1.esm.js +0 -962
  1021. package/dist/esm/node_modules/@vanilla-extract/css/dist/transformCss-fd0786e1.esm.js.map +0 -1
  1022. package/dist/esm/node_modules/@vanilla-extract/css/dist/vanilla-extract-css.esm.js +0 -309
  1023. package/dist/esm/node_modules/@vanilla-extract/css/dist/vanilla-extract-css.esm.js.map +0 -1
  1024. package/dist/esm/node_modules/@vanilla-extract/css/fileScope/dist/vanilla-extract-css-fileScope.esm.js +0 -18
  1025. package/dist/esm/node_modules/@vanilla-extract/css/fileScope/dist/vanilla-extract-css-fileScope.esm.js.map +0 -1
  1026. package/dist/esm/node_modules/@vanilla-extract/css/injectStyles/dist/vanilla-extract-css-injectStyles.esm.js +0 -23
  1027. package/dist/esm/node_modules/@vanilla-extract/css/injectStyles/dist/vanilla-extract-css-injectStyles.esm.js.map +0 -1
  1028. package/dist/esm/node_modules/@vanilla-extract/css/node_modules/lru-cache/dist/esm/index.js +0 -1543
  1029. package/dist/esm/node_modules/@vanilla-extract/css/node_modules/lru-cache/dist/esm/index.js.map +0 -1
  1030. package/dist/esm/node_modules/@vanilla-extract/private/dist/vanilla-extract-private.esm.js +0 -38
  1031. package/dist/esm/node_modules/@vanilla-extract/private/dist/vanilla-extract-private.esm.js.map +0 -1
  1032. package/dist/esm/node_modules/css-what/lib/es/parse.js +0 -424
  1033. package/dist/esm/node_modules/css-what/lib/es/parse.js.map +0 -1
  1034. package/dist/esm/node_modules/css-what/lib/es/types.js +0 -29
  1035. package/dist/esm/node_modules/css-what/lib/es/types.js.map +0 -1
  1036. package/dist/esm/node_modules/cssesc/cssesc.js +0 -120
  1037. package/dist/esm/node_modules/cssesc/cssesc.js.map +0 -1
  1038. package/dist/esm/node_modules/dedent/dist/dedent.js +0 -100
  1039. package/dist/esm/node_modules/dedent/dist/dedent.js.map +0 -1
  1040. package/dist/esm/node_modules/deep-object-diff/mjs/diff.js +0 -40
  1041. package/dist/esm/node_modules/deep-object-diff/mjs/diff.js.map +0 -1
  1042. package/dist/esm/node_modules/deep-object-diff/mjs/utils.js +0 -9
  1043. package/dist/esm/node_modules/deep-object-diff/mjs/utils.js.map +0 -1
  1044. package/dist/esm/node_modules/deepmerge/dist/cjs.js +0 -143
  1045. package/dist/esm/node_modules/deepmerge/dist/cjs.js.map +0 -1
  1046. package/dist/esm/node_modules/media-query-parser/dist/media-query-parser.esm.js +0 -1386
  1047. package/dist/esm/node_modules/media-query-parser/dist/media-query-parser.esm.js.map +0 -1
  1048. package/dist/esm/node_modules/modern-ahocorasick/dist/index.js +0 -102
  1049. package/dist/esm/node_modules/modern-ahocorasick/dist/index.js.map +0 -1
  1050. package/dist/esm/node_modules/picocolors/picocolors.js +0 -87
  1051. package/dist/esm/node_modules/picocolors/picocolors.js.map +0 -1
  1052. package/dist/types/components/navigation/ContextMenu/useContextMenuTarget.d.ts +0 -5
  1053. package/dist/types/components/navigation/Menu/useMenu.d.ts +0 -16
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useNavigationHistory.js","sources":["src/hooks/useNavigationHistory/useNavigationHistory.ts"],"sourcesContent":["'use client';\n\nimport { useCallback, useMemo, useState, useSyncExternalStore } from 'react';\n\nimport type {\n NavigationHistoryApi,\n UseNavigationHistoryOptions,\n} from './useNavigationHistory.types';\n\n/**\n * Per-instance back/forward stack. Lives outside React so reads are stable\n * across concurrent renders and so non-React handlers can mutate without\n * scheduling extra renders for unrelated consumers.\n */\nclass NavigationHistoryStore<T> {\n #stack: T[];\n #index: number;\n #listeners = new Set<() => void>();\n\n constructor(initial: T | undefined) {\n if (initial !== undefined) {\n this.#stack = [initial];\n this.#index = 0;\n } else {\n this.#stack = [];\n this.#index = -1;\n }\n }\n\n subscribe = (listener: () => void): (() => void) => {\n this.#listeners.add(listener);\n return () => {\n this.#listeners.delete(listener);\n };\n };\n\n getCurrent = (): T | undefined => this.#stack[this.#index];\n getCanGoBack = (): boolean => this.#index > 0;\n getCanGoForward = (): boolean => this.#index < this.#stack.length - 1;\n\n #notify(): void {\n this.#listeners.forEach(l => {\n l();\n });\n }\n\n push(entry: T): void {\n if (this.#stack[this.#index] === entry) return;\n const next = this.#stack.slice(0, this.#index + 1);\n next.push(entry);\n this.#stack = next;\n this.#index = next.length - 1;\n this.#notify();\n }\n\n goBack(): T | undefined {\n if (this.#index <= 0) return undefined;\n this.#index -= 1;\n this.#notify();\n return this.#stack[this.#index];\n }\n\n goForward(): T | undefined {\n if (this.#index >= this.#stack.length - 1) return undefined;\n this.#index += 1;\n this.#notify();\n return this.#stack[this.#index];\n }\n\n reset(entry: T | undefined): void {\n if (entry !== undefined) {\n if (\n this.#stack.length === 1 &&\n this.#index === 0 &&\n this.#stack[0] === entry\n ) {\n return;\n }\n this.#stack = [entry];\n this.#index = 0;\n } else {\n if (this.#stack.length === 0) return;\n this.#stack = [];\n this.#index = -1;\n }\n this.#notify();\n }\n}\n\n/**\n * Back/forward history primitive. Tracks a stack of entries (`T`) with a\n * cursor, mirrors browser semantics (pushing truncates the forward branch),\n * and exposes the current entry plus `canGoBack` / `canGoForward` flags via\n * `useSyncExternalStore`.\n *\n * Useful any time a UI needs Back/Forward controls over a finite navigation\n * — folder browsers, wizard steps, drill-down inspectors. Generic over the\n * entry type, so it works with ids, paths, route objects, anything stable.\n *\n * @example\n * ```tsx\n * const nav = useNavigationHistory<string>({ initial: 'root' });\n *\n * <Toolbar>\n * <IconButton aria-label=\"Back\" disabled={!nav.canGoBack} onClick={nav.goBack}>\n * <ChevronLeftIcon />\n * </IconButton>\n * <IconButton aria-label=\"Forward\" disabled={!nav.canGoForward} onClick={nav.goForward}>\n * <ChevronRightIcon />\n * </IconButton>\n * </Toolbar>\n * ```\n */\nexport function useNavigationHistory<T = string>(\n options: UseNavigationHistoryOptions<T> = {}\n): NavigationHistoryApi<T> {\n const { initial, enabled = true } = options;\n\n // Lazy init via useState — the initial value is captured once on mount.\n // Subsequent changes to `initial` are ignored (use `reset()` to re-seed).\n const [store] = useState(() => new NavigationHistoryStore<T>(initial));\n\n const current = useSyncExternalStore(store.subscribe, store.getCurrent);\n const canGoBackRaw = useSyncExternalStore(\n store.subscribe,\n store.getCanGoBack\n );\n const canGoForwardRaw = useSyncExternalStore(\n store.subscribe,\n store.getCanGoForward\n );\n\n const canGoBack = enabled && canGoBackRaw;\n const canGoForward = enabled && canGoForwardRaw;\n\n const push = useCallback(\n (entry: T): void => {\n if (!enabled) return;\n store.push(entry);\n },\n [store, enabled]\n );\n\n const goBack = useCallback((): T | undefined => {\n if (!enabled) return undefined;\n return store.goBack();\n }, [store, enabled]);\n\n const goForward = useCallback((): T | undefined => {\n if (!enabled) return undefined;\n return store.goForward();\n }, [store, enabled]);\n\n const reset = useCallback(\n (entry?: T): void => {\n store.reset(entry);\n },\n [store]\n );\n\n return useMemo(\n () => ({\n current,\n canGoBack,\n canGoForward,\n push,\n goBack,\n goForward,\n reset,\n }),\n [current, canGoBack, canGoForward, push, goBack, goForward, reset]\n );\n}\n"],"names":[],"mappings":";;;;;AASA;;;;AAIG;AACH;AAKE;;;;;AAUA;AACE;AACA;AACE;AACF;AACF;AAEA;;AAEA;AAlBE;AACE;AACA;;;AAEA;AACA;;;AAqBJ;;;AAEE;AACA;AACA;;AAEA;;;AAIA;AAAsB;;AAEtB;;;;;AAK2C;;AAE3C;;;AAIF;AACE;AACE;;;;;AAOA;AACA;;;AAEA;;AACA;AACA;;AAEF;;AAEH;;AA9CG;AACE;AACF;AACF;AA6CF;;;;;;;;;;;;;;;;;;;;;;;AAuBG;AACG;;;;AAOJ;AAEA;AACA;AAIA;AAKA;AACA;AAEA;AAEI;;AACA;AACF;AAIF;AACE;AAAc;AACd;AACF;AAEA;AACE;AAAc;AACd;AACF;AAEA;AAEI;AACF;AAIF;;;;;;;;AASG;AAGL;;"}
@@ -1,12 +1,13 @@
1
1
  "use client";
2
2
  import { useRef, useEffect } from 'react';
3
+ import { useEventCallback } from '../useEventCallback/useEventCallback.js';
3
4
 
4
5
  /**
5
6
  * Observe size changes on an element. SSR-safe; cleans up on unmount.
6
7
  *
7
- * The callback is wrapped in a ref so consumers do not have to memoize it —
8
- * the underlying observer never re-subscribes when the callback identity
9
- * changes.
8
+ * The callback is wrapped with `useEventCallback` so consumers do not have
9
+ * to memoize it — the underlying observer never re-subscribes when the
10
+ * callback identity changes.
10
11
  *
11
12
  * The hook re-checks `ref.current` on every render so it picks up nodes that
12
13
  * mount later (e.g. through conditional rendering). When the observed node
@@ -24,12 +25,9 @@ import { useRef, useEffect } from 'react';
24
25
  */
25
26
  function useResizeObserver(ref, callback, options) {
26
27
  const { enabled = true } = options ?? {};
27
- const callbackRef = useRef(callback);
28
+ const handleEntry = useEventCallback(callback);
28
29
  const observerRef = useRef(null);
29
30
  const observedNodeRef = useRef(null);
30
- useEffect(() => {
31
- callbackRef.current = callback;
32
- }, [callback]);
33
31
  // Runs on every render so a node that mounts after the first render
34
32
  // (conditional rendering, lazy children, suspense fallback flips, ...) is
35
33
  // picked up automatically. Short-circuits on the common case where the
@@ -57,7 +55,7 @@ function useResizeObserver(ref, callback, options) {
57
55
  return;
58
56
  const observer = new ResizeObserver(entries => {
59
57
  for (const entry of entries) {
60
- callbackRef.current(entry);
58
+ handleEntry(entry);
61
59
  }
62
60
  });
63
61
  observer.observe(node);
@@ -1 +1 @@
1
- {"version":3,"file":"useResizeObserver.js","sources":["../../../../../src/hooks/useResizeObserver/useResizeObserver.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAaA;;;;;;;;;;;;;;;;;;;;AAoBG;;;AAQD;AACA;AACA;;AAGE;AACF;;;;;;;;;AAUI;AACE;AACA;AACA;;;;AAKJ;AACA;;AAEA;AACE;AACA;;AAEF;AACA;;AAEA;AACE;AACE;;AAEJ;AACA;AACA;AACF;;AAGA;AAEI;AACA;AACA;;AAIN;;"}
1
+ {"version":3,"file":"useResizeObserver.js","sources":["src/hooks/useResizeObserver/useResizeObserver.ts"],"sourcesContent":["'use client';\n\nimport { useEffect, useRef } from 'react';\n\nimport { useEventCallback } from '@/hooks/useEventCallback';\n\nimport type { RefObject } from 'react';\n\nexport interface UseResizeObserverOptions {\n /**\n * When false, the observer is not attached. Toggling this from `false` to\n * `true` (re-)attaches the observer; toggling back disconnects it.\n * @default true\n */\n enabled?: boolean;\n}\n\n/**\n * Observe size changes on an element. SSR-safe; cleans up on unmount.\n *\n * The callback is wrapped with `useEventCallback` so consumers do not have\n * to memoize it — the underlying observer never re-subscribes when the\n * callback identity changes.\n *\n * The hook re-checks `ref.current` on every render so it picks up nodes that\n * mount later (e.g. through conditional rendering). When the observed node\n * has not changed the only cost is a single identity comparison.\n *\n * @example\n * ```tsx\n * const ref = useRef<HTMLDivElement>(null);\n * useResizeObserver(ref, entry => {\n * console.log(entry.contentRect.width);\n * });\n *\n * return <div ref={ref} />;\n * ```\n */\nexport function useResizeObserver<T extends HTMLElement>(\n ref: RefObject<T | null>,\n callback: (entry: ResizeObserverEntry) => void,\n options?: UseResizeObserverOptions\n): void {\n const { enabled = true } = options ?? {};\n\n const handleEntry = useEventCallback(callback);\n const observerRef = useRef<ResizeObserver | null>(null);\n const observedNodeRef = useRef<T | null>(null);\n\n // Runs on every render so a node that mounts after the first render\n // (conditional rendering, lazy children, suspense fallback flips, ...) is\n // picked up automatically. Short-circuits on the common case where the\n // observed node has not changed.\n useEffect(() => {\n if (typeof ResizeObserver === 'undefined') return;\n\n if (!enabled) {\n if (observerRef.current) {\n observerRef.current.disconnect();\n observerRef.current = null;\n observedNodeRef.current = null;\n }\n return;\n }\n\n const node = ref.current;\n if (node === observedNodeRef.current) return;\n\n if (observerRef.current) {\n observerRef.current.disconnect();\n observerRef.current = null;\n }\n observedNodeRef.current = node;\n if (!node) return;\n\n const observer = new ResizeObserver(entries => {\n for (const entry of entries) {\n handleEntry(entry);\n }\n });\n observer.observe(node);\n observerRef.current = observer;\n });\n\n // Final cleanup on unmount.\n useEffect(\n () => () => {\n observerRef.current?.disconnect();\n observerRef.current = null;\n observedNodeRef.current = null;\n },\n []\n );\n}\n"],"names":[],"mappings":";;;;AAiBA;;;;;;;;;;;;;;;;;;;;AAoBG;;;AAQD;AACA;AACA;;;;;;;;;AAUI;AACE;AACA;AACA;;;;AAKJ;AACA;;AAEA;AACE;AACA;;AAEF;AACA;;AAEA;AACE;;;AAGF;AACA;AACA;AACF;;AAGA;AAEI;AACA;AACA;;AAIN;;"}
@@ -3,11 +3,11 @@ import { useRef, useState, useLayoutEffect, useCallback, useMemo } from 'react';
3
3
  import { vars } from '../../theme/contract.css.js';
4
4
  import { darkThemeValues } from '../../theme/darkThemeValues.js';
5
5
  import { lightThemeClass } from '../../theme/lightTheme.css.js';
6
- import '../../node_modules/@vanilla-extract/css/dist/vanilla-extract-css.esm.js';
7
- import './../../assets/src/theme/darkTheme.css.ts.vanilla-ab1WD4dr.css';
6
+ import '@vanilla-extract/css';
7
+ import './../../assets/src/theme/darkTheme.css.ts.vanilla-BHZ3ecRn.css';
8
8
  import 'react/jsx-runtime';
9
- import './../../assets/src/theme/globalScrollbars.css.ts.vanilla-BAJwnUEJ.css';
10
9
  import '../../utils/devWarn.js';
10
+ import './../../assets/src/theme/globalScrollbars.css.ts.vanilla-BAJwnUEJ.css';
11
11
 
12
12
  const VAR_REF_PATTERN = /^var\((--[^,)]+)/;
13
13
  /**
@@ -162,6 +162,9 @@ function useTheme() {
162
162
  values: resolveValues(darkThemeValues, root, vars),
163
163
  };
164
164
  tokenCacheRef.current.clear();
165
+ // External-system sync: read resolved CSS custom properties from the DOM
166
+ // into state once mounted (they are unavailable during SSR/first render).
167
+ // eslint-disable-next-line react-hooks/set-state-in-effect
165
168
  setSnapshot(next);
166
169
  }, []);
167
170
  const getToken = useCallback((path) => {
@@ -1 +1 @@
1
- {"version":3,"file":"useTheme.js","sources":["../../../../../src/hooks/useTheme/useTheme.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;AAUA;AAEA;;;;;;;;;;AAUG;AACH;;;AAGE;;;;AAMI;;;AAEA;;;;AAG0B;;AAE9B;AACF;AAEA;AACE;;AAEF;AAEA;;;;;AAKG;AACH;AACE;AACE;;AAEE;;AAEE;AACA;;;AAGJ;;;;;AAKE;AACA;AAGA;;AAEF;;AAEF;AACF;AAEA;;;AAGE;;;;AAMI;;;AAEA;;;AAGJ;AACF;AAEA;;;;;;;AAOG;AACH;;AACuC;;AAGnC;;AAEF;AACF;AAOA;AACE;AACA;;AAGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CG;;;;;;;AAOC;AACA;;;;AAIA;;;AAIF;AACE;;;AAE0B;AAE1B;;AAEE;AACA;;AAGF;;AAEE;AACA;;AAGF;;AAEG;;AAEH;AACA;;AAGF;AAEA;;;;;;AASF;;"}
1
+ {"version":3,"file":"useTheme.js","sources":["src/hooks/useTheme/useTheme.ts"],"sourcesContent":["'use client';\n\nimport { useCallback, useLayoutEffect, useMemo, useRef, useState } from 'react';\n\nimport { darkThemeValues, lightThemeClass, vars } from '@/theme';\n\nimport type {\n ResolvedThemeValues,\n ThemeVariant,\n UseThemeReturn,\n} from './useTheme.types';\n\nconst VAR_REF_PATTERN = /^var\\((--[^,)]+)/;\n\n/**\n * Walk a dot-path on the theme contract and return the underlying CSS\n * custom property name (without the leading `var(`/trailing `)`).\n *\n * The contract emits hand-tuned, non-derivable names — `colors.accent.primary`\n * resolves to `--etui-color-accent-primary`, not `--etui-colors-accent-primary`.\n * Walking the existing `vars` object (whose leaves are already\n * `var(--etui-...)` references) is the only correct way to get the var name.\n *\n * Returns `''` for paths that don't resolve to a leaf reference.\n */\nfunction pathToCssVar(path: string): string {\n const segments = path.split('.');\n let node: unknown = vars;\n for (const segment of segments) {\n if (\n node !== null &&\n typeof node === 'object' &&\n segment in (node as Record<string, unknown>)\n ) {\n node = (node as Record<string, unknown>)[segment];\n } else {\n return '';\n }\n }\n if (typeof node !== 'string') return '';\n const match = VAR_REF_PATTERN.exec(node);\n return match?.[1] ?? '';\n}\n\nfunction pathToVarRef(path: string): string {\n const cssVar = pathToCssVar(path);\n return cssVar ? `var(${cssVar})` : '';\n}\n\n/**\n * Walk the dark-theme template alongside the contract, replacing each\n * leaf with the resolved CSS variable value read from `root`. Falls back\n * to the template value when a property is empty (e.g. before stylesheets\n * have applied during testing).\n */\nfunction resolveValues<T>(template: T, root: Element, contract: unknown): T {\n if (typeof template === 'string') {\n if (typeof contract === 'string') {\n const match = VAR_REF_PATTERN.exec(contract);\n const cssVar = match?.[1];\n if (cssVar) {\n const value = getComputedStyle(root).getPropertyValue(cssVar).trim();\n return (value || template) as T;\n }\n }\n return template;\n }\n if (template !== null && typeof template === 'object') {\n const out: Record<string, unknown> = {};\n for (const key of Object.keys(template)) {\n const childTemplate = (template as Record<string, unknown>)[key];\n const childContract = (contract as Record<string, unknown> | undefined)?.[\n key\n ];\n out[key] = resolveValues(childTemplate, root, childContract);\n }\n return out as T;\n }\n return template;\n}\n\nfunction readTemplateValue(template: unknown, path: string): string {\n const segments = path.split('.');\n let node: unknown = template;\n for (const segment of segments) {\n if (\n node !== null &&\n typeof node === 'object' &&\n segment in (node as Record<string, unknown>)\n ) {\n node = (node as Record<string, unknown>)[segment];\n } else {\n return '';\n }\n }\n return typeof node === 'string' ? node : '';\n}\n\n/**\n * Root-only detection: the variant is determined by whether the\n * light-theme class is applied to `document.documentElement` — the same\n * element from which `values` are resolved. Anything more permissive\n * (descendant scan, `<body>` check) would let the variant disagree with\n * the resolved values for a dark app that contains a single light\n * subtree.\n */\nfunction detectVariant(): ThemeVariant {\n if (typeof document === 'undefined') return 'dark';\n if (!lightThemeClass) return 'dark';\n if (document.documentElement.classList.contains(lightThemeClass)) {\n return 'light';\n }\n return 'dark';\n}\n\ninterface ThemeSnapshot {\n variant: ThemeVariant;\n values: ResolvedThemeValues;\n}\n\nconst FALLBACK_SNAPSHOT: ThemeSnapshot = {\n variant: 'dark',\n values: darkThemeValues,\n};\n\n/**\n * Read the current theme at runtime.\n *\n * Returns the resolved CSS variable snapshot from `:root`, the detected\n * theme variant, and helpers for reading individual tokens by path.\n * Components should prefer compile-time tokens via Vanilla Extract\n * (`vars.*` from `@/theme`) — reach for `useTheme` only when a runtime\n * read is genuinely required (canvas drawing, third-party libraries that\n * take colors as plain strings).\n *\n * **Scope:** the hook always reads from `:root` — both the variant and\n * the resolved values come from `document.documentElement`. A light- or\n * custom-themed subtree wrapped in `VanillaThemeProvider` will **not** be\n * reflected here; for that, components inside the subtree should style\n * via Vanilla Extract `vars.*` (which the browser resolves correctly per\n * scope) rather than runtime reads.\n *\n * **SSR:** returns the dark-theme defaults as a fallback. The hook\n * re-evaluates against the live DOM on mount via `useLayoutEffect`, so\n * the second render contains the real values before the browser paints.\n *\n * **Reactivity:** v0.8 reads once on mount. Toggling the root theme at\n * runtime is not reflected — remount the consuming subtree to pick up\n * the new theme. A `MutationObserver`-based subscription may be added\n * in a later release if consumer demand emerges.\n *\n * @example\n * ```tsx\n * const { values, variant, getVar, getToken } = useTheme();\n *\n * // Canvas drawing with theme-aware colors\n * ctx.strokeStyle = values.colors.accent.primary;\n *\n * // Conditional logic\n * if (variant === 'dark') loadDarkAssets();\n *\n * // Inline styles that follow theme changes automatically\n * <div style={{ color: getVar('colors.text.primary') }} />\n *\n * // One-off token resolution\n * const accent = getToken('colors.accent.primary');\n * ```\n */\nexport function useTheme(): UseThemeReturn {\n const tokenCacheRef = useRef<Map<string, string>>(new Map());\n const [snapshot, setSnapshot] = useState<ThemeSnapshot>(FALLBACK_SNAPSHOT);\n\n useLayoutEffect(() => {\n if (typeof document === 'undefined') return;\n const root = document.documentElement;\n const next: ThemeSnapshot = {\n variant: detectVariant(),\n values: resolveValues(darkThemeValues, root, vars),\n };\n tokenCacheRef.current.clear();\n // External-system sync: read resolved CSS custom properties from the DOM\n // into state once mounted (they are unavailable during SSR/first render).\n // eslint-disable-next-line react-hooks/set-state-in-effect\n setSnapshot(next);\n }, []);\n\n const getToken = useCallback((path: string): string => {\n const cache = tokenCacheRef.current;\n const cached = cache.get(path);\n if (cached !== undefined) return cached;\n\n if (typeof document === 'undefined') {\n const fallback = readTemplateValue(darkThemeValues, path);\n cache.set(path, fallback);\n return fallback;\n }\n\n const cssVar = pathToCssVar(path);\n if (!cssVar) {\n cache.set(path, '');\n return '';\n }\n\n const value = getComputedStyle(document.documentElement)\n .getPropertyValue(cssVar)\n .trim();\n const resolved = value || readTemplateValue(darkThemeValues, path);\n cache.set(path, resolved);\n return resolved;\n }, []);\n\n const getVar = useCallback((path: string): string => pathToVarRef(path), []);\n\n return useMemo(\n () => ({\n variant: snapshot.variant,\n values: snapshot.values,\n getToken,\n getVar,\n }),\n [snapshot, getToken, getVar]\n );\n}\n"],"names":[],"mappings":";;;;;;;;;;;AAYA;AAEA;;;;;;;;;;AAUG;AACH;;;AAGE;;;;AAMI;;;AAEA;;;;AAG0B;;AAE9B;AACF;AAEA;AACE;;AAEF;AAEA;;;;;AAKG;AACH;AACE;AACE;;AAEE;;AAEE;AACA;;;AAGJ;;;;;AAKE;AACA;AAGA;;AAEF;;AAEF;AACF;AAEA;;;AAGE;;;;AAMI;;;AAEA;;;AAGJ;AACF;AAEA;;;;;;;AAOG;AACH;;AACuC;;AAGnC;;AAEF;AACF;AAOA;AACE;AACA;;AAGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CG;;;;;;;AAOC;AACA;;;;AAIA;;;;;;AAOF;AACE;;;AAE0B;AAE1B;;AAEE;AACA;;AAGF;;AAEE;AACA;;AAGF;;AAEG;;AAEH;AACA;;AAGF;AAEA;;;;;;AASF;;"}
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
  import { useRef, useMemo, useEffect } from 'react';
3
+ import { useEventCallback } from '../useEventCallback/useEventCallback.js';
3
4
 
4
5
  /**
5
6
  * Wrap a function so it fires at most once per `delay` ms. With both
@@ -21,8 +22,9 @@ import { useRef, useMemo, useEffect } from 'react';
21
22
  */
22
23
  function useThrottledCallback(fn, delay, options = {}) {
23
24
  const { leading = true, trailing = true } = options;
24
- const fnRef = useRef(fn);
25
- fnRef.current = fn;
25
+ // Stable wrapper that always invokes the current callback, refreshed via
26
+ // useInsertionEffect so the throttled wrapper never goes stale.
27
+ const stableFn = useEventCallback(fn);
26
28
  const lastCallRef = useRef(0);
27
29
  const timerRef = useRef(null);
28
30
  const lastArgsRef = useRef(null);
@@ -32,9 +34,12 @@ function useThrottledCallback(fn, delay, options = {}) {
32
34
  const args = lastArgsRef.current;
33
35
  lastArgsRef.current = null;
34
36
  if (args)
35
- fnRef.current(...args);
37
+ stableFn(...args);
36
38
  };
37
39
  const wrapper = (...args) => {
40
+ // Date.now() runs only when the wrapper is invoked from an event/timer,
41
+ // never during render, so it is not a render-purity concern here.
42
+ // eslint-disable-next-line react-hooks/purity
38
43
  const now = Date.now();
39
44
  if (lastCallRef.current === 0 && !leading) {
40
45
  // Skip the leading fire by anchoring the window to "now".
@@ -66,7 +71,7 @@ function useThrottledCallback(fn, delay, options = {}) {
66
71
  lastCallRef.current = 0;
67
72
  };
68
73
  return wrapper;
69
- }, [delay, leading, trailing]);
74
+ }, [delay, leading, trailing, stableFn]);
70
75
  useEffect(() => () => {
71
76
  if (timerRef.current !== null)
72
77
  clearTimeout(timerRef.current);
@@ -1 +1 @@
1
- {"version":3,"file":"useThrottledCallback.js","sources":["../../../../../src/hooks/useThrottledCallback/useThrottledCallback.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAQA;;;;;;;;;;;;;;;;;AAiBG;AACG;;AAOJ;AACA;AAEA;AACA;AACA;AAEA;AACE;AACE;AACA;AACA;AACA;AAAU;AACZ;AAEA;AACE;;;AAGE;;AAGF;AACA;AAEA;AACE;AACE;AACA;;;;;;AAOF;AACE;AACA;AACF;;AAEJ;AAEA;AACE;AACE;AACA;;AAEF;AACA;AACF;AAEA;;AAGF;AAEI;AAA+B;;AAKnC;AACF;;"}
1
+ {"version":3,"file":"useThrottledCallback.js","sources":["src/hooks/useThrottledCallback/useThrottledCallback.ts"],"sourcesContent":["'use client';\n\nimport { useEffect, useMemo, useRef } from 'react';\n\nimport { useEventCallback } from '@/hooks/useEventCallback';\n\nimport type {\n ThrottledCallback,\n UseThrottledCallbackOptions,\n} from './useThrottledCallback.types';\n\n/**\n * Wrap a function so it fires at most once per `delay` ms. With both\n * `leading` and `trailing` enabled (the default), the first call fires\n * immediately and the most recent call inside the window fires at its\n * end. Set `leading: false` to defer the first call; set\n * `trailing: false` to drop calls inside the window.\n *\n * Typical use: drag handlers, scroll listeners, resize observers — places\n * where the input rate exceeds the work rate and you want to bound the\n * latter.\n *\n * The wrapper identity is stable across renders.\n *\n * @example\n * ```tsx\n * const onPointerMove = useThrottledCallback(updateGuide, 16);\n * ```\n */\nexport function useThrottledCallback<Args extends unknown[]>(\n fn: (...args: Args) => void,\n delay: number,\n options: UseThrottledCallbackOptions = {}\n): ThrottledCallback<Args> {\n const { leading = true, trailing = true } = options;\n\n // Stable wrapper that always invokes the current callback, refreshed via\n // useInsertionEffect so the throttled wrapper never goes stale.\n const stableFn = useEventCallback(fn);\n\n const lastCallRef = useRef<number>(0);\n const timerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const lastArgsRef = useRef<Args | null>(null);\n\n const throttled = useMemo<ThrottledCallback<Args>>(() => {\n const invoke = (now: number): void => {\n lastCallRef.current = now;\n const args = lastArgsRef.current;\n lastArgsRef.current = null;\n if (args) stableFn(...args);\n };\n\n const wrapper = (...args: Args): void => {\n // Date.now() runs only when the wrapper is invoked from an event/timer,\n // never during render, so it is not a render-purity concern here.\n // eslint-disable-next-line react-hooks/purity\n const now = Date.now();\n if (lastCallRef.current === 0 && !leading) {\n // Skip the leading fire by anchoring the window to \"now\".\n lastCallRef.current = now;\n }\n\n const elapsed = now - lastCallRef.current;\n lastArgsRef.current = args;\n\n if (elapsed >= delay) {\n if (timerRef.current !== null) {\n clearTimeout(timerRef.current);\n timerRef.current = null;\n }\n invoke(now);\n return;\n }\n\n if (trailing && timerRef.current === null) {\n timerRef.current = setTimeout(() => {\n timerRef.current = null;\n invoke(Date.now());\n }, delay - elapsed);\n }\n };\n\n wrapper.cancel = () => {\n if (timerRef.current !== null) {\n clearTimeout(timerRef.current);\n timerRef.current = null;\n }\n lastArgsRef.current = null;\n lastCallRef.current = 0;\n };\n\n return wrapper;\n }, [delay, leading, trailing, stableFn]);\n\n useEffect(\n () => () => {\n if (timerRef.current !== null) clearTimeout(timerRef.current);\n },\n []\n );\n\n return throttled;\n}\n"],"names":[],"mappings":";;;;AAWA;;;;;;;;;;;;;;;;;AAiBG;AACG;;;;AASJ;AAEA;AACA;AACA;AAEA;AACE;AACE;AACA;AACA;AACA;AAAU;AACZ;AAEA;;;;AAIE;;;AAGE;;AAGF;AACA;AAEA;AACE;AACE;AACA;;;;;;AAOF;AACE;AACA;AACF;;AAEJ;AAEA;AACE;AACE;AACA;;AAEF;AACA;AACF;AAEA;;AAGF;AAEI;AAA+B;;AAKnC;AACF;;"}
package/dist/esm/index.js CHANGED
@@ -52,6 +52,13 @@ export { Tooltip } from './components/primitives/Tooltip/Tooltip.js';
52
52
  export { VisuallyHidden } from './components/primitives/VisuallyHidden/VisuallyHidden.js';
53
53
  import 'react';
54
54
  import './components/primitives/canvas/CanvasContainer.js';
55
+ export { Viewport } from './components/primitives/viewport/Viewport.js';
56
+ export { ViewportLayer } from './components/primitives/viewport/ViewportLayer.js';
57
+ export { ViewportWorld } from './components/primitives/viewport/ViewportWorld.js';
58
+ export { ViewportOverlay } from './components/primitives/viewport/ViewportOverlay.js';
59
+ export { useViewportContext } from './components/primitives/viewport/ViewportContext.js';
60
+ export { getViewportPointerPosition, screenToWorld, worldToScreen } from './components/primitives/viewport/viewportCoords.js';
61
+ export { computeCenterTransform, computeFitTransform, computeZoomTowardPivot, normalizeRect } from './components/primitives/viewport/viewportMath.js';
55
62
  export { ColorPicker } from './components/controls/ColorPicker/ColorPicker.js';
56
63
  export { ColorSwatch } from './components/controls/ColorPicker/ColorSwatch.js';
57
64
  export { EyeDropper } from './components/controls/ColorPicker/EyeDropper.js';
@@ -60,12 +67,15 @@ export { MATERIAL_PALETTE } from './components/controls/ColorPicker/palettes/mat
60
67
  export { TAILWIND_PALETTE } from './components/controls/ColorPicker/palettes/tailwind.js';
61
68
  export { EARTH_PALETTE, MONOCHROME_PALETTE, NEON_PALETTE, PASTEL_PALETTE, PROFESSIONAL_PALETTES, SKIN_TONES_PALETTE, VINTAGE_PALETTE } from './components/controls/ColorPicker/palettes/professional.js';
62
69
  export { Combobox } from './components/controls/Combobox/Combobox.js';
70
+ export { FileTree } from './components/controls/FileTree/FileTree.js';
71
+ export { classifyExtension, getFileExtension, getFileIconKind } from './components/controls/FileTree/fileTreeIcons.js';
72
+ export { DEFAULT_FILE_TREE_LABELS } from './components/controls/FileTree/fileTreeLabels.js';
63
73
  export { FileUploader } from './components/controls/FileUploader/FileUploader.js';
64
74
  export { MultiSelect } from './components/controls/MultiSelect/MultiSelect.js';
65
75
  export { NumberInput } from './components/controls/NumberInput/NumberInput.js';
66
76
  export { KeyboardContextProvider, useEffectsOnKeyboard, useKeyboardContext } from './context/KeyboardContext.js';
67
- import './utils/mathExpression.js';
68
77
  import './utils/devWarn.js';
78
+ import './utils/mathExpression.js';
69
79
  export { Select } from './components/controls/Select/Select.js';
70
80
  export { Slider } from './components/controls/Slider/Slider.js';
71
81
  export { TagInput } from './components/controls/TagInput/TagInput.js';
@@ -80,10 +90,9 @@ export { BreadcrumbItem } from './components/navigation/Breadcrumbs/BreadcrumbIt
80
90
  export { BreadcrumbSeparator } from './components/navigation/Breadcrumbs/BreadcrumbSeparator.js';
81
91
  export { BreadcrumbEllipsis } from './components/navigation/Breadcrumbs/BreadcrumbEllipsis.js';
82
92
  export { ContextMenu } from './components/navigation/ContextMenu/ContextMenu.js';
83
- export { useContextMenuTarget } from './components/navigation/ContextMenu/useContextMenuTarget.js';
84
93
  export { Menu } from './components/navigation/Menu/Menu.js';
85
- export { useMenu } from './components/navigation/Menu/useMenu.js';
86
94
  export { Pagination } from './components/navigation/Pagination/Pagination.js';
95
+ export { PathBar } from './components/navigation/PathBar/PathBar.js';
87
96
  export { SegmentedControl } from './components/navigation/SegmentedControl/SegmentedControl.js';
88
97
  export { SegmentedControlItem } from './components/navigation/SegmentedControl/SegmentedControlItem.js';
89
98
  export { Tabs } from './components/navigation/Tabs/Tabs.js';
@@ -106,6 +115,12 @@ export { DialogClose } from './components/feedback/Dialog/DialogClose.js';
106
115
  export { CommandPalette } from './components/feedback/CommandPalette/CommandPalette.js';
107
116
  export { Drawer } from './components/feedback/Drawer/Drawer.js';
108
117
  export { EmptyState } from './components/feedback/EmptyState/EmptyState.js';
118
+ export { LogView } from './components/feedback/LogView/LogView.js';
119
+ export { LogViewBody } from './components/feedback/LogView/LogViewBody.js';
120
+ export { LogViewClear, LogViewCopy, LogViewFooter, LogViewLevelFilter, LogViewSearch, LogViewToolbar } from './components/feedback/LogView/LogViewParts.js';
121
+ export { useLogViewStats } from './components/feedback/LogView/LogViewContext.js';
122
+ export { DEFAULT_LOG_VIEW_LABELS } from './components/feedback/LogView/logViewLabels.js';
123
+ export { defaultFormatTimestamp, entriesToText, entryToText, getHighlightSegments } from './components/feedback/LogView/logViewUtils.js';
109
124
  export { ProgressBar } from './components/feedback/ProgressBar/ProgressBar.js';
110
125
  export { CircularProgress } from './components/feedback/ProgressBar/CircularProgress.js';
111
126
  export { Skeleton } from './components/feedback/Skeleton/Skeleton.js';
@@ -115,6 +130,8 @@ export { Spinner } from './components/feedback/Spinner/Spinner.js';
115
130
  export { Stat } from './components/feedback/Stat/Stat.js';
116
131
  export { ToastProvider } from './components/feedback/Toast/ToastProvider.js';
117
132
  export { useToast } from './components/feedback/Toast/useToast.js';
133
+ export { AssetBrowser } from './components/editor/AssetBrowser/AssetBrowser.js';
134
+ export { DEFAULT_ASSET_BROWSER_LABELS } from './components/editor/AssetBrowser/assetBrowserLabels.js';
118
135
  export { PropertyPanel } from './components/editor/PropertyInspector/PropertyPanel.js';
119
136
  export { PropertySection } from './components/editor/PropertyInspector/PropertySection.js';
120
137
  export { PropertyRow } from './components/editor/PropertyInspector/PropertyRow.js';
@@ -123,6 +140,23 @@ export { usePropertyUndo } from './components/editor/PropertyInspector/useProper
123
140
  export { ViewportGizmo } from './components/editor/ViewportGizmo/ViewportGizmo.js';
124
141
  export { axisToPresetView, eulerToRotationMatrix, gizmoHitTest, presetViewToOrientation, projectAxes, projectToCanvas, quaternionToEuler } from './components/editor/ViewportGizmo/gizmoMath.js';
125
142
  export { TransformControl } from './components/editor/TransformControl/TransformControl.js';
143
+ export { Minimap } from './components/editor/Minimap/index.js';
144
+ export { NodeGraph } from './components/editor/NodeGraph/NodeGraph.js';
145
+ import 'react/jsx-runtime';
146
+ export { ViewportMinimap } from './components/editor/Minimap/ViewportMinimap.js';
147
+ export { cx as cn, cx } from './utils/cx.js';
148
+ import './components/editor/NodeGraph/NodeGraph.css.js';
149
+ export { useNodeGraphData, useNodeGraphHover, useNodeGraphInteraction, useNodeGraphSelection, useNodeGraphStore } from './components/editor/NodeGraph/NodeGraphContext.js';
150
+ export { NodeGraphBackground, NodeGraphMinimap } from './components/editor/NodeGraph/NodeGraphSlots.js';
151
+ export { NodeGraphPort } from './components/editor/NodeGraph/NodeGraphPort.js';
152
+ export { NodeGraphPortVisual } from './components/editor/NodeGraph/NodeGraphPortVisual.js';
153
+ export { NodeGraphPin } from './components/editor/NodeGraph/NodeGraphPin.js';
154
+ export { NodeGraphNodeSection } from './components/editor/NodeGraph/NodeGraphNodeSection.js';
155
+ export { useNodeGraph } from './components/editor/NodeGraph/useNodeGraph.js';
156
+ export { createTypeMatchValidator } from './components/editor/NodeGraph/createTypeMatchValidator.js';
157
+ export { duplicateNodes, edgesConnectedToPort } from './components/editor/NodeGraph/nodeGraphActions.js';
158
+ export { generateEdgeId, generateNodeId } from './components/editor/NodeGraph/nodeGraphIds.js';
159
+ export { NODE_GRAPH_SLOT } from './components/editor/NodeGraph/NodeGraph.types.js';
126
160
  export { ChatPanel } from './components/editor/ChatPanel/ChatPanel.js';
127
161
  export { ChatMessageList } from './components/editor/ChatPanel/ChatMessageList.js';
128
162
  export { ChatMessage } from './components/editor/ChatPanel/ChatMessage.js';
@@ -140,6 +174,7 @@ export { ChatMarkdownRenderer } from './components/editor/ChatPanel/ChatMarkdown
140
174
  export { useChatMessages } from './components/editor/ChatPanel/useChatMessages.js';
141
175
  export { useChatInput } from './components/editor/ChatPanel/useChatInput.js';
142
176
  export { useChatScroll } from './components/editor/ChatPanel/useChatScroll.js';
177
+ export { Timeline } from './components/editor/Timeline/index.js';
143
178
  export { AppShell, useAppShell } from './components/shell/AppShell/AppShell.js';
144
179
  export { FloatingManager, FloatingPanel } from './components/shell/FloatingPanel/FloatingPanel.js';
145
180
  export { MenuBar } from './components/shell/MenuBar/MenuBar.js';
@@ -176,6 +211,7 @@ export { GridIcon } from './components/Icons/GridIcon.js';
176
211
  export { HeartIcon } from './components/Icons/HeartIcon.js';
177
212
  export { HelpIcon } from './components/Icons/HelpIcon.js';
178
213
  export { HomeIcon } from './components/Icons/HomeIcon.js';
214
+ export { ImageIcon } from './components/Icons/ImageIcon.js';
179
215
  export { InfoIcon } from './components/Icons/InfoIcon.js';
180
216
  export { LastIcon } from './components/Icons/LastIcon.js';
181
217
  export { LinkIcon } from './components/Icons/LinkIcon.js';
@@ -231,10 +267,19 @@ export { GitBranchIcon } from './components/Icons/GitBranchIcon.js';
231
267
  export { BugIcon } from './components/Icons/BugIcon.js';
232
268
  export { MinusIcon } from './components/Icons/MinusIcon.js';
233
269
  export { PinIcon } from './components/Icons/PinIcon.js';
270
+ export { OrbitIcon } from './components/Icons/OrbitIcon.js';
271
+ export { RotateIcon } from './components/Icons/RotateIcon.js';
272
+ export { SpinIcon } from './components/Icons/SpinIcon.js';
273
+ export { CameraIcon } from './components/Icons/CameraIcon.js';
274
+ export { CubeIcon } from './components/Icons/CubeIcon.js';
275
+ export { ZoomFitIcon } from './components/Icons/ZoomFitIcon.js';
234
276
  export { useKeyboard } from './hooks/useKeyboard/useKeyboard.js';
235
277
  export { useControlledState } from './hooks/useControlledState/useControlledState.js';
236
278
  export { useFocusTrap } from './hooks/useFocusTrap/useFocusTrap.js';
237
279
  export { useMergedRef } from './hooks/useMergedRef/useMergedRef.js';
280
+ export { useLatest } from './hooks/useLatest/useLatest.js';
281
+ export { useEventCallback } from './hooks/useEventCallback/useEventCallback.js';
282
+ export { useIsMounted } from './hooks/useIsMounted/useIsMounted.js';
238
283
  export { useResizeObserver } from './hooks/useResizeObserver/useResizeObserver.js';
239
284
  export { useDisclosure } from './hooks/useDisclosure/useDisclosure.js';
240
285
  export { useClipboard } from './hooks/useClipboard/useClipboard.js';
@@ -248,8 +293,22 @@ export { useThrottledCallback } from './hooks/useThrottledCallback/useThrottledC
248
293
  export { useIntersectionObserver } from './hooks/useIntersectionObserver/useIntersectionObserver.js';
249
294
  export { useListboxNav } from './hooks/useListboxNav/useListboxNav.js';
250
295
  export { useTheme } from './hooks/useTheme/useTheme.js';
251
- export { cx as cn, cx } from './utils/cx.js';
296
+ import './hooks/useNavigationHistory/useNavigationHistory.js';
252
297
  export { getKeyGlyph, getPlatform, parseShortcut } from './utils/platform.js';
253
298
  export { animBlink, animFadeIn, animPulse, animSpin, animWave, blinkKeyframe, fadeInKeyframe, pulseKeyframe, spinKeyframe, waveKeyframe } from './utils/animations.css.js';
299
+ export { MINIMAP_SLOT } from './components/editor/Minimap/Minimap.types.js';
300
+ export { MinimapCorner } from './components/editor/Minimap/MinimapCorner.js';
301
+ export { MinimapFooter } from './components/editor/Minimap/MinimapFooter.js';
302
+ export { MinimapTitle } from './components/editor/Minimap/MinimapTitle.js';
303
+ export { TIMELINE_SLOT } from './components/editor/Timeline/Timeline.types.js';
304
+ export { TimelineFooter } from './components/editor/Timeline/TimelineFooter.js';
305
+ export { TimelineMinimap } from './components/editor/Timeline/TimelineMinimap.js';
306
+ export { TimelineToolbar } from './components/editor/Timeline/TimelineToolbar.js';
307
+ export { TimelineTrackScale } from './components/editor/Timeline/TimelineTrackScale.js';
308
+ export { computeBoundsFromItems } from './components/editor/Minimap/computeBoundsFromItems.js';
309
+ export { framesToTimecode } from './components/editor/Timeline/timelineCoords.js';
254
310
  export { isKeyPressed, isModifierKey } from './hooks/useKeyboard/utils.js';
311
+ export { selectedTangentMode, setSelectedTangentMode } from './components/editor/Timeline/timelineEdits.js';
312
+ export { useMinimapContext, useMinimapDragState, useMinimapGeometry, useMinimapHover } from './components/editor/Minimap/MinimapContext.js';
313
+ export { useTimelineContext, useTimelineGeometry, useTimelinePlayhead, useTimelineSelectedTangentMode, useTimelineSelection } from './components/editor/Timeline/TimelineContext.js';
255
314
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,37 @@
1
+ /******************************************************************************
2
+ Copyright (c) Microsoft Corporation.
3
+
4
+ Permission to use, copy, modify, and/or distribute this software for any
5
+ purpose with or without fee is hereby granted.
6
+
7
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
8
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
9
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
10
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
11
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
12
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
13
+ PERFORMANCE OF THIS SOFTWARE.
14
+ ***************************************************************************** */
15
+ /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
16
+
17
+
18
+ function __classPrivateFieldGet(receiver, state, kind, f) {
19
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
20
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
21
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
22
+ }
23
+
24
+ function __classPrivateFieldSet(receiver, state, value, kind, f) {
25
+ if (kind === "m") throw new TypeError("Private method is not writable");
26
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
27
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
28
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
29
+ }
30
+
31
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
32
+ var e = new Error(message);
33
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
34
+ };
35
+
36
+ export { __classPrivateFieldGet, __classPrivateFieldSet };
37
+ //# sourceMappingURL=tslib.es6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tslib.es6.js","sources":["node_modules/tslib/tslib.es6.js"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA8QA;AACO,SAAS,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE;AACjE,IAAI,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;AACjG,IAAI,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC,0EAA0E,CAAC,CAAC;AACvL,IAAI,OAAO,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAClG,CAAC;AACD;AACO,SAAS,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE;AACxE,IAAI,IAAI,IAAI,KAAK,GAAG,EAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;AAC5E,IAAI,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;AACjG,IAAI,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC,yEAAyE,CAAC,CAAC;AACtL,IAAI,OAAO,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;AAC9G,CAAC;AA8BD;AACuB,OAAO,eAAe,KAAK,UAAU,GAAG,eAAe,GAAG,UAAU,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE;AACvH,IAAI,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AAC/B,IAAI,OAAO,CAAC,CAAC,IAAI,GAAG,iBAAiB,EAAE,CAAC,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,UAAU,GAAG,UAAU,EAAE,CAAC,CAAC;AACrF;;;;","x_google_ignoreList":[0]}
@@ -0,0 +1,3 @@
1
+ import './assets/src/theme/darkTheme.css.ts.vanilla-BHZ3ecRn.css';
2
+ import './assets/src/theme/globalScrollbars.css.ts.vanilla-BAJwnUEJ.css';
3
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -1,15 +1,17 @@
1
1
  "use client";
2
2
  import { jsx } from 'react/jsx-runtime';
3
3
  import { useEffect } from 'react';
4
- import { GLOBAL_SCROLLBARS_CLASS } from './globalScrollbars.css.js';
5
4
  import { KeyboardContextProvider } from '../context/KeyboardContext.js';
5
+ import { GLOBAL_SCROLLBARS_CLASS } from './globalScrollbars.css.js';
6
6
 
7
7
  /**
8
8
  * Theme provider for Entangle UI components.
9
9
  *
10
- * The dark theme is applied globally via CSS custom properties on `:root`,
11
- * so this provider is a pass-through for most apps. Use it to opt into
12
- * additional global behaviors such as native-scrollbar theming.
10
+ * The dark theme's `--etui-*` custom properties are registered on `:root`
11
+ * by the canonical stylesheet `import 'entangle-ui/styles.css'` once at your
12
+ * app root. With that loaded this provider is optional and acts as a
13
+ * pass-through for most apps; use it to opt into additional global behaviors
14
+ * such as native-scrollbar theming (`globalScrollbars`) and keyboard context.
13
15
  *
14
16
  * For scoped theme overrides, use `VanillaThemeProvider` with a custom
15
17
  * class generated by `createCustomTheme()`.
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeProvider.js","sources":["../../../../src/theme/ThemeProvider.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAqBA;;;;;;;;;AASG;AACI;;AAKH;;;;AAGA;AACA;AACA;AACE;AACF;AACF;AAEA;AACF;;"}
1
+ {"version":3,"file":"ThemeProvider.js","sources":["src/theme/ThemeProvider.tsx"],"sourcesContent":["'use client';\n\nimport React, { useEffect } from 'react';\n\nimport { KeyboardContextProvider } from '@/context/KeyboardContext';\n\nimport { GLOBAL_SCROLLBARS_CLASS } from './globalScrollbars.css';\n\nexport interface ThemeProviderProps {\n children: React.ReactNode;\n /**\n * When true, apply Entangle's dark-theme scrollbar styling globally\n * (thin 8px track, muted thumb). The class is added to\n * `document.body` and removed on unmount.\n *\n * Opt-in by design: many app shells run alongside other UI\n * frameworks where forcing scrollbar styles would be invasive.\n *\n * @default false\n */\n globalScrollbars?: boolean;\n}\n\n/**\n * Theme provider for Entangle UI components.\n *\n * The dark theme's `--etui-*` custom properties are registered on `:root`\n * by the canonical stylesheet — `import 'entangle-ui/styles.css'` once at your\n * app root. With that loaded this provider is optional and acts as a\n * pass-through for most apps; use it to opt into additional global behaviors\n * such as native-scrollbar theming (`globalScrollbars`) and keyboard context.\n *\n * For scoped theme overrides, use `VanillaThemeProvider` with a custom\n * class generated by `createCustomTheme()`.\n */\nexport const ThemeProvider: React.FC<ThemeProviderProps> = ({\n children,\n globalScrollbars = false,\n}) => {\n useEffect(() => {\n if (!globalScrollbars) return;\n if (typeof document === 'undefined') return;\n\n const body = document.body;\n body.classList.add(GLOBAL_SCROLLBARS_CLASS);\n return () => {\n body.classList.remove(GLOBAL_SCROLLBARS_CLASS);\n };\n }, [globalScrollbars]);\n\n return <KeyboardContextProvider>{children}</KeyboardContextProvider>;\n};\n"],"names":[],"mappings":";;;;;;AAuBA;;;;;;;;;;;AAWG;AACI;;AAKH;;;;AAGA;AACA;AACA;AACE;AACF;AACF;AAEA;AACF;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"VanillaThemeProvider.js","sources":["../../../../src/theme/VanillaThemeProvider.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":";;AAaA;;;;;;;;;;;;;;;;;AAiBG;AACI,MAAM,oBAAoB,GAAwC,CAAC,EACxE,QAAQ,EACR,SAAS,GACV,KAAI;AACH,IAAA,OAAOA,aAAK,SAAS,EAAE,SAAS,EAAA,QAAA,EAAG,QAAQ,GAAO;AACpD;;;;"}
1
+ {"version":3,"file":"VanillaThemeProvider.js","sources":["src/theme/VanillaThemeProvider.tsx"],"sourcesContent":["import React from 'react';\n\nexport interface VanillaThemeProviderProps {\n children: React.ReactNode;\n /**\n * CSS class name that sets theme CSS custom properties.\n * Can be a class from createTheme() or a custom class.\n *\n * When omitted, components inherit tokens from :root (dark theme).\n */\n className?: string;\n}\n\n/**\n * Optional wrapper for scoped theme overrides.\n *\n * The dark theme is applied globally on :root — most apps don't need\n * VanillaThemeProvider at all. Use it only when you need a different theme\n * for a subtree (e.g. a light-themed dialog inside a dark app).\n *\n * @example\n * ```tsx\n * // No provider needed for default dark theme:\n * <App />\n *\n * // Scoped override for a subtree:\n * <VanillaThemeProvider className=\"my-light-section\">\n * <SettingsPanel />\n * </VanillaThemeProvider>\n * ```\n */\nexport const VanillaThemeProvider: React.FC<VanillaThemeProviderProps> = ({\n children,\n className,\n}) => {\n return <div className={className}>{children}</div>;\n};\n"],"names":["_jsx"],"mappings":";;AAaA;;;;;;;;;;;;;;;;;AAiBG;AACI,MAAM,oBAAoB,GAAwC,CAAC,EACxE,QAAQ,EACR,SAAS,GACV,KAAI;AACH,IAAA,OAAOA,aAAK,SAAS,EAAE,SAAS,EAAA,QAAA,EAAG,QAAQ,GAAO;AACpD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"breakpoints.js","sources":["../../../../src/theme/breakpoints.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;;;;;;;;;AASG;AACI,MAAM,WAAW,GAAG;AACzB,IAAA,EAAE,EAAE,CAAC;AACL,IAAA,EAAE,EAAE,GAAG;AACP,IAAA,EAAE,EAAE,GAAG;AACP,IAAA,EAAE,EAAE,GAAG;AACP,IAAA,EAAE,EAAE,IAAI;;AAKH,MAAM,gBAAgB,GAA8B;IACzD,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;;;;;"}
1
+ {"version":3,"file":"breakpoints.js","sources":["src/theme/breakpoints.ts"],"sourcesContent":["/**\n * Library breakpoint values (px) — used by responsive components like\n * `Stack` and exposed via `useBreakpoint`.\n *\n * Values follow the same scale Stack already uses (576/768/992/1200) and\n * are part of the public API.\n *\n * `xs` is always `0` and effectively means \"no minimum\"; every viewport\n * matches `xs`.\n */\nexport const breakpoints = {\n xs: 0,\n sm: 576,\n md: 768,\n lg: 992,\n xl: 1200,\n} as const;\n\nexport type Breakpoint = keyof typeof breakpoints;\n\nexport const BREAKPOINT_ORDER: ReadonlyArray<Breakpoint> = [\n 'xs',\n 'sm',\n 'md',\n 'lg',\n 'xl',\n];\n"],"names":[],"mappings":"AAAA;;;;;;;;;AASG;AACI,MAAM,WAAW,GAAG;AACzB,IAAA,EAAE,EAAE,CAAC;AACL,IAAA,EAAE,EAAE,GAAG;AACP,IAAA,EAAE,EAAE,GAAG;AACP,IAAA,EAAE,EAAE,GAAG;AACP,IAAA,EAAE,EAAE,IAAI;;AAKH,MAAM,gBAAgB,GAA8B;IACzD,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;;;;;"}
@@ -1,4 +1,4 @@
1
- var vars = {colors:{background:{primary:'var(--etui-color-bg-primary)',secondary:'var(--etui-color-bg-secondary)',tertiary:'var(--etui-color-bg-tertiary)',elevated:'var(--etui-color-bg-elevated)',inset:'var(--etui-color-bg-inset)'},surface:{'default':'var(--etui-color-surface-default)',hover:'var(--etui-color-surface-hover)',active:'var(--etui-color-surface-active)',disabled:'var(--etui-color-surface-disabled)',whiteOverlay:'var(--etui-color-surface-white-overlay)',row:'var(--etui-color-surface-row)',rowHover:'var(--etui-color-surface-row-hover)'},border:{'default':'var(--etui-color-border-default)',focus:'var(--etui-color-border-focus)',error:'var(--etui-color-border-error)',success:'var(--etui-color-border-success)'},text:{primary:'var(--etui-color-text-primary)',secondary:'var(--etui-color-text-secondary)',muted:'var(--etui-color-text-muted)',disabled:'var(--etui-color-text-disabled)'},accent:{primary:'var(--etui-color-accent-primary)',secondary:'var(--etui-color-accent-secondary)',success:'var(--etui-color-accent-success)',warning:'var(--etui-color-accent-warning)',error:'var(--etui-color-accent-error)'},backdrop:'var(--etui-color-backdrop)'},spacing:{xs:'var(--etui-spacing-xs)',sm:'var(--etui-spacing-sm)',md:'var(--etui-spacing-md)',lg:'var(--etui-spacing-lg)',xl:'var(--etui-spacing-xl)',xxl:'var(--etui-spacing-xxl)',xxxl:'var(--etui-spacing-xxxl)'},typography:{fontSize:{xxs:'var(--etui-font-size-xxs)',xs:'var(--etui-font-size-xs)',sm:'var(--etui-font-size-sm)',md:'var(--etui-font-size-md)',lg:'var(--etui-font-size-lg)',xl:'var(--etui-font-size-xl)'},fontWeight:{normal:'var(--etui-font-weight-normal)',medium:'var(--etui-font-weight-medium)',semibold:'var(--etui-font-weight-semibold)'},lineHeight:{tight:'var(--etui-line-height-tight)',normal:'var(--etui-line-height-normal)',relaxed:'var(--etui-line-height-relaxed)'},fontFamily:{mono:'var(--etui-font-family-mono)',sans:'var(--etui-font-family-sans)'}},borderRadius:{none:'var(--etui-radius-none)',sm:'var(--etui-radius-sm)',md:'var(--etui-radius-md)',lg:'var(--etui-radius-lg)'},shadows:{sm:'var(--etui-shadow-sm)',md:'var(--etui-shadow-md)',lg:'var(--etui-shadow-lg)',xl:'var(--etui-shadow-xl)',focus:'var(--etui-shadow-focus)',separatorBottom:'var(--etui-shadow-separator-bottom)',separatorRight:'var(--etui-shadow-separator-right)',separatorLeft:'var(--etui-shadow-separator-left)',thumb:'var(--etui-shadow-thumb)'},transitions:{fast:'var(--etui-transition-fast)',normal:'var(--etui-transition-normal)',slow:'var(--etui-transition-slow)'},zIndex:{base:'var(--etui-z-base)',dropdown:'var(--etui-z-dropdown)',popover:'var(--etui-z-popover)',tooltip:'var(--etui-z-tooltip)',modal:'var(--etui-z-modal)'},shell:{menuBar:{height:'var(--etui-shell-menubar-height)',bg:'var(--etui-shell-menubar-bg)',hoverBg:'var(--etui-shell-menubar-hover-bg)',activeBg:'var(--etui-shell-menubar-active-bg)',text:'var(--etui-shell-menubar-text)',shortcutText:'var(--etui-shell-menubar-shortcut-text)'},toolbar:{height:{sm:'var(--etui-shell-toolbar-height-sm)',md:'var(--etui-shell-toolbar-height-md)'},bg:'var(--etui-shell-toolbar-bg)',separator:'var(--etui-shell-toolbar-separator)'},statusBar:{height:'var(--etui-shell-statusbar-height)',heightMd:'var(--etui-shell-statusbar-height-md)',bg:'var(--etui-shell-statusbar-bg)',text:'var(--etui-shell-statusbar-text)'},dock:{tabHeight:'var(--etui-shell-dock-tab-height)',tabBg:'var(--etui-shell-dock-tab-bg)',tabActiveBg:'var(--etui-shell-dock-tab-active-bg)',tabHoverBg:'var(--etui-shell-dock-tab-hover-bg)',tabText:'var(--etui-shell-dock-tab-text)',tabActiveText:'var(--etui-shell-dock-tab-active-text)',splitterSize:'var(--etui-shell-dock-splitter-size)',splitterColor:'var(--etui-shell-dock-splitter-color)',splitterHoverColor:'var(--etui-shell-dock-splitter-hover-color)',borderBarBg:'var(--etui-shell-dock-border-bar-bg)',borderBarSize:'var(--etui-shell-dock-border-bar-size)',dropOverlay:'var(--etui-shell-dock-drop-overlay)'}},storybook:{canvas:{gradientStart:'var(--etui-storybook-gradient-start)',gradientMid:'var(--etui-storybook-gradient-mid)',gradientEnd:'var(--etui-storybook-gradient-end)'}}};
1
+ var vars = {colors:{background:{primary:'var(--etui-color-bg-primary)',secondary:'var(--etui-color-bg-secondary)',tertiary:'var(--etui-color-bg-tertiary)',elevated:'var(--etui-color-bg-elevated)',inset:'var(--etui-color-bg-inset)'},surface:{'default':'var(--etui-color-surface-default)',hover:'var(--etui-color-surface-hover)',active:'var(--etui-color-surface-active)',disabled:'var(--etui-color-surface-disabled)',whiteOverlay:'var(--etui-color-surface-white-overlay)',row:'var(--etui-color-surface-row)',rowHover:'var(--etui-color-surface-row-hover)'},border:{'default':'var(--etui-color-border-default)',focus:'var(--etui-color-border-focus)',error:'var(--etui-color-border-error)',success:'var(--etui-color-border-success)'},text:{primary:'var(--etui-color-text-primary)',secondary:'var(--etui-color-text-secondary)',muted:'var(--etui-color-text-muted)',disabled:'var(--etui-color-text-disabled)'},accent:{primary:'var(--etui-color-accent-primary)',secondary:'var(--etui-color-accent-secondary)',success:'var(--etui-color-accent-success)',warning:'var(--etui-color-accent-warning)',error:'var(--etui-color-accent-error)'},backdrop:'var(--etui-color-backdrop)'},spacing:{xs:'var(--etui-spacing-xs)',sm:'var(--etui-spacing-sm)',md:'var(--etui-spacing-md)',lg:'var(--etui-spacing-lg)',xl:'var(--etui-spacing-xl)',xxl:'var(--etui-spacing-xxl)',xxxl:'var(--etui-spacing-xxxl)'},typography:{fontSize:{xxs:'var(--etui-font-size-xxs)',xs:'var(--etui-font-size-xs)',sm:'var(--etui-font-size-sm)',md:'var(--etui-font-size-md)',lg:'var(--etui-font-size-lg)',xl:'var(--etui-font-size-xl)'},fontWeight:{normal:'var(--etui-font-weight-normal)',medium:'var(--etui-font-weight-medium)',semibold:'var(--etui-font-weight-semibold)'},lineHeight:{tight:'var(--etui-line-height-tight)',normal:'var(--etui-line-height-normal)',relaxed:'var(--etui-line-height-relaxed)'},fontFamily:{mono:'var(--etui-font-family-mono)',sans:'var(--etui-font-family-sans)'}},borderRadius:{none:'var(--etui-radius-none)',sm:'var(--etui-radius-sm)',md:'var(--etui-radius-md)',lg:'var(--etui-radius-lg)'},shadows:{sm:'var(--etui-shadow-sm)',md:'var(--etui-shadow-md)',lg:'var(--etui-shadow-lg)',xl:'var(--etui-shadow-xl)',focus:'var(--etui-shadow-focus)',separatorBottom:'var(--etui-shadow-separator-bottom)',separatorRight:'var(--etui-shadow-separator-right)',separatorLeft:'var(--etui-shadow-separator-left)',thumb:'var(--etui-shadow-thumb)'},transitions:{fast:'var(--etui-transition-fast)',normal:'var(--etui-transition-normal)',slow:'var(--etui-transition-slow)'},zIndex:{base:'var(--etui-z-base)',dropdown:'var(--etui-z-dropdown)',popover:'var(--etui-z-popover)',tooltip:'var(--etui-z-tooltip)',modal:'var(--etui-z-modal)'},shell:{menuBar:{height:'var(--etui-shell-menubar-height)',bg:'var(--etui-shell-menubar-bg)',hoverBg:'var(--etui-shell-menubar-hover-bg)',activeBg:'var(--etui-shell-menubar-active-bg)',text:'var(--etui-shell-menubar-text)',shortcutText:'var(--etui-shell-menubar-shortcut-text)'},toolbar:{height:{sm:'var(--etui-shell-toolbar-height-sm)',md:'var(--etui-shell-toolbar-height-md)'},bg:'var(--etui-shell-toolbar-bg)',separator:'var(--etui-shell-toolbar-separator)'},statusBar:{height:'var(--etui-shell-statusbar-height)',heightMd:'var(--etui-shell-statusbar-height-md)',bg:'var(--etui-shell-statusbar-bg)',text:'var(--etui-shell-statusbar-text)'},dock:{tabHeight:'var(--etui-shell-dock-tab-height)',tabBg:'var(--etui-shell-dock-tab-bg)',tabActiveBg:'var(--etui-shell-dock-tab-active-bg)',tabHoverBg:'var(--etui-shell-dock-tab-hover-bg)',tabText:'var(--etui-shell-dock-tab-text)',tabActiveText:'var(--etui-shell-dock-tab-active-text)',splitterSize:'var(--etui-shell-dock-splitter-size)',splitterColor:'var(--etui-shell-dock-splitter-color)',splitterHoverColor:'var(--etui-shell-dock-splitter-hover-color)',borderBarBg:'var(--etui-shell-dock-border-bar-bg)',borderBarSize:'var(--etui-shell-dock-border-bar-size)',dropOverlay:'var(--etui-shell-dock-drop-overlay)'}},demo:{canvas:{gradientStart:'var(--etui-demo-gradient-start)',gradientMid:'var(--etui-demo-gradient-mid)',gradientEnd:'var(--etui-demo-gradient-end)'}}};
2
2
 
3
3
  export { vars };
4
4
  //# sourceMappingURL=contract.css.js.map
@@ -1,7 +1,7 @@
1
- import { createGlobalTheme } from '../node_modules/@vanilla-extract/css/dist/vanilla-extract-css.esm.js';
1
+ import { createGlobalTheme } from '@vanilla-extract/css';
2
+ import { mergeDeep } from '../utils/objects.js';
2
3
  import { vars } from './contract.css.js';
3
4
  import { darkThemeValues } from './darkTheme.css.js';
4
- import { mergeDeep } from '../utils/objects.js';
5
5
 
6
6
  /**
7
7
  * Creates a custom theme scoped to a CSS selector by deep-merging
@@ -1 +1 @@
1
- {"version":3,"file":"createCustomTheme.js","sources":["../../../../src/theme/createCustomTheme.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AASA;;;;;;;;;;;;;;;;;;;;AAoBG;AACG,SAAU,iBAAiB,CAC/B,QAAgB,EAChB,SAAmC,EAAA;IAEnC,MAAM,MAAM,GAAG,SAAS,CACtB,eAAqD,EACrD,SAA4D,CAC9C;AAChB,IAAA,iBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC;AAC3C;;;;"}
1
+ {"version":3,"file":"createCustomTheme.js","sources":["src/theme/createCustomTheme.ts"],"sourcesContent":["import { createGlobalTheme } from '@vanilla-extract/css';\n\nimport { mergeDeep } from '@/utils/objects';\n\nimport { vars } from './contract.css';\nimport { darkThemeValues } from './darkTheme.css';\n\nimport type { DarkThemeValues } from './darkTheme.css';\nimport type { DeepPartial } from '@/types/utilities';\n\nexport type ThemeValues = DarkThemeValues;\n\n/**\n * Creates a custom theme scoped to a CSS selector by deep-merging\n * overrides onto the dark theme defaults.\n *\n * MUST be called in a .css.ts file (build-time only).\n *\n * @param selector - CSS selector to scope the theme to (e.g. '.my-brand', '[data-theme=\"light\"]')\n * @param overrides - Partial theme values to override\n *\n * @example\n * ```typescript\n * // my-theme.css.ts\n * import { createCustomTheme } from 'entangle-ui/theme';\n *\n * createCustomTheme('.my-brand', {\n * colors: {\n * accent: { primary: '#ff6600' },\n * },\n * });\n * ```\n */\nexport function createCustomTheme(\n selector: string,\n overrides: DeepPartial<ThemeValues>\n) {\n const merged = mergeDeep(\n darkThemeValues as unknown as Record<string, unknown>,\n overrides as unknown as DeepPartial<Record<string, unknown>>\n ) as ThemeValues;\n createGlobalTheme(selector, vars, merged);\n}\n"],"names":[],"mappings":";;;;;AAYA;;;;;;;;;;;;;;;;;;;;AAoBG;AACG,SAAU,iBAAiB,CAC/B,QAAgB,EAChB,SAAmC,EAAA;IAEnC,MAAM,MAAM,GAAG,SAAS,CACtB,eAAqD,EACrD,SAA4D,CAC9C;AAChB,IAAA,iBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC;AAC3C;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"createLightTheme.js","sources":["../../../../src/theme/createLightTheme.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAEA;;;;;;;;;;;;;;;;;;;;AAoBG;SACa,gBAAgB,GAAA;AAC9B,IAAA,OAAO,eAAe;AACxB;;;;"}
1
+ {"version":3,"file":"createLightTheme.js","sources":["src/theme/createLightTheme.ts"],"sourcesContent":["import { lightThemeClass } from './lightTheme.css';\n\n/**\n * Returns the light-theme CSS class. Apply the returned class to any\n * subtree (typically via `VanillaThemeProvider`) to flip its tokens\n * from the dark default to the light preset.\n *\n * The class is generated at build time inside `lightTheme.css.ts` (where\n * Vanilla Extract's file scope is set), so this helper is safe to call\n * from any `.ts`/`.tsx` file — no `.css.ts` wrapper required. Consumers\n * who prefer can also import `lightThemeClass` directly from the package.\n *\n * @example\n * ```tsx\n * import { createLightTheme, VanillaThemeProvider } from 'entangle-ui';\n *\n * const lightThemeClass = createLightTheme();\n *\n * <VanillaThemeProvider className={lightThemeClass}>\n * <SettingsPanel />\n * </VanillaThemeProvider>\n * ```\n */\nexport function createLightTheme(): string {\n return lightThemeClass;\n}\n"],"names":[],"mappings":";;AAEA;;;;;;;;;;;;;;;;;;;;AAoBG;SACa,gBAAgB,GAAA;AAC9B,IAAA,OAAO,eAAe;AACxB;;;;"}
@@ -1,6 +1,6 @@
1
- import './../assets/src/theme/darkTheme.css.ts.vanilla-ab1WD4dr.css';
1
+ import './../assets/src/theme/darkTheme.css.ts.vanilla-BHZ3ecRn.css';
2
2
 
3
- var darkThemeValues = {colors:{background:{primary:'#1a1a1a',secondary:'#2d2d2d',tertiary:'#3a3a3a',elevated:'#404040',inset:'rgba(0, 0, 0, 0.2)'},surface:{'default':'#2d2d2d',hover:'#363636',active:'#404040',disabled:'#1f1f1f',whiteOverlay:'rgba(255, 255, 255, 0.1)',row:'transparent',rowHover:'rgba(255, 255, 255, 0.03)'},border:{'default':'#4a4a4a',focus:'#007acc',error:'#f44336',success:'#4caf50'},text:{primary:'#ffffff',secondary:'#cccccc',muted:'#888888',disabled:'#555555'},accent:{primary:'#007acc',secondary:'#005a9e',success:'#4caf50',warning:'#ff9800',error:'#f44336'},backdrop:'rgba(0, 0, 0, 0.6)'},spacing:{xs:'2px',sm:'4px',md:'8px',lg:'12px',xl:'16px',xxl:'24px',xxxl:'32px'},typography:{fontSize:{xxs:'9px',xs:'10px',sm:'11px',md:'12px',lg:'14px',xl:'16px'},fontWeight:{normal:'400',medium:'500',semibold:'600'},lineHeight:{tight:'1.2',normal:'1.4',relaxed:'1.6'},fontFamily:{mono:'SF Mono, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',sans:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif'}},borderRadius:{none:'0px',sm:'2px',md:'4px',lg:'6px'},shadows:{sm:'0 1px 2px rgba(0, 0, 0, 0.2)',md:'0 2px 4px rgba(0, 0, 0, 0.3)',lg:'0 4px 8px rgba(0, 0, 0, 0.4)',xl:'0 8px 16px rgba(0, 0, 0, 0.5)',focus:'0 0 0 2px rgba(0, 122, 204, 0.4)',separatorBottom:'0 1px 2px rgba(0, 0, 0, 0.18)',separatorRight:'1px 0 2px rgba(0, 0, 0, 0.18)',separatorLeft:'-1px 0 2px rgba(0, 0, 0, 0.18)',thumb:'0 0 2px rgba(0, 0, 0, 0.5)'},transitions:{fast:'100ms ease-out',normal:'200ms ease-out',slow:'300ms ease-out'},zIndex:{base:'1',dropdown:'1000',popover:'1000',tooltip:'1000',modal:'1100'},shell:{menuBar:{height:'28px',bg:'#2d2d2d',hoverBg:'#363636',activeBg:'#005a9e',text:'#ffffff',shortcutText:'#888888'},toolbar:{height:{sm:'32px',md:'40px'},bg:'#2d2d2d',separator:'#4a4a4a'},statusBar:{height:'22px',heightMd:'26px',bg:'#007acc',text:'#ffffff'},dock:{tabHeight:'28px',tabBg:'#2d2d2d',tabActiveBg:'#1a1a1a',tabHoverBg:'#363636',tabText:'#cccccc',tabActiveText:'#ffffff',splitterSize:'4px',splitterColor:'#4a4a4a',splitterHoverColor:'#007acc',borderBarBg:'#2d2d2d',borderBarSize:'28px',dropOverlay:'rgba(0, 122, 204, 0.2)'}},storybook:{canvas:{gradientStart:'#061f21',gradientMid:'#031a1a',gradientEnd:'#091010'}}};
3
+ var darkThemeValues = {colors:{background:{primary:'#1a1a1a',secondary:'#2d2d2d',tertiary:'#3a3a3a',elevated:'#404040',inset:'rgba(0, 0, 0, 0.2)'},surface:{'default':'#2d2d2d',hover:'#363636',active:'#404040',disabled:'#1f1f1f',whiteOverlay:'rgba(255, 255, 255, 0.1)',row:'transparent',rowHover:'rgba(255, 255, 255, 0.03)'},border:{'default':'#4a4a4a',focus:'#007acc',error:'#f44336',success:'#4caf50'},text:{primary:'#ffffff',secondary:'#cccccc',muted:'#888888',disabled:'#555555'},accent:{primary:'#007acc',secondary:'#005a9e',success:'#4caf50',warning:'#ff9800',error:'#f44336'},backdrop:'rgba(0, 0, 0, 0.6)'},spacing:{xs:'2px',sm:'4px',md:'8px',lg:'12px',xl:'16px',xxl:'24px',xxxl:'32px'},typography:{fontSize:{xxs:'9px',xs:'10px',sm:'11px',md:'12px',lg:'14px',xl:'16px'},fontWeight:{normal:'400',medium:'500',semibold:'600'},lineHeight:{tight:'1.2',normal:'1.4',relaxed:'1.6'},fontFamily:{mono:'SF Mono, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',sans:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif'}},borderRadius:{none:'0px',sm:'2px',md:'4px',lg:'6px'},shadows:{sm:'0 1px 2px rgba(0, 0, 0, 0.2)',md:'0 2px 4px rgba(0, 0, 0, 0.3)',lg:'0 4px 8px rgba(0, 0, 0, 0.4)',xl:'0 8px 16px rgba(0, 0, 0, 0.5)',focus:'0 0 0 2px rgba(0, 122, 204, 0.4)',separatorBottom:'0 1px 2px rgba(0, 0, 0, 0.18)',separatorRight:'1px 0 2px rgba(0, 0, 0, 0.18)',separatorLeft:'-1px 0 2px rgba(0, 0, 0, 0.18)',thumb:'0 0 2px rgba(0, 0, 0, 0.5)'},transitions:{fast:'100ms ease-out',normal:'200ms ease-out',slow:'300ms ease-out'},zIndex:{base:'1',dropdown:'1000',popover:'1000',tooltip:'1000',modal:'1100'},shell:{menuBar:{height:'28px',bg:'#2d2d2d',hoverBg:'#363636',activeBg:'#005a9e',text:'#ffffff',shortcutText:'#888888'},toolbar:{height:{sm:'32px',md:'40px'},bg:'#2d2d2d',separator:'#4a4a4a'},statusBar:{height:'22px',heightMd:'26px',bg:'#007acc',text:'#ffffff'},dock:{tabHeight:'28px',tabBg:'#2d2d2d',tabActiveBg:'#1a1a1a',tabHoverBg:'#363636',tabText:'#cccccc',tabActiveText:'#ffffff',splitterSize:'4px',splitterColor:'#4a4a4a',splitterHoverColor:'#007acc',borderBarBg:'#2d2d2d',borderBarSize:'28px',dropOverlay:'rgba(0, 122, 204, 0.2)'}},demo:{canvas:{gradientStart:'#061f21',gradientMid:'#031a1a',gradientEnd:'#091010'}}};
4
4
 
5
5
  export { darkThemeValues };
6
6
  //# sourceMappingURL=darkTheme.css.js.map
@@ -142,7 +142,7 @@ const darkThemeValues = {
142
142
  dropOverlay: 'rgba(0, 122, 204, 0.2)',
143
143
  },
144
144
  },
145
- storybook: {
145
+ demo: {
146
146
  canvas: {
147
147
  gradientStart: '#061f21',
148
148
  gradientMid: '#031a1a',