@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.
- package/LICENSE +25 -0
- package/README.md +53 -14
- package/{src → dist}/b0-app-shell/clarification-overlay/ClarificationOverlay.svelte +8 -8
- package/dist/b0-app-shell/clarification-overlay/ClarificationOverlay.svelte.d.ts +19 -0
- package/dist/b0-app-shell/clarification-overlay/ClarificationOverlay.svelte.d.ts.map +1 -0
- package/dist/b0-app-shell/clarification-overlay/index.d.ts +2 -0
- package/dist/b0-app-shell/clarification-overlay/index.d.ts.map +1 -0
- package/{src → dist}/b0-app-shell/command-bar/CommandBar.svelte +29 -29
- package/dist/b0-app-shell/command-bar/CommandBar.svelte.d.ts +35 -0
- package/dist/b0-app-shell/command-bar/CommandBar.svelte.d.ts.map +1 -0
- package/dist/b0-app-shell/index.d.ts +14 -0
- package/dist/b0-app-shell/index.d.ts.map +1 -0
- package/{src/b0-app-shell/index.ts → dist/b0-app-shell/index.js} +0 -1
- package/dist/base.css +138 -0
- package/{src → dist}/d0-data-viz/BarChart.svelte +2 -2
- package/dist/d0-data-viz/BarChart.svelte.d.ts +13 -0
- package/dist/d0-data-viz/BarChart.svelte.d.ts.map +1 -0
- package/{src → dist}/d0-data-viz/CheckpointBar.svelte +12 -12
- package/dist/d0-data-viz/CheckpointBar.svelte.d.ts +15 -0
- package/dist/d0-data-viz/CheckpointBar.svelte.d.ts.map +1 -0
- package/{src → dist}/d0-data-viz/CheckpointPill.svelte +14 -12
- package/dist/d0-data-viz/CheckpointPill.svelte.d.ts +14 -0
- package/dist/d0-data-viz/CheckpointPill.svelte.d.ts.map +1 -0
- package/dist/d0-data-viz/ConnectionHealth.svelte +366 -0
- package/dist/d0-data-viz/ConnectionHealth.svelte.d.ts +40 -0
- package/dist/d0-data-viz/ConnectionHealth.svelte.d.ts.map +1 -0
- package/{src → dist}/d0-data-viz/MetricCard.svelte +5 -5
- package/dist/d0-data-viz/MetricCard.svelte.d.ts +5 -0
- package/dist/d0-data-viz/MetricCard.svelte.d.ts.map +1 -0
- package/{src → dist}/d0-data-viz/SparkLine.svelte +1 -1
- package/dist/d0-data-viz/SparkLine.svelte.d.ts +12 -0
- package/dist/d0-data-viz/SparkLine.svelte.d.ts.map +1 -0
- package/{src → dist}/d0-data-viz/StorageMap.svelte +6 -6
- package/dist/d0-data-viz/StorageMap.svelte.d.ts +12 -0
- package/dist/d0-data-viz/StorageMap.svelte.d.ts.map +1 -0
- package/{src → dist}/d0-data-viz/Timeline.svelte +2 -2
- package/dist/d0-data-viz/Timeline.svelte.d.ts +10 -0
- package/dist/d0-data-viz/Timeline.svelte.d.ts.map +1 -0
- package/dist/d0-data-viz/WorldLineTimeline.svelte +329 -0
- package/dist/d0-data-viz/WorldLineTimeline.svelte.d.ts +11 -0
- package/dist/d0-data-viz/WorldLineTimeline.svelte.d.ts.map +1 -0
- package/dist/d0-data-viz/checkpoint-types.d.ts +104 -0
- package/dist/d0-data-viz/checkpoint-types.d.ts.map +1 -0
- package/dist/d0-data-viz/checkpoint-types.js +49 -0
- package/dist/d0-data-viz/d0-tokens.css +32 -0
- package/dist/d0-data-viz/index.d.ts +17 -0
- package/dist/d0-data-viz/index.d.ts.map +1 -0
- package/dist/d0-data-viz/index.js +18 -0
- package/dist/d0-data-viz/storage-map-types.d.ts +50 -0
- package/dist/d0-data-viz/storage-map-types.d.ts.map +1 -0
- package/dist/d0-data-viz/storage-map-types.js +81 -0
- package/dist/d0-data-viz/theme-integration.d.ts +106 -0
- package/dist/d0-data-viz/theme-integration.d.ts.map +1 -0
- package/dist/d0-data-viz/theme-integration.js +116 -0
- package/dist/d0-data-viz/types.d.ts +38 -0
- package/dist/d0-data-viz/types.d.ts.map +1 -0
- package/dist/d0-data-viz/types.js +3 -0
- package/dist/d0-data-viz/world-line-types.d.ts +27 -0
- package/dist/d0-data-viz/world-line-types.d.ts.map +1 -0
- package/dist/d0-data-viz/world-line-types.js +2 -0
- package/{src → dist}/demos/BspSizingInfographic.svelte +7 -7
- package/dist/demos/BspSizingInfographic.svelte.d.ts +19 -0
- package/dist/demos/BspSizingInfographic.svelte.d.ts.map +1 -0
- package/{src → dist}/demos/BspZoneDemo.svelte +4 -4
- package/dist/demos/BspZoneDemo.svelte.d.ts +4 -0
- package/dist/demos/BspZoneDemo.svelte.d.ts.map +1 -0
- package/dist/demos/ControlRoomDemo.svelte.d.ts +8 -0
- package/dist/demos/ControlRoomDemo.svelte.d.ts.map +1 -0
- package/{src → dist}/demos/NodepadBlocksShowcase.svelte +7 -7
- package/dist/demos/NodepadBlocksShowcase.svelte.d.ts +4 -0
- package/dist/demos/NodepadBlocksShowcase.svelte.d.ts.map +1 -0
- package/dist/demos/index.d.ts +5 -0
- package/dist/demos/index.d.ts.map +1 -0
- package/{src/demos/index.ts → dist/demos/index.js} +0 -1
- package/{src → dist}/editor/CodeEditor.svelte +15 -3
- package/dist/editor/CodeEditor.svelte.d.ts +16 -0
- package/dist/editor/CodeEditor.svelte.d.ts.map +1 -0
- package/{src → dist}/editor/FindReplaceDialog.svelte +15 -15
- package/dist/editor/FindReplaceDialog.svelte.d.ts +11 -0
- package/dist/editor/FindReplaceDialog.svelte.d.ts.map +1 -0
- package/{src → dist}/editor/MarkdownEditor.svelte +59 -44
- package/dist/editor/MarkdownEditor.svelte.d.ts +16 -0
- package/dist/editor/MarkdownEditor.svelte.d.ts.map +1 -0
- package/dist/editor/components/CorrectionTooltip.svelte +167 -0
- package/dist/editor/components/CorrectionTooltip.svelte.d.ts +33 -0
- package/dist/editor/components/CorrectionTooltip.svelte.d.ts.map +1 -0
- package/dist/editor/extensions/autocomplete.d.ts +10 -0
- package/dist/editor/extensions/autocomplete.d.ts.map +1 -0
- package/dist/editor/extensions/autocomplete.js +9 -0
- package/dist/editor/extensions/autoformat.d.ts +2 -0
- package/dist/editor/extensions/autoformat.d.ts.map +1 -0
- package/dist/editor/extensions/autoformat.js +69 -0
- package/dist/editor/extensions/autoformat.test.js +344 -0
- package/dist/editor/extensions/expansion.d.ts +5 -0
- package/dist/editor/extensions/expansion.d.ts.map +1 -0
- package/dist/editor/extensions/expansion.js +64 -0
- package/dist/editor/extensions/expansion.test.js +174 -0
- package/dist/editor/extensions/spellcheck.d.ts +7 -0
- package/dist/editor/extensions/spellcheck.d.ts.map +1 -0
- package/dist/editor/extensions/spellcheck.js +44 -0
- package/dist/editor/extensions/types.d.ts +3 -0
- package/dist/editor/extensions/types.d.ts.map +1 -0
- package/dist/editor/extensions/types.js +1 -0
- package/dist/editor/index.d.ts +9 -0
- package/dist/editor/index.d.ts.map +1 -0
- package/dist/editor/index.js +6 -0
- package/{src → dist}/entity-graph-view/WorldView.svelte +3 -3
- package/dist/entity-graph-view/WorldView.svelte.d.ts +11 -0
- package/dist/entity-graph-view/WorldView.svelte.d.ts.map +1 -0
- package/dist/entity-graph-view/index.d.ts +3 -0
- package/dist/entity-graph-view/index.d.ts.map +1 -0
- package/{src/entity-graph-view/index.ts → dist/entity-graph-view/index.js} +0 -1
- package/dist/entity-graph-view/types.d.ts +161 -0
- package/dist/entity-graph-view/types.d.ts.map +1 -0
- package/dist/entity-graph-view/types.js +213 -0
- package/dist/epistemic/index.d.ts +3 -0
- package/dist/epistemic/index.d.ts.map +1 -0
- package/dist/epistemic/types.d.ts +132 -0
- package/dist/epistemic/types.d.ts.map +1 -0
- package/dist/epistemic/types.js +18 -0
- package/dist/epistemic/utils.d.ts +7 -0
- package/dist/epistemic/utils.d.ts.map +1 -0
- package/dist/epistemic/utils.js +29 -0
- package/{src → dist}/f0-forms/checkbox/Checkbox.svelte +3 -3
- package/dist/f0-forms/checkbox/Checkbox.svelte.d.ts +14 -0
- package/dist/f0-forms/checkbox/Checkbox.svelte.d.ts.map +1 -0
- package/dist/f0-forms/checkbox/Checkbox.test.js +41 -0
- package/{src → dist}/f0-forms/field/FormField.svelte +1 -1
- package/dist/f0-forms/field/FormField.svelte.d.ts +13 -0
- package/dist/f0-forms/field/FormField.svelte.d.ts.map +1 -0
- package/dist/f0-forms/field/FormField.test.js +103 -0
- package/dist/f0-forms/index.d.ts +17 -0
- package/dist/f0-forms/index.d.ts.map +1 -0
- package/{src/f0-forms/index.ts → dist/f0-forms/index.js} +0 -2
- package/{src → dist}/f0-forms/radio/RadioGroup.svelte +3 -3
- package/dist/f0-forms/radio/RadioGroup.svelte.d.ts +18 -0
- package/dist/f0-forms/radio/RadioGroup.svelte.d.ts.map +1 -0
- package/dist/f0-forms/radio/RadioGroup.test.js +54 -0
- package/{src → dist}/f0-forms/search/SearchBar.svelte +1 -1
- package/dist/f0-forms/search/SearchBar.svelte.d.ts +12 -0
- package/dist/f0-forms/search/SearchBar.svelte.d.ts.map +1 -0
- package/dist/f0-forms/search/SearchBar.test.js +46 -0
- package/{src → dist}/f0-forms/select/Select.svelte +5 -5
- package/dist/f0-forms/select/Select.svelte.d.ts +21 -0
- package/dist/f0-forms/select/Select.svelte.d.ts.map +1 -0
- package/dist/f0-forms/select/Select.test.js +51 -0
- package/{src → dist}/f0-forms/textarea/TextArea.svelte +2 -2
- package/dist/f0-forms/textarea/TextArea.svelte.d.ts +18 -0
- package/dist/f0-forms/textarea/TextArea.svelte.d.ts.map +1 -0
- package/{src → dist}/f0-forms/toggle/FormToggle.svelte +3 -3
- package/dist/f0-forms/toggle/FormToggle.svelte.d.ts +14 -0
- package/dist/f0-forms/toggle/FormToggle.svelte.d.ts.map +1 -0
- package/dist/f0-forms/toggle/FormToggle.test.js +73 -0
- package/dist/f0-forms/validation/validate.d.ts +12 -0
- package/dist/f0-forms/validation/validate.d.ts.map +1 -0
- package/dist/f0-forms/validation/validate.js +44 -0
- package/dist/f0-forms/validation/validate.test.js +87 -0
- package/{src → dist}/fabric/ai/ChatPanel.svelte +49 -49
- package/dist/fabric/ai/ChatPanel.svelte.d.ts +39 -0
- package/dist/fabric/ai/ChatPanel.svelte.d.ts.map +1 -0
- package/dist/fabric/ai/ResearchPanel.svelte +503 -0
- package/dist/fabric/ai/ResearchPanel.svelte.d.ts +44 -0
- package/dist/fabric/ai/ResearchPanel.svelte.d.ts.map +1 -0
- package/dist/fabric/ai/index.d.ts +12 -0
- package/dist/fabric/ai/index.d.ts.map +1 -0
- package/{src/fabric/ai/index.ts → dist/fabric/ai/index.js} +3 -4
- package/dist/fabric/data/index.d.ts +15 -0
- package/dist/fabric/data/index.d.ts.map +1 -0
- package/dist/fabric/data/index.js +6 -0
- package/{src → dist}/fabric/feedback/StatusBar.svelte +93 -69
- package/dist/fabric/feedback/StatusBar.svelte.d.ts +24 -0
- package/dist/fabric/feedback/StatusBar.svelte.d.ts.map +1 -0
- package/dist/fabric/feedback/StatusBar.test.js +52 -0
- package/dist/fabric/feedback/ToastContainer.svelte +153 -0
- package/dist/fabric/feedback/ToastContainer.svelte.d.ts +16 -0
- package/dist/fabric/feedback/ToastContainer.svelte.d.ts.map +1 -0
- package/dist/fabric/feedback/ToastContainer.test.js +85 -0
- package/{src/fabric/feedback/index.ts → dist/fabric/feedback/index.d.ts} +5 -4
- package/dist/fabric/feedback/index.d.ts.map +1 -0
- package/dist/fabric/feedback/index.js +10 -0
- package/{src/fabric/index.ts → dist/fabric/index.d.ts} +10 -19
- package/dist/fabric/index.d.ts.map +1 -0
- package/dist/fabric/index.js +23 -0
- package/dist/fabric/input/CommandBar.svelte +96 -0
- package/dist/fabric/input/CommandBar.svelte.d.ts +23 -0
- package/dist/fabric/input/CommandBar.svelte.d.ts.map +1 -0
- package/dist/fabric/input/CommandBar.test.js +46 -0
- package/{src → dist}/fabric/input/KeyboardShortcuts.svelte +17 -18
- package/dist/fabric/input/KeyboardShortcuts.svelte.d.ts +22 -0
- package/dist/fabric/input/KeyboardShortcuts.svelte.d.ts.map +1 -0
- package/dist/fabric/input/KeyboardShortcuts.test.js +89 -0
- package/{src/fabric/input/index.ts → dist/fabric/input/index.d.ts} +4 -3
- package/dist/fabric/input/index.d.ts.map +1 -0
- package/dist/fabric/input/index.js +10 -0
- package/dist/fabric/layout/CollapsiblePanel.svelte +378 -0
- package/dist/fabric/layout/CollapsiblePanel.svelte.d.ts +74 -0
- package/dist/fabric/layout/CollapsiblePanel.svelte.d.ts.map +1 -0
- package/dist/fabric/layout/GlassBox.svelte +206 -0
- package/dist/fabric/layout/GlassBox.svelte.d.ts +23 -0
- package/dist/fabric/layout/GlassBox.svelte.d.ts.map +1 -0
- package/{src → dist}/fabric/layout/KanbanBoard.svelte +15 -15
- package/dist/fabric/layout/KanbanBoard.svelte.d.ts +30 -0
- package/dist/fabric/layout/KanbanBoard.svelte.d.ts.map +1 -0
- package/dist/fabric/layout/KanbanBoard.test.js +25 -0
- package/{src → dist}/fabric/layout/KanbanCard.svelte +30 -30
- package/dist/fabric/layout/KanbanCard.svelte.d.ts +23 -0
- package/dist/fabric/layout/KanbanCard.svelte.d.ts.map +1 -0
- package/{src → dist}/fabric/layout/KanbanColumn.svelte +30 -30
- package/dist/fabric/layout/KanbanColumn.svelte.d.ts +26 -0
- package/dist/fabric/layout/KanbanColumn.svelte.d.ts.map +1 -0
- package/dist/fabric/layout/index.d.ts +20 -0
- package/dist/fabric/layout/index.d.ts.map +1 -0
- package/{src/fabric/layout/index.ts → dist/fabric/layout/index.js} +4 -6
- package/{src → dist}/fabric/navigation/ActivityRail.svelte +44 -31
- package/dist/fabric/navigation/ActivityRail.svelte.d.ts +34 -0
- package/dist/fabric/navigation/ActivityRail.svelte.d.ts.map +1 -0
- package/dist/fabric/navigation/ActivityRail.test.js +82 -0
- package/{src/fabric/navigation/index.ts → dist/fabric/navigation/index.d.ts} +3 -3
- package/dist/fabric/navigation/index.d.ts.map +1 -0
- package/dist/fabric/navigation/index.js +9 -0
- package/dist/g0-generative/index.d.ts +18 -0
- package/dist/g0-generative/index.d.ts.map +1 -0
- package/dist/g0-generative/index.js +15 -0
- package/dist/g0-generative/library/ComponentLibrary.d.ts +36 -0
- package/dist/g0-generative/library/ComponentLibrary.d.ts.map +1 -0
- package/dist/g0-generative/library/ComponentLibrary.js +172 -0
- package/dist/g0-generative/library/types.d.ts +30 -0
- package/dist/g0-generative/library/types.d.ts.map +1 -0
- package/dist/g0-generative/library/types.js +6 -0
- package/dist/g0-generative/parser/parseOpenUILang.d.ts +17 -0
- package/dist/g0-generative/parser/parseOpenUILang.d.ts.map +1 -0
- package/dist/g0-generative/parser/parseOpenUILang.js +319 -0
- package/dist/g0-generative/parser/types.d.ts +41 -0
- package/dist/g0-generative/parser/types.d.ts.map +1 -0
- package/dist/g0-generative/parser/types.js +12 -0
- package/dist/g0-generative/prompt-gen/generateSystemPrompt.d.ts +18 -0
- package/dist/g0-generative/prompt-gen/generateSystemPrompt.d.ts.map +1 -0
- package/dist/g0-generative/prompt-gen/generateSystemPrompt.js +28 -0
- package/dist/g0-generative/renderer/OpenUIRenderer.svelte +188 -0
- package/dist/g0-generative/renderer/OpenUIRenderer.svelte.d.ts +20 -0
- package/dist/g0-generative/renderer/OpenUIRenderer.svelte.d.ts.map +1 -0
- package/dist/g0-generative/streaming/StreamingAdapter.d.ts +36 -0
- package/dist/g0-generative/streaming/StreamingAdapter.d.ts.map +1 -0
- package/dist/g0-generative/streaming/StreamingAdapter.js +110 -0
- package/{src → dist}/g0-geo/SovereignMap.svelte +2 -2
- package/dist/g0-geo/SovereignMap.svelte.d.ts +22 -0
- package/dist/g0-geo/SovereignMap.svelte.d.ts.map +1 -0
- package/dist/g0-geo/index.d.ts +2 -0
- package/dist/g0-geo/index.d.ts.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/l0-layout/SectionSplitter.svelte +83 -0
- package/dist/l0-layout/SectionSplitter.svelte.d.ts +8 -0
- package/dist/l0-layout/SectionSplitter.svelte.d.ts.map +1 -0
- package/dist/l0-layout/SnapPanel.svelte +286 -0
- package/dist/l0-layout/SnapPanel.svelte.d.ts +38 -0
- package/dist/l0-layout/SnapPanel.svelte.d.ts.map +1 -0
- package/dist/l0-layout/ValidityScoreDisplay.svelte +155 -0
- package/dist/l0-layout/ValidityScoreDisplay.svelte.d.ts +13 -0
- package/dist/l0-layout/ValidityScoreDisplay.svelte.d.ts.map +1 -0
- package/dist/l0-layout/VirtualGrid.svelte +225 -0
- package/dist/l0-layout/VirtualGrid.svelte.d.ts +47 -0
- package/dist/l0-layout/VirtualGrid.svelte.d.ts.map +1 -0
- package/{src → dist}/l0-layout/block-writer/BlockConnectionLines.svelte +1 -1
- package/dist/l0-layout/block-writer/BlockConnectionLines.svelte.d.ts +11 -0
- package/dist/l0-layout/block-writer/BlockConnectionLines.svelte.d.ts.map +1 -0
- package/{src → dist}/l0-layout/block-writer/BlockContent.svelte +6 -6
- package/dist/l0-layout/block-writer/BlockContent.svelte.d.ts +11 -0
- package/dist/l0-layout/block-writer/BlockContent.svelte.d.ts.map +1 -0
- package/{src → dist}/l0-layout/block-writer/BlockHeader.svelte +1 -1
- package/dist/l0-layout/block-writer/BlockHeader.svelte.d.ts +17 -0
- package/dist/l0-layout/block-writer/BlockHeader.svelte.d.ts.map +1 -0
- package/{src → dist}/l0-layout/block-writer/BlockItem.svelte +7 -7
- package/dist/l0-layout/block-writer/BlockItem.svelte.d.ts +22 -0
- package/dist/l0-layout/block-writer/BlockItem.svelte.d.ts.map +1 -0
- package/dist/l0-layout/block-writer/BlockWriter.svelte.d.ts +23 -0
- package/dist/l0-layout/block-writer/BlockWriter.svelte.d.ts.map +1 -0
- package/dist/l0-layout/block-writer/block-writer-types.d.ts +48 -0
- package/dist/l0-layout/block-writer/block-writer-types.d.ts.map +1 -0
- package/dist/l0-layout/block-writer/block-writer-types.js +13 -0
- package/dist/l0-layout/block-writer/index.d.ts +9 -0
- package/dist/l0-layout/block-writer/index.d.ts.map +1 -0
- package/{src/l0-layout/block-writer/index.ts → dist/l0-layout/block-writer/index.js} +0 -13
- package/dist/l0-layout/block-writer/markdown.d.ts +16 -0
- package/dist/l0-layout/block-writer/markdown.d.ts.map +1 -0
- package/dist/l0-layout/block-writer/markdown.js +96 -0
- package/dist/l0-layout/card/CompactCard.svelte +114 -0
- package/dist/l0-layout/card/CompactCard.svelte.d.ts +11 -0
- package/dist/l0-layout/card/CompactCard.svelte.d.ts.map +1 -0
- package/dist/l0-layout/chat-view/ChatViewLayout.svelte.d.ts +11 -0
- package/dist/l0-layout/chat-view/ChatViewLayout.svelte.d.ts.map +1 -0
- package/{src → dist}/l0-layout/epistemic/AllayDetailPanel.svelte +3 -5
- package/dist/l0-layout/epistemic/AllayDetailPanel.svelte.d.ts +9 -0
- package/dist/l0-layout/epistemic/AllayDetailPanel.svelte.d.ts.map +1 -0
- package/{src → dist}/l0-layout/epistemic/AssayDetailPanel.svelte +10 -9
- package/dist/l0-layout/epistemic/AssayDetailPanel.svelte.d.ts +11 -0
- package/dist/l0-layout/epistemic/AssayDetailPanel.svelte.d.ts.map +1 -0
- package/{src → dist}/l0-layout/epistemic/AvenueTrace.svelte +1 -1
- package/dist/l0-layout/epistemic/AvenueTrace.svelte.d.ts +10 -0
- package/dist/l0-layout/epistemic/AvenueTrace.svelte.d.ts.map +1 -0
- package/{src → dist}/l0-layout/epistemic/KnowledgeDetailPanel.svelte +4 -7
- package/dist/l0-layout/epistemic/KnowledgeDetailPanel.svelte.d.ts +10 -0
- package/dist/l0-layout/epistemic/KnowledgeDetailPanel.svelte.d.ts.map +1 -0
- package/{src → dist}/l0-layout/epistemic/ParadigmLens.svelte +1 -1
- package/dist/l0-layout/epistemic/ParadigmLens.svelte.d.ts +10 -0
- package/dist/l0-layout/epistemic/ParadigmLens.svelte.d.ts.map +1 -0
- package/{src → dist}/l0-layout/epistemic/ProvenanceChain.svelte +2 -3
- package/dist/l0-layout/epistemic/ProvenanceChain.svelte.d.ts +10 -0
- package/dist/l0-layout/epistemic/ProvenanceChain.svelte.d.ts.map +1 -0
- package/{src → dist}/l0-layout/epistemic/TrustView.svelte +4 -8
- package/dist/l0-layout/epistemic/TrustView.svelte.d.ts +10 -0
- package/dist/l0-layout/epistemic/TrustView.svelte.d.ts.map +1 -0
- package/dist/l0-layout/epistemic/index.d.ts +8 -0
- package/dist/l0-layout/epistemic/index.d.ts.map +1 -0
- package/dist/l0-layout/grant/GrantCard.svelte +179 -0
- package/dist/l0-layout/grant/GrantCard.svelte.d.ts +18 -0
- package/dist/l0-layout/grant/GrantCard.svelte.d.ts.map +1 -0
- package/dist/l0-layout/grant/GrantDraftEditor.svelte +413 -0
- package/dist/l0-layout/grant/GrantDraftEditor.svelte.d.ts +28 -0
- package/dist/l0-layout/grant/GrantDraftEditor.svelte.d.ts.map +1 -0
- package/dist/l0-layout/grant/index.d.ts +3 -0
- package/dist/l0-layout/grant/index.d.ts.map +1 -0
- package/dist/l0-layout/grant/index.js +2 -0
- package/dist/l0-layout/grove/AccordCard.svelte.d.ts +12 -0
- package/dist/l0-layout/grove/AccordCard.svelte.d.ts.map +1 -0
- package/dist/l0-layout/grove/GroveCard.svelte.d.ts +16 -0
- package/dist/l0-layout/grove/GroveCard.svelte.d.ts.map +1 -0
- package/dist/l0-layout/grove/MemberBadge.svelte.d.ts +12 -0
- package/dist/l0-layout/grove/MemberBadge.svelte.d.ts.map +1 -0
- package/dist/l0-layout/grove/MemberList.svelte.d.ts +10 -0
- package/dist/l0-layout/grove/MemberList.svelte.d.ts.map +1 -0
- package/dist/l0-layout/grove/grove-types.d.ts +24 -0
- package/dist/l0-layout/grove/grove-types.d.ts.map +1 -0
- package/dist/l0-layout/grove/grove-types.js +2 -0
- package/dist/l0-layout/grove/index.d.ts +6 -0
- package/dist/l0-layout/grove/index.d.ts.map +1 -0
- package/{src/l0-layout/grove/index.ts → dist/l0-layout/grove/index.js} +0 -9
- package/dist/l0-layout/index.d.ts +23 -0
- package/dist/l0-layout/index.d.ts.map +1 -0
- package/{src/l0-layout/index.ts → dist/l0-layout/index.js} +11 -30
- package/{src → dist}/l0-layout/kanban/KanbanBoard.svelte +2 -2
- package/dist/l0-layout/kanban/KanbanBoard.svelte.d.ts +9 -0
- package/dist/l0-layout/kanban/KanbanBoard.svelte.d.ts.map +1 -0
- package/dist/l0-layout/kanban/KanbanCard.svelte.d.ts +28 -0
- package/dist/l0-layout/kanban/KanbanCard.svelte.d.ts.map +1 -0
- package/{src → dist}/l0-layout/kanban/KanbanColumn.svelte +1 -1
- package/dist/l0-layout/kanban/KanbanColumn.svelte.d.ts +18 -0
- package/dist/l0-layout/kanban/KanbanColumn.svelte.d.ts.map +1 -0
- package/dist/l0-layout/kanban/KanbanViewLayout.svelte.d.ts +10 -0
- package/dist/l0-layout/kanban/KanbanViewLayout.svelte.d.ts.map +1 -0
- package/dist/l0-layout/workspace/WorkspaceLayout.svelte.d.ts +12 -0
- package/dist/l0-layout/workspace/WorkspaceLayout.svelte.d.ts.map +1 -0
- package/dist/map/index.d.ts +3 -0
- package/dist/map/index.d.ts.map +1 -0
- package/dist/map/index.js +4 -0
- package/dist/n0-node-graph/GraphEditor.svelte.d.ts +16 -0
- package/dist/n0-node-graph/GraphEditor.svelte.d.ts.map +1 -0
- package/dist/n0-node-graph/GraphHistory.svelte.d.ts +22 -0
- package/dist/n0-node-graph/GraphHistory.svelte.d.ts.map +1 -0
- package/{src → dist}/n0-node-graph/Node.svelte +3 -3
- package/dist/n0-node-graph/Node.svelte.d.ts +20 -0
- package/dist/n0-node-graph/Node.svelte.d.ts.map +1 -0
- package/dist/n0-node-graph/NodeCanvas.svelte.d.ts +12 -0
- package/dist/n0-node-graph/NodeCanvas.svelte.d.ts.map +1 -0
- package/dist/n0-node-graph/NodeEdge.svelte.d.ts +20 -0
- package/dist/n0-node-graph/NodeEdge.svelte.d.ts.map +1 -0
- package/{src → dist}/n0-node-graph/NodePalette.svelte +5 -5
- package/dist/n0-node-graph/NodePalette.svelte.d.ts +9 -0
- package/dist/n0-node-graph/NodePalette.svelte.d.ts.map +1 -0
- package/dist/n0-node-graph/NodePort.svelte.d.ts +18 -0
- package/dist/n0-node-graph/NodePort.svelte.d.ts.map +1 -0
- package/{src/n0-node-graph/index.ts → dist/n0-node-graph/index.d.ts} +2 -24
- package/dist/n0-node-graph/index.d.ts.map +1 -0
- package/dist/n0-node-graph/index.js +11 -0
- package/dist/n0-node-graph/n0-tokens.css +29 -0
- package/dist/n0-node-graph/node-port-types.d.ts +18 -0
- package/dist/n0-node-graph/node-port-types.d.ts.map +1 -0
- package/dist/n0-node-graph/node-port-types.js +3 -0
- package/dist/n0-node-graph/types.d.ts +61 -0
- package/dist/n0-node-graph/types.d.ts.map +1 -0
- package/dist/n0-node-graph/types.js +3 -0
- package/dist/n0-node-graph/validate.d.ts +11 -0
- package/dist/n0-node-graph/validate.d.ts.map +1 -0
- package/dist/n0-node-graph/validate.js +270 -0
- package/dist/n0-node-graph/validate.test.js +646 -0
- package/{src → dist}/n1-flow-canvas/FlowCanvas.svelte +4 -12
- package/dist/n1-flow-canvas/FlowCanvas.svelte.d.ts +11 -0
- package/dist/n1-flow-canvas/FlowCanvas.svelte.d.ts.map +1 -0
- package/dist/n1-flow-canvas/graph-state.svelte.d.ts +18 -0
- package/dist/n1-flow-canvas/graph-state.svelte.d.ts.map +1 -0
- package/dist/n1-flow-canvas/graph-state.svelte.js +81 -0
- package/dist/n1-flow-canvas/index.d.ts +6 -0
- package/dist/n1-flow-canvas/index.d.ts.map +1 -0
- package/{src/n1-flow-canvas/index.ts → dist/n1-flow-canvas/index.js} +0 -15
- package/dist/n1-flow-canvas/layout.d.ts +4 -0
- package/dist/n1-flow-canvas/layout.d.ts.map +1 -0
- package/dist/n1-flow-canvas/layout.js +95 -0
- package/dist/n1-flow-canvas/layout.worker.d.ts +2 -0
- package/dist/n1-flow-canvas/layout.worker.d.ts.map +1 -0
- package/dist/n1-flow-canvas/layout.worker.js +106 -0
- package/dist/n1-flow-canvas/types.d.ts +65 -0
- package/dist/n1-flow-canvas/types.d.ts.map +1 -0
- package/dist/n1-flow-canvas/types.js +6 -0
- package/dist/n1-flow-canvas/utils.d.ts +50 -0
- package/dist/n1-flow-canvas/utils.d.ts.map +1 -0
- package/dist/n1-flow-canvas/utils.js +113 -0
- package/dist/n2-manifold-disk/ManifoldDisk.svelte.d.ts +21 -0
- package/dist/n2-manifold-disk/ManifoldDisk.svelte.d.ts.map +1 -0
- package/dist/n2-manifold-disk/index.d.ts +4 -0
- package/dist/n2-manifold-disk/index.d.ts.map +1 -0
- package/{src/n2-manifold-disk/index.ts → dist/n2-manifold-disk/index.js} +0 -2
- package/dist/n2-manifold-disk/poincare.d.ts +67 -0
- package/dist/n2-manifold-disk/poincare.d.ts.map +1 -0
- package/dist/n2-manifold-disk/poincare.js +134 -0
- package/{src → dist}/n3-force-graph/ForceGraph.svelte +19 -18
- package/dist/n3-force-graph/ForceGraph.svelte.d.ts +36 -0
- package/dist/n3-force-graph/ForceGraph.svelte.d.ts.map +1 -0
- package/dist/n3-force-graph/GraphTooltip.svelte.d.ts +19 -0
- package/dist/n3-force-graph/GraphTooltip.svelte.d.ts.map +1 -0
- package/dist/n3-force-graph/animated-edge.d.ts +18 -0
- package/dist/n3-force-graph/animated-edge.d.ts.map +1 -0
- package/dist/n3-force-graph/animated-edge.js +87 -0
- package/dist/n3-force-graph/health-node.d.ts +20 -0
- package/dist/n3-force-graph/health-node.d.ts.map +1 -0
- package/dist/n3-force-graph/health-node.js +110 -0
- package/dist/n3-force-graph/index.d.ts +7 -0
- package/dist/n3-force-graph/index.d.ts.map +1 -0
- package/{src/n3-force-graph/index.ts → dist/n3-force-graph/index.js} +1 -19
- package/dist/n3-force-graph/types.d.ts +60 -0
- package/dist/n3-force-graph/types.d.ts.map +1 -0
- package/dist/n3-force-graph/types.js +22 -0
- package/{src → dist}/n4-adaptive-manifold/AdaptiveManifold.svelte +1 -1
- package/dist/n4-adaptive-manifold/AdaptiveManifold.svelte.d.ts +24 -0
- package/dist/n4-adaptive-manifold/AdaptiveManifold.svelte.d.ts.map +1 -0
- package/{src → dist}/n4-adaptive-manifold/DetailCard.svelte +9 -9
- package/dist/n4-adaptive-manifold/DetailCard.svelte.d.ts +10 -0
- package/dist/n4-adaptive-manifold/DetailCard.svelte.d.ts.map +1 -0
- package/{src → dist}/n4-adaptive-manifold/SuggestionIndicator.svelte +8 -8
- package/dist/n4-adaptive-manifold/SuggestionIndicator.svelte.d.ts +11 -0
- package/dist/n4-adaptive-manifold/SuggestionIndicator.svelte.d.ts.map +1 -0
- package/dist/n4-adaptive-manifold/classifier.d.ts +6 -0
- package/dist/n4-adaptive-manifold/classifier.d.ts.map +1 -0
- package/dist/n4-adaptive-manifold/classifier.js +123 -0
- package/dist/n4-adaptive-manifold/index.d.ts +12 -0
- package/dist/n4-adaptive-manifold/index.d.ts.map +1 -0
- package/{src/n4-adaptive-manifold/index.ts → dist/n4-adaptive-manifold/index.js} +0 -33
- package/dist/n4-adaptive-manifold/n4-tokens.css +155 -0
- package/dist/n4-adaptive-manifold/orchestrator.d.ts +61 -0
- package/dist/n4-adaptive-manifold/orchestrator.d.ts.map +1 -0
- package/dist/n4-adaptive-manifold/orchestrator.js +231 -0
- package/dist/n4-adaptive-manifold/phase-theme.d.ts +9 -0
- package/dist/n4-adaptive-manifold/phase-theme.d.ts.map +1 -0
- package/dist/n4-adaptive-manifold/phase-theme.js +82 -0
- package/dist/n4-adaptive-manifold/pinnacle-events.d.ts +34 -0
- package/dist/n4-adaptive-manifold/pinnacle-events.d.ts.map +1 -0
- package/dist/n4-adaptive-manifold/pinnacle-events.js +108 -0
- package/dist/n4-adaptive-manifold/providers/gravitational-provider.d.ts +16 -0
- package/dist/n4-adaptive-manifold/providers/gravitational-provider.d.ts.map +1 -0
- package/dist/n4-adaptive-manifold/providers/gravitational-provider.js +162 -0
- package/dist/n4-adaptive-manifold/providers/manifold-provider.d.ts +7 -0
- package/dist/n4-adaptive-manifold/providers/manifold-provider.d.ts.map +1 -0
- package/dist/n4-adaptive-manifold/providers/manifold-provider.js +222 -0
- package/dist/n4-adaptive-manifold/transition.d.ts +19 -0
- package/dist/n4-adaptive-manifold/transition.d.ts.map +1 -0
- package/dist/n4-adaptive-manifold/transition.js +71 -0
- package/dist/n4-adaptive-manifold/types.d.ts +233 -0
- package/dist/n4-adaptive-manifold/types.d.ts.map +1 -0
- package/dist/n4-adaptive-manifold/types.js +17 -0
- package/dist/p0-primitives/ThemeProvider.svelte +183 -0
- package/dist/p0-primitives/ThemeProvider.svelte.d.ts +69 -0
- package/dist/p0-primitives/ThemeProvider.svelte.d.ts.map +1 -0
- package/dist/p0-primitives/canvas-theme.d.ts +17 -0
- package/dist/p0-primitives/canvas-theme.d.ts.map +1 -0
- package/dist/p0-primitives/canvas-theme.js +36 -0
- package/dist/p0-primitives/index.d.ts +8 -0
- package/dist/p0-primitives/index.d.ts.map +1 -0
- package/{src/p0-primitives/index.ts → dist/p0-primitives/index.js} +4 -1
- package/dist/p0-primitives/theme.d.ts +38 -0
- package/dist/p0-primitives/theme.d.ts.map +1 -0
- package/dist/p0-primitives/theme.js +150 -0
- package/dist/p0-primitives/tokens/contrast-audit.d.ts +42 -0
- package/dist/p0-primitives/tokens/contrast-audit.d.ts.map +1 -0
- package/dist/p0-primitives/tokens/contrast-audit.js +331 -0
- package/dist/p0-primitives/tokens/contrast-audit.test.js +84 -0
- package/dist/p0-primitives/tokens/control-room.css +309 -0
- package/dist/p0-primitives/tokens/index.d.ts +2 -0
- package/dist/p0-primitives/tokens/index.d.ts.map +1 -0
- package/dist/p0-primitives/tokens/index.js +2 -0
- package/dist/p0-primitives/tokens/tokens.css +247 -0
- package/dist/p0-primitives/tokens/validity-tokens.css +83 -0
- package/dist/p0-primitives/types/geometry.d.ts +18 -0
- package/dist/p0-primitives/types/geometry.d.ts.map +1 -0
- package/dist/p0-primitives/types/geometry.js +4 -0
- package/dist/p0-primitives/types/index.d.ts +113 -0
- package/dist/p0-primitives/types/index.d.ts.map +1 -0
- package/dist/p0-primitives/types/index.js +5 -0
- package/dist/p0-primitives/types/plugin-types.d.ts +46 -0
- package/dist/p0-primitives/types/plugin-types.d.ts.map +1 -0
- package/dist/p0-primitives/types/plugin-types.js +7 -0
- package/dist/p0-primitives/utils/index.d.ts +13 -0
- package/dist/p0-primitives/utils/index.d.ts.map +1 -0
- package/dist/p0-primitives/utils/index.js +30 -0
- package/dist/platform/hud-protocol.d.ts +14 -0
- package/dist/platform/hud-protocol.d.ts.map +1 -0
- package/dist/platform/hud-protocol.js +6 -0
- package/dist/platform/index.d.ts +2 -0
- package/dist/platform/index.d.ts.map +1 -0
- package/{src/platform/index.ts → dist/platform/index.js} +1 -2
- package/dist/s0-lifecycle/CanvasRenderContext.d.ts +20 -0
- package/dist/s0-lifecycle/CanvasRenderContext.d.ts.map +1 -0
- package/dist/s0-lifecycle/CanvasRenderContext.js +90 -0
- package/dist/s0-lifecycle/ConstraintContext.d.ts +27 -0
- package/dist/s0-lifecycle/ConstraintContext.d.ts.map +1 -0
- package/dist/s0-lifecycle/ConstraintContext.js +3 -0
- package/dist/s0-lifecycle/InteractionContext.d.ts +38 -0
- package/dist/s0-lifecycle/InteractionContext.d.ts.map +1 -0
- package/dist/s0-lifecycle/InteractionContext.js +3 -0
- package/dist/s0-lifecycle/LayoutContext.d.ts +19 -0
- package/dist/s0-lifecycle/LayoutContext.d.ts.map +1 -0
- package/dist/s0-lifecycle/LayoutContext.js +3 -0
- package/dist/s0-lifecycle/Lifecycle.d.ts +60 -0
- package/dist/s0-lifecycle/Lifecycle.d.ts.map +1 -0
- package/dist/s0-lifecycle/Lifecycle.js +38 -0
- package/dist/s0-lifecycle/RenderContext.d.ts +48 -0
- package/dist/s0-lifecycle/RenderContext.d.ts.map +1 -0
- package/dist/s0-lifecycle/RenderContext.js +3 -0
- package/dist/s0-lifecycle/Scene.d.ts +61 -0
- package/dist/s0-lifecycle/Scene.d.ts.map +1 -0
- package/dist/s0-lifecycle/Scene.js +58 -0
- package/dist/s0-lifecycle/index.d.ts +8 -0
- package/dist/s0-lifecycle/index.d.ts.map +1 -0
- package/dist/s0-lifecycle/index.js +19 -0
- package/dist/s0-state/SyncStatus.svelte +275 -0
- package/dist/s0-state/SyncStatus.svelte.d.ts +33 -0
- package/dist/s0-state/SyncStatus.svelte.d.ts.map +1 -0
- package/dist/s0-state/ThemeStore.svelte.d.ts +12 -0
- package/dist/s0-state/ThemeStore.svelte.d.ts.map +1 -0
- package/dist/s0-state/ThemeStore.svelte.js +61 -0
- package/dist/s0-state/ThemeStore.test.js +68 -0
- package/dist/s0-state/create-store.d.ts +23 -0
- package/dist/s0-state/create-store.d.ts.map +1 -0
- package/dist/s0-state/create-store.js +58 -0
- package/dist/s0-state/derived.d.ts +13 -0
- package/dist/s0-state/derived.d.ts.map +1 -0
- package/dist/s0-state/derived.js +25 -0
- package/dist/s0-state/index.d.ts +10 -0
- package/dist/s0-state/index.d.ts.map +1 -0
- package/dist/s0-state/index.js +7 -0
- package/dist/s0-state/modal-stack-store.svelte.d.ts +43 -0
- package/dist/s0-state/modal-stack-store.svelte.d.ts.map +1 -0
- package/dist/s0-state/modal-stack-store.svelte.js +63 -0
- package/dist/s0-state/virtual.d.ts +154 -0
- package/dist/s0-state/virtual.d.ts.map +1 -0
- package/dist/s0-state/virtual.js +207 -0
- package/{src → dist}/showcase/Showcase.svelte +1 -1
- package/dist/showcase/Showcase.svelte.d.ts +4 -0
- package/dist/showcase/Showcase.svelte.d.ts.map +1 -0
- package/dist/spatial/BspTilingCanvas.svelte +196 -0
- package/dist/spatial/BspTilingCanvas.svelte.d.ts +12 -0
- package/dist/spatial/BspTilingCanvas.svelte.d.ts.map +1 -0
- package/dist/spatial/BspTilingSimulation.svelte.d.ts +43 -0
- package/dist/spatial/BspTilingSimulation.svelte.d.ts.map +1 -0
- package/dist/spatial/BspTilingSimulation.svelte.js +183 -0
- package/dist/spatial/CameraController.svelte.d.ts +39 -0
- package/dist/spatial/CameraController.svelte.d.ts.map +1 -0
- package/dist/spatial/CameraController.svelte.js +174 -0
- package/dist/spatial/ForceCanvas.svelte +151 -0
- package/dist/spatial/ForceCanvas.svelte.d.ts +16 -0
- package/dist/spatial/ForceCanvas.svelte.d.ts.map +1 -0
- package/dist/spatial/ForceSimulation.svelte.d.ts +23 -0
- package/dist/spatial/ForceSimulation.svelte.d.ts.map +1 -0
- package/dist/spatial/ForceSimulation.svelte.js +131 -0
- package/{src → dist}/spatial/LodRenderer.svelte +3 -1
- package/dist/spatial/LodRenderer.svelte.d.ts +35 -0
- package/dist/spatial/LodRenderer.svelte.d.ts.map +1 -0
- package/dist/spatial/SnapZoomCamera.svelte +187 -0
- package/dist/spatial/SnapZoomCamera.svelte.d.ts +14 -0
- package/dist/spatial/SnapZoomCamera.svelte.d.ts.map +1 -0
- package/{src → dist}/spatial/ZoneTiler.svelte +26 -7
- package/dist/spatial/ZoneTiler.svelte.d.ts +27 -0
- package/dist/spatial/ZoneTiler.svelte.d.ts.map +1 -0
- package/dist/spatial/camera-types.d.ts +34 -0
- package/dist/spatial/camera-types.d.ts.map +1 -0
- package/dist/spatial/camera-types.js +10 -0
- package/dist/spatial/content-proportional-bsp.d.ts +46 -0
- package/dist/spatial/content-proportional-bsp.d.ts.map +1 -0
- package/dist/spatial/content-proportional-bsp.js +166 -0
- package/dist/spatial/force-canvas-types.d.ts +65 -0
- package/dist/spatial/force-canvas-types.d.ts.map +1 -0
- package/dist/spatial/force-canvas-types.js +32 -0
- package/dist/spatial/index.d.ts +9 -0
- package/dist/spatial/index.d.ts.map +1 -0
- package/{src/spatial/index.ts → dist/spatial/index.js} +4 -2
- package/dist/spatial/lod-types.d.ts +39 -0
- package/dist/spatial/lod-types.d.ts.map +1 -0
- package/dist/spatial/lod-types.js +34 -0
- package/dist/spatial/zone-tiler-types.d.ts +70 -0
- package/dist/spatial/zone-tiler-types.d.ts.map +1 -0
- package/dist/spatial/zone-tiler-types.js +92 -0
- package/dist/stores/vaultStore.svelte.d.ts +24 -0
- package/dist/stores/vaultStore.svelte.d.ts.map +1 -0
- package/dist/t0-transport/connection.d.ts +11 -0
- package/dist/t0-transport/connection.d.ts.map +1 -0
- package/dist/t0-transport/connection.js +22 -0
- package/dist/t0-transport/error.d.ts +13 -0
- package/dist/t0-transport/error.d.ts.map +1 -0
- package/dist/t0-transport/error.js +31 -0
- package/dist/t0-transport/events.d.ts +13 -0
- package/dist/t0-transport/events.d.ts.map +1 -0
- package/dist/t0-transport/events.js +37 -0
- package/dist/t0-transport/index.d.ts +6 -0
- package/dist/t0-transport/index.d.ts.map +1 -0
- package/dist/t0-transport/index.js +7 -0
- package/dist/t0-transport/invoke.d.ts +25 -0
- package/dist/t0-transport/invoke.d.ts.map +1 -0
- package/dist/t0-transport/invoke.js +47 -0
- package/dist/t0-transport/quality.d.ts +39 -0
- package/dist/t0-transport/quality.d.ts.map +1 -0
- package/dist/t0-transport/quality.js +238 -0
- package/dist/tauri/index.d.ts +3 -0
- package/dist/tauri/index.d.ts.map +1 -0
- package/{src/tauri/index.ts → dist/tauri/index.js} +2 -4
- package/dist/u0-primitives/AccordionSection.svelte +186 -0
- package/dist/u0-primitives/AccordionSection.svelte.d.ts +28 -0
- package/dist/u0-primitives/AccordionSection.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/LockIndicator.svelte +244 -0
- package/dist/u0-primitives/LockIndicator.svelte.d.ts +31 -0
- package/dist/u0-primitives/LockIndicator.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/VerticalToolbar.svelte +208 -0
- package/dist/u0-primitives/VerticalToolbar.svelte.d.ts +32 -0
- package/dist/u0-primitives/VerticalToolbar.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/accordion/Accordion.svelte +185 -0
- package/dist/u0-primitives/accordion/Accordion.svelte.d.ts +34 -0
- package/dist/u0-primitives/accordion/Accordion.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/accordion/Accordion.test.js +99 -0
- package/dist/u0-primitives/accordion/index.d.ts +3 -0
- package/dist/u0-primitives/accordion/index.d.ts.map +1 -0
- package/dist/u0-primitives/accordion/index.js +1 -0
- package/dist/u0-primitives/allay-gauge/AllayGauge.svelte +58 -0
- package/dist/u0-primitives/allay-gauge/AllayGauge.svelte.d.ts +10 -0
- package/dist/u0-primitives/allay-gauge/AllayGauge.svelte.d.ts.map +1 -0
- package/{src → dist}/u0-primitives/animated-icon/AnimatedIcon.svelte +7 -7
- package/dist/u0-primitives/animated-icon/AnimatedIcon.svelte.d.ts +22 -0
- package/dist/u0-primitives/animated-icon/AnimatedIcon.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/animated-icon/README.md +70 -0
- package/dist/u0-primitives/animated-icon/index.d.ts +9 -0
- package/dist/u0-primitives/animated-icon/index.d.ts.map +1 -0
- package/dist/u0-primitives/animated-icon/index.js +9 -0
- package/{src → dist}/u0-primitives/avatar/Avatar.svelte +3 -3
- package/dist/u0-primitives/avatar/Avatar.svelte.d.ts +11 -0
- package/dist/u0-primitives/avatar/Avatar.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/avatar/index.d.ts +3 -0
- package/dist/u0-primitives/avatar/index.d.ts.map +1 -0
- package/dist/u0-primitives/avatar/index.js +1 -0
- package/{src → dist}/u0-primitives/badge/Badge.svelte +11 -11
- package/dist/u0-primitives/badge/Badge.svelte.d.ts +12 -0
- package/dist/u0-primitives/badge/Badge.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/badge/Badge.test.js +50 -0
- package/dist/u0-primitives/badge/ValidityBadge.svelte +153 -0
- package/dist/u0-primitives/badge/ValidityBadge.svelte.d.ts +13 -0
- package/dist/u0-primitives/badge/ValidityBadge.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/badge/ValidityBadge.test.js +57 -0
- package/dist/u0-primitives/badge/index.d.ts +3 -0
- package/dist/u0-primitives/badge/index.d.ts.map +1 -0
- package/dist/u0-primitives/badge/index.js +1 -0
- package/dist/u0-primitives/badge/validity-utils.d.ts +8 -0
- package/dist/u0-primitives/badge/validity-utils.d.ts.map +1 -0
- package/dist/u0-primitives/badge/validity-utils.js +18 -0
- package/{src → dist}/u0-primitives/button/Button.svelte +42 -104
- package/dist/u0-primitives/button/Button.svelte.d.ts +18 -0
- package/dist/u0-primitives/button/Button.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/button/Button.test.js +58 -0
- package/dist/u0-primitives/button/index.d.ts +3 -0
- package/dist/u0-primitives/button/index.d.ts.map +1 -0
- package/dist/u0-primitives/button/index.js +1 -0
- package/{src → dist}/u0-primitives/card/Card.svelte +71 -48
- package/dist/u0-primitives/card/Card.svelte.d.ts +18 -0
- package/dist/u0-primitives/card/Card.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/card/index.d.ts +3 -0
- package/dist/u0-primitives/card/index.d.ts.map +1 -0
- package/dist/u0-primitives/card/index.js +1 -0
- package/dist/u0-primitives/command-palette/CommandPalette.svelte +542 -0
- package/dist/u0-primitives/command-palette/CommandPalette.svelte.d.ts +25 -0
- package/dist/u0-primitives/command-palette/CommandPalette.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/command-palette/command-types.d.ts +109 -0
- package/dist/u0-primitives/command-palette/command-types.d.ts.map +1 -0
- package/dist/u0-primitives/command-palette/command-types.js +7 -0
- package/dist/u0-primitives/command-palette/commandStore.svelte.d.ts +100 -0
- package/dist/u0-primitives/command-palette/commandStore.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/command-palette/commandStore.svelte.js +278 -0
- package/dist/u0-primitives/command-palette/index.d.ts +16 -0
- package/dist/u0-primitives/command-palette/index.d.ts.map +1 -0
- package/dist/u0-primitives/command-palette/index.js +14 -0
- package/{src → dist}/u0-primitives/dropdown/Dropdown.svelte +7 -4
- package/dist/u0-primitives/dropdown/Dropdown.svelte.d.ts +21 -0
- package/dist/u0-primitives/dropdown/Dropdown.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/dropdown/Dropdown.test.js +108 -0
- package/dist/u0-primitives/dropdown/index.d.ts +3 -0
- package/dist/u0-primitives/dropdown/index.d.ts.map +1 -0
- package/dist/u0-primitives/dropdown/index.js +1 -0
- package/dist/u0-primitives/grant-badge/GrantStatusBadge.svelte +80 -0
- package/dist/u0-primitives/grant-badge/GrantStatusBadge.svelte.d.ts +9 -0
- package/dist/u0-primitives/grant-badge/GrantStatusBadge.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/grant-badge/index.d.ts +2 -0
- package/dist/u0-primitives/grant-badge/index.d.ts.map +1 -0
- package/dist/u0-primitives/grant-badge/index.js +1 -0
- package/dist/u0-primitives/index.d.ts +27 -0
- package/dist/u0-primitives/index.d.ts.map +1 -0
- package/{src/u0-primitives/index.ts → dist/u0-primitives/index.js} +12 -22
- package/dist/u0-primitives/input/Input.svelte +410 -0
- package/dist/u0-primitives/input/Input.svelte.d.ts +32 -0
- package/dist/u0-primitives/input/Input.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/input/Input.test.js +64 -0
- package/dist/u0-primitives/input/index.d.ts +3 -0
- package/dist/u0-primitives/input/index.d.ts.map +1 -0
- package/dist/u0-primitives/input/index.js +1 -0
- package/{src → dist}/u0-primitives/modal/Modal.svelte +1 -1
- package/dist/u0-primitives/modal/Modal.svelte.d.ts +31 -0
- package/dist/u0-primitives/modal/Modal.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/modal/Modal.test.js +94 -0
- package/dist/u0-primitives/modal/index.d.ts +3 -0
- package/dist/u0-primitives/modal/index.d.ts.map +1 -0
- package/dist/u0-primitives/rsvp/RsvpReader.svelte +256 -0
- package/dist/u0-primitives/rsvp/RsvpReader.svelte.d.ts +13 -0
- package/dist/u0-primitives/rsvp/RsvpReader.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/rsvp/rsvp-utils.d.ts +46 -0
- package/dist/u0-primitives/rsvp/rsvp-utils.d.ts.map +1 -0
- package/dist/u0-primitives/rsvp/rsvp-utils.js +92 -0
- package/{src → dist}/u0-primitives/spinner/Spinner.svelte +3 -3
- package/dist/u0-primitives/spinner/Spinner.svelte.d.ts +9 -0
- package/dist/u0-primitives/spinner/Spinner.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/spinner/Spinner.test.js +58 -0
- package/dist/u0-primitives/spinner/index.d.ts +3 -0
- package/dist/u0-primitives/spinner/index.d.ts.map +1 -0
- package/dist/u0-primitives/spinner/index.js +1 -0
- package/dist/u0-primitives/steps/Steps.svelte +186 -0
- package/dist/u0-primitives/steps/Steps.svelte.d.ts +18 -0
- package/dist/u0-primitives/steps/Steps.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/steps/index.d.ts +3 -0
- package/dist/u0-primitives/steps/index.d.ts.map +1 -0
- package/dist/u0-primitives/steps/index.js +1 -0
- package/{src → dist}/u0-primitives/tabs/Tabs.svelte +2 -2
- package/dist/u0-primitives/tabs/Tabs.svelte.d.ts +14 -0
- package/dist/u0-primitives/tabs/Tabs.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/tabs/Tabs.test.js +81 -0
- package/dist/u0-primitives/tabs/index.d.ts +3 -0
- package/dist/u0-primitives/tabs/index.d.ts.map +1 -0
- package/dist/u0-primitives/tabs/index.js +1 -0
- package/dist/u0-primitives/tabs/tabs-types.d.ts +8 -0
- package/dist/u0-primitives/tabs/tabs-types.d.ts.map +1 -0
- package/dist/u0-primitives/tabs/tabs-types.js +3 -0
- package/{src → dist}/u0-primitives/toggle/Toggle.svelte +8 -10
- package/dist/u0-primitives/toggle/Toggle.svelte.d.ts +13 -0
- package/dist/u0-primitives/toggle/Toggle.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/toggle/Toggle.test.js +46 -0
- package/dist/u0-primitives/toggle/index.d.ts +3 -0
- package/dist/u0-primitives/toggle/index.d.ts.map +1 -0
- package/dist/u0-primitives/toggle/index.js +1 -0
- package/{src → dist}/u0-primitives/tooltip/Tooltip.svelte +1 -1
- package/dist/u0-primitives/tooltip/Tooltip.svelte.d.ts +12 -0
- package/dist/u0-primitives/tooltip/Tooltip.svelte.d.ts.map +1 -0
- package/dist/u0-primitives/tooltip/Tooltip.test.js +150 -0
- package/dist/u0-primitives/tooltip/index.d.ts +3 -0
- package/dist/u0-primitives/tooltip/index.d.ts.map +1 -0
- package/dist/u0-primitives/tooltip/index.js +1 -0
- package/dist/u0-primitives/web-components/button-component.d.ts +13 -0
- package/dist/u0-primitives/web-components/button-component.d.ts.map +1 -0
- package/dist/u0-primitives/web-components/button-component.js +87 -0
- package/dist/u0-primitives/web-components/input-component.d.ts +13 -0
- package/dist/u0-primitives/web-components/input-component.d.ts.map +1 -0
- package/dist/u0-primitives/web-components/input-component.js +91 -0
- package/{src → dist}/v0-diagrams/DiagramPanel.svelte +1 -1
- package/dist/v0-diagrams/DiagramPanel.svelte.d.ts +10 -0
- package/dist/v0-diagrams/DiagramPanel.svelte.d.ts.map +1 -0
- package/dist/v0-diagrams/MarkmapDiagram.svelte.d.ts +9 -0
- package/dist/v0-diagrams/MarkmapDiagram.svelte.d.ts.map +1 -0
- package/dist/v0-diagrams/MermaidDiagram.svelte.d.ts +9 -0
- package/dist/v0-diagrams/MermaidDiagram.svelte.d.ts.map +1 -0
- package/{src/v0-diagrams/index.ts → dist/v0-diagrams/index.d.ts} +1 -0
- package/dist/v0-diagrams/index.d.ts.map +1 -0
- package/dist/v0-diagrams/index.js +3 -0
- package/dist/v0-diagrams/types.d.ts +25 -0
- package/dist/v0-diagrams/types.d.ts.map +1 -0
- package/dist/v0-diagrams/types.js +1 -0
- package/dist/v0-diagrams/v0-tokens.css +6 -0
- package/{src → dist}/x0-enchanted-blocks/components/EnchantedBlock.svelte +15 -15
- package/dist/x0-enchanted-blocks/components/EnchantedBlock.svelte.d.ts +28 -0
- package/dist/x0-enchanted-blocks/components/EnchantedBlock.svelte.d.ts.map +1 -0
- package/{src → dist}/x0-enchanted-blocks/components/NodepadBlock.svelte +13 -13
- package/dist/x0-enchanted-blocks/components/NodepadBlock.svelte.d.ts +11 -0
- package/dist/x0-enchanted-blocks/components/NodepadBlock.svelte.d.ts.map +1 -0
- package/dist/x0-enchanted-blocks/core/block-layout.d.ts +79 -0
- package/dist/x0-enchanted-blocks/core/block-layout.d.ts.map +1 -0
- package/dist/x0-enchanted-blocks/core/block-layout.js +135 -0
- package/dist/x0-enchanted-blocks/core/block-types.d.ts +56 -0
- package/dist/x0-enchanted-blocks/core/block-types.d.ts.map +1 -0
- package/dist/x0-enchanted-blocks/core/block-types.js +151 -0
- package/dist/x0-enchanted-blocks/index.d.ts +7 -0
- package/dist/x0-enchanted-blocks/index.d.ts.map +1 -0
- package/dist/x0-enchanted-blocks/index.js +13 -0
- package/package.json +129 -68
- package/src/base.css +48 -62
- package/src/d0-data-viz/d0-tokens.css +5 -5
- package/src/n0-node-graph/n0-tokens.css +4 -4
- package/src/n4-adaptive-manifold/n4-tokens.css +7 -7
- package/src/p0-primitives/tokens/control-room.css +6 -6
- package/src/p0-primitives/tokens/tokens.css +194 -87
- package/src/p0-primitives/tokens/tokens.json +114 -28
- package/src/p0-primitives/tokens/validity-tokens.css +83 -0
- package/src/u0-primitives/animated-icon/README.md +20 -3
- package/src/d0-data-viz/checkpoint-types.ts +0 -162
- package/src/d0-data-viz/index.ts +0 -58
- package/src/d0-data-viz/storage-map-types.ts +0 -142
- package/src/d0-data-viz/theme-integration.ts +0 -134
- package/src/d0-data-viz/types.ts +0 -53
- package/src/editor/index.ts +0 -2
- package/src/entity-graph-view/types.ts +0 -364
- package/src/epistemic/types.ts +0 -134
- package/src/epistemic/utils.ts +0 -32
- package/src/f0-forms/validation/validate.ts +0 -47
- package/src/fabric/data/index.ts +0 -21
- package/src/fabric/feedback/ToastContainer.svelte +0 -122
- package/src/fabric/input/CommandBar.svelte +0 -79
- package/src/fabric/layout/GlassBox.svelte +0 -193
- package/src/index.ts +0 -68
- package/src/l0-layout/block-writer/block-writer-types.ts +0 -63
- package/src/l0-layout/block-writer/markdown.ts +0 -110
- package/src/l0-layout/grove/grove-types.ts +0 -29
- package/src/n0-node-graph/node-port-types.ts +0 -19
- package/src/n0-node-graph/types.ts +0 -96
- package/src/n0-node-graph/validate.test.ts +0 -722
- package/src/n0-node-graph/validate.ts +0 -371
- package/src/n1-flow-canvas/graph-state.svelte.ts +0 -95
- package/src/n1-flow-canvas/layout.ts +0 -118
- package/src/n1-flow-canvas/layout.worker.ts +0 -128
- package/src/n1-flow-canvas/types.ts +0 -102
- package/src/n1-flow-canvas/utils.ts +0 -146
- package/src/n2-manifold-disk/poincare.ts +0 -184
- package/src/n3-force-graph/animated-edge.ts +0 -107
- package/src/n3-force-graph/health-node.ts +0 -128
- package/src/n3-force-graph/types.ts +0 -94
- package/src/n4-adaptive-manifold/classifier.ts +0 -139
- package/src/n4-adaptive-manifold/orchestrator.ts +0 -301
- package/src/n4-adaptive-manifold/phase-theme.ts +0 -92
- package/src/n4-adaptive-manifold/pinnacle-events.ts +0 -135
- package/src/n4-adaptive-manifold/providers/gravitational-provider.ts +0 -191
- package/src/n4-adaptive-manifold/providers/manifold-provider.ts +0 -276
- package/src/n4-adaptive-manifold/transition.ts +0 -90
- package/src/n4-adaptive-manifold/types.ts +0 -313
- package/src/p0-primitives/tokens/index.ts +0 -6
- package/src/p0-primitives/types/index.ts +0 -123
- package/src/p0-primitives/types/plugin-types.ts +0 -74
- package/src/p0-primitives/utils/index.ts +0 -39
- package/src/platform/hud-protocol.ts +0 -20
- package/src/s0-state/create-store.ts +0 -84
- package/src/s0-state/derived.ts +0 -41
- package/src/s0-state/index.ts +0 -6
- package/src/spatial/BspTilingCanvas.svelte +0 -232
- package/src/spatial/ForceCanvas.svelte +0 -289
- package/src/spatial/SnapZoomCamera.svelte +0 -185
- package/src/spatial/camera-types.ts +0 -45
- package/src/spatial/content-proportional-bsp.ts +0 -253
- package/src/spatial/force-canvas-types.ts +0 -102
- package/src/spatial/lod-types.ts +0 -70
- package/src/spatial/zone-tiler-types.ts +0 -177
- package/src/t0-transport/connection.ts +0 -34
- package/src/t0-transport/error.ts +0 -37
- package/src/t0-transport/events.ts +0 -50
- package/src/t0-transport/index.ts +0 -6
- package/src/t0-transport/invoke.ts +0 -30
- package/src/u0-primitives/allay-gauge/AllayGauge.svelte +0 -90
- package/src/u0-primitives/allay-gauge/index.ts +0 -1
- package/src/u0-primitives/animated-icon/index.ts +0 -31
- package/src/u0-primitives/assay-badge/AssayBadge.svelte +0 -121
- package/src/u0-primitives/assay-badge/AssaySignalBar.svelte +0 -83
- package/src/u0-primitives/assay-badge/index.ts +0 -2
- package/src/u0-primitives/expert-badge/ExpertBadge.svelte +0 -89
- package/src/u0-primitives/expert-badge/index.ts +0 -1
- package/src/u0-primitives/input/Input.svelte +0 -237
- package/src/u0-primitives/tabs/tabs-types.ts +0 -11
- package/src/v0-diagrams/types.ts +0 -28
- package/src/x0-enchanted-blocks/ENCHANTED_BLOCKS_SPEC.md +0 -457
- package/src/x0-enchanted-blocks/core/block-layout.ts +0 -211
- package/src/x0-enchanted-blocks/core/block-types.ts +0 -227
- package/src/x0-enchanted-blocks/index.ts +0 -46
- /package/{src/b0-app-shell/clarification-overlay/index.ts → dist/b0-app-shell/clarification-overlay/index.js} +0 -0
- /package/{src → dist}/demos/ControlRoomDemo.svelte +0 -0
- /package/{src/epistemic/index.ts → dist/epistemic/index.js} +0 -0
- /package/{src/g0-geo/index.ts → dist/g0-geo/index.js} +0 -0
- /package/{src → dist}/l0-layout/block-writer/BlockWriter.svelte +0 -0
- /package/{src → dist}/l0-layout/chat-view/ChatViewLayout.svelte +0 -0
- /package/{src/l0-layout/epistemic/index.ts → dist/l0-layout/epistemic/index.js} +0 -0
- /package/{src → dist}/l0-layout/grove/AccordCard.svelte +0 -0
- /package/{src → dist}/l0-layout/grove/GroveCard.svelte +0 -0
- /package/{src → dist}/l0-layout/grove/MemberBadge.svelte +0 -0
- /package/{src → dist}/l0-layout/grove/MemberList.svelte +0 -0
- /package/{src → dist}/l0-layout/kanban/KanbanCard.svelte +0 -0
- /package/{src → dist}/l0-layout/kanban/KanbanViewLayout.svelte +0 -0
- /package/{src → dist}/l0-layout/workspace/WorkspaceLayout.svelte +0 -0
- /package/{src → dist}/n0-node-graph/GraphEditor.svelte +0 -0
- /package/{src → dist}/n0-node-graph/GraphHistory.svelte +0 -0
- /package/{src → dist}/n0-node-graph/NodeCanvas.svelte +0 -0
- /package/{src → dist}/n0-node-graph/NodeEdge.svelte +0 -0
- /package/{src → dist}/n0-node-graph/NodePort.svelte +0 -0
- /package/{src → dist}/n2-manifold-disk/ManifoldDisk.svelte +0 -0
- /package/{src → dist}/n3-force-graph/GraphTooltip.svelte +0 -0
- /package/{src → dist}/stores/vaultStore.svelte +0 -0
- /package/{src/u0-primitives/modal/index.ts → dist/u0-primitives/modal/index.js} +0 -0
- /package/{src → dist}/v0-diagrams/MarkmapDiagram.svelte +0 -0
- /package/{src → dist}/v0-diagrams/MermaidDiagram.svelte +0 -0
- /package/{src → dist}/vite-env.d.ts +0 -0
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
<script lang="ts" module>
|
|
2
|
+
/**
|
|
3
|
+
* VerticalToolbar — Icon bar for collapsed sidebar peek mode
|
|
4
|
+
*
|
|
5
|
+
* A generalized version of NNJAS IconStrip for the LEAP design system.
|
|
6
|
+
* Provides VS Code-style vertical navigation with tooltips and badges.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* <VerticalToolbar
|
|
10
|
+
* items={[
|
|
11
|
+
* { id: 'files', icon: folderIcon, label: 'Files', onClick: () => {} },
|
|
12
|
+
* { id: 'search', icon: searchIcon, label: 'Search', badge: 3 },
|
|
13
|
+
* ]}
|
|
14
|
+
* />
|
|
15
|
+
*/
|
|
16
|
+
export interface ToolbarItem {
|
|
17
|
+
id: string;
|
|
18
|
+
icon: string;
|
|
19
|
+
label: string;
|
|
20
|
+
active?: boolean;
|
|
21
|
+
badge?: string | number;
|
|
22
|
+
disabled?: boolean;
|
|
23
|
+
onClick?: () => void;
|
|
24
|
+
}
|
|
25
|
+
</script>
|
|
26
|
+
|
|
27
|
+
<script lang="ts">
|
|
28
|
+
interface Props {
|
|
29
|
+
items: ToolbarItem[];
|
|
30
|
+
position?: 'left' | 'right';
|
|
31
|
+
class?: string;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
let { items, position = 'left', class: className = '' }: Props = $props();
|
|
35
|
+
|
|
36
|
+
let hoveredId = $state<string | null>(null);
|
|
37
|
+
|
|
38
|
+
function handleClick(item: ToolbarItem) {
|
|
39
|
+
if (!item.disabled) {
|
|
40
|
+
item.onClick?.();
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
function handleKeydown(e: KeyboardEvent, item: ToolbarItem) {
|
|
45
|
+
if (e.key === 'Enter' || e.key === ' ') {
|
|
46
|
+
e.preventDefault();
|
|
47
|
+
handleClick(item);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
</script>
|
|
51
|
+
|
|
52
|
+
<nav class="vertical-toolbar vertical-toolbar--{position} {className}" aria-label="Toolbar">
|
|
53
|
+
{#each items as item (item.id)}
|
|
54
|
+
<button
|
|
55
|
+
class="toolbar-item"
|
|
56
|
+
class:active={item.active}
|
|
57
|
+
class:disabled={item.disabled}
|
|
58
|
+
onclick={() => handleClick(item)}
|
|
59
|
+
onmouseenter={() => hoveredId = item.id}
|
|
60
|
+
onmouseleave={() => hoveredId = null}
|
|
61
|
+
onfocus={() => hoveredId = item.id}
|
|
62
|
+
onblur={() => hoveredId = null}
|
|
63
|
+
onkeydown={(e) => handleKeydown(e, item)}
|
|
64
|
+
aria-label={item.label}
|
|
65
|
+
type="button"
|
|
66
|
+
disabled={item.disabled}
|
|
67
|
+
>
|
|
68
|
+
<span class="toolbar-icon">
|
|
69
|
+
{@html item.icon}
|
|
70
|
+
</span>
|
|
71
|
+
|
|
72
|
+
{#if item.badge !== undefined && item.badge !== null && item.badge !== ''}
|
|
73
|
+
<span class="toolbar-badge">{item.badge}</span>
|
|
74
|
+
{/if}
|
|
75
|
+
|
|
76
|
+
{#if hoveredId === item.id}
|
|
77
|
+
<span
|
|
78
|
+
class="toolbar-tooltip"
|
|
79
|
+
class:tooltip-right={position === 'left'}
|
|
80
|
+
class:tooltip-left={position === 'right'}
|
|
81
|
+
>
|
|
82
|
+
{item.label}
|
|
83
|
+
</span>
|
|
84
|
+
{/if}
|
|
85
|
+
</button>
|
|
86
|
+
{/each}
|
|
87
|
+
</nav>
|
|
88
|
+
|
|
89
|
+
<style>
|
|
90
|
+
.vertical-toolbar {
|
|
91
|
+
display: flex;
|
|
92
|
+
flex-direction: column;
|
|
93
|
+
align-items: center;
|
|
94
|
+
gap: var(--space-1, 0.25rem);
|
|
95
|
+
padding: var(--space-2, 0.5rem) 0;
|
|
96
|
+
height: 100%;
|
|
97
|
+
overflow-y: auto;
|
|
98
|
+
background: var(--color-bg-canvas);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.vertical-toolbar--left {
|
|
102
|
+
border-right: 1px solid var(--color-border-subtle, rgba(255, 255, 255, 0.06));
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.vertical-toolbar--right {
|
|
106
|
+
border-left: 1px solid var(--color-border-subtle, rgba(255, 255, 255, 0.06));
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.toolbar-item {
|
|
110
|
+
position: relative;
|
|
111
|
+
display: flex;
|
|
112
|
+
align-items: center;
|
|
113
|
+
justify-content: center;
|
|
114
|
+
width: 36px;
|
|
115
|
+
height: 36px;
|
|
116
|
+
padding: 0;
|
|
117
|
+
background: transparent;
|
|
118
|
+
border: 1px solid transparent;
|
|
119
|
+
border-radius: var(--radius-md, 4px);
|
|
120
|
+
color: var(--color-text-muted, var(--color-text-muted-token, #6b6558));
|
|
121
|
+
cursor: pointer;
|
|
122
|
+
transition: all 0.15s ease;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.toolbar-item:hover:not(:disabled) {
|
|
126
|
+
background: var(--color-bg-hover, rgba(255, 255, 255, 0.05));
|
|
127
|
+
color: var(--color-text-secondary, #a8a08c);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
.toolbar-item:focus-visible {
|
|
131
|
+
outline: 2px solid var(--color-accent, var(--color-accent));
|
|
132
|
+
outline-offset: -2px;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.toolbar-item.active {
|
|
136
|
+
color: var(--color-accent, var(--color-accent));
|
|
137
|
+
background: var(--color-accent-subtle, var(--color-accent-muted));
|
|
138
|
+
border-color: var(--color-accent-muted, var(--color-accent-muted));
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
.toolbar-item.active::before {
|
|
142
|
+
content: '';
|
|
143
|
+
position: absolute;
|
|
144
|
+
left: 0;
|
|
145
|
+
top: 50%;
|
|
146
|
+
transform: translateY(-50%);
|
|
147
|
+
width: 3px;
|
|
148
|
+
height: 20px;
|
|
149
|
+
background: var(--color-accent, var(--color-accent));
|
|
150
|
+
border-radius: 0 2px 2px 0;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
.toolbar-item:disabled {
|
|
154
|
+
opacity: 0.4;
|
|
155
|
+
cursor: not-allowed;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
.toolbar-icon {
|
|
159
|
+
display: flex;
|
|
160
|
+
align-items: center;
|
|
161
|
+
justify-content: center;
|
|
162
|
+
width: 20px;
|
|
163
|
+
height: 20px;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
.toolbar-icon :global(svg) {
|
|
167
|
+
width: 100%;
|
|
168
|
+
height: 100%;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
.toolbar-badge {
|
|
172
|
+
position: absolute;
|
|
173
|
+
top: 2px;
|
|
174
|
+
right: 2px;
|
|
175
|
+
min-width: 14px;
|
|
176
|
+
height: 14px;
|
|
177
|
+
padding: 0 4px;
|
|
178
|
+
background: var(--color-accent, var(--color-accent));
|
|
179
|
+
color: var(--color-bg-app, #141414);
|
|
180
|
+
font-size: 10px;
|
|
181
|
+
font-weight: 600;
|
|
182
|
+
border-radius: var(--radius-full, 9999px);
|
|
183
|
+
display: flex;
|
|
184
|
+
align-items: center;
|
|
185
|
+
justify-content: center;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
.toolbar-tooltip {
|
|
189
|
+
position: absolute;
|
|
190
|
+
padding: var(--space-1, 0.25rem) var(--space-2, 0.5rem);
|
|
191
|
+
background: var(--color-bg-panel-elevated, #2a2a2a);
|
|
192
|
+
color: var(--color-text-primary, #f2efe9);
|
|
193
|
+
font-size: var(--text-xs, 0.75rem);
|
|
194
|
+
white-space: nowrap;
|
|
195
|
+
border-radius: var(--radius-md, 4px);
|
|
196
|
+
pointer-events: none;
|
|
197
|
+
z-index: 1000;
|
|
198
|
+
box-shadow: var(--shadow-md, 0 4px 6px rgba(0,0,0,0.3));
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.toolbar-tooltip.tooltip-right {
|
|
202
|
+
left: calc(100% + var(--space-2, 0.5rem));
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
.toolbar-tooltip.tooltip-left {
|
|
206
|
+
right: calc(100% + var(--space-2, 0.5rem));
|
|
207
|
+
}
|
|
208
|
+
</style>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* VerticalToolbar — Icon bar for collapsed sidebar peek mode
|
|
3
|
+
*
|
|
4
|
+
* A generalized version of NNJAS IconStrip for the LEAP design system.
|
|
5
|
+
* Provides VS Code-style vertical navigation with tooltips and badges.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* <VerticalToolbar
|
|
9
|
+
* items={[
|
|
10
|
+
* { id: 'files', icon: folderIcon, label: 'Files', onClick: () => {} },
|
|
11
|
+
* { id: 'search', icon: searchIcon, label: 'Search', badge: 3 },
|
|
12
|
+
* ]}
|
|
13
|
+
* />
|
|
14
|
+
*/
|
|
15
|
+
export interface ToolbarItem {
|
|
16
|
+
id: string;
|
|
17
|
+
icon: string;
|
|
18
|
+
label: string;
|
|
19
|
+
active?: boolean;
|
|
20
|
+
badge?: string | number;
|
|
21
|
+
disabled?: boolean;
|
|
22
|
+
onClick?: () => void;
|
|
23
|
+
}
|
|
24
|
+
interface Props {
|
|
25
|
+
items: ToolbarItem[];
|
|
26
|
+
position?: 'left' | 'right';
|
|
27
|
+
class?: string;
|
|
28
|
+
}
|
|
29
|
+
declare const VerticalToolbar: import("svelte").Component<Props, {}, "">;
|
|
30
|
+
type VerticalToolbar = ReturnType<typeof VerticalToolbar>;
|
|
31
|
+
export default VerticalToolbar;
|
|
32
|
+
//# sourceMappingURL=VerticalToolbar.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VerticalToolbar.svelte.d.ts","sourceRoot":"","sources":["../../src/u0-primitives/VerticalToolbar.svelte.ts"],"names":[],"mappings":"AAGE;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,UAAU,KAAK;IACb,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAgDH,QAAA,MAAM,eAAe,2CAAwC,CAAC;AAC9D,KAAK,eAAe,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AAC1D,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
/**
|
|
3
|
+
* Accordion Component
|
|
4
|
+
*
|
|
5
|
+
* A vertically stacked set of interactive headings that each reveal a panel of associated content.
|
|
6
|
+
*
|
|
7
|
+
* @package @kos/design-system/u0-primitives
|
|
8
|
+
*/
|
|
9
|
+
import type { Snippet } from 'svelte';
|
|
10
|
+
|
|
11
|
+
interface Panel {
|
|
12
|
+
/** Unique identifier for the panel */
|
|
13
|
+
id: string;
|
|
14
|
+
/** Heading/title of the panel */
|
|
15
|
+
title: string;
|
|
16
|
+
/** Content of the panel */
|
|
17
|
+
content: Snippet;
|
|
18
|
+
/** Whether the panel is disabled */
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export interface Props {
|
|
23
|
+
/** Array of panels to display */
|
|
24
|
+
panels: Panel[];
|
|
25
|
+
/** Whether only one panel can be open at a time */
|
|
26
|
+
singleOpen?: boolean;
|
|
27
|
+
/** Default open panel IDs (for uncontrolled mode) */
|
|
28
|
+
defaultOpen?: string[];
|
|
29
|
+
/** Currently open panel IDs (for controlled mode) */
|
|
30
|
+
open?: string[];
|
|
31
|
+
/** Callback when open state changes */
|
|
32
|
+
onOpenChange?: (openIds: string[]) => void;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
let {
|
|
36
|
+
panels,
|
|
37
|
+
singleOpen = false,
|
|
38
|
+
defaultOpen = [],
|
|
39
|
+
open: controlledOpen,
|
|
40
|
+
onOpenChange,
|
|
41
|
+
}: Props = $props();
|
|
42
|
+
|
|
43
|
+
let internalOpenIds = $state<string[]>([...defaultOpen]);
|
|
44
|
+
|
|
45
|
+
function setInternalOpenIds(fn: (prev: string[]) => string[]) {
|
|
46
|
+
internalOpenIds = fn(internalOpenIds);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
const isControlled = $derived(controlledOpen !== undefined);
|
|
50
|
+
const openIds = $derived(isControlled ? (controlledOpen ?? []) : internalOpenIds);
|
|
51
|
+
|
|
52
|
+
function togglePanel(id: string): void {
|
|
53
|
+
if (isControlled) {
|
|
54
|
+
const current = controlledOpen ?? [];
|
|
55
|
+
onOpenChange?.(current.includes(id)
|
|
56
|
+
? current.filter((openId: string) => openId !== id)
|
|
57
|
+
: [...current, id]);
|
|
58
|
+
} else {
|
|
59
|
+
setInternalOpenIds((prev: string[]) => {
|
|
60
|
+
if (singleOpen) {
|
|
61
|
+
return [id];
|
|
62
|
+
}
|
|
63
|
+
if (prev.includes(id)) {
|
|
64
|
+
return prev.filter((openId: string) => openId !== id);
|
|
65
|
+
}
|
|
66
|
+
return [...prev, id];
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
function isOpen(id: string): boolean {
|
|
72
|
+
return openIds.includes(id);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
function isDisabled(id: string): boolean {
|
|
76
|
+
const panel = panels.find(p => p.id === id);
|
|
77
|
+
return panel?.disabled ?? false;
|
|
78
|
+
}
|
|
79
|
+
</script>
|
|
80
|
+
|
|
81
|
+
{#if panels.length > 0}
|
|
82
|
+
<div class="accordion">
|
|
83
|
+
{#each panels as panel}
|
|
84
|
+
<div class="accordion-item"
|
|
85
|
+
class:disabled={isDisabled(panel.id)}
|
|
86
|
+
class:open={isOpen(panel.id)}>
|
|
87
|
+
<div class="accordion-header"
|
|
88
|
+
id={`accordion-header-${panel.id}`}
|
|
89
|
+
onclick={() => !isDisabled(panel.id) && togglePanel(panel.id)}
|
|
90
|
+
onkeydown={(e: KeyboardEvent) => { if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); if (!isDisabled(panel.id)) togglePanel(panel.id); } }}
|
|
91
|
+
aria-expanded={isOpen(panel.id)}
|
|
92
|
+
aria-controls={`accordion-panel-${panel.id}`}
|
|
93
|
+
role="button"
|
|
94
|
+
tabindex={isDisabled(panel.id) ? -1 : 0}>
|
|
95
|
+
<div class="accordion-title">
|
|
96
|
+
{panel.title}
|
|
97
|
+
</div>
|
|
98
|
+
<div class="accordion-icon">
|
|
99
|
+
{#if isOpen(panel.id)}
|
|
100
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
101
|
+
<polyline points="6 9 12 15 18 9"></polyline>
|
|
102
|
+
</svg>
|
|
103
|
+
{:else}
|
|
104
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
105
|
+
<polyline points="6 15 12 9 18 15"></polyline>
|
|
106
|
+
</svg>
|
|
107
|
+
{/if}
|
|
108
|
+
</div>
|
|
109
|
+
</div>
|
|
110
|
+
|
|
111
|
+
{#if isOpen(panel.id)}
|
|
112
|
+
<div class="accordion-panel"
|
|
113
|
+
id={`accordion-panel-${panel.id}`}
|
|
114
|
+
role="region"
|
|
115
|
+
aria-labelledby={`accordion-header-${panel.id}`}>
|
|
116
|
+
<div class="accordion-content">
|
|
117
|
+
{@render panel.content()}
|
|
118
|
+
</div>
|
|
119
|
+
</div>
|
|
120
|
+
{/if}
|
|
121
|
+
</div>
|
|
122
|
+
{/each}
|
|
123
|
+
</div>
|
|
124
|
+
{/if}
|
|
125
|
+
|
|
126
|
+
<style>
|
|
127
|
+
.accordion {
|
|
128
|
+
border-radius: var(--radius-md, 0.25rem);
|
|
129
|
+
overflow: hidden;
|
|
130
|
+
border: 1px solid var(--color-border, var(--border-default, #3a3630));
|
|
131
|
+
background: var(--color-bg-app, #0b0d0f);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
.accordion-item {
|
|
135
|
+
border-bottom: 1px solid var(--color-border, var(--border-default, #3a3630));
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
.accordion-item:last-child {
|
|
139
|
+
border-bottom: none;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
.accordion-item.disabled {
|
|
143
|
+
opacity: 0.5;
|
|
144
|
+
pointer-events: none;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
.accordion-header {
|
|
148
|
+
display: flex;
|
|
149
|
+
align-items: center;
|
|
150
|
+
justify-content: space-between;
|
|
151
|
+
padding: var(--space-4, 1rem);
|
|
152
|
+
cursor: pointer;
|
|
153
|
+
user-select: none;
|
|
154
|
+
transition: background-color var(--duration-normal, 200ms) ease-in-out;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
.accordion-header:hover:not(.disabled) {
|
|
158
|
+
background: var(--color-bg-secondary, var(--color-bg-canvas, #121518));
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
/* Removed duplicate focus-visible — the box-shadow variant below supersedes. */
|
|
162
|
+
|
|
163
|
+
/* Focus styles for keyboard navigation */
|
|
164
|
+
.accordion-header:focus-visible {
|
|
165
|
+
box-shadow: 0 0 0 2px var(--color-accent, var(--color-accent));
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
/* Disabled states */
|
|
169
|
+
.accordion-item.disabled .accordion-header {
|
|
170
|
+
cursor: not-allowed;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
.accordion-item.disabled .accordion-header:hover {
|
|
174
|
+
background: transparent;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
.accordion-panel {
|
|
178
|
+
display: block;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
.accordion-content {
|
|
182
|
+
padding: var(--space-4, 1rem);
|
|
183
|
+
padding-top: 0;
|
|
184
|
+
}
|
|
185
|
+
</style>
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Accordion Component
|
|
3
|
+
*
|
|
4
|
+
* A vertically stacked set of interactive headings that each reveal a panel of associated content.
|
|
5
|
+
*
|
|
6
|
+
* @package @kos/design-system/u0-primitives
|
|
7
|
+
*/
|
|
8
|
+
import type { Snippet } from 'svelte';
|
|
9
|
+
interface Panel {
|
|
10
|
+
/** Unique identifier for the panel */
|
|
11
|
+
id: string;
|
|
12
|
+
/** Heading/title of the panel */
|
|
13
|
+
title: string;
|
|
14
|
+
/** Content of the panel */
|
|
15
|
+
content: Snippet;
|
|
16
|
+
/** Whether the panel is disabled */
|
|
17
|
+
disabled?: boolean;
|
|
18
|
+
}
|
|
19
|
+
export interface Props {
|
|
20
|
+
/** Array of panels to display */
|
|
21
|
+
panels: Panel[];
|
|
22
|
+
/** Whether only one panel can be open at a time */
|
|
23
|
+
singleOpen?: boolean;
|
|
24
|
+
/** Default open panel IDs (for uncontrolled mode) */
|
|
25
|
+
defaultOpen?: string[];
|
|
26
|
+
/** Currently open panel IDs (for controlled mode) */
|
|
27
|
+
open?: string[];
|
|
28
|
+
/** Callback when open state changes */
|
|
29
|
+
onOpenChange?: (openIds: string[]) => void;
|
|
30
|
+
}
|
|
31
|
+
declare const Accordion: import("svelte").Component<Props, {}, "">;
|
|
32
|
+
type Accordion = ReturnType<typeof Accordion>;
|
|
33
|
+
export default Accordion;
|
|
34
|
+
//# sourceMappingURL=Accordion.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Accordion.svelte.d.ts","sourceRoot":"","sources":["../../../src/u0-primitives/accordion/Accordion.svelte.ts"],"names":[],"mappings":"AAGA;;;;;;KAMK;AACL,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGpC,UAAU,KAAK;IACb,sCAAsC;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,KAAK;IACpB,iCAAiC;IACjC,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,mDAAmD;IACnD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,qDAAqD;IACrD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,uCAAuC;IACvC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CAC5C;AAyFH,QAAA,MAAM,SAAS,2CAAwC,CAAC;AACxD,KAAK,SAAS,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;AAC9C,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { afterEach, describe, it, expect, vi } from 'vitest';
|
|
2
|
+
import { cleanup, render, fireEvent } from '@testing-library/svelte';
|
|
3
|
+
import Accordion from './Accordion.svelte';
|
|
4
|
+
const samplePanels = [
|
|
5
|
+
{ id: 'p1', title: 'First', content: () => 'Content 1' },
|
|
6
|
+
{ id: 'p2', title: 'Second', content: () => 'Content 2' },
|
|
7
|
+
{ id: 'p3', title: 'Third', content: () => 'Content 3' },
|
|
8
|
+
];
|
|
9
|
+
describe('Accordion', () => {
|
|
10
|
+
afterEach(() => cleanup());
|
|
11
|
+
it('renders all panel titles', () => {
|
|
12
|
+
const { container } = render(Accordion, { panels: samplePanels });
|
|
13
|
+
const items = container.querySelectorAll('.accordion-item');
|
|
14
|
+
expect(items.length).toBe(3);
|
|
15
|
+
expect(container.textContent).toContain('First');
|
|
16
|
+
expect(container.textContent).toContain('Second');
|
|
17
|
+
expect(container.textContent).toContain('Third');
|
|
18
|
+
});
|
|
19
|
+
it('renders no panels initially (uncontrolled, no defaultOpen)', () => {
|
|
20
|
+
const { container } = render(Accordion, { panels: samplePanels });
|
|
21
|
+
expect(container.querySelectorAll('[role="region"]').length).toBe(0);
|
|
22
|
+
});
|
|
23
|
+
it('opens a panel when its header is clicked', async () => {
|
|
24
|
+
const { container } = render(Accordion, { panels: samplePanels });
|
|
25
|
+
const header = container.querySelector('[role="button"]');
|
|
26
|
+
await fireEvent.click(header);
|
|
27
|
+
expect(container.querySelectorAll('[role="region"]').length).toBe(1);
|
|
28
|
+
});
|
|
29
|
+
it('toggles panel closed when header is clicked again', async () => {
|
|
30
|
+
const { container } = render(Accordion, { panels: samplePanels });
|
|
31
|
+
const header = container.querySelector('[role="button"]');
|
|
32
|
+
await fireEvent.click(header);
|
|
33
|
+
expect(container.querySelectorAll('[role="region"]').length).toBe(1);
|
|
34
|
+
await fireEvent.click(header);
|
|
35
|
+
expect(container.querySelectorAll('[role="region"]').length).toBe(0);
|
|
36
|
+
});
|
|
37
|
+
it('opens panels listed in defaultOpen', () => {
|
|
38
|
+
const { container } = render(Accordion, { panels: samplePanels, defaultOpen: ['p2'] });
|
|
39
|
+
const items = container.querySelectorAll('.accordion-item');
|
|
40
|
+
const secondItem = Array.from(items).find(i => i.textContent?.includes('Second'));
|
|
41
|
+
const firstItem = Array.from(items).find(i => i.textContent?.includes('First'));
|
|
42
|
+
expect(secondItem.classList.contains('open')).toBe(true);
|
|
43
|
+
expect(firstItem.classList.contains('open')).toBe(false);
|
|
44
|
+
});
|
|
45
|
+
it('only allows one panel open when singleOpen is true', async () => {
|
|
46
|
+
const { container } = render(Accordion, { panels: samplePanels, singleOpen: true });
|
|
47
|
+
const buttons = container.querySelectorAll('[role="button"]');
|
|
48
|
+
const h1 = buttons[0];
|
|
49
|
+
const h2 = buttons[1];
|
|
50
|
+
await fireEvent.click(h1);
|
|
51
|
+
expect(container.querySelectorAll('[role="region"]').length).toBe(1);
|
|
52
|
+
await fireEvent.click(h2);
|
|
53
|
+
expect(container.querySelectorAll('[role="region"]').length).toBe(1);
|
|
54
|
+
});
|
|
55
|
+
it('does not open disabled panels', async () => {
|
|
56
|
+
const panels = [
|
|
57
|
+
{ id: 'p1', title: 'Enabled', content: () => 'E' },
|
|
58
|
+
{ id: 'p2', title: 'Disabled', content: () => 'D', disabled: true },
|
|
59
|
+
];
|
|
60
|
+
const { container } = render(Accordion, { panels });
|
|
61
|
+
const buttons = container.querySelectorAll('[role="button"]');
|
|
62
|
+
const header = buttons[1]; // Disabled is second
|
|
63
|
+
await fireEvent.click(header);
|
|
64
|
+
expect(container.querySelectorAll('[role="region"]').length).toBe(0);
|
|
65
|
+
});
|
|
66
|
+
it('calls onOpenChange callback with new open ids in controlled mode', async () => {
|
|
67
|
+
const handleOpen = vi.fn();
|
|
68
|
+
const { container } = render(Accordion, { panels: samplePanels, open: [], onOpenChange: handleOpen });
|
|
69
|
+
const button = container.querySelector('[role="button"]');
|
|
70
|
+
await fireEvent.click(button);
|
|
71
|
+
expect(handleOpen).toHaveBeenCalledWith(['p1']);
|
|
72
|
+
});
|
|
73
|
+
it('applies aria-expanded to headers', async () => {
|
|
74
|
+
const { container } = render(Accordion, { panels: samplePanels });
|
|
75
|
+
const header = container.querySelector('[role="button"]');
|
|
76
|
+
expect(header.getAttribute('aria-expanded')).toBe('false');
|
|
77
|
+
await fireEvent.click(header);
|
|
78
|
+
expect(header.getAttribute('aria-expanded')).toBe('true');
|
|
79
|
+
});
|
|
80
|
+
it('displays nothing when panels array is empty', () => {
|
|
81
|
+
const { container } = render(Accordion, { panels: [] });
|
|
82
|
+
expect(container.querySelector('.accordion')).toBeNull();
|
|
83
|
+
});
|
|
84
|
+
it('sets aria-controls on header pointing to region', async () => {
|
|
85
|
+
const { container } = render(Accordion, { panels: samplePanels });
|
|
86
|
+
const header = container.querySelector('[role="button"]');
|
|
87
|
+
await fireEvent.click(header);
|
|
88
|
+
const controls = header.getAttribute('aria-controls');
|
|
89
|
+
expect(controls).toBeTruthy();
|
|
90
|
+
expect(container.querySelector(`#${controls}`)).not.toBeNull();
|
|
91
|
+
});
|
|
92
|
+
it('open panel region has role="region"', async () => {
|
|
93
|
+
const { container } = render(Accordion, { panels: samplePanels });
|
|
94
|
+
const header = container.querySelector('[role="button"]');
|
|
95
|
+
await fireEvent.click(header);
|
|
96
|
+
const region = container.querySelector('[role="region"]');
|
|
97
|
+
expect(region).not.toBeNull();
|
|
98
|
+
});
|
|
99
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/u0-primitives/accordion/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC1D,YAAY,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as Accordion } from './Accordion.svelte';
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
interface Props {
|
|
3
|
+
stage: 0 | 1 | 2 | 3 | 4 | 5;
|
|
4
|
+
confidence: number;
|
|
5
|
+
size?: 'sm' | 'md' | 'lg';
|
|
6
|
+
showLabel?: boolean;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
let { stage, confidence, size = 'md', showLabel = false }: Props = $props();
|
|
10
|
+
|
|
11
|
+
const STAGE_NAMES = ['Propose', 'Parse', 'Authorize', 'Execute', 'Trace', 'Replicate'];
|
|
12
|
+
const stageName = $derived(STAGE_NAMES[stage] ?? 'Unknown');
|
|
13
|
+
const pct = $derived(`${Math.round(confidence * 100)}%`);
|
|
14
|
+
</script>
|
|
15
|
+
|
|
16
|
+
<div class="allay-gauge size-{size}">
|
|
17
|
+
<div class="gauge-ring" style="--stage: {stage}; --confidence: {confidence}">
|
|
18
|
+
<span class="gauge-stage">{stage}</span>
|
|
19
|
+
</div>
|
|
20
|
+
{#if showLabel}
|
|
21
|
+
<span class="gauge-label">{stageName} · {pct}</span>
|
|
22
|
+
{/if}
|
|
23
|
+
</div>
|
|
24
|
+
|
|
25
|
+
<style>
|
|
26
|
+
.allay-gauge {
|
|
27
|
+
display: inline-flex;
|
|
28
|
+
align-items: center;
|
|
29
|
+
gap: var(--space-2);
|
|
30
|
+
}
|
|
31
|
+
.gauge-ring {
|
|
32
|
+
display: flex;
|
|
33
|
+
align-items: center;
|
|
34
|
+
justify-content: center;
|
|
35
|
+
border-radius: 50%;
|
|
36
|
+
border: 2px solid var(--color-accent);
|
|
37
|
+
background: conic-gradient(
|
|
38
|
+
var(--color-accent) calc(var(--confidence) * 360deg),
|
|
39
|
+
var(--border-subtle) calc(var(--confidence) * 360deg)
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
.size-sm .gauge-ring { width: 24px; height: 24px; }
|
|
43
|
+
.size-md .gauge-ring { width: 32px; height: 32px; }
|
|
44
|
+
.size-lg .gauge-ring { width: 48px; height: 48px; }
|
|
45
|
+
.gauge-stage {
|
|
46
|
+
font-family: var(--font-mono);
|
|
47
|
+
font-weight: 700;
|
|
48
|
+
color: var(--color-text-primary);
|
|
49
|
+
}
|
|
50
|
+
.size-sm .gauge-stage { font-size: 10px; }
|
|
51
|
+
.size-md .gauge-stage { font-size: var(--text-xs); }
|
|
52
|
+
.size-lg .gauge-stage { font-size: var(--text-sm); }
|
|
53
|
+
.gauge-label {
|
|
54
|
+
font-size: var(--text-xs);
|
|
55
|
+
color: var(--color-text-secondary);
|
|
56
|
+
font-family: var(--font-sans);
|
|
57
|
+
}
|
|
58
|
+
</style>
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
stage: 0 | 1 | 2 | 3 | 4 | 5;
|
|
3
|
+
confidence: number;
|
|
4
|
+
size?: 'sm' | 'md' | 'lg';
|
|
5
|
+
showLabel?: boolean;
|
|
6
|
+
}
|
|
7
|
+
declare const AllayGauge: import("svelte").Component<Props, {}, "">;
|
|
8
|
+
type AllayGauge = ReturnType<typeof AllayGauge>;
|
|
9
|
+
export default AllayGauge;
|
|
10
|
+
//# sourceMappingURL=AllayGauge.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AllayGauge.svelte.d.ts","sourceRoot":"","sources":["../../../src/u0-primitives/allay-gauge/AllayGauge.svelte.ts"],"names":[],"mappings":"AAGE,UAAU,KAAK;IACb,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAwBH,QAAA,MAAM,UAAU,2CAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
|