@stephen-netu/design-system 0.1.0 → 0.2.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 (913) hide show
  1. package/LICENSE +25 -0
  2. package/README.md +53 -14
  3. package/{src → dist}/b0-app-shell/clarification-overlay/ClarificationOverlay.svelte +8 -8
  4. package/dist/b0-app-shell/clarification-overlay/ClarificationOverlay.svelte.d.ts +19 -0
  5. package/dist/b0-app-shell/clarification-overlay/ClarificationOverlay.svelte.d.ts.map +1 -0
  6. package/dist/b0-app-shell/clarification-overlay/index.d.ts +2 -0
  7. package/dist/b0-app-shell/clarification-overlay/index.d.ts.map +1 -0
  8. package/{src → dist}/b0-app-shell/command-bar/CommandBar.svelte +29 -29
  9. package/dist/b0-app-shell/command-bar/CommandBar.svelte.d.ts +35 -0
  10. package/dist/b0-app-shell/command-bar/CommandBar.svelte.d.ts.map +1 -0
  11. package/dist/b0-app-shell/index.d.ts +14 -0
  12. package/dist/b0-app-shell/index.d.ts.map +1 -0
  13. package/{src/b0-app-shell/index.ts → dist/b0-app-shell/index.js} +0 -1
  14. package/dist/base.css +138 -0
  15. package/{src → dist}/d0-data-viz/BarChart.svelte +2 -2
  16. package/dist/d0-data-viz/BarChart.svelte.d.ts +13 -0
  17. package/dist/d0-data-viz/BarChart.svelte.d.ts.map +1 -0
  18. package/{src → dist}/d0-data-viz/CheckpointBar.svelte +12 -12
  19. package/dist/d0-data-viz/CheckpointBar.svelte.d.ts +15 -0
  20. package/dist/d0-data-viz/CheckpointBar.svelte.d.ts.map +1 -0
  21. package/{src → dist}/d0-data-viz/CheckpointPill.svelte +14 -12
  22. package/dist/d0-data-viz/CheckpointPill.svelte.d.ts +14 -0
  23. package/dist/d0-data-viz/CheckpointPill.svelte.d.ts.map +1 -0
  24. package/dist/d0-data-viz/ConnectionHealth.svelte +366 -0
  25. package/dist/d0-data-viz/ConnectionHealth.svelte.d.ts +40 -0
  26. package/dist/d0-data-viz/ConnectionHealth.svelte.d.ts.map +1 -0
  27. package/{src → dist}/d0-data-viz/MetricCard.svelte +5 -5
  28. package/dist/d0-data-viz/MetricCard.svelte.d.ts +5 -0
  29. package/dist/d0-data-viz/MetricCard.svelte.d.ts.map +1 -0
  30. package/{src → dist}/d0-data-viz/SparkLine.svelte +1 -1
  31. package/dist/d0-data-viz/SparkLine.svelte.d.ts +12 -0
  32. package/dist/d0-data-viz/SparkLine.svelte.d.ts.map +1 -0
  33. package/{src → dist}/d0-data-viz/StorageMap.svelte +6 -6
  34. package/dist/d0-data-viz/StorageMap.svelte.d.ts +12 -0
  35. package/dist/d0-data-viz/StorageMap.svelte.d.ts.map +1 -0
  36. package/{src → dist}/d0-data-viz/Timeline.svelte +2 -2
  37. package/dist/d0-data-viz/Timeline.svelte.d.ts +10 -0
  38. package/dist/d0-data-viz/Timeline.svelte.d.ts.map +1 -0
  39. package/dist/d0-data-viz/WorldLineTimeline.svelte +329 -0
  40. package/dist/d0-data-viz/WorldLineTimeline.svelte.d.ts +11 -0
  41. package/dist/d0-data-viz/WorldLineTimeline.svelte.d.ts.map +1 -0
  42. package/dist/d0-data-viz/checkpoint-types.d.ts +104 -0
  43. package/dist/d0-data-viz/checkpoint-types.d.ts.map +1 -0
  44. package/dist/d0-data-viz/checkpoint-types.js +49 -0
  45. package/dist/d0-data-viz/d0-tokens.css +32 -0
  46. package/dist/d0-data-viz/index.d.ts +17 -0
  47. package/dist/d0-data-viz/index.d.ts.map +1 -0
  48. package/dist/d0-data-viz/index.js +18 -0
  49. package/dist/d0-data-viz/storage-map-types.d.ts +50 -0
  50. package/dist/d0-data-viz/storage-map-types.d.ts.map +1 -0
  51. package/dist/d0-data-viz/storage-map-types.js +81 -0
  52. package/dist/d0-data-viz/theme-integration.d.ts +106 -0
  53. package/dist/d0-data-viz/theme-integration.d.ts.map +1 -0
  54. package/dist/d0-data-viz/theme-integration.js +116 -0
  55. package/dist/d0-data-viz/types.d.ts +38 -0
  56. package/dist/d0-data-viz/types.d.ts.map +1 -0
  57. package/dist/d0-data-viz/types.js +3 -0
  58. package/dist/d0-data-viz/world-line-types.d.ts +27 -0
  59. package/dist/d0-data-viz/world-line-types.d.ts.map +1 -0
  60. package/dist/d0-data-viz/world-line-types.js +2 -0
  61. package/{src → dist}/demos/BspSizingInfographic.svelte +7 -7
  62. package/dist/demos/BspSizingInfographic.svelte.d.ts +19 -0
  63. package/dist/demos/BspSizingInfographic.svelte.d.ts.map +1 -0
  64. package/{src → dist}/demos/BspZoneDemo.svelte +4 -4
  65. package/dist/demos/BspZoneDemo.svelte.d.ts +4 -0
  66. package/dist/demos/BspZoneDemo.svelte.d.ts.map +1 -0
  67. package/dist/demos/ControlRoomDemo.svelte.d.ts +8 -0
  68. package/dist/demos/ControlRoomDemo.svelte.d.ts.map +1 -0
  69. package/{src → dist}/demos/NodepadBlocksShowcase.svelte +7 -7
  70. package/dist/demos/NodepadBlocksShowcase.svelte.d.ts +4 -0
  71. package/dist/demos/NodepadBlocksShowcase.svelte.d.ts.map +1 -0
  72. package/dist/demos/index.d.ts +5 -0
  73. package/dist/demos/index.d.ts.map +1 -0
  74. package/{src/demos/index.ts → dist/demos/index.js} +0 -1
  75. package/{src → dist}/editor/CodeEditor.svelte +15 -3
  76. package/dist/editor/CodeEditor.svelte.d.ts +16 -0
  77. package/dist/editor/CodeEditor.svelte.d.ts.map +1 -0
  78. package/{src → dist}/editor/FindReplaceDialog.svelte +15 -15
  79. package/dist/editor/FindReplaceDialog.svelte.d.ts +11 -0
  80. package/dist/editor/FindReplaceDialog.svelte.d.ts.map +1 -0
  81. package/{src → dist}/editor/MarkdownEditor.svelte +59 -44
  82. package/dist/editor/MarkdownEditor.svelte.d.ts +16 -0
  83. package/dist/editor/MarkdownEditor.svelte.d.ts.map +1 -0
  84. package/dist/editor/components/CorrectionTooltip.svelte +167 -0
  85. package/dist/editor/components/CorrectionTooltip.svelte.d.ts +33 -0
  86. package/dist/editor/components/CorrectionTooltip.svelte.d.ts.map +1 -0
  87. package/dist/editor/extensions/autocomplete.d.ts +10 -0
  88. package/dist/editor/extensions/autocomplete.d.ts.map +1 -0
  89. package/dist/editor/extensions/autocomplete.js +9 -0
  90. package/dist/editor/extensions/autoformat.d.ts +2 -0
  91. package/dist/editor/extensions/autoformat.d.ts.map +1 -0
  92. package/dist/editor/extensions/autoformat.js +69 -0
  93. package/dist/editor/extensions/autoformat.test.js +344 -0
  94. package/dist/editor/extensions/expansion.d.ts +5 -0
  95. package/dist/editor/extensions/expansion.d.ts.map +1 -0
  96. package/dist/editor/extensions/expansion.js +58 -0
  97. package/dist/editor/extensions/expansion.test.js +174 -0
  98. package/dist/editor/extensions/spellcheck.d.ts +7 -0
  99. package/dist/editor/extensions/spellcheck.d.ts.map +1 -0
  100. package/dist/editor/extensions/spellcheck.js +44 -0
  101. package/dist/editor/extensions/types.d.ts +3 -0
  102. package/dist/editor/extensions/types.d.ts.map +1 -0
  103. package/dist/editor/extensions/types.js +1 -0
  104. package/dist/editor/index.d.ts +9 -0
  105. package/dist/editor/index.d.ts.map +1 -0
  106. package/dist/editor/index.js +6 -0
  107. package/{src → dist}/entity-graph-view/WorldView.svelte +3 -3
  108. package/dist/entity-graph-view/WorldView.svelte.d.ts +11 -0
  109. package/dist/entity-graph-view/WorldView.svelte.d.ts.map +1 -0
  110. package/dist/entity-graph-view/index.d.ts +3 -0
  111. package/dist/entity-graph-view/index.d.ts.map +1 -0
  112. package/{src/entity-graph-view/index.ts → dist/entity-graph-view/index.js} +0 -1
  113. package/dist/entity-graph-view/types.d.ts +161 -0
  114. package/dist/entity-graph-view/types.d.ts.map +1 -0
  115. package/dist/entity-graph-view/types.js +213 -0
  116. package/dist/epistemic/index.d.ts +3 -0
  117. package/dist/epistemic/index.d.ts.map +1 -0
  118. package/dist/epistemic/types.d.ts +132 -0
  119. package/dist/epistemic/types.d.ts.map +1 -0
  120. package/dist/epistemic/types.js +18 -0
  121. package/dist/epistemic/utils.d.ts +7 -0
  122. package/dist/epistemic/utils.d.ts.map +1 -0
  123. package/dist/epistemic/utils.js +29 -0
  124. package/{src → dist}/f0-forms/checkbox/Checkbox.svelte +3 -3
  125. package/dist/f0-forms/checkbox/Checkbox.svelte.d.ts +14 -0
  126. package/dist/f0-forms/checkbox/Checkbox.svelte.d.ts.map +1 -0
  127. package/dist/f0-forms/checkbox/Checkbox.test.js +41 -0
  128. package/{src → dist}/f0-forms/field/FormField.svelte +1 -1
  129. package/dist/f0-forms/field/FormField.svelte.d.ts +13 -0
  130. package/dist/f0-forms/field/FormField.svelte.d.ts.map +1 -0
  131. package/dist/f0-forms/field/FormField.test.js +103 -0
  132. package/dist/f0-forms/index.d.ts +17 -0
  133. package/dist/f0-forms/index.d.ts.map +1 -0
  134. package/{src/f0-forms/index.ts → dist/f0-forms/index.js} +0 -2
  135. package/{src → dist}/f0-forms/radio/RadioGroup.svelte +3 -3
  136. package/dist/f0-forms/radio/RadioGroup.svelte.d.ts +18 -0
  137. package/dist/f0-forms/radio/RadioGroup.svelte.d.ts.map +1 -0
  138. package/dist/f0-forms/radio/RadioGroup.test.js +54 -0
  139. package/{src → dist}/f0-forms/search/SearchBar.svelte +1 -1
  140. package/dist/f0-forms/search/SearchBar.svelte.d.ts +12 -0
  141. package/dist/f0-forms/search/SearchBar.svelte.d.ts.map +1 -0
  142. package/dist/f0-forms/search/SearchBar.test.js +46 -0
  143. package/{src → dist}/f0-forms/select/Select.svelte +5 -5
  144. package/dist/f0-forms/select/Select.svelte.d.ts +21 -0
  145. package/dist/f0-forms/select/Select.svelte.d.ts.map +1 -0
  146. package/dist/f0-forms/select/Select.test.js +51 -0
  147. package/{src → dist}/f0-forms/textarea/TextArea.svelte +2 -2
  148. package/dist/f0-forms/textarea/TextArea.svelte.d.ts +18 -0
  149. package/dist/f0-forms/textarea/TextArea.svelte.d.ts.map +1 -0
  150. package/{src → dist}/f0-forms/toggle/FormToggle.svelte +3 -3
  151. package/dist/f0-forms/toggle/FormToggle.svelte.d.ts +14 -0
  152. package/dist/f0-forms/toggle/FormToggle.svelte.d.ts.map +1 -0
  153. package/dist/f0-forms/toggle/FormToggle.test.js +73 -0
  154. package/dist/f0-forms/validation/validate.d.ts +12 -0
  155. package/dist/f0-forms/validation/validate.d.ts.map +1 -0
  156. package/dist/f0-forms/validation/validate.js +44 -0
  157. package/dist/f0-forms/validation/validate.test.js +87 -0
  158. package/{src → dist}/fabric/ai/ChatPanel.svelte +49 -49
  159. package/dist/fabric/ai/ChatPanel.svelte.d.ts +39 -0
  160. package/dist/fabric/ai/ChatPanel.svelte.d.ts.map +1 -0
  161. package/dist/fabric/ai/ResearchPanel.svelte +503 -0
  162. package/dist/fabric/ai/ResearchPanel.svelte.d.ts +44 -0
  163. package/dist/fabric/ai/ResearchPanel.svelte.d.ts.map +1 -0
  164. package/dist/fabric/ai/index.d.ts +12 -0
  165. package/dist/fabric/ai/index.d.ts.map +1 -0
  166. package/{src/fabric/ai/index.ts → dist/fabric/ai/index.js} +3 -4
  167. package/dist/fabric/data/index.d.ts +15 -0
  168. package/dist/fabric/data/index.d.ts.map +1 -0
  169. package/dist/fabric/data/index.js +6 -0
  170. package/{src → dist}/fabric/feedback/StatusBar.svelte +93 -69
  171. package/dist/fabric/feedback/StatusBar.svelte.d.ts +24 -0
  172. package/dist/fabric/feedback/StatusBar.svelte.d.ts.map +1 -0
  173. package/dist/fabric/feedback/StatusBar.test.js +52 -0
  174. package/dist/fabric/feedback/ToastContainer.svelte +153 -0
  175. package/dist/fabric/feedback/ToastContainer.svelte.d.ts +16 -0
  176. package/dist/fabric/feedback/ToastContainer.svelte.d.ts.map +1 -0
  177. package/dist/fabric/feedback/ToastContainer.test.js +85 -0
  178. package/{src/fabric/feedback/index.ts → dist/fabric/feedback/index.d.ts} +5 -4
  179. package/dist/fabric/feedback/index.d.ts.map +1 -0
  180. package/dist/fabric/feedback/index.js +10 -0
  181. package/{src/fabric/index.ts → dist/fabric/index.d.ts} +10 -19
  182. package/dist/fabric/index.d.ts.map +1 -0
  183. package/dist/fabric/index.js +23 -0
  184. package/dist/fabric/input/CommandBar.svelte +96 -0
  185. package/dist/fabric/input/CommandBar.svelte.d.ts +23 -0
  186. package/dist/fabric/input/CommandBar.svelte.d.ts.map +1 -0
  187. package/dist/fabric/input/CommandBar.test.js +46 -0
  188. package/{src → dist}/fabric/input/KeyboardShortcuts.svelte +17 -18
  189. package/dist/fabric/input/KeyboardShortcuts.svelte.d.ts +22 -0
  190. package/dist/fabric/input/KeyboardShortcuts.svelte.d.ts.map +1 -0
  191. package/dist/fabric/input/KeyboardShortcuts.test.js +89 -0
  192. package/{src/fabric/input/index.ts → dist/fabric/input/index.d.ts} +4 -3
  193. package/dist/fabric/input/index.d.ts.map +1 -0
  194. package/dist/fabric/input/index.js +10 -0
  195. package/dist/fabric/layout/CollapsiblePanel.svelte +378 -0
  196. package/dist/fabric/layout/CollapsiblePanel.svelte.d.ts +74 -0
  197. package/dist/fabric/layout/CollapsiblePanel.svelte.d.ts.map +1 -0
  198. package/dist/fabric/layout/GlassBox.svelte +206 -0
  199. package/dist/fabric/layout/GlassBox.svelte.d.ts +23 -0
  200. package/dist/fabric/layout/GlassBox.svelte.d.ts.map +1 -0
  201. package/{src → dist}/fabric/layout/KanbanBoard.svelte +15 -15
  202. package/dist/fabric/layout/KanbanBoard.svelte.d.ts +30 -0
  203. package/dist/fabric/layout/KanbanBoard.svelte.d.ts.map +1 -0
  204. package/dist/fabric/layout/KanbanBoard.test.js +25 -0
  205. package/{src → dist}/fabric/layout/KanbanCard.svelte +30 -30
  206. package/dist/fabric/layout/KanbanCard.svelte.d.ts +23 -0
  207. package/dist/fabric/layout/KanbanCard.svelte.d.ts.map +1 -0
  208. package/{src → dist}/fabric/layout/KanbanColumn.svelte +30 -30
  209. package/dist/fabric/layout/KanbanColumn.svelte.d.ts +26 -0
  210. package/dist/fabric/layout/KanbanColumn.svelte.d.ts.map +1 -0
  211. package/dist/fabric/layout/index.d.ts +20 -0
  212. package/dist/fabric/layout/index.d.ts.map +1 -0
  213. package/{src/fabric/layout/index.ts → dist/fabric/layout/index.js} +4 -6
  214. package/{src → dist}/fabric/navigation/ActivityRail.svelte +44 -31
  215. package/dist/fabric/navigation/ActivityRail.svelte.d.ts +34 -0
  216. package/dist/fabric/navigation/ActivityRail.svelte.d.ts.map +1 -0
  217. package/dist/fabric/navigation/ActivityRail.test.js +82 -0
  218. package/{src/fabric/navigation/index.ts → dist/fabric/navigation/index.d.ts} +3 -3
  219. package/dist/fabric/navigation/index.d.ts.map +1 -0
  220. package/dist/fabric/navigation/index.js +9 -0
  221. package/dist/g0-generative/index.d.ts +18 -0
  222. package/dist/g0-generative/index.d.ts.map +1 -0
  223. package/dist/g0-generative/index.js +15 -0
  224. package/dist/g0-generative/library/ComponentLibrary.d.ts +36 -0
  225. package/dist/g0-generative/library/ComponentLibrary.d.ts.map +1 -0
  226. package/dist/g0-generative/library/ComponentLibrary.js +172 -0
  227. package/dist/g0-generative/library/types.d.ts +30 -0
  228. package/dist/g0-generative/library/types.d.ts.map +1 -0
  229. package/dist/g0-generative/library/types.js +6 -0
  230. package/dist/g0-generative/parser/parseOpenUILang.d.ts +17 -0
  231. package/dist/g0-generative/parser/parseOpenUILang.d.ts.map +1 -0
  232. package/dist/g0-generative/parser/parseOpenUILang.js +319 -0
  233. package/dist/g0-generative/parser/types.d.ts +41 -0
  234. package/dist/g0-generative/parser/types.d.ts.map +1 -0
  235. package/dist/g0-generative/parser/types.js +12 -0
  236. package/dist/g0-generative/prompt-gen/generateSystemPrompt.d.ts +18 -0
  237. package/dist/g0-generative/prompt-gen/generateSystemPrompt.d.ts.map +1 -0
  238. package/dist/g0-generative/prompt-gen/generateSystemPrompt.js +28 -0
  239. package/dist/g0-generative/renderer/OpenUIRenderer.svelte +188 -0
  240. package/dist/g0-generative/renderer/OpenUIRenderer.svelte.d.ts +20 -0
  241. package/dist/g0-generative/renderer/OpenUIRenderer.svelte.d.ts.map +1 -0
  242. package/dist/g0-generative/streaming/StreamingAdapter.d.ts +36 -0
  243. package/dist/g0-generative/streaming/StreamingAdapter.d.ts.map +1 -0
  244. package/dist/g0-generative/streaming/StreamingAdapter.js +110 -0
  245. package/{src → dist}/g0-geo/SovereignMap.svelte +2 -2
  246. package/dist/g0-geo/SovereignMap.svelte.d.ts +22 -0
  247. package/dist/g0-geo/SovereignMap.svelte.d.ts.map +1 -0
  248. package/dist/g0-geo/index.d.ts +2 -0
  249. package/dist/g0-geo/index.d.ts.map +1 -0
  250. package/dist/index.d.ts +20 -0
  251. package/dist/index.d.ts.map +1 -0
  252. package/dist/index.js +37 -0
  253. package/dist/l0-layout/SectionSplitter.svelte +83 -0
  254. package/dist/l0-layout/SectionSplitter.svelte.d.ts +8 -0
  255. package/dist/l0-layout/SectionSplitter.svelte.d.ts.map +1 -0
  256. package/dist/l0-layout/SnapPanel.svelte +286 -0
  257. package/dist/l0-layout/SnapPanel.svelte.d.ts +38 -0
  258. package/dist/l0-layout/SnapPanel.svelte.d.ts.map +1 -0
  259. package/dist/l0-layout/ValidityScoreDisplay.svelte +155 -0
  260. package/dist/l0-layout/ValidityScoreDisplay.svelte.d.ts +13 -0
  261. package/dist/l0-layout/ValidityScoreDisplay.svelte.d.ts.map +1 -0
  262. package/dist/l0-layout/VirtualGrid.svelte +225 -0
  263. package/dist/l0-layout/VirtualGrid.svelte.d.ts +47 -0
  264. package/dist/l0-layout/VirtualGrid.svelte.d.ts.map +1 -0
  265. package/{src → dist}/l0-layout/block-writer/BlockConnectionLines.svelte +1 -1
  266. package/dist/l0-layout/block-writer/BlockConnectionLines.svelte.d.ts +11 -0
  267. package/dist/l0-layout/block-writer/BlockConnectionLines.svelte.d.ts.map +1 -0
  268. package/{src → dist}/l0-layout/block-writer/BlockContent.svelte +6 -6
  269. package/dist/l0-layout/block-writer/BlockContent.svelte.d.ts +11 -0
  270. package/dist/l0-layout/block-writer/BlockContent.svelte.d.ts.map +1 -0
  271. package/{src → dist}/l0-layout/block-writer/BlockHeader.svelte +1 -1
  272. package/dist/l0-layout/block-writer/BlockHeader.svelte.d.ts +17 -0
  273. package/dist/l0-layout/block-writer/BlockHeader.svelte.d.ts.map +1 -0
  274. package/{src → dist}/l0-layout/block-writer/BlockItem.svelte +7 -7
  275. package/dist/l0-layout/block-writer/BlockItem.svelte.d.ts +22 -0
  276. package/dist/l0-layout/block-writer/BlockItem.svelte.d.ts.map +1 -0
  277. package/dist/l0-layout/block-writer/BlockWriter.svelte.d.ts +23 -0
  278. package/dist/l0-layout/block-writer/BlockWriter.svelte.d.ts.map +1 -0
  279. package/dist/l0-layout/block-writer/block-writer-types.d.ts +48 -0
  280. package/dist/l0-layout/block-writer/block-writer-types.d.ts.map +1 -0
  281. package/dist/l0-layout/block-writer/block-writer-types.js +13 -0
  282. package/dist/l0-layout/block-writer/index.d.ts +9 -0
  283. package/dist/l0-layout/block-writer/index.d.ts.map +1 -0
  284. package/{src/l0-layout/block-writer/index.ts → dist/l0-layout/block-writer/index.js} +0 -13
  285. package/dist/l0-layout/block-writer/markdown.d.ts +16 -0
  286. package/dist/l0-layout/block-writer/markdown.d.ts.map +1 -0
  287. package/dist/l0-layout/block-writer/markdown.js +96 -0
  288. package/dist/l0-layout/card/CompactCard.svelte +114 -0
  289. package/dist/l0-layout/card/CompactCard.svelte.d.ts +11 -0
  290. package/dist/l0-layout/card/CompactCard.svelte.d.ts.map +1 -0
  291. package/dist/l0-layout/chat-view/ChatViewLayout.svelte.d.ts +11 -0
  292. package/dist/l0-layout/chat-view/ChatViewLayout.svelte.d.ts.map +1 -0
  293. package/{src → dist}/l0-layout/epistemic/AllayDetailPanel.svelte +3 -5
  294. package/dist/l0-layout/epistemic/AllayDetailPanel.svelte.d.ts +9 -0
  295. package/dist/l0-layout/epistemic/AllayDetailPanel.svelte.d.ts.map +1 -0
  296. package/{src → dist}/l0-layout/epistemic/AssayDetailPanel.svelte +10 -9
  297. package/dist/l0-layout/epistemic/AssayDetailPanel.svelte.d.ts +11 -0
  298. package/dist/l0-layout/epistemic/AssayDetailPanel.svelte.d.ts.map +1 -0
  299. package/{src → dist}/l0-layout/epistemic/AvenueTrace.svelte +1 -1
  300. package/dist/l0-layout/epistemic/AvenueTrace.svelte.d.ts +10 -0
  301. package/dist/l0-layout/epistemic/AvenueTrace.svelte.d.ts.map +1 -0
  302. package/{src → dist}/l0-layout/epistemic/KnowledgeDetailPanel.svelte +4 -7
  303. package/dist/l0-layout/epistemic/KnowledgeDetailPanel.svelte.d.ts +10 -0
  304. package/dist/l0-layout/epistemic/KnowledgeDetailPanel.svelte.d.ts.map +1 -0
  305. package/{src → dist}/l0-layout/epistemic/ParadigmLens.svelte +1 -1
  306. package/dist/l0-layout/epistemic/ParadigmLens.svelte.d.ts +10 -0
  307. package/dist/l0-layout/epistemic/ParadigmLens.svelte.d.ts.map +1 -0
  308. package/{src → dist}/l0-layout/epistemic/ProvenanceChain.svelte +2 -3
  309. package/dist/l0-layout/epistemic/ProvenanceChain.svelte.d.ts +10 -0
  310. package/dist/l0-layout/epistemic/ProvenanceChain.svelte.d.ts.map +1 -0
  311. package/{src → dist}/l0-layout/epistemic/TrustView.svelte +4 -8
  312. package/dist/l0-layout/epistemic/TrustView.svelte.d.ts +10 -0
  313. package/dist/l0-layout/epistemic/TrustView.svelte.d.ts.map +1 -0
  314. package/dist/l0-layout/epistemic/index.d.ts +8 -0
  315. package/dist/l0-layout/epistemic/index.d.ts.map +1 -0
  316. package/dist/l0-layout/grant/GrantCard.svelte +179 -0
  317. package/dist/l0-layout/grant/GrantCard.svelte.d.ts +18 -0
  318. package/dist/l0-layout/grant/GrantCard.svelte.d.ts.map +1 -0
  319. package/dist/l0-layout/grant/GrantDraftEditor.svelte +413 -0
  320. package/dist/l0-layout/grant/GrantDraftEditor.svelte.d.ts +28 -0
  321. package/dist/l0-layout/grant/GrantDraftEditor.svelte.d.ts.map +1 -0
  322. package/dist/l0-layout/grant/index.d.ts +3 -0
  323. package/dist/l0-layout/grant/index.d.ts.map +1 -0
  324. package/dist/l0-layout/grant/index.js +2 -0
  325. package/dist/l0-layout/grove/AccordCard.svelte.d.ts +12 -0
  326. package/dist/l0-layout/grove/AccordCard.svelte.d.ts.map +1 -0
  327. package/dist/l0-layout/grove/GroveCard.svelte.d.ts +16 -0
  328. package/dist/l0-layout/grove/GroveCard.svelte.d.ts.map +1 -0
  329. package/dist/l0-layout/grove/MemberBadge.svelte.d.ts +12 -0
  330. package/dist/l0-layout/grove/MemberBadge.svelte.d.ts.map +1 -0
  331. package/dist/l0-layout/grove/MemberList.svelte.d.ts +10 -0
  332. package/dist/l0-layout/grove/MemberList.svelte.d.ts.map +1 -0
  333. package/dist/l0-layout/grove/grove-types.d.ts +24 -0
  334. package/dist/l0-layout/grove/grove-types.d.ts.map +1 -0
  335. package/dist/l0-layout/grove/grove-types.js +2 -0
  336. package/dist/l0-layout/grove/index.d.ts +6 -0
  337. package/dist/l0-layout/grove/index.d.ts.map +1 -0
  338. package/{src/l0-layout/grove/index.ts → dist/l0-layout/grove/index.js} +0 -9
  339. package/dist/l0-layout/index.d.ts +23 -0
  340. package/dist/l0-layout/index.d.ts.map +1 -0
  341. package/{src/l0-layout/index.ts → dist/l0-layout/index.js} +11 -30
  342. package/{src → dist}/l0-layout/kanban/KanbanBoard.svelte +2 -2
  343. package/dist/l0-layout/kanban/KanbanBoard.svelte.d.ts +9 -0
  344. package/dist/l0-layout/kanban/KanbanBoard.svelte.d.ts.map +1 -0
  345. package/dist/l0-layout/kanban/KanbanCard.svelte.d.ts +28 -0
  346. package/dist/l0-layout/kanban/KanbanCard.svelte.d.ts.map +1 -0
  347. package/{src → dist}/l0-layout/kanban/KanbanColumn.svelte +1 -1
  348. package/dist/l0-layout/kanban/KanbanColumn.svelte.d.ts +18 -0
  349. package/dist/l0-layout/kanban/KanbanColumn.svelte.d.ts.map +1 -0
  350. package/dist/l0-layout/kanban/KanbanViewLayout.svelte.d.ts +10 -0
  351. package/dist/l0-layout/kanban/KanbanViewLayout.svelte.d.ts.map +1 -0
  352. package/dist/l0-layout/workspace/WorkspaceLayout.svelte.d.ts +12 -0
  353. package/dist/l0-layout/workspace/WorkspaceLayout.svelte.d.ts.map +1 -0
  354. package/dist/map/index.d.ts +3 -0
  355. package/dist/map/index.d.ts.map +1 -0
  356. package/dist/map/index.js +4 -0
  357. package/dist/n0-node-graph/GraphEditor.svelte.d.ts +16 -0
  358. package/dist/n0-node-graph/GraphEditor.svelte.d.ts.map +1 -0
  359. package/dist/n0-node-graph/GraphHistory.svelte.d.ts +22 -0
  360. package/dist/n0-node-graph/GraphHistory.svelte.d.ts.map +1 -0
  361. package/{src → dist}/n0-node-graph/Node.svelte +3 -3
  362. package/dist/n0-node-graph/Node.svelte.d.ts +20 -0
  363. package/dist/n0-node-graph/Node.svelte.d.ts.map +1 -0
  364. package/dist/n0-node-graph/NodeCanvas.svelte.d.ts +12 -0
  365. package/dist/n0-node-graph/NodeCanvas.svelte.d.ts.map +1 -0
  366. package/dist/n0-node-graph/NodeEdge.svelte.d.ts +20 -0
  367. package/dist/n0-node-graph/NodeEdge.svelte.d.ts.map +1 -0
  368. package/{src → dist}/n0-node-graph/NodePalette.svelte +5 -5
  369. package/dist/n0-node-graph/NodePalette.svelte.d.ts +9 -0
  370. package/dist/n0-node-graph/NodePalette.svelte.d.ts.map +1 -0
  371. package/dist/n0-node-graph/NodePort.svelte.d.ts +18 -0
  372. package/dist/n0-node-graph/NodePort.svelte.d.ts.map +1 -0
  373. package/{src/n0-node-graph/index.ts → dist/n0-node-graph/index.d.ts} +2 -24
  374. package/dist/n0-node-graph/index.d.ts.map +1 -0
  375. package/dist/n0-node-graph/index.js +11 -0
  376. package/dist/n0-node-graph/n0-tokens.css +29 -0
  377. package/dist/n0-node-graph/node-port-types.d.ts +18 -0
  378. package/dist/n0-node-graph/node-port-types.d.ts.map +1 -0
  379. package/dist/n0-node-graph/node-port-types.js +3 -0
  380. package/dist/n0-node-graph/types.d.ts +61 -0
  381. package/dist/n0-node-graph/types.d.ts.map +1 -0
  382. package/dist/n0-node-graph/types.js +3 -0
  383. package/dist/n0-node-graph/validate.d.ts +11 -0
  384. package/dist/n0-node-graph/validate.d.ts.map +1 -0
  385. package/dist/n0-node-graph/validate.js +270 -0
  386. package/dist/n0-node-graph/validate.test.js +646 -0
  387. package/{src → dist}/n1-flow-canvas/FlowCanvas.svelte +4 -12
  388. package/dist/n1-flow-canvas/FlowCanvas.svelte.d.ts +11 -0
  389. package/dist/n1-flow-canvas/FlowCanvas.svelte.d.ts.map +1 -0
  390. package/dist/n1-flow-canvas/graph-state.svelte.d.ts +18 -0
  391. package/dist/n1-flow-canvas/graph-state.svelte.d.ts.map +1 -0
  392. package/dist/n1-flow-canvas/graph-state.svelte.js +81 -0
  393. package/dist/n1-flow-canvas/index.d.ts +6 -0
  394. package/dist/n1-flow-canvas/index.d.ts.map +1 -0
  395. package/{src/n1-flow-canvas/index.ts → dist/n1-flow-canvas/index.js} +0 -15
  396. package/dist/n1-flow-canvas/layout.d.ts +4 -0
  397. package/dist/n1-flow-canvas/layout.d.ts.map +1 -0
  398. package/dist/n1-flow-canvas/layout.js +95 -0
  399. package/dist/n1-flow-canvas/layout.worker.d.ts +2 -0
  400. package/dist/n1-flow-canvas/layout.worker.d.ts.map +1 -0
  401. package/dist/n1-flow-canvas/layout.worker.js +106 -0
  402. package/dist/n1-flow-canvas/types.d.ts +65 -0
  403. package/dist/n1-flow-canvas/types.d.ts.map +1 -0
  404. package/dist/n1-flow-canvas/types.js +6 -0
  405. package/dist/n1-flow-canvas/utils.d.ts +50 -0
  406. package/dist/n1-flow-canvas/utils.d.ts.map +1 -0
  407. package/dist/n1-flow-canvas/utils.js +113 -0
  408. package/dist/n2-manifold-disk/ManifoldDisk.svelte.d.ts +21 -0
  409. package/dist/n2-manifold-disk/ManifoldDisk.svelte.d.ts.map +1 -0
  410. package/dist/n2-manifold-disk/index.d.ts +4 -0
  411. package/dist/n2-manifold-disk/index.d.ts.map +1 -0
  412. package/{src/n2-manifold-disk/index.ts → dist/n2-manifold-disk/index.js} +0 -2
  413. package/dist/n2-manifold-disk/poincare.d.ts +67 -0
  414. package/dist/n2-manifold-disk/poincare.d.ts.map +1 -0
  415. package/dist/n2-manifold-disk/poincare.js +134 -0
  416. package/{src → dist}/n3-force-graph/ForceGraph.svelte +19 -18
  417. package/dist/n3-force-graph/ForceGraph.svelte.d.ts +36 -0
  418. package/dist/n3-force-graph/ForceGraph.svelte.d.ts.map +1 -0
  419. package/dist/n3-force-graph/GraphTooltip.svelte.d.ts +19 -0
  420. package/dist/n3-force-graph/GraphTooltip.svelte.d.ts.map +1 -0
  421. package/dist/n3-force-graph/animated-edge.d.ts +18 -0
  422. package/dist/n3-force-graph/animated-edge.d.ts.map +1 -0
  423. package/dist/n3-force-graph/animated-edge.js +87 -0
  424. package/dist/n3-force-graph/health-node.d.ts +20 -0
  425. package/dist/n3-force-graph/health-node.d.ts.map +1 -0
  426. package/dist/n3-force-graph/health-node.js +110 -0
  427. package/dist/n3-force-graph/index.d.ts +7 -0
  428. package/dist/n3-force-graph/index.d.ts.map +1 -0
  429. package/{src/n3-force-graph/index.ts → dist/n3-force-graph/index.js} +1 -19
  430. package/dist/n3-force-graph/types.d.ts +60 -0
  431. package/dist/n3-force-graph/types.d.ts.map +1 -0
  432. package/dist/n3-force-graph/types.js +22 -0
  433. package/{src → dist}/n4-adaptive-manifold/AdaptiveManifold.svelte +1 -1
  434. package/dist/n4-adaptive-manifold/AdaptiveManifold.svelte.d.ts +24 -0
  435. package/dist/n4-adaptive-manifold/AdaptiveManifold.svelte.d.ts.map +1 -0
  436. package/{src → dist}/n4-adaptive-manifold/DetailCard.svelte +9 -9
  437. package/dist/n4-adaptive-manifold/DetailCard.svelte.d.ts +10 -0
  438. package/dist/n4-adaptive-manifold/DetailCard.svelte.d.ts.map +1 -0
  439. package/{src → dist}/n4-adaptive-manifold/SuggestionIndicator.svelte +8 -8
  440. package/dist/n4-adaptive-manifold/SuggestionIndicator.svelte.d.ts +11 -0
  441. package/dist/n4-adaptive-manifold/SuggestionIndicator.svelte.d.ts.map +1 -0
  442. package/dist/n4-adaptive-manifold/classifier.d.ts +6 -0
  443. package/dist/n4-adaptive-manifold/classifier.d.ts.map +1 -0
  444. package/dist/n4-adaptive-manifold/classifier.js +123 -0
  445. package/dist/n4-adaptive-manifold/index.d.ts +12 -0
  446. package/dist/n4-adaptive-manifold/index.d.ts.map +1 -0
  447. package/{src/n4-adaptive-manifold/index.ts → dist/n4-adaptive-manifold/index.js} +0 -33
  448. package/dist/n4-adaptive-manifold/n4-tokens.css +155 -0
  449. package/dist/n4-adaptive-manifold/orchestrator.d.ts +61 -0
  450. package/dist/n4-adaptive-manifold/orchestrator.d.ts.map +1 -0
  451. package/dist/n4-adaptive-manifold/orchestrator.js +231 -0
  452. package/dist/n4-adaptive-manifold/phase-theme.d.ts +9 -0
  453. package/dist/n4-adaptive-manifold/phase-theme.d.ts.map +1 -0
  454. package/dist/n4-adaptive-manifold/phase-theme.js +82 -0
  455. package/dist/n4-adaptive-manifold/pinnacle-events.d.ts +34 -0
  456. package/dist/n4-adaptive-manifold/pinnacle-events.d.ts.map +1 -0
  457. package/dist/n4-adaptive-manifold/pinnacle-events.js +108 -0
  458. package/dist/n4-adaptive-manifold/providers/gravitational-provider.d.ts +16 -0
  459. package/dist/n4-adaptive-manifold/providers/gravitational-provider.d.ts.map +1 -0
  460. package/dist/n4-adaptive-manifold/providers/gravitational-provider.js +162 -0
  461. package/dist/n4-adaptive-manifold/providers/manifold-provider.d.ts +7 -0
  462. package/dist/n4-adaptive-manifold/providers/manifold-provider.d.ts.map +1 -0
  463. package/dist/n4-adaptive-manifold/providers/manifold-provider.js +222 -0
  464. package/dist/n4-adaptive-manifold/transition.d.ts +19 -0
  465. package/dist/n4-adaptive-manifold/transition.d.ts.map +1 -0
  466. package/dist/n4-adaptive-manifold/transition.js +71 -0
  467. package/dist/n4-adaptive-manifold/types.d.ts +233 -0
  468. package/dist/n4-adaptive-manifold/types.d.ts.map +1 -0
  469. package/dist/n4-adaptive-manifold/types.js +17 -0
  470. package/dist/p0-primitives/ThemeProvider.svelte +183 -0
  471. package/dist/p0-primitives/ThemeProvider.svelte.d.ts +69 -0
  472. package/dist/p0-primitives/ThemeProvider.svelte.d.ts.map +1 -0
  473. package/dist/p0-primitives/canvas-theme.d.ts +17 -0
  474. package/dist/p0-primitives/canvas-theme.d.ts.map +1 -0
  475. package/dist/p0-primitives/canvas-theme.js +36 -0
  476. package/dist/p0-primitives/index.d.ts +8 -0
  477. package/dist/p0-primitives/index.d.ts.map +1 -0
  478. package/{src/p0-primitives/index.ts → dist/p0-primitives/index.js} +4 -1
  479. package/dist/p0-primitives/theme.d.ts +38 -0
  480. package/dist/p0-primitives/theme.d.ts.map +1 -0
  481. package/dist/p0-primitives/theme.js +150 -0
  482. package/dist/p0-primitives/tokens/contrast-audit.d.ts +42 -0
  483. package/dist/p0-primitives/tokens/contrast-audit.d.ts.map +1 -0
  484. package/dist/p0-primitives/tokens/contrast-audit.js +331 -0
  485. package/dist/p0-primitives/tokens/contrast-audit.test.js +84 -0
  486. package/dist/p0-primitives/tokens/control-room.css +309 -0
  487. package/dist/p0-primitives/tokens/index.d.ts +2 -0
  488. package/dist/p0-primitives/tokens/index.d.ts.map +1 -0
  489. package/dist/p0-primitives/tokens/index.js +2 -0
  490. package/dist/p0-primitives/tokens/tokens.css +247 -0
  491. package/dist/p0-primitives/tokens/validity-tokens.css +83 -0
  492. package/dist/p0-primitives/types/geometry.d.ts +18 -0
  493. package/dist/p0-primitives/types/geometry.d.ts.map +1 -0
  494. package/dist/p0-primitives/types/geometry.js +4 -0
  495. package/dist/p0-primitives/types/index.d.ts +113 -0
  496. package/dist/p0-primitives/types/index.d.ts.map +1 -0
  497. package/dist/p0-primitives/types/index.js +5 -0
  498. package/dist/p0-primitives/types/plugin-types.d.ts +46 -0
  499. package/dist/p0-primitives/types/plugin-types.d.ts.map +1 -0
  500. package/dist/p0-primitives/types/plugin-types.js +7 -0
  501. package/dist/p0-primitives/utils/index.d.ts +13 -0
  502. package/dist/p0-primitives/utils/index.d.ts.map +1 -0
  503. package/dist/p0-primitives/utils/index.js +30 -0
  504. package/dist/platform/hud-protocol.d.ts +14 -0
  505. package/dist/platform/hud-protocol.d.ts.map +1 -0
  506. package/dist/platform/hud-protocol.js +6 -0
  507. package/dist/platform/index.d.ts +2 -0
  508. package/dist/platform/index.d.ts.map +1 -0
  509. package/{src/platform/index.ts → dist/platform/index.js} +1 -2
  510. package/dist/s0-lifecycle/CanvasRenderContext.d.ts +20 -0
  511. package/dist/s0-lifecycle/CanvasRenderContext.d.ts.map +1 -0
  512. package/dist/s0-lifecycle/CanvasRenderContext.js +90 -0
  513. package/dist/s0-lifecycle/ConstraintContext.d.ts +27 -0
  514. package/dist/s0-lifecycle/ConstraintContext.d.ts.map +1 -0
  515. package/dist/s0-lifecycle/ConstraintContext.js +3 -0
  516. package/dist/s0-lifecycle/InteractionContext.d.ts +38 -0
  517. package/dist/s0-lifecycle/InteractionContext.d.ts.map +1 -0
  518. package/dist/s0-lifecycle/InteractionContext.js +3 -0
  519. package/dist/s0-lifecycle/LayoutContext.d.ts +19 -0
  520. package/dist/s0-lifecycle/LayoutContext.d.ts.map +1 -0
  521. package/dist/s0-lifecycle/LayoutContext.js +3 -0
  522. package/dist/s0-lifecycle/Lifecycle.d.ts +60 -0
  523. package/dist/s0-lifecycle/Lifecycle.d.ts.map +1 -0
  524. package/dist/s0-lifecycle/Lifecycle.js +38 -0
  525. package/dist/s0-lifecycle/RenderContext.d.ts +48 -0
  526. package/dist/s0-lifecycle/RenderContext.d.ts.map +1 -0
  527. package/dist/s0-lifecycle/RenderContext.js +3 -0
  528. package/dist/s0-lifecycle/Scene.d.ts +61 -0
  529. package/dist/s0-lifecycle/Scene.d.ts.map +1 -0
  530. package/dist/s0-lifecycle/Scene.js +58 -0
  531. package/dist/s0-lifecycle/index.d.ts +8 -0
  532. package/dist/s0-lifecycle/index.d.ts.map +1 -0
  533. package/dist/s0-lifecycle/index.js +19 -0
  534. package/dist/s0-state/SyncStatus.svelte +275 -0
  535. package/dist/s0-state/SyncStatus.svelte.d.ts +33 -0
  536. package/dist/s0-state/SyncStatus.svelte.d.ts.map +1 -0
  537. package/dist/s0-state/ThemeStore.svelte.d.ts +12 -0
  538. package/dist/s0-state/ThemeStore.svelte.d.ts.map +1 -0
  539. package/dist/s0-state/ThemeStore.svelte.js +61 -0
  540. package/dist/s0-state/ThemeStore.test.js +68 -0
  541. package/dist/s0-state/create-store.d.ts +23 -0
  542. package/dist/s0-state/create-store.d.ts.map +1 -0
  543. package/dist/s0-state/create-store.js +58 -0
  544. package/dist/s0-state/derived.d.ts +13 -0
  545. package/dist/s0-state/derived.d.ts.map +1 -0
  546. package/dist/s0-state/derived.js +25 -0
  547. package/dist/s0-state/index.d.ts +10 -0
  548. package/dist/s0-state/index.d.ts.map +1 -0
  549. package/dist/s0-state/index.js +7 -0
  550. package/dist/s0-state/modal-stack-store.svelte.d.ts +43 -0
  551. package/dist/s0-state/modal-stack-store.svelte.d.ts.map +1 -0
  552. package/dist/s0-state/modal-stack-store.svelte.js +63 -0
  553. package/dist/s0-state/virtual.d.ts +154 -0
  554. package/dist/s0-state/virtual.d.ts.map +1 -0
  555. package/dist/s0-state/virtual.js +207 -0
  556. package/{src → dist}/showcase/Showcase.svelte +1 -1
  557. package/dist/showcase/Showcase.svelte.d.ts +4 -0
  558. package/dist/showcase/Showcase.svelte.d.ts.map +1 -0
  559. package/dist/spatial/BspTilingCanvas.svelte +194 -0
  560. package/dist/spatial/BspTilingCanvas.svelte.d.ts +11 -0
  561. package/dist/spatial/BspTilingCanvas.svelte.d.ts.map +1 -0
  562. package/dist/spatial/BspTilingSimulation.svelte.d.ts +43 -0
  563. package/dist/spatial/BspTilingSimulation.svelte.d.ts.map +1 -0
  564. package/dist/spatial/BspTilingSimulation.svelte.js +183 -0
  565. package/dist/spatial/CameraController.svelte.d.ts +39 -0
  566. package/dist/spatial/CameraController.svelte.d.ts.map +1 -0
  567. package/dist/spatial/CameraController.svelte.js +174 -0
  568. package/dist/spatial/ForceCanvas.svelte +149 -0
  569. package/dist/spatial/ForceCanvas.svelte.d.ts +15 -0
  570. package/dist/spatial/ForceCanvas.svelte.d.ts.map +1 -0
  571. package/dist/spatial/ForceSimulation.svelte.d.ts +23 -0
  572. package/dist/spatial/ForceSimulation.svelte.d.ts.map +1 -0
  573. package/dist/spatial/ForceSimulation.svelte.js +131 -0
  574. package/{src → dist}/spatial/LodRenderer.svelte +1 -1
  575. package/dist/spatial/LodRenderer.svelte.d.ts +34 -0
  576. package/dist/spatial/LodRenderer.svelte.d.ts.map +1 -0
  577. package/dist/spatial/SnapZoomCamera.svelte +185 -0
  578. package/dist/spatial/SnapZoomCamera.svelte.d.ts +13 -0
  579. package/dist/spatial/SnapZoomCamera.svelte.d.ts.map +1 -0
  580. package/{src → dist}/spatial/ZoneTiler.svelte +24 -7
  581. package/dist/spatial/ZoneTiler.svelte.d.ts +26 -0
  582. package/dist/spatial/ZoneTiler.svelte.d.ts.map +1 -0
  583. package/dist/spatial/camera-types.d.ts +34 -0
  584. package/dist/spatial/camera-types.d.ts.map +1 -0
  585. package/dist/spatial/camera-types.js +10 -0
  586. package/dist/spatial/content-proportional-bsp.d.ts +46 -0
  587. package/dist/spatial/content-proportional-bsp.d.ts.map +1 -0
  588. package/dist/spatial/content-proportional-bsp.js +166 -0
  589. package/dist/spatial/force-canvas-types.d.ts +65 -0
  590. package/dist/spatial/force-canvas-types.d.ts.map +1 -0
  591. package/dist/spatial/force-canvas-types.js +32 -0
  592. package/dist/spatial/index.d.ts +9 -0
  593. package/dist/spatial/index.d.ts.map +1 -0
  594. package/{src/spatial/index.ts → dist/spatial/index.js} +4 -2
  595. package/dist/spatial/lod-types.d.ts +39 -0
  596. package/dist/spatial/lod-types.d.ts.map +1 -0
  597. package/dist/spatial/lod-types.js +34 -0
  598. package/dist/spatial/zone-tiler-types.d.ts +70 -0
  599. package/dist/spatial/zone-tiler-types.d.ts.map +1 -0
  600. package/dist/spatial/zone-tiler-types.js +92 -0
  601. package/dist/stores/vaultStore.svelte.d.ts +24 -0
  602. package/dist/stores/vaultStore.svelte.d.ts.map +1 -0
  603. package/dist/t0-transport/connection.d.ts +11 -0
  604. package/dist/t0-transport/connection.d.ts.map +1 -0
  605. package/dist/t0-transport/connection.js +22 -0
  606. package/dist/t0-transport/error.d.ts +13 -0
  607. package/dist/t0-transport/error.d.ts.map +1 -0
  608. package/dist/t0-transport/error.js +31 -0
  609. package/dist/t0-transport/events.d.ts +13 -0
  610. package/dist/t0-transport/events.d.ts.map +1 -0
  611. package/dist/t0-transport/events.js +37 -0
  612. package/dist/t0-transport/index.d.ts +6 -0
  613. package/dist/t0-transport/index.d.ts.map +1 -0
  614. package/dist/t0-transport/index.js +7 -0
  615. package/dist/t0-transport/invoke.d.ts +25 -0
  616. package/dist/t0-transport/invoke.d.ts.map +1 -0
  617. package/dist/t0-transport/invoke.js +47 -0
  618. package/dist/t0-transport/quality.d.ts +39 -0
  619. package/dist/t0-transport/quality.d.ts.map +1 -0
  620. package/dist/t0-transport/quality.js +238 -0
  621. package/dist/tauri/index.d.ts +3 -0
  622. package/dist/tauri/index.d.ts.map +1 -0
  623. package/{src/tauri/index.ts → dist/tauri/index.js} +2 -4
  624. package/dist/types/tauri.d.ts +18 -0
  625. package/dist/u0-primitives/AccordionSection.svelte +186 -0
  626. package/dist/u0-primitives/AccordionSection.svelte.d.ts +28 -0
  627. package/dist/u0-primitives/AccordionSection.svelte.d.ts.map +1 -0
  628. package/dist/u0-primitives/LockIndicator.svelte +244 -0
  629. package/dist/u0-primitives/LockIndicator.svelte.d.ts +31 -0
  630. package/dist/u0-primitives/LockIndicator.svelte.d.ts.map +1 -0
  631. package/dist/u0-primitives/VerticalToolbar.svelte +208 -0
  632. package/dist/u0-primitives/VerticalToolbar.svelte.d.ts +32 -0
  633. package/dist/u0-primitives/VerticalToolbar.svelte.d.ts.map +1 -0
  634. package/dist/u0-primitives/accordion/Accordion.svelte +185 -0
  635. package/dist/u0-primitives/accordion/Accordion.svelte.d.ts +34 -0
  636. package/dist/u0-primitives/accordion/Accordion.svelte.d.ts.map +1 -0
  637. package/dist/u0-primitives/accordion/Accordion.test.js +99 -0
  638. package/dist/u0-primitives/accordion/index.d.ts +3 -0
  639. package/dist/u0-primitives/accordion/index.d.ts.map +1 -0
  640. package/dist/u0-primitives/accordion/index.js +1 -0
  641. package/dist/u0-primitives/allay-gauge/AllayGauge.svelte +58 -0
  642. package/dist/u0-primitives/allay-gauge/AllayGauge.svelte.d.ts +10 -0
  643. package/dist/u0-primitives/allay-gauge/AllayGauge.svelte.d.ts.map +1 -0
  644. package/{src → dist}/u0-primitives/animated-icon/AnimatedIcon.svelte +7 -7
  645. package/dist/u0-primitives/animated-icon/AnimatedIcon.svelte.d.ts +22 -0
  646. package/dist/u0-primitives/animated-icon/AnimatedIcon.svelte.d.ts.map +1 -0
  647. package/dist/u0-primitives/animated-icon/README.md +70 -0
  648. package/dist/u0-primitives/animated-icon/index.d.ts +9 -0
  649. package/dist/u0-primitives/animated-icon/index.d.ts.map +1 -0
  650. package/dist/u0-primitives/animated-icon/index.js +9 -0
  651. package/{src → dist}/u0-primitives/avatar/Avatar.svelte +3 -3
  652. package/dist/u0-primitives/avatar/Avatar.svelte.d.ts +11 -0
  653. package/dist/u0-primitives/avatar/Avatar.svelte.d.ts.map +1 -0
  654. package/dist/u0-primitives/avatar/index.d.ts +3 -0
  655. package/dist/u0-primitives/avatar/index.d.ts.map +1 -0
  656. package/dist/u0-primitives/avatar/index.js +1 -0
  657. package/{src → dist}/u0-primitives/badge/Badge.svelte +11 -11
  658. package/dist/u0-primitives/badge/Badge.svelte.d.ts +12 -0
  659. package/dist/u0-primitives/badge/Badge.svelte.d.ts.map +1 -0
  660. package/dist/u0-primitives/badge/Badge.test.js +50 -0
  661. package/dist/u0-primitives/badge/ValidityBadge.svelte +153 -0
  662. package/dist/u0-primitives/badge/ValidityBadge.svelte.d.ts +13 -0
  663. package/dist/u0-primitives/badge/ValidityBadge.svelte.d.ts.map +1 -0
  664. package/dist/u0-primitives/badge/ValidityBadge.test.js +57 -0
  665. package/dist/u0-primitives/badge/index.d.ts +3 -0
  666. package/dist/u0-primitives/badge/index.d.ts.map +1 -0
  667. package/dist/u0-primitives/badge/index.js +1 -0
  668. package/dist/u0-primitives/badge/validity-utils.d.ts +8 -0
  669. package/dist/u0-primitives/badge/validity-utils.d.ts.map +1 -0
  670. package/dist/u0-primitives/badge/validity-utils.js +18 -0
  671. package/{src → dist}/u0-primitives/button/Button.svelte +42 -104
  672. package/dist/u0-primitives/button/Button.svelte.d.ts +18 -0
  673. package/dist/u0-primitives/button/Button.svelte.d.ts.map +1 -0
  674. package/dist/u0-primitives/button/Button.test.js +58 -0
  675. package/dist/u0-primitives/button/index.d.ts +3 -0
  676. package/dist/u0-primitives/button/index.d.ts.map +1 -0
  677. package/dist/u0-primitives/button/index.js +1 -0
  678. package/{src → dist}/u0-primitives/card/Card.svelte +71 -48
  679. package/dist/u0-primitives/card/Card.svelte.d.ts +18 -0
  680. package/dist/u0-primitives/card/Card.svelte.d.ts.map +1 -0
  681. package/dist/u0-primitives/card/index.d.ts +3 -0
  682. package/dist/u0-primitives/card/index.d.ts.map +1 -0
  683. package/dist/u0-primitives/card/index.js +1 -0
  684. package/dist/u0-primitives/command-palette/CommandPalette.svelte +542 -0
  685. package/dist/u0-primitives/command-palette/CommandPalette.svelte.d.ts +25 -0
  686. package/dist/u0-primitives/command-palette/CommandPalette.svelte.d.ts.map +1 -0
  687. package/dist/u0-primitives/command-palette/command-types.d.ts +109 -0
  688. package/dist/u0-primitives/command-palette/command-types.d.ts.map +1 -0
  689. package/dist/u0-primitives/command-palette/command-types.js +7 -0
  690. package/dist/u0-primitives/command-palette/commandStore.svelte.d.ts +100 -0
  691. package/dist/u0-primitives/command-palette/commandStore.svelte.d.ts.map +1 -0
  692. package/dist/u0-primitives/command-palette/commandStore.svelte.js +278 -0
  693. package/dist/u0-primitives/command-palette/index.d.ts +16 -0
  694. package/dist/u0-primitives/command-palette/index.d.ts.map +1 -0
  695. package/dist/u0-primitives/command-palette/index.js +14 -0
  696. package/{src → dist}/u0-primitives/dropdown/Dropdown.svelte +7 -4
  697. package/dist/u0-primitives/dropdown/Dropdown.svelte.d.ts +21 -0
  698. package/dist/u0-primitives/dropdown/Dropdown.svelte.d.ts.map +1 -0
  699. package/dist/u0-primitives/dropdown/Dropdown.test.js +108 -0
  700. package/dist/u0-primitives/dropdown/index.d.ts +3 -0
  701. package/dist/u0-primitives/dropdown/index.d.ts.map +1 -0
  702. package/dist/u0-primitives/dropdown/index.js +1 -0
  703. package/dist/u0-primitives/grant-badge/GrantStatusBadge.svelte +80 -0
  704. package/dist/u0-primitives/grant-badge/GrantStatusBadge.svelte.d.ts +9 -0
  705. package/dist/u0-primitives/grant-badge/GrantStatusBadge.svelte.d.ts.map +1 -0
  706. package/dist/u0-primitives/grant-badge/index.d.ts +2 -0
  707. package/dist/u0-primitives/grant-badge/index.d.ts.map +1 -0
  708. package/dist/u0-primitives/grant-badge/index.js +1 -0
  709. package/dist/u0-primitives/index.d.ts +27 -0
  710. package/dist/u0-primitives/index.d.ts.map +1 -0
  711. package/{src/u0-primitives/index.ts → dist/u0-primitives/index.js} +12 -22
  712. package/dist/u0-primitives/input/Input.svelte +410 -0
  713. package/dist/u0-primitives/input/Input.svelte.d.ts +32 -0
  714. package/dist/u0-primitives/input/Input.svelte.d.ts.map +1 -0
  715. package/dist/u0-primitives/input/Input.test.js +64 -0
  716. package/dist/u0-primitives/input/index.d.ts +3 -0
  717. package/dist/u0-primitives/input/index.d.ts.map +1 -0
  718. package/dist/u0-primitives/input/index.js +1 -0
  719. package/{src → dist}/u0-primitives/modal/Modal.svelte +1 -1
  720. package/dist/u0-primitives/modal/Modal.svelte.d.ts +31 -0
  721. package/dist/u0-primitives/modal/Modal.svelte.d.ts.map +1 -0
  722. package/dist/u0-primitives/modal/Modal.test.js +94 -0
  723. package/dist/u0-primitives/modal/index.d.ts +3 -0
  724. package/dist/u0-primitives/modal/index.d.ts.map +1 -0
  725. package/dist/u0-primitives/rsvp/RsvpReader.svelte +256 -0
  726. package/dist/u0-primitives/rsvp/RsvpReader.svelte.d.ts +13 -0
  727. package/dist/u0-primitives/rsvp/RsvpReader.svelte.d.ts.map +1 -0
  728. package/dist/u0-primitives/rsvp/rsvp-utils.d.ts +46 -0
  729. package/dist/u0-primitives/rsvp/rsvp-utils.d.ts.map +1 -0
  730. package/dist/u0-primitives/rsvp/rsvp-utils.js +92 -0
  731. package/{src → dist}/u0-primitives/spinner/Spinner.svelte +3 -3
  732. package/dist/u0-primitives/spinner/Spinner.svelte.d.ts +9 -0
  733. package/dist/u0-primitives/spinner/Spinner.svelte.d.ts.map +1 -0
  734. package/dist/u0-primitives/spinner/Spinner.test.js +58 -0
  735. package/dist/u0-primitives/spinner/index.d.ts +3 -0
  736. package/dist/u0-primitives/spinner/index.d.ts.map +1 -0
  737. package/dist/u0-primitives/spinner/index.js +1 -0
  738. package/dist/u0-primitives/steps/Steps.svelte +186 -0
  739. package/dist/u0-primitives/steps/Steps.svelte.d.ts +18 -0
  740. package/dist/u0-primitives/steps/Steps.svelte.d.ts.map +1 -0
  741. package/dist/u0-primitives/steps/index.d.ts +3 -0
  742. package/dist/u0-primitives/steps/index.d.ts.map +1 -0
  743. package/dist/u0-primitives/steps/index.js +1 -0
  744. package/{src → dist}/u0-primitives/tabs/Tabs.svelte +2 -2
  745. package/dist/u0-primitives/tabs/Tabs.svelte.d.ts +14 -0
  746. package/dist/u0-primitives/tabs/Tabs.svelte.d.ts.map +1 -0
  747. package/dist/u0-primitives/tabs/Tabs.test.js +81 -0
  748. package/dist/u0-primitives/tabs/index.d.ts +3 -0
  749. package/dist/u0-primitives/tabs/index.d.ts.map +1 -0
  750. package/dist/u0-primitives/tabs/index.js +1 -0
  751. package/dist/u0-primitives/tabs/tabs-types.d.ts +8 -0
  752. package/dist/u0-primitives/tabs/tabs-types.d.ts.map +1 -0
  753. package/dist/u0-primitives/tabs/tabs-types.js +3 -0
  754. package/{src → dist}/u0-primitives/toggle/Toggle.svelte +8 -10
  755. package/dist/u0-primitives/toggle/Toggle.svelte.d.ts +13 -0
  756. package/dist/u0-primitives/toggle/Toggle.svelte.d.ts.map +1 -0
  757. package/dist/u0-primitives/toggle/Toggle.test.js +46 -0
  758. package/dist/u0-primitives/toggle/index.d.ts +3 -0
  759. package/dist/u0-primitives/toggle/index.d.ts.map +1 -0
  760. package/dist/u0-primitives/toggle/index.js +1 -0
  761. package/{src → dist}/u0-primitives/tooltip/Tooltip.svelte +1 -1
  762. package/dist/u0-primitives/tooltip/Tooltip.svelte.d.ts +12 -0
  763. package/dist/u0-primitives/tooltip/Tooltip.svelte.d.ts.map +1 -0
  764. package/dist/u0-primitives/tooltip/Tooltip.test.js +150 -0
  765. package/dist/u0-primitives/tooltip/index.d.ts +3 -0
  766. package/dist/u0-primitives/tooltip/index.d.ts.map +1 -0
  767. package/dist/u0-primitives/tooltip/index.js +1 -0
  768. package/dist/u0-primitives/web-components/button-component.d.ts +13 -0
  769. package/dist/u0-primitives/web-components/button-component.d.ts.map +1 -0
  770. package/dist/u0-primitives/web-components/button-component.js +87 -0
  771. package/dist/u0-primitives/web-components/input-component.d.ts +13 -0
  772. package/dist/u0-primitives/web-components/input-component.d.ts.map +1 -0
  773. package/dist/u0-primitives/web-components/input-component.js +91 -0
  774. package/{src → dist}/v0-diagrams/DiagramPanel.svelte +1 -1
  775. package/dist/v0-diagrams/DiagramPanel.svelte.d.ts +10 -0
  776. package/dist/v0-diagrams/DiagramPanel.svelte.d.ts.map +1 -0
  777. package/dist/v0-diagrams/MarkmapDiagram.svelte.d.ts +9 -0
  778. package/dist/v0-diagrams/MarkmapDiagram.svelte.d.ts.map +1 -0
  779. package/dist/v0-diagrams/MermaidDiagram.svelte.d.ts +9 -0
  780. package/dist/v0-diagrams/MermaidDiagram.svelte.d.ts.map +1 -0
  781. package/{src/v0-diagrams/index.ts → dist/v0-diagrams/index.d.ts} +1 -0
  782. package/dist/v0-diagrams/index.d.ts.map +1 -0
  783. package/dist/v0-diagrams/index.js +3 -0
  784. package/dist/v0-diagrams/types.d.ts +25 -0
  785. package/dist/v0-diagrams/types.d.ts.map +1 -0
  786. package/dist/v0-diagrams/types.js +1 -0
  787. package/dist/v0-diagrams/v0-tokens.css +6 -0
  788. package/{src → dist}/x0-enchanted-blocks/components/EnchantedBlock.svelte +15 -15
  789. package/dist/x0-enchanted-blocks/components/EnchantedBlock.svelte.d.ts +28 -0
  790. package/dist/x0-enchanted-blocks/components/EnchantedBlock.svelte.d.ts.map +1 -0
  791. package/{src → dist}/x0-enchanted-blocks/components/NodepadBlock.svelte +13 -13
  792. package/dist/x0-enchanted-blocks/components/NodepadBlock.svelte.d.ts +11 -0
  793. package/dist/x0-enchanted-blocks/components/NodepadBlock.svelte.d.ts.map +1 -0
  794. package/dist/x0-enchanted-blocks/core/block-layout.d.ts +79 -0
  795. package/dist/x0-enchanted-blocks/core/block-layout.d.ts.map +1 -0
  796. package/dist/x0-enchanted-blocks/core/block-layout.js +135 -0
  797. package/dist/x0-enchanted-blocks/core/block-types.d.ts +56 -0
  798. package/dist/x0-enchanted-blocks/core/block-types.d.ts.map +1 -0
  799. package/dist/x0-enchanted-blocks/core/block-types.js +151 -0
  800. package/dist/x0-enchanted-blocks/index.d.ts +7 -0
  801. package/dist/x0-enchanted-blocks/index.d.ts.map +1 -0
  802. package/dist/x0-enchanted-blocks/index.js +13 -0
  803. package/package.json +128 -68
  804. package/src/base.css +48 -62
  805. package/src/d0-data-viz/d0-tokens.css +5 -5
  806. package/src/n0-node-graph/n0-tokens.css +4 -4
  807. package/src/n4-adaptive-manifold/n4-tokens.css +7 -7
  808. package/src/p0-primitives/tokens/control-room.css +6 -6
  809. package/src/p0-primitives/tokens/tokens.css +194 -87
  810. package/src/p0-primitives/tokens/tokens.json +114 -28
  811. package/src/p0-primitives/tokens/validity-tokens.css +83 -0
  812. package/src/u0-primitives/animated-icon/README.md +20 -3
  813. package/src/d0-data-viz/checkpoint-types.ts +0 -162
  814. package/src/d0-data-viz/index.ts +0 -58
  815. package/src/d0-data-viz/storage-map-types.ts +0 -142
  816. package/src/d0-data-viz/theme-integration.ts +0 -134
  817. package/src/d0-data-viz/types.ts +0 -53
  818. package/src/editor/index.ts +0 -2
  819. package/src/entity-graph-view/types.ts +0 -364
  820. package/src/epistemic/types.ts +0 -134
  821. package/src/epistemic/utils.ts +0 -32
  822. package/src/f0-forms/validation/validate.ts +0 -47
  823. package/src/fabric/data/index.ts +0 -21
  824. package/src/fabric/feedback/ToastContainer.svelte +0 -122
  825. package/src/fabric/input/CommandBar.svelte +0 -79
  826. package/src/fabric/layout/GlassBox.svelte +0 -193
  827. package/src/index.ts +0 -68
  828. package/src/l0-layout/block-writer/block-writer-types.ts +0 -63
  829. package/src/l0-layout/block-writer/markdown.ts +0 -110
  830. package/src/l0-layout/grove/grove-types.ts +0 -29
  831. package/src/n0-node-graph/node-port-types.ts +0 -19
  832. package/src/n0-node-graph/types.ts +0 -96
  833. package/src/n0-node-graph/validate.test.ts +0 -722
  834. package/src/n0-node-graph/validate.ts +0 -371
  835. package/src/n1-flow-canvas/graph-state.svelte.ts +0 -95
  836. package/src/n1-flow-canvas/layout.ts +0 -118
  837. package/src/n1-flow-canvas/layout.worker.ts +0 -128
  838. package/src/n1-flow-canvas/types.ts +0 -102
  839. package/src/n1-flow-canvas/utils.ts +0 -146
  840. package/src/n2-manifold-disk/poincare.ts +0 -184
  841. package/src/n3-force-graph/animated-edge.ts +0 -107
  842. package/src/n3-force-graph/health-node.ts +0 -128
  843. package/src/n3-force-graph/types.ts +0 -94
  844. package/src/n4-adaptive-manifold/classifier.ts +0 -139
  845. package/src/n4-adaptive-manifold/orchestrator.ts +0 -301
  846. package/src/n4-adaptive-manifold/phase-theme.ts +0 -92
  847. package/src/n4-adaptive-manifold/pinnacle-events.ts +0 -135
  848. package/src/n4-adaptive-manifold/providers/gravitational-provider.ts +0 -191
  849. package/src/n4-adaptive-manifold/providers/manifold-provider.ts +0 -276
  850. package/src/n4-adaptive-manifold/transition.ts +0 -90
  851. package/src/n4-adaptive-manifold/types.ts +0 -313
  852. package/src/p0-primitives/tokens/index.ts +0 -6
  853. package/src/p0-primitives/types/index.ts +0 -123
  854. package/src/p0-primitives/types/plugin-types.ts +0 -74
  855. package/src/p0-primitives/utils/index.ts +0 -39
  856. package/src/platform/hud-protocol.ts +0 -20
  857. package/src/s0-state/create-store.ts +0 -84
  858. package/src/s0-state/derived.ts +0 -41
  859. package/src/s0-state/index.ts +0 -6
  860. package/src/spatial/BspTilingCanvas.svelte +0 -232
  861. package/src/spatial/ForceCanvas.svelte +0 -289
  862. package/src/spatial/SnapZoomCamera.svelte +0 -185
  863. package/src/spatial/camera-types.ts +0 -45
  864. package/src/spatial/content-proportional-bsp.ts +0 -253
  865. package/src/spatial/force-canvas-types.ts +0 -102
  866. package/src/spatial/lod-types.ts +0 -70
  867. package/src/spatial/zone-tiler-types.ts +0 -177
  868. package/src/t0-transport/connection.ts +0 -34
  869. package/src/t0-transport/error.ts +0 -37
  870. package/src/t0-transport/events.ts +0 -50
  871. package/src/t0-transport/index.ts +0 -6
  872. package/src/t0-transport/invoke.ts +0 -30
  873. package/src/u0-primitives/allay-gauge/AllayGauge.svelte +0 -90
  874. package/src/u0-primitives/allay-gauge/index.ts +0 -1
  875. package/src/u0-primitives/animated-icon/index.ts +0 -31
  876. package/src/u0-primitives/assay-badge/AssayBadge.svelte +0 -121
  877. package/src/u0-primitives/assay-badge/AssaySignalBar.svelte +0 -83
  878. package/src/u0-primitives/assay-badge/index.ts +0 -2
  879. package/src/u0-primitives/expert-badge/ExpertBadge.svelte +0 -89
  880. package/src/u0-primitives/expert-badge/index.ts +0 -1
  881. package/src/u0-primitives/input/Input.svelte +0 -237
  882. package/src/u0-primitives/tabs/tabs-types.ts +0 -11
  883. package/src/v0-diagrams/types.ts +0 -28
  884. package/src/x0-enchanted-blocks/ENCHANTED_BLOCKS_SPEC.md +0 -457
  885. package/src/x0-enchanted-blocks/core/block-layout.ts +0 -211
  886. package/src/x0-enchanted-blocks/core/block-types.ts +0 -227
  887. package/src/x0-enchanted-blocks/index.ts +0 -46
  888. /package/{src/b0-app-shell/clarification-overlay/index.ts → dist/b0-app-shell/clarification-overlay/index.js} +0 -0
  889. /package/{src → dist}/demos/ControlRoomDemo.svelte +0 -0
  890. /package/{src/epistemic/index.ts → dist/epistemic/index.js} +0 -0
  891. /package/{src/g0-geo/index.ts → dist/g0-geo/index.js} +0 -0
  892. /package/{src → dist}/l0-layout/block-writer/BlockWriter.svelte +0 -0
  893. /package/{src → dist}/l0-layout/chat-view/ChatViewLayout.svelte +0 -0
  894. /package/{src/l0-layout/epistemic/index.ts → dist/l0-layout/epistemic/index.js} +0 -0
  895. /package/{src → dist}/l0-layout/grove/AccordCard.svelte +0 -0
  896. /package/{src → dist}/l0-layout/grove/GroveCard.svelte +0 -0
  897. /package/{src → dist}/l0-layout/grove/MemberBadge.svelte +0 -0
  898. /package/{src → dist}/l0-layout/grove/MemberList.svelte +0 -0
  899. /package/{src → dist}/l0-layout/kanban/KanbanCard.svelte +0 -0
  900. /package/{src → dist}/l0-layout/kanban/KanbanViewLayout.svelte +0 -0
  901. /package/{src → dist}/l0-layout/workspace/WorkspaceLayout.svelte +0 -0
  902. /package/{src → dist}/n0-node-graph/GraphEditor.svelte +0 -0
  903. /package/{src → dist}/n0-node-graph/GraphHistory.svelte +0 -0
  904. /package/{src → dist}/n0-node-graph/NodeCanvas.svelte +0 -0
  905. /package/{src → dist}/n0-node-graph/NodeEdge.svelte +0 -0
  906. /package/{src → dist}/n0-node-graph/NodePort.svelte +0 -0
  907. /package/{src → dist}/n2-manifold-disk/ManifoldDisk.svelte +0 -0
  908. /package/{src → dist}/n3-force-graph/GraphTooltip.svelte +0 -0
  909. /package/{src → dist}/stores/vaultStore.svelte +0 -0
  910. /package/{src/u0-primitives/modal/index.ts → dist/u0-primitives/modal/index.js} +0 -0
  911. /package/{src → dist}/v0-diagrams/MarkmapDiagram.svelte +0 -0
  912. /package/{src → dist}/v0-diagrams/MermaidDiagram.svelte +0 -0
  913. /package/{src → dist}/vite-env.d.ts +0 -0
