@stephen-netu/design-system 0.1.0 → 0.2.1

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 (912) 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 +64 -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 +196 -0
  560. package/dist/spatial/BspTilingCanvas.svelte.d.ts +12 -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 +151 -0
  569. package/dist/spatial/ForceCanvas.svelte.d.ts +16 -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 +3 -1
  575. package/dist/spatial/LodRenderer.svelte.d.ts +35 -0
  576. package/dist/spatial/LodRenderer.svelte.d.ts.map +1 -0
  577. package/dist/spatial/SnapZoomCamera.svelte +187 -0
  578. package/dist/spatial/SnapZoomCamera.svelte.d.ts +14 -0
  579. package/dist/spatial/SnapZoomCamera.svelte.d.ts.map +1 -0
  580. package/{src → dist}/spatial/ZoneTiler.svelte +26 -7
  581. package/dist/spatial/ZoneTiler.svelte.d.ts +27 -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/u0-primitives/AccordionSection.svelte +186 -0
  625. package/dist/u0-primitives/AccordionSection.svelte.d.ts +28 -0
  626. package/dist/u0-primitives/AccordionSection.svelte.d.ts.map +1 -0
  627. package/dist/u0-primitives/LockIndicator.svelte +244 -0
  628. package/dist/u0-primitives/LockIndicator.svelte.d.ts +31 -0
  629. package/dist/u0-primitives/LockIndicator.svelte.d.ts.map +1 -0
  630. package/dist/u0-primitives/VerticalToolbar.svelte +208 -0
  631. package/dist/u0-primitives/VerticalToolbar.svelte.d.ts +32 -0
  632. package/dist/u0-primitives/VerticalToolbar.svelte.d.ts.map +1 -0
  633. package/dist/u0-primitives/accordion/Accordion.svelte +185 -0
  634. package/dist/u0-primitives/accordion/Accordion.svelte.d.ts +34 -0
  635. package/dist/u0-primitives/accordion/Accordion.svelte.d.ts.map +1 -0
  636. package/dist/u0-primitives/accordion/Accordion.test.js +99 -0
  637. package/dist/u0-primitives/accordion/index.d.ts +3 -0
  638. package/dist/u0-primitives/accordion/index.d.ts.map +1 -0
  639. package/dist/u0-primitives/accordion/index.js +1 -0
  640. package/dist/u0-primitives/allay-gauge/AllayGauge.svelte +58 -0
  641. package/dist/u0-primitives/allay-gauge/AllayGauge.svelte.d.ts +10 -0
  642. package/dist/u0-primitives/allay-gauge/AllayGauge.svelte.d.ts.map +1 -0
  643. package/{src → dist}/u0-primitives/animated-icon/AnimatedIcon.svelte +7 -7
  644. package/dist/u0-primitives/animated-icon/AnimatedIcon.svelte.d.ts +22 -0
  645. package/dist/u0-primitives/animated-icon/AnimatedIcon.svelte.d.ts.map +1 -0
  646. package/dist/u0-primitives/animated-icon/README.md +70 -0
  647. package/dist/u0-primitives/animated-icon/index.d.ts +9 -0
  648. package/dist/u0-primitives/animated-icon/index.d.ts.map +1 -0
  649. package/dist/u0-primitives/animated-icon/index.js +9 -0
  650. package/{src → dist}/u0-primitives/avatar/Avatar.svelte +3 -3
  651. package/dist/u0-primitives/avatar/Avatar.svelte.d.ts +11 -0
  652. package/dist/u0-primitives/avatar/Avatar.svelte.d.ts.map +1 -0
  653. package/dist/u0-primitives/avatar/index.d.ts +3 -0
  654. package/dist/u0-primitives/avatar/index.d.ts.map +1 -0
  655. package/dist/u0-primitives/avatar/index.js +1 -0
  656. package/{src → dist}/u0-primitives/badge/Badge.svelte +11 -11
  657. package/dist/u0-primitives/badge/Badge.svelte.d.ts +12 -0
  658. package/dist/u0-primitives/badge/Badge.svelte.d.ts.map +1 -0
  659. package/dist/u0-primitives/badge/Badge.test.js +50 -0
  660. package/dist/u0-primitives/badge/ValidityBadge.svelte +153 -0
  661. package/dist/u0-primitives/badge/ValidityBadge.svelte.d.ts +13 -0
  662. package/dist/u0-primitives/badge/ValidityBadge.svelte.d.ts.map +1 -0
  663. package/dist/u0-primitives/badge/ValidityBadge.test.js +57 -0
  664. package/dist/u0-primitives/badge/index.d.ts +3 -0
  665. package/dist/u0-primitives/badge/index.d.ts.map +1 -0
  666. package/dist/u0-primitives/badge/index.js +1 -0
  667. package/dist/u0-primitives/badge/validity-utils.d.ts +8 -0
  668. package/dist/u0-primitives/badge/validity-utils.d.ts.map +1 -0
  669. package/dist/u0-primitives/badge/validity-utils.js +18 -0
  670. package/{src → dist}/u0-primitives/button/Button.svelte +42 -104
  671. package/dist/u0-primitives/button/Button.svelte.d.ts +18 -0
  672. package/dist/u0-primitives/button/Button.svelte.d.ts.map +1 -0
  673. package/dist/u0-primitives/button/Button.test.js +58 -0
  674. package/dist/u0-primitives/button/index.d.ts +3 -0
  675. package/dist/u0-primitives/button/index.d.ts.map +1 -0
  676. package/dist/u0-primitives/button/index.js +1 -0
  677. package/{src → dist}/u0-primitives/card/Card.svelte +71 -48
  678. package/dist/u0-primitives/card/Card.svelte.d.ts +18 -0
  679. package/dist/u0-primitives/card/Card.svelte.d.ts.map +1 -0
  680. package/dist/u0-primitives/card/index.d.ts +3 -0
  681. package/dist/u0-primitives/card/index.d.ts.map +1 -0
  682. package/dist/u0-primitives/card/index.js +1 -0
  683. package/dist/u0-primitives/command-palette/CommandPalette.svelte +542 -0
  684. package/dist/u0-primitives/command-palette/CommandPalette.svelte.d.ts +25 -0
  685. package/dist/u0-primitives/command-palette/CommandPalette.svelte.d.ts.map +1 -0
  686. package/dist/u0-primitives/command-palette/command-types.d.ts +109 -0
  687. package/dist/u0-primitives/command-palette/command-types.d.ts.map +1 -0
  688. package/dist/u0-primitives/command-palette/command-types.js +7 -0
  689. package/dist/u0-primitives/command-palette/commandStore.svelte.d.ts +100 -0
  690. package/dist/u0-primitives/command-palette/commandStore.svelte.d.ts.map +1 -0
  691. package/dist/u0-primitives/command-palette/commandStore.svelte.js +278 -0
  692. package/dist/u0-primitives/command-palette/index.d.ts +16 -0
  693. package/dist/u0-primitives/command-palette/index.d.ts.map +1 -0
  694. package/dist/u0-primitives/command-palette/index.js +14 -0
  695. package/{src → dist}/u0-primitives/dropdown/Dropdown.svelte +7 -4
  696. package/dist/u0-primitives/dropdown/Dropdown.svelte.d.ts +21 -0
  697. package/dist/u0-primitives/dropdown/Dropdown.svelte.d.ts.map +1 -0
  698. package/dist/u0-primitives/dropdown/Dropdown.test.js +108 -0
  699. package/dist/u0-primitives/dropdown/index.d.ts +3 -0
  700. package/dist/u0-primitives/dropdown/index.d.ts.map +1 -0
  701. package/dist/u0-primitives/dropdown/index.js +1 -0
  702. package/dist/u0-primitives/grant-badge/GrantStatusBadge.svelte +80 -0
  703. package/dist/u0-primitives/grant-badge/GrantStatusBadge.svelte.d.ts +9 -0
  704. package/dist/u0-primitives/grant-badge/GrantStatusBadge.svelte.d.ts.map +1 -0
  705. package/dist/u0-primitives/grant-badge/index.d.ts +2 -0
  706. package/dist/u0-primitives/grant-badge/index.d.ts.map +1 -0
  707. package/dist/u0-primitives/grant-badge/index.js +1 -0
  708. package/dist/u0-primitives/index.d.ts +27 -0
  709. package/dist/u0-primitives/index.d.ts.map +1 -0
  710. package/{src/u0-primitives/index.ts → dist/u0-primitives/index.js} +12 -22
  711. package/dist/u0-primitives/input/Input.svelte +410 -0
  712. package/dist/u0-primitives/input/Input.svelte.d.ts +32 -0
  713. package/dist/u0-primitives/input/Input.svelte.d.ts.map +1 -0
  714. package/dist/u0-primitives/input/Input.test.js +64 -0
  715. package/dist/u0-primitives/input/index.d.ts +3 -0
  716. package/dist/u0-primitives/input/index.d.ts.map +1 -0
  717. package/dist/u0-primitives/input/index.js +1 -0
  718. package/{src → dist}/u0-primitives/modal/Modal.svelte +1 -1
  719. package/dist/u0-primitives/modal/Modal.svelte.d.ts +31 -0
  720. package/dist/u0-primitives/modal/Modal.svelte.d.ts.map +1 -0
  721. package/dist/u0-primitives/modal/Modal.test.js +94 -0
  722. package/dist/u0-primitives/modal/index.d.ts +3 -0
  723. package/dist/u0-primitives/modal/index.d.ts.map +1 -0
  724. package/dist/u0-primitives/rsvp/RsvpReader.svelte +256 -0
  725. package/dist/u0-primitives/rsvp/RsvpReader.svelte.d.ts +13 -0
  726. package/dist/u0-primitives/rsvp/RsvpReader.svelte.d.ts.map +1 -0
  727. package/dist/u0-primitives/rsvp/rsvp-utils.d.ts +46 -0
  728. package/dist/u0-primitives/rsvp/rsvp-utils.d.ts.map +1 -0
  729. package/dist/u0-primitives/rsvp/rsvp-utils.js +92 -0
  730. package/{src → dist}/u0-primitives/spinner/Spinner.svelte +3 -3
  731. package/dist/u0-primitives/spinner/Spinner.svelte.d.ts +9 -0
  732. package/dist/u0-primitives/spinner/Spinner.svelte.d.ts.map +1 -0
  733. package/dist/u0-primitives/spinner/Spinner.test.js +58 -0
  734. package/dist/u0-primitives/spinner/index.d.ts +3 -0
  735. package/dist/u0-primitives/spinner/index.d.ts.map +1 -0
  736. package/dist/u0-primitives/spinner/index.js +1 -0
  737. package/dist/u0-primitives/steps/Steps.svelte +186 -0
  738. package/dist/u0-primitives/steps/Steps.svelte.d.ts +18 -0
  739. package/dist/u0-primitives/steps/Steps.svelte.d.ts.map +1 -0
  740. package/dist/u0-primitives/steps/index.d.ts +3 -0
  741. package/dist/u0-primitives/steps/index.d.ts.map +1 -0
  742. package/dist/u0-primitives/steps/index.js +1 -0
  743. package/{src → dist}/u0-primitives/tabs/Tabs.svelte +2 -2
  744. package/dist/u0-primitives/tabs/Tabs.svelte.d.ts +14 -0
  745. package/dist/u0-primitives/tabs/Tabs.svelte.d.ts.map +1 -0
  746. package/dist/u0-primitives/tabs/Tabs.test.js +81 -0
  747. package/dist/u0-primitives/tabs/index.d.ts +3 -0
  748. package/dist/u0-primitives/tabs/index.d.ts.map +1 -0
  749. package/dist/u0-primitives/tabs/index.js +1 -0
  750. package/dist/u0-primitives/tabs/tabs-types.d.ts +8 -0
  751. package/dist/u0-primitives/tabs/tabs-types.d.ts.map +1 -0
  752. package/dist/u0-primitives/tabs/tabs-types.js +3 -0
  753. package/{src → dist}/u0-primitives/toggle/Toggle.svelte +8 -10
  754. package/dist/u0-primitives/toggle/Toggle.svelte.d.ts +13 -0
  755. package/dist/u0-primitives/toggle/Toggle.svelte.d.ts.map +1 -0
  756. package/dist/u0-primitives/toggle/Toggle.test.js +46 -0
  757. package/dist/u0-primitives/toggle/index.d.ts +3 -0
  758. package/dist/u0-primitives/toggle/index.d.ts.map +1 -0
  759. package/dist/u0-primitives/toggle/index.js +1 -0
  760. package/{src → dist}/u0-primitives/tooltip/Tooltip.svelte +1 -1
  761. package/dist/u0-primitives/tooltip/Tooltip.svelte.d.ts +12 -0
  762. package/dist/u0-primitives/tooltip/Tooltip.svelte.d.ts.map +1 -0
  763. package/dist/u0-primitives/tooltip/Tooltip.test.js +150 -0
  764. package/dist/u0-primitives/tooltip/index.d.ts +3 -0
  765. package/dist/u0-primitives/tooltip/index.d.ts.map +1 -0
  766. package/dist/u0-primitives/tooltip/index.js +1 -0
  767. package/dist/u0-primitives/web-components/button-component.d.ts +13 -0
  768. package/dist/u0-primitives/web-components/button-component.d.ts.map +1 -0
  769. package/dist/u0-primitives/web-components/button-component.js +87 -0
  770. package/dist/u0-primitives/web-components/input-component.d.ts +13 -0
  771. package/dist/u0-primitives/web-components/input-component.d.ts.map +1 -0
  772. package/dist/u0-primitives/web-components/input-component.js +91 -0
  773. package/{src → dist}/v0-diagrams/DiagramPanel.svelte +1 -1
  774. package/dist/v0-diagrams/DiagramPanel.svelte.d.ts +10 -0
  775. package/dist/v0-diagrams/DiagramPanel.svelte.d.ts.map +1 -0
  776. package/dist/v0-diagrams/MarkmapDiagram.svelte.d.ts +9 -0
  777. package/dist/v0-diagrams/MarkmapDiagram.svelte.d.ts.map +1 -0
  778. package/dist/v0-diagrams/MermaidDiagram.svelte.d.ts +9 -0
  779. package/dist/v0-diagrams/MermaidDiagram.svelte.d.ts.map +1 -0
  780. package/{src/v0-diagrams/index.ts → dist/v0-diagrams/index.d.ts} +1 -0
  781. package/dist/v0-diagrams/index.d.ts.map +1 -0
  782. package/dist/v0-diagrams/index.js +3 -0
  783. package/dist/v0-diagrams/types.d.ts +25 -0
  784. package/dist/v0-diagrams/types.d.ts.map +1 -0
  785. package/dist/v0-diagrams/types.js +1 -0
  786. package/dist/v0-diagrams/v0-tokens.css +6 -0
  787. package/{src → dist}/x0-enchanted-blocks/components/EnchantedBlock.svelte +15 -15
  788. package/dist/x0-enchanted-blocks/components/EnchantedBlock.svelte.d.ts +28 -0
  789. package/dist/x0-enchanted-blocks/components/EnchantedBlock.svelte.d.ts.map +1 -0
  790. package/{src → dist}/x0-enchanted-blocks/components/NodepadBlock.svelte +13 -13
  791. package/dist/x0-enchanted-blocks/components/NodepadBlock.svelte.d.ts +11 -0
  792. package/dist/x0-enchanted-blocks/components/NodepadBlock.svelte.d.ts.map +1 -0
  793. package/dist/x0-enchanted-blocks/core/block-layout.d.ts +79 -0
  794. package/dist/x0-enchanted-blocks/core/block-layout.d.ts.map +1 -0
  795. package/dist/x0-enchanted-blocks/core/block-layout.js +135 -0
  796. package/dist/x0-enchanted-blocks/core/block-types.d.ts +56 -0
  797. package/dist/x0-enchanted-blocks/core/block-types.d.ts.map +1 -0
  798. package/dist/x0-enchanted-blocks/core/block-types.js +151 -0
  799. package/dist/x0-enchanted-blocks/index.d.ts +7 -0
  800. package/dist/x0-enchanted-blocks/index.d.ts.map +1 -0
  801. package/dist/x0-enchanted-blocks/index.js +13 -0
  802. package/package.json +129 -68
  803. package/src/base.css +48 -62
  804. package/src/d0-data-viz/d0-tokens.css +5 -5
  805. package/src/n0-node-graph/n0-tokens.css +4 -4
  806. package/src/n4-adaptive-manifold/n4-tokens.css +7 -7
  807. package/src/p0-primitives/tokens/control-room.css +6 -6
  808. package/src/p0-primitives/tokens/tokens.css +194 -87
  809. package/src/p0-primitives/tokens/tokens.json +114 -28
  810. package/src/p0-primitives/tokens/validity-tokens.css +83 -0
  811. package/src/u0-primitives/animated-icon/README.md +20 -3
  812. package/src/d0-data-viz/checkpoint-types.ts +0 -162
  813. package/src/d0-data-viz/index.ts +0 -58
  814. package/src/d0-data-viz/storage-map-types.ts +0 -142
  815. package/src/d0-data-viz/theme-integration.ts +0 -134
  816. package/src/d0-data-viz/types.ts +0 -53
  817. package/src/editor/index.ts +0 -2
  818. package/src/entity-graph-view/types.ts +0 -364
  819. package/src/epistemic/types.ts +0 -134
  820. package/src/epistemic/utils.ts +0 -32
  821. package/src/f0-forms/validation/validate.ts +0 -47
  822. package/src/fabric/data/index.ts +0 -21
  823. package/src/fabric/feedback/ToastContainer.svelte +0 -122
  824. package/src/fabric/input/CommandBar.svelte +0 -79
  825. package/src/fabric/layout/GlassBox.svelte +0 -193
  826. package/src/index.ts +0 -68
  827. package/src/l0-layout/block-writer/block-writer-types.ts +0 -63
  828. package/src/l0-layout/block-writer/markdown.ts +0 -110
  829. package/src/l0-layout/grove/grove-types.ts +0 -29
  830. package/src/n0-node-graph/node-port-types.ts +0 -19
  831. package/src/n0-node-graph/types.ts +0 -96
  832. package/src/n0-node-graph/validate.test.ts +0 -722
  833. package/src/n0-node-graph/validate.ts +0 -371
  834. package/src/n1-flow-canvas/graph-state.svelte.ts +0 -95
  835. package/src/n1-flow-canvas/layout.ts +0 -118
  836. package/src/n1-flow-canvas/layout.worker.ts +0 -128
  837. package/src/n1-flow-canvas/types.ts +0 -102
  838. package/src/n1-flow-canvas/utils.ts +0 -146
  839. package/src/n2-manifold-disk/poincare.ts +0 -184
  840. package/src/n3-force-graph/animated-edge.ts +0 -107
  841. package/src/n3-force-graph/health-node.ts +0 -128
  842. package/src/n3-force-graph/types.ts +0 -94
  843. package/src/n4-adaptive-manifold/classifier.ts +0 -139
  844. package/src/n4-adaptive-manifold/orchestrator.ts +0 -301
  845. package/src/n4-adaptive-manifold/phase-theme.ts +0 -92
  846. package/src/n4-adaptive-manifold/pinnacle-events.ts +0 -135
  847. package/src/n4-adaptive-manifold/providers/gravitational-provider.ts +0 -191
  848. package/src/n4-adaptive-manifold/providers/manifold-provider.ts +0 -276
  849. package/src/n4-adaptive-manifold/transition.ts +0 -90
  850. package/src/n4-adaptive-manifold/types.ts +0 -313
  851. package/src/p0-primitives/tokens/index.ts +0 -6
  852. package/src/p0-primitives/types/index.ts +0 -123
  853. package/src/p0-primitives/types/plugin-types.ts +0 -74
  854. package/src/p0-primitives/utils/index.ts +0 -39
  855. package/src/platform/hud-protocol.ts +0 -20
  856. package/src/s0-state/create-store.ts +0 -84
  857. package/src/s0-state/derived.ts +0 -41
  858. package/src/s0-state/index.ts +0 -6
  859. package/src/spatial/BspTilingCanvas.svelte +0 -232
  860. package/src/spatial/ForceCanvas.svelte +0 -289
  861. package/src/spatial/SnapZoomCamera.svelte +0 -185
  862. package/src/spatial/camera-types.ts +0 -45
  863. package/src/spatial/content-proportional-bsp.ts +0 -253
  864. package/src/spatial/force-canvas-types.ts +0 -102
  865. package/src/spatial/lod-types.ts +0 -70
  866. package/src/spatial/zone-tiler-types.ts +0 -177
  867. package/src/t0-transport/connection.ts +0 -34
  868. package/src/t0-transport/error.ts +0 -37
  869. package/src/t0-transport/events.ts +0 -50
  870. package/src/t0-transport/index.ts +0 -6
  871. package/src/t0-transport/invoke.ts +0 -30
  872. package/src/u0-primitives/allay-gauge/AllayGauge.svelte +0 -90
  873. package/src/u0-primitives/allay-gauge/index.ts +0 -1
  874. package/src/u0-primitives/animated-icon/index.ts +0 -31
  875. package/src/u0-primitives/assay-badge/AssayBadge.svelte +0 -121
  876. package/src/u0-primitives/assay-badge/AssaySignalBar.svelte +0 -83
  877. package/src/u0-primitives/assay-badge/index.ts +0 -2
  878. package/src/u0-primitives/expert-badge/ExpertBadge.svelte +0 -89
  879. package/src/u0-primitives/expert-badge/index.ts +0 -1
  880. package/src/u0-primitives/input/Input.svelte +0 -237
  881. package/src/u0-primitives/tabs/tabs-types.ts +0 -11
  882. package/src/v0-diagrams/types.ts +0 -28
  883. package/src/x0-enchanted-blocks/ENCHANTED_BLOCKS_SPEC.md +0 -457
  884. package/src/x0-enchanted-blocks/core/block-layout.ts +0 -211
  885. package/src/x0-enchanted-blocks/core/block-types.ts +0 -227
  886. package/src/x0-enchanted-blocks/index.ts +0 -46
  887. /package/{src/b0-app-shell/clarification-overlay/index.ts → dist/b0-app-shell/clarification-overlay/index.js} +0 -0
  888. /package/{src → dist}/demos/ControlRoomDemo.svelte +0 -0
  889. /package/{src/epistemic/index.ts → dist/epistemic/index.js} +0 -0
  890. /package/{src/g0-geo/index.ts → dist/g0-geo/index.js} +0 -0
  891. /package/{src → dist}/l0-layout/block-writer/BlockWriter.svelte +0 -0
  892. /package/{src → dist}/l0-layout/chat-view/ChatViewLayout.svelte +0 -0
  893. /package/{src/l0-layout/epistemic/index.ts → dist/l0-layout/epistemic/index.js} +0 -0
  894. /package/{src → dist}/l0-layout/grove/AccordCard.svelte +0 -0
  895. /package/{src → dist}/l0-layout/grove/GroveCard.svelte +0 -0
  896. /package/{src → dist}/l0-layout/grove/MemberBadge.svelte +0 -0
  897. /package/{src → dist}/l0-layout/grove/MemberList.svelte +0 -0
  898. /package/{src → dist}/l0-layout/kanban/KanbanCard.svelte +0 -0
  899. /package/{src → dist}/l0-layout/kanban/KanbanViewLayout.svelte +0 -0
  900. /package/{src → dist}/l0-layout/workspace/WorkspaceLayout.svelte +0 -0
  901. /package/{src → dist}/n0-node-graph/GraphEditor.svelte +0 -0
  902. /package/{src → dist}/n0-node-graph/GraphHistory.svelte +0 -0
  903. /package/{src → dist}/n0-node-graph/NodeCanvas.svelte +0 -0
  904. /package/{src → dist}/n0-node-graph/NodeEdge.svelte +0 -0
  905. /package/{src → dist}/n0-node-graph/NodePort.svelte +0 -0
  906. /package/{src → dist}/n2-manifold-disk/ManifoldDisk.svelte +0 -0
  907. /package/{src → dist}/n3-force-graph/GraphTooltip.svelte +0 -0
  908. /package/{src → dist}/stores/vaultStore.svelte +0 -0
  909. /package/{src/u0-primitives/modal/index.ts → dist/u0-primitives/modal/index.js} +0 -0
  910. /package/{src → dist}/v0-diagrams/MarkmapDiagram.svelte +0 -0
  911. /package/{src → dist}/v0-diagrams/MermaidDiagram.svelte +0 -0
  912. /package/{src → dist}/vite-env.d.ts +0 -0
@@ -1,457 +0,0 @@
1
- # Enchanted Blocks — Unified Spatial Content System
2
-
3
- ## Problem Statement
4
-
5
- Three KOS apps hit the same wall: **content doesn't fit**, and **enrichment is one-way**.
6
-
7
- - **Ryu**: Task descriptions, daemon logs, and epistemic assay results overflow their containers. We gave up on rich task content.
8
- - **Atelier**: Notes can't display KVE bidirectional enrichment. The canvas is static, not living.
9
- - **Nodepad** (external research): Proved spatial research works—auto-classification, inferred connections, synthesis emergence—but we never integrated it.
10
-
11
- ## Core Insight
12
-
13
- Content fitting is a **measurement problem**. Enrichment is a **rendering problem**. Both need:
14
- 1. **Deterministic text layout** without DOM reflow (Pretext)
15
- 2. **Adaptive card sizing** that grows/shrinks with content
16
- 3. **Bidirectional value flow** between cards and the KVE
17
- 4. **Three canonical views** for different cognitive modes
18
-
19
- ## Architecture
20
-
21
- ### New Module: `x0-enchanted-blocks`
22
-
23
- Location: `LEAP/design-system/src/x0-enchanted-blocks/`
24
-
25
- Exports:
26
- - `EnchantedBlock` — adaptive card component
27
- - `EnchantedCanvas` — spatial canvas with three view modes
28
- - `useBlockEnrichment` — KVE bidirectional hook
29
- - `BlockClassifier` — auto-type detection (14 types from nodepad)
30
- - `SynthesisEngine` — emergent bridging sentences
31
-
32
- ### 1. Adaptive Block Sizing (Pretext Integration)
33
-
34
- ```typescript
35
- // block-layout.ts — DOM-free measurement
36
- import { prepare, layout } from '@chenglou/pretext';
37
-
38
- export interface BlockMetrics {
39
- minWidth: number; // shrink-wrap width
40
- idealWidth: number; // optimal reading width (~65ch)
41
- height: number; // measured at target width
42
- lineCount: number; // for virtualization
43
- hasOverflow: boolean; // content exceeds max constraints
44
- }
45
-
46
- export function measureBlock(
47
- content: string,
48
- font: string,
49
- maxWidth: number,
50
- options?: { whiteSpace?: 'normal' | 'pre-wrap'; wordBreak?: 'normal' | 'keep-all' }
51
- ): BlockMetrics {
52
- const prepared = prepare(content, font, options);
53
- const { height, lineCount } = layout(prepared, maxWidth, 1.6 /* lineHeight */);
54
-
55
- // Shrink-wrap: find tightest width that doesn't increase line count
56
- const minWidth = measureNaturalWidth(prepared);
57
-
58
- return { minWidth, idealWidth: Math.min(520, maxWidth), height, lineCount, hasOverflow: height > 400 };
59
- }
60
- ```
61
-
62
- **Used by:**
63
- - `EnchantedBlock.svelte` — auto-height cards with overflow indicators
64
- - `VirtualCanvas.svelte` — accurate scrollbar/track sizing
65
- - `KanbanColumn.svelte` — column height pre-calculation
66
-
67
- ### 2. The 14 Block Types (Nodepad Classification)
68
-
69
- ```typescript
70
- export type BlockType =
71
- | 'claim' // Asserted truth
72
- | 'question' // Open inquiry
73
- | 'idea' // Proposed concept
74
- | 'task' // Action item (Ryu integration)
75
- | 'entity' // Named thing (person, org, concept)
76
- | 'quote' // External citation
77
- | 'reference' // Link/pointer
78
- | 'definition' // Term explanation
79
- | 'opinion' // Subjective stance
80
- | 'reflection' // Self-aware musing
81
- | 'narrative' // Story/time sequence
82
- | 'comparison' // Side-by-side analysis
83
- | 'thesis' // Synthesized position
84
- | 'general'; // Unclassified
85
-
86
- export interface EnchantedBlockData {
87
- id: string;
88
- type: BlockType;
89
- content: string; // Raw user input
90
- annotation?: string; // AI enrichment (what the note doesn't say)
91
- provenance: ProvenanceChain; // From Ryu's epistemic system
92
- connections: BlockConnection[]; // Inferred from content + KVE
93
- createdAt: number;
94
- modifiedAt: number;
95
- // Spatial state (canvas view)
96
- x?: number;
97
- y?: number;
98
- width?: number;
99
- height?: number;
100
- }
101
- ```
102
-
103
- **Visual encoding:**
104
- - Color border by type (brass/copper palette)
105
- - Icon badge (top-left)
106
- - Annotation appears on hover/focus (subtle expansion)
107
- - Connections shown as faint lines (opacity ∝ relevance)
108
-
109
- ### 3. Three Canonical Views
110
-
111
- ```typescript
112
- export type CanvasView = 'tiling' | 'kanban' | 'graph';
113
-
114
- // Tiling: BSP spatial layout (ZoneTiler)
115
- // - Blocks auto-size to content
116
- // - Drag dividers to resize zones
117
- // - Blocks reflow within zones
118
-
119
- // Kanban: Columnar by type
120
- // - Columns: [Unsorted | Claim | Question | Idea | Task | ...]
121
- // - Drag between columns = reclassify
122
- // - Column height = sum of measured block heights
123
-
124
- // Graph: Force-directed (N3 Force Graph)
125
- // - Nodes = blocks (sized by content)
126
- // - Edges = inferred connections
127
- // - Synthesis nodes emerge at high centrality
128
- ```
129
-
130
- ### 4. Bidirectional KVE Enrichment
131
-
132
- ```typescript
133
- // useBlockEnrichment.ts — Svelte 5 runes
134
- import { prepareWithSegments, walkLineRanges } from '@chenglou/pretext';
135
-
136
- export function useBlockEnrichment(blockId: string) {
137
- const enrichment = $state<EnrichmentState>({ status: 'idle' });
138
-
139
- // Outbound: Block content → KVE
140
- async function contributeToKVE(content: string, type: BlockType) {
141
- enrichment.status = 'contributing';
142
- await ryu_knowledge_ingest({
143
- content,
144
- type,
145
- provenance: { source: 'atelier', blockId }
146
- });
147
- enrichment.status = 'idle';
148
- }
149
-
150
- // Inbound: KVE → Block annotation
151
- async function fetchEnrichment(content: string) {
152
- enrichment.status = 'enriching';
153
- const result = await ryu_knowledge_epistemic_detail({ content });
154
-
155
- // Annotation = "something the note doesn't already say"
156
- enrichment.annotation = result.insights
157
- .filter(i => !content.toLowerCase().includes(i.text.toLowerCase()))
158
- .map(i => i.text)
159
- .join(' · ');
160
-
161
- // Inferred connections to other blocks
162
- enrichment.connections = result.related.map(r => ({
163
- targetId: r.blockId,
164
- strength: r.relevance,
165
- type: r.relationType // 'supports', 'contradicts', 'extends', 'similar'
166
- }));
167
-
168
- enrichment.status = 'idle';
169
- }
170
-
171
- return { enrichment, contributeToKVE, fetchEnrichment };
172
- }
173
- ```
174
-
175
- ### 5. Synthesis Emergence
176
-
177
- When enough blocks accumulate (threshold: 5+ with connection density > 0.3), the canvas offers a **synthesis**:
178
-
179
- ```typescript
180
- export interface Synthesis {
181
- id: string;
182
- type: 'thesis';
183
- content: string; // Single sentence bridging tensions
184
- bridges: string[]; // Block IDs that this synthesizes
185
- confidence: number;
186
- }
187
-
188
- // Triggered by: canvas block count change + connection density check
189
- // Source: ryu_think({ context: blockIds, mode: 'synthesize' })
190
- // Presentation: Floating pill at canvas center, dismissable
191
- // Solidify: Click → creates new 'thesis' block, auto-connected to bridged blocks
192
- ```
193
-
194
- ### 6. Component: EnchantedBlock
195
-
196
- ```svelte
197
- <!-- EnchantedBlock.svelte -->
198
- <script lang="ts">
199
- import { measureBlock } from './block-layout.js';
200
- import { useBlockEnrichment } from './useBlockEnrichment.svelte.js';
201
-
202
- interface Props {
203
- block: EnchantedBlockData;
204
- editable?: boolean;
205
- maxWidth?: number;
206
- onChange?: (block: EnchantedBlockData) => void;
207
- onTypeChange?: (type: BlockType) => void;
208
- }
209
-
210
- let { block, editable = false, maxWidth = 400, onChange, onTypeChange }: Props = $props();
211
-
212
- // DOM-free measurement
213
- const metrics = $derived(measureBlock(
214
- block.content,
215
- '14px "Sovereign Sans"',
216
- maxWidth,
217
- { whiteSpace: 'pre-wrap' }
218
- ));
219
-
220
- // KVE enrichment
221
- const { enrichment, contributeToKVE, fetchEnrichment } = useBlockEnrichment(block.id);
222
-
223
- // Debounced enrichment on content change
224
- $effect(() => {
225
- if (block.content.length > 10) {
226
- const timer = setTimeout(() => fetchEnrichment(block.content), 500);
227
- return () => clearTimeout(timer);
228
- }
229
- });
230
-
231
- let isEditing = $state(false);
232
- let isExpanded = $state(false);
233
- </script>
234
-
235
- <div
236
- class="enchanted-block type-{block.type}"
237
- style:width="{metrics.idealWidth}px"
238
- style:min-height="{Math.min(metrics.height, 200)}px"
239
- class:expanded={isExpanded}
240
- class:has-annotation={!!enrichment.annotation}
241
- >
242
- <!-- Type badge (click to reclassify) -->
243
- <button class="type-badge" onclick={() => onTypeChange?.(nextType(block.type))}>
244
- <Icon name={typeIcons[block.type]} />
245
- <span class="type-label">{block.type}</span>
246
- </button>
247
-
248
- <!-- Content -->
249
- {#if isEditing}
250
- <div
251
- contenteditable="true"
252
- class="block-content editable"
253
- bind:innerText={block.content}
254
- onblur={() => { isEditing = false; contributeToKVE(block.content, block.type); }}
255
- />
256
- {:else}
257
- <div
258
- class="block-content"
259
- ondblclick={() => editable && (isEditing = true)}
260
- >
261
- {@html renderMarkdown(block.content)}
262
- </div>
263
- {/if}
264
-
265
- <!-- Annotation (appears on hover/focus) -->
266
- {#if enrichment.annotation}
267
- <div class="annotation" class:visible={isExpanded}>
268
- <Icon name="Sparkles" />
269
- <span>{enrichment.annotation}</span>
270
- </div>
271
- {/if}
272
-
273
- <!-- Overflow indicator -->
274
- {#if metrics.hasOverflow}
275
- <button class="expand-hint" onclick={() => isExpanded = !isExpanded}>
276
- {isExpanded ? 'Collapse' : 'Expand'} ({metrics.lineCount} lines)
277
- </button>
278
- {/if}
279
-
280
- <!-- Connection handles (graph view only) -->
281
- <div class="connection-handles">
282
- {#each enrichment.connections as conn}
283
- <div class="connection-handle" style="--strength: {conn.strength}">
284
- <Icon name={relationIcons[conn.type]} />
285
- </div>
286
- {/each}
287
- </div>
288
- </div>
289
-
290
- <style>
291
- .enchanted-block {
292
- position: relative;
293
- background: var(--color-bg-elevated, #2a2a2a);
294
- border-left: 3px solid var(--type-color, #b87333);
295
- border-radius: var(--radius-md, 8px);
296
- padding: var(--space-3, 12px);
297
- transition: all 0.2s ease;
298
- }
299
-
300
- .type-claim { --type-color: #d4943a; }
301
- .type-question { --type-color: #6b8ce6; }
302
- .type-idea { --type-color: #7cb97a; }
303
- .type-task { --type-color: #b87333; }
304
- /* ... etc for all 14 types */
305
-
306
- .annotation {
307
- opacity: 0;
308
- max-height: 0;
309
- overflow: hidden;
310
- transition: all 0.3s ease;
311
- font-size: var(--text-xs, 11px);
312
- color: var(--color-text-muted, #a09880);
313
- font-style: italic;
314
- }
315
-
316
- .enchanted-block:hover .annotation,
317
- .annotation.visible {
318
- opacity: 1;
319
- max-height: 100px;
320
- margin-top: var(--space-2, 8px);
321
- }
322
-
323
- .expanded {
324
- max-height: none;
325
- }
326
- </style>
327
- ```
328
-
329
- ## Integration Points
330
-
331
- ### Ryu Tasks
332
-
333
- Current: Task list with truncated descriptions.
334
-
335
- With Enchanted Blocks:
336
- - Tasks become `type: 'task'` blocks
337
- - Full descriptions visible via measured height
338
- - Epistemic assay results shown as annotations
339
- - Task connections = dependencies (inferred from content)
340
-
341
- ### Atelier Notes
342
-
343
- Current: Static markdown notes.
344
-
345
- With Enchanted Blocks:
346
- - Notes auto-classify into 14 types
347
- - KVE enrichment appears as annotations
348
- - Bidirectional: notes contribute to KVE, KVE enriches notes
349
- - Three views: tiling (BSP), kanban (by type), graph (connections)
350
-
351
- ### BlockWriter
352
-
353
- Current: Visual block-based writing with BSP zones.
354
-
355
- With Enchanted Blocks:
356
- - Each writing block is an EnchantedBlock
357
- - Content measurement prevents overflow
358
- - Synthesis emerges from connected blocks
359
- - Export to thesis/node with full provenance
360
-
361
- ## Implementation Roadmap
362
-
363
- ### Phase 1: Foundation (Week 1)
364
- - [ ] Add `@chenglou/pretext` dependency to design-system
365
- - [ ] Create `block-layout.ts` with measurement primitives
366
- - [ ] Create `EnchantedBlock.svelte` with auto-sizing
367
-
368
- ### Phase 2: Classification (Week 2)
369
- - [ ] Implement 14-type classifier (local regex + LLM fallback)
370
- - [ ] Type badge UI with click-to-reclassify
371
- - [ ] Color palette per type (brass/copper variants)
372
-
373
- ### Phase 3: Enrichment (Week 3)
374
- - [ ] `useBlockEnrichment` hook with KVE integration
375
- - [ ] Annotation display (hover/focus expansion)
376
- - [ ] Connection inference from `ryu_knowledge_epistemic_detail`
377
-
378
- ### Phase 4: Canvas (Week 4)
379
- - [ ] `EnchantedCanvas.svelte` with three view modes
380
- - [ ] Tiling: integrate with existing ZoneTiler
381
- - [ ] Kanban: columnar layout with drag-to-reclassify
382
- - [ ] Graph: integrate with N3 Force Graph
383
-
384
- ### Phase 5: Synthesis (Week 5)
385
- - [ ] Synthesis engine (density detection + `ryu_think`)
386
- - [ ] Floating thesis pill UI
387
- - [ ] Solidify flow (thesis block creation)
388
-
389
- ## File Structure
390
-
391
- ```
392
- src/x0-enchanted-blocks/
393
- ├── index.ts # Public exports
394
- ├── ENCHANTED_BLOCKS_SPEC.md # This document
395
- ├──
396
- ├── core/
397
- │ ├── block-layout.ts # Pretext measurement
398
- │ ├── block-types.ts # 14 types + icons
399
- │ ├── classifier.ts # Auto-type detection
400
- │ └── synthesis.ts # Emergence detection
401
-
402
- ├── components/
403
- │ ├── EnchantedBlock.svelte # Adaptive card
404
- │ ├── EnchantedCanvas.svelte # Three-view canvas
405
- │ ├── TypeBadge.svelte # Clickable type indicator
406
- │ ├── Annotation.svelte # Enrichment display
407
- │ └── ConnectionLine.svelte # SVG connection
408
-
409
- ├── hooks/
410
- │ └── useBlockEnrichment.svelte.ts # KVE bidirectional
411
-
412
- └── views/
413
- ├── TilingView.svelte # BSP spatial (ZoneTiler)
414
- ├── KanbanView.svelte # Columnar by type
415
- └── GraphView.svelte # Force-directed (N3)
416
- ```
417
-
418
- ## Dependencies
419
-
420
- ```json
421
- {
422
- "dependencies": {
423
- "@chenglou/pretext": "^1.0.0"
424
- },
425
- "peerDependencies": {
426
- "svelte": "^5.0.0"
427
- }
428
- }
429
- ```
430
-
431
- ## Success Metrics
432
-
433
- 1. **No overflow**: 100% of blocks display full content without truncation
434
- 2. **Enrichment coverage**: 80%+ of blocks have KVE annotations within 2s of edit
435
- 3. **Synthesis quality**: User accepts 50%+ of suggested thesis statements
436
- 4. **View switching**: <100ms to switch between tiling/kanban/graph
437
- 5. **Measurement speed**: <16ms for blocks up to 1000 characters
438
-
439
- ## KVE Integration Commands
440
-
441
- Leverages existing Ryu commands:
442
- - `ryu_knowledge_ingest` — outbound contribution
443
- - `ryu_knowledge_epistemic_detail` — inbound enrichment
444
- - `ryu_think` — synthesis generation
445
- - `ryu_knowledge_provenance_chain` — provenance display
446
-
447
- ## Open Questions
448
-
449
- 1. Should synthesis be automatic or user-triggered?
450
- 2. How to handle very long content (>10k chars) in blocks?
451
- 3. Should connections be editable or purely inferred?
452
- 4. Export format: `.nodepad` JSON, `.md`, or KOS-native?
453
-
454
- ---
455
-
456
- *Spec version: 2026-04-09*
457
- *Status: Draft for review*
@@ -1,211 +0,0 @@
1
- // Block Layout Engine — DOM-free text measurement using Pretext
2
- // Provides accurate sizing for adaptive block rendering
3
-
4
- import { prepareWithSegments, layout, measureNaturalWidth as pretextMeasureNatural } from '@chenglou/pretext';
5
-
6
- /** Layout options for text measurement */
7
- export interface LayoutOptions {
8
- /** White space handling: 'normal' (collapse) or 'pre-wrap' (preserve) */
9
- whiteSpace?: 'normal' | 'pre-wrap';
10
- /** Word breaking: 'normal' (break at word boundaries) or 'keep-all' (CJK/Hangul) */
11
- wordBreak?: 'normal' | 'keep-all';
12
- }
13
-
14
- /** Metrics returned from block measurement */
15
- export interface BlockMetrics {
16
- /** Minimum width before text wraps to additional lines (shrink-wrap) */
17
- minWidth: number;
18
- /** Optimal reading width (~65 characters) */
19
- idealWidth: number;
20
- /** Total height at the measured width */
21
- height: number;
22
- /** Number of lines at the measured width */
23
- lineCount: number;
24
- /** True if content exceeds reasonable display limits */
25
- hasOverflow: boolean;
26
- /** The font string used for measurement */
27
- font: string;
28
- }
29
-
30
- /** Default font configuration matching KOS design system */
31
- export const DEFAULT_FONT = '14px "Sovereign Sans", system-ui, -apple-system, sans-serif';
32
-
33
- /** Default monospace font for code/preformatted content */
34
- export const DEFAULT_MONO_FONT = '13px "Sovereign Mono", "SF Mono", Monaco, "Cascadia Code", monospace';
35
-
36
- /** Ideal reading width in pixels (~65ch at 14px) */
37
- export const IDEAL_READING_WIDTH = 520;
38
-
39
- /** Maximum reasonable block height before overflow indicator */
40
- export const MAX_BLOCK_HEIGHT = 400;
41
-
42
- /** Maximum characters before overflow detection */
43
- export const MAX_CONTENT_LENGTH = 5000;
44
-
45
- /**
46
- * Measure block content using Pretext's DOM-free layout engine.
47
- *
48
- * This function uses canvas-based text measurement for accurate sizing
49
- * without triggering DOM layout/reflow cycles.
50
- *
51
- * @param content - The text content to measure
52
- * @param font - Font specification string (defaults to DEFAULT_FONT)
53
- * @param maxWidth - Maximum container width constraint
54
- * @param options - Layout options (whiteSpace, wordBreak)
55
- * @param lineHeight - Line height multiplier (default: 1.6)
56
- * @returns BlockMetrics with sizing information
57
- *
58
- * @example
59
- * ```typescript
60
- * const metrics = measureBlock(
61
- * 'Task: Implement authentication system with OAuth2 support',
62
- * '14px Inter',
63
- * 400,
64
- * { whiteSpace: 'normal' }
65
- * );
66
- * // metrics.height → precise pixel height
67
- * // metrics.lineCount → number of wrapped lines
68
- * ```
69
- */
70
- export function measureBlock(
71
- content: string,
72
- font: string = DEFAULT_FONT,
73
- maxWidth: number = IDEAL_READING_WIDTH,
74
- options: LayoutOptions = {},
75
- lineHeight: number = 1.6
76
- ): BlockMetrics {
77
- // SSR Safety: Pretext requires DOM/Canvas. Return safe defaults if run on server.
78
- if (typeof window === 'undefined') {
79
- return {
80
- minWidth: 0,
81
- idealWidth: Math.min(IDEAL_READING_WIDTH, maxWidth),
82
- height: lineHeight * 14,
83
- lineCount: 1,
84
- hasOverflow: false,
85
- font,
86
- };
87
- }
88
-
89
- // Handle empty content
90
- if (!content || content.length === 0) {
91
- return {
92
- minWidth: 0,
93
- idealWidth: Math.min(IDEAL_READING_WIDTH, maxWidth),
94
- height: lineHeight * 14, // One line height
95
- lineCount: 1,
96
- hasOverflow: false,
97
- font,
98
- };
99
- }
100
-
101
- // Truncate extremely long content to prevent performance issues
102
- const truncatedContent = content.length > MAX_CONTENT_LENGTH
103
- ? content.slice(0, MAX_CONTENT_LENGTH) + '…'
104
- : content;
105
-
106
- // Prepare text for measurement (one-time work)
107
- const prepared = prepareWithSegments(truncatedContent, font, {
108
- whiteSpace: options.whiteSpace ?? 'normal',
109
- wordBreak: options.wordBreak ?? 'normal',
110
- });
111
-
112
- // Measure at the target width
113
- const { height, lineCount } = layout(prepared, maxWidth, lineHeight);
114
-
115
- // Calculate shrink-wrap width (tightest fit)
116
- const minWidth = pretextMeasureNatural(prepared);
117
-
118
- // Determine ideal width (between min and max, capped at reading width)
119
- const idealWidth = Math.min(
120
- Math.max(minWidth, Math.min(IDEAL_READING_WIDTH, maxWidth)),
121
- maxWidth
122
- );
123
-
124
- // Detect overflow conditions
125
- const hasOverflow = height > MAX_BLOCK_HEIGHT || content.length > MAX_CONTENT_LENGTH;
126
-
127
- return {
128
- minWidth,
129
- idealWidth,
130
- height,
131
- lineCount,
132
- hasOverflow,
133
- font,
134
- };
135
- }
136
-
137
- /**
138
- * Quick measurement for content previews (truncated at first overflow).
139
- * Returns faster results for long content by sampling first N characters.
140
- */
141
- export function measureBlockPreview(
142
- content: string,
143
- font: string = DEFAULT_FONT,
144
- maxWidth: number = IDEAL_READING_WIDTH,
145
- maxLines: number = 10
146
- ): BlockMetrics {
147
- const previewLength = 1000; // Sample size for preview
148
- const previewContent = content.length > previewLength
149
- ? content.slice(0, previewLength) + '…'
150
- : content;
151
-
152
- const metrics = measureBlock(previewContent, font, maxWidth);
153
-
154
- // Cap line count for preview
155
- if (metrics.lineCount > maxLines) {
156
- const lineHeight = 1.6 * 14; // approximate
157
- return {
158
- ...metrics,
159
- lineCount: maxLines,
160
- height: maxLines * lineHeight,
161
- hasOverflow: true,
162
- };
163
- }
164
-
165
- return { ...metrics, hasOverflow: content.length > previewLength };
166
- }
167
-
168
- /**
169
- * Measure multiple blocks efficiently with shared font preparation.
170
- * Useful for virtualized lists where font is constant.
171
- */
172
- export function measureBlocksBatch(
173
- contents: string[],
174
- font: string = DEFAULT_FONT,
175
- maxWidth: number = IDEAL_READING_WIDTH
176
- ): BlockMetrics[] {
177
- return contents.map(content => measureBlock(content, font, maxWidth));
178
- }
179
-
180
- /**
181
- * Calculate total canvas height for a collection of blocks.
182
- * Includes spacing between blocks.
183
- */
184
- export function calculateCanvasHeight(
185
- metrics: BlockMetrics[],
186
- spacing: number = 16,
187
- padding: number = 24
188
- ): number {
189
- const contentHeight = metrics.reduce((sum, m) => sum + m.height, 0);
190
- const spacingHeight = Math.max(0, metrics.length - 1) * spacing;
191
- return padding * 2 + contentHeight + spacingHeight;
192
- }
193
-
194
- /**
195
- * Determine optimal column width for kanban-style layouts.
196
- * Balances content width against container constraints.
197
- */
198
- export function calculateOptimalColumnWidth(
199
- allMetrics: BlockMetrics[],
200
- containerWidth: number,
201
- columnCount: number,
202
- minColumnWidth: number = 280
203
- ): number {
204
- const maxContentWidth = Math.max(...allMetrics.map(m => m.minWidth));
205
- const availableWidth = (containerWidth - (columnCount - 1) * 16) / columnCount;
206
-
207
- return Math.max(
208
- minColumnWidth,
209
- Math.min(maxContentWidth + 48, availableWidth) // +48 for padding
210
- );
211
- }