sparkdesign 0.4.5 → 0.4.7
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/AI_README.md +60 -0
- package/README.md +74 -22
- package/cli/dist/commands/add.js +23 -13
- package/cli/dist/commands/diff.js +8 -4
- package/cli/dist/commands/init.js +85 -10
- package/cli/dist/commands/list.js +8 -4
- package/cli/dist/index.js +9 -6
- package/cli/dist/utils/config.js +16 -8
- package/cli/dist/utils/package-manager.js +75 -0
- package/cli/dist/utils/registry.js +8 -4
- package/cli/dist/utils/tokens.js +33 -25
- package/cli/dist/utils/transform.js +9 -5
- package/cli/dist/utils/tsconfig.js +182 -0
- package/cli/registry/AGENTS.md +25 -0
- package/cli/registry/__tests__/chat/thinking-indicator.test.tsx +2 -2
- package/cli/registry/agent-manifest.json +794 -0
- package/cli/registry/basic/alert.tsx +76 -0
- package/cli/registry/basic/aspect-ratio.tsx +8 -0
- package/cli/registry/basic/breadcrumb.tsx +117 -0
- package/cli/registry/basic/button-group.tsx +79 -0
- package/cli/registry/basic/button.tsx +1 -1
- package/cli/registry/basic/calendar.tsx +221 -0
- package/cli/registry/basic/card.tsx +103 -0
- package/cli/registry/basic/carousel.tsx +241 -0
- package/cli/registry/basic/chart.tsx +372 -0
- package/cli/registry/basic/checkbox.tsx +42 -0
- package/cli/registry/basic/collapsible-card.tsx +2 -2
- package/cli/registry/basic/combobox.tsx +75 -0
- package/cli/registry/basic/command.tsx +184 -0
- package/cli/registry/basic/context-menu.tsx +239 -0
- package/cli/registry/basic/data-table.tsx +73 -0
- package/cli/registry/basic/date-picker.tsx +13 -0
- package/cli/registry/basic/dialog.tsx +169 -0
- package/cli/registry/basic/direction.tsx +25 -0
- package/cli/registry/basic/drawer.tsx +164 -0
- package/cli/registry/basic/dropdown-menu.tsx +0 -4
- package/cli/registry/basic/empty.tsx +104 -0
- package/cli/registry/basic/field.tsx +248 -0
- package/cli/registry/basic/hover-card.tsx +58 -0
- package/cli/registry/basic/input-group.tsx +168 -0
- package/cli/registry/basic/input-otp.tsx +75 -0
- package/cli/registry/basic/input.tsx +27 -0
- package/cli/registry/basic/item.tsx +204 -0
- package/cli/registry/basic/label.tsx +24 -0
- package/cli/registry/basic/menubar.tsx +274 -0
- package/cli/registry/basic/native-select.tsx +62 -0
- package/cli/registry/basic/navigation-menu.tsx +168 -0
- package/cli/registry/basic/popover.tsx +59 -0
- package/cli/registry/basic/scroll-area.tsx +58 -0
- package/cli/registry/basic/select.tsx +2 -1
- package/cli/registry/basic/separator.tsx +26 -0
- package/cli/registry/basic/sheet.tsx +18 -0
- package/cli/registry/basic/textarea.tsx +25 -0
- package/cli/registry/basic/toggle.tsx +1 -1
- package/cli/registry/basic/typography.tsx +1 -1
- package/cli/registry/chat/chat-input/chat-input-folder-selector.tsx +1 -1
- package/cli/registry/chat/chat-input/chat-input-textarea.tsx +1 -1
- package/cli/registry/chat/chat-input/compound.tsx +4 -3
- package/cli/registry/chat/chat-input/context.tsx +4 -1
- package/cli/registry/chat/chat-input/folder-permission-dialog.tsx +2 -2
- package/cli/registry/chat/code-block-part.tsx +1 -1
- package/cli/registry/chat/conversation-anchor-nav.tsx +349 -0
- package/cli/registry/chat/file-attachment.tsx +2 -1
- package/cli/registry/chat/file-review-part.tsx +21 -21
- package/cli/registry/chat/image-generating.tsx +1 -1
- package/cli/registry/chat/markdown.tsx +2 -2
- package/cli/registry/chat/queue-indicator.tsx +1 -0
- package/cli/registry/chat/response/context.tsx +1 -1
- package/cli/registry/chat/streaming-markdown-block.tsx +12 -8
- package/cli/registry/chat/thinking-indicator.tsx +1 -1
- package/cli/registry/chat/tool-invocation-card.tsx +4 -1
- package/cli/registry/lib/file-icon-maps.ts +22 -22
- package/cli/registry/meta.json +518 -0
- package/cli/registry/tokens/index.css +8 -5
- package/cli/registry/tokens/ontology.json +404 -0
- package/cli/registry/tokens/scale/presets/compact.css +16 -5
- package/cli/registry/tokens/scale/presets/dense.css +13 -2
- package/cli/registry/tokens/scale/presets/sharp.css +18 -6
- package/cli/registry/tokens/scale/presets/soft.css +23 -1
- package/cli/registry/tokens/theme-base.css +235 -0
- package/{dist/tokens/themes/dark-qoder.css → cli/registry/tokens/themes/dark-mint.css} +1 -1
- package/cli/registry/tokens/themes/dark-parchment.css +104 -103
- package/{dist/tokens/themes/light-qoder.css → cli/registry/tokens/themes/light-mint.css} +1 -1
- package/cli/registry/tokens/themes/light-parchment.css +103 -102
- package/dist/registry/basic/alert-dialog.d.ts +7 -5
- package/dist/registry/basic/alert.d.ts +24 -0
- package/dist/registry/basic/aspect-ratio.d.ts +16 -0
- package/dist/registry/basic/avatar.d.ts +7 -5
- package/dist/registry/basic/breadcrumb.d.ts +24 -0
- package/dist/registry/basic/button-group.d.ts +26 -0
- package/dist/registry/basic/button.d.ts +1 -1
- package/dist/registry/basic/calendar.d.ts +22 -0
- package/dist/registry/basic/card.d.ts +27 -0
- package/dist/registry/basic/carousel.d.ts +19 -0
- package/dist/registry/basic/chart.d.ts +55 -0
- package/dist/registry/basic/checkbox.d.ts +21 -0
- package/dist/registry/basic/collapse.d.ts +7 -5
- package/dist/registry/basic/collapsible-card.d.ts +7 -6
- package/dist/registry/basic/collapsible.d.ts +7 -5
- package/dist/registry/basic/combobox.d.ts +26 -0
- package/dist/registry/basic/command.d.ts +18 -0
- package/dist/registry/basic/context-menu.d.ts +44 -0
- package/dist/registry/basic/data-table.d.ts +26 -0
- package/dist/registry/basic/date-picker.d.ts +18 -0
- package/dist/registry/basic/dialog.d.ts +39 -0
- package/dist/registry/basic/direction.d.ts +19 -0
- package/dist/registry/basic/drawer.d.ts +37 -0
- package/dist/registry/basic/dropdown-menu.d.ts +7 -5
- package/dist/registry/basic/empty.d.ts +22 -0
- package/dist/registry/basic/field.d.ts +24 -0
- package/dist/registry/basic/hover-card.d.ts +22 -0
- package/dist/registry/basic/icons-inline.d.ts +7 -5
- package/dist/registry/basic/input-group.d.ts +27 -0
- package/dist/registry/basic/input-otp.d.ts +22 -0
- package/dist/registry/basic/input.d.ts +15 -0
- package/dist/registry/basic/item.d.ts +34 -0
- package/dist/registry/basic/kbd.d.ts +7 -5
- package/dist/registry/basic/label.d.ts +16 -0
- package/dist/registry/basic/menubar.d.ts +37 -0
- package/dist/registry/basic/native-select.d.ts +18 -0
- package/dist/registry/basic/navigation-menu.d.ts +25 -0
- package/dist/registry/basic/pagination.d.ts +7 -5
- package/dist/registry/basic/popover.d.ts +23 -0
- package/dist/registry/basic/progress.d.ts +7 -5
- package/dist/registry/basic/radio-group.d.ts +7 -5
- package/dist/registry/basic/resizable.d.ts +7 -5
- package/dist/registry/basic/scroll-area.d.ts +5 -0
- package/dist/registry/basic/select.d.ts +7 -5
- package/dist/registry/basic/separator.d.ts +16 -0
- package/dist/registry/basic/sheet.d.ts +13 -0
- package/dist/registry/basic/slider.d.ts +7 -5
- package/dist/registry/basic/sonner.d.ts +7 -5
- package/dist/registry/basic/switch.d.ts +7 -5
- package/dist/registry/basic/tabs.d.ts +7 -5
- package/dist/registry/basic/tag.d.ts +7 -5
- package/dist/registry/basic/textarea.d.ts +15 -0
- package/dist/registry/basic/theme-from-document.d.ts +7 -5
- package/dist/registry/basic/toggle.d.ts +1 -1
- package/dist/registry/basic/tooltip.d.ts +7 -5
- package/dist/registry/basic/typography.d.ts +7 -5
- package/dist/registry/chat/ask-user-part.d.ts +9 -3
- package/dist/registry/chat/browser-action-part.d.ts +9 -3
- package/dist/registry/chat/chat-input/compound.d.ts +7 -5
- package/dist/registry/chat/chat-input/context.d.ts +10 -6
- package/dist/registry/chat/chat-input/index.d.ts +7 -5
- package/dist/registry/chat/chat-input/types.d.ts +9 -3
- package/dist/registry/chat/chat-input/useAutoResizeTextarea.d.ts +9 -3
- package/dist/registry/chat/code-block-part.d.ts +9 -3
- package/dist/registry/chat/conversation-anchor-nav.d.ts +72 -0
- package/dist/registry/chat/file-attachment.d.ts +7 -5
- package/dist/registry/chat/file-review-part.d.ts +9 -4
- package/dist/registry/chat/generated-images-grid.d.ts +9 -3
- package/dist/registry/chat/generation-status-bar.d.ts +8 -4
- package/dist/registry/chat/hint-banner.d.ts +9 -3
- package/dist/registry/chat/mermaid-part.d.ts +9 -3
- package/dist/registry/chat/plan-part.d.ts +9 -3
- package/dist/registry/chat/reasoning-step/index.d.ts +8 -6
- package/dist/registry/chat/reasoning-step/types.d.ts +9 -3
- package/dist/registry/chat/related-prompts.d.ts +9 -3
- package/dist/registry/chat/response/index.d.ts +8 -6
- package/dist/registry/chat/response/types.d.ts +9 -3
- package/dist/registry/chat/task-part.d.ts +9 -3
- package/dist/registry/chat/terminal-code-block-part.d.ts +9 -3
- package/dist/registry/chat/tool-invocation-card.d.ts +2 -0
- package/dist/registry/chat/user-question/UserQuestionCard.d.ts +9 -3
- package/dist/registry/chat/user-question/UserQuestionFooter.d.ts +9 -3
- package/dist/registry/chat/user-question/UserQuestionHeader.d.ts +9 -3
- package/dist/registry/chat/user-question/types.d.ts +8 -5
- package/dist/registry/lib/file-icon-maps.d.ts +7 -7
- package/dist/registry/lib/utils.d.ts +8 -6
- package/dist/scale/presets/compact.css +16 -5
- package/dist/scale/presets/dense.css +13 -2
- package/dist/scale/presets/sharp.css +18 -6
- package/dist/scale/presets/soft.css +23 -1
- package/dist/spark-design.cjs.js +40 -36
- package/dist/spark-design.es.js +8653 -8663
- package/dist/sparkdesign.css +2 -0
- package/dist/src/components/basic/Alert/index.d.ts +13 -0
- package/dist/src/components/basic/AlertDialog/index.d.ts +7 -5
- package/dist/src/components/basic/AspectRatio/index.d.ts +13 -0
- package/dist/src/components/basic/Avatar/index.d.ts +9 -3
- package/dist/src/components/basic/Breadcrumb/index.d.ts +12 -0
- package/dist/src/components/basic/Button/index.d.ts +9 -3
- package/dist/src/components/basic/ButtonGroup/index.d.ts +13 -0
- package/dist/src/components/basic/Calendar/index.d.ts +13 -0
- package/dist/src/components/basic/Card/index.d.ts +13 -0
- package/dist/src/components/basic/Carousel/index.d.ts +12 -0
- package/dist/src/components/basic/Chart/index.d.ts +13 -0
- package/dist/src/components/basic/Checkbox/index.d.ts +13 -0
- package/dist/src/components/basic/Collapse/index.d.ts +7 -4
- package/dist/src/components/basic/Collapsible/index.d.ts +9 -4
- package/dist/src/components/basic/CollapsibleCard/index.d.ts +9 -3
- package/dist/src/components/basic/CollapsibleSection/index.d.ts +7 -7
- package/dist/src/components/basic/Combobox/index.d.ts +13 -0
- package/dist/src/components/basic/Command/index.d.ts +12 -0
- package/dist/src/components/basic/ContextMenu/index.d.ts +19 -0
- package/dist/src/components/basic/DataTable/index.d.ts +13 -0
- package/dist/src/components/basic/DatePicker/index.d.ts +13 -0
- package/dist/src/components/basic/Dialog/index.d.ts +16 -0
- package/dist/src/components/basic/Direction/index.d.ts +13 -0
- package/dist/src/components/basic/Drawer/index.d.ts +16 -0
- package/dist/src/components/basic/DropdownMenu/index.d.ts +7 -5
- package/dist/src/components/basic/EllipsisText/index.d.ts +7 -15
- package/dist/src/components/basic/Empty/index.d.ts +12 -0
- package/dist/src/components/basic/Field/index.d.ts +12 -0
- package/dist/src/components/basic/HoverCard/index.d.ts +16 -0
- package/dist/src/components/basic/IconButton/index.d.ts +9 -3
- package/dist/src/components/basic/Input/index.d.ts +13 -0
- package/dist/src/components/basic/InputGroup/index.d.ts +12 -0
- package/dist/src/components/basic/InputOTP/index.d.ts +12 -0
- package/dist/src/components/basic/Item/index.d.ts +12 -0
- package/dist/src/components/basic/Kbd/index.d.ts +9 -3
- package/dist/src/components/basic/Label/index.d.ts +13 -0
- package/dist/src/components/basic/Menubar/index.d.ts +12 -0
- package/dist/src/components/basic/NativeSelect/index.d.ts +12 -0
- package/dist/src/components/basic/NavigationMenu/index.d.ts +12 -0
- package/dist/src/components/basic/OptionList/index.d.ts +9 -3
- package/dist/src/components/basic/Pagination/index.d.ts +9 -3
- package/dist/src/components/basic/Popover/index.d.ts +16 -0
- package/dist/src/components/basic/Progress/index.d.ts +9 -3
- package/dist/src/components/basic/RadioGroup/index.d.ts +9 -3
- package/dist/src/components/basic/Resizable/index.d.ts +9 -3
- package/dist/src/components/basic/ScrollArea/index.d.ts +12 -0
- package/dist/src/components/basic/Scrollbar/index.d.ts +9 -3
- package/dist/src/components/basic/Select/index.d.ts +7 -4
- package/dist/src/components/basic/Separator/index.d.ts +13 -0
- package/dist/src/components/basic/Sheet/index.d.ts +13 -0
- package/dist/src/components/basic/ShimmeringText/index.d.ts +9 -3
- package/dist/src/components/basic/Skeleton/index.d.ts +9 -3
- package/dist/src/components/basic/Slider/index.d.ts +9 -3
- package/dist/src/components/basic/Spinner/index.d.ts +9 -3
- package/dist/src/components/basic/Switch/index.d.ts +8 -5
- package/dist/src/components/basic/Table/index.d.ts +9 -3
- package/dist/src/components/basic/Tabs/index.d.ts +9 -3
- package/dist/src/components/basic/Tag/index.d.ts +7 -4
- package/dist/src/components/basic/Textarea/index.d.ts +13 -0
- package/dist/src/components/basic/Toggle/index.d.ts +9 -3
- package/dist/src/components/basic/Tooltip/index.d.ts +7 -4
- package/dist/src/components/basic/Typography/index.d.ts +9 -3
- package/dist/src/components/chat/ConversationAnchorNav/index.d.ts +13 -0
- package/dist/src/components/chat/GeneratedImagesGrid/index.d.ts +9 -3
- package/dist/src/components/chat/GenerationStatusBar/index.d.ts +9 -3
- package/dist/src/components/chat/Markdown/demo-content.d.ts +1 -1
- package/dist/src/components/chat/Markdown/index.d.ts +9 -3
- package/dist/src/components/chat/Response/StreamingMarkdownBlock.d.ts +9 -3
- package/dist/src/components/chat/Response/index.d.ts +8 -6
- package/dist/src/components/chat/StreamingMarkdownBlock/index.d.ts +13 -0
- package/dist/src/components/chat/UserMessage/index.d.ts +9 -3
- package/dist/src/components/index.d.ts +64 -9
- package/dist/src/icons/context.d.ts +7 -6
- package/dist/src/icons/types.d.ts +7 -5
- package/dist/src/lib/ThemeStyleContext.d.ts +9 -9
- package/dist/src/lib/file-icon.d.ts +7 -6
- package/dist/src/lib/i18n.d.ts +7 -6
- package/dist/src/lib/index.d.ts +9 -3
- package/dist/src/lib/utils.d.ts +7 -5
- package/dist/theme-base.css +7 -8
- package/dist/theme.css +2 -2
- package/dist/themes/{dark-qoder.css → dark-mint.css} +1 -1
- package/dist/themes/{light-qoder.css → light-mint.css} +1 -1
- package/dist/tokens/AGENTS.md +48 -0
- package/dist/tokens/index.css +10 -19
- package/dist/tokens/scale/presets/compact.css +16 -5
- package/dist/tokens/scale/presets/dense.css +13 -2
- package/dist/tokens/scale/presets/sharp.css +18 -6
- package/dist/tokens/scale/presets/soft.css +23 -1
- package/dist/tokens/theme-base.css +7 -8
- package/dist/tokens/theme.css +2 -2
- package/dist/tokens/themes/dark-mint.css +133 -0
- package/dist/tokens/themes/light-mint.css +132 -0
- package/docs/agent/component-selection.md +60 -0
- package/docs/agent/token-ontology.md +37 -0
- package/package.json +41 -9
- package/registry/agent-manifest.json +794 -0
- package/registry/tokens/ontology.json +404 -0
- package/cli/registry/tokens/themes/dark-qoder.css +0 -132
- package/cli/registry/tokens/themes/light-qoder.css +0 -131
- package/dist/_basePickBy-DnQN8w3y.js +0 -151
- package/dist/_basePickBy-a-kPMlkg.cjs +0 -1
- package/dist/_baseUniq-B-N2NQ50.js +0 -614
- package/dist/_baseUniq-Cc_zbSif.cjs +0 -1
- package/dist/arc-BQBhijZ6.js +0 -83
- package/dist/arc-mWQt0Yph.cjs +0 -1
- package/dist/architectureDiagram-VXUJARFQ-BMZEucno.cjs +0 -36
- package/dist/architectureDiagram-VXUJARFQ-DTdjD3Bp.js +0 -4661
- package/dist/blockDiagram-VD42YOAC-CzHn0yob.js +0 -2256
- package/dist/blockDiagram-VD42YOAC-DDxdHAlz.cjs +0 -122
- package/dist/c4Diagram-YG6GDRKO-4Gz0I4gj.cjs +0 -10
- package/dist/c4Diagram-YG6GDRKO-BIy--yVN.js +0 -1580
- package/dist/channel-BQn0o8bs.js +0 -5
- package/dist/channel-DaN7XniJ.cjs +0 -1
- package/dist/chunk-4BX2VUAB-BlQFTQqz.cjs +0 -1
- package/dist/chunk-4BX2VUAB-Czitj3Kc.js +0 -8
- package/dist/chunk-55IACEB6-DXacNZbO.js +0 -8
- package/dist/chunk-55IACEB6-DnDxpye9.cjs +0 -1
- package/dist/chunk-B4BG7PRW-CBdN0q_V.js +0 -1375
- package/dist/chunk-B4BG7PRW-DbGvUkGO.cjs +0 -165
- package/dist/chunk-DI55MBZ5-D1YJMs6x.cjs +0 -220
- package/dist/chunk-DI55MBZ5-NCQTvayw.js +0 -1370
- package/dist/chunk-FMBD7UC4-CsGMbrtr.js +0 -19
- package/dist/chunk-FMBD7UC4-Di7cUUh5.cjs +0 -15
- package/dist/chunk-QN33PNHL-0j5LC8Lm.cjs +0 -1
- package/dist/chunk-QN33PNHL-3GERZBRm.js +0 -19
- package/dist/chunk-QZHKN3VN-AVEY9ImQ.js +0 -15
- package/dist/chunk-QZHKN3VN-s8Z0a8mc.cjs +0 -1
- package/dist/chunk-TZMSLE5B-CAf87HPt.cjs +0 -1
- package/dist/chunk-TZMSLE5B-sbiflal0.js +0 -64
- package/dist/classDiagram-2ON5EDUG-Ct9JLIN2.cjs +0 -1
- package/dist/classDiagram-2ON5EDUG-Dzfrft3a.js +0 -16
- package/dist/classDiagram-v2-WZHVMYZB-Ct9JLIN2.cjs +0 -1
- package/dist/classDiagram-v2-WZHVMYZB-Dzfrft3a.js +0 -16
- package/dist/clone-Cde_NQ8V.js +0 -8
- package/dist/clone-DCNjWuM2.cjs +0 -1
- package/dist/cose-bilkent-S5V4N54A-0uLijMro.cjs +0 -1
- package/dist/cose-bilkent-S5V4N54A-Bb08N431.js +0 -2608
- package/dist/cytoscape.esm-CNUX3VTg.cjs +0 -321
- package/dist/cytoscape.esm-Cvf3sx9F.js +0 -18704
- package/dist/dagre-6UL2VRFP-CY_Wz5Zd.js +0 -444
- package/dist/dagre-6UL2VRFP-Dxe7_qZc.cjs +0 -4
- package/dist/defaultLocale-BgPVtth8.js +0 -171
- package/dist/defaultLocale-C4wbwF1n.cjs +0 -1
- package/dist/diagram-PSM6KHXK-D2bdb7MT.js +0 -531
- package/dist/diagram-PSM6KHXK-YF69SUjY.cjs +0 -24
- package/dist/diagram-QEK2KX5R-BpUSoh0-.js +0 -217
- package/dist/diagram-QEK2KX5R-DZPGteon.cjs +0 -43
- package/dist/diagram-S2PKOQOG-ht-zdvFG.cjs +0 -24
- package/dist/diagram-S2PKOQOG-zFeLJ50Z.js +0 -142
- package/dist/erDiagram-Q2GNP2WA-B38iJ6ts.js +0 -841
- package/dist/erDiagram-Q2GNP2WA-RgS80DDU.cjs +0 -60
- package/dist/flowDiagram-NV44I4VS-BHilOs2p.cjs +0 -162
- package/dist/flowDiagram-NV44I4VS-BrBJcoce.js +0 -1620
- package/dist/ganttDiagram-JELNMOA3-pZiJeFio.cjs +0 -267
- package/dist/ganttDiagram-JELNMOA3-tw6FhkWJ.js +0 -2670
- package/dist/gitGraphDiagram-V2S2FVAM-BWn5uIK5.js +0 -699
- package/dist/gitGraphDiagram-V2S2FVAM-DKKeG-9R.cjs +0 -65
- package/dist/graph-DIbblrZP.cjs +0 -1
- package/dist/graph-DPcK91G3.js +0 -247
- package/dist/infoDiagram-HS3SLOUP-B8gwwhct.cjs +0 -2
- package/dist/infoDiagram-HS3SLOUP-D47PNcP_.js +0 -24
- package/dist/init-CHZsXQcr.cjs +0 -1
- package/dist/init-DjUOC4st.js +0 -16
- package/dist/journeyDiagram-XKPGCS4Q-BG3cfhyU.js +0 -834
- package/dist/journeyDiagram-XKPGCS4Q-D8DVLJof.cjs +0 -139
- package/dist/kanban-definition-3W4ZIXB7-4OCnEouP.cjs +0 -89
- package/dist/kanban-definition-3W4ZIXB7-CWi_ssF9.js +0 -719
- package/dist/layout-Byuh8f-J.cjs +0 -1
- package/dist/layout-CdLdvj1j.js +0 -1335
- package/dist/linear-C2Q_PI9B.js +0 -259
- package/dist/linear-C69aPBW1.cjs +0 -1
- package/dist/mermaid.core-DBwAx_jp.cjs +0 -249
- package/dist/mermaid.core-gFR0XUlD.js +0 -15300
- package/dist/mindmap-definition-VGOIOE7T-8P7obVV4.cjs +0 -68
- package/dist/mindmap-definition-VGOIOE7T-DnOa7WJ9.js +0 -784
- package/dist/ordinal-B6-f3MAq.js +0 -61
- package/dist/ordinal-CagbB1m8.cjs +0 -1
- package/dist/pieDiagram-ADFJNKIX-5NAlvhMo.js +0 -161
- package/dist/pieDiagram-ADFJNKIX-CQBG4yR9.cjs +0 -30
- package/dist/qoder-design.css +0 -2
- package/dist/quadrantDiagram-AYHSOK5B-Oe4y7RZ0.cjs +0 -7
- package/dist/quadrantDiagram-AYHSOK5B-rh2DPEP1.js +0 -1022
- package/dist/requirementDiagram-UZGBJVZJ-DcWaCuXr.js +0 -850
- package/dist/requirementDiagram-UZGBJVZJ-gfdlrFiq.cjs +0 -64
- package/dist/sankeyDiagram-TZEHDZUN-CQIKFwD0.js +0 -810
- package/dist/sankeyDiagram-TZEHDZUN-DvPtzQvC.cjs +0 -10
- package/dist/sequenceDiagram-WL72ISMW-BNrsMagL.cjs +0 -145
- package/dist/sequenceDiagram-WL72ISMW-iCX3ckKx.js +0 -2511
- package/dist/stateDiagram-FKZM4ZOC-DBvJ_eeL.cjs +0 -1
- package/dist/stateDiagram-FKZM4ZOC-ZVsJlaHJ.js +0 -263
- package/dist/stateDiagram-v2-4FDKWEC3-CB_nTHcE.js +0 -16
- package/dist/stateDiagram-v2-4FDKWEC3-Xkx17v6T.cjs +0 -1
- package/dist/timeline-definition-IT6M3QCI-BmGkYQiz.cjs +0 -61
- package/dist/timeline-definition-IT6M3QCI-Ck8zTt6w.js +0 -795
- package/dist/tokens/CLAUDE.md +0 -305
- package/dist/treemap-GDKQZRPO-B9sfERx8.js +0 -17922
- package/dist/treemap-GDKQZRPO-BVfJRs0Z.cjs +0 -160
- package/dist/xychartDiagram-PRI3JC2R-By_S8NzN.js +0 -1340
- package/dist/xychartDiagram-PRI3JC2R-CNfDrGxM.cjs +0 -7
package/dist/theme-base.css
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
/* ============================================
|
|
2
|
-
* [
|
|
3
|
-
* [
|
|
2
|
+
* [WHO]: Tailwind v4 `@theme` bridge, motion presets, scrollbar helpers — no palette hex here.
|
|
3
|
+
* [FROM]: Runtime vars from scale (`--font-size-*`, `--spacing-*`, `--radius-*`) and themes (`--token-color-*`).
|
|
4
|
+
* [TO]: Any bundle that imports tokens and needs Tailwind utilities resolved from CSS variables.
|
|
5
|
+
* [HERE]: src/tokens/theme-base.css — mapping contract only; literal colors live in `themes/*.css`.
|
|
4
6
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* 用户自定义主题时只需:
|
|
9
|
-
* 1. 引入此文件(定义映射)
|
|
10
|
-
* 2. 引入自己的主题 CSS(覆盖 --token-color-* 变量)
|
|
7
|
+
* [PROTOCOL]:
|
|
8
|
+
* 1. Do not embed theme colors in this file; define `--token-color-*` under `[data-theme]` in theme files.
|
|
9
|
+
* 2. Custom themes: import this for mappings, then add/override `--token-color-*` in your theme layer.
|
|
11
10
|
* ============================================ */
|
|
12
11
|
|
|
13
12
|
/* ============================================
|
package/dist/theme.css
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* ============================================ */
|
|
12
12
|
|
|
13
13
|
@import "./theme-base.css";
|
|
14
|
-
@import "./themes/light-
|
|
15
|
-
@import "./themes/dark-
|
|
14
|
+
@import "./themes/light-mint.css";
|
|
15
|
+
@import "./themes/dark-mint.css";
|
|
16
16
|
@import "./themes/light-parchment.css";
|
|
17
17
|
@import "./themes/dark-parchment.css";
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# src/tokens/
|
|
2
|
+
|
|
3
|
+
> **P2** | Parent: [Root AGENTS.md](../../AGENTS.md)
|
|
4
|
+
|
|
5
|
+
## Member list (CSS entrypoints)
|
|
6
|
+
|
|
7
|
+
| Area | Files | Purpose |
|
|
8
|
+
| ---- | ----- | ------- |
|
|
9
|
+
| Bundle | `index.css` | Recommended full import |
|
|
10
|
+
| Scale | `scale/`, `scale.css` (legacy) | Layout tokens (`data-style`) via config + computed + presets |
|
|
11
|
+
| Theme bridge | `theme-base.css`, `theme.css` (legacy) | Tailwind `@theme` mappings, shared motion, scrollbar helpers |
|
|
12
|
+
| Color packs | `themes/*.css` | Palette definitions (`--token-color-*`) |
|
|
13
|
+
| Agent ontology | `registry/tokens/ontology.json` | Machine-readable token intent, usage, and forbidden patterns |
|
|
14
|
+
| Utilities | `scrollbar-utility.css` | Scrollbar styling helpers |
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
**Covenant:** whenever you add presets, themes, or rename token files, update this table and the root `AGENTS.md` if publishing behavior changes.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Narrative
|
|
23
|
+
|
|
24
|
+
### Two axes
|
|
25
|
+
|
|
26
|
+
1. **`data-style`** — spacing, radii, typography presets (`scale/`).
|
|
27
|
+
2. **`data-theme`** — color palettes independent from layout. Define **`--token-color-*`** in `:root` / `[data-theme]`, map to **`--color-*`** inside `@theme` without self-referential loops (critical for CLI consumers).
|
|
28
|
+
|
|
29
|
+
### Authoring rules
|
|
30
|
+
|
|
31
|
+
- Never create `@theme` entries such as `--color-primary: var(--color-primary)` — use `--token-color-*` as the source of truth.
|
|
32
|
+
- Components consume **`var(--color-*)`** only; token files own the mapping.
|
|
33
|
+
- When adding a preset or theme, cover spacing, radius, and font scales consistently.
|
|
34
|
+
|
|
35
|
+
### Consumption modes
|
|
36
|
+
|
|
37
|
+
| Mode | What happens | Consumer needs Tailwind? |
|
|
38
|
+
| ---- | ------------- | ------------------------- |
|
|
39
|
+
| npm package | `@tailwindcss/cli` emits `dist/sparkdesign.css` | No |
|
|
40
|
+
| CLI copy | User `@import`s token CSS in their app | Tailwind v4 recommended |
|
|
41
|
+
|
|
42
|
+
### Checklist
|
|
43
|
+
|
|
44
|
+
- [ ] New `data-style` preset updates `scale/presets/`
|
|
45
|
+
- [ ] New configurable knobs land in `scale/config.css` + `computed.css`
|
|
46
|
+
- [ ] New theme file added under `themes/` and wired through `index.css`
|
|
47
|
+
- [ ] Contrast checked for accessibility
|
|
48
|
+
- [ ] This P2 file reflects the change
|
package/dist/tokens/index.css
CHANGED
|
@@ -1,22 +1,13 @@
|
|
|
1
1
|
/* ============================================
|
|
2
|
-
* [
|
|
2
|
+
* [WHO]: Default token stack entry — wires scale, theme bridge, scrollbar helper, and built-in themes.
|
|
3
|
+
* [FROM]: `./scale.css`, `theme-base.css`, `themes/*.css`, `scrollbar-utility.css`.
|
|
4
|
+
* [TO]: Apps that want one import for layout + color tokens; CLI `init` / docs full-import path.
|
|
5
|
+
* [HERE]: src/tokens/index.css — bundle root; see `src/tokens/AGENTS.md` for cherry-pick imports.
|
|
3
6
|
*
|
|
4
|
-
*
|
|
5
|
-
* 1.
|
|
6
|
-
* 2.
|
|
7
|
-
*
|
|
8
|
-
* @import "./tokens/scale/computed.css"; // 映射到实际变量
|
|
9
|
-
* @import "./tokens/theme-base.css";
|
|
10
|
-
* @import "./tokens/themes/light-qoder.css";
|
|
11
|
-
*
|
|
12
|
-
* 自定义布局配置:
|
|
13
|
-
* @import "./tokens/scale/config.css";
|
|
14
|
-
* @import "./tokens/scale/computed.css";
|
|
15
|
-
* :root { --config-radius-default: 10px; } // 覆盖配置
|
|
16
|
-
*
|
|
17
|
-
* 自定义颜色主题:
|
|
18
|
-
* @import "./tokens/theme-base.css";
|
|
19
|
-
* @import "./my-custom-theme.css"; // 定义 [data-theme="xxx"] { --token-color-*: ... }
|
|
7
|
+
* [PROTOCOL]:
|
|
8
|
+
* 1. When adding a new theme file, import it here and document in P2 `src/tokens/AGENTS.md`.
|
|
9
|
+
* 2. Custom layout: import `scale/config.css` + `scale/computed.css`, override `--config-*`, then theme layers.
|
|
10
|
+
* 3. Custom color only: `theme-base.css` + your `[data-theme]` file setting `--token-color-*`.
|
|
20
11
|
* ============================================ */
|
|
21
12
|
|
|
22
13
|
/* 布局风格 Token (data-style: neutral | compact | soft | sharp | dense) */
|
|
@@ -26,8 +17,8 @@
|
|
|
26
17
|
@import "./theme-base.css";
|
|
27
18
|
|
|
28
19
|
/* 内置主题 (data-theme) */
|
|
29
|
-
@import "./themes/light-
|
|
30
|
-
@import "./themes/dark-
|
|
20
|
+
@import "./themes/light-mint.css";
|
|
21
|
+
@import "./themes/dark-mint.css";
|
|
31
22
|
@import "./themes/light-parchment.css";
|
|
32
23
|
@import "./themes/dark-parchment.css";
|
|
33
24
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* ============================================
|
|
2
2
|
* Preset: Compact - 紧凑风格
|
|
3
|
-
*
|
|
3
|
+
* 小幅压缩控件节奏,适合效率型工作台
|
|
4
4
|
* ============================================ */
|
|
5
5
|
|
|
6
6
|
[data-style="compact"] {
|
|
@@ -15,14 +15,25 @@
|
|
|
15
15
|
--radius-2xl: 12px;
|
|
16
16
|
--radius-3xl: 16px;
|
|
17
17
|
|
|
18
|
-
/* Font Size (
|
|
19
|
-
--font-size-
|
|
20
|
-
--font-size-
|
|
21
|
-
--font-size-
|
|
18
|
+
/* Font Size (略小但保持阅读舒适) */
|
|
19
|
+
--font-size-xs: 12px;
|
|
20
|
+
--font-size-xs--line-height: 16px;
|
|
21
|
+
--font-size-sm: 13px;
|
|
22
|
+
--font-size-sm--line-height: 18px;
|
|
23
|
+
--font-size-base: 14px;
|
|
24
|
+
--font-size-base--line-height: 20px;
|
|
25
|
+
--font-size-lg: 15px;
|
|
26
|
+
--font-size-lg--line-height: 22px;
|
|
27
|
+
--font-size-xl: 17px;
|
|
28
|
+
--font-size-xl--line-height: 24px;
|
|
22
29
|
--font-size-2xl: 18px;
|
|
30
|
+
--font-size-2xl--line-height: 24px;
|
|
23
31
|
--font-size-3xl: 22px;
|
|
32
|
+
--font-size-3xl--line-height: 28px;
|
|
24
33
|
--font-size-4xl: 28px;
|
|
34
|
+
--font-size-4xl--line-height: 32px;
|
|
25
35
|
--font-size-5xl: 34px;
|
|
36
|
+
--font-size-5xl--line-height: 36px;
|
|
26
37
|
--font-size-6xl: 44px;
|
|
27
38
|
--font-size-7xl: 56px;
|
|
28
39
|
--font-size-8xl: 64px;
|
|
@@ -49,14 +49,25 @@
|
|
|
49
49
|
/* ChatInput 特殊配置 */
|
|
50
50
|
--chat-status-overlap: 4px;
|
|
51
51
|
|
|
52
|
-
/* Font Size (
|
|
53
|
-
--font-size-
|
|
52
|
+
/* Font Size (信息密集:主力 text-sm 也压缩) */
|
|
53
|
+
--font-size-xs: 11px;
|
|
54
|
+
--font-size-xs--line-height: 14px;
|
|
55
|
+
--font-size-sm: 12px;
|
|
56
|
+
--font-size-sm--line-height: 16px;
|
|
57
|
+
--font-size-base: 13px;
|
|
58
|
+
--font-size-base--line-height: 18px;
|
|
54
59
|
--font-size-lg: 14px;
|
|
60
|
+
--font-size-lg--line-height: 20px;
|
|
55
61
|
--font-size-xl: 14px;
|
|
62
|
+
--font-size-xl--line-height: 20px;
|
|
56
63
|
--font-size-2xl: 16px;
|
|
64
|
+
--font-size-2xl--line-height: 22px;
|
|
57
65
|
--font-size-3xl: 18px;
|
|
66
|
+
--font-size-3xl--line-height: 24px;
|
|
58
67
|
--font-size-4xl: 22px;
|
|
68
|
+
--font-size-4xl--line-height: 28px;
|
|
59
69
|
--font-size-5xl: 28px;
|
|
70
|
+
--font-size-5xl--line-height: 32px;
|
|
60
71
|
--font-size-6xl: 36px;
|
|
61
72
|
--font-size-7xl: 44px;
|
|
62
73
|
--font-size-8xl: 56px;
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
/* ============================================
|
|
2
2
|
* Preset: Sharp - 锐利风格
|
|
3
|
-
* 几何精度,无圆角 + 等宽字体
|
|
3
|
+
* 几何精度,无圆角 + 等宽字体 + 硬朗节奏
|
|
4
4
|
* ============================================ */
|
|
5
5
|
|
|
6
6
|
[data-style="sharp"] {
|
|
7
|
-
/* Spacing (
|
|
7
|
+
/* Spacing (方正、克制,少量压缩) */
|
|
8
8
|
--spacing-3: 10px;
|
|
9
9
|
--spacing-4: 14px;
|
|
10
|
+
--spacing-5: 18px;
|
|
11
|
+
--spacing-6: 22px;
|
|
10
12
|
--spacing-9: 32px;
|
|
11
13
|
--spacing-11: 40px;
|
|
12
14
|
|
|
@@ -25,13 +27,23 @@
|
|
|
25
27
|
--font-sans: var(--config-font-mono);
|
|
26
28
|
font-family: var(--font-sans);
|
|
27
29
|
|
|
28
|
-
/* Font Size (
|
|
29
|
-
--font-size-
|
|
30
|
-
--font-size-
|
|
31
|
-
--font-size-
|
|
30
|
+
/* Font Size (工程感:略紧、等宽、层级清楚) */
|
|
31
|
+
--font-size-xs: 12px;
|
|
32
|
+
--font-size-xs--line-height: 16px;
|
|
33
|
+
--font-size-sm: 13px;
|
|
34
|
+
--font-size-sm--line-height: 18px;
|
|
35
|
+
--font-size-base: 14px;
|
|
36
|
+
--font-size-base--line-height: 20px;
|
|
37
|
+
--font-size-lg: 15px;
|
|
38
|
+
--font-size-lg--line-height: 22px;
|
|
39
|
+
--font-size-xl: 17px;
|
|
40
|
+
--font-size-xl--line-height: 24px;
|
|
32
41
|
--font-size-2xl: 18px;
|
|
42
|
+
--font-size-2xl--line-height: 24px;
|
|
33
43
|
--font-size-3xl: 22px;
|
|
44
|
+
--font-size-3xl--line-height: 28px;
|
|
34
45
|
--font-size-4xl: 28px;
|
|
46
|
+
--font-size-4xl--line-height: 32px;
|
|
35
47
|
--font-size-5xl: 34px;
|
|
36
48
|
--font-size-6xl: 44px;
|
|
37
49
|
--font-size-7xl: 56px;
|
|
@@ -4,7 +4,17 @@
|
|
|
4
4
|
* ============================================ */
|
|
5
5
|
|
|
6
6
|
[data-style="soft"] {
|
|
7
|
-
/*
|
|
7
|
+
/* Spacing (舒展留白) */
|
|
8
|
+
--spacing-3: 14px;
|
|
9
|
+
--spacing-4: 18px;
|
|
10
|
+
--spacing-5: 24px;
|
|
11
|
+
--spacing-6: 28px;
|
|
12
|
+
--spacing-8: 36px;
|
|
13
|
+
--spacing-9: 40px;
|
|
14
|
+
--spacing-11: 48px;
|
|
15
|
+
--spacing-12: 56px;
|
|
16
|
+
|
|
17
|
+
/* Radius (大圆角) */
|
|
8
18
|
--radius-sm: 8px;
|
|
9
19
|
--radius-DEFAULT: 12px;
|
|
10
20
|
--radius-md: 12px;
|
|
@@ -13,4 +23,16 @@
|
|
|
13
23
|
--radius-2xl: 24px;
|
|
14
24
|
--radius-3xl: 28px;
|
|
15
25
|
--radius: var(--radius-DEFAULT);
|
|
26
|
+
|
|
27
|
+
/* Font Size (阅读舒适,行高更松) */
|
|
28
|
+
--font-size-sm: 14px;
|
|
29
|
+
--font-size-sm--line-height: 22px;
|
|
30
|
+
--font-size-base: 15px;
|
|
31
|
+
--font-size-base--line-height: 24px;
|
|
32
|
+
--font-size-lg: 17px;
|
|
33
|
+
--font-size-lg--line-height: 26px;
|
|
34
|
+
--font-size-xl: 20px;
|
|
35
|
+
--font-size-xl--line-height: 28px;
|
|
36
|
+
--font-size-2xl: 22px;
|
|
37
|
+
--font-size-2xl--line-height: 30px;
|
|
16
38
|
}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
/* ============================================
|
|
2
|
-
* [
|
|
3
|
-
* [
|
|
2
|
+
* [WHO]: Tailwind v4 `@theme` bridge, motion presets, scrollbar helpers — no palette hex here.
|
|
3
|
+
* [FROM]: Runtime vars from scale (`--font-size-*`, `--spacing-*`, `--radius-*`) and themes (`--token-color-*`).
|
|
4
|
+
* [TO]: Any bundle that imports tokens and needs Tailwind utilities resolved from CSS variables.
|
|
5
|
+
* [HERE]: src/tokens/theme-base.css — mapping contract only; literal colors live in `themes/*.css`.
|
|
4
6
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* 用户自定义主题时只需:
|
|
9
|
-
* 1. 引入此文件(定义映射)
|
|
10
|
-
* 2. 引入自己的主题 CSS(覆盖 --token-color-* 变量)
|
|
7
|
+
* [PROTOCOL]:
|
|
8
|
+
* 1. Do not embed theme colors in this file; define `--token-color-*` under `[data-theme]` in theme files.
|
|
9
|
+
* 2. Custom themes: import this for mappings, then add/override `--token-color-*` in your theme layer.
|
|
11
10
|
* ============================================ */
|
|
12
11
|
|
|
13
12
|
/* ============================================
|
package/dist/tokens/theme.css
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* ============================================ */
|
|
12
12
|
|
|
13
13
|
@import "./theme-base.css";
|
|
14
|
-
@import "./themes/light-
|
|
15
|
-
@import "./themes/dark-
|
|
14
|
+
@import "./themes/light-mint.css";
|
|
15
|
+
@import "./themes/dark-mint.css";
|
|
16
16
|
@import "./themes/light-parchment.css";
|
|
17
17
|
@import "./themes/dark-parchment.css";
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
/* ============================================
|
|
2
|
+
* Theme: Dark Mint (暗色模式)
|
|
3
|
+
* 用户可复制此文件作为自定义主题模板
|
|
4
|
+
* ============================================ */
|
|
5
|
+
|
|
6
|
+
[data-theme="dark"] {
|
|
7
|
+
color-scheme: dark;
|
|
8
|
+
/* --- Primary --- */
|
|
9
|
+
--token-color-primary: #8EE5A1;
|
|
10
|
+
--token-color-primary-hover: #9BE6B3;
|
|
11
|
+
--token-color-primary-active: #73CD94;
|
|
12
|
+
--token-color-primary-bg: #14261C;
|
|
13
|
+
--token-color-primary-bg-hover: #1A2E21;
|
|
14
|
+
--token-color-primary-border: #335942;
|
|
15
|
+
--token-color-primary-border-hover: #407354;
|
|
16
|
+
--token-color-primary-text: #8EE5A1;
|
|
17
|
+
--token-color-primary-text-hover: #9BE6B3;
|
|
18
|
+
--token-color-primary-text-active: #73CD94;
|
|
19
|
+
--token-color-text-on-primary: #0D0D0D;
|
|
20
|
+
|
|
21
|
+
/* --- Text --- */
|
|
22
|
+
--token-color-text: #FAF9F5;
|
|
23
|
+
--token-color-text-secondary: #9C9D9E;
|
|
24
|
+
--token-color-text-tertiary: #7C7D7F;
|
|
25
|
+
--token-color-text-quaternary: #717374;
|
|
26
|
+
--token-color-text-base: #F0F2F3;
|
|
27
|
+
|
|
28
|
+
/* --- Border --- */
|
|
29
|
+
--token-color-border: #404040;
|
|
30
|
+
--token-color-border-secondary: #2A2A2A;
|
|
31
|
+
--token-color-border-tertiary: #262626;
|
|
32
|
+
|
|
33
|
+
/* --- Fill --- */
|
|
34
|
+
--token-color-fill: #454545;
|
|
35
|
+
--token-color-fill-secondary: #363636;
|
|
36
|
+
--token-color-fill-tertiary: #1A1A1A;
|
|
37
|
+
--token-color-fill-quaternary: #1A1A1A;
|
|
38
|
+
--token-color-fill-disable: #525252;
|
|
39
|
+
|
|
40
|
+
/* --- Background --- */
|
|
41
|
+
--token-color-bg-container: #0D0D0D;
|
|
42
|
+
--token-color-bg-elevated: #080808;
|
|
43
|
+
--token-color-bg-layout: #050505;
|
|
44
|
+
--token-color-bg-spotlight: #080808;
|
|
45
|
+
--token-color-bg-mask: rgba(0, 0, 0, 0.7);
|
|
46
|
+
/* PlanPart 点阵高亮遮罩渐变(随主题) */
|
|
47
|
+
--token-color-mask-shimmer-weak: rgba(0, 0, 0, 0.3);
|
|
48
|
+
--token-color-mask-shimmer-strong: rgba(0, 0, 0, 0.8);
|
|
49
|
+
--token-color-mask-shimmer-full: rgba(0, 0, 0, 1);
|
|
50
|
+
--token-color-bg-base: #000000;
|
|
51
|
+
--token-color-bg-highlight: #d0d0d0;
|
|
52
|
+
--token-color-bg-highlight-hover: #e0e0e0;
|
|
53
|
+
|
|
54
|
+
/* --- Semantic Colors --- */
|
|
55
|
+
--token-color-link: #8EE5A1;
|
|
56
|
+
--token-color-error: #FF4D4F;
|
|
57
|
+
--token-color-error-hover: #FF7875;
|
|
58
|
+
--token-color-error-bg: #4A1A1B;
|
|
59
|
+
--token-color-error-bg-hover: #5C2224;
|
|
60
|
+
--token-color-error-border: #663338;
|
|
61
|
+
--token-color-info: #0B83F1;
|
|
62
|
+
--token-color-info-hover: #5EBCFF;
|
|
63
|
+
--token-color-info-bg: #19080E;
|
|
64
|
+
--token-color-info-bg-hover: #220A12;
|
|
65
|
+
--token-color-info-border: #4F1C0E;
|
|
66
|
+
--token-color-success: #73CD94;
|
|
67
|
+
--token-color-success-hover: #8EE5A1;
|
|
68
|
+
--token-color-success-bg: #14261C;
|
|
69
|
+
--token-color-success-bg-hover: #1A2E21;
|
|
70
|
+
--token-color-success-border: #335942;
|
|
71
|
+
--token-color-warning: #FAAD14;
|
|
72
|
+
--token-color-warning-hover: #FFD666;
|
|
73
|
+
--token-color-warning-bg: #4A4019;
|
|
74
|
+
--token-color-warning-bg-hover: #5C4E1F;
|
|
75
|
+
--token-color-warning-border: #664D19;
|
|
76
|
+
|
|
77
|
+
/* --- Accent Colors --- */
|
|
78
|
+
--token-color-pink: #EC4899;
|
|
79
|
+
--token-color-pink-bg: #4A1C31;
|
|
80
|
+
--token-color-pink-bg-hover: #5C2440;
|
|
81
|
+
--token-color-purple: #615CED;
|
|
82
|
+
--token-color-purple-bg: #14160E;
|
|
83
|
+
--token-color-purple-bg-hover: #1C1E14;
|
|
84
|
+
--token-color-yellow: #FAC414;
|
|
85
|
+
--token-color-yellow-bg: #4A4030;
|
|
86
|
+
--token-color-yellow-bg-hover: #5C5040;
|
|
87
|
+
--token-color-orange: #FA8125;
|
|
88
|
+
--token-color-orange-bg: #4A1021;
|
|
89
|
+
--token-color-orange-bg-hover: #5C1429;
|
|
90
|
+
--token-color-teal: #14B8A6;
|
|
91
|
+
--token-color-teal-bg: #21080E;
|
|
92
|
+
--token-color-teal-bg-hover: #2E0E14;
|
|
93
|
+
--token-color-blue: #0090FF;
|
|
94
|
+
--token-color-blue-bg: #21120E;
|
|
95
|
+
--token-color-blue-bg-hover: #2E1A14;
|
|
96
|
+
--token-color-mauve: #8E8C99;
|
|
97
|
+
--token-color-mauve-bg: #0E0D0C;
|
|
98
|
+
--token-color-mauve-bg-hover: #1A1818;
|
|
99
|
+
--token-color-slate: #363636;
|
|
100
|
+
--token-color-slate-bg: #1a1a1a;
|
|
101
|
+
--token-color-slate-bg-hover: #262626;
|
|
102
|
+
--token-color-lavender: #B99DFF;
|
|
103
|
+
--token-color-lavender-bg: #131B0E;
|
|
104
|
+
--token-color-lavender-bg-hover: #1C2614;
|
|
105
|
+
--token-color-sage: #6BB394;
|
|
106
|
+
--token-color-sage-bg: #100C0D;
|
|
107
|
+
--token-color-sage-bg-hover: #1A1418;
|
|
108
|
+
|
|
109
|
+
/* --- Select 等组件 (input/ring/popover 等) --- */
|
|
110
|
+
--token-color-input: var(--token-color-border-tertiary);
|
|
111
|
+
--token-color-ring: var(--token-color-primary-border);
|
|
112
|
+
--token-color-popover: var(--token-color-bg-container);
|
|
113
|
+
--token-color-popover-foreground: var(--token-color-text);
|
|
114
|
+
--token-color-accent: var(--token-color-fill-secondary);
|
|
115
|
+
--token-color-accent-foreground: var(--token-color-text);
|
|
116
|
+
--token-color-muted: var(--token-color-fill-tertiary);
|
|
117
|
+
--token-color-muted-foreground: var(--token-color-text-secondary);
|
|
118
|
+
--token-color-background: var(--token-color-bg-base);
|
|
119
|
+
|
|
120
|
+
/* --- Diff --- */
|
|
121
|
+
--token-color-diff-insert: #73CD94;
|
|
122
|
+
--token-color-diff-insert-bg: #14261C;
|
|
123
|
+
--token-color-diff-remove: #FC6B83;
|
|
124
|
+
--token-color-diff-remove-bg: #1C2E2A;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
/* SendButton: dark 模式下 normal 状态使用 success 色(与 light 下 bg-bg-highlight 区分) */
|
|
128
|
+
[data-theme="dark"] .SendButton-send {
|
|
129
|
+
background-color: var(--token-color-success);
|
|
130
|
+
}
|
|
131
|
+
[data-theme="dark"] .SendButton-send:hover:not(:disabled) {
|
|
132
|
+
background-color: var(--token-color-success-hover);
|
|
133
|
+
}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/* ============================================
|
|
2
|
+
* Theme: Light Mint (亮色模式)
|
|
3
|
+
* 用户可复制此文件作为自定义主题模板
|
|
4
|
+
* ============================================ */
|
|
5
|
+
|
|
6
|
+
:root,
|
|
7
|
+
[data-theme="light"] {
|
|
8
|
+
color-scheme: light;
|
|
9
|
+
/* --- Primary --- */
|
|
10
|
+
--token-color-primary: #8EE5A1;
|
|
11
|
+
--token-color-primary-hover: #73CD94;
|
|
12
|
+
--token-color-primary-active: #5CB870;
|
|
13
|
+
--token-color-primary-bg: #F1FAF3;
|
|
14
|
+
--token-color-primary-bg-hover: #E6F7EC;
|
|
15
|
+
--token-color-primary-border: #CDEFD9;
|
|
16
|
+
--token-color-primary-border-hover: #B3E6C7;
|
|
17
|
+
--token-color-primary-text: #141414;
|
|
18
|
+
--token-color-primary-text-hover: #73CD94;
|
|
19
|
+
--token-color-primary-text-active: #5CB870;
|
|
20
|
+
--token-color-text-on-primary: #FDFDFD;
|
|
21
|
+
|
|
22
|
+
/* --- Text --- */
|
|
23
|
+
--token-color-text: #141414;
|
|
24
|
+
--token-color-text-secondary: #636261;
|
|
25
|
+
--token-color-text-tertiary: #838280;
|
|
26
|
+
--token-color-text-quaternary: #8E8C8B;
|
|
27
|
+
--token-color-text-base: #0F0D0C;
|
|
28
|
+
|
|
29
|
+
/* --- Border --- */
|
|
30
|
+
--token-color-border: #BCBBBA;
|
|
31
|
+
--token-color-border-secondary: #DDDDDD;
|
|
32
|
+
--token-color-border-tertiary: #E6E6E6;
|
|
33
|
+
|
|
34
|
+
/* --- Fill --- */
|
|
35
|
+
--token-color-fill: #DFDFDF;
|
|
36
|
+
--token-color-fill-secondary: #EFEFEF;
|
|
37
|
+
--token-color-fill-tertiary: #F9F9F9;
|
|
38
|
+
--token-color-fill-quaternary: #FCFCFC;
|
|
39
|
+
--token-color-fill-disable: #DAD9D8;
|
|
40
|
+
|
|
41
|
+
/* --- Background --- */
|
|
42
|
+
--token-color-bg-container: #FFFFFF;
|
|
43
|
+
--token-color-bg-elevated: #F9F9F9;
|
|
44
|
+
--token-color-bg-layout: #FDFDFD;
|
|
45
|
+
--token-color-bg-spotlight: #FAFAFA;
|
|
46
|
+
--token-color-bg-mask: rgba(0, 0, 0, 0.5);
|
|
47
|
+
/* PlanPart 点阵高亮遮罩渐变(随主题) */
|
|
48
|
+
--token-color-mask-shimmer-weak: rgba(0, 0, 0, 0.3);
|
|
49
|
+
--token-color-mask-shimmer-strong: rgba(0, 0, 0, 0.8);
|
|
50
|
+
--token-color-mask-shimmer-full: rgba(0, 0, 0, 1);
|
|
51
|
+
--token-color-bg-base: #FFFFFF;
|
|
52
|
+
--token-color-bg-highlight: #080807;
|
|
53
|
+
--token-color-bg-highlight-hover: #1a1a1a;
|
|
54
|
+
|
|
55
|
+
/* --- Shadow (输入框等浮层,1~4 级与 primary/secondary/tertiary/quaternary 一致,与 data-theme 无关) --- */
|
|
56
|
+
--token-color-shadow-primary: rgba(0, 0, 0, 0.02);
|
|
57
|
+
--token-color-shadow-secondary: rgba(0, 0, 0, 0.035);
|
|
58
|
+
--token-color-shadow-tertiary: rgba(0, 0, 0, 0.055);
|
|
59
|
+
--token-color-shadow-quaternary: rgba(0, 0, 0, 0.075);
|
|
60
|
+
|
|
61
|
+
/* --- Semantic Colors --- */
|
|
62
|
+
--token-color-link: #5CB870;
|
|
63
|
+
--token-color-error: #FF4D4F;
|
|
64
|
+
--token-color-error-hover: #FF7875;
|
|
65
|
+
--token-color-error-bg: #FFF2F0;
|
|
66
|
+
--token-color-error-bg-hover: #FFE4E0;
|
|
67
|
+
--token-color-error-border: #FFCCC7;
|
|
68
|
+
--token-color-info: #0B83F1;
|
|
69
|
+
--token-color-info-hover: #5EBCFF;
|
|
70
|
+
--token-color-info-bg: #E6F7FF;
|
|
71
|
+
--token-color-info-bg-hover: #D0EFFF;
|
|
72
|
+
--token-color-info-border: #B0E3FF;
|
|
73
|
+
--token-color-success: #73CD94;
|
|
74
|
+
--token-color-success-hover: #8EE5A1;
|
|
75
|
+
--token-color-success-bg: #F1FAF3;
|
|
76
|
+
--token-color-success-bg-hover: #E6F7EC;
|
|
77
|
+
--token-color-success-border: #CDEFD9;
|
|
78
|
+
--token-color-warning: #FAAD14;
|
|
79
|
+
--token-color-warning-hover: #FFD666;
|
|
80
|
+
--token-color-warning-bg: #FFFBE6;
|
|
81
|
+
--token-color-warning-bg-hover: #FFF3CF;
|
|
82
|
+
--token-color-warning-border: #FFE5BF;
|
|
83
|
+
|
|
84
|
+
/* --- Accent Colors --- */
|
|
85
|
+
--token-color-pink: #EC4899;
|
|
86
|
+
--token-color-pink-bg: #F9E3F3;
|
|
87
|
+
--token-color-pink-bg-hover: #F5D4EB;
|
|
88
|
+
--token-color-purple: #615CED;
|
|
89
|
+
--token-color-purple-bg: #EBE9FF;
|
|
90
|
+
--token-color-purple-bg-hover: #DDDAFF;
|
|
91
|
+
--token-color-yellow: #FAC414;
|
|
92
|
+
--token-color-yellow-bg: #FFF3CF;
|
|
93
|
+
--token-color-yellow-bg-hover: #FFE9A8;
|
|
94
|
+
--token-color-orange: #FA8125;
|
|
95
|
+
--token-color-orange-bg: #FFEFDE;
|
|
96
|
+
--token-color-orange-bg-hover: #FFE3C7;
|
|
97
|
+
--token-color-teal: #14B8A6;
|
|
98
|
+
--token-color-teal-bg: #DEF7F1;
|
|
99
|
+
--token-color-teal-bg-hover: #CAF0E8;
|
|
100
|
+
--token-color-blue: #0090FF;
|
|
101
|
+
--token-color-blue-bg: #DEEDFF;
|
|
102
|
+
--token-color-blue-bg-hover: #C8E3FF;
|
|
103
|
+
--token-color-mauve: #8E8C99;
|
|
104
|
+
--token-color-mauve-bg: #F1F2F3;
|
|
105
|
+
--token-color-mauve-bg-hover: #E4E5E7;
|
|
106
|
+
--token-color-slate: #404040;
|
|
107
|
+
--token-color-slate-bg: #FAFAFA;
|
|
108
|
+
--token-color-slate-bg-hover: #EFEFEF;
|
|
109
|
+
--token-color-lavender: #B99DFF;
|
|
110
|
+
--token-color-lavender-bg: #ECE4FF;
|
|
111
|
+
--token-color-lavender-bg-hover: #E0D4FF;
|
|
112
|
+
--token-color-sage: #6BB394;
|
|
113
|
+
--token-color-sage-bg: #EFF3F2;
|
|
114
|
+
--token-color-sage-bg-hover: #E2EAE8;
|
|
115
|
+
|
|
116
|
+
/* --- Select 等组件 (input/ring/popover 等) --- */
|
|
117
|
+
--token-color-input: var(--token-color-border-tertiary);
|
|
118
|
+
--token-color-ring: var(--token-color-primary-border);
|
|
119
|
+
--token-color-popover: var(--token-color-bg-container);
|
|
120
|
+
--token-color-popover-foreground: var(--token-color-text);
|
|
121
|
+
--token-color-accent: var(--token-color-fill-secondary);
|
|
122
|
+
--token-color-accent-foreground: var(--token-color-text);
|
|
123
|
+
--token-color-muted: var(--token-color-fill-tertiary);
|
|
124
|
+
--token-color-muted-foreground: var(--token-color-text-secondary);
|
|
125
|
+
--token-color-background: var(--token-color-bg-base);
|
|
126
|
+
|
|
127
|
+
/* --- Diff --- */
|
|
128
|
+
--token-color-diff-insert: #A6DCBA;
|
|
129
|
+
--token-color-diff-insert-bg: #D9EBE0;
|
|
130
|
+
--token-color-diff-remove: #FC6B83;
|
|
131
|
+
--token-color-diff-remove-bg: #E3D1D5;
|
|
132
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Agent Component Selection
|
|
2
|
+
|
|
3
|
+
This guide is the human-readable companion to `registry/agent-manifest.json`.
|
|
4
|
+
Agents should read the manifest first, then source files only when implementation
|
|
5
|
+
details are needed.
|
|
6
|
+
|
|
7
|
+
## Entry Points
|
|
8
|
+
|
|
9
|
+
- `sparkdesign/agent-manifest.json` — package export for agent-facing component semantics.
|
|
10
|
+
- `registry/agent-manifest.json` — source of truth in this repository.
|
|
11
|
+
- `npm run check:agent-manifest` — validates required semantic fields and recipe references.
|
|
12
|
+
|
|
13
|
+
## Decision Order
|
|
14
|
+
|
|
15
|
+
1. Choose by `intent`, not by component name similarity.
|
|
16
|
+
2. Check `antiPatterns` before composing a component into a generated screen.
|
|
17
|
+
3. Prefer `recipes` for common agent workflows before inventing a new layout.
|
|
18
|
+
4. Use `cliAdd` when the target app should own copied component source.
|
|
19
|
+
5. Use `packageImport` only when the app already consumes `sparkdesign` as a package.
|
|
20
|
+
|
|
21
|
+
## Current High-Confidence Coverage
|
|
22
|
+
|
|
23
|
+
The first manifest version covers the components most likely to be selected by
|
|
24
|
+
design/coding agents:
|
|
25
|
+
|
|
26
|
+
- `button`
|
|
27
|
+
- `alert`
|
|
28
|
+
- `card`
|
|
29
|
+
- `dialog`
|
|
30
|
+
- `drawer`
|
|
31
|
+
- `file-review-part`
|
|
32
|
+
- `chat-input`
|
|
33
|
+
- `response`
|
|
34
|
+
- `markdown`
|
|
35
|
+
- `permission-card`
|
|
36
|
+
- `tool-invocation-card`
|
|
37
|
+
|
|
38
|
+
## Recipe Usage
|
|
39
|
+
|
|
40
|
+
Recipes are intended to prevent agents from flattening rich AI interfaces into
|
|
41
|
+
generic cards and Markdown.
|
|
42
|
+
|
|
43
|
+
- `assistant-composer` — prompt entry, attachments, send, and permissions.
|
|
44
|
+
- `assistant-response-stream` — generated answer, tools, Markdown, and errors.
|
|
45
|
+
- `focused-task-modal` — compact blocking task or confirmation flow.
|
|
46
|
+
- `settings-drawer` — contextual settings/details while preserving page context.
|
|
47
|
+
- `tool-approval-flow` — explicit approval before risky agent tool actions.
|
|
48
|
+
- `file-review-flow` — agent file changes, review decisions, and approval.
|
|
49
|
+
- `empty-state-with-prompts` — empty states that guide users into AI workflows.
|
|
50
|
+
|
|
51
|
+
## Maintenance Rule
|
|
52
|
+
|
|
53
|
+
When adding a component to the manifest:
|
|
54
|
+
|
|
55
|
+
1. Confirm the component exists in `registry/meta.json`.
|
|
56
|
+
2. Fill `intent`, `slots`, `states`, `a11y`, `composition`, `antiPatterns`, and `agentHints`.
|
|
57
|
+
3. Ensure `packageImport` uses names exported by `src/components/index.ts`.
|
|
58
|
+
4. Ensure `cliAdd` installs the same component id as the manifest key.
|
|
59
|
+
5. Add or update recipes if the component changes how agents should compose screens.
|
|
60
|
+
6. Run `npm run check:agent-manifest`.
|