@@ -1,135 +0,0 @@
1
- import type { PinnacleEvent, LoopPhase, NodeIndicatorState } from './types.js';
2
-
3
- /** Minimum gap (ms) between claim and action to infer "thinking" */
4
- const THINK_GAP_MS = 2000;
5
-
6
- /** Track per-agent state for gap-based inference */
7
- interface AgentTracker {
8
- lastEventSequence: number;
9
- lastEventTime: number;
10
- currentTask: string | null;
11
- loopPhase: LoopPhase;
12
- }
13
-
14
- /**
15
- * Tier A inference layer: derives PinnacleEvents from sigchain snapshot deltas.
16
- *
17
- * When tier B (direct Garden telemetry) arrives, this class is replaced.
18
- * The PinnacleEvent shape is the same — canvas code doesn't change.
19
- */
20
- export class PinnacleEventInferrer {
21
- private agents: Map<string, AgentTracker> = new Map();
22
-
23
- /**
24
- * Process a batch of sigchain-derived changes and return PinnacleEvents.
25
- * Called by PinnacleView on each poller tick.
26
- */
27
- inferFromSnapshot(
28
- nodes: ReadonlyArray<{ id: string; kind: string; metadata: Record<string, unknown> }>,
29
- _edges: ReadonlyArray<{ source: string; target: string; relation: string }>,
30
- sequence: number,
31
- ): PinnacleEvent[] {
32
- const events: PinnacleEvent[] = [];
33
- const now = performance.now();
34
-
35
- // Find all agent nodes
36
- const agentNodes = nodes.filter((n) => n.kind === 'agent');
37
-
38
- for (const agent of agentNodes) {
39
- const existingTracker = this.agents.get(agent.id);
40
- const isFirstSeen = !existingTracker;
41
- const tracker = existingTracker ?? {
42
- lastEventSequence: 0,
43
- lastEventTime: now,
44
- currentTask: null,
45
- loopPhase: 'idle' as LoopPhase,
46
- };
47
-
48
- // Determine what the agent is doing from metadata
49
- const claimedTask = agent.metadata?.current_task as string | undefined;
50
- const actionSequence = (agent.metadata?.last_action_sequence as number) ?? 0;
51
-
52
- let loopPhase: LoopPhase = 'idle';
53
- let targetId: string | null = null;
54
-
55
- if (claimedTask && claimedTask !== tracker.currentTask) {
56
- // Agent just claimed a new task (or first seen with a task) → perceive
57
- loopPhase = 'perceive';
58
- targetId = claimedTask;
59
- } else if (claimedTask && actionSequence > tracker.lastEventSequence) {
60
- // Agent has a task and just performed an action → act
61
- loopPhase = 'act';
62
- targetId = claimedTask;
63
- } else if (!isFirstSeen && claimedTask && now - tracker.lastEventTime > THINK_GAP_MS) {
64
- // Gap inference only after baseline established — avoids false 'think' on first poll.
65
- // If constructed 3s before first poll, every agent would immediately enter think.
66
- loopPhase = 'think';
67
- targetId = claimedTask;
68
- } else if (claimedTask) {
69
- // Agent has a task, recent action, within gap → still acting
70
- loopPhase = tracker.loopPhase === 'idle' ? 'perceive' : tracker.loopPhase;
71
- targetId = claimedTask;
72
- }
73
-
74
- // Only emit event if phase changed or target changed
75
- if (loopPhase !== tracker.loopPhase || targetId !== tracker.currentTask) {
76
- events.push({
77
- agentId: agent.id,
78
- targetId,
79
- loopPhase,
80
- sequence,
81
- });
82
- }
83
-
84
- this.agents.set(agent.id, {
85
- lastEventSequence: actionSequence || tracker.lastEventSequence,
86
- lastEventTime:
87
- actionSequence > tracker.lastEventSequence ? now : tracker.lastEventTime,
88
- currentTask: claimedTask ?? null,
89
- loopPhase,
90
- });
91
- }
92
-
93
- // Detect departed agents (were tracked, no longer in nodes)
94
- const currentAgentIds = new Set(agentNodes.map((a) => a.id));
95
- for (const [agentId, tracker] of this.agents) {
96
- if (!currentAgentIds.has(agentId) && tracker.loopPhase !== 'idle') {
97
- events.push({
98
- agentId,
99
- targetId: null,
100
- loopPhase: 'idle',
101
- sequence,
102
- });
103
- this.agents.delete(agentId);
104
- }
105
- }
106
-
107
- return events;
108
- }
109
-
110
- /**
111
- * Convert persistent agent tracker state into NodeIndicatorState map for the canvas.
112
- *
113
- * Reads from this.agents (updated by inferFromSnapshot), NOT from emitted events.
114
- * Events only fire on state changes — reading from the tracker ensures a stable
115
- * 'think' pulse persists across ticks where nothing changes.
116
- *
117
- * Must be called after inferFromSnapshot on the same tick.
118
- */
119
- toIndicatorStates(): Map<string, NodeIndicatorState> {
120
- const states = new Map<string, NodeIndicatorState>();
121
-
122
- for (const [agentId, tracker] of this.agents) {
123
- if (tracker.loopPhase !== 'idle') {
124
- states.set(agentId, {
125
- loopPhase: tracker.loopPhase,
126
- phaseElapsedMs: 0,
127
- traceTargetId: tracker.currentTask,
128
- });
129
- }
130
- }
131
-
132
- return states;
133
- }
134
-
135
- }
@@ -1,191 +0,0 @@
1
- import type {
2
- ManifoldSnapshot,
3
- GravitationalConfig,
4
- AlgorithmProvider,
5
- LayoutAlgorithm,
6
- } from '../types.js';
7
- import type { NodeLayout, LayoutResult } from '../../n1-flow-canvas/types.js';
8
- import { DEFAULT_GRAVITATIONAL_CONFIG } from '../types.js';
9
-
10
- /**
11
- * Node sizes by kind with support for measured content.
12
- * Checks node.data.measuredSize first (from Enchanted Blocks),
13
- * then falls back to fixed sizes by kind.
14
- */
15
- function nodeSize(
16
- kind: string,
17
- status: string,
18
- data?: Record<string, unknown>
19
- ): { w: number; h: number } {
20
- // Check for measured size from Enchanted Blocks integration
21
- const measured = data?.measuredSize as { w: number; h: number } | undefined;
22
- if (measured && measured.w > 0 && measured.h > 0) {
23
- return measured;
24
- }
25
-
26
- // Fall back to fixed sizes by kind
27
- switch (kind) {
28
- case 'agent': return { w: 52, h: 46 }; // Large hexagon
29
- case 'task': return { w: 72, h: 48 }; // Compact badge with ID
30
- case 'signal': return { w: 10, h: 10 };
31
- default: return { w: 140, h: 32 };
32
- }
33
- }
34
-
35
- /**
36
- * Gravitational layout with deterministic spiral placement.
37
- * Guarantees no overlap by construction using explicit overlap checking.
38
- */
39
- export class GravitationalProvider implements AlgorithmProvider {
40
- readonly algorithm: LayoutAlgorithm = 'gravitational';
41
- private config: GravitationalConfig;
42
-
43
- constructor(config: Partial<GravitationalConfig> = {}) {
44
- this.config = { ...DEFAULT_GRAVITATIONAL_CONFIG, ...config };
45
- }
46
-
47
- updateConfig(config: Partial<GravitationalConfig>): void {
48
- this.config = { ...this.config, ...config };
49
- }
50
-
51
- async layout(
52
- snapshot: ManifoldSnapshot,
53
- canvasWidth: number,
54
- canvasHeight: number,
55
- ): Promise<LayoutResult> {
56
- const { nodes, edges } = snapshot;
57
- if (nodes.length === 0) {
58
- return { positions: new Map(), bfsOrder: [] };
59
- }
60
-
61
- // Layout world: compact to fit viewport
62
- const layoutDim = Math.max(canvasWidth, canvasHeight) * 1.2;
63
- const cx = layoutDim / 2;
64
- const cy = layoutDim / 2;
65
-
66
- // ── Deterministic spiral layout with guaranteed separation ──────────────
67
- // Sort nodes: agents first (center), then claimed tasks, then by priority
68
- const sortedNodes = [...nodes].sort((a, b) => {
69
- if (a.kind === 'agent' && b.kind !== 'agent') return -1;
70
- if (a.kind !== 'agent' && b.kind === 'agent') return 1;
71
- const aClaimed = a.metadata?.claiming_agent ? 1 : 0;
72
- const bClaimed = b.metadata?.claiming_agent ? 1 : 0;
73
- if (aClaimed !== bClaimed) return bClaimed - aClaimed;
74
- const priorityOrder: Record<string, number> = { p0: 0, p1: 1, p2: 2, p3: 3 };
75
- const aPriority = typeof a.metadata?.priority === 'string' ? a.metadata.priority : '';
76
- const bPriority = typeof b.metadata?.priority === 'string' ? b.metadata.priority : '';
77
- return (priorityOrder[aPriority] ?? 4) - (priorityOrder[bPriority] ?? 4);
78
- });
79
-
80
- // Place nodes in spiral with guaranteed minimum spacing
81
- const positions = new Map<string, NodeLayout>();
82
- const placed: Array<{ x: number; y: number; w: number; h: number }> = [];
83
-
84
- for (let i = 0; i < sortedNodes.length; i++) {
85
- const node = sortedNodes[i];
86
- const { w, h } = nodeSize(node.kind, node.status, node.metadata);
87
-
88
- // Golden angle spiral for even distribution
89
- const goldenAngle = Math.PI * (3 - Math.sqrt(5));
90
- const angle = i * goldenAngle;
91
-
92
- // Radius grows with sqrt(index) for equal area distribution
93
- // Start with minimum spacing of 60px between nodes
94
- const minSpacing = 60;
95
- const baseRadius = Math.sqrt(i) * minSpacing * 1.5;
96
-
97
- let x = cx + Math.cos(angle) * baseRadius - w / 2;
98
- let y = cy + Math.sin(angle) * baseRadius - h / 2;
99
-
100
- // Check for overlaps with placed nodes and nudge if needed
101
- let attempts = 0;
102
- while (attempts < 50) {
103
- let hasOverlap = false;
104
- for (const p of placed) {
105
- const dx = Math.abs((x + w/2) - p.x);
106
- const dy = Math.abs((y + h/2) - p.y);
107
- const minDx = (w + p.w) / 2 + minSpacing;
108
- const minDy = (h + p.h) / 2 + minSpacing;
109
- if (dx < minDx && dy < minDy) {
110
- hasOverlap = true;
111
- // Nudge outward along the angle
112
- const nudge = minSpacing * (1 + attempts * 0.2);
113
- x = cx + Math.cos(angle) * (baseRadius + nudge) - w / 2;
114
- y = cy + Math.sin(angle) * (baseRadius + nudge) - h / 2;
115
- break;
116
- }
117
- }
118
- if (!hasOverlap) break;
119
- attempts++;
120
- }
121
-
122
- // Clamp to bounds
123
- x = Math.max(20, Math.min(layoutDim - w - 20, x));
124
- y = Math.max(20, Math.min(layoutDim - h - 20, y));
125
-
126
- positions.set(node.id, { id: node.id, x, y, width: w, height: h });
127
- placed.push({ x: x + w/2, y: y + h/2, w, h });
128
- }
129
-
130
- // BFS order for edge reveal
131
- const incoming = new Set(edges.map((e) => e.target));
132
- const roots = nodes.filter((n) => !incoming.has(n.id)).map((n) => n.id);
133
- const visited = new Set<string>();
134
- const bfsOrder: string[] = [];
135
- const queue = [...roots];
136
- while (queue.length > 0) {
137
- const id = queue.shift()!;
138
- if (visited.has(id)) continue;
139
- visited.add(id);
140
- bfsOrder.push(id);
141
- for (const e of edges) {
142
- if (e.source === id && !visited.has(e.target)) queue.push(e.target);
143
- }
144
- }
145
- for (const n of nodes) {
146
- if (!visited.has(n.id)) bfsOrder.push(n.id);
147
- }
148
-
149
- return { positions, bfsOrder };
150
- }
151
-
152
- /** Classify node into gravitational zone based on kind + metadata */
153
- private classifyZone(
154
- kind: string,
155
- metadata: Record<string, unknown>,
156
- ): 'center' | 'mid' | 'periphery' {
157
- // Agents: zone depends on dominant rotation axis
158
- if (kind === 'agent') {
159
- const sparkByAxis = metadata.spark_by_axis as
160
- | [number, number, number]
161
- | undefined;
162
- if (sparkByAxis) {
163
- const [i, j, k] = sparkByAxis;
164
- const max = Math.max(i, j, k);
165
- // Tie-break: k (relation) beats j (actuation) beats i (accumulation).
166
- // Intentional: balanced agents (i===j===k) land in 'center' — coordination role.
167
- if (max === k) return 'center'; // Relation axis dominant → coordination
168
- if (max === j) return 'mid'; // Actuation axis dominant → worker
169
- return 'periphery'; // Accumulation axis dominant → epistemic
170
- }
171
- return 'mid'; // default for agents without axis data
172
- }
173
-
174
- // Tasks: active tasks (claimed) pull to mid; idle tasks orbit by priority.
175
- // p0 = critical → center; p1 = high → mid; p2/p3 = background → periphery.
176
- // This gives the idle Pinnacle a legible priority hierarchy, not a random scatter.
177
- if (kind === 'task') {
178
- if (metadata.claiming_agent) return 'mid';
179
- const priority = metadata.priority as string | undefined;
180
- if (priority === 'p0') return 'center';
181
- if (priority === 'p1') return 'mid';
182
- return 'periphery';
183
- }
184
-
185
- // Signals: always middleground
186
- if (kind === 'signal') return 'mid';
187
-
188
- // Capabilities, intents: background/deferred
189
- return 'periphery';
190
- }
191
- }
@@ -1,276 +0,0 @@
1
- // ManifoldProvider — S³ stereographic projection layout.
2
- // Pure arithmetic: quaternion orientation → 2D disk coordinates.
3
- // O(n), deterministic, zero simulation.
4
- //
5
- // Agents: projected from actual [w,i,j,k] via isometric rotation + orthographic flatten.
6
- // Tasks: positioned by rotation_axis metadata, row-packed within axis clusters.
7
- //
8
- // S-02: no Math.random, no HashMap — all placement is arithmetic.
9
-
10
- import type {
11
- ManifoldSnapshot,
12
- AlgorithmProvider,
13
- LayoutAlgorithm,
14
- } from '../types.js';
15
- import type { NodeLayout, LayoutResult } from '../../n1-flow-canvas/types.js';
16
-
17
- // ── Node sizes (symbol body only, not flag extent) ──────────────────────────
18
-
19
- function nodeSize(kind: string, status: string): { w: number; h: number } {
20
- switch (kind) {
21
- case 'agent': return { w: 54, h: 48 };
22
- case 'task': return status === 'active' ? { w: 120, h: 32 } : { w: 90, h: 26 };
23
- case 'signal': return { w: 28, h: 24 };
24
- default: return { w: 90, h: 26 };
25
- }
26
- }
27
-
28
- // ── Axis mapping ─────────────────────────────────────────────────────────────
29
- // i = Accumulation (left), j = Actuation (right), k = Relation (top)
30
- // These are the canonical axis positions on the projected disk.
31
-
32
- const AXIS_POSITIONS: Record<string, { x: number; y: number }> = {
33
- accumulation: { x: -0.6, y: 0.0 }, // i-axis → left
34
- actuation: { x: 0.6, y: 0.0 }, // j-axis → right
35
- relation: { x: 0.0, y: -0.6 }, // k-axis → top
36
- };
37
-
38
- // Hybrid axis positions are interpolated between the two axes.
39
- function hybridPosition(
40
- axisA: string,
41
- weightA: number,
42
- axisB: string,
43
- weightB: number,
44
- ): { x: number; y: number } {
45
- const a = AXIS_POSITIONS[axisA] ?? { x: 0, y: 0 };
46
- const b = AXIS_POSITIONS[axisB] ?? { x: 0, y: 0 };
47
- return {
48
- x: a.x * weightA + b.x * weightB,
49
- y: a.y * weightA + b.y * weightB,
50
- };
51
- }
52
-
53
- // Column-based fallback positions — spread tasks across the disk by TOS lifecycle stage.
54
- // Used when rotation_axis metadata is not yet set (common during early pipeline stages).
55
- // Positions are in normalized disk coordinates [-1, 1].
56
- // Cluster centers are separated so that KiCad flags (~140px wide) don't overlap
57
- // across clusters. Flags flip direction at x > 55% viewport width, so left-side
58
- // clusters extend right and right-side clusters extend left — keep same-Y clusters
59
- // at least 0.45 normalized units apart in X (~180px at 960px canvas width).
60
- const COLUMN_POSITIONS: Record<string, { x: number; y: number }> = {
61
- SEED: { x: -0.62, y: -0.28 }, // upper-left — proposing, accumulating
62
- SPROUT: { x: -0.22, y: -0.70 }, // top-center — growing, active
63
- WEED: { x: -0.62, y: 0.42 }, // lower-left — being weeded
64
- GO: { x: 0.65, y: 0.02 }, // right — actuating, running
65
- CONSULT: { x: 0.52, y: -0.52 }, // upper-right — relation, consulting
66
- FREEZE: { x: 0.52, y: 0.50 }, // lower-right — blocked, frozen
67
- COMPOST: { x: 0.00, y: 0.65 }, // bottom — completed
68
- PRUNE: { x: 0.22, y: 0.65 }, // bottom-right — pruned
69
- };
70
-
71
- // Parse rotation_axis string back to a 2D position.
72
- // Pure axis: "actuation" → AXIS_POSITIONS["actuation"]
73
- // Hybrid: "accumulation:0.6,actuation:0.4" → interpolated
74
- // Null with cluster hint: falls back to column-based spread position.
75
- function axisToPosition(
76
- rotationAxis: string | null | undefined,
77
- cluster?: string | null,
78
- ): { x: number; y: number } {
79
- if (!rotationAxis) {
80
- // Fall back to column-based spread so tasks aren't all at center
81
- return COLUMN_POSITIONS[cluster ?? ''] ?? { x: 0, y: 0.3 };
82
- }
83
-
84
- if (rotationAxis.includes(',')) {
85
- // Hybrid format: "axisA:weightA,axisB:weightB"
86
- const parts = rotationAxis.split(',');
87
- const [axisA, wA] = parts[0].split(':');
88
- const [axisB, wB] = parts[1].split(':');
89
- return hybridPosition(axisA, parseFloat(wA), axisB, parseFloat(wB));
90
- }
91
-
92
- return AXIS_POSITIONS[rotationAxis] ?? { x: 0, y: 0.3 };
93
- }
94
-
95
- // ── Agent projection: quaternion [w,i,j,k] → 2D disk ────────────────────────
96
- //
97
- // The quaternion imaginary components (i, j, k) form a point inside the unit ball
98
- // (since |q|=1, we have i²+j²+k² ≤ 1). We apply an isometric rotation to get a
99
- // good viewing angle, then orthographically project to 2D.
100
- //
101
- // Isometric rotation: rotate 45° around Y, then 35.264° around X
102
- // (the standard isometric viewing angle). This spreads the three axes evenly
103
- // on the 2D plane.
104
-
105
- const ISO_ANGLE_Y = Math.PI / 4; // 45°
106
- const ISO_ANGLE_X = Math.asin(1 / Math.sqrt(3)); // ~35.264°
107
-
108
- function projectQuaternionToDisk(
109
- orientation: [number, number, number, number], // [w, i, j, k]
110
- ): { x: number; y: number } {
111
- const [, qi, qj, qk] = orientation;
112
-
113
- // Rotate around Y axis
114
- const cosY = Math.cos(ISO_ANGLE_Y);
115
- const sinY = Math.sin(ISO_ANGLE_Y);
116
- const rx = qi * cosY + qk * sinY;
117
- const ry = qj;
118
- const rz = -qi * sinY + qk * cosY;
119
-
120
- // Rotate around X axis
121
- const cosX = Math.cos(ISO_ANGLE_X);
122
- const sinX = Math.sin(ISO_ANGLE_X);
123
- const finalY = ry * cosX - rz * sinX;
124
-
125
- // Orthographic projection: drop Z
126
- return { x: rx, y: finalY };
127
- }
128
-
129
- // ── ManifoldProvider ─────────────────────────────────────────────────────────
130
-
131
- export class ManifoldProvider implements AlgorithmProvider {
132
- readonly algorithm: LayoutAlgorithm = 'manifold';
133
-
134
- async layout(
135
- snapshot: ManifoldSnapshot,
136
- canvasWidth: number,
137
- canvasHeight: number,
138
- ): Promise<LayoutResult> {
139
- const { nodes, edges } = snapshot;
140
- if (nodes.length === 0) {
141
- return { positions: new Map(), bfsOrder: [] };
142
- }
143
-
144
- // Guard: if canvas hasn't been measured yet, return empty to avoid
145
- // collapsing all nodes to (0,0).
146
- if (canvasWidth < 100 || canvasHeight < 100) {
147
- return { positions: new Map(), bfsOrder: [] };
148
- }
149
-
150
- // Asymmetric disk radii — use more horizontal space since canvases are typically wider.
151
- // X uses 42% of width, Y uses 38% of height. This spreads nodes across the full viewport
152
- // rather than clustering near center.
153
- const diskRadiusX = canvasWidth * 0.42;
154
- const diskRadiusY = canvasHeight * 0.38;
155
- const centerX = canvasWidth / 2;
156
- const centerY = canvasHeight / 2;
157
-
158
- const positions = new Map<string, NodeLayout>();
159
-
160
- // ── Separate agents and tasks ──────────────────────────────────────────
161
- const agents = nodes.filter(n => n.kind === 'agent');
162
- const tasks = nodes.filter(n => n.kind === 'task');
163
- const others = nodes.filter(n => n.kind !== 'agent' && n.kind !== 'task');
164
-
165
- // ── Agents: project from quaternion orientation ────────────────────────
166
- // Agents occupy the inner disk (45% radius) so they never land on top of
167
- // task clusters, which live on the full outer disk (100% radius).
168
- const AGENT_DISK_SCALE = 0.45;
169
- for (const agent of agents) {
170
- const size = nodeSize(agent.kind, agent.status);
171
- const proj = projectQuaternionToDisk(
172
- (agent.metadata.orientation as [number, number, number, number]) ?? [1, 0, 0, 0],
173
- );
174
-
175
- const x = centerX + proj.x * diskRadiusX * AGENT_DISK_SCALE - size.w / 2;
176
- const y = centerY + proj.y * diskRadiusY * AGENT_DISK_SCALE - size.h / 2;
177
-
178
- positions.set(agent.id, {
179
- id: agent.id,
180
- x,
181
- y,
182
- width: size.w,
183
- height: size.h,
184
- });
185
- }
186
-
187
- // ── Tasks: position by rotation axis, row-packed within clusters ───────
188
- // Group tasks by their axis position (normalized to a string key)
189
- const taskGroups = new Map<string, Array<{ task: typeof tasks[number]; pos: { x: number; y: number } }>>();
190
- for (const task of tasks) {
191
- const rotationAxis = task.hint?.rotation_axis as string | null | undefined;
192
- const cluster = task.hint?.cluster as string | null | undefined;
193
- const pos = axisToPosition(rotationAxis, cluster);
194
- const key = `${pos.x.toFixed(2)},${pos.y.toFixed(2)}`;
195
- if (!taskGroups.has(key)) taskGroups.set(key, []);
196
- taskGroups.get(key)!.push({ task, pos });
197
- }
198
-
199
- // Pack tasks within each cluster: row-major, left-to-right.
200
- //
201
- // Padding geometry (close-zoom KiCad flag constraints):
202
- // Flag extends 118px from node center (tip=8 + body=110).
203
- // Node half-width = 45px. Next col body starts at TASK_PAD_W - 45px.
204
- // No-overlap condition: 118 < TASK_PAD_W - 45 → TASK_PAD_W > 163 → use 170.
205
- // FLAG_H_HIT = 36px. No-overlap: TASK_PAD_H > 36 → use 40.
206
- //
207
- // MAX_COLS: uncapped sqrt(N). For large clusters (e.g. 207 SEED tasks) this
208
- // spreads wide (15 cols × 170px = 2550px), forcing fit-zoom below 0.8 (mid-tier
209
- // chips). At close zoom only ~6 cols are visible at once — no flag overlap.
210
- const TASK_PAD_W = 170; // 118px flag extent + 52px margin → 7px gap to next col
211
- const TASK_PAD_H = 40; // 36px FLAG_H_HIT + 4px gap
212
-
213
- for (const [key, group] of taskGroups) {
214
- const MAX_COLS = Math.max(1, Math.ceil(Math.sqrt(group.length)));
215
- const [cx, cy] = key.split(',').map(Number);
216
- const clusterCenterX = centerX + cx * diskRadiusX;
217
- const clusterCenterY = centerY + cy * diskRadiusY;
218
-
219
- const cols = Math.min(MAX_COLS, group.length);
220
- const totalWidth = cols * TASK_PAD_W;
221
- const startX = clusterCenterX - totalWidth / 2;
222
- const startY = clusterCenterY - TASK_PAD_H / 2;
223
-
224
- for (let i = 0; i < group.length; i++) {
225
- const { task } = group[i];
226
- const size = nodeSize(task.kind, task.status);
227
- const col = i % cols;
228
- const row = Math.floor(i / cols);
229
-
230
- const x = startX + col * TASK_PAD_W + (TASK_PAD_W - size.w) / 2;
231
- const y = startY + row * TASK_PAD_H + (TASK_PAD_H - size.h) / 2;
232
-
233
- positions.set(task.id, {
234
- id: task.id,
235
- x,
236
- y,
237
- width: size.w,
238
- height: size.h,
239
- });
240
- }
241
- }
242
-
243
- // ── Others (signals, etc.): place at center ────────────────────────────
244
- for (const node of others) {
245
- const size = nodeSize(node.kind, node.status);
246
- positions.set(node.id, {
247
- id: node.id,
248
- x: centerX - size.w / 2,
249
- y: centerY - size.h / 2,
250
- width: size.w,
251
- height: size.h,
252
- });
253
- }
254
-
255
- // ── BFS order for edge reveal ──────────────────────────────────────────
256
- const incoming = new Set(edges.map(e => e.target));
257
- const roots = nodes.filter(n => !incoming.has(n.id)).map(n => n.id);
258
- const visited = new Set<string>();
259
- const bfsOrder: string[] = [];
260
- const queue = [...roots];
261
- while (queue.length > 0) {
262
- const id = queue.shift()!;
263
- if (visited.has(id)) continue;
264
- visited.add(id);
265
- bfsOrder.push(id);
266
- for (const e of edges) {
267
- if (e.source === id && !visited.has(e.target)) queue.push(e.target);
268
- }
269
- }
270
- for (const n of nodes) {
271
- if (!visited.has(n.id)) bfsOrder.push(n.id);
272
- }
273
-
274
- return { positions, bfsOrder };
275
- }
276
- }
@@ -1,90 +0,0 @@
1
- // N4 TransitionAnimator — Interpolates between two LayoutResults
2
- // Uses requestAnimationFrame for smooth 60fps transitions.
3
- // S-02: deterministic interpolation, no random values.
4
-
5
- import type { AnimationFrame, EasingFn, NodeLayout } from './types.js';
6
-
7
- /** Named easing functions. All map t∈[0,1] → [0,1]. */
8
- export const EASING_FUNCTIONS: Record<string, EasingFn> = {
9
- linear: (t) => t,
10
- easeInOutCubic: (t) => (t < 0.5 ? 4 * t * t * t : 1 - Math.pow(-2 * t + 2, 3) / 2),
11
- easeOutExpo: (t) => (t === 1 ? 1 : 1 - Math.pow(2, -10 * t)),
12
- spring: (t) => {
13
- // Damped spring approximation — overshoots ~6% then settles
14
- const c4 = (2 * Math.PI) / 3;
15
- return t === 0 ? 0 : t === 1 ? 1 : Math.pow(2, -10 * t) * Math.sin((t * 10 - 0.75) * c4) + 1;
16
- },
17
- };
18
-
19
- export class TransitionAnimator {
20
- private rafId: number | null = null;
21
-
22
- /**
23
- * Animate from `from` positions to `to` positions over `durationMs`.
24
- * Calls `onFrame` on each animation frame with the interpolated moment.
25
- * Calls `onComplete` when the animation finishes.
26
- *
27
- * Nodes present in `to` but not `from` appear at their target position (no lerp).
28
- * Nodes present in `from` but not `to` are dropped from the interpolated map.
29
- */
30
- animate(
31
- from: Map<string, NodeLayout>,
32
- to: Map<string, NodeLayout>,
33
- durationMs: number,
34
- easing: EasingFn,
35
- onFrame: (frame: AnimationFrame) => void,
36
- onComplete: () => void,
37
- ): void {
38
- this.cancel();
39
-
40
- const startTime = performance.now();
41
-
42
- const tick = (now: number) => {
43
- const elapsed = now - startTime;
44
- const rawProgress = Math.min(elapsed / durationMs, 1);
45
- const progress = easing(rawProgress);
46
-
47
- const positions = new Map<string, NodeLayout>();
48
-
49
- for (const [id, target] of to) {
50
- const source = from.get(id);
51
- if (!source) {
52
- // New node — appear at target position
53
- positions.set(id, { ...target });
54
- } else {
55
- // Interpolate
56
- positions.set(id, {
57
- id,
58
- x: source.x + (target.x - source.x) * progress,
59
- y: source.y + (target.y - source.y) * progress,
60
- width: source.width + (target.width - source.width) * progress,
61
- height: source.height + (target.height - source.height) * progress,
62
- });
63
- }
64
- }
65
-
66
- onFrame({ positions, progress, elapsedMs: elapsed });
67
-
68
- if (rawProgress < 1) {
69
- this.rafId = requestAnimationFrame(tick);
70
- } else {
71
- this.rafId = null;
72
- onComplete();
73
- }
74
- };
75
-
76
- this.rafId = requestAnimationFrame(tick);
77
- }
78
-
79
- /** Cancel any in-flight animation. */
80
- cancel(): void {
81
- if (this.rafId !== null) {
82
- cancelAnimationFrame(this.rafId);
83
- this.rafId = null;
84
- }
85
- }
86
-
87
- get active(): boolean {
88
- return this.rafId !== null;
89
- }
90
- }