entangle-ui 0.8.2 → 0.10.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 (1032) hide show
  1. package/CHANGELOG.md +771 -0
  2. package/README.md +1 -1
  3. package/dist/esm/assets/src/components/controls/Combobox/Combobox.css.ts.vanilla-B7B5ttkq.css +210 -0
  4. package/dist/esm/assets/src/components/controls/FileTree/FileTree.css.ts.vanilla-YmktPvnr.css +48 -0
  5. package/dist/esm/assets/src/components/controls/FileUploader/FileUploader.css.ts.vanilla-T4nRiI7s.css +194 -0
  6. package/dist/esm/assets/src/components/controls/MultiSelect/MultiSelect.css.ts.vanilla-CdYayqaF.css +311 -0
  7. package/dist/esm/assets/src/components/controls/TagInput/TagInput.css.ts.vanilla-hnkMOPp1.css +141 -0
  8. package/dist/esm/assets/src/components/controls/TreeView/{TreeNode.css.ts.vanilla-B_f8pUb8.css → TreeNode.css.ts.vanilla-DXPJRWZZ.css} +31 -24
  9. package/dist/esm/assets/src/components/data/DataTable/DataTable.css.ts.vanilla-CmRgtjIW.css +231 -0
  10. package/dist/esm/assets/src/components/editor/AssetBrowser/AssetBrowser.css.ts.vanilla-B2S4cEiY.css +262 -0
  11. package/dist/esm/assets/src/components/editor/Minimap/Minimap.css.ts.vanilla--rNdWQwy.css +133 -0
  12. package/dist/esm/assets/src/components/editor/NodeGraph/NodeGraph.css.ts.vanilla-ClF4YZvl.css +401 -0
  13. package/dist/esm/assets/src/components/editor/Timeline/Timeline.css.ts.vanilla-DDX6Zalo.css +203 -0
  14. package/dist/esm/assets/src/components/feedback/Alert/{Alert.css.ts.vanilla-CRAI-xHx.css → Alert.css.ts.vanilla-CfCDsIEg.css} +2 -0
  15. package/dist/esm/assets/src/components/feedback/CommandPalette/CommandPalette.css.ts.vanilla-DGdrLKYZ.css +160 -0
  16. package/dist/esm/assets/src/components/feedback/Drawer/Drawer.css.ts.vanilla-CLPTOUrA.css +247 -0
  17. package/dist/esm/assets/src/components/feedback/LogView/LogView.css.ts.vanilla-nB5ENOpw.css +312 -0
  18. package/dist/esm/assets/src/components/feedback/Skeleton/SkeletonLayout.css.ts.vanilla-Db7bpqiI.css +75 -0
  19. package/dist/esm/assets/src/components/feedback/Stat/Stat.css.ts.vanilla-GBk3JAMB.css +69 -0
  20. package/dist/esm/assets/src/components/layout/Card/Card.css.ts.vanilla-Ducn1gUX.css +124 -0
  21. package/dist/esm/assets/src/components/navigation/Menu/Menu.css.ts.vanilla-B5iVe5S2.css +88 -0
  22. package/dist/esm/assets/src/components/navigation/Pagination/Pagination.css.ts.vanilla-CmlFyyjh.css +103 -0
  23. package/dist/esm/assets/src/components/navigation/PathBar/PathBar.css.ts.vanilla-BIEzQQOf.css +10 -0
  24. package/dist/esm/assets/src/components/primitives/HoverCard/HoverCard.css.ts.vanilla-BYT0qbLp.css +41 -0
  25. package/dist/esm/assets/src/components/primitives/viewport/Viewport.css.ts.vanilla-CkFBJ7Vo.css +65 -0
  26. package/dist/esm/assets/src/components/shell/FloatingPanel/{FloatingPanel.css.ts.vanilla-1rIAXEFp.css → FloatingPanel.css.ts.vanilla-CRaeYJ2b.css} +20 -13
  27. package/dist/esm/assets/src/theme/{darkTheme.css.ts.vanilla-ab1WD4dr.css → darkTheme.css.ts.vanilla-BHZ3ecRn.css} +3 -3
  28. package/dist/esm/assets/src/theme/{lightTheme.css.ts.vanilla-OaRI_wIc.css → lightTheme.css.ts.vanilla-Ct6f9Iym.css} +3 -3
  29. package/dist/esm/components/Icons/AddIcon.js.map +1 -1
  30. package/dist/esm/components/Icons/AiChatIcon.js.map +1 -1
  31. package/dist/esm/components/Icons/AiSparklesIcon.js.map +1 -1
  32. package/dist/esm/components/Icons/ArchiveIcon.js.map +1 -1
  33. package/dist/esm/components/Icons/ArrowDownIcon.js.map +1 -1
  34. package/dist/esm/components/Icons/ArrowLeftIcon.js.map +1 -1
  35. package/dist/esm/components/Icons/ArrowRightIcon.js.map +1 -1
  36. package/dist/esm/components/Icons/ArrowUpIcon.js.map +1 -1
  37. package/dist/esm/components/Icons/BookmarkIcon.js.map +1 -1
  38. package/dist/esm/components/Icons/BugIcon.js.map +1 -1
  39. package/dist/esm/components/Icons/BuildingIcon.js.map +1 -1
  40. package/dist/esm/components/Icons/CalendarIcon.js.map +1 -1
  41. package/dist/esm/components/Icons/CheckIcon.js.map +1 -1
  42. package/dist/esm/components/Icons/ChevronDownIcon.js.map +1 -1
  43. package/dist/esm/components/Icons/ChevronLeftIcon.js.map +1 -1
  44. package/dist/esm/components/Icons/ChevronRightIcon.js.map +1 -1
  45. package/dist/esm/components/Icons/ChevronUpIcon.js.map +1 -1
  46. package/dist/esm/components/Icons/CircleIcon.js.map +1 -1
  47. package/dist/esm/components/Icons/ClockIcon.js.map +1 -1
  48. package/dist/esm/components/Icons/CloseIcon.js.map +1 -1
  49. package/dist/esm/components/Icons/CloudUploadIcon.js +24 -0
  50. package/dist/esm/components/Icons/CloudUploadIcon.js.map +1 -0
  51. package/dist/esm/components/Icons/CodeIcon.js.map +1 -1
  52. package/dist/esm/components/Icons/CopyIcon.js.map +1 -1
  53. package/dist/esm/components/Icons/CutIcon.js.map +1 -1
  54. package/dist/esm/components/Icons/DotsHorizontalIcon.js.map +1 -1
  55. package/dist/esm/components/Icons/DotsVerticalIcon.js.map +1 -1
  56. package/dist/esm/components/Icons/DownloadIcon.js.map +1 -1
  57. package/dist/esm/components/Icons/EditIcon.js.map +1 -1
  58. package/dist/esm/components/Icons/ErrorIcon.js.map +1 -1
  59. package/dist/esm/components/Icons/ExternalLinkIcon.js +26 -0
  60. package/dist/esm/components/Icons/ExternalLinkIcon.js.map +1 -0
  61. package/dist/esm/components/Icons/EyeDropperIcon.js.map +1 -1
  62. package/dist/esm/components/Icons/EyeIcon.js.map +1 -1
  63. package/dist/esm/components/Icons/FileTextIcon.js.map +1 -1
  64. package/dist/esm/components/Icons/FilterIcon.js.map +1 -1
  65. package/dist/esm/components/Icons/FirstIcon.js +23 -0
  66. package/dist/esm/components/Icons/FirstIcon.js.map +1 -0
  67. package/dist/esm/components/Icons/FolderCogIcon.js.map +1 -1
  68. package/dist/esm/components/Icons/FolderIcon.js.map +1 -1
  69. package/dist/esm/components/Icons/FolderOpenIcon.js +2 -2
  70. package/dist/esm/components/Icons/FolderOpenIcon.js.map +1 -1
  71. package/dist/esm/components/Icons/FullscreenIcon.js.map +1 -1
  72. package/dist/esm/components/Icons/GitBranchIcon.js.map +1 -1
  73. package/dist/esm/components/Icons/GridIcon.js.map +1 -1
  74. package/dist/esm/components/Icons/HeartIcon.js.map +1 -1
  75. package/dist/esm/components/Icons/HelpIcon.js.map +1 -1
  76. package/dist/esm/components/Icons/HomeIcon.js.map +1 -1
  77. package/dist/esm/components/Icons/ImageIcon.js +31 -0
  78. package/dist/esm/components/Icons/ImageIcon.js.map +1 -0
  79. package/dist/esm/components/Icons/InfoIcon.js.map +1 -1
  80. package/dist/esm/components/Icons/LastIcon.js +23 -0
  81. package/dist/esm/components/Icons/LastIcon.js.map +1 -0
  82. package/dist/esm/components/Icons/LinkIcon.js.map +1 -1
  83. package/dist/esm/components/Icons/ListIcon.js.map +1 -1
  84. package/dist/esm/components/Icons/LockIcon.js.map +1 -1
  85. package/dist/esm/components/Icons/MaximizeIcon.js.map +1 -1
  86. package/dist/esm/components/Icons/MenuIcon.js.map +1 -1
  87. package/dist/esm/components/Icons/MinimizeIcon.js.map +1 -1
  88. package/dist/esm/components/Icons/MinusIcon.js.map +1 -1
  89. package/dist/esm/components/Icons/PasteIcon.js.map +1 -1
  90. package/dist/esm/components/Icons/PauseIcon.js +2 -2
  91. package/dist/esm/components/Icons/PauseIcon.js.map +1 -1
  92. package/dist/esm/components/Icons/PinIcon.js.map +1 -1
  93. package/dist/esm/components/Icons/PlayIcon.js.map +1 -1
  94. package/dist/esm/components/Icons/RedoIcon.js.map +1 -1
  95. package/dist/esm/components/Icons/RefreshIcon.js.map +1 -1
  96. package/dist/esm/components/Icons/RobotIcon.js.map +1 -1
  97. package/dist/esm/components/Icons/SaveIcon.js.map +1 -1
  98. package/dist/esm/components/Icons/SearchIcon.js.map +1 -1
  99. package/dist/esm/components/Icons/SendIcon.js.map +1 -1
  100. package/dist/esm/components/Icons/SettingsIcon.js.map +1 -1
  101. package/dist/esm/components/Icons/SortIcon.js.map +1 -1
  102. package/dist/esm/components/Icons/StarIcon.js.map +1 -1
  103. package/dist/esm/components/Icons/StopIcon.js.map +1 -1
  104. package/dist/esm/components/Icons/SuccessIcon.js.map +1 -1
  105. package/dist/esm/components/Icons/TagIcon.js.map +1 -1
  106. package/dist/esm/components/Icons/TangentAlignedIcon.js.map +1 -1
  107. package/dist/esm/components/Icons/TangentAutoIcon.js.map +1 -1
  108. package/dist/esm/components/Icons/TangentFreeIcon.js.map +1 -1
  109. package/dist/esm/components/Icons/TangentLinearIcon.js.map +1 -1
  110. package/dist/esm/components/Icons/TangentMirroredIcon.js.map +1 -1
  111. package/dist/esm/components/Icons/TangentStepIcon.js.map +1 -1
  112. package/dist/esm/components/Icons/TerminalIcon.js.map +1 -1
  113. package/dist/esm/components/Icons/TrashIcon.js.map +1 -1
  114. package/dist/esm/components/Icons/UndoIcon.js.map +1 -1
  115. package/dist/esm/components/Icons/UnlinkIcon.js +26 -0
  116. package/dist/esm/components/Icons/UnlinkIcon.js.map +1 -0
  117. package/dist/esm/components/Icons/UnlockIcon.js.map +1 -1
  118. package/dist/esm/components/Icons/UploadIcon.js.map +1 -1
  119. package/dist/esm/components/Icons/UserIcon.js.map +1 -1
  120. package/dist/esm/components/Icons/UsersIcon.js.map +1 -1
  121. package/dist/esm/components/Icons/WarningIcon.js.map +1 -1
  122. package/dist/esm/components/Icons/ZoomInIcon.js.map +1 -1
  123. package/dist/esm/components/Icons/ZoomOutIcon.js.map +1 -1
  124. package/dist/esm/components/controls/CartesianPicker/CartesianPicker.js +3 -3
  125. package/dist/esm/components/controls/CartesianPicker/CartesianPicker.js.map +1 -1
  126. package/dist/esm/components/controls/CartesianPicker/useCartesianInteraction.js +7 -5
  127. package/dist/esm/components/controls/CartesianPicker/useCartesianInteraction.js.map +1 -1
  128. package/dist/esm/components/controls/CartesianPicker/useCartesianRenderer.js.map +1 -1
  129. package/dist/esm/components/controls/ColorPicker/AlphaSlider.js.map +1 -1
  130. package/dist/esm/components/controls/ColorPicker/ColorArea.js +2 -2
  131. package/dist/esm/components/controls/ColorPicker/ColorArea.js.map +1 -1
  132. package/dist/esm/components/controls/ColorPicker/ColorInputs.js +16 -2
  133. package/dist/esm/components/controls/ColorPicker/ColorInputs.js.map +1 -1
  134. package/dist/esm/components/controls/ColorPicker/ColorPalette.js +3 -1
  135. package/dist/esm/components/controls/ColorPicker/ColorPalette.js.map +1 -1
  136. package/dist/esm/components/controls/ColorPicker/ColorPicker.js +6 -6
  137. package/dist/esm/components/controls/ColorPicker/ColorPicker.js.map +1 -1
  138. package/dist/esm/components/controls/ColorPicker/ColorPresets.js +3 -1
  139. package/dist/esm/components/controls/ColorPicker/ColorPresets.js.map +1 -1
  140. package/dist/esm/components/controls/ColorPicker/ColorSwatch.js.map +1 -1
  141. package/dist/esm/components/controls/ColorPicker/EyeDropper.js.map +1 -1
  142. package/dist/esm/components/controls/ColorPicker/HueSlider.js.map +1 -1
  143. package/dist/esm/components/controls/ColorPicker/useColor.js.map +1 -1
  144. package/dist/esm/components/controls/Combobox/Combobox.css.js +20 -0
  145. package/dist/esm/components/controls/Combobox/Combobox.css.js.map +1 -0
  146. package/dist/esm/components/controls/Combobox/Combobox.js +377 -0
  147. package/dist/esm/components/controls/Combobox/Combobox.js.map +1 -0
  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 +246 -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.css.js +20 -0
  172. package/dist/esm/components/controls/FileUploader/FileUploader.css.js.map +1 -0
  173. package/dist/esm/components/controls/FileUploader/FileUploader.js +261 -0
  174. package/dist/esm/components/controls/FileUploader/FileUploader.js.map +1 -0
  175. package/dist/esm/components/controls/MultiSelect/MultiSelect.css.js +23 -0
  176. package/dist/esm/components/controls/MultiSelect/MultiSelect.css.js.map +1 -0
  177. package/dist/esm/components/controls/MultiSelect/MultiSelect.js +300 -0
  178. package/dist/esm/components/controls/MultiSelect/MultiSelect.js.map +1 -0
  179. package/dist/esm/components/controls/NumberInput/NumberInput.js +11 -4
  180. package/dist/esm/components/controls/NumberInput/NumberInput.js.map +1 -1
  181. package/dist/esm/components/controls/NumberInput/useNumberInput.js +6 -2
  182. package/dist/esm/components/controls/NumberInput/useNumberInput.js.map +1 -1
  183. package/dist/esm/components/controls/Select/Select.js +34 -13
  184. package/dist/esm/components/controls/Select/Select.js.map +1 -1
  185. package/dist/esm/components/controls/Slider/Slider.js +6 -8
  186. package/dist/esm/components/controls/Slider/Slider.js.map +1 -1
  187. package/dist/esm/components/controls/TagInput/TagInput.css.js +12 -0
  188. package/dist/esm/components/controls/TagInput/TagInput.css.js.map +1 -0
  189. package/dist/esm/components/controls/TagInput/TagInput.js +191 -0
  190. package/dist/esm/components/controls/TagInput/TagInput.js.map +1 -0
  191. package/dist/esm/components/controls/TreeView/TreeNode.css.js +9 -8
  192. package/dist/esm/components/controls/TreeView/TreeNode.css.js.map +1 -1
  193. package/dist/esm/components/controls/TreeView/TreeNode.js +123 -8
  194. package/dist/esm/components/controls/TreeView/TreeNode.js.map +1 -1
  195. package/dist/esm/components/controls/TreeView/TreeView.js +18 -6
  196. package/dist/esm/components/controls/TreeView/TreeView.js.map +1 -1
  197. package/dist/esm/components/controls/TreeView/useTreeState.js +2 -6
  198. package/dist/esm/components/controls/TreeView/useTreeState.js.map +1 -1
  199. package/dist/esm/components/controls/VectorInput/VectorInput.js +94 -8
  200. package/dist/esm/components/controls/VectorInput/VectorInput.js.map +1 -1
  201. package/dist/esm/components/data/DataTable/DataTable.css.js +25 -0
  202. package/dist/esm/components/data/DataTable/DataTable.css.js.map +1 -0
  203. package/dist/esm/components/data/DataTable/DataTable.js +519 -0
  204. package/dist/esm/components/data/DataTable/DataTable.js.map +1 -0
  205. package/dist/esm/components/editor/AssetBrowser/AssetBrowser.css.js +46 -0
  206. package/dist/esm/components/editor/AssetBrowser/AssetBrowser.css.js.map +1 -0
  207. package/dist/esm/components/editor/AssetBrowser/AssetBrowser.js +254 -0
  208. package/dist/esm/components/editor/AssetBrowser/AssetBrowser.js.map +1 -0
  209. package/dist/esm/components/editor/AssetBrowser/AssetBrowserAnnouncementLive.js +17 -0
  210. package/dist/esm/components/editor/AssetBrowser/AssetBrowserAnnouncementLive.js.map +1 -0
  211. package/dist/esm/components/editor/AssetBrowser/AssetBrowserBreadcrumbs.js +25 -0
  212. package/dist/esm/components/editor/AssetBrowser/AssetBrowserBreadcrumbs.js.map +1 -0
  213. package/dist/esm/components/editor/AssetBrowser/AssetBrowserContent.js +134 -0
  214. package/dist/esm/components/editor/AssetBrowser/AssetBrowserContent.js.map +1 -0
  215. package/dist/esm/components/editor/AssetBrowser/AssetBrowserContext.js +81 -0
  216. package/dist/esm/components/editor/AssetBrowser/AssetBrowserContext.js.map +1 -0
  217. package/dist/esm/components/editor/AssetBrowser/AssetBrowserContextMenu.js +123 -0
  218. package/dist/esm/components/editor/AssetBrowser/AssetBrowserContextMenu.js.map +1 -0
  219. package/dist/esm/components/editor/AssetBrowser/AssetBrowserDefaultMenus.js +130 -0
  220. package/dist/esm/components/editor/AssetBrowser/AssetBrowserDefaultMenus.js.map +1 -0
  221. package/dist/esm/components/editor/AssetBrowser/AssetBrowserGrid.js +137 -0
  222. package/dist/esm/components/editor/AssetBrowser/AssetBrowserGrid.js.map +1 -0
  223. package/dist/esm/components/editor/AssetBrowser/AssetBrowserGridItem.js +220 -0
  224. package/dist/esm/components/editor/AssetBrowser/AssetBrowserGridItem.js.map +1 -0
  225. package/dist/esm/components/editor/AssetBrowser/AssetBrowserList.js +183 -0
  226. package/dist/esm/components/editor/AssetBrowser/AssetBrowserList.js.map +1 -0
  227. package/dist/esm/components/editor/AssetBrowser/AssetBrowserRenameField.js +63 -0
  228. package/dist/esm/components/editor/AssetBrowser/AssetBrowserRenameField.js.map +1 -0
  229. package/dist/esm/components/editor/AssetBrowser/AssetBrowserSidebar.js +19 -0
  230. package/dist/esm/components/editor/AssetBrowser/AssetBrowserSidebar.js.map +1 -0
  231. package/dist/esm/components/editor/AssetBrowser/AssetBrowserStatusBar.js +24 -0
  232. package/dist/esm/components/editor/AssetBrowser/AssetBrowserStatusBar.js.map +1 -0
  233. package/dist/esm/components/editor/AssetBrowser/AssetBrowserStore.js +176 -0
  234. package/dist/esm/components/editor/AssetBrowser/AssetBrowserStore.js.map +1 -0
  235. package/dist/esm/components/editor/AssetBrowser/AssetBrowserSurface.js +114 -0
  236. package/dist/esm/components/editor/AssetBrowser/AssetBrowserSurface.js.map +1 -0
  237. package/dist/esm/components/editor/AssetBrowser/AssetBrowserToolbar.js +128 -0
  238. package/dist/esm/components/editor/AssetBrowser/AssetBrowserToolbar.js.map +1 -0
  239. package/dist/esm/components/editor/AssetBrowser/assetBrowserFilter.js +90 -0
  240. package/dist/esm/components/editor/AssetBrowser/assetBrowserFilter.js.map +1 -0
  241. package/dist/esm/components/editor/AssetBrowser/assetBrowserFormat.js +32 -0
  242. package/dist/esm/components/editor/AssetBrowser/assetBrowserFormat.js.map +1 -0
  243. package/dist/esm/components/editor/AssetBrowser/assetBrowserGeometry.js +70 -0
  244. package/dist/esm/components/editor/AssetBrowser/assetBrowserGeometry.js.map +1 -0
  245. package/dist/esm/components/editor/AssetBrowser/assetBrowserKeyboard.js +62 -0
  246. package/dist/esm/components/editor/AssetBrowser/assetBrowserKeyboard.js.map +1 -0
  247. package/dist/esm/components/editor/AssetBrowser/assetBrowserLabels.js +52 -0
  248. package/dist/esm/components/editor/AssetBrowser/assetBrowserLabels.js.map +1 -0
  249. package/dist/esm/components/editor/AssetBrowser/slots.js +18 -0
  250. package/dist/esm/components/editor/AssetBrowser/slots.js.map +1 -0
  251. package/dist/esm/components/editor/AssetBrowser/useAssetBrowserAnnouncement.js +19 -0
  252. package/dist/esm/components/editor/AssetBrowser/useAssetBrowserAnnouncement.js.map +1 -0
  253. package/dist/esm/components/editor/AssetBrowser/useAssetBrowserHandle.js +70 -0
  254. package/dist/esm/components/editor/AssetBrowser/useAssetBrowserHandle.js.map +1 -0
  255. package/dist/esm/components/editor/AssetBrowser/useAssetBrowserViewState.js +108 -0
  256. package/dist/esm/components/editor/AssetBrowser/useAssetBrowserViewState.js.map +1 -0
  257. package/dist/esm/components/editor/AssetBrowser/useAssetDnd.js +192 -0
  258. package/dist/esm/components/editor/AssetBrowser/useAssetDnd.js.map +1 -0
  259. package/dist/esm/components/editor/AssetBrowser/useAssetGridKeyboardNav.js +91 -0
  260. package/dist/esm/components/editor/AssetBrowser/useAssetGridKeyboardNav.js.map +1 -0
  261. package/dist/esm/components/editor/AssetBrowser/useAssetGridVirtualizer.js +91 -0
  262. package/dist/esm/components/editor/AssetBrowser/useAssetGridVirtualizer.js.map +1 -0
  263. package/dist/esm/components/editor/AssetBrowser/useAssetMarqueeGesture.js +128 -0
  264. package/dist/esm/components/editor/AssetBrowser/useAssetMarqueeGesture.js.map +1 -0
  265. package/dist/esm/components/editor/AssetBrowser/useAssetMutationKeyboard.js +72 -0
  266. package/dist/esm/components/editor/AssetBrowser/useAssetMutationKeyboard.js.map +1 -0
  267. package/dist/esm/components/editor/AssetBrowser/useAssetMutations.js +141 -0
  268. package/dist/esm/components/editor/AssetBrowser/useAssetMutations.js.map +1 -0
  269. package/dist/esm/components/editor/AssetBrowser/useAssetNavigation.js +113 -0
  270. package/dist/esm/components/editor/AssetBrowser/useAssetNavigation.js.map +1 -0
  271. package/dist/esm/components/editor/AssetBrowser/useAssetSelectionController.js +174 -0
  272. package/dist/esm/components/editor/AssetBrowser/useAssetSelectionController.js.map +1 -0
  273. package/dist/esm/components/editor/ChatPanel/ChatActionBar.js.map +1 -1
  274. package/dist/esm/components/editor/ChatPanel/ChatAttachment.js +8 -2
  275. package/dist/esm/components/editor/ChatPanel/ChatAttachment.js.map +1 -1
  276. package/dist/esm/components/editor/ChatPanel/ChatBubble.js.map +1 -1
  277. package/dist/esm/components/editor/ChatPanel/ChatCodeBlock.js +100 -8
  278. package/dist/esm/components/editor/ChatPanel/ChatCodeBlock.js.map +1 -1
  279. package/dist/esm/components/editor/ChatPanel/ChatContextChip.js +1 -1
  280. package/dist/esm/components/editor/ChatPanel/ChatContextChip.js.map +1 -1
  281. package/dist/esm/components/editor/ChatPanel/ChatEmptyState.js +3 -1
  282. package/dist/esm/components/editor/ChatPanel/ChatEmptyState.js.map +1 -1
  283. package/dist/esm/components/editor/ChatPanel/ChatInput.js +90 -7
  284. package/dist/esm/components/editor/ChatPanel/ChatInput.js.map +1 -1
  285. package/dist/esm/components/editor/ChatPanel/ChatInputToolbar.js.map +1 -1
  286. package/dist/esm/components/editor/ChatPanel/ChatMarkdownRenderer.js +1 -1
  287. package/dist/esm/components/editor/ChatPanel/ChatMarkdownRenderer.js.map +1 -1
  288. package/dist/esm/components/editor/ChatPanel/ChatMessage.js +89 -3
  289. package/dist/esm/components/editor/ChatPanel/ChatMessage.js.map +1 -1
  290. package/dist/esm/components/editor/ChatPanel/ChatMessageList.js +5 -3
  291. package/dist/esm/components/editor/ChatPanel/ChatMessageList.js.map +1 -1
  292. package/dist/esm/components/editor/ChatPanel/ChatPanel.js.map +1 -1
  293. package/dist/esm/components/editor/ChatPanel/ChatToolCall.js +1 -1
  294. package/dist/esm/components/editor/ChatPanel/ChatToolCall.js.map +1 -1
  295. package/dist/esm/components/editor/ChatPanel/ChatTypingIndicator.js.map +1 -1
  296. package/dist/esm/components/editor/ChatPanel/useChatInput.js.map +1 -1
  297. package/dist/esm/components/editor/ChatPanel/useChatMessages.js +7 -4
  298. package/dist/esm/components/editor/ChatPanel/useChatMessages.js.map +1 -1
  299. package/dist/esm/components/editor/ChatPanel/useChatScroll.js +6 -1
  300. package/dist/esm/components/editor/ChatPanel/useChatScroll.js.map +1 -1
  301. package/dist/esm/components/editor/Minimap/Minimap.css.js +18 -0
  302. package/dist/esm/components/editor/Minimap/Minimap.css.js.map +1 -0
  303. package/dist/esm/components/editor/Minimap/Minimap.js +257 -0
  304. package/dist/esm/components/editor/Minimap/Minimap.js.map +1 -0
  305. package/dist/esm/components/editor/Minimap/Minimap.types.js +11 -0
  306. package/dist/esm/components/editor/Minimap/Minimap.types.js.map +1 -0
  307. package/dist/esm/components/editor/Minimap/MinimapContext.js +48 -0
  308. package/dist/esm/components/editor/Minimap/MinimapContext.js.map +1 -0
  309. package/dist/esm/components/editor/Minimap/MinimapCorner.js +16 -0
  310. package/dist/esm/components/editor/Minimap/MinimapCorner.js.map +1 -0
  311. package/dist/esm/components/editor/Minimap/MinimapFooter.js +16 -0
  312. package/dist/esm/components/editor/Minimap/MinimapFooter.js.map +1 -0
  313. package/dist/esm/components/editor/Minimap/MinimapStore.js +166 -0
  314. package/dist/esm/components/editor/Minimap/MinimapStore.js.map +1 -0
  315. package/dist/esm/components/editor/Minimap/MinimapTitle.js +16 -0
  316. package/dist/esm/components/editor/Minimap/MinimapTitle.js.map +1 -0
  317. package/dist/esm/components/editor/Minimap/ViewportMinimap.js +69 -0
  318. package/dist/esm/components/editor/Minimap/ViewportMinimap.js.map +1 -0
  319. package/dist/esm/components/editor/Minimap/computeBoundsFromItems.js +65 -0
  320. package/dist/esm/components/editor/Minimap/computeBoundsFromItems.js.map +1 -0
  321. package/dist/esm/components/editor/Minimap/index.js +15 -0
  322. package/dist/esm/components/editor/Minimap/index.js.map +1 -0
  323. package/dist/esm/components/editor/Minimap/minimapCoords.js +105 -0
  324. package/dist/esm/components/editor/Minimap/minimapCoords.js.map +1 -0
  325. package/dist/esm/components/editor/Minimap/minimapDrawing.js +93 -0
  326. package/dist/esm/components/editor/Minimap/minimapDrawing.js.map +1 -0
  327. package/dist/esm/components/editor/Minimap/minimapHitTest.js +59 -0
  328. package/dist/esm/components/editor/Minimap/minimapHitTest.js.map +1 -0
  329. package/dist/esm/components/editor/Minimap/useMinimapGestures.js +299 -0
  330. package/dist/esm/components/editor/Minimap/useMinimapGestures.js.map +1 -0
  331. package/dist/esm/components/editor/NodeGraph/NodeGraph.css.js +36 -0
  332. package/dist/esm/components/editor/NodeGraph/NodeGraph.css.js.map +1 -0
  333. package/dist/esm/components/editor/NodeGraph/NodeGraph.js +627 -0
  334. package/dist/esm/components/editor/NodeGraph/NodeGraph.js.map +1 -0
  335. package/dist/esm/components/editor/NodeGraph/NodeGraph.types.js +10 -0
  336. package/dist/esm/components/editor/NodeGraph/NodeGraph.types.js.map +1 -0
  337. package/dist/esm/components/editor/NodeGraph/NodeGraphContext.js +54 -0
  338. package/dist/esm/components/editor/NodeGraph/NodeGraphContext.js.map +1 -0
  339. package/dist/esm/components/editor/NodeGraph/NodeGraphEdgeLabels.js +137 -0
  340. package/dist/esm/components/editor/NodeGraph/NodeGraphEdgeLabels.js.map +1 -0
  341. package/dist/esm/components/editor/NodeGraph/NodeGraphGroup.js +211 -0
  342. package/dist/esm/components/editor/NodeGraph/NodeGraphGroup.js.map +1 -0
  343. package/dist/esm/components/editor/NodeGraph/NodeGraphMinimap.js +122 -0
  344. package/dist/esm/components/editor/NodeGraph/NodeGraphMinimap.js.map +1 -0
  345. package/dist/esm/components/editor/NodeGraph/NodeGraphNode.js +170 -0
  346. package/dist/esm/components/editor/NodeGraph/NodeGraphNode.js.map +1 -0
  347. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeContext.js +21 -0
  348. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeContext.js.map +1 -0
  349. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeParts.js +56 -0
  350. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeParts.js.map +1 -0
  351. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeSection.js +59 -0
  352. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeSection.js.map +1 -0
  353. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeSectionContext.js +17 -0
  354. package/dist/esm/components/editor/NodeGraph/NodeGraphNodeSectionContext.js.map +1 -0
  355. package/dist/esm/components/editor/NodeGraph/NodeGraphPin.js +35 -0
  356. package/dist/esm/components/editor/NodeGraph/NodeGraphPin.js.map +1 -0
  357. package/dist/esm/components/editor/NodeGraph/NodeGraphPort.js +191 -0
  358. package/dist/esm/components/editor/NodeGraph/NodeGraphPort.js.map +1 -0
  359. package/dist/esm/components/editor/NodeGraph/NodeGraphPortVisual.js +46 -0
  360. package/dist/esm/components/editor/NodeGraph/NodeGraphPortVisual.js.map +1 -0
  361. package/dist/esm/components/editor/NodeGraph/NodeGraphSlots.js +50 -0
  362. package/dist/esm/components/editor/NodeGraph/NodeGraphSlots.js.map +1 -0
  363. package/dist/esm/components/editor/NodeGraph/NodeGraphSpawnPalette.js +70 -0
  364. package/dist/esm/components/editor/NodeGraph/NodeGraphSpawnPalette.js.map +1 -0
  365. package/dist/esm/components/editor/NodeGraph/NodeGraphStore.js +543 -0
  366. package/dist/esm/components/editor/NodeGraph/NodeGraphStore.js.map +1 -0
  367. package/dist/esm/components/editor/NodeGraph/NodeGraphToolbar.js +100 -0
  368. package/dist/esm/components/editor/NodeGraph/NodeGraphToolbar.js.map +1 -0
  369. package/dist/esm/components/editor/NodeGraph/createTypeMatchValidator.js +37 -0
  370. package/dist/esm/components/editor/NodeGraph/createTypeMatchValidator.js.map +1 -0
  371. package/dist/esm/components/editor/NodeGraph/nodeGraphActions.js +53 -0
  372. package/dist/esm/components/editor/NodeGraph/nodeGraphActions.js.map +1 -0
  373. package/dist/esm/components/editor/NodeGraph/nodeGraphDrawing.js +461 -0
  374. package/dist/esm/components/editor/NodeGraph/nodeGraphDrawing.js.map +1 -0
  375. package/dist/esm/components/editor/NodeGraph/nodeGraphIds.js +31 -0
  376. package/dist/esm/components/editor/NodeGraph/nodeGraphIds.js.map +1 -0
  377. package/dist/esm/components/editor/NodeGraph/nodeGraphMath.js +350 -0
  378. package/dist/esm/components/editor/NodeGraph/nodeGraphMath.js.map +1 -0
  379. package/dist/esm/components/editor/NodeGraph/sortSlots.js +69 -0
  380. package/dist/esm/components/editor/NodeGraph/sortSlots.js.map +1 -0
  381. package/dist/esm/components/editor/NodeGraph/useDragGesture.js +63 -0
  382. package/dist/esm/components/editor/NodeGraph/useDragGesture.js.map +1 -0
  383. package/dist/esm/components/editor/NodeGraph/useNodeGraph.js +207 -0
  384. package/dist/esm/components/editor/NodeGraph/useNodeGraph.js.map +1 -0
  385. package/dist/esm/components/editor/NodeGraph/useNodeGraphConnection.js +334 -0
  386. package/dist/esm/components/editor/NodeGraph/useNodeGraphConnection.js.map +1 -0
  387. package/dist/esm/components/editor/NodeGraph/useNodeGraphEdgeInteraction.js +137 -0
  388. package/dist/esm/components/editor/NodeGraph/useNodeGraphEdgeInteraction.js.map +1 -0
  389. package/dist/esm/components/editor/NodeGraph/useNodeGraphGroupDrag.js +392 -0
  390. package/dist/esm/components/editor/NodeGraph/useNodeGraphGroupDrag.js.map +1 -0
  391. package/dist/esm/components/editor/NodeGraph/useNodeGraphKeyboard.js +164 -0
  392. package/dist/esm/components/editor/NodeGraph/useNodeGraphKeyboard.js.map +1 -0
  393. package/dist/esm/components/editor/NodeGraph/useNodeGraphNodeDrag.js +234 -0
  394. package/dist/esm/components/editor/NodeGraph/useNodeGraphNodeDrag.js.map +1 -0
  395. package/dist/esm/components/editor/NodeGraph/useStoreSlice.js +49 -0
  396. package/dist/esm/components/editor/NodeGraph/useStoreSlice.js.map +1 -0
  397. package/dist/esm/components/editor/PropertyInspector/PropertyGroup.js +1 -1
  398. package/dist/esm/components/editor/PropertyInspector/PropertyGroup.js.map +1 -1
  399. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.js +8 -4
  400. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.js.map +1 -1
  401. package/dist/esm/components/editor/PropertyInspector/PropertyRow.js +90 -5
  402. package/dist/esm/components/editor/PropertyInspector/PropertyRow.js.map +1 -1
  403. package/dist/esm/components/editor/PropertyInspector/PropertySection.js +100 -3
  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.css.js +1 -1
  457. package/dist/esm/components/feedback/Alert/Alert.js +11 -10
  458. package/dist/esm/components/feedback/Alert/Alert.js.map +1 -1
  459. package/dist/esm/components/feedback/Alert/AlertActions.js.map +1 -1
  460. package/dist/esm/components/feedback/Alert/AlertDescription.js.map +1 -1
  461. package/dist/esm/components/feedback/Alert/AlertTitle.js.map +1 -1
  462. package/dist/esm/components/feedback/CommandPalette/CommandPalette.css.js +20 -0
  463. package/dist/esm/components/feedback/CommandPalette/CommandPalette.css.js.map +1 -0
  464. package/dist/esm/components/feedback/CommandPalette/CommandPalette.js +271 -0
  465. package/dist/esm/components/feedback/CommandPalette/CommandPalette.js.map +1 -0
  466. package/dist/esm/components/feedback/CommandPalette/fuzzySearch.js +86 -0
  467. package/dist/esm/components/feedback/CommandPalette/fuzzySearch.js.map +1 -0
  468. package/dist/esm/components/feedback/CommandPalette/useRecentItems.js +65 -0
  469. package/dist/esm/components/feedback/CommandPalette/useRecentItems.js.map +1 -0
  470. package/dist/esm/components/feedback/Dialog/Dialog.js +6 -3
  471. package/dist/esm/components/feedback/Dialog/Dialog.js.map +1 -1
  472. package/dist/esm/components/feedback/Dialog/DialogBody.js.map +1 -1
  473. package/dist/esm/components/feedback/Dialog/DialogClose.js.map +1 -1
  474. package/dist/esm/components/feedback/Dialog/DialogFooter.js.map +1 -1
  475. package/dist/esm/components/feedback/Dialog/DialogHeader.js +3 -2
  476. package/dist/esm/components/feedback/Dialog/DialogHeader.js.map +1 -1
  477. package/dist/esm/components/feedback/Dialog/useDialogAnimation.js +10 -2
  478. package/dist/esm/components/feedback/Dialog/useDialogAnimation.js.map +1 -1
  479. package/dist/esm/components/feedback/Drawer/Drawer.css.js +17 -0
  480. package/dist/esm/components/feedback/Drawer/Drawer.css.js.map +1 -0
  481. package/dist/esm/components/feedback/Drawer/Drawer.js +123 -0
  482. package/dist/esm/components/feedback/Drawer/Drawer.js.map +1 -0
  483. package/dist/esm/components/feedback/Drawer/useDrawerAnimation.js +78 -0
  484. package/dist/esm/components/feedback/Drawer/useDrawerAnimation.js.map +1 -0
  485. package/dist/esm/components/feedback/EmptyState/EmptyState.js +1 -1
  486. package/dist/esm/components/feedback/EmptyState/EmptyState.js.map +1 -1
  487. package/dist/esm/components/feedback/LogView/LogView.css.js +35 -0
  488. package/dist/esm/components/feedback/LogView/LogView.css.js.map +1 -0
  489. package/dist/esm/components/feedback/LogView/LogView.js +297 -0
  490. package/dist/esm/components/feedback/LogView/LogView.js.map +1 -0
  491. package/dist/esm/components/feedback/LogView/LogViewBody.js +205 -0
  492. package/dist/esm/components/feedback/LogView/LogViewBody.js.map +1 -0
  493. package/dist/esm/components/feedback/LogView/LogViewContext.js +31 -0
  494. package/dist/esm/components/feedback/LogView/LogViewContext.js.map +1 -0
  495. package/dist/esm/components/feedback/LogView/LogViewParts.js +73 -0
  496. package/dist/esm/components/feedback/LogView/LogViewParts.js.map +1 -0
  497. package/dist/esm/components/feedback/LogView/LogViewStore.js +240 -0
  498. package/dist/esm/components/feedback/LogView/LogViewStore.js.map +1 -0
  499. package/dist/esm/components/feedback/LogView/logViewLabels.js +25 -0
  500. package/dist/esm/components/feedback/LogView/logViewLabels.js.map +1 -0
  501. package/dist/esm/components/feedback/LogView/logViewLevels.js +74 -0
  502. package/dist/esm/components/feedback/LogView/logViewLevels.js.map +1 -0
  503. package/dist/esm/components/feedback/LogView/logViewUtils.js +128 -0
  504. package/dist/esm/components/feedback/LogView/logViewUtils.js.map +1 -0
  505. package/dist/esm/components/feedback/LogView/useFollowTail.js +95 -0
  506. package/dist/esm/components/feedback/LogView/useFollowTail.js.map +1 -0
  507. package/dist/esm/components/feedback/LogView/useLogSelection.js +113 -0
  508. package/dist/esm/components/feedback/LogView/useLogSelection.js.map +1 -0
  509. package/dist/esm/components/feedback/ProgressBar/CircularProgress.js +1 -1
  510. package/dist/esm/components/feedback/ProgressBar/CircularProgress.js.map +1 -1
  511. package/dist/esm/components/feedback/ProgressBar/ProgressBar.js +1 -1
  512. package/dist/esm/components/feedback/ProgressBar/ProgressBar.js.map +1 -1
  513. package/dist/esm/components/feedback/Skeleton/Skeleton.js +1 -1
  514. package/dist/esm/components/feedback/Skeleton/Skeleton.js.map +1 -1
  515. package/dist/esm/components/feedback/Skeleton/SkeletonGroup.js +1 -1
  516. package/dist/esm/components/feedback/Skeleton/SkeletonGroup.js.map +1 -1
  517. package/dist/esm/components/feedback/Skeleton/SkeletonLayout.css.js +18 -0
  518. package/dist/esm/components/feedback/Skeleton/SkeletonLayout.css.js.map +1 -0
  519. package/dist/esm/components/feedback/Skeleton/SkeletonLayout.js +95 -0
  520. package/dist/esm/components/feedback/Skeleton/SkeletonLayout.js.map +1 -0
  521. package/dist/esm/components/feedback/Spinner/Spinner.js +1 -1
  522. package/dist/esm/components/feedback/Spinner/Spinner.js.map +1 -1
  523. package/dist/esm/components/feedback/Stat/Stat.css.js +15 -0
  524. package/dist/esm/components/feedback/Stat/Stat.css.js.map +1 -0
  525. package/dist/esm/components/feedback/Stat/Stat.js +55 -0
  526. package/dist/esm/components/feedback/Stat/Stat.js.map +1 -0
  527. package/dist/esm/components/feedback/Toast/ToastContainer.js +1 -1
  528. package/dist/esm/components/feedback/Toast/ToastContainer.js.map +1 -1
  529. package/dist/esm/components/feedback/Toast/ToastItem.js +18 -17
  530. package/dist/esm/components/feedback/Toast/ToastItem.js.map +1 -1
  531. package/dist/esm/components/feedback/Toast/ToastProvider.js.map +1 -1
  532. package/dist/esm/components/feedback/Toast/useToast.js.map +1 -1
  533. package/dist/esm/components/form/FormHelperText.js.map +1 -1
  534. package/dist/esm/components/form/FormLabel.js.map +1 -1
  535. package/dist/esm/components/form/InputWrapper.js.map +1 -1
  536. package/dist/esm/components/layout/Accordion/Accordion.js +3 -2
  537. package/dist/esm/components/layout/Accordion/Accordion.js.map +1 -1
  538. package/dist/esm/components/layout/Accordion/AccordionContent.js +1 -1
  539. package/dist/esm/components/layout/Accordion/AccordionContent.js.map +1 -1
  540. package/dist/esm/components/layout/Accordion/AccordionItem.js +1 -1
  541. package/dist/esm/components/layout/Accordion/AccordionItem.js.map +1 -1
  542. package/dist/esm/components/layout/Accordion/AccordionTrigger.js +8 -4
  543. package/dist/esm/components/layout/Accordion/AccordionTrigger.js.map +1 -1
  544. package/dist/esm/components/layout/Card/Card.css.js +18 -0
  545. package/dist/esm/components/layout/Card/Card.css.js.map +1 -0
  546. package/dist/esm/components/layout/Card/Card.js +66 -0
  547. package/dist/esm/components/layout/Card/Card.js.map +1 -0
  548. package/dist/esm/components/layout/Divider/Divider.js.map +1 -1
  549. package/dist/esm/components/layout/Flex/Flex.js +1 -1
  550. package/dist/esm/components/layout/Flex/Flex.js.map +1 -1
  551. package/dist/esm/components/layout/Grid/Grid.js +1 -1
  552. package/dist/esm/components/layout/ListItem/ListItem.js +1 -1
  553. package/dist/esm/components/layout/ListItem/ListItem.js.map +1 -1
  554. package/dist/esm/components/layout/PageHeader/PageHeader.js.map +1 -1
  555. package/dist/esm/components/layout/PanelSurface/PanelSurface.js +3 -3
  556. package/dist/esm/components/layout/PanelSurface/PanelSurface.js.map +1 -1
  557. package/dist/esm/components/layout/ScrollArea/ScrollArea.js +91 -23
  558. package/dist/esm/components/layout/ScrollArea/ScrollArea.js.map +1 -1
  559. package/dist/esm/components/layout/SplitPane/SplitPane.js +29 -16
  560. package/dist/esm/components/layout/SplitPane/SplitPane.js.map +1 -1
  561. package/dist/esm/components/layout/SplitPane/SplitPanePanel.js.map +1 -1
  562. package/dist/esm/components/layout/Stack/Stack.js +1 -1
  563. package/dist/esm/components/navigation/Breadcrumbs/BreadcrumbEllipsis.js +5 -0
  564. package/dist/esm/components/navigation/Breadcrumbs/BreadcrumbEllipsis.js.map +1 -1
  565. package/dist/esm/components/navigation/Breadcrumbs/BreadcrumbItem.js +7 -2
  566. package/dist/esm/components/navigation/Breadcrumbs/BreadcrumbItem.js.map +1 -1
  567. package/dist/esm/components/navigation/Breadcrumbs/BreadcrumbSeparator.js.map +1 -1
  568. package/dist/esm/components/navigation/Breadcrumbs/Breadcrumbs.js +12 -2
  569. package/dist/esm/components/navigation/Breadcrumbs/Breadcrumbs.js.map +1 -1
  570. package/dist/esm/components/navigation/ContextMenu/ContextMenu.js +45 -39
  571. package/dist/esm/components/navigation/ContextMenu/ContextMenu.js.map +1 -1
  572. package/dist/esm/components/navigation/Menu/Menu.css.js +9 -12
  573. package/dist/esm/components/navigation/Menu/Menu.css.js.map +1 -1
  574. package/dist/esm/components/navigation/Menu/Menu.js +97 -63
  575. package/dist/esm/components/navigation/Menu/Menu.js.map +1 -1
  576. package/dist/esm/components/navigation/Menu/MenuGapContext.js +19 -0
  577. package/dist/esm/components/navigation/Menu/MenuGapContext.js.map +1 -0
  578. package/dist/esm/components/navigation/Pagination/Pagination.css.js +12 -0
  579. package/dist/esm/components/navigation/Pagination/Pagination.css.js.map +1 -0
  580. package/dist/esm/components/navigation/Pagination/Pagination.js +107 -0
  581. package/dist/esm/components/navigation/Pagination/Pagination.js.map +1 -0
  582. package/dist/esm/components/navigation/Pagination/usePagination.js +143 -0
  583. package/dist/esm/components/navigation/Pagination/usePagination.js.map +1 -0
  584. package/dist/esm/components/navigation/PathBar/PathBar.css.js +6 -0
  585. package/dist/esm/components/navigation/PathBar/PathBar.css.js.map +1 -0
  586. package/dist/esm/components/navigation/PathBar/PathBar.js +178 -0
  587. package/dist/esm/components/navigation/PathBar/PathBar.js.map +1 -0
  588. package/dist/esm/components/navigation/PathBar/PathBarSiblingMenu.js +145 -0
  589. package/dist/esm/components/navigation/PathBar/PathBarSiblingMenu.js.map +1 -0
  590. package/dist/esm/components/navigation/PathBar/pathUtils.js +118 -0
  591. package/dist/esm/components/navigation/PathBar/pathUtils.js.map +1 -0
  592. package/dist/esm/components/navigation/SegmentedControl/SegmentedControl.js +16 -6
  593. package/dist/esm/components/navigation/SegmentedControl/SegmentedControl.js.map +1 -1
  594. package/dist/esm/components/navigation/SegmentedControl/SegmentedControlItem.js +1 -1
  595. package/dist/esm/components/navigation/SegmentedControl/SegmentedControlItem.js.map +1 -1
  596. package/dist/esm/components/navigation/Tabs/Tab.js +10 -3
  597. package/dist/esm/components/navigation/Tabs/Tab.js.map +1 -1
  598. package/dist/esm/components/navigation/Tabs/TabList.js +5 -2
  599. package/dist/esm/components/navigation/Tabs/TabList.js.map +1 -1
  600. package/dist/esm/components/navigation/Tabs/TabPanel.js +1 -1
  601. package/dist/esm/components/navigation/Tabs/TabPanel.js.map +1 -1
  602. package/dist/esm/components/navigation/Tabs/Tabs.js.map +1 -1
  603. package/dist/esm/components/primitives/Avatar/Avatar.js +90 -3
  604. package/dist/esm/components/primitives/Avatar/Avatar.js.map +1 -1
  605. package/dist/esm/components/primitives/Avatar/AvatarGroup.js +2 -2
  606. package/dist/esm/components/primitives/Avatar/AvatarGroup.js.map +1 -1
  607. package/dist/esm/components/primitives/Badge/Badge.js +89 -2
  608. package/dist/esm/components/primitives/Badge/Badge.js.map +1 -1
  609. package/dist/esm/components/primitives/Button/Button.js.map +1 -1
  610. package/dist/esm/components/primitives/Checkbox/Checkbox.js +10 -5
  611. package/dist/esm/components/primitives/Checkbox/Checkbox.js.map +1 -1
  612. package/dist/esm/components/primitives/Checkbox/CheckboxGroup.js +2 -2
  613. package/dist/esm/components/primitives/Checkbox/CheckboxGroup.js.map +1 -1
  614. package/dist/esm/components/primitives/Code/Code.js.map +1 -1
  615. package/dist/esm/components/primitives/Collapsible/Collapsible.js +4 -5
  616. package/dist/esm/components/primitives/Collapsible/Collapsible.js.map +1 -1
  617. package/dist/esm/components/primitives/HoverCard/HoverCard.css.js +7 -0
  618. package/dist/esm/components/primitives/HoverCard/HoverCard.css.js.map +1 -0
  619. package/dist/esm/components/primitives/HoverCard/HoverCard.js +171 -0
  620. package/dist/esm/components/primitives/HoverCard/HoverCard.js.map +1 -0
  621. package/dist/esm/components/primitives/Icon/Icon.js +16 -2
  622. package/dist/esm/components/primitives/Icon/Icon.js.map +1 -1
  623. package/dist/esm/components/primitives/IconButton/IconButton.js.map +1 -1
  624. package/dist/esm/components/primitives/Input/Input.js +1 -1
  625. package/dist/esm/components/primitives/Input/Input.js.map +1 -1
  626. package/dist/esm/components/primitives/Kbd/Kbd.js +1 -1
  627. package/dist/esm/components/primitives/Kbd/Kbd.js.map +1 -1
  628. package/dist/esm/components/primitives/Link/Link.js +3 -3
  629. package/dist/esm/components/primitives/Link/Link.js.map +1 -1
  630. package/dist/esm/components/primitives/Paper/Paper.js.map +1 -1
  631. package/dist/esm/components/primitives/Popover/Popover.js +1 -1
  632. package/dist/esm/components/primitives/Popover/PopoverClose.js +3 -4
  633. package/dist/esm/components/primitives/Popover/PopoverClose.js.map +1 -1
  634. package/dist/esm/components/primitives/Popover/PopoverContent.js +6 -4
  635. package/dist/esm/components/primitives/Popover/PopoverContent.js.map +1 -1
  636. package/dist/esm/components/primitives/Popover/PopoverTrigger.js.map +1 -1
  637. package/dist/esm/components/primitives/Radio/Radio.js +4 -4
  638. package/dist/esm/components/primitives/Radio/Radio.js.map +1 -1
  639. package/dist/esm/components/primitives/Radio/RadioGroup.js +2 -2
  640. package/dist/esm/components/primitives/Radio/RadioGroup.js.map +1 -1
  641. package/dist/esm/components/primitives/Switch/Switch.js +1 -1
  642. package/dist/esm/components/primitives/Switch/Switch.js.map +1 -1
  643. package/dist/esm/components/primitives/Text/Text.js.map +1 -1
  644. package/dist/esm/components/primitives/TextArea/TextArea.js +3 -4
  645. package/dist/esm/components/primitives/TextArea/TextArea.js.map +1 -1
  646. package/dist/esm/components/primitives/Tooltip/Arrow.js +1 -1
  647. package/dist/esm/components/primitives/Tooltip/Arrow.js.map +1 -1
  648. package/dist/esm/components/primitives/Tooltip/Tooltip.js +9 -7
  649. package/dist/esm/components/primitives/Tooltip/Tooltip.js.map +1 -1
  650. package/dist/esm/components/primitives/Tooltip/utils.js +1 -1
  651. package/dist/esm/components/primitives/Tooltip/utils.js.map +1 -1
  652. package/dist/esm/components/primitives/VisuallyHidden/VisuallyHidden.js.map +1 -1
  653. package/dist/esm/components/primitives/canvas/CanvasContainer.js +1 -1
  654. package/dist/esm/components/primitives/canvas/CanvasContainer.js.map +1 -1
  655. package/dist/esm/components/primitives/canvas/canvasDrawing.js +1 -1
  656. package/dist/esm/components/primitives/canvas/canvasDrawing.js.map +1 -1
  657. package/dist/esm/components/primitives/canvas/canvasTheme.js.map +1 -1
  658. package/dist/esm/components/primitives/canvas/useCanvasRenderer.js +8 -2
  659. package/dist/esm/components/primitives/canvas/useCanvasRenderer.js.map +1 -1
  660. package/dist/esm/components/primitives/viewport/Viewport.css.js +12 -0
  661. package/dist/esm/components/primitives/viewport/Viewport.css.js.map +1 -0
  662. package/dist/esm/components/primitives/viewport/Viewport.js +189 -0
  663. package/dist/esm/components/primitives/viewport/Viewport.js.map +1 -0
  664. package/dist/esm/components/primitives/viewport/ViewportContext.js +47 -0
  665. package/dist/esm/components/primitives/viewport/ViewportContext.js.map +1 -0
  666. package/dist/esm/components/primitives/viewport/ViewportLayer.js +113 -0
  667. package/dist/esm/components/primitives/viewport/ViewportLayer.js.map +1 -0
  668. package/dist/esm/components/primitives/viewport/ViewportOverlay.js +47 -0
  669. package/dist/esm/components/primitives/viewport/ViewportOverlay.js.map +1 -0
  670. package/dist/esm/components/primitives/viewport/ViewportStore.js +210 -0
  671. package/dist/esm/components/primitives/viewport/ViewportStore.js.map +1 -0
  672. package/dist/esm/components/primitives/viewport/ViewportWorld.js +38 -0
  673. package/dist/esm/components/primitives/viewport/ViewportWorld.js.map +1 -0
  674. package/dist/esm/components/primitives/viewport/useViewportGestures.js +333 -0
  675. package/dist/esm/components/primitives/viewport/useViewportGestures.js.map +1 -0
  676. package/dist/esm/components/primitives/viewport/viewportCoords.js +37 -0
  677. package/dist/esm/components/primitives/viewport/viewportCoords.js.map +1 -0
  678. package/dist/esm/components/primitives/viewport/viewportMath.js +77 -0
  679. package/dist/esm/components/primitives/viewport/viewportMath.js.map +1 -0
  680. package/dist/esm/components/shell/AppShell/AppShell.js +1 -1
  681. package/dist/esm/components/shell/AppShell/AppShell.js.map +1 -1
  682. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.css.js +11 -10
  683. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.css.js.map +1 -1
  684. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.js +60 -24
  685. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.js.map +1 -1
  686. package/dist/esm/components/shell/MenuBar/MenuBar.js +23 -16
  687. package/dist/esm/components/shell/MenuBar/MenuBar.js.map +1 -1
  688. package/dist/esm/components/shell/StatusBar/StatusBar.js.map +1 -1
  689. package/dist/esm/components/shell/Toolbar/Toolbar.js +4 -3
  690. package/dist/esm/components/shell/Toolbar/Toolbar.js.map +1 -1
  691. package/dist/esm/context/KeyboardContext.js.map +1 -1
  692. package/dist/esm/hooks/useBreakpoint/useBreakpoint.js +44 -0
  693. package/dist/esm/hooks/useBreakpoint/useBreakpoint.js.map +1 -0
  694. package/dist/esm/hooks/useClickOutside/useClickOutside.js +9 -9
  695. package/dist/esm/hooks/useClickOutside/useClickOutside.js.map +1 -1
  696. package/dist/esm/hooks/useClipboard/useClipboard.js +4 -0
  697. package/dist/esm/hooks/useClipboard/useClipboard.js.map +1 -1
  698. package/dist/esm/hooks/useControlledState/useControlledState.js.map +1 -1
  699. package/dist/esm/hooks/useDebounced/useDebouncedCallback.js +102 -0
  700. package/dist/esm/hooks/useDebounced/useDebouncedCallback.js.map +1 -0
  701. package/dist/esm/hooks/useDebounced/useDebouncedValue.js +47 -0
  702. package/dist/esm/hooks/useDebounced/useDebouncedValue.js.map +1 -0
  703. package/dist/esm/hooks/useDisclosure/useDisclosure.js.map +1 -1
  704. package/dist/esm/hooks/useEventCallback/useEventCallback.js +49 -0
  705. package/dist/esm/hooks/useEventCallback/useEventCallback.js.map +1 -0
  706. package/dist/esm/hooks/useFocusTrap/useFocusTrap.js.map +1 -1
  707. package/dist/esm/hooks/useHotkey/useHotkey.js +7 -12
  708. package/dist/esm/hooks/useHotkey/useHotkey.js.map +1 -1
  709. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js +75 -0
  710. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js.map +1 -0
  711. package/dist/esm/hooks/useIsMounted/useIsMounted.js +43 -0
  712. package/dist/esm/hooks/useIsMounted/useIsMounted.js.map +1 -0
  713. package/dist/esm/hooks/useKeyboard/useKeyboard.js.map +1 -1
  714. package/dist/esm/hooks/useKeyboard/utils.js.map +1 -1
  715. package/dist/esm/hooks/useLatest/useLatest.js +31 -0
  716. package/dist/esm/hooks/useLatest/useLatest.js.map +1 -0
  717. package/dist/esm/hooks/useListboxNav/useListboxNav.js +197 -0
  718. package/dist/esm/hooks/useListboxNav/useListboxNav.js.map +1 -0
  719. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js +60 -0
  720. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js.map +1 -0
  721. package/dist/esm/hooks/useMergedRef/useMergedRef.js +6 -1
  722. package/dist/esm/hooks/useMergedRef/useMergedRef.js.map +1 -1
  723. package/dist/esm/hooks/useNavigationHistory/useNavigationHistory.js +146 -0
  724. package/dist/esm/hooks/useNavigationHistory/useNavigationHistory.js.map +1 -0
  725. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js +6 -8
  726. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js.map +1 -1
  727. package/dist/esm/hooks/useTheme/useTheme.js +5 -2
  728. package/dist/esm/hooks/useTheme/useTheme.js.map +1 -1
  729. package/dist/esm/hooks/useThrottledCallback/useThrottledCallback.js +83 -0
  730. package/dist/esm/hooks/useThrottledCallback/useThrottledCallback.js.map +1 -0
  731. package/dist/esm/index.js +82 -4
  732. package/dist/esm/index.js.map +1 -1
  733. package/dist/esm/node_modules/tslib/tslib.es6.js +37 -0
  734. package/dist/esm/node_modules/tslib/tslib.es6.js.map +1 -0
  735. package/dist/esm/theme/ThemeProvider.js +1 -1
  736. package/dist/esm/theme/ThemeProvider.js.map +1 -1
  737. package/dist/esm/theme/breakpoints.js +27 -0
  738. package/dist/esm/theme/breakpoints.js.map +1 -0
  739. package/dist/esm/theme/contract.css.js +1 -1
  740. package/dist/esm/theme/createCustomTheme.js +1 -1
  741. package/dist/esm/theme/createCustomTheme.js.map +1 -1
  742. package/dist/esm/theme/darkTheme.css.js +2 -2
  743. package/dist/esm/theme/darkThemeValues.js +1 -1
  744. package/dist/esm/theme/darkThemeValues.js.map +1 -1
  745. package/dist/esm/theme/index.js +1 -0
  746. package/dist/esm/theme/index.js.map +1 -1
  747. package/dist/esm/theme/lightTheme.css.js +1 -1
  748. package/dist/esm/theme/lightThemeValues.js +1 -1
  749. package/dist/esm/theme/lightThemeValues.js.map +1 -1
  750. package/dist/esm/theme/themeContractData.js +4 -4
  751. package/dist/esm/theme/themeContractData.js.map +1 -1
  752. package/dist/esm/utils/devWarn.js +1 -1
  753. package/dist/esm/utils/mathExpression.js +1 -1
  754. package/dist/esm/utils/mathExpression.js.map +1 -1
  755. package/dist/tokens/tokens.dark.css +1 -1
  756. package/dist/tokens/tokens.json +1 -1
  757. package/dist/tokens/tokens.light.css +1 -1
  758. package/dist/types/components/Icons/AddIcon.d.ts +1 -1
  759. package/dist/types/components/Icons/AiChatIcon.d.ts +1 -1
  760. package/dist/types/components/Icons/AiSparklesIcon.d.ts +1 -1
  761. package/dist/types/components/Icons/ArchiveIcon.d.ts +1 -1
  762. package/dist/types/components/Icons/ArrowDownIcon.d.ts +1 -1
  763. package/dist/types/components/Icons/ArrowLeftIcon.d.ts +1 -1
  764. package/dist/types/components/Icons/ArrowRightIcon.d.ts +1 -1
  765. package/dist/types/components/Icons/ArrowUpIcon.d.ts +1 -1
  766. package/dist/types/components/Icons/BookmarkIcon.d.ts +1 -1
  767. package/dist/types/components/Icons/BugIcon.d.ts +1 -1
  768. package/dist/types/components/Icons/BuildingIcon.d.ts +1 -1
  769. package/dist/types/components/Icons/CalendarIcon.d.ts +1 -1
  770. package/dist/types/components/Icons/CheckIcon.d.ts +1 -1
  771. package/dist/types/components/Icons/ChevronDownIcon.d.ts +1 -1
  772. package/dist/types/components/Icons/ChevronLeftIcon.d.ts +1 -1
  773. package/dist/types/components/Icons/ChevronRightIcon.d.ts +1 -1
  774. package/dist/types/components/Icons/ChevronUpIcon.d.ts +1 -1
  775. package/dist/types/components/Icons/CircleIcon.d.ts +1 -1
  776. package/dist/types/components/Icons/ClockIcon.d.ts +1 -1
  777. package/dist/types/components/Icons/CloseIcon.d.ts +1 -1
  778. package/dist/types/components/Icons/CloudUploadIcon.d.ts +27 -0
  779. package/dist/types/components/Icons/CodeIcon.d.ts +1 -1
  780. package/dist/types/components/Icons/CopyIcon.d.ts +1 -1
  781. package/dist/types/components/Icons/CutIcon.d.ts +1 -1
  782. package/dist/types/components/Icons/DotsHorizontalIcon.d.ts +1 -1
  783. package/dist/types/components/Icons/DotsVerticalIcon.d.ts +1 -1
  784. package/dist/types/components/Icons/DownloadIcon.d.ts +1 -1
  785. package/dist/types/components/Icons/EditIcon.d.ts +1 -1
  786. package/dist/types/components/Icons/ErrorIcon.d.ts +1 -1
  787. package/dist/types/components/Icons/ExternalLinkIcon.d.ts +29 -0
  788. package/dist/types/components/Icons/EyeDropperIcon.d.ts +1 -1
  789. package/dist/types/components/Icons/EyeIcon.d.ts +1 -1
  790. package/dist/types/components/Icons/FileTextIcon.d.ts +1 -1
  791. package/dist/types/components/Icons/FilterIcon.d.ts +1 -1
  792. package/dist/types/components/Icons/FirstIcon.d.ts +26 -0
  793. package/dist/types/components/Icons/FolderCogIcon.d.ts +1 -1
  794. package/dist/types/components/Icons/FolderIcon.d.ts +1 -1
  795. package/dist/types/components/Icons/FolderOpenIcon.d.ts +1 -1
  796. package/dist/types/components/Icons/FullscreenIcon.d.ts +1 -1
  797. package/dist/types/components/Icons/GitBranchIcon.d.ts +1 -1
  798. package/dist/types/components/Icons/GridIcon.d.ts +1 -1
  799. package/dist/types/components/Icons/HeartIcon.d.ts +1 -1
  800. package/dist/types/components/Icons/HelpIcon.d.ts +1 -1
  801. package/dist/types/components/Icons/HomeIcon.d.ts +1 -1
  802. package/dist/types/components/Icons/ImageIcon.d.ts +34 -0
  803. package/dist/types/components/Icons/InfoIcon.d.ts +1 -1
  804. package/dist/types/components/Icons/LastIcon.d.ts +26 -0
  805. package/dist/types/components/Icons/LinkIcon.d.ts +1 -1
  806. package/dist/types/components/Icons/ListIcon.d.ts +1 -1
  807. package/dist/types/components/Icons/LockIcon.d.ts +1 -1
  808. package/dist/types/components/Icons/MaximizeIcon.d.ts +1 -1
  809. package/dist/types/components/Icons/MenuIcon.d.ts +1 -1
  810. package/dist/types/components/Icons/MinimizeIcon.d.ts +1 -1
  811. package/dist/types/components/Icons/MinusIcon.d.ts +1 -1
  812. package/dist/types/components/Icons/PasteIcon.d.ts +1 -1
  813. package/dist/types/components/Icons/PauseIcon.d.ts +1 -1
  814. package/dist/types/components/Icons/PinIcon.d.ts +1 -1
  815. package/dist/types/components/Icons/PlayIcon.d.ts +1 -1
  816. package/dist/types/components/Icons/RedoIcon.d.ts +1 -1
  817. package/dist/types/components/Icons/RefreshIcon.d.ts +1 -1
  818. package/dist/types/components/Icons/RobotIcon.d.ts +1 -1
  819. package/dist/types/components/Icons/SaveIcon.d.ts +1 -1
  820. package/dist/types/components/Icons/SearchIcon.d.ts +1 -1
  821. package/dist/types/components/Icons/SendIcon.d.ts +1 -1
  822. package/dist/types/components/Icons/SettingsIcon.d.ts +1 -1
  823. package/dist/types/components/Icons/SortIcon.d.ts +1 -1
  824. package/dist/types/components/Icons/StarIcon.d.ts +1 -1
  825. package/dist/types/components/Icons/StopIcon.d.ts +1 -1
  826. package/dist/types/components/Icons/SuccessIcon.d.ts +1 -1
  827. package/dist/types/components/Icons/TagIcon.d.ts +1 -1
  828. package/dist/types/components/Icons/TangentAlignedIcon.d.ts +1 -1
  829. package/dist/types/components/Icons/TangentAutoIcon.d.ts +1 -1
  830. package/dist/types/components/Icons/TangentFreeIcon.d.ts +1 -1
  831. package/dist/types/components/Icons/TangentLinearIcon.d.ts +1 -1
  832. package/dist/types/components/Icons/TangentMirroredIcon.d.ts +1 -1
  833. package/dist/types/components/Icons/TangentStepIcon.d.ts +1 -1
  834. package/dist/types/components/Icons/TerminalIcon.d.ts +1 -1
  835. package/dist/types/components/Icons/TrashIcon.d.ts +1 -1
  836. package/dist/types/components/Icons/UndoIcon.d.ts +1 -1
  837. package/dist/types/components/Icons/UnlinkIcon.d.ts +29 -0
  838. package/dist/types/components/Icons/UnlockIcon.d.ts +1 -1
  839. package/dist/types/components/Icons/UploadIcon.d.ts +1 -1
  840. package/dist/types/components/Icons/UserIcon.d.ts +1 -1
  841. package/dist/types/components/Icons/UsersIcon.d.ts +1 -1
  842. package/dist/types/components/Icons/WarningIcon.d.ts +1 -1
  843. package/dist/types/components/Icons/ZoomInIcon.d.ts +1 -1
  844. package/dist/types/components/Icons/ZoomOutIcon.d.ts +1 -1
  845. package/dist/types/components/controls/CartesianPicker/CartesianPicker.types.d.ts +3 -3
  846. package/dist/types/components/controls/ColorPicker/ColorPicker.types.d.ts +2 -2
  847. package/dist/types/components/controls/ColorPicker/EyeDropper.d.ts +1 -1
  848. package/dist/types/components/controls/Combobox/Combobox.d.ts +29 -0
  849. package/dist/types/components/controls/Combobox/Combobox.types.d.ts +109 -0
  850. package/dist/types/components/controls/CurveEditor/CurveEditor.types.d.ts +8 -58
  851. package/dist/types/components/controls/CurveEditor/curveUtils.d.ts +2 -1
  852. package/dist/types/components/controls/FileTree/FileTree.d.ts +34 -0
  853. package/dist/types/components/controls/FileTree/FileTree.types.d.ts +133 -0
  854. package/dist/types/components/controls/FileTree/fileTreeIcons.d.ts +29 -0
  855. package/dist/types/components/controls/FileTree/fileTreeLabels.d.ts +19 -0
  856. package/dist/types/components/controls/FileUploader/FileUploader.d.ts +34 -0
  857. package/dist/types/components/controls/FileUploader/FileUploader.types.d.ts +94 -0
  858. package/dist/types/components/controls/MultiSelect/MultiSelect.d.ts +31 -0
  859. package/dist/types/components/controls/MultiSelect/MultiSelect.types.d.ts +85 -0
  860. package/dist/types/components/controls/NumberInput/NumberInput.d.ts +2 -2
  861. package/dist/types/components/controls/Select/Select.types.d.ts +2 -2
  862. package/dist/types/components/controls/Slider/Slider.d.ts +1 -1
  863. package/dist/types/components/controls/TagInput/TagInput.d.ts +24 -0
  864. package/dist/types/components/controls/TagInput/TagInput.types.d.ts +100 -0
  865. package/dist/types/components/controls/TreeView/TreeView.d.ts +1 -1
  866. package/dist/types/components/controls/TreeView/TreeView.types.d.ts +24 -2
  867. package/dist/types/components/controls/VectorInput/VectorInput.types.d.ts +1 -1
  868. package/dist/types/components/data/DataTable/DataTable.d.ts +8 -0
  869. package/dist/types/components/data/DataTable/DataTable.types.d.ts +159 -0
  870. package/dist/types/components/editor/AssetBrowser/AssetBrowser.d.ts +13 -0
  871. package/dist/types/components/editor/AssetBrowser/AssetBrowser.types.d.ts +241 -0
  872. package/dist/types/components/editor/AssetBrowser/assetBrowserLabels.d.ts +70 -0
  873. package/dist/types/components/editor/ChatPanel/ChatMarkdownRenderer.types.d.ts +1 -1
  874. package/dist/types/components/editor/ChatPanel/ChatPanel.types.d.ts +2 -2
  875. package/dist/types/components/editor/Minimap/Minimap.d.ts +26 -0
  876. package/dist/types/components/editor/Minimap/Minimap.types.d.ts +249 -0
  877. package/dist/types/components/editor/Minimap/MinimapContext.d.ts +27 -0
  878. package/dist/types/components/editor/Minimap/MinimapCorner.d.ts +8 -0
  879. package/dist/types/components/editor/Minimap/MinimapFooter.d.ts +8 -0
  880. package/dist/types/components/editor/Minimap/MinimapStore.d.ts +17 -0
  881. package/dist/types/components/editor/Minimap/MinimapTitle.d.ts +8 -0
  882. package/dist/types/components/editor/Minimap/ViewportMinimap.d.ts +52 -0
  883. package/dist/types/components/editor/Minimap/computeBoundsFromItems.d.ts +13 -0
  884. package/dist/types/components/editor/Minimap/index.d.ts +13 -0
  885. package/dist/types/components/editor/NodeGraph/NodeGraph.d.ts +63 -0
  886. package/dist/types/components/editor/NodeGraph/NodeGraph.types.d.ts +568 -0
  887. package/dist/types/components/editor/NodeGraph/NodeGraphContext.d.ts +30 -0
  888. package/dist/types/components/editor/NodeGraph/NodeGraphNodeParts.d.ts +86 -0
  889. package/dist/types/components/editor/NodeGraph/NodeGraphNodeSection.d.ts +47 -0
  890. package/dist/types/components/editor/NodeGraph/NodeGraphPin.d.ts +57 -0
  891. package/dist/types/components/editor/NodeGraph/NodeGraphPort.d.ts +30 -0
  892. package/dist/types/components/editor/NodeGraph/NodeGraphPortVisual.d.ts +46 -0
  893. package/dist/types/components/editor/NodeGraph/NodeGraphSlots.d.ts +16 -0
  894. package/dist/types/components/editor/NodeGraph/NodeGraphStore.d.ts +256 -0
  895. package/dist/types/components/editor/NodeGraph/NodeGraphToolbar.d.ts +54 -0
  896. package/dist/types/components/editor/NodeGraph/createTypeMatchValidator.d.ts +43 -0
  897. package/dist/types/components/editor/NodeGraph/nodeGraphActions.d.ts +39 -0
  898. package/dist/types/components/editor/NodeGraph/nodeGraphIds.d.ts +16 -0
  899. package/dist/types/components/editor/NodeGraph/useNodeGraph.d.ts +103 -0
  900. package/dist/types/components/editor/PropertyInspector/PropertyInspector.types.d.ts +2 -2
  901. package/dist/types/components/editor/Timeline/Timeline.d.ts +18 -0
  902. package/dist/types/components/editor/Timeline/Timeline.types.d.ts +348 -0
  903. package/dist/types/components/editor/Timeline/TimelineContext.d.ts +51 -0
  904. package/dist/types/components/editor/Timeline/TimelineFooter.d.ts +8 -0
  905. package/dist/types/components/editor/Timeline/TimelineMinimap.d.ts +21 -0
  906. package/dist/types/components/editor/Timeline/TimelineStore.d.ts +41 -0
  907. package/dist/types/components/editor/Timeline/TimelineToolbar.d.ts +8 -0
  908. package/dist/types/components/editor/Timeline/TimelineTrackScale.d.ts +8 -0
  909. package/dist/types/components/editor/Timeline/index.d.ts +15 -0
  910. package/dist/types/components/editor/Timeline/timelineCoords.d.ts +7 -0
  911. package/dist/types/components/editor/Timeline/timelineEdits.d.ts +18 -0
  912. package/dist/types/components/editor/TransformControl/TransformControl.types.d.ts +2 -2
  913. package/dist/types/components/editor/ViewportGizmo/ViewportGizmo.types.d.ts +1 -1
  914. package/dist/types/components/feedback/Alert/Alert.d.ts +3 -2
  915. package/dist/types/components/feedback/Alert/Alert.types.d.ts +12 -5
  916. package/dist/types/components/feedback/CommandPalette/CommandPalette.d.ts +29 -0
  917. package/dist/types/components/feedback/CommandPalette/CommandPalette.types.d.ts +59 -0
  918. package/dist/types/components/feedback/CommandPalette/fuzzySearch.d.ts +6 -0
  919. package/dist/types/components/feedback/Dialog/Dialog.types.d.ts +2 -2
  920. package/dist/types/components/feedback/Drawer/Drawer.d.ts +12 -0
  921. package/dist/types/components/feedback/Drawer/Drawer.types.d.ts +70 -0
  922. package/dist/types/components/feedback/EmptyState/EmptyState.types.d.ts +2 -2
  923. package/dist/types/components/feedback/LogView/LogView.d.ts +58 -0
  924. package/dist/types/components/feedback/LogView/LogView.types.d.ts +333 -0
  925. package/dist/types/components/feedback/LogView/LogViewBody.d.ts +15 -0
  926. package/dist/types/components/feedback/LogView/LogViewContext.d.ts +9 -0
  927. package/dist/types/components/feedback/LogView/LogViewParts.d.ts +35 -0
  928. package/dist/types/components/feedback/LogView/LogViewStore.d.ts +4 -0
  929. package/dist/types/components/feedback/LogView/logViewLabels.d.ts +9 -0
  930. package/dist/types/components/feedback/LogView/logViewUtils.d.ts +41 -0
  931. package/dist/types/components/feedback/ProgressBar/ProgressBar.types.d.ts +3 -3
  932. package/dist/types/components/feedback/Skeleton/Skeleton.types.d.ts +47 -4
  933. package/dist/types/components/feedback/Skeleton/SkeletonLayout.d.ts +314 -0
  934. package/dist/types/components/feedback/Stat/Stat.d.ts +23 -0
  935. package/dist/types/components/feedback/Stat/Stat.types.d.ts +38 -0
  936. package/dist/types/components/feedback/Toast/Toast.types.d.ts +1 -1
  937. package/dist/types/components/form/FormHelperText.d.ts +2 -2
  938. package/dist/types/components/form/FormLabel.d.ts +1 -1
  939. package/dist/types/components/form/InputWrapper.d.ts +2 -2
  940. package/dist/types/components/layout/Accordion/Accordion.types.d.ts +9 -2
  941. package/dist/types/components/layout/Card/Card.d.ts +12 -0
  942. package/dist/types/components/layout/Card/Card.types.d.ts +54 -0
  943. package/dist/types/components/layout/Divider/Divider.types.d.ts +2 -2
  944. package/dist/types/components/layout/Flex/Flex.d.ts +1 -1
  945. package/dist/types/components/layout/Grid/Grid.d.ts +1 -1
  946. package/dist/types/components/layout/ListItem/ListItem.types.d.ts +2 -2
  947. package/dist/types/components/layout/PageHeader/PageHeader.types.d.ts +1 -1
  948. package/dist/types/components/layout/PanelSurface/PanelSurface.types.d.ts +6 -6
  949. package/dist/types/components/layout/ScrollArea/ScrollArea.types.d.ts +2 -2
  950. package/dist/types/components/layout/Stack/Stack.d.ts +1 -1
  951. package/dist/types/components/navigation/Breadcrumbs/BreadcrumbItem.d.ts +1 -0
  952. package/dist/types/components/navigation/Breadcrumbs/Breadcrumbs.types.d.ts +7 -0
  953. package/dist/types/components/navigation/ContextMenu/ContextMenu.d.ts +18 -3
  954. package/dist/types/components/navigation/ContextMenu/ContextMenu.types.d.ts +55 -63
  955. package/dist/types/components/navigation/Menu/Menu.d.ts +38 -35
  956. package/dist/types/components/navigation/Menu/Menu.types.d.ts +190 -71
  957. package/dist/types/components/navigation/Pagination/Pagination.d.ts +22 -0
  958. package/dist/types/components/navigation/Pagination/Pagination.types.d.ts +49 -0
  959. package/dist/types/components/navigation/PathBar/PathBar.d.ts +31 -0
  960. package/dist/types/components/navigation/PathBar/PathBar.types.d.ts +79 -0
  961. package/dist/types/components/navigation/SegmentedControl/SegmentedControl.types.d.ts +3 -3
  962. package/dist/types/components/navigation/Tabs/Tabs.types.d.ts +2 -2
  963. package/dist/types/components/primitives/Avatar/Avatar.types.d.ts +2 -2
  964. package/dist/types/components/primitives/Badge/Badge.types.d.ts +1 -1
  965. package/dist/types/components/primitives/Button/Button.d.ts +2 -2
  966. package/dist/types/components/primitives/Checkbox/Checkbox.types.d.ts +2 -2
  967. package/dist/types/components/primitives/Code/Code.types.d.ts +1 -1
  968. package/dist/types/components/primitives/Collapsible/Collapsible.types.d.ts +2 -2
  969. package/dist/types/components/primitives/HoverCard/HoverCard.d.ts +10 -0
  970. package/dist/types/components/primitives/HoverCard/HoverCard.types.d.ts +64 -0
  971. package/dist/types/components/primitives/Icon/Icon.d.ts +15 -2
  972. package/dist/types/components/primitives/IconButton/IconButton.d.ts +1 -1
  973. package/dist/types/components/primitives/Input/Input.d.ts +1 -1
  974. package/dist/types/components/primitives/Kbd/Kbd.types.d.ts +1 -1
  975. package/dist/types/components/primitives/Link/Link.types.d.ts +1 -1
  976. package/dist/types/components/primitives/Popover/Popover.types.d.ts +2 -2
  977. package/dist/types/components/primitives/Radio/Radio.types.d.ts +3 -3
  978. package/dist/types/components/primitives/Switch/Switch.d.ts +1 -1
  979. package/dist/types/components/primitives/TextArea/TextArea.types.d.ts +1 -1
  980. package/dist/types/components/primitives/Tooltip/Tooltip.d.ts +1 -1
  981. package/dist/types/components/primitives/VisuallyHidden/VisuallyHidden.types.d.ts +1 -1
  982. package/dist/types/components/primitives/canvas/canvas.types.d.ts +16 -1
  983. package/dist/types/components/primitives/viewport/Viewport.d.ts +38 -0
  984. package/dist/types/components/primitives/viewport/Viewport.types.d.ts +257 -0
  985. package/dist/types/components/primitives/viewport/ViewportContext.d.ts +23 -0
  986. package/dist/types/components/primitives/viewport/ViewportLayer.d.ts +26 -0
  987. package/dist/types/components/primitives/viewport/ViewportOverlay.d.ts +27 -0
  988. package/dist/types/components/primitives/viewport/ViewportWorld.d.ts +25 -0
  989. package/dist/types/components/primitives/viewport/viewportCoords.d.ts +25 -0
  990. package/dist/types/components/primitives/viewport/viewportMath.d.ts +35 -0
  991. package/dist/types/components/shell/AppShell/AppShell.types.d.ts +2 -2
  992. package/dist/types/components/shell/FloatingPanel/FloatingPanel.types.d.ts +2 -2
  993. package/dist/types/components/shell/MenuBar/MenuBar.types.d.ts +5 -5
  994. package/dist/types/components/shell/StatusBar/StatusBar.types.d.ts +3 -3
  995. package/dist/types/components/shell/Toolbar/Toolbar.types.d.ts +5 -5
  996. package/dist/types/hooks/useBreakpoint/useBreakpoint.d.ts +19 -0
  997. package/dist/types/hooks/useBreakpoint/useBreakpoint.types.d.ts +20 -0
  998. package/dist/types/hooks/useDebounced/useDebounced.types.d.ts +15 -0
  999. package/dist/types/hooks/useDebounced/useDebouncedCallback.d.ts +22 -0
  1000. package/dist/types/hooks/useDebounced/useDebouncedValue.d.ts +25 -0
  1001. package/dist/types/hooks/useEventCallback/useEventCallback.d.ts +32 -0
  1002. package/dist/types/hooks/useIntersectionObserver/useIntersectionObserver.d.ts +22 -0
  1003. package/dist/types/hooks/useIntersectionObserver/useIntersectionObserver.types.d.ts +22 -0
  1004. package/dist/types/hooks/useIsMounted/useIsMounted.d.ts +28 -0
  1005. package/dist/types/hooks/useKeyboard/types.d.ts +1 -1
  1006. package/dist/types/hooks/useLatest/useLatest.d.ts +23 -0
  1007. package/dist/types/hooks/useListboxNav/useListboxNav.d.ts +75 -0
  1008. package/dist/types/hooks/useMediaQuery/useMediaQuery.d.ts +19 -0
  1009. package/dist/types/hooks/useMediaQuery/useMediaQuery.types.d.ts +6 -0
  1010. package/dist/types/hooks/useResizeObserver/useResizeObserver.d.ts +3 -3
  1011. package/dist/types/hooks/useThrottledCallback/useThrottledCallback.d.ts +23 -0
  1012. package/dist/types/hooks/useThrottledCallback/useThrottledCallback.types.d.ts +13 -0
  1013. package/dist/types/index.d.ts +108 -7
  1014. package/dist/types/theme/breakpoints.d.ts +22 -0
  1015. package/dist/types/theme/contract.css.d.ts +1 -1
  1016. package/dist/types/theme/createCustomTheme.d.ts +1 -1
  1017. package/dist/types/theme/darkThemeValues.d.ts +1 -1
  1018. package/dist/types/theme/index.d.ts +1 -0
  1019. package/dist/types/theme/lightThemeValues.d.ts +1 -1
  1020. package/dist/types/theme/themeContractData.d.ts +4 -4
  1021. package/dist/types/theme-values.d.ts +1 -1
  1022. package/dist/types/types/keyframe.d.ts +64 -0
  1023. package/package.json +31 -17
  1024. package/dist/esm/assets/src/components/navigation/Menu/Menu.css.ts.vanilla-DD0c5D10.css +0 -67
  1025. package/dist/esm/components/navigation/ContextMenu/useContextMenuTarget.js +0 -53
  1026. package/dist/esm/components/navigation/ContextMenu/useContextMenuTarget.js.map +0 -1
  1027. package/dist/esm/components/navigation/Menu/Menu.helpers.js +0 -53
  1028. package/dist/esm/components/navigation/Menu/Menu.helpers.js.map +0 -1
  1029. package/dist/esm/components/navigation/Menu/useMenu.js +0 -88
  1030. package/dist/esm/components/navigation/Menu/useMenu.js.map +0 -1
  1031. package/dist/types/components/navigation/ContextMenu/useContextMenuTarget.d.ts +0 -5
  1032. package/dist/types/components/navigation/Menu/useMenu.d.ts +0 -16
@@ -0,0 +1,47 @@
1
+ import React from 'react';
2
+
3
+ interface NodeGraphNodeSectionProps {
4
+ /** Header label shown next to the collapse toggle. */
5
+ title?: React.ReactNode;
6
+ /**
7
+ * Whether the header toggles the section. When false the section is a
8
+ * static labelled group (no chevron, always shown). @default true
9
+ */
10
+ collapsible?: boolean;
11
+ /** Controlled collapsed state. Pair with `onCollapsedChange`. */
12
+ collapsed?: boolean;
13
+ /** Initial collapsed state when uncontrolled. @default false */
14
+ defaultCollapsed?: boolean;
15
+ /** Fires when the user toggles the section. */
16
+ onCollapsedChange?: (collapsed: boolean) => void;
17
+ className?: string;
18
+ style?: React.CSSProperties;
19
+ /** Section body — typically a `<NodeGraph.PinList>` of the extra pins. */
20
+ children?: React.ReactNode;
21
+ }
22
+ /**
23
+ * A collapsible section inside a node body — the place to tuck "advanced" /
24
+ * overflow pins so the node stays compact. The collapse is **purely visual**:
25
+ * the children never unmount, so their state is preserved and there's no
26
+ * remount cost. `<NodeGraph.Port>` slots inside a collapsed section
27
+ * unregister their position while hidden, so the pins' edges hide with them
28
+ * and reappear on expand — no dangling wires, no manual re-anchoring.
29
+ *
30
+ * @example
31
+ * ```tsx
32
+ * <NodeGraph.NodeBody>
33
+ * <NodeGraph.NodeHeader title="Make Transform" />
34
+ * <NodeGraph.PinList>{mainPins}</NodeGraph.PinList>
35
+ * <NodeGraph.NodeSection title="Advanced" defaultCollapsed>
36
+ * <NodeGraph.PinList>{advancedPins}</NodeGraph.PinList>
37
+ * </NodeGraph.NodeSection>
38
+ * </NodeGraph.NodeBody>
39
+ * ```
40
+ */
41
+ declare function NodeGraphNodeSection({ title, collapsible, collapsed: collapsedProp, defaultCollapsed, onCollapsedChange, className, style, children, }: NodeGraphNodeSectionProps): React.ReactElement;
42
+ declare namespace NodeGraphNodeSection {
43
+ var displayName: string;
44
+ }
45
+
46
+ export { NodeGraphNodeSection };
47
+ export type { NodeGraphNodeSectionProps };
@@ -0,0 +1,57 @@
1
+ import React from 'react';
2
+ import { NodeGraphPortSide, NodeGraphPortShape } from './NodeGraph.types.js';
3
+
4
+ interface NodeGraphPinProps {
5
+ /** Port id — referenced by `NodeGraphEdge.source` / `.target`. */
6
+ id: string;
7
+ /** Which side the pin anchors to. Drives row layout and edge tangent. */
8
+ side: NodeGraphPortSide;
9
+ /** Opaque type token forwarded to `isValidConnection` and edge styling. */
10
+ dataType?: string;
11
+ /** Row label shown next to the handle. */
12
+ label?: React.ReactNode;
13
+ /** Handle colour (any CSS colour). Defaults to the theme focus colour. */
14
+ color?: string;
15
+ /** Built-in handle shape. @default 'circle' */
16
+ shape?: NodeGraphPortShape;
17
+ /**
18
+ * Force the handle filled / hollow. When omitted, the handle fills
19
+ * automatically while the pin is connected to an edge.
20
+ */
21
+ filled?: boolean;
22
+ /** Row height in CSS px. @default 22 */
23
+ height?: number;
24
+ /** Accessible label for the port handle. Falls back to the port default. */
25
+ portLabel?: string;
26
+ /** Class applied to the row wrapper. */
27
+ className?: string;
28
+ /** Inline style applied to the row wrapper. */
29
+ style?: React.CSSProperties;
30
+ /** Class applied to the label span. */
31
+ labelClassName?: string;
32
+ /** Inline style applied to the label span. */
33
+ labelStyle?: React.CSSProperties;
34
+ }
35
+ /**
36
+ * `<NodeGraph.Pin>` — the one-liner for the common "handle + label" row.
37
+ * Renders a `<NodeGraph.PinRow>` containing a `<NodeGraph.Port>` and a
38
+ * label, ordered so the handle always sits flush against the node edge
39
+ * (port → label on the left/top, label → port on the right). Reach for
40
+ * `<NodeGraph.PinRow>` + `<NodeGraph.Port>` directly only when you need a
41
+ * layout this doesn't cover (multiple controls in a row, inline editors).
42
+ *
43
+ * @example
44
+ * ```tsx
45
+ * <NodeGraph.PinList>
46
+ * <NodeGraph.Pin id="exec" side="left" shape="triangle" color="#fff" />
47
+ * <NodeGraph.Pin id="value" side="right" dataType="float" color="#9ee65a" label="Value" />
48
+ * </NodeGraph.PinList>
49
+ * ```
50
+ */
51
+ declare function NodeGraphPin({ id, side, dataType, label, color, shape, filled, height, portLabel, className, style, labelClassName, labelStyle, }: NodeGraphPinProps): React.ReactElement;
52
+ declare namespace NodeGraphPin {
53
+ var displayName: string;
54
+ }
55
+
56
+ export { NodeGraphPin };
57
+ export type { NodeGraphPinProps };
@@ -0,0 +1,30 @@
1
+ import React from 'react';
2
+ import { NodeGraphPortSlotProps } from './NodeGraph.types.js';
3
+
4
+ /**
5
+ * `<NodeGraph.Port>` — compound slot that declares a connection endpoint
6
+ * for the current node. Render it anywhere inside `renderNode`; the
7
+ * library measures its DOM position, registers it as the anchor for any
8
+ * edge that references this port id, and wires pointer events so the
9
+ * user can drag from it to start a connection.
10
+ *
11
+ * The slot renders a single `<span>` with `display: inline-flex` — drop
12
+ * it inline next to a label and it will sit beside the text. The wrapper
13
+ * carries the default UE-style circle / exec-triangle visual; pass
14
+ * `children` to replace the chrome entirely (state for theming is
15
+ * exposed via `data-port-*` attributes).
16
+ *
17
+ * @example
18
+ * ```tsx
19
+ * <NodeGraph.Port id="in" side="left" dataType="exec" />
20
+ * ```
21
+ *
22
+ * Wrapped in `React.memo` — ports re-mount on every consumer `renderNode`
23
+ * call by default, so memoization only helps consumers who memoize their
24
+ * own node body. When they do, ports skip re-renders on unrelated store
25
+ * updates entirely.
26
+ */
27
+ declare function NodeGraphPortImpl({ id, side, dataType, shape, color, filled, children, label, className, style, }: NodeGraphPortSlotProps): React.ReactElement;
28
+ declare const NodeGraphPort: React.MemoExoticComponent<typeof NodeGraphPortImpl>;
29
+
30
+ export { NodeGraphPort };
@@ -0,0 +1,46 @@
1
+ import React from 'react';
2
+ import { NodeGraphPortShape } from './NodeGraph.types.js';
3
+
4
+ interface NodeGraphPortVisualProps {
5
+ /**
6
+ * Handle shape. @default 'circle'
7
+ */
8
+ shape?: NodeGraphPortShape;
9
+ /**
10
+ * Stroke / fill colour. Defaults to `currentColor` so the parent
11
+ * `<NodeGraph.Port>` can route its colour prop and interaction-state
12
+ * colours (source / candidate / invalid) into the shape via the CSS
13
+ * `color` cascade. Pass an explicit colour when using the visual
14
+ * standalone (outside a port slot).
15
+ */
16
+ color?: string;
17
+ /**
18
+ * Filled (`true`) paints the interior; hollow (`false`) draws an outline
19
+ * only — the standard "wired vs unwired pin" convention.
20
+ * @default false
21
+ */
22
+ filled?: boolean;
23
+ /**
24
+ * Box size in CSS pixels. @default 14
25
+ */
26
+ size?: number;
27
+ className?: string;
28
+ style?: React.CSSProperties;
29
+ }
30
+ /**
31
+ * Presentational handle shape for a node-graph port. Rendered by
32
+ * `<NodeGraph.Port>` when no `children` are supplied, and exported so
33
+ * consumers can reuse the exact handle look inside fully custom port
34
+ * visuals (e.g. a coloured ring beside a typed label).
35
+ *
36
+ * The shape paints with `currentColor` unless `color` is set, which lets
37
+ * the port slot drive the colour from its `color` prop and override it on
38
+ * the connection-drag states without this component knowing about them.
39
+ */
40
+ declare function NodeGraphPortVisual({ shape, color, filled, size, className, style, }: NodeGraphPortVisualProps): React.ReactElement;
41
+ declare namespace NodeGraphPortVisual {
42
+ var displayName: string;
43
+ }
44
+
45
+ export { NodeGraphPortVisual };
46
+ export type { NodeGraphPortVisualProps };
@@ -0,0 +1,16 @@
1
+ import { NodeGraphMinimapSlotProps, NodeGraphSlotMarker, NodeGraphBackgroundSlotProps, NodeGraphToolbarSlotProps, NodeGraphSpawnPaletteSlotProps } from './NodeGraph.types.js';
2
+
3
+ declare const NodeGraphMinimap: ((props: NodeGraphMinimapSlotProps) => null) & NodeGraphSlotMarker & {
4
+ displayName: string;
5
+ };
6
+ declare const NodeGraphBackground: ((props: NodeGraphBackgroundSlotProps) => null) & NodeGraphSlotMarker & {
7
+ displayName: string;
8
+ };
9
+ declare const NodeGraphToolbar: ((props: NodeGraphToolbarSlotProps) => null) & NodeGraphSlotMarker & {
10
+ displayName: string;
11
+ };
12
+ declare const NodeGraphSpawnPalette: ((props: NodeGraphSpawnPaletteSlotProps) => null) & NodeGraphSlotMarker & {
13
+ displayName: string;
14
+ };
15
+
16
+ export { NodeGraphBackground, NodeGraphMinimap, NodeGraphSpawnPalette, NodeGraphToolbar };
@@ -0,0 +1,256 @@
1
+ import { NodeGraphNode, NodeGraphEdge, NodeGraphGroup, NodeGraphPortRef, NodeGraphPortSide, NodeGraphSelection } from './NodeGraph.types.js';
2
+ import { Point2D } from '../../primitives/canvas/canvas.types.js';
3
+
4
+ /** Snapshot of the data slice — the canonical graph contents. */
5
+ interface NodeGraphDataState {
6
+ nodes: ReadonlyArray<NodeGraphNode>;
7
+ edges: ReadonlyArray<NodeGraphEdge>;
8
+ groups: ReadonlyArray<NodeGraphGroup>;
9
+ defaultNodeSize: {
10
+ width: number;
11
+ height: number;
12
+ };
13
+ }
14
+ /**
15
+ * A port's measured position registered by a `<NodeGraph.Port>` slot.
16
+ * Coordinates are in **node-local pixels** (relative to the node wrapper's
17
+ * top-left). Because the wrapper is positioned in world space but rendered
18
+ * in CSS pixels at zoom = 1 (zoom is applied by the parent `<ViewportWorld>`
19
+ * transform), these pixels are equivalent to node-local world units.
20
+ */
21
+ interface NodeGraphPortPosition {
22
+ x: number;
23
+ y: number;
24
+ side: NodeGraphPortSide;
25
+ dataType?: string;
26
+ }
27
+ /** Measured DOM size of a node wrapper, in node-local world units. */
28
+ interface NodeGraphMeasuredSize {
29
+ width: number;
30
+ height: number;
31
+ }
32
+ /**
33
+ * Snapshot of the interaction slice — the active gesture (if any) and its
34
+ * scratch data. Designed so the edge/preview drawing layer can read everything
35
+ * it needs in one slice subscription.
36
+ */
37
+ /** Eight points along a rectangle that can be grabbed to resize a group. */
38
+ type NodeGraphGroupResizeHandle = 'nw' | 'n' | 'ne' | 'e' | 'se' | 's' | 'sw' | 'w';
39
+ type NodeGraphInteractionState = {
40
+ kind: 'idle';
41
+ } | {
42
+ kind: 'drag-nodes';
43
+ /**
44
+ * Ids of nodes being dragged together. Set (not Array) so per-node
45
+ * subscribers can do O(1) membership checks in the hot per-frame
46
+ * selector path — a Cartesian `Array.includes` was a measurable cost
47
+ * at high node counts when the user dragged the whole selection.
48
+ */
49
+ nodeIds: ReadonlySet<string>;
50
+ /** Pointer-down world position (start of the drag). */
51
+ startWorld: Point2D;
52
+ /** Cumulative drag delta in world units (snapped if grid active). */
53
+ delta: Point2D;
54
+ } | {
55
+ kind: 'drag-groups';
56
+ /** Ids of groups being dragged together. See {@link nodeIds} for why Set. */
57
+ groupIds: ReadonlySet<string>;
58
+ /**
59
+ * Ids of nodes that were fully contained inside one of the dragged
60
+ * groups at gesture start. They ride along with the group(s) and
61
+ * receive the same drag delta — see `rectContains` in `nodeGraphMath`.
62
+ */
63
+ containedNodeIds: ReadonlySet<string>;
64
+ /** Pointer-down world position. */
65
+ startWorld: Point2D;
66
+ /** Cumulative drag delta (snapped if grid active). */
67
+ delta: Point2D;
68
+ /**
69
+ * True when the projected positions of the dragged groups would
70
+ * overlap any other (non-dragged) group. The HTML overlay paints a
71
+ * rejection state and the pointerup handler refuses to commit when
72
+ * this is set.
73
+ */
74
+ blocked: boolean;
75
+ } | {
76
+ kind: 'resize-group';
77
+ groupId: string;
78
+ handle: NodeGraphGroupResizeHandle;
79
+ /** Original bounds at the start of the resize. */
80
+ startBounds: {
81
+ x: number;
82
+ y: number;
83
+ width: number;
84
+ height: number;
85
+ };
86
+ /** Cumulative pointer delta in world units (snapped). */
87
+ delta: Point2D;
88
+ /** Set when the resized bounds would overlap another group. */
89
+ blocked: boolean;
90
+ } | {
91
+ kind: 'connect';
92
+ /**
93
+ * Fixed endpoint the preview draws from. For a new connection this is
94
+ * the port the drag started on; for a reconnect it's the *other* end
95
+ * of the edge being edited (the one staying put).
96
+ */
97
+ source: NodeGraphPortRef;
98
+ /** Current pointer position in world coordinates. */
99
+ currentWorld: Point2D;
100
+ /** Hovered candidate target port, or null when none. */
101
+ candidate: NodeGraphPortRef | null;
102
+ /** Whether the candidate is currently rejected by `isValidConnection`. */
103
+ invalid: boolean;
104
+ /**
105
+ * Set while re-dragging an existing edge's endpoint. The edge is hidden
106
+ * from the edge layer for the duration so only the preview shows, and
107
+ * the drop either moves the endpoint, deletes the edge (detach), or —
108
+ * on a click with no drag — selects it.
109
+ */
110
+ reconnectEdgeId?: string;
111
+ /** Which end of `reconnectEdgeId` is being dragged. */
112
+ reconnectEnd?: 'source' | 'target';
113
+ } | {
114
+ kind: 'marquee';
115
+ /** Marquee start in world coordinates. */
116
+ startWorld: Point2D;
117
+ /** Current pointer position in world coordinates. */
118
+ currentWorld: Point2D;
119
+ /** Whether the additive modifier was held at gesture start. */
120
+ additive: boolean;
121
+ };
122
+ /** Snapshot of the hover slice. */
123
+ interface NodeGraphHoverState {
124
+ hoveredNodeId: string | null;
125
+ hoveredEdgeId: string | null;
126
+ hoveredPort: NodeGraphPortRef | null;
127
+ }
128
+ /**
129
+ * Hot-path runtime state for `<NodeGraph>` — graph data, selection,
130
+ * interaction, hover. Each slice carries its own subscribe/get pair so
131
+ * subscribers re-render only on relevant changes (e.g. the edge canvas
132
+ * subscribes to data + interaction, individual node bodies subscribe only
133
+ * to selection + drag delta for their own id).
134
+ *
135
+ * Mirrors `ViewportStore` / `MinimapStore` in structure.
136
+ */
137
+ declare class NodeGraphStore {
138
+ private data;
139
+ private selection;
140
+ private interaction;
141
+ private hover;
142
+ private nodeIndex;
143
+ private connectedPorts;
144
+ private portPositions;
145
+ private measuredSizes;
146
+ private dataListeners;
147
+ private connectedPortsListeners;
148
+ private selectionListeners;
149
+ private interactionListeners;
150
+ private nodeInteractionListeners;
151
+ private hoverListeners;
152
+ private portPositionListeners;
153
+ private measuredSizeListeners;
154
+ private portPositionsVersion;
155
+ private measuredSizesVersion;
156
+ private spawnRequestListeners;
157
+ getData: () => NodeGraphDataState;
158
+ getSelection: () => NodeGraphSelection;
159
+ getInteraction: () => NodeGraphInteractionState;
160
+ getHover: () => NodeGraphHoverState;
161
+ /**
162
+ * The set of `"${node}\0${port}"` keys that are referenced by at least
163
+ * one edge endpoint. Reference is stable until the membership actually
164
+ * changes, so it can back a `useSyncExternalStore` snapshot directly.
165
+ */
166
+ getConnectedPorts: () => ReadonlySet<string>;
167
+ /** True when the given port is referenced by at least one edge endpoint. */
168
+ isPortConnected: (nodeId: string, portId: string) => boolean;
169
+ /**
170
+ * O(1) node lookup by id, backed by an internal Map rebuilt on each
171
+ * `setData`. Use this from hot paths instead of `data.nodes.find(...)`.
172
+ */
173
+ getNodeById: (id: string) => NodeGraphNode | undefined;
174
+ /**
175
+ * Read the registered position of a single port. Returns `null` when the
176
+ * port hasn't yet been measured (e.g. on first paint before
177
+ * `useLayoutEffect` has run, or after the slot unmounted).
178
+ */
179
+ getPortPosition: (nodeId: string, portId: string) => NodeGraphPortPosition | null;
180
+ /** Read the measured DOM size of a node wrapper. */
181
+ getMeasuredSize: (nodeId: string) => NodeGraphMeasuredSize | null;
182
+ /**
183
+ * Monotonic snapshot of the port-positions channel — pass to
184
+ * `useSyncExternalStore` alongside `subscribePortPositions` so React
185
+ * actually re-renders consumers on every real change. Incremented
186
+ * whenever a port position is added, updated, removed, or GC'd by
187
+ * `setData`. Skipped on no-op writes.
188
+ */
189
+ getPortPositionsVersion: () => number;
190
+ /**
191
+ * Monotonic snapshot of the measured-sizes channel — same role as
192
+ * `getPortPositionsVersion`, for `subscribeMeasuredSizes`.
193
+ */
194
+ getMeasuredSizesVersion: () => number;
195
+ subscribeData: (cb: () => void) => (() => void);
196
+ /**
197
+ * Subscribe to the connected-ports channel — fires only when the set of
198
+ * edge-referenced ports actually changes membership (not on every node
199
+ * move). Backs the auto-`connected` state on `<NodeGraph.Port>`.
200
+ */
201
+ subscribeConnectedPorts: (cb: () => void) => (() => void);
202
+ subscribeSelection: (cb: () => void) => (() => void);
203
+ subscribeInteraction: (cb: () => void) => (() => void);
204
+ /**
205
+ * Subscribe to interaction changes that affect a specific node id. The
206
+ * callback fires only when the node enters or leaves the active drag set
207
+ * (drag-nodes `nodeIds`, drag-groups `containedNodeIds`) — every other
208
+ * tick where the drag set is unchanged for this id is filtered out at the
209
+ * store layer instead of waking the subscriber for a no-op compare.
210
+ *
211
+ * Use this from per-node React subscribers; the global
212
+ * {@link subscribeInteraction} channel stays in place for canvas layers
213
+ * and other consumers that care about every interaction change.
214
+ */
215
+ subscribeNodeInteraction: (nodeId: string, cb: () => void) => (() => void);
216
+ subscribeHover: (cb: () => void) => (() => void);
217
+ subscribePortPositions: (cb: () => void) => (() => void);
218
+ subscribeMeasuredSizes: (cb: () => void) => (() => void);
219
+ subscribeSpawnRequest: (cb: (info: {
220
+ worldPoint: Point2D;
221
+ screenPoint: Point2D;
222
+ }) => void) => (() => void);
223
+ requestSpawn(info: {
224
+ worldPoint: Point2D;
225
+ screenPoint: Point2D;
226
+ }): void;
227
+ setData(next: NodeGraphDataState): void;
228
+ setSelection(next: NodeGraphSelection): void;
229
+ setInteraction(next: NodeGraphInteractionState): void;
230
+ setHover(next: NodeGraphHoverState): void;
231
+ /**
232
+ * Register a port's measured position. Called by `<NodeGraph.Port>` from
233
+ * a `useLayoutEffect` + `ResizeObserver`. No-ops when the incoming
234
+ * position is identical to the cached one — protects edge layer from
235
+ * redraw storms when nodes resize without porting any pin movement.
236
+ */
237
+ setPortPosition(nodeId: string, portId: string, next: NodeGraphPortPosition): void;
238
+ /** Remove a port registration. Called by `<NodeGraph.Port>` cleanup. */
239
+ removePortPosition(nodeId: string, portId: string): void;
240
+ /**
241
+ * Register / refresh the measured DOM size of a node wrapper. No-ops on
242
+ * identical width+height.
243
+ */
244
+ setMeasuredSize(nodeId: string, next: NodeGraphMeasuredSize): void;
245
+ /** Clear the measured size of a node (called on unmount). */
246
+ clearMeasuredSize(nodeId: string): void;
247
+ /** True when a node id is currently selected. */
248
+ isNodeSelected(id: string): boolean;
249
+ /** True when an edge id is currently selected. */
250
+ isEdgeSelected(id: string): boolean;
251
+ /** True when a group id is currently selected. */
252
+ isGroupSelected(id: string): boolean;
253
+ }
254
+
255
+ export { NodeGraphStore };
256
+ export type { NodeGraphDataState, NodeGraphGroupResizeHandle, NodeGraphHoverState, NodeGraphInteractionState, NodeGraphMeasuredSize, NodeGraphPortPosition };
@@ -0,0 +1,54 @@
1
+ import React from 'react';
2
+
3
+ /**
4
+ * Visual separator for grouping toolbar buttons. Just a 1 px line; pass
5
+ * `orientation="vertical"` (default) inside a horizontal toolbar.
6
+ */
7
+ interface NodeGraphToolbarSeparatorProps {
8
+ orientation?: 'horizontal' | 'vertical';
9
+ className?: string;
10
+ }
11
+ declare function NodeGraphToolbarSeparator({ orientation, className, }: NodeGraphToolbarSeparatorProps): React.ReactElement;
12
+ interface CommonButtonProps {
13
+ /** Override the label text. */
14
+ label?: React.ReactNode;
15
+ /** Override the icon (replaces the default). */
16
+ icon?: React.ReactNode;
17
+ /** Pass-through to the underlying `<Button>`. */
18
+ size?: 'sm' | 'md' | 'lg';
19
+ /** Pass-through variant. */
20
+ variant?: 'default' | 'ghost' | 'filled';
21
+ /** Extra class on the button. */
22
+ className?: string;
23
+ /** Inline style override. */
24
+ style?: React.CSSProperties;
25
+ /** Override the title / tooltip. */
26
+ title?: string;
27
+ }
28
+ /** Fit all nodes inside the viewport. Calls the same code path as `ref.fitToContent`. */
29
+ interface NodeGraphFitContentButtonProps extends CommonButtonProps {
30
+ /** World-unit padding around the fitted bounds. @default 32 */
31
+ padding?: number;
32
+ }
33
+ declare function NodeGraphFitContentButton({ padding, label, icon, size, variant, className, style, title, }: NodeGraphFitContentButtonProps): React.ReactElement;
34
+ /**
35
+ * Fit the currently-selected nodes inside the viewport. Disabled when
36
+ * the selection contains no nodes — reads the live selection slice so
37
+ * the button's disabled state updates without consumer plumbing.
38
+ */
39
+ interface NodeGraphFitSelectionButtonProps extends CommonButtonProps {
40
+ padding?: number;
41
+ }
42
+ declare function NodeGraphFitSelectionButton({ padding, label, icon, size, variant, className, style, title, }: NodeGraphFitSelectionButtonProps): React.ReactElement;
43
+ /** Zoom in by a fixed factor (default 1.25×). */
44
+ interface NodeGraphZoomButtonProps extends CommonButtonProps {
45
+ /** Multiplier applied to the current zoom. @default 1.25 */
46
+ factor?: number;
47
+ }
48
+ declare function NodeGraphZoomInButton({ factor, label, icon, size, variant, className, style, title, }: NodeGraphZoomButtonProps): React.ReactElement;
49
+ declare function NodeGraphZoomOutButton({ factor, label, icon, size, variant, className, style, title, }: NodeGraphZoomButtonProps): React.ReactElement;
50
+ /** Reset zoom to 1× centred on the world origin. */
51
+ declare function NodeGraphResetZoomButton({ label, icon, size, variant, className, style, title, }: CommonButtonProps): React.ReactElement;
52
+
53
+ export { NodeGraphFitContentButton, NodeGraphFitSelectionButton, NodeGraphResetZoomButton, NodeGraphToolbarSeparator, NodeGraphZoomInButton, NodeGraphZoomOutButton };
54
+ export type { NodeGraphFitContentButtonProps, NodeGraphFitSelectionButtonProps, NodeGraphToolbarSeparatorProps, NodeGraphZoomButtonProps };
@@ -0,0 +1,43 @@
1
+ import { NodeGraphPortRef, NodeGraphConnectionValidationInfo } from './NodeGraph.types.js';
2
+
3
+ interface TypeMatchValidatorOptions {
4
+ /**
5
+ * Allowed `info.sideCombo` values (e.g. `'right->left'`). Defaults to both
6
+ * horizontal directions so the user can start the drag from either end of
7
+ * a wire. Pass `['right->left']` to force output→input only.
8
+ * @default ['right->left', 'left->right']
9
+ */
10
+ directions?: ReadonlyArray<string>;
11
+ /**
12
+ * `dataType` token that connects to anything. @default 'any'
13
+ */
14
+ anyType?: string;
15
+ /**
16
+ * Allow connecting two ports on the same node. @default false
17
+ */
18
+ allowSameNode?: boolean;
19
+ /**
20
+ * Custom type comparison, replacing the default (equality + `anyType` +
21
+ * "untyped ports accept anything"). Receives the resolved `dataType`s,
22
+ * either of which may be `undefined` when the port declared none.
23
+ */
24
+ match?: (sourceDataType: string | undefined, targetDataType: string | undefined) => boolean;
25
+ }
26
+ /**
27
+ * Build an `isValidConnection` validator for the common "connect ports of
28
+ * matching `dataType`, in an allowed direction" rule — the logic most node
29
+ * editors hand-write. Drop the result straight onto `<NodeGraph>`:
30
+ *
31
+ * ```tsx
32
+ * const isValidConnection = useMemo(() => createTypeMatchValidator(), []);
33
+ * <NodeGraph isValidConnection={isValidConnection} />
34
+ * ```
35
+ *
36
+ * The default `match` accepts a connection when either port is untyped, the
37
+ * two `dataType`s are equal, or one side is the `anyType` token. Override
38
+ * `match` for richer rules (subtype graphs, numeric coercion, etc.).
39
+ */
40
+ declare function createTypeMatchValidator(options?: TypeMatchValidatorOptions): (source: NodeGraphPortRef, target: NodeGraphPortRef, info: NodeGraphConnectionValidationInfo) => boolean;
41
+
42
+ export { createTypeMatchValidator };
43
+ export type { TypeMatchValidatorOptions };
@@ -0,0 +1,39 @@
1
+ import { NodeGraphNode, NodeGraphEdge, NodeGraphPortRef } from './NodeGraph.types.js';
2
+ import { Point2D } from '../../primitives/canvas/canvas.types.js';
3
+
4
+ /**
5
+ * Ids of every edge with an endpoint on the given port — i.e. all wires
6
+ * connected to one socket. Use it to "detach all" or select a socket's wires
7
+ * without maintaining a parallel index.
8
+ */
9
+ declare function edgesConnectedToPort(edges: ReadonlyArray<NodeGraphEdge>, ref: NodeGraphPortRef): string[];
10
+ interface DuplicateNodesOptions {
11
+ /**
12
+ * World-unit offset applied to each clone so it doesn't sit exactly on
13
+ * top of its source. @default { x: 32, y: 32 }
14
+ */
15
+ offset?: Point2D;
16
+ /**
17
+ * Build the id for a clone from its source id. Defaults to a unique id
18
+ * derived from `${sourceId}-copy`. Override to keep your own id scheme.
19
+ */
20
+ idFactory?: (sourceId: string) => string;
21
+ }
22
+ /**
23
+ * Clone the nodes whose ids are listed in `ids`, offsetting each copy.
24
+ * Pure — returns only the new node objects (not merged into the source
25
+ * list), so callers stay in control of ordering and selection:
26
+ *
27
+ * ```ts
28
+ * const copies = duplicateNodes(nodes, selection.nodes);
29
+ * setNodes(prev => [...prev, ...copies]);
30
+ * setSelection({ nodes: copies.map(n => n.id), edges: [], groups: [] });
31
+ * ```
32
+ *
33
+ * Edges between duplicated nodes are intentionally not copied — wire that
34
+ * in at the call site if your editor needs it.
35
+ */
36
+ declare function duplicateNodes(nodes: ReadonlyArray<NodeGraphNode>, ids: ReadonlyArray<string>, options?: DuplicateNodesOptions): NodeGraphNode[];
37
+
38
+ export { duplicateNodes, edgesConnectedToPort };
39
+ export type { DuplicateNodesOptions };
@@ -0,0 +1,16 @@
1
+ import { NodeGraphPortRef } from './NodeGraph.types.js';
2
+
3
+ /**
4
+ * Generate a unique-enough id for a freshly-spawned node from a template.
5
+ * Format: `${templateId}-${timestamp36}-${counter36}-${random36}`.
6
+ */
7
+ declare function generateNodeId(templateId: string): string;
8
+ /**
9
+ * Generate a unique edge id from its endpoints. Includes source/target
10
+ * port refs in the id so it's somewhat readable in devtools, plus the
11
+ * standard timestamp + counter + random tail to guarantee uniqueness
12
+ * across rapid back-to-back connections.
13
+ */
14
+ declare function generateEdgeId(source: NodeGraphPortRef, target: NodeGraphPortRef): string;
15
+
16
+ export { generateEdgeId, generateNodeId };