@stephen-netu/design-system 0.2.1 → 0.5.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 (359) hide show
  1. package/dist/b0-app-shell/clarification-overlay/ClarificationOverlay.svelte +10 -2
  2. package/dist/b0-app-shell/clarification-overlay/ClarificationOverlay.svelte.d.ts.map +1 -1
  3. package/dist/b0-app-shell/{command-bar/CommandBar.svelte → global-command-bar/GlobalCommandBar.svelte} +75 -75
  4. package/dist/b0-app-shell/{command-bar/CommandBar.svelte.d.ts → global-command-bar/GlobalCommandBar.svelte.d.ts} +6 -6
  5. package/dist/b0-app-shell/global-command-bar/GlobalCommandBar.svelte.d.ts.map +1 -0
  6. package/dist/b0-app-shell/index.d.ts +1 -1
  7. package/dist/b0-app-shell/index.d.ts.map +1 -1
  8. package/dist/b0-app-shell/index.js +1 -1
  9. package/dist/d0-data-viz/BarChart.test.js +53 -0
  10. package/dist/d0-data-viz/CheckpointBar.test.js +83 -0
  11. package/dist/d0-data-viz/CheckpointPill.svelte +8 -3
  12. package/dist/d0-data-viz/CheckpointPill.svelte.d.ts.map +1 -1
  13. package/dist/d0-data-viz/CheckpointPill.test.js +78 -0
  14. package/dist/d0-data-viz/ConnectionHealth.test.js +70 -0
  15. package/dist/d0-data-viz/MetricCard.test.js +57 -0
  16. package/dist/d0-data-viz/SparkLine.test.js +47 -0
  17. package/dist/d0-data-viz/StorageMap.test.js +63 -0
  18. package/dist/d0-data-viz/Timeline.test.js +62 -0
  19. package/dist/d0-data-viz/WorldLineTimeline.test.js +99 -0
  20. package/dist/d0-data-viz/checkpoint-types.js +1 -1
  21. package/dist/d0-data-viz/storage-map-types.d.ts.map +1 -1
  22. package/dist/d0-data-viz/storage-map-types.js +6 -3
  23. package/dist/d0-data-viz/theme-integration.d.ts +3 -3
  24. package/dist/d0-data-viz/theme-integration.js +4 -4
  25. package/dist/d0-data-viz/theme-integration.test.js +41 -0
  26. package/dist/demos/AmbientPrimitivesDemo.svelte +103 -0
  27. package/dist/demos/AmbientPrimitivesDemo.svelte.d.ts +5 -0
  28. package/dist/demos/AmbientPrimitivesDemo.svelte.d.ts.map +1 -0
  29. package/dist/demos/BspSizingInfographic.svelte +3 -32
  30. package/dist/demos/NodepadBlocksShowcase.svelte +2 -1
  31. package/dist/demos/NodepadBlocksShowcase.svelte.d.ts.map +1 -1
  32. package/dist/demos/index.d.ts +1 -0
  33. package/dist/demos/index.d.ts.map +1 -1
  34. package/dist/demos/index.js +1 -0
  35. package/dist/editor/CodeEditor.svelte +83 -26
  36. package/dist/editor/CodeEditor.svelte.d.ts +0 -1
  37. package/dist/editor/CodeEditor.svelte.d.ts.map +1 -1
  38. package/dist/editor/CodeEditor.test.js +38 -0
  39. package/dist/editor/ExternalChangeDialog.svelte +117 -0
  40. package/dist/editor/ExternalChangeDialog.svelte.d.ts +13 -0
  41. package/dist/editor/ExternalChangeDialog.svelte.d.ts.map +1 -0
  42. package/dist/editor/FindReplaceDialog.svelte +32 -32
  43. package/dist/editor/MarkdownEditor.svelte +105 -605
  44. package/dist/editor/MarkdownEditor.svelte.d.ts +1 -1
  45. package/dist/editor/MarkdownEditor.svelte.d.ts.map +1 -1
  46. package/dist/editor/MarkdownEditor.test.js +38 -0
  47. package/dist/editor/codemirror-config.d.ts +36 -0
  48. package/dist/editor/codemirror-config.d.ts.map +1 -0
  49. package/dist/editor/codemirror-config.js +87 -0
  50. package/dist/editor/components/CorrectionTooltip.svelte +180 -160
  51. package/dist/editor/components/CorrectionTooltip.svelte.d.ts +7 -23
  52. package/dist/editor/components/CorrectionTooltip.svelte.d.ts.map +1 -1
  53. package/dist/editor/extensions/autocomplete.d.ts +2 -2
  54. package/dist/editor/extensions/autocomplete.d.ts.map +1 -1
  55. package/dist/editor/extensions/autocomplete.test.js +121 -0
  56. package/dist/editor/extensions/spellcheck.d.ts +21 -3
  57. package/dist/editor/extensions/spellcheck.d.ts.map +1 -1
  58. package/dist/editor/extensions/spellcheck.js +51 -9
  59. package/dist/editor/extensions/spellcheck.test.js +168 -0
  60. package/dist/editor/extensions/types.d.ts +2 -1
  61. package/dist/editor/extensions/types.d.ts.map +1 -1
  62. package/dist/editor/index.d.ts +2 -1
  63. package/dist/editor/index.d.ts.map +1 -1
  64. package/dist/editor/index.js +1 -0
  65. package/dist/editor/markdown-preview.d.ts +9 -0
  66. package/dist/editor/markdown-preview.d.ts.map +1 -0
  67. package/dist/editor/markdown-preview.js +19 -0
  68. package/dist/editor/markdown-preview.test.js +38 -0
  69. package/dist/editor/useCodeMirror.d.ts +23 -0
  70. package/dist/editor/useCodeMirror.d.ts.map +1 -0
  71. package/dist/editor/useCodeMirror.js +40 -0
  72. package/dist/editor/useFilePersistence.d.ts +32 -0
  73. package/dist/editor/useFilePersistence.d.ts.map +1 -0
  74. package/dist/editor/useFilePersistence.js +117 -0
  75. package/dist/entity-graph-view/WorldView.svelte +1 -1
  76. package/dist/fabric/ai/ChatPanel.svelte +84 -85
  77. package/dist/fabric/ai/ChatPanel.svelte.d.ts.map +1 -1
  78. package/dist/fabric/ai/ResearchPanel.svelte +35 -25
  79. package/dist/fabric/ai/ResearchPanel.svelte.d.ts.map +1 -1
  80. package/dist/fabric/data/FileTree.svelte +195 -0
  81. package/dist/fabric/data/FileTree.svelte.d.ts +19 -0
  82. package/dist/fabric/data/FileTree.svelte.d.ts.map +1 -0
  83. package/dist/fabric/data/FileTree.test.js +127 -0
  84. package/dist/fabric/data/index.d.ts +5 -9
  85. package/dist/fabric/data/index.d.ts.map +1 -1
  86. package/dist/fabric/data/index.js +4 -1
  87. package/dist/fabric/index.d.ts +5 -5
  88. package/dist/fabric/index.d.ts.map +1 -1
  89. package/dist/fabric/index.js +5 -3
  90. package/dist/fabric/input/{CommandBar.svelte → AppHeaderBar.svelte} +13 -13
  91. package/dist/fabric/input/{CommandBar.svelte.d.ts → AppHeaderBar.svelte.d.ts} +5 -5
  92. package/dist/fabric/input/AppHeaderBar.svelte.d.ts.map +1 -0
  93. package/dist/fabric/input/{CommandBar.test.js → AppHeaderBar.test.js} +9 -9
  94. package/dist/fabric/input/KeyboardShortcuts.svelte +23 -21
  95. package/dist/fabric/input/index.d.ts +2 -2
  96. package/dist/fabric/input/index.d.ts.map +1 -1
  97. package/dist/fabric/input/index.js +1 -1
  98. package/dist/fabric/layout/CollapsiblePanel.svelte +8 -10
  99. package/dist/fabric/layout/KanbanBoard.svelte +25 -155
  100. package/dist/fabric/layout/KanbanBoard.svelte.d.ts +2 -26
  101. package/dist/fabric/layout/KanbanBoard.svelte.d.ts.map +1 -1
  102. package/dist/fabric/layout/KanbanBoard.test.js +125 -10
  103. package/dist/fabric/layout/KanbanCard.svelte +27 -223
  104. package/dist/fabric/layout/KanbanCard.svelte.d.ts +2 -19
  105. package/dist/fabric/layout/KanbanCard.svelte.d.ts.map +1 -1
  106. package/dist/fabric/layout/KanbanColumn.svelte +41 -275
  107. package/dist/fabric/layout/KanbanColumn.svelte.d.ts +2 -22
  108. package/dist/fabric/layout/KanbanColumn.svelte.d.ts.map +1 -1
  109. package/dist/fabric/layout/index.d.ts +2 -5
  110. package/dist/fabric/layout/index.d.ts.map +1 -1
  111. package/dist/fabric/layout/index.js +1 -1
  112. package/dist/fabric/navigation/ActivityRail.svelte +3 -5
  113. package/dist/fabric/navigation/ActivityRail.svelte.d.ts.map +1 -1
  114. package/dist/g0-generative/components/Text.svelte +38 -0
  115. package/dist/g0-generative/components/Text.svelte.d.ts +9 -0
  116. package/dist/g0-generative/components/Text.svelte.d.ts.map +1 -0
  117. package/dist/g0-generative/index.d.ts +1 -0
  118. package/dist/g0-generative/index.d.ts.map +1 -1
  119. package/dist/g0-generative/index.js +1 -0
  120. package/dist/g0-generative/library/ComponentLibrary.d.ts +4 -0
  121. package/dist/g0-generative/library/ComponentLibrary.d.ts.map +1 -1
  122. package/dist/g0-generative/library/ComponentLibrary.js +10 -0
  123. package/dist/g0-generative/library/ComponentLibrary.test.js +135 -0
  124. package/dist/g0-generative/renderer/OpenUIRenderer.svelte +16 -56
  125. package/dist/g0-generative/renderer/OpenUIRenderer.svelte.d.ts.map +1 -1
  126. package/dist/g0-generative/renderer/OpenUIRenderer.test.js +143 -0
  127. package/dist/g0-geo/SovereignMap.svelte +13 -13
  128. package/dist/g0-geo/SovereignMap.svelte.d.ts.map +1 -1
  129. package/dist/index.d.ts +0 -1
  130. package/dist/index.d.ts.map +1 -1
  131. package/dist/index.js +7 -3
  132. package/dist/l0-layout/SectionSplitter.svelte +5 -5
  133. package/dist/l0-layout/block-writer/BlockContent.svelte +23 -22
  134. package/dist/l0-layout/block-writer/BlockContent.svelte.d.ts.map +1 -1
  135. package/dist/l0-layout/block-writer/BlockContent.test.js +47 -0
  136. package/dist/l0-layout/block-writer/BlockItem.svelte +6 -4
  137. package/dist/l0-layout/block-writer/markdown.js +11 -11
  138. package/dist/l0-layout/block-writer/markdown.test.js +81 -0
  139. package/dist/l0-layout/card/CompactCard.svelte +4 -3
  140. package/dist/l0-layout/card/StackedCard.svelte +87 -0
  141. package/dist/l0-layout/card/StackedCard.svelte.d.ts +9 -0
  142. package/dist/l0-layout/card/StackedCard.svelte.d.ts.map +1 -0
  143. package/dist/l0-layout/card/StackedCard.test.js +29 -0
  144. package/dist/l0-layout/grant/GrantCard.svelte +15 -5
  145. package/dist/l0-layout/grant/GrantCard.svelte.d.ts.map +1 -1
  146. package/dist/l0-layout/index.d.ts +3 -0
  147. package/dist/l0-layout/index.d.ts.map +1 -1
  148. package/dist/l0-layout/index.js +2 -0
  149. package/dist/l0-layout/kanban/KanbanBoard.svelte +246 -29
  150. package/dist/l0-layout/kanban/KanbanBoard.svelte.d.ts +28 -2
  151. package/dist/l0-layout/kanban/KanbanBoard.svelte.d.ts.map +1 -1
  152. package/dist/l0-layout/kanban/KanbanCard.svelte +175 -150
  153. package/dist/l0-layout/kanban/KanbanCard.svelte.d.ts +16 -18
  154. package/dist/l0-layout/kanban/KanbanCard.svelte.d.ts.map +1 -1
  155. package/dist/l0-layout/kanban/KanbanColumn.svelte +152 -78
  156. package/dist/l0-layout/kanban/KanbanColumn.svelte.d.ts +28 -7
  157. package/dist/l0-layout/kanban/KanbanColumn.svelte.d.ts.map +1 -1
  158. package/dist/l0-layout/kanban/index.d.ts +6 -0
  159. package/dist/l0-layout/kanban/index.d.ts.map +1 -0
  160. package/dist/l0-layout/kanban/index.js +3 -0
  161. package/dist/n0-node-graph/Node.svelte +2 -2
  162. package/dist/n0-node-graph/NodePalette.svelte +2 -2
  163. package/dist/n1-flow-canvas/FlowCanvas.svelte +50 -6
  164. package/dist/n1-flow-canvas/FlowCanvas.svelte.d.ts.map +1 -1
  165. package/dist/n1-flow-canvas/graph-state.test.js +69 -0
  166. package/dist/n1-flow-canvas/index.d.ts +2 -0
  167. package/dist/n1-flow-canvas/index.d.ts.map +1 -1
  168. package/dist/n1-flow-canvas/index.js +1 -0
  169. package/dist/n1-flow-canvas/pipeline-adapter.d.ts +37 -0
  170. package/dist/n1-flow-canvas/pipeline-adapter.d.ts.map +1 -0
  171. package/dist/n1-flow-canvas/pipeline-adapter.js +160 -0
  172. package/dist/n1-flow-canvas/utils.test.js +116 -0
  173. package/dist/n2-manifold-disk/ManifoldDisk.svelte +62 -35
  174. package/dist/n2-manifold-disk/ManifoldDisk.svelte.d.ts.map +1 -1
  175. package/dist/n3-force-graph/GraphTooltip.svelte +2 -2
  176. package/dist/n4-adaptive-manifold/AdaptiveManifold.svelte +34 -29
  177. package/dist/n4-adaptive-manifold/AdaptiveManifold.svelte.d.ts.map +1 -1
  178. package/dist/n4-adaptive-manifold/classifier.test.js +104 -0
  179. package/dist/n4-adaptive-manifold/n4-tokens.css +2 -2
  180. package/dist/n4-adaptive-manifold/types.d.ts +3 -0
  181. package/dist/n4-adaptive-manifold/types.d.ts.map +1 -1
  182. package/dist/p0-primitives/ThemeProvider.svelte +38 -18
  183. package/dist/p0-primitives/ThemeProvider.svelte.d.ts +6 -1
  184. package/dist/p0-primitives/ThemeProvider.svelte.d.ts.map +1 -1
  185. package/dist/p0-primitives/canvas-theme.d.ts +33 -1
  186. package/dist/p0-primitives/canvas-theme.d.ts.map +1 -1
  187. package/dist/p0-primitives/canvas-theme.js +82 -17
  188. package/dist/p0-primitives/debug.d.ts +6 -0
  189. package/dist/p0-primitives/debug.d.ts.map +1 -0
  190. package/dist/p0-primitives/debug.js +21 -0
  191. package/dist/p0-primitives/index.d.ts +2 -1
  192. package/dist/p0-primitives/index.d.ts.map +1 -1
  193. package/dist/p0-primitives/index.js +1 -0
  194. package/dist/p0-primitives/theme-context.d.ts +9 -0
  195. package/dist/p0-primitives/theme-context.d.ts.map +1 -0
  196. package/dist/p0-primitives/theme-context.js +8 -0
  197. package/dist/p0-primitives/theme.d.ts.map +1 -1
  198. package/dist/p0-primitives/theme.js +11 -31
  199. package/dist/p0-primitives/tokens/ambient.css +76 -0
  200. package/dist/p0-primitives/tokens/tokens.css +140 -34
  201. package/dist/p0-primitives/utils/index.d.ts +4 -2
  202. package/dist/p0-primitives/utils/index.d.ts.map +1 -1
  203. package/dist/p0-primitives/utils/index.js +1 -0
  204. package/dist/p0-primitives/utils/reveal.d.ts +15 -0
  205. package/dist/p0-primitives/utils/reveal.d.ts.map +1 -0
  206. package/dist/p0-primitives/utils/reveal.js +29 -0
  207. package/dist/p0-primitives/utils/reveal.test.js +95 -0
  208. package/dist/s0-state/SyncStatus.svelte +2 -2
  209. package/dist/s0-state/ThemeStore.svelte.d.ts +3 -2
  210. package/dist/s0-state/ThemeStore.svelte.d.ts.map +1 -1
  211. package/dist/s0-state/ThemeStore.svelte.js +20 -1
  212. package/dist/s0-state/index.d.ts +2 -2
  213. package/dist/s0-state/index.d.ts.map +1 -1
  214. package/dist/s0-state/index.js +3 -0
  215. package/dist/s0-state/modal-stack-store.svelte.d.ts +27 -2
  216. package/dist/s0-state/modal-stack-store.svelte.d.ts.map +1 -1
  217. package/dist/s0-state/modal-stack-store.svelte.js +21 -2
  218. package/dist/showcase/Showcase.svelte +43 -34
  219. package/dist/showcase/Showcase.svelte.d.ts.map +1 -1
  220. package/dist/spatial/BspTilingCanvas.svelte +5 -5
  221. package/dist/spatial/BspTilingSimulation.test.js +88 -0
  222. package/dist/spatial/CameraController.test.js +120 -0
  223. package/dist/spatial/ForceCanvas.svelte +18 -13
  224. package/dist/spatial/ForceCanvas.svelte.d.ts.map +1 -1
  225. package/dist/spatial/ForceSimulation.svelte.d.ts.map +1 -1
  226. package/dist/spatial/ForceSimulation.svelte.js +33 -22
  227. package/dist/spatial/LodRenderer.svelte +14 -1
  228. package/dist/spatial/LodRenderer.svelte.d.ts.map +1 -1
  229. package/dist/spatial/ParticleAssembleMark.svelte +285 -0
  230. package/dist/spatial/ParticleAssembleMark.svelte.d.ts +24 -0
  231. package/dist/spatial/ParticleAssembleMark.svelte.d.ts.map +1 -0
  232. package/dist/spatial/SnapZoomCamera.svelte +23 -13
  233. package/dist/spatial/SnapZoomCamera.svelte.d.ts.map +1 -1
  234. package/dist/spatial/ZoneTiler.svelte +3 -2
  235. package/dist/spatial/ZoneTiler.test.js +90 -0
  236. package/dist/spatial/d3-types.d.ts +31 -0
  237. package/dist/spatial/d3-types.d.ts.map +1 -0
  238. package/dist/spatial/d3-types.js +19 -0
  239. package/dist/spatial/index.js +1 -0
  240. package/dist/spatial/particle-assemble-math.d.ts +22 -0
  241. package/dist/spatial/particle-assemble-math.d.ts.map +1 -0
  242. package/dist/spatial/particle-assemble-math.js +26 -0
  243. package/dist/spatial/particle-assemble-math.test.js +56 -0
  244. package/dist/ssr-import-clean.test.js +37 -0
  245. package/dist/t0-transport/fs.d.ts +12 -0
  246. package/dist/t0-transport/fs.d.ts.map +1 -0
  247. package/dist/t0-transport/fs.js +55 -0
  248. package/dist/t0-transport/index.d.ts +1 -0
  249. package/dist/t0-transport/index.d.ts.map +1 -1
  250. package/dist/t0-transport/index.js +1 -0
  251. package/dist/t0-transport/invoke.d.ts.map +1 -1
  252. package/dist/t0-transport/invoke.js +5 -2
  253. package/dist/t0-transport/quality.d.ts +12 -3
  254. package/dist/t0-transport/quality.d.ts.map +1 -1
  255. package/dist/t0-transport/quality.js +17 -4
  256. package/dist/t0-transport/substrate.svelte.d.ts +27 -0
  257. package/dist/t0-transport/substrate.svelte.d.ts.map +1 -0
  258. package/dist/t0-transport/substrate.svelte.js +55 -0
  259. package/dist/u0-primitives/LockIndicator.svelte +17 -15
  260. package/dist/u0-primitives/VerticalToolbar.svelte +25 -22
  261. package/dist/u0-primitives/accordion/Accordion.svelte +14 -12
  262. package/dist/u0-primitives/accordion/Accordion.svelte.d.ts +0 -7
  263. package/dist/u0-primitives/accordion/Accordion.svelte.d.ts.map +1 -1
  264. package/dist/u0-primitives/accordion/Accordion.test.js +5 -5
  265. package/dist/u0-primitives/animated-icon/AnimatedIcon.svelte +3 -3
  266. package/dist/u0-primitives/animated-icon/AnimatedIcon.test.js +82 -0
  267. package/dist/u0-primitives/avatar/Avatar.svelte +14 -14
  268. package/dist/u0-primitives/avatar/Avatar.test.js +81 -0
  269. package/dist/u0-primitives/badge/Badge.svelte +6 -4
  270. package/dist/u0-primitives/badge/Badge.test.js +10 -10
  271. package/dist/u0-primitives/badge/ValidityBadge.svelte +4 -27
  272. package/dist/u0-primitives/badge/ValidityBadge.test.js +9 -9
  273. package/dist/u0-primitives/button/Button.svelte +18 -13
  274. package/dist/u0-primitives/button/Button.svelte.d.ts +1 -0
  275. package/dist/u0-primitives/button/Button.svelte.d.ts.map +1 -1
  276. package/dist/u0-primitives/button/Button.test.js +11 -11
  277. package/dist/u0-primitives/card/Card.svelte +60 -32
  278. package/dist/u0-primitives/card/Card.svelte.d.ts.map +1 -1
  279. package/dist/u0-primitives/card/Card.test.js +86 -0
  280. package/dist/u0-primitives/command-palette/CommandPalette.svelte +75 -43
  281. package/dist/u0-primitives/command-palette/CommandPalette.svelte.d.ts.map +1 -1
  282. package/dist/u0-primitives/command-palette/CommandPalette.test.js +202 -0
  283. package/dist/u0-primitives/command-palette/commandStore.svelte.d.ts.map +1 -1
  284. package/dist/u0-primitives/command-palette/commandStore.svelte.js +2 -1
  285. package/dist/u0-primitives/dropdown/Dropdown.svelte +20 -25
  286. package/dist/u0-primitives/dropdown/Dropdown.test.js +1 -1
  287. package/dist/u0-primitives/grant-badge/GrantStatusBadge.svelte +2 -2
  288. package/dist/u0-primitives/index.d.ts +8 -0
  289. package/dist/u0-primitives/index.d.ts.map +1 -1
  290. package/dist/u0-primitives/index.js +9 -0
  291. package/dist/u0-primitives/input/Input.svelte +85 -23
  292. package/dist/u0-primitives/input/Input.svelte.d.ts +2 -10
  293. package/dist/u0-primitives/input/Input.svelte.d.ts.map +1 -1
  294. package/dist/u0-primitives/input/Input.test.js +82 -2
  295. package/dist/u0-primitives/live-dot/LiveDot.svelte +56 -0
  296. package/dist/u0-primitives/live-dot/LiveDot.svelte.d.ts +11 -0
  297. package/dist/u0-primitives/live-dot/LiveDot.svelte.d.ts.map +1 -0
  298. package/dist/u0-primitives/live-dot/LiveDot.test.js +41 -0
  299. package/dist/u0-primitives/live-dot/index.d.ts +3 -0
  300. package/dist/u0-primitives/live-dot/index.d.ts.map +1 -0
  301. package/dist/u0-primitives/live-dot/index.js +1 -0
  302. package/dist/u0-primitives/modal/Modal.svelte +64 -38
  303. package/dist/u0-primitives/modal/Modal.svelte.d.ts.map +1 -1
  304. package/dist/u0-primitives/modal/Modal.test.js +63 -15
  305. package/dist/u0-primitives/rsvp/RsvpReader.svelte +8 -8
  306. package/dist/u0-primitives/rsvp/RsvpReader.svelte.d.ts.map +1 -1
  307. package/dist/u0-primitives/spinner/Spinner.svelte +11 -79
  308. package/dist/u0-primitives/spinner/Spinner.svelte.d.ts.map +1 -1
  309. package/dist/u0-primitives/steps/Steps.svelte +20 -21
  310. package/dist/u0-primitives/surface-state/SurfaceState.svelte +190 -0
  311. package/dist/u0-primitives/surface-state/SurfaceState.svelte.d.ts +15 -0
  312. package/dist/u0-primitives/surface-state/SurfaceState.svelte.d.ts.map +1 -0
  313. package/dist/u0-primitives/tabs/Tabs.svelte +13 -11
  314. package/dist/u0-primitives/theme-swatch-group/ThemeSwatchGroup.svelte +94 -0
  315. package/dist/u0-primitives/theme-swatch-group/ThemeSwatchGroup.svelte.d.ts +16 -0
  316. package/dist/u0-primitives/theme-swatch-group/ThemeSwatchGroup.svelte.d.ts.map +1 -0
  317. package/dist/u0-primitives/theme-swatch-group/ThemeSwatchGroup.test.js +48 -0
  318. package/dist/u0-primitives/theme-swatch-group/index.d.ts +3 -0
  319. package/dist/u0-primitives/theme-swatch-group/index.d.ts.map +1 -0
  320. package/dist/u0-primitives/theme-swatch-group/index.js +1 -0
  321. package/dist/u0-primitives/toggle/Toggle.svelte +22 -13
  322. package/dist/u0-primitives/tooltip/Tooltip.svelte +9 -9
  323. package/dist/u0-primitives/tooltip/Tooltip.test.js +12 -12
  324. package/dist/u0-primitives/web-components/button-component.d.ts +5 -1
  325. package/dist/u0-primitives/web-components/button-component.d.ts.map +1 -1
  326. package/dist/u0-primitives/web-components/button-component.js +72 -33
  327. package/dist/u0-primitives/web-components/index.d.ts +3 -0
  328. package/dist/u0-primitives/web-components/index.d.ts.map +1 -0
  329. package/dist/u0-primitives/web-components/index.js +2 -0
  330. package/dist/u0-primitives/web-components/input-component.d.ts +5 -1
  331. package/dist/u0-primitives/web-components/input-component.d.ts.map +1 -1
  332. package/dist/u0-primitives/web-components/input-component.js +56 -39
  333. package/dist/u0-primitives/web-components/web-components.test.js +96 -0
  334. package/dist/u0-primitives/window-frame/WindowFrame.svelte +87 -0
  335. package/dist/u0-primitives/window-frame/WindowFrame.svelte.d.ts +10 -0
  336. package/dist/u0-primitives/window-frame/WindowFrame.svelte.d.ts.map +1 -0
  337. package/dist/u0-primitives/window-frame/WindowFrame.test.js +31 -0
  338. package/dist/u0-primitives/window-frame/index.d.ts +3 -0
  339. package/dist/u0-primitives/window-frame/index.d.ts.map +1 -0
  340. package/dist/u0-primitives/window-frame/index.js +1 -0
  341. package/dist/v0-diagrams/MarkmapDiagram.test.js +49 -0
  342. package/dist/v0-diagrams/MermaidDiagram.svelte +21 -9
  343. package/dist/v0-diagrams/MermaidDiagram.svelte.d.ts.map +1 -1
  344. package/dist/v0-diagrams/MermaidDiagram.test.js +40 -0
  345. package/dist/x0-enchanted-blocks/components/NodepadBlock.svelte +11 -2
  346. package/dist/x0-enchanted-blocks/components/NodepadBlock.svelte.d.ts.map +1 -1
  347. package/package.json +57 -15
  348. package/src/n4-adaptive-manifold/n4-tokens.css +2 -2
  349. package/src/p0-primitives/tokens/ambient.css +76 -0
  350. package/src/p0-primitives/tokens/tokens.css +140 -34
  351. package/src/p0-primitives/tokens/tokens.json +55 -26
  352. package/dist/b0-app-shell/command-bar/CommandBar.svelte.d.ts.map +0 -1
  353. package/dist/fabric/input/CommandBar.svelte.d.ts.map +0 -1
  354. package/dist/stores/vaultStore.svelte +0 -14
  355. package/dist/stores/vaultStore.svelte.d.ts +0 -24
  356. package/dist/stores/vaultStore.svelte.d.ts.map +0 -1
  357. package/dist/tauri/index.d.ts +0 -3
  358. package/dist/tauri/index.d.ts.map +0 -1
  359. package/dist/tauri/index.js +0 -11
@@ -1,226 +1,30 @@
1
1
  <script lang="ts">
2
- /**
3
- * KanbanCard - Fabric Component
4
- *
5
- * Draggable kanban card with metadata display.
6
- * Decoupled from shell stores - uses props/callbacks for all state.
7
- *
8
- * @package @kos/design-system/fabric/layout
9
- * @adr 2026-04-12-leap-substrate-refactor-001
10
- */
11
- import { GripVertical, Clock, Tag } from '@lucide/svelte';
12
-
13
- export interface CardData {
14
- id: string;
15
- title: string;
16
- description?: string;
17
- priority?: 'low' | 'medium' | 'high';
18
- tags?: string[];
19
- dueDate?: Date;
20
- assignee?: string;
21
- metadata?: Record<string, unknown>;
22
- }
23
-
24
- export interface Props {
25
- card: CardData;
26
- isDragging?: boolean;
27
- isSelected?: boolean;
28
- disabled?: boolean;
29
- onClick?: (card: CardData) => void;
30
- onDragStart?: (card: CardData) => void;
31
- onDragEnd?: (card: CardData) => void;
32
- }
33
-
34
- let { card, isDragging, isSelected, disabled, onClick, onDragStart, onDragEnd }: Props = $props();
35
-
36
- function priorityColor(p: string | undefined): string {
37
- switch (p) {
38
- case 'high': return 'var(--color-error, #c0392b)';
39
- case 'medium': return 'var(--color-warning, #f39c12)';
40
- case 'low': return 'var(--color-success, #27ae60)';
41
- default: return 'var(--color-text-tertiary, #706858)';
42
- }
43
- }
44
-
45
- function formatDate(date: Date | undefined): string {
46
- if (!date) return '';
47
- return date.toLocaleDateString('en-US', { month: 'short', day: 'numeric' });
48
- }
2
+ import KanbanCard from '../../l0-layout/kanban/KanbanCard.svelte';
3
+ import type { Props } from '../../l0-layout/kanban/KanbanCard.svelte';
4
+
5
+ let {
6
+ card,
7
+ isDragging = false,
8
+ isSelected = false,
9
+ disabled = false,
10
+ onClick,
11
+ onDragStart,
12
+ onDragEnd,
13
+ onKeyDown,
14
+ moveMode = false,
15
+ children,
16
+ }: Props = $props();
49
17
  </script>
50
18
 
51
- <div
52
- class="kanban-card"
53
- class:dragging={isDragging}
54
- class:selected={isSelected}
55
- class:disabled={disabled}
56
- role="button"
57
- tabindex="0"
58
- aria-grabbed={isDragging}
59
- onclick={() => onClick?.(card)}
60
- onkeydown={(e) => { if (e.key === 'Enter' || e.key === ' ') onClick?.(card); }}
61
- ondragstart={() => onDragStart?.(card)}
62
- ondragend={() => onDragEnd?.(card)}
63
- draggable={!disabled}
64
- >
65
- <div class="card-header">
66
- {#if card.priority}
67
- <span
68
- class="priority-indicator"
69
- style="background: {priorityColor(card.priority)}"
70
- title="Priority: {card.priority}"
71
- ></span>
72
- {/if}
73
- <span class="card-title">{card.title}</span>
74
- <GripVertical size={14} class="drag-handle" />
75
- </div>
76
-
77
- {#if card.description}
78
- <p class="card-description">{card.description}</p>
79
- {/if}
80
-
81
- <div class="card-footer">
82
- {#if card.tags && card.tags.length > 0}
83
- <div class="tags">
84
- {#each card.tags.slice(0, 3) as tag}
85
- <span class="tag">
86
- <Tag size={10} />
87
- {tag}
88
- </span>
89
- {/each}
90
- {#if card.tags.length > 3}
91
- <span class="tag-more">+{card.tags.length - 3}</span>
92
- {/if}
93
- </div>
94
- {/if}
95
-
96
- {#if card.dueDate}
97
- <span class="due-date" class:overdue={card.dueDate < new Date()}>
98
- <Clock size={12} />
99
- {formatDate(card.dueDate)}
100
- </span>
101
- {/if}
102
- </div>
103
- </div>
104
-
105
- <style>
106
- .kanban-card {
107
- background: var(--color-bg-panel, #222222);
108
- border: 1px solid var(--border-subtle, rgba(255,255,255,0.06));
109
- border-radius: var(--radius-md, 0.375rem);
110
- padding: 12px;
111
- cursor: grab;
112
- transition: box-shadow 0.15s, transform 0.15s, border-color 0.15s;
113
- user-select: none;
114
- }
115
-
116
- .kanban-card:hover {
117
- border-color: var(--border-default, #333333);
118
- box-shadow: var(--shadow-sm, 0 2px 4px rgba(0,0,0,0.2));
119
- }
120
-
121
- .kanban-card.dragging {
122
- opacity: 0.5;
123
- transform: rotate(2deg);
124
- box-shadow: var(--shadow-lg, 0 4px 12px rgba(0,0,0,0.3));
125
- }
126
-
127
- .kanban-card.selected {
128
- border-color: var(--color-accent, var(--color-accent));
129
- box-shadow: 0 0 0 2px var(--color-accent-muted);
130
- }
131
-
132
- .kanban-card.disabled {
133
- opacity: 0.5;
134
- cursor: not-allowed;
135
- pointer-events: none;
136
- }
137
-
138
- .card-header {
139
- display: flex;
140
- align-items: center;
141
- gap: var(--space-2);
142
- margin-bottom: 8px;
143
- }
144
-
145
- .priority-indicator {
146
- width: 8px;
147
- height: 8px;
148
- border-radius: 50%;
149
- flex-shrink: 0;
150
- }
151
-
152
- .card-title {
153
- flex: 1;
154
- font-size: 13px;
155
- font-weight: 500;
156
- color: var(--color-text-primary, #f2efe9);
157
- overflow: hidden;
158
- text-overflow: ellipsis;
159
- white-space: nowrap;
160
- }
161
-
162
- :global(.drag-handle) {
163
- color: var(--color-text-tertiary, #706858);
164
- opacity: 0;
165
- transition: opacity 0.15s;
166
- }
167
-
168
- .kanban-card:hover :global(.drag-handle) {
169
- opacity: 1;
170
- }
171
-
172
- .card-description {
173
- font-size: 12px;
174
- color: var(--color-text-secondary, #a09880);
175
- line-height: 1.4;
176
- margin: 0 0 12px 0;
177
- display: -webkit-box;
178
- -webkit-line-clamp: 3;
179
- line-clamp: 3;
180
- -webkit-box-orient: vertical;
181
- box-orient: vertical;
182
- overflow: hidden;
183
- }
184
-
185
- .card-footer {
186
- display: flex;
187
- align-items: center;
188
- justify-content: space-between;
189
- gap: var(--space-2);
190
- }
191
-
192
- .tags {
193
- display: flex;
194
- align-items: center;
195
- gap: var(--space-2);
196
- flex-wrap: wrap;
197
- }
198
-
199
- .tag {
200
- display: inline-flex;
201
- align-items: center;
202
- gap: 3px;
203
- font-size: 10px;
204
- padding: 2px 6px;
205
- background: var(--color-bg-canvas, #1a1a1a);
206
- border-radius: var(--radius-sm, 0.25rem);
207
- color: var(--color-text-tertiary, #706858);
208
- }
209
-
210
- .tag-more {
211
- font-size: 10px;
212
- color: var(--color-text-tertiary, #706858);
213
- }
214
-
215
- .due-date {
216
- display: inline-flex;
217
- align-items: center;
218
- gap: var(--space-1);
219
- font-size: 11px;
220
- color: var(--color-text-tertiary, #706858);
221
- }
222
-
223
- .due-date.overdue {
224
- color: var(--color-error, #c0392b);
225
- }
226
- </style>
19
+ <KanbanCard
20
+ {card}
21
+ {isDragging}
22
+ {isSelected}
23
+ {disabled}
24
+ {onClick}
25
+ {onDragStart}
26
+ {onDragEnd}
27
+ {onKeyDown}
28
+ {moveMode}
29
+ {children}
30
+ />
@@ -1,22 +1,5 @@
1
- export interface CardData {
2
- id: string;
3
- title: string;
4
- description?: string;
5
- priority?: 'low' | 'medium' | 'high';
6
- tags?: string[];
7
- dueDate?: Date;
8
- assignee?: string;
9
- metadata?: Record<string, unknown>;
10
- }
11
- export interface Props {
12
- card: CardData;
13
- isDragging?: boolean;
14
- isSelected?: boolean;
15
- disabled?: boolean;
16
- onClick?: (card: CardData) => void;
17
- onDragStart?: (card: CardData) => void;
18
- onDragEnd?: (card: CardData) => void;
19
- }
1
+ import KanbanCard from '../../l0-layout/kanban/KanbanCard.svelte';
2
+ import type { Props } from '../../l0-layout/kanban/KanbanCard.svelte';
20
3
  declare const KanbanCard: import("svelte").Component<Props, {}, "">;
21
4
  type KanbanCard = ReturnType<typeof KanbanCard>;
22
5
  export default KanbanCard;
@@ -1 +1 @@
1
- {"version":3,"file":"KanbanCard.svelte.d.ts","sourceRoot":"","sources":["../../../src/fabric/layout/KanbanCard.svelte.ts"],"names":[],"mappings":"AAeE,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACrC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACnC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;CACtC;AAiEH,QAAA,MAAM,UAAU,2CAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"KanbanCard.svelte.d.ts","sourceRoot":"","sources":["../../../src/fabric/layout/KanbanCard.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,UAAU,MAAM,0CAA0C,CAAC;AAClE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0CAA0C,CAAC;AAwBtE,QAAA,MAAM,UAAU,2CAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
@@ -1,278 +1,44 @@
1
1
  <script lang="ts">
2
- /**
3
- * KanbanColumn - Fabric Component
4
- *
5
- * Droppable column for kanban cards with header and scrollable content.
6
- * Decoupled from shell stores - uses props/callbacks for all state.
7
- *
8
- * @package @kos/design-system/fabric/layout
9
- * @adr 2026-04-12-leap-substrate-refactor-001
10
- */
11
- import { Plus, MoreHorizontal } from '@lucide/svelte';
12
- import type { CardData } from './KanbanCard.svelte';
13
-
14
- export interface ColumnData {
15
- id: string;
16
- title: string;
17
- color?: string;
18
- limit?: number;
19
- }
20
-
21
- export interface Props {
22
- column: ColumnData;
23
- cards: CardData[];
24
- isDropTarget?: boolean;
25
- isCollapsed?: boolean;
26
- onCardClick?: (card: CardData) => void;
27
- onCardDragStart?: (card: CardData) => void;
28
- onCardDragEnd?: (card: CardData) => void;
29
- onDrop?: (columnId: string, cardId: string) => void;
30
- onDragOver?: (columnId: string) => void;
31
- onDragLeave?: (columnId: string) => void;
32
- onAddCard?: (columnId: string) => void;
33
- onToggleCollapse?: (columnId: string) => void;
34
- onMenuClick?: (columnId: string) => void;
35
- }
36
-
37
- let { column, cards, isDropTarget, isCollapsed, onCardClick, onCardDragStart, onCardDragEnd, onDrop, onDragOver, onDragLeave, onAddCard, onToggleCollapse, onMenuClick }: Props = $props();
38
-
39
- let dragCounter = $state(0);
40
-
41
- function handleDragOver(e: DragEvent) {
42
- e.preventDefault();
43
- if (e.dataTransfer) e.dataTransfer.dropEffect = 'move';
44
- onDragOver?.(column.id);
45
- }
46
-
47
- function handleDragEnter() {
48
- dragCounter++;
49
- }
50
-
51
- function handleDragLeave() {
52
- dragCounter--;
53
- if (dragCounter === 0) {
54
- onDragLeave?.(column.id);
55
- }
56
- }
57
-
58
- function handleDrop(e: DragEvent) {
59
- e.preventDefault();
60
- dragCounter = 0;
61
-
62
- const cardId = e.dataTransfer?.getData('application/kanban-card');
63
- if (cardId) {
64
- onDrop?.(column.id, cardId);
65
- }
66
- }
67
-
68
- function handleCardDragStart(card: CardData, e: DragEvent) {
69
- if (e.dataTransfer) {
70
- e.dataTransfer.setData('application/kanban-card', card.id);
71
- e.dataTransfer.effectAllowed = 'move';
72
- }
73
- onCardDragStart?.(card);
74
- }
75
-
76
- const cardCount = $derived(cards.length);
77
- const atLimit = $derived(column.limit ? cardCount >= column.limit : false);
2
+ import KanbanColumn from '../../l0-layout/kanban/KanbanColumn.svelte';
3
+ import type { Props } from '../../l0-layout/kanban/KanbanColumn.svelte';
4
+
5
+ let {
6
+ column,
7
+ isDropTarget = false,
8
+ isCollapsed = false,
9
+ isMoveTarget = false,
10
+ onCardClick,
11
+ onCardDragStart,
12
+ onCardDragEnd,
13
+ onDrop,
14
+ onDragOver,
15
+ onDragLeave,
16
+ onAddCard,
17
+ onMenuClick,
18
+ onCardKeyDown,
19
+ moveMode = false,
20
+ children,
21
+ actions,
22
+ class: className = '',
23
+ }: Props = $props();
78
24
  </script>
79
25
 
80
- <div
81
- class="kanban-column"
82
- class:drop-target={isDropTarget}
83
- class:collapsed={isCollapsed}
84
- class:at-limit={atLimit}
85
- ondragover={handleDragOver}
86
- ondragenter={handleDragEnter}
87
- ondragleave={handleDragLeave}
88
- ondrop={handleDrop}
89
- role="region"
90
- aria-label="Column: {column.title}"
91
- >
92
- <div class="column-header">
93
- <div
94
- class="column-color"
95
- style="background: {column.color || 'var(--color-accent, var(--color-accent))'}"
96
- ></div>
97
- <button
98
- class="column-title-btn"
99
- onclick={() => onToggleCollapse?.(column.id)}
100
- aria-expanded={!isCollapsed}
101
- >
102
- <span class="column-title">{column.title}</span>
103
- <span class="card-count" class:limit-near={atLimit}>
104
- {cardCount}{column.limit ? `/${column.limit}` : ''}
105
- </span>
106
- </button>
107
- <button
108
- class="menu-btn"
109
- onclick={() => onMenuClick?.(column.id)}
110
- aria-label="Column menu"
111
- >
112
- <MoreHorizontal size={16} />
113
- </button>
114
- </div>
115
-
116
- {#if !isCollapsed}
117
- <div class="column-content" role="list">
118
- {#each cards as card (card.id)}
119
- {#await import('./KanbanCard.svelte') then { default: KanbanCard }}
120
- <KanbanCard
121
- {card}
122
- onClick={onCardClick}
123
- onDragStart={(c) => handleCardDragStart(c, event as unknown as DragEvent)}
124
- onDragEnd={onCardDragEnd}
125
- />
126
- {/await}
127
- {/each}
128
- </div>
129
-
130
- <button
131
- class="add-card-btn"
132
- onclick={() => onAddCard?.(column.id)}
133
- disabled={atLimit}
134
- >
135
- <Plus size={14} />
136
- Add card
137
- </button>
138
- {/if}
139
- </div>
140
-
141
- <style>
142
- .kanban-column {
143
- display: flex;
144
- flex-direction: column;
145
- width: 280px;
146
- min-width: 280px;
147
- max-height: 100%;
148
- background: var(--color-bg-canvas, #1a1a1a);
149
- border: 1px solid var(--border-subtle, rgba(255,255,255,0.06));
150
- border-radius: var(--radius-lg, 0.5rem);
151
- transition: border-color 0.15s, box-shadow 0.15s;
152
- }
153
-
154
- .kanban-column.drop-target {
155
- border-color: var(--color-accent, var(--color-accent));
156
- box-shadow: 0 0 0 2px var(--color-accent-muted);
157
- }
158
-
159
- .kanban-column.collapsed {
160
- width: auto;
161
- min-width: unset;
162
- }
163
-
164
- .kanban-column.at-limit {
165
- border-color: var(--color-warning, rgba(243, 156, 18, 0.3));
166
- }
167
-
168
- .column-header {
169
- display: flex;
170
- align-items: center;
171
- gap: var(--space-2);
172
- padding: 12px;
173
- border-bottom: 1px solid var(--border-subtle, rgba(255,255,255,0.06));
174
- }
175
-
176
- .column-color {
177
- width: 12px;
178
- height: 12px;
179
- border-radius: var(--radius-sm, 0.25rem);
180
- flex-shrink: 0;
181
- }
182
-
183
- .column-title-btn {
184
- flex: 1;
185
- display: flex;
186
- align-items: center;
187
- justify-content: space-between;
188
- gap: var(--space-2);
189
- background: none;
190
- border: none;
191
- cursor: pointer;
192
- padding: 4px;
193
- border-radius: var(--radius-sm, 0.25rem);
194
- color: inherit;
195
- text-align: left;
196
- }
197
-
198
- .column-title-btn:hover {
199
- background: rgba(255,255,255,0.05);
200
- }
201
-
202
- .column-title {
203
- font-size: 13px;
204
- font-weight: 600;
205
- color: var(--color-text-primary, #f2efe9);
206
- }
207
-
208
- .card-count {
209
- font-size: 11px;
210
- padding: 2px 6px;
211
- background: var(--color-bg-panel, #222222);
212
- border-radius: var(--radius-sm, 0.25rem);
213
- color: var(--color-text-tertiary, #706858);
214
- }
215
-
216
- .card-count.limit-near {
217
- color: var(--color-warning, #f39c12);
218
- background: rgba(243, 156, 18, 0.1);
219
- }
220
-
221
- .menu-btn {
222
- background: none;
223
- border: none;
224
- color: var(--color-text-tertiary, #706858);
225
- cursor: pointer;
226
- padding: 4px;
227
- border-radius: var(--radius-sm, 0.25rem);
228
- display: flex;
229
- align-items: center;
230
- justify-content: center;
231
- opacity: 0;
232
- transition: opacity 0.15s, background 0.15s;
233
- }
234
-
235
- .kanban-column:hover .menu-btn {
236
- opacity: 1;
237
- }
238
-
239
- .menu-btn:hover {
240
- background: rgba(255,255,255,0.05);
241
- color: var(--color-text-secondary, #a09880);
242
- }
243
-
244
- .column-content {
245
- flex: 1;
246
- overflow-y: auto;
247
- padding: 12px;
248
- display: flex;
249
- flex-direction: column;
250
- gap: var(--space-2);
251
- }
252
-
253
- .add-card-btn {
254
- margin: 0 12px 12px;
255
- padding: 8px 12px;
256
- background: transparent;
257
- border: 1px dashed var(--border-default, #333333);
258
- border-radius: var(--radius-md, 0.375rem);
259
- color: var(--color-text-tertiary, #706858);
260
- font-size: 12px;
261
- cursor: pointer;
262
- display: flex;
263
- align-items: center;
264
- justify-content: center;
265
- gap: var(--space-15);
266
- transition: border-color 0.15s, color 0.15s;
267
- }
268
-
269
- .add-card-btn:hover:not(:disabled) {
270
- border-color: var(--color-accent, var(--color-accent));
271
- color: var(--color-accent, var(--color-accent));
272
- }
273
-
274
- .add-card-btn:disabled {
275
- opacity: 0.5;
276
- cursor: not-allowed;
277
- }
278
- </style>
26
+ <KanbanColumn
27
+ {column}
28
+ {isDropTarget}
29
+ {isCollapsed}
30
+ {isMoveTarget}
31
+ {onCardClick}
32
+ {onCardDragStart}
33
+ {onCardDragEnd}
34
+ {onDrop}
35
+ {onDragOver}
36
+ {onDragLeave}
37
+ {onAddCard}
38
+ {onMenuClick}
39
+ {onCardKeyDown}
40
+ {moveMode}
41
+ {children}
42
+ {actions}
43
+ class={className}
44
+ />
@@ -1,25 +1,5 @@
1
- import type { CardData } from './KanbanCard.svelte';
2
- export interface ColumnData {
3
- id: string;
4
- title: string;
5
- color?: string;
6
- limit?: number;
7
- }
8
- export interface Props {
9
- column: ColumnData;
10
- cards: CardData[];
11
- isDropTarget?: boolean;
12
- isCollapsed?: boolean;
13
- onCardClick?: (card: CardData) => void;
14
- onCardDragStart?: (card: CardData) => void;
15
- onCardDragEnd?: (card: CardData) => void;
16
- onDrop?: (columnId: string, cardId: string) => void;
17
- onDragOver?: (columnId: string) => void;
18
- onDragLeave?: (columnId: string) => void;
19
- onAddCard?: (columnId: string) => void;
20
- onToggleCollapse?: (columnId: string) => void;
21
- onMenuClick?: (columnId: string) => void;
22
- }
1
+ import KanbanColumn from '../../l0-layout/kanban/KanbanColumn.svelte';
2
+ import type { Props } from '../../l0-layout/kanban/KanbanColumn.svelte';
23
3
  declare const KanbanColumn: import("svelte").Component<Props, {}, "">;
24
4
  type KanbanColumn = ReturnType<typeof KanbanColumn>;
25
5
  export default KanbanColumn;
@@ -1 +1 @@
1
- {"version":3,"file":"KanbanColumn.svelte.d.ts","sourceRoot":"","sources":["../../../src/fabric/layout/KanbanColumn.svelte.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGlD,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,KAAK;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACvC,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC3C,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACzC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C;AAqFH,QAAA,MAAM,YAAY,2CAAwC,CAAC;AAC3D,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AACpD,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"KanbanColumn.svelte.d.ts","sourceRoot":"","sources":["../../../src/fabric/layout/KanbanColumn.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,MAAM,4CAA4C,CAAC;AACtE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4CAA4C,CAAC;AA+BxE,QAAA,MAAM,YAAY,2CAAwC,CAAC;AAC3D,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AACpD,eAAe,YAAY,CAAC"}
@@ -8,13 +8,10 @@
8
8
  */
9
9
  export { default as GlassBox } from './GlassBox.svelte';
10
10
  export { default as KanbanBoard } from './KanbanBoard.svelte';
11
- export type { Props as KanbanBoardProps } from './KanbanBoard.svelte';
12
11
  export { default as KanbanColumn } from './KanbanColumn.svelte';
13
- export type { Props as KanbanColumnProps } from './KanbanColumn.svelte';
14
12
  export { default as KanbanCard } from './KanbanCard.svelte';
15
- export type { Props as KanbanCardProps } from './KanbanCard.svelte';
16
- export type { CardData } from './KanbanCard.svelte';
17
- export type { ColumnData } from './KanbanColumn.svelte';
13
+ export type { ColumnData } from '../../l0-layout/kanban/KanbanColumn.svelte';
14
+ export type { CardData } from '../../l0-layout/kanban/KanbanCard.svelte';
18
15
  export { default as CollapsiblePanel } from './CollapsiblePanel.svelte';
19
16
  export type { PanelPosition, PanelMode, PanelSnap } from './CollapsiblePanel.svelte';
20
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fabric/layout/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAGxD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC9D,YAAY,EAAE,KAAK,IAAI,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAChE,YAAY,EAAE,KAAK,IAAI,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC5D,YAAY,EAAE,KAAK,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACpE,YAAY,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGxD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AACxE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fabric/layout/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAGxD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC5D,YAAY,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AAC7E,YAAY,EAAE,QAAQ,EAAE,MAAM,0CAA0C,CAAC;AAGzE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AACxE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC"}
@@ -7,7 +7,7 @@
7
7
  * @adr 2026-04-12-leap-substrate-refactor-001
8
8
  */
9
9
  export { default as GlassBox } from './GlassBox.svelte';
10
- // Kanban
10
+ // Kanban — canonical l0-layout components re-exported for fabric compatibility (F-24)
11
11
  export { default as KanbanBoard } from './KanbanBoard.svelte';
12
12
  export { default as KanbanColumn } from './KanbanColumn.svelte';
13
13
  export { default as KanbanCard } from './KanbanCard.svelte';