@vadimcomanescu/nadicode-design-system 2.0.6 → 2.0.8
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/.agents/skills/seed/SKILL.md +17 -8
- package/.agents/skills/seed/contract.md +5 -4
- package/.agents/skills/seed/intent-map.md +3 -3
- package/.agents/skills/seed/recipes/agents-chat.md +44 -20
- package/.agents/skills/seed/recipes/marketing-shell.md +10 -19
- package/.agents/skills/seed/recipes/navigation-shell.md +5 -5
- package/.agents/skills/seed/recipes/service-detail.md +1 -1
- package/.agents/skills/seed/references/blocks.md +30 -26
- package/.agents/skills/seed/references/brand-override.md +3 -1
- package/.agents/skills/seed/references/components.md +22 -2
- package/.agents/skills/seed/references/dashboard-patterns.md +12 -12
- package/.agents/skills/seed/references/nextjs.md +20 -80
- package/.agents/skills/seed/references/tokens.md +57 -248
- package/README.md +43 -215
- package/contracts/block-props-schemas.json +2186 -0
- package/contracts/component-props-schemas.json +8322 -0
- package/contracts/consumer-contract.json +178 -0
- package/contracts/consumer-intent-map.json +707 -0
- package/contracts/message-catalog-contract.json +820 -0
- package/contracts/page-kit-props-schemas.json +1894 -0
- package/contracts/public-surface-registry.json +6162 -0
- package/contracts/public-surface-registry.schema.json +227 -0
- package/contracts/release-governance-baseline.json +850 -0
- package/contracts/spec-manifest.json +46 -0
- package/css/tokens.css +300 -122
- package/dist/catalog.json +2166 -162
- package/dist/chunk-2BADJLMV.js +117 -0
- package/dist/chunk-35EX5FP5.js +106 -0
- package/dist/chunk-4IGBBIYW.js +47 -0
- package/dist/chunk-4WPZ6T7V.js +186 -0
- package/dist/chunk-5PZ4VR2D.js +142 -0
- package/dist/chunk-5UESKK6S.js +76 -0
- package/dist/chunk-7A2RXKGH.js +205 -0
- package/dist/{chunk-DF47R6LN.js → chunk-AWIG4QN6.js} +9 -9
- package/dist/chunk-AYWL4IYM.js +67 -0
- package/dist/chunk-C7WHMSF3.js +114 -0
- package/dist/{chunk-SV3KZ6CB.js → chunk-DSMGCFMJ.js} +7 -2
- package/dist/{chunk-4K3PATUT.js → chunk-EEL4RAPC.js} +13 -1
- package/dist/{chunk-ILIHQ2KZ.js → chunk-EK43W2Y6.js} +16 -10
- package/dist/chunk-FV2G6SAF.js +134 -0
- package/dist/chunk-FX23F33E.js +57 -0
- package/dist/chunk-GJPTPLCQ.js +52 -0
- package/dist/chunk-HJ3A2YNO.js +163 -0
- package/dist/chunk-HJZRSPWB.js +38 -0
- package/dist/chunk-HWHJ6IRQ.js +78 -0
- package/dist/chunk-HZERHGBT.js +77 -0
- package/dist/{chunk-AUSYEAIJ.js → chunk-I66XWYSS.js} +32 -8
- package/dist/chunk-IXQGKJU4.js +183 -0
- package/dist/chunk-JDJY4ABS.js +60 -0
- package/dist/chunk-K7NQ6ZAW.js +84 -0
- package/dist/chunk-KWILREVQ.js +147 -0
- package/dist/chunk-LCKLZ4XK.js +60 -0
- package/dist/{chunk-WI37ZYIF.js → chunk-M4XKO45H.js} +13 -1
- package/dist/chunk-NEHCPO53.js +44 -0
- package/dist/chunk-OJ7OO3QB.js +269 -0
- package/dist/{chunk-ZHTQF2KI.js → chunk-OSNTB6RY.js} +29 -22
- package/dist/{chunk-GMMPLZLC.js → chunk-PDSQC6VE.js} +1 -1
- package/dist/chunk-QIHA7S3A.js +36 -0
- package/dist/chunk-QQOWC53X.js +98 -0
- package/dist/chunk-RKQPU75I.js +126 -0
- package/dist/chunk-U4GYSYGN.js +120 -0
- package/dist/chunk-UGV45DH3.js +18 -0
- package/dist/chunk-VBZQ4DBE.js +52 -0
- package/dist/{chunk-LQLFA2EL.js → chunk-VDONTZZX.js} +2 -2
- package/dist/chunk-VEO56RH4.js +105 -0
- package/dist/chunk-VJ5VD4UT.js +91 -0
- package/dist/{chunk-RWNJ54CI.js → chunk-VN475YZS.js} +1 -1
- package/dist/chunk-VNNAL4A6.js +110 -0
- package/dist/chunk-VZCB4APK.js +94 -0
- package/dist/chunk-W7FXDRQJ.js +94 -0
- package/dist/{chunk-5I3FWRC5.js → chunk-WOYBVPXK.js} +10 -10
- package/dist/chunk-WST5NLLC.js +73 -0
- package/dist/chunk-X6VXWEDO.js +125 -0
- package/dist/chunk-XTASI4IY.js +60 -0
- package/dist/chunk-Z233ZQZE.js +33 -0
- package/dist/chunk-ZKLB5N3Q.js +110 -0
- package/dist/chunk-ZM2NODUK.js +39 -0
- package/dist/components/blocks/AccountLockedBlock.js +7 -57
- package/dist/components/blocks/ActivityFeedBlock.js +6 -39
- package/dist/components/blocks/AgentConversationBlock.d.ts +6 -1
- package/dist/components/blocks/AgentConversationBlock.js +45 -71
- package/dist/components/blocks/AgentRunOverviewBlock.js +1 -1
- package/dist/components/blocks/AgentWorkbenchBlock.d.ts +5 -1
- package/dist/components/blocks/AgentWorkbenchBlock.js +47 -46
- package/dist/components/blocks/AudioVisualizerBlock.d.ts +1 -1
- package/dist/components/blocks/AudioVisualizerBlock.js +2 -2
- package/dist/components/blocks/AuthLayout.js +2 -2
- package/dist/components/blocks/AuthSuccessBlock.js +5 -60
- package/dist/components/blocks/BannerBlock.js +38 -38
- package/dist/components/blocks/BarChartBlock.d.ts +1 -1
- package/dist/components/blocks/BarChartBlock.js +2 -2
- package/dist/components/blocks/CallToActionBlock.d.ts +1 -1
- package/dist/components/blocks/CallToActionBlock.js +7 -53
- package/dist/components/blocks/ChangelogBlock.js +45 -142
- package/dist/components/blocks/ChartBlock.js +38 -38
- package/dist/components/blocks/ChartCollectionBlock.js +3 -3
- package/dist/components/blocks/ChatLayout.d.ts +4 -1
- package/dist/components/blocks/ChatLayout.js +39 -39
- package/dist/components/blocks/CodeBlock.js +7 -60
- package/dist/components/blocks/ComparisonBlock.js +9 -94
- package/dist/components/blocks/ContactBlock.js +11 -120
- package/dist/components/blocks/CreateBlock.js +39 -39
- package/dist/components/blocks/DataGridBlock.js +40 -40
- package/dist/components/blocks/DirectoryBlock.js +43 -43
- package/dist/components/blocks/FAQBlock.js +44 -82
- package/dist/components/blocks/FeatureBlock.d.ts +10 -14
- package/dist/components/blocks/FeatureBlock.js +54 -196
- package/dist/components/blocks/FeatureGridBlock.d.ts +1 -1
- package/dist/components/blocks/FeatureGridBlock.js +2 -2
- package/dist/components/blocks/FooterBlock.d.ts +2 -2
- package/dist/components/blocks/FooterBlock.js +11 -67
- package/dist/components/blocks/GalleryBlock.js +38 -38
- package/dist/components/blocks/HeaderBlock.d.ts +2 -2
- package/dist/components/blocks/HeaderBlock.js +39 -39
- package/dist/components/blocks/HeatmapChartBlock.d.ts +1 -1
- package/dist/components/blocks/HeatmapChartBlock.js +1 -1
- package/dist/components/blocks/HeroBlock.d.ts +6 -3
- package/dist/components/blocks/HeroBlock.js +53 -236
- package/dist/components/blocks/HeroSectionBlock.d.ts +1 -1
- package/dist/components/blocks/HeroSectionBlock.js +59 -63
- package/dist/components/blocks/IntegrationsBlock.d.ts +1 -1
- package/dist/components/blocks/IntegrationsBlock.js +42 -42
- package/dist/components/blocks/InteractiveAreaChartBlock.d.ts +1 -1
- package/dist/components/blocks/InteractiveAreaChartBlock.js +40 -40
- package/dist/components/blocks/KanbanDemoBlock.js +3 -3
- package/dist/components/blocks/LoginBlock.js +2 -2
- package/dist/components/blocks/LogoCloud.js +2 -13
- package/dist/components/blocks/NavUser.js +42 -42
- package/dist/components/blocks/NewsletterBlock.js +11 -84
- package/dist/components/blocks/NotFoundBlock.js +41 -41
- package/dist/components/blocks/OnboardingBlock.js +38 -38
- package/dist/components/blocks/PasswordRecoveryBlock.js +14 -142
- package/dist/components/blocks/PricingBlock.d.ts +1 -1
- package/dist/components/blocks/PricingBlock.js +13 -112
- package/dist/components/blocks/ProcessFlowBlock.js +10 -77
- package/dist/components/blocks/ResetPasswordBlock.js +11 -125
- package/dist/components/blocks/SettingsLayout.js +42 -42
- package/dist/components/blocks/SignUpBlock.d.ts +1 -1
- package/dist/components/blocks/SignUpBlock.js +3 -3
- package/dist/components/blocks/SocialProofBlock.d.ts +7 -11
- package/dist/components/blocks/SocialProofBlock.js +10 -108
- package/dist/components/blocks/StatsBlock.d.ts +1 -1
- package/dist/components/blocks/StatsBlock.js +40 -40
- package/dist/components/blocks/StatsMarketingBlock.d.ts +1 -1
- package/dist/components/blocks/StatsMarketingBlock.js +7 -38
- package/dist/components/blocks/TeamBlock.d.ts +1 -1
- package/dist/components/blocks/TeamBlock.js +4 -52
- package/dist/components/blocks/TestimonialsBlock.d.ts +1 -1
- package/dist/components/blocks/TestimonialsBlock.js +5 -133
- package/dist/components/blocks/TwoFactorChallengeBlock.js +46 -131
- package/dist/components/blocks/TwoFactorSetupBlock.js +53 -220
- package/dist/components/blocks/UsageDonutBlock.d.ts +1 -1
- package/dist/components/blocks/UsageDonutBlock.js +2 -2
- package/dist/components/blocks/VoiceAgentCard.d.ts +3 -1
- package/dist/components/blocks/VoiceAgentCard.js +7 -76
- package/dist/components/blocks/WizardBlock.js +39 -39
- package/dist/components/blocks/user/InviteUserModal.js +38 -38
- package/dist/components/logos/index.js +2 -2
- package/dist/components/page-kits/AccountLockedPageKit.d.ts +10 -0
- package/dist/components/page-kits/AccountLockedPageKit.js +48 -0
- package/dist/components/page-kits/AgentsChatPageKit.d.ts +46 -0
- package/dist/components/page-kits/AgentsChatPageKit.js +290 -0
- package/dist/components/page-kits/AnalyticsPageKit.d.ts +49 -0
- package/dist/components/page-kits/AnalyticsPageKit.js +277 -0
- package/dist/components/page-kits/BlogContentPageKit.d.ts +64 -0
- package/dist/components/page-kits/BlogContentPageKit.js +296 -0
- package/dist/components/page-kits/CheckoutPageKit.d.ts +36 -0
- package/dist/components/page-kits/CheckoutPageKit.js +209 -0
- package/dist/components/page-kits/CompanySuitePageKit.d.ts +25 -0
- package/dist/components/page-kits/CompanySuitePageKit.js +240 -0
- package/dist/components/page-kits/CrudFormPageKit.d.ts +54 -0
- package/dist/components/page-kits/CrudFormPageKit.js +138 -0
- package/dist/components/page-kits/CrudListDetailPageKit.d.ts +70 -0
- package/dist/components/page-kits/CrudListDetailPageKit.js +138 -0
- package/dist/components/page-kits/DashboardPageKit.d.ts +39 -0
- package/dist/components/page-kits/DashboardPageKit.js +284 -0
- package/dist/components/page-kits/ErrorPageKit.d.ts +22 -0
- package/dist/components/page-kits/ErrorPageKit.js +55 -0
- package/dist/components/page-kits/KanbanBoardPageKit.d.ts +31 -0
- package/dist/components/page-kits/KanbanBoardPageKit.js +305 -0
- package/dist/components/page-kits/LandingPageKit.d.ts +29 -0
- package/dist/components/page-kits/LandingPageKit.js +222 -0
- package/dist/components/page-kits/LoginPageKit.d.ts +16 -0
- package/dist/components/page-kits/LoginPageKit.js +43 -0
- package/dist/components/page-kits/MarketingShellPageKit.d.ts +21 -0
- package/dist/components/page-kits/MarketingShellPageKit.js +131 -0
- package/dist/components/page-kits/NavigationShellPageKit.d.ts +41 -0
- package/dist/components/page-kits/NavigationShellPageKit.js +132 -0
- package/dist/components/page-kits/OnboardingPageKit.d.ts +26 -0
- package/dist/components/page-kits/OnboardingPageKit.js +248 -0
- package/dist/components/page-kits/PricingPageKit.d.ts +41 -0
- package/dist/components/page-kits/PricingPageKit.js +279 -0
- package/dist/components/page-kits/ProfileSettingsPageKit.d.ts +50 -0
- package/dist/components/page-kits/ProfileSettingsPageKit.js +171 -0
- package/dist/components/page-kits/RecoveryPageKit.d.ts +17 -0
- package/dist/components/page-kits/RecoveryPageKit.js +58 -0
- package/dist/components/page-kits/ResetPageKit.d.ts +14 -0
- package/dist/components/page-kits/ResetPageKit.js +52 -0
- package/dist/components/page-kits/ServiceSuitePageKit.d.ts +25 -0
- package/dist/components/page-kits/ServiceSuitePageKit.js +321 -0
- package/dist/components/page-kits/SettingsPageKit.d.ts +27 -0
- package/dist/components/page-kits/SettingsPageKit.js +11 -0
- package/dist/components/page-kits/SignupPageKit.d.ts +15 -0
- package/dist/components/page-kits/SignupPageKit.js +41 -0
- package/dist/components/page-kits/SuccessPageKit.d.ts +15 -0
- package/dist/components/page-kits/SuccessPageKit.js +146 -0
- package/dist/components/page-kits/TeamSettingsPageKit.d.ts +50 -0
- package/dist/components/page-kits/TeamSettingsPageKit.js +297 -0
- package/dist/components/page-kits/TwoFactorPageKit.d.ts +16 -0
- package/dist/components/page-kits/TwoFactorPageKit.js +156 -0
- package/dist/components/page-kits/VerifyEmailPageKit.d.ts +15 -0
- package/dist/components/page-kits/VerifyEmailPageKit.js +146 -0
- package/dist/components/page-kits/VoiceAgentsPageKit.d.ts +35 -0
- package/dist/components/page-kits/VoiceAgentsPageKit.js +250 -0
- package/dist/components/ui/Accordion.js +38 -38
- package/dist/components/ui/AgentMessageBubble.d.ts +20 -4
- package/dist/components/ui/AgentMessageBubble.js +39 -39
- package/dist/components/ui/AgentStatus.d.ts +1 -1
- package/dist/components/ui/AgentStatus.js +5 -10
- package/dist/components/ui/AgentTerminal.d.ts +4 -1
- package/dist/components/ui/AgentTerminal.js +3 -1
- package/dist/components/ui/AgentTimeline.d.ts +2 -2
- package/dist/components/ui/AgentTimeline.js +15 -6
- package/dist/components/ui/AnimatedDialog.js +38 -38
- package/dist/components/ui/AnimatedSheet.js +38 -38
- package/dist/components/ui/ApprovalCard.js +1 -1
- package/dist/components/ui/AudioWaveform.js +2 -76
- package/dist/components/ui/AvatarUpload.js +1 -1
- package/dist/components/ui/Breadcrumb.js +41 -143
- package/dist/components/ui/Calendar.js +38 -38
- package/dist/components/ui/Carousel.js +38 -38
- package/dist/components/ui/ChartCard.js +5 -38
- package/dist/components/ui/ChatActions.d.ts +14 -0
- package/dist/components/ui/ChatActions.js +52 -0
- package/dist/components/ui/ChatBranch.d.ts +18 -0
- package/dist/components/ui/ChatBranch.js +84 -0
- package/dist/components/ui/ChatChainOfThought.d.ts +25 -0
- package/dist/components/ui/ChatChainOfThought.js +99 -0
- package/dist/components/ui/ChatConfirmation.d.ts +37 -0
- package/dist/components/ui/ChatConfirmation.js +115 -0
- package/dist/components/ui/ChatGreeting.d.ts +18 -0
- package/dist/components/ui/ChatGreeting.js +80 -0
- package/dist/components/ui/ChatMessage.d.ts +40 -0
- package/dist/components/ui/ChatMessage.js +96 -0
- package/dist/components/ui/ChatPlan.d.ts +29 -0
- package/dist/components/ui/ChatPlan.js +86 -0
- package/dist/components/ui/ChatPromptInput.d.ts +32 -0
- package/dist/components/ui/ChatPromptInput.js +193 -0
- package/dist/components/ui/ChatPromptInputAttachments.d.ts +9 -0
- package/dist/components/ui/ChatPromptInputAttachments.js +145 -0
- package/dist/components/ui/ChatQueue.d.ts +32 -0
- package/dist/components/ui/ChatQueue.js +93 -0
- package/dist/components/ui/ChatReasoning.d.ts +20 -0
- package/dist/components/ui/ChatReasoning.js +91 -0
- package/dist/components/ui/ChatResponse.d.ts +14 -0
- package/dist/components/ui/ChatResponse.js +25 -0
- package/dist/components/ui/ChatShimmer.d.ts +23 -0
- package/dist/components/ui/ChatShimmer.js +6 -0
- package/dist/components/ui/ChatSources.d.ts +30 -0
- package/dist/components/ui/ChatSources.js +113 -0
- package/dist/components/ui/ChatSuggestion.d.ts +13 -0
- package/dist/components/ui/ChatSuggestion.js +41 -0
- package/dist/components/ui/ChatThinkingMessage.d.ts +12 -0
- package/dist/components/ui/ChatThinkingMessage.js +55 -0
- package/dist/components/ui/ChatToolCall.d.ts +41 -0
- package/dist/components/ui/ChatToolCall.js +192 -0
- package/dist/components/ui/CheckStatus.d.ts +1 -1
- package/dist/components/ui/Checkbox.js +38 -38
- package/dist/components/ui/CheckoutForm.js +38 -38
- package/dist/components/ui/CheckoutFormDemo.js +43 -44
- package/dist/components/ui/Combobox.js +38 -38
- package/dist/components/ui/Command.js +38 -38
- package/dist/components/ui/ContextMenu.js +38 -38
- package/dist/components/ui/Conversation.d.ts +21 -0
- package/dist/components/ui/Conversation.js +196 -0
- package/dist/components/ui/ConversationThread.d.ts +8 -2
- package/dist/components/ui/ConversationThread.js +34 -16
- package/dist/components/ui/DataFreshness.js +2 -73
- package/dist/components/ui/DataTable.js +40 -40
- package/dist/components/ui/DatePicker.js +38 -38
- package/dist/components/ui/DateRangePicker.js +38 -38
- package/dist/components/ui/Dialog.js +38 -38
- package/dist/components/ui/DropdownMenu.js +39 -39
- package/dist/components/ui/FileUpload.js +38 -38
- package/dist/components/ui/InputOTP.js +38 -38
- package/dist/components/ui/KanbanBoard.js +2 -2
- package/dist/components/ui/LanguageSwitcher.js +38 -38
- package/dist/components/ui/Menubar.js +38 -38
- package/dist/components/ui/MouseEffect.js +1 -1
- package/dist/components/ui/NativeSelect.js +2 -18
- package/dist/components/ui/NavigationMenu.js +38 -38
- package/dist/components/ui/NotificationCenter.js +38 -38
- package/dist/components/ui/Pagination.js +42 -153
- package/dist/components/ui/RadioGroup.js +38 -38
- package/dist/components/ui/Resizable.js +38 -38
- package/dist/components/ui/SearchCommand.js +38 -38
- package/dist/components/ui/Select.js +38 -38
- package/dist/components/ui/SettingsModal.js +38 -38
- package/dist/components/ui/ShaderBackground.js +2 -2
- package/dist/components/ui/Sheet.js +38 -38
- package/dist/components/ui/Sidebar.js +41 -41
- package/dist/components/ui/StyleToggle.js +1 -1
- package/dist/components/ui/TagInput.js +38 -38
- package/dist/components/ui/ThemeToggle.js +39 -39
- package/dist/components/ui/ThinkingIndicator.d.ts +3 -1
- package/dist/components/ui/ThinkingIndicator.js +2 -1
- package/dist/components/ui/Toast.js +38 -38
- package/dist/components/ui/Toaster.js +38 -38
- package/dist/components/ui/ToolCallCard.d.ts +1 -1
- package/dist/components/ui/ToolCallCard.js +5 -1
- package/dist/components/ui/TreeView.js +38 -38
- package/dist/components/ui/charts/index.js +1 -1
- package/dist/components/ui/icons/index.js +38 -38
- package/dist/components/ui/text-effects/index.js +2 -2
- package/dist/hooks/use-scroll-to-bottom.d.ts +13 -0
- package/dist/hooks/use-scroll-to-bottom.js +2 -0
- package/dist/hooks/use-shader-preset.js +2 -2
- package/dist/index.js +43 -43
- package/dist/internal/local-image-assets.d.ts +12 -0
- package/dist/lib/shader-presets.js +1 -1
- package/dist/lib/tokens.config.d.ts +19 -0
- package/dist/messages/en.js +1 -1
- package/dist/messages/it.js +1 -1
- package/dist/test/PublicSeedTestProvider.js +2 -2
- package/dist/test/simulate-ime-composition.d.ts +54 -0
- package/dist/test/simulate-ime-composition.js +55 -0
- package/eslint-rules/nadicode/config.js +2 -0
- package/eslint-rules/nadicode/index.js +4 -0
- package/eslint-rules/nadicode/rules/no-deprecated-ds-import.js +77 -0
- package/eslint-rules/nadicode/rules/no-forbidden-page-kit-import.js +99 -0
- package/eslint-rules/nadicode/rules/no-unregistered-glass.js +2 -0
- package/package.json +895 -686
- package/scripts/ds-check.mjs +102 -73
- package/src/lib/tokens.config.js +63 -41
- package/dist/chunk-MLUSJTS2.js +0 -107
- package/dist/{chunk-5DKCZWC6.js → chunk-CQEUNASC.js} +1 -1
- package/dist/{chunk-4HRVRW2X.js → chunk-J2DCQDXO.js} +2 -2
- package/dist/{chunk-6MFAZU4B.js → chunk-RGE5OQMZ.js} +1 -1
- package/dist/{chunk-PJNHVPHF.js → chunk-TYP2MR3Q.js} +1 -1
|
@@ -20,23 +20,32 @@ Consumer scaffold contract: brand customization stays palette-only unless the ta
|
|
|
20
20
|
|
|
21
21
|
## Component Discovery
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
Start with the shipped machine-readable consumer contract:
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
cat node_modules/@vadimcomanescu/nadicode-design-system/contracts/consumer-contract.json
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Then follow `entrypoints.machineReadable.catalog` to the generated catalog for exact component names, variant values, props, and tiers:
|
|
24
30
|
|
|
25
31
|
```
|
|
26
32
|
cat node_modules/@vadimcomanescu/nadicode-design-system/dist/catalog.json
|
|
27
33
|
```
|
|
28
34
|
|
|
29
|
-
The
|
|
35
|
+
The consumer contract is the machine entrypoint. The catalog is the component metadata surface. Both are auto-generated from source. Do not guess.
|
|
36
|
+
|
|
37
|
+
The derived references under `references/components.md` and `references/blocks.md` are generated from the catalog. Any repo `Path` column there is a maintainer source path, not a consumer import path. Consumer code must keep importing from `@vadimcomanescu/nadicode-design-system/*` subpaths.
|
|
30
38
|
|
|
31
39
|
## Read Order
|
|
32
40
|
|
|
33
41
|
1. **This file** -- router, quick references, forbidden patterns
|
|
34
42
|
2. **`contract.md`** -- binary rules, package integration contract
|
|
35
|
-
3. **
|
|
36
|
-
4.
|
|
37
|
-
5. **`
|
|
38
|
-
6. **`
|
|
39
|
-
7. **`references
|
|
43
|
+
3. **consumer-contract.json** -- machine-readable package, ownership, and contract entrypoint map
|
|
44
|
+
4. **catalog.json** (in dist/) -- machine-readable component metadata (variants, props, tiers)
|
|
45
|
+
5. **`intent-map.md`** -- intent decision tree + recipe index
|
|
46
|
+
6. **`recipes/<page-type>.md`** -- matching recipe for your page
|
|
47
|
+
7. **`references/`** -- deep dives as needed
|
|
48
|
+
8. **`references/brand-override.md`** -- palette-only brand customization guide for seeded apps
|
|
40
49
|
|
|
41
50
|
---
|
|
42
51
|
|
|
@@ -108,7 +117,7 @@ Full intent-to-recipe mapping with shell selection: see `intent-map.md`.
|
|
|
108
117
|
|
|
109
118
|
**Borders:** `border-border`, `border-border-hover`, `border-border-subtle`, `border-destructive`
|
|
110
119
|
|
|
111
|
-
**Interactive:** `bg-primary
|
|
120
|
+
**Interactive:** `bg-primary`, `bg-secondary`, `bg-accent`, `ring-focus-ring` (default focus), `ring-accent` (selection/emphasis)
|
|
112
121
|
|
|
113
122
|
**Charts:** `chart-1` (teal), `chart-2` (blue), `chart-3` (amber), `chart-4` (green), `chart-5` (violet), `chart-6` (red)
|
|
114
123
|
|
|
@@ -9,7 +9,8 @@ Binary rules for consumer apps using the Seed Design System. Every rule is non-n
|
|
|
9
9
|
|
|
10
10
|
## Component Catalog
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
Start with `consumer-contract.json` (shipped in the package under `contracts/`) for the machine-readable entrypoint map and ownership rules. Then read catalog.json (shipped in the package under dist/) for the authoritative list of components, variant names, props, and tiers. Verify component names and variant values against the catalog. Do not guess variant names or prop values.
|
|
13
|
+
Registry digest: `sha256:8d4c41b59ad4154a0e8af35ca1c79510dc42379c2fb5100b0fa7fcd22b12fea3`
|
|
13
14
|
|
|
14
15
|
## Import Rules
|
|
15
16
|
|
|
@@ -37,9 +38,9 @@ Read catalog.json (shipped in the package under dist/) for the authoritative lis
|
|
|
37
38
|
10. No arbitrary text sizes (`text-[10px]`, `text-[11px]`). Use `Heading`, `Typography`, or the standard Tailwind scale (`text-xs`, `text-sm`).
|
|
38
39
|
11. No ad-hoc `chat-*` classes. Conversation UIs must compose existing Seed primitives and motion tokens.
|
|
39
40
|
12. Admin chat features must include all three agentic layers:
|
|
40
|
-
- Conversation: `
|
|
41
|
-
- Tooling: `
|
|
42
|
-
- Traceability: `SourceCitation`, `AgentTimeline`, `WorkflowGraph`, or `HandoffIndicator`
|
|
41
|
+
- Conversation: `Conversation`, `ChatMessage`, `ChatResponse`, `ChatGreeting`, `ChatThinkingMessage`, `ChatShimmer`, `ConversationThread`, or `AgentMessageBubble`
|
|
42
|
+
- Tooling: `ChatToolCall`, `ChatPromptInput`, `ChatActions`, `ChatSuggestion`, `ToolCallCard`, or `ThinkingIndicator`
|
|
43
|
+
- Traceability: `ChatReasoning`, `ChatChainOfThought`, `ChatSources`, `ChatPlan`, `ChatQueue`, `ChatConfirmation`, `ChatBranch`, `SourceCitation`, `AgentTimeline`, `WorkflowGraph`, or `HandoffIndicator`
|
|
43
44
|
13. Admin sidebar navigation must include IA grouping with `SidebarGroupLabel`. No flat unlabeled menus.
|
|
44
45
|
14. Admin analytics must use Seed chart primitives (`AreaChart`, `BarChart`, `LineChart`, `PieChart`, `ChartContainer`). No pseudo-charts from raw `<div>` bars.
|
|
45
46
|
## Page Composition
|
|
@@ -160,10 +160,10 @@ For each intent: **Required** components must be present, **Allowed** may be use
|
|
|
160
160
|
|
|
161
161
|
| Classification | Values |
|
|
162
162
|
|----------------|--------|
|
|
163
|
-
| Routes | `/agents`, `/voice-agents` |
|
|
163
|
+
| Routes | `/agents`, `/voice-agents`, `/chat` |
|
|
164
164
|
| Shell | app-shell |
|
|
165
|
-
| Required | AgentTeamPanel, AgentStatus, AgentMessageBubble, ThinkingIndicator, ToolCallCard, ApprovalCard, CodeDiffViewer, ArtifactCard, AgentTerminal, ContextMeter, Tabs,
|
|
166
|
-
| Allowed | ConversationThread, AgentTimeline, AgentMetricsCard, WorkflowGraph, HandoffIndicator, MemoryInspector, SourceCitation, StreamingText, Badge, Avatar, AgentAvatar, Resizable |
|
|
165
|
+
| Required | Conversation, ChatMessage, ChatResponse, ChatPromptInput, ChatToolCall, ChatActions, ChatGreeting, ChatThinkingMessage, ChatShimmer, ChatReasoning, ChatConfirmation, ChatSuggestion, ChatSources, ChatBranch, ChatChainOfThought, ChatPlan, ChatQueue, ChatPromptInputAttachments, AgentTeamPanel, AgentStatus, AgentMessageBubble, ThinkingIndicator, ToolCallCard, ApprovalCard, CodeDiffViewer, ArtifactCard, AgentTerminal, ContextMeter, Tabs, Button, ScrollArea, Sheet |
|
|
166
|
+
| Allowed | ConversationThread, AgentTimeline, AgentMetricsCard, WorkflowGraph, HandoffIndicator, MemoryInspector, SourceCitation, StreamingText, Badge, Avatar, AgentAvatar, Resizable, Textarea |
|
|
167
167
|
| Forbidden | HeroBlock, PricingBlock, FormWizard, DataTable, AuroraEffect, MeteorShower |
|
|
168
168
|
| Blocks | AgentConversationBlock, ChatLayout |
|
|
169
169
|
| States | empty, loading, running, thinking, blocked-approval, failed, complete |
|
|
@@ -182,28 +182,52 @@ REDUCED MOTION: Items appear instantly, no slide/scale
|
|
|
182
182
|
|
|
183
183
|
## Required Components
|
|
184
184
|
|
|
185
|
+
### Chat Primitives (preferred)
|
|
186
|
+
|
|
187
|
+
| Component | Import Path | Purpose |
|
|
188
|
+
|-----------|-------------|---------|
|
|
189
|
+
| `Conversation` | `.../conversation` | Scroll-aware container with auto-scroll |
|
|
190
|
+
| `ChatMessage` | `.../chat-message` | Core message with avatar, content, actions |
|
|
191
|
+
| `ChatResponse` | `.../chat-response` | Streaming markdown response renderer |
|
|
192
|
+
| `ChatPromptInput` | `.../chat-prompt-input` | Chat text input with keyboard handling |
|
|
193
|
+
| `ChatToolCall` | `.../chat-tool-call` | Tool call lifecycle wrapper |
|
|
194
|
+
| `ChatActions` | `.../chat-actions` | Copy, retry, edit action buttons |
|
|
195
|
+
| `ChatGreeting` | `.../chat-greeting` | Welcome greeting for sessions |
|
|
196
|
+
| `ChatThinkingMessage` | `.../chat-thinking-message` | Animated thinking state |
|
|
197
|
+
| `ChatShimmer` | `.../chat-shimmer` | Loading shimmer placeholder |
|
|
198
|
+
| `ChatReasoning` | `.../chat-reasoning` | AI reasoning with auto-close |
|
|
199
|
+
| `ChatConfirmation` | `.../chat-confirmation` | Action confirmation dialog |
|
|
200
|
+
| `ChatSuggestion` | `.../chat-suggestion` | Follow-up prompt chips |
|
|
201
|
+
| `ChatSources` | `.../chat-sources` | Source citations panel |
|
|
202
|
+
| `ChatBranch` | `.../chat-branch` | Conversation fork navigation |
|
|
203
|
+
| `ChatChainOfThought` | `.../chat-chain-of-thought` | Step-by-step reasoning |
|
|
204
|
+
| `ChatPlan` | `.../chat-plan` | Collapsible plan card |
|
|
205
|
+
| `ChatQueue` | `.../chat-queue` | Task queue with sections |
|
|
206
|
+
| `ChatPromptInputAttachments` | `.../chat-prompt-input-attachments` | File attachment support |
|
|
207
|
+
|
|
208
|
+
### Agent-Level Components
|
|
209
|
+
|
|
185
210
|
| Component | Import Path | Purpose |
|
|
186
211
|
|-----------|-------------|---------|
|
|
187
|
-
| `AgentTeamPanel` |
|
|
188
|
-
| `AgentStatus` |
|
|
189
|
-
| `AgentTimeline` |
|
|
190
|
-
| `AgentMetricsCard` |
|
|
191
|
-
| `ConversationThread` |
|
|
192
|
-
| `AgentMessageBubble` |
|
|
193
|
-
| `ThinkingIndicator` |
|
|
194
|
-
| `ToolCallCard` |
|
|
195
|
-
| `ApprovalCard` |
|
|
196
|
-
| `CodeDiffViewer` |
|
|
197
|
-
| `ArtifactCard` |
|
|
198
|
-
| `AgentTerminal` |
|
|
199
|
-
| `WorkflowGraph` |
|
|
200
|
-
| `ContextMeter` |
|
|
201
|
-
| `SourceCitation` |
|
|
202
|
-
| `Tabs` |
|
|
203
|
-
| `
|
|
204
|
-
| `
|
|
205
|
-
| `
|
|
206
|
-
| `Sheet` | `@vadimcomanescu/nadicode-design-system/sheet` | Mobile panel drawers |
|
|
212
|
+
| `AgentTeamPanel` | `.../agent-team-panel` | Team member list |
|
|
213
|
+
| `AgentStatus` | `.../agent-status` | Connection status |
|
|
214
|
+
| `AgentTimeline` | `.../agent-timeline` | Action timeline |
|
|
215
|
+
| `AgentMetricsCard` | `.../agent-metrics-card` | Run metrics |
|
|
216
|
+
| `ConversationThread` | `.../conversation-thread` | Legacy message rendering |
|
|
217
|
+
| `AgentMessageBubble` | `.../agent-message-bubble` | Individual messages |
|
|
218
|
+
| `ThinkingIndicator` | `.../thinking-indicator` | Processing state |
|
|
219
|
+
| `ToolCallCard` | `.../tool-call-card` | Tool invocations |
|
|
220
|
+
| `ApprovalCard` | `.../approval-card` | Human approval flow |
|
|
221
|
+
| `CodeDiffViewer` | `.../code-diff-viewer` | Code changes |
|
|
222
|
+
| `ArtifactCard` | `.../artifact-card` | Generated outputs |
|
|
223
|
+
| `AgentTerminal` | `.../agent-terminal` | Command output |
|
|
224
|
+
| `WorkflowGraph` | `.../workflow-graph` | DAG execution flow |
|
|
225
|
+
| `ContextMeter` | `.../context-meter` | Context window usage |
|
|
226
|
+
| `SourceCitation` | `.../source-citation` | Referenced sources |
|
|
227
|
+
| `Tabs` | `.../tabs` | Work panel tabs |
|
|
228
|
+
| `Button` | `.../button` | Send, panel triggers |
|
|
229
|
+
| `ScrollArea` | `.../scroll-area` | Scrollable regions |
|
|
230
|
+
| `Sheet` | `.../sheet` | Mobile panel drawers |
|
|
207
231
|
|
|
208
232
|
### Allowed (optional)
|
|
209
233
|
|
|
@@ -37,32 +37,26 @@ Shared marketing layout providing scroll-aware header, main content area, and fo
|
|
|
37
37
|
```tsx
|
|
38
38
|
import { HeaderBlock } from '@vadimcomanescu/nadicode-design-system/header-block'
|
|
39
39
|
import { FooterBlock } from '@vadimcomanescu/nadicode-design-system/footer-block'
|
|
40
|
-
import { Logo } from '@vadimcomanescu/nadicode-design-system/logo'
|
|
41
|
-
import { Button } from '@vadimcomanescu/nadicode-design-system/button'
|
|
42
|
-
import { ThemeToggle } from '@vadimcomanescu/nadicode-design-system/theme-toggle'
|
|
43
40
|
|
|
44
41
|
const navLinks = [
|
|
45
|
-
{
|
|
46
|
-
{
|
|
47
|
-
{
|
|
48
|
-
{
|
|
42
|
+
{ name: 'Services', href: '/services' },
|
|
43
|
+
{ name: 'About', href: '/about' },
|
|
44
|
+
{ name: 'Pricing', href: '/pricing' },
|
|
45
|
+
{ name: 'Contact', href: '/contact' },
|
|
49
46
|
]
|
|
50
47
|
|
|
51
48
|
export default function MarketingLayout({ children }: { children: React.ReactNode }) {
|
|
52
49
|
return (
|
|
53
50
|
<div className="flex min-h-screen flex-col bg-background">
|
|
54
51
|
<HeaderBlock
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
<Button>Get Started</Button>
|
|
61
|
-
</div>
|
|
62
|
-
}
|
|
52
|
+
menuItems={navLinks}
|
|
53
|
+
loginLabel="Contact Sales"
|
|
54
|
+
signUpLabel="Get Started"
|
|
55
|
+
loginHref="/contact"
|
|
56
|
+
signUpHref="/signup"
|
|
63
57
|
/>
|
|
64
58
|
<main className="flex-1">{children}</main>
|
|
65
|
-
<FooterBlock
|
|
59
|
+
<FooterBlock />
|
|
66
60
|
</div>
|
|
67
61
|
)
|
|
68
62
|
}
|
|
@@ -94,9 +88,6 @@ REDUCED MOTION: Header visible immediately, no blur transition
|
|
|
94
88
|
|-----------|-------------|---------|
|
|
95
89
|
| `HeaderBlock` | `@vadimcomanescu/nadicode-design-system/header-block` | Site navigation with glass blur |
|
|
96
90
|
| `FooterBlock` | `@vadimcomanescu/nadicode-design-system/footer-block` | Site footer |
|
|
97
|
-
| `Logo` | `@vadimcomanescu/nadicode-design-system/logo` | Brand logo |
|
|
98
|
-
| `Button` | `@vadimcomanescu/nadicode-design-system/button` | Header CTA |
|
|
99
|
-
| `ThemeToggle` | `@vadimcomanescu/nadicode-design-system/theme-toggle` | Light/dark mode switch |
|
|
100
91
|
|
|
101
92
|
### Allowed (optional)
|
|
102
93
|
|
|
@@ -76,13 +76,13 @@ import {
|
|
|
76
76
|
SidebarMenuSubButton,
|
|
77
77
|
} from '@vadimcomanescu/nadicode-design-system/sidebar'
|
|
78
78
|
import { NavUser } from '@vadimcomanescu/nadicode-design-system/nav-user'
|
|
79
|
-
import { AppBreadcrumb } from '
|
|
80
|
-
import { AppSearch } from '
|
|
81
|
-
import { WorkspaceSwitcher } from '
|
|
79
|
+
import { AppBreadcrumb } from '@/components/blocks/AppBreadcrumb'
|
|
80
|
+
import { AppSearch } from '@/components/blocks/AppSearch'
|
|
81
|
+
import { WorkspaceSwitcher } from '@/components/blocks/WorkspaceSwitcher'
|
|
82
82
|
import { ThemeToggle } from '@vadimcomanescu/nadicode-design-system/theme-toggle'
|
|
83
83
|
import { Button } from '@vadimcomanescu/nadicode-design-system/button'
|
|
84
84
|
import { BellIcon } from '@vadimcomanescu/nadicode-design-system/icons/bell'
|
|
85
|
-
import {
|
|
85
|
+
import { LayoutDashboardIcon } from '@vadimcomanescu/nadicode-design-system/icons/layout-dashboard'
|
|
86
86
|
import { ChartBarIcon } from '@vadimcomanescu/nadicode-design-system/icons/chart-bar'
|
|
87
87
|
import { BotIcon } from '@vadimcomanescu/nadicode-design-system/icons/bot'
|
|
88
88
|
import { UsersIcon } from '@vadimcomanescu/nadicode-design-system/icons/users'
|
|
@@ -92,7 +92,7 @@ const NAV_ITEMS = [
|
|
|
92
92
|
{
|
|
93
93
|
group: 'Main',
|
|
94
94
|
items: [
|
|
95
|
-
{ label: 'Dashboard', href: '/dashboard', icon:
|
|
95
|
+
{ label: 'Dashboard', href: '/dashboard', icon: LayoutDashboardIcon },
|
|
96
96
|
{ label: 'Analytics', href: '/analytics', icon: ChartBarIcon },
|
|
97
97
|
{
|
|
98
98
|
label: 'Agents',
|
|
@@ -231,7 +231,7 @@ REDUCED MOTION: All items visible immediately, opacity 0->1 in 10ms
|
|
|
231
231
|
| `Badge` | `@vadimcomanescu/nadicode-design-system/badge` | Category tag |
|
|
232
232
|
| `Typography` | `@vadimcomanescu/nadicode-design-system/typography` | Headings, body text |
|
|
233
233
|
| `ScrollFadeIn` | `@vadimcomanescu/nadicode-design-system/scroll-fade-in` | Below-fold animations |
|
|
234
|
-
| `
|
|
234
|
+
| `FeatureGridBlock` | `@vadimcomanescu/nadicode-design-system/feature-grid-block` | Product/service showcase |
|
|
235
235
|
|
|
236
236
|
### Allowed (optional)
|
|
237
237
|
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
# Blocks Catalog
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Derived from `dist/catalog.json`.
|
|
4
|
+
|
|
5
|
+
Consumer code must import from `@vadimcomanescu/nadicode-design-system/*` block subpaths. Repo source paths are maintainer references only.
|
|
6
|
+
|
|
4
7
|
Blocks are pre-composed page sections built from Seed UI primitives.
|
|
5
8
|
Run `npm run docs:inventory` for the current filesystem-backed list.
|
|
6
9
|
|
|
@@ -23,29 +26,29 @@ Run `npm run docs:inventory` for the current filesystem-backed list.
|
|
|
23
26
|
| Block | Purpose | Key Props |
|
|
24
27
|
| --- | --- | --- |
|
|
25
28
|
| AgentProfileGridBlock | Agent/worker profile card grid ("Meet your AI team") | `title`, `description`, `agents`, `columns` |
|
|
26
|
-
| CallToActionBlock | Call-to-action section |
|
|
29
|
+
| CallToActionBlock | Call-to-action section | `title`, `description`, `primaryAction`, `secondaryAction` |
|
|
27
30
|
| ComparisonBlock | Side-by-side feature comparison | `plans`, `title`, `description` |
|
|
28
31
|
| FAQBlock | FAQ accordion | `items`, `title`, `description` |
|
|
29
|
-
| FeatureBlock | Single feature showcase |
|
|
30
|
-
| FeatureGridBlock | Multi-feature grid layout |
|
|
31
|
-
| HeroBlock | Full hero with gradient text |
|
|
32
|
-
| HeroSectionBlock | Alternate hero layout |
|
|
32
|
+
| FeatureBlock | Single feature showcase | `variant`, `badge`, `title`, `description`, `features` |
|
|
33
|
+
| FeatureGridBlock | Multi-feature grid layout | `title`, `description`, `features` |
|
|
34
|
+
| HeroBlock | Full hero with gradient text | `variant`, `headline`, `subheadline`, `primaryAction`, `secondaryAction`, `announcement` |
|
|
35
|
+
| HeroSectionBlock | Alternate hero layout | `headline`, `flipWords`, `primaryAction`, `secondaryAction`, `logos` |
|
|
33
36
|
| LogoCloud | Partner/client logo grid | `title`, `logos` |
|
|
34
|
-
| PricingBlock | Pricing cards comparison |
|
|
37
|
+
| PricingBlock | Pricing cards comparison | `title`, `description`, `plans`, `showBillingToggle` |
|
|
35
38
|
| ProcessFlowBlock | "How it works" numbered step sequence | `title`, `description`, `badge`, `steps` |
|
|
36
|
-
| SocialProofBlock | Social proof metrics/logos |
|
|
39
|
+
| SocialProofBlock | Social proof metrics/logos | `variant`, `logos`, `title`, `testimonials` |
|
|
37
40
|
| SolutionShowcaseBlock | Problem -> Solution -> Output narrative with color-coded arc | `title`, `description`, `badge`, `sections` |
|
|
38
|
-
| StatsMarketingBlock | Marketing statistics display |
|
|
39
|
-
| TestimonialsBlock | Customer testimonial carousel/grid |
|
|
41
|
+
| StatsMarketingBlock | Marketing statistics display | `title`, `description`, `stats` |
|
|
42
|
+
| TestimonialsBlock | Customer testimonial carousel/grid | `title`, `description`, `testimonials` |
|
|
40
43
|
|
|
41
44
|
## Navigation
|
|
42
45
|
|
|
43
46
|
| Block | Purpose | Key Props |
|
|
44
47
|
| --- | --- | --- |
|
|
45
48
|
| BannerBlock | Top-of-page promotional banner | `variant`, `dismissible`, `onDismiss` |
|
|
46
|
-
| FooterBlock | Site footer with link columns |
|
|
47
|
-
| HeaderBlock | Site header with nav links |
|
|
48
|
-
| NavUser | Sidebar user menu with dropdown | `user`, `
|
|
49
|
+
| FooterBlock | Site footer with link columns | `brandDescription`, `newsletterPlaceholder`, `productLinks`, `companyLinks`, `legalLinks`, `socialIcons` |
|
|
50
|
+
| HeaderBlock | Site header with nav links | `menuItems`, `loginLabel`, `signUpLabel`, `loginHref`, `signUpHref` |
|
|
51
|
+
| NavUser | Sidebar user menu with dropdown | `user`, `items`, `footer` |
|
|
49
52
|
| NotFoundBlock | 404 page content | `title`, `description`, `backHref`, `backLabel` |
|
|
50
53
|
|
|
51
54
|
## Dashboard & Data
|
|
@@ -53,15 +56,15 @@ Run `npm run docs:inventory` for the current filesystem-backed list.
|
|
|
53
56
|
| Block | Purpose | Key Props |
|
|
54
57
|
| --- | --- | --- |
|
|
55
58
|
| ActivityFeedBlock | Activity/event timeline | `activities`, `title` |
|
|
56
|
-
| BarChartBlock | Pre-configured bar chart |
|
|
59
|
+
| BarChartBlock | Pre-configured bar chart | `data`, `config`, `title`, `description` |
|
|
57
60
|
| ChartBlock | Single chart container | `data`, `config`, `title`, `description` |
|
|
58
61
|
| ChartCollectionBlock | Multiple chart grid | - |
|
|
59
|
-
| CodeBlock | Syntax-highlighted code display |
|
|
62
|
+
| CodeBlock | Syntax-highlighted code display | `code`, `language`, `filename` |
|
|
60
63
|
| DataGridBlock | Data grid/table block | `data`, `columns`, `title`, `description` |
|
|
61
|
-
| HeatmapChartBlock | Heatmap visualization |
|
|
62
|
-
| InteractiveAreaChartBlock | Zoomable/interactive area chart |
|
|
63
|
-
| StatsBlock | KPI statistics cards |
|
|
64
|
-
| UsageDonutBlock | Usage/quota donut chart |
|
|
64
|
+
| HeatmapChartBlock | Heatmap visualization | `data`, `config`, `title`, `description` |
|
|
65
|
+
| InteractiveAreaChartBlock | Zoomable/interactive area chart | `data`, `config`, `title`, `description`, `timeRanges` |
|
|
66
|
+
| StatsBlock | KPI statistics cards | `stats` |
|
|
67
|
+
| UsageDonutBlock | Usage/quota donut chart | `data`, `config`, `title`, `description`, `centerLabel` |
|
|
65
68
|
|
|
66
69
|
## Application
|
|
67
70
|
|
|
@@ -72,7 +75,7 @@ Run `npm run docs:inventory` for the current filesystem-backed list.
|
|
|
72
75
|
| ContactBlock | Contact form | `onSubmit`, `title`, `description`, `namePlaceholder`, `emailPlaceholder`, `messagePlaceholder`, `successTitle`, `submitLabel` |
|
|
73
76
|
| CreateBlock | Entity creation form | `title`, `description`, `submitLabel`, `onSubmit` |
|
|
74
77
|
| DirectoryBlock | User/item directory with search | `navItems`, `projects` |
|
|
75
|
-
| IntegrationsBlock | Integration marketplace grid |
|
|
78
|
+
| IntegrationsBlock | Integration marketplace grid | `title`, `description`, `integrations` |
|
|
76
79
|
| KanbanDemoBlock | Kanban board demo with sample data | - |
|
|
77
80
|
| OnboardingBlock | Multi-step onboarding wizard | `steps`, `title`, `onToggle` |
|
|
78
81
|
| SettingsLayout | Settings page with nav sidebar | `links`, `title`, `subtitle`, `defaultActive`, `renderContent` |
|
|
@@ -82,7 +85,7 @@ Run `npm run docs:inventory` for the current filesystem-backed list.
|
|
|
82
85
|
|
|
83
86
|
| Block | Purpose | Key Props |
|
|
84
87
|
| --- | --- | --- |
|
|
85
|
-
| AudioVisualizerBlock | Audio visualization display |
|
|
88
|
+
| AudioVisualizerBlock | Audio visualization display | `bars`, `isPlaying` |
|
|
86
89
|
| GalleryBlock | Image/media gallery grid | `images`, `columns`, `title` |
|
|
87
90
|
| NewsletterBlock | Email newsletter signup | `onSubscribe`, `title`, `description` |
|
|
88
91
|
|
|
@@ -90,21 +93,22 @@ Run `npm run docs:inventory` for the current filesystem-backed list.
|
|
|
90
93
|
|
|
91
94
|
| Block | Purpose | Key Props |
|
|
92
95
|
| --- | --- | --- |
|
|
93
|
-
|
|
|
96
|
+
| InviteUserModal | Invite teammate modal with role selection | `onInvite`, `onInvited` |
|
|
97
|
+
| TeamBlock | Team members grid with roles/avatars | `title`, `sections` |
|
|
94
98
|
|
|
95
99
|
## AI/Voice
|
|
96
100
|
|
|
97
101
|
| Block | Purpose | Key Props |
|
|
98
102
|
| --- | --- | --- |
|
|
99
|
-
| VoiceAgentCard | AI voice agent interface card | `agent`, `state`, `selected`, `onSelect` |
|
|
103
|
+
| VoiceAgentCard | AI voice agent interface card | `agent`, `state`, `selected`, `onSelect`, `ariaLabel` |
|
|
100
104
|
|
|
101
105
|
## Agentic
|
|
102
106
|
|
|
103
107
|
| Block | Purpose | Key Props |
|
|
104
108
|
| --- | --- | --- |
|
|
105
|
-
| AgentConversationBlock | Agent conversation UI (messages, tool calls, thinking) |
|
|
106
|
-
| AgentRunOverviewBlock | Agent run summary with status, duration, and output |
|
|
107
|
-
| AgentWorkbenchBlock | Agent workbench layout with tool panels and conversation |
|
|
109
|
+
| AgentConversationBlock | Agent conversation UI (messages, tool calls, thinking) | `messages` |
|
|
110
|
+
| AgentRunOverviewBlock | Agent run summary with status, duration, and output | `title`, `description`, `teamTitle`, `metricsTitle`, `contextTitle`, `workflow`, `agents`, `metrics`, `context` |
|
|
111
|
+
| AgentWorkbenchBlock | Agent workbench layout with tool panels and conversation | `title`, `description`, `threadTitle`, `workTitle`, `defaultWorkTab`, `messages`, `artifacts`, `diffs`, `logs`, `composer` |
|
|
108
112
|
|
|
109
113
|
## Usage Pattern
|
|
110
114
|
|
|
@@ -72,7 +72,9 @@ Typical brand-facing variables include:
|
|
|
72
72
|
| Border colors | `--color-border`, `--color-border-hover`, `--color-border-subtle` |
|
|
73
73
|
| Action colors | `--color-primary`, `--color-primary-foreground`, `--color-secondary`, `--color-accent`, `--color-accent-foreground` |
|
|
74
74
|
| Status colors | `--color-success`, `--color-warning`, `--color-info`, `--color-destructive` |
|
|
75
|
-
| Optional data viz colors | `--chart-1` through `--chart-6
|
|
75
|
+
| Optional data viz colors | `--chart-1` through `--chart-6` |
|
|
76
|
+
|
|
77
|
+
Sidebar color tokens (`--sidebar-background`, `--sidebar-foreground`, etc.) derive automatically from semantic tokens via `var()` aliases. Override them in `seed-palette.css` only if the sidebar needs to differ from the main palette.
|
|
76
78
|
|
|
77
79
|
If a token is not a color token, treat it as upstream-managed unless the DS explicitly broadens the contract.
|
|
78
80
|
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# Component Inventory
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Derived from `dist/catalog.json`.
|
|
4
|
+
|
|
5
|
+
Consumer code must import from `@vadimcomanescu/nadicode-design-system/*` subpaths. The `Path` column below is the repo source location for maintainers.
|
|
4
6
|
|
|
5
7
|
Tiers: **1**=Core (3+ recipes), **2**=Domain (1-2 recipes), **3**=Decorative (marketing only), **4**=Deprecation candidate.
|
|
6
8
|
|
|
@@ -213,8 +215,26 @@ Components for AI agent interfaces, tool-use visualization, and multi-agent work
|
|
|
213
215
|
| AgentTimeline | `ui/AgentTimeline` | 2 | Timeline of agent actions |
|
|
214
216
|
| ApprovalCard | `ui/ApprovalCard` | 2 | Human-in-the-loop approval/reject |
|
|
215
217
|
| ArtifactCard | `ui/ArtifactCard` | 2 | Generated artifacts display |
|
|
218
|
+
| ChatActions | `ui/ChatActions` | 2 | Quick-action buttons for chat messages |
|
|
219
|
+
| ChatBranch | `ui/ChatBranch` | 2 | Conversation branching and fork navigation |
|
|
220
|
+
| ChatChainOfThought | `ui/ChatChainOfThought` | 2 | Step-by-step reasoning display |
|
|
221
|
+
| ChatConfirmation | `ui/ChatConfirmation` | 2 | Action confirmation dialog in chat |
|
|
222
|
+
| ChatGreeting | `ui/ChatGreeting` | 2 | Welcome greeting for chat sessions |
|
|
223
|
+
| ChatMessage | `ui/ChatMessage` | 2 | Core chat message with avatar, content, actions |
|
|
224
|
+
| ChatPlan | `ui/ChatPlan` | 2 | Collapsible plan card with streaming title |
|
|
225
|
+
| ChatPromptInput | `ui/ChatPromptInput` | 2 | Chat text input with keyboard handling |
|
|
226
|
+
| ChatPromptInputAttachments | `ui/ChatPromptInputAttachments` | 2 | File attachment support for chat input |
|
|
227
|
+
| ChatQueue | `ui/ChatQueue` | 2 | Task queue with collapsible sections |
|
|
228
|
+
| ChatReasoning | `ui/ChatReasoning` | 2 | AI reasoning display with auto-close |
|
|
229
|
+
| ChatResponse | `ui/ChatResponse` | 2 | Streaming markdown response renderer |
|
|
230
|
+
| ChatShimmer | `ui/ChatShimmer` | 2 | Loading shimmer placeholder for chat |
|
|
231
|
+
| ChatSources | `ui/ChatSources` | 2 | Source citations panel with inline citation |
|
|
232
|
+
| ChatSuggestion | `ui/ChatSuggestion` | 2 | Suggested follow-up prompt chips |
|
|
233
|
+
| ChatThinkingMessage | `ui/ChatThinkingMessage` | 2 | Animated thinking state message |
|
|
234
|
+
| ChatToolCall | `ui/ChatToolCall` | 2 | Tool call lifecycle wrapper with state management |
|
|
216
235
|
| CodeDiffViewer | `ui/CodeDiffViewer` | 2 | Side-by-side or unified diff view |
|
|
217
236
|
| ContextMeter | `ui/ContextMeter` | 2 | Context window usage visualization |
|
|
237
|
+
| Conversation | `ui/Conversation` | 2 | Scroll-aware conversation container with auto-scroll |
|
|
218
238
|
| DiffStat | `ui/DiffStat` | 2 | Diff statistics display (additions/deletions) |
|
|
219
239
|
| HandoffIndicator | `ui/HandoffIndicator` | 2 | Agent-to-agent task handoff |
|
|
220
240
|
| MemoryInspector | `ui/MemoryInspector` | 2 | Agent memory/state inspector |
|
|
@@ -260,7 +280,7 @@ All in `src/components/ui/stepper/`. Distinct from FormWizard.
|
|
|
260
280
|
| Tier | Count | Usage |
|
|
261
281
|
|------|-------|-------|
|
|
262
282
|
| 1 (Core) | ~76 | 3+ recipes, always available |
|
|
263
|
-
| 2 (Domain) | ~
|
|
283
|
+
| 2 (Domain) | ~61 | Agentic, charts, AI/voice, checkout |
|
|
264
284
|
| 3 (Decorative) | ~24 | Marketing/showcase only |
|
|
265
285
|
| 4 (Deprecation) | ~14 | Evaluate for removal/consolidation |
|
|
266
286
|
|
|
@@ -61,18 +61,18 @@ Key properties:
|
|
|
61
61
|
|
|
62
62
|
## Color Expansion
|
|
63
63
|
|
|
64
|
-
The
|
|
65
|
-
|
|
66
|
-
| Token | Role |
|
|
67
|
-
|
|
68
|
-
| `chart-1` | Primary |
|
|
69
|
-
| `chart-2` | Secondary |
|
|
70
|
-
| `chart-3` | Tertiary |
|
|
71
|
-
| `chart-4` | Quaternary |
|
|
72
|
-
| `chart-5` | Quinary |
|
|
73
|
-
| `chart-6` | Senary |
|
|
74
|
-
| `chart-7` | Septenary |
|
|
75
|
-
| `chart-8` | Octonary |
|
|
64
|
+
The chart palette provides 8 semantic tokens. The exact RGB values come from the current token build, not from this doc.
|
|
65
|
+
|
|
66
|
+
| Token | Role | Typical Use |
|
|
67
|
+
|-------|------|-------------|
|
|
68
|
+
| `chart-1` | Primary | Revenue, throughput, primary metric |
|
|
69
|
+
| `chart-2` | Secondary | Users, latency, secondary metric |
|
|
70
|
+
| `chart-3` | Tertiary | Growth, conversions, positive |
|
|
71
|
+
| `chart-4` | Quaternary | High-value segments, supporting series |
|
|
72
|
+
| `chart-5` | Quinary | Churn, errors, negative |
|
|
73
|
+
| `chart-6` | Senary | Auxiliary series |
|
|
74
|
+
| `chart-7` | Septenary | Secondary auxiliary, comparison overlays |
|
|
75
|
+
| `chart-8` | Octonary | Warm accent, seasonal data, promotions |
|
|
76
76
|
|
|
77
77
|
### Color assignment rules
|
|
78
78
|
|
|
@@ -1,81 +1,31 @@
|
|
|
1
1
|
# Next.js Integration Guide
|
|
2
2
|
|
|
3
|
-
Seed
|
|
3
|
+
Seed integrates into Next.js apps through installable package artifacts, not live repo-path links.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Canonical Contract
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Use these in order:
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
-
|
|
9
|
+
1. `contract.md`, binary consumer rules
|
|
10
|
+
2. this guide, integration checklist
|
|
11
|
+
3. `consumer-contract.json` in the installed package, machine-readable ownership and contract entrypoint map
|
|
12
|
+
4. `catalog.json` in the installed package, exact component metadata
|
|
12
13
|
|
|
13
|
-
##
|
|
14
|
+
## Integration Checklist
|
|
14
15
|
|
|
15
|
-
|
|
16
|
+
- install an exact released package version of `@vadimcomanescu/nadicode-design-system`, or a committed relative tarball fallback such as `file:.nadicode/packages/vadimcomanescu-nadicode-design-system-<version>.tgz`
|
|
17
|
+
- never point `package.json` at a live repo directory such as `file:/absolute/path/to/nadicode-design-system`
|
|
18
|
+
- import `@vadimcomanescu/nadicode-design-system/tokens.css` before `seed-palette.css`
|
|
19
|
+
- use `@vadimcomanescu/nadicode-design-system/tailwind` in `tailwind.config.*`
|
|
20
|
+
- use `@vadimcomanescu/nadicode-design-system/eslint-config` and `@vadimcomanescu/nadicode-design-system/eslint-plugin` in `eslint.config.*`
|
|
21
|
+
- mount `ThemeProvider` from `@vadimcomanescu/nadicode-design-system/theme-provider`
|
|
22
|
+
- keep `scripts/ds-check.mjs` and `scripts/ds-update.mjs` as thin package delegates
|
|
16
23
|
|
|
17
|
-
|
|
18
|
-
- `package.json` must not point `@vadimcomanescu/nadicode-design-system` at a live repo directory such as `file:/absolute/path/to/nadicode-design-system`
|
|
19
|
-
- `globals.css` imports `@vadimcomanescu/nadicode-design-system/tokens.css`
|
|
20
|
-
- `globals.css` imports `seed-palette.css` after package tokens
|
|
21
|
-
- `tailwind.config.*` uses `@vadimcomanescu/nadicode-design-system/tailwind`
|
|
22
|
-
- `eslint.config.*` uses `@vadimcomanescu/nadicode-design-system/eslint-config` and `@vadimcomanescu/nadicode-design-system/eslint-plugin`
|
|
23
|
-
- `providers.tsx` imports `ThemeProvider` from `@vadimcomanescu/nadicode-design-system/theme-provider`
|
|
24
|
-
- `scripts/ds-check.mjs` delegates to `@vadimcomanescu/nadicode-design-system/ds-check`
|
|
24
|
+
## i18n
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
The app owns `src/i18n/request.ts`, locale routing, `NextIntlClientProvider`, and app catalogs. Seed owns DS catalogs and merge helpers.
|
|
27
27
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
For released installs:
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
npm install @vadimcomanescu/nadicode-design-system@2.0.0
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
For unpublished local work:
|
|
37
|
-
|
|
38
|
-
```bash
|
|
39
|
-
DS_REPO="/absolute/path/to/nadicode-design-system"
|
|
40
|
-
mkdir -p .nadicode/packages
|
|
41
|
-
npm --prefix "$DS_REPO" run pack:artifact -- "$PWD/.nadicode/packages"
|
|
42
|
-
NADICODE_TARBALL="$(ls .nadicode/packages/vadimcomanescu-nadicode-design-system-*.tgz | head -n1)"
|
|
43
|
-
npm install "@vadimcomanescu/nadicode-design-system@file:${NADICODE_TARBALL}"
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
## CSS Contract
|
|
47
|
-
|
|
48
|
-
Seed splits CSS into two layers:
|
|
49
|
-
|
|
50
|
-
- `@vadimcomanescu/nadicode-design-system/tokens.css`, package-owned baseline tokens/effects/utilities
|
|
51
|
-
- `seed-palette.css`, consumer-owned color overrides
|
|
52
|
-
|
|
53
|
-
Consumers who want brand customization should edit only `seed-palette.css`.
|
|
54
|
-
|
|
55
|
-
Canonical selectors:
|
|
56
|
-
|
|
57
|
-
```css
|
|
58
|
-
:root {}
|
|
59
|
-
:root.dark {}
|
|
60
|
-
:root.bloom {}
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
Do not use `[data-theme=...]` selectors.
|
|
64
|
-
|
|
65
|
-
## Root Wiring
|
|
66
|
-
|
|
67
|
-
The target app should have a client providers wrapper:
|
|
68
|
-
|
|
69
|
-
```tsx
|
|
70
|
-
// src/app/providers.tsx
|
|
71
|
-
"use client"
|
|
72
|
-
|
|
73
|
-
import { ThemeProvider } from "@vadimcomanescu/nadicode-design-system/theme-provider"
|
|
74
|
-
|
|
75
|
-
export function Providers({ children }: { children: React.ReactNode }) {
|
|
76
|
-
return <ThemeProvider>{children}</ThemeProvider>
|
|
77
|
-
}
|
|
78
|
-
```
|
|
28
|
+
Import DS catalogs from `@vadimcomanescu/nadicode-design-system/messages/<locale>`, keep app catalogs in `messages/<locale>.json`, merge both with `mergeSeedMessages()`, and do not copy DS catalog files into the app.
|
|
79
29
|
|
|
80
30
|
## Update Path
|
|
81
31
|
|
|
@@ -87,9 +37,9 @@ npm run ds:update
|
|
|
87
37
|
|
|
88
38
|
`ds:update` must reinstall the exact `@vadimcomanescu/nadicode-design-system` dependency already declared in `package.json`.
|
|
89
39
|
|
|
90
|
-
|
|
40
|
+
That tarball path is the unpublished local fallback. Do not point the app at a live repo directory.
|
|
91
41
|
|
|
92
|
-
|
|
42
|
+
## Verification
|
|
93
43
|
|
|
94
44
|
```bash
|
|
95
45
|
npm run ds:check
|
|
@@ -97,13 +47,3 @@ npm run lint
|
|
|
97
47
|
npx tsc --noEmit
|
|
98
48
|
npm run build
|
|
99
49
|
```
|
|
100
|
-
|
|
101
|
-
Optional package-contract checks:
|
|
102
|
-
|
|
103
|
-
```bash
|
|
104
|
-
test -f src/seed-palette.css
|
|
105
|
-
rg -n "@vadimcomanescu/nadicode-design-system/tokens.css" src/app/globals.css app/globals.css
|
|
106
|
-
rg -n "@vadimcomanescu/nadicode-design-system/tailwind" tailwind.config.js tailwind.config.mjs tailwind.config.ts
|
|
107
|
-
rg -n "@vadimcomanescu/nadicode-design-system/eslint-config|@vadimcomanescu/nadicode-design-system/eslint-plugin" eslint.config.mjs eslint.config.js
|
|
108
|
-
rg -n "@vadimcomanescu/nadicode-design-system/theme-provider" src/app/providers.tsx app/providers.tsx
|
|
109
|
-
```
|