@vadimcomanescu/nadicode-design-system 2.0.9 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/.agents/skills/seed/SKILL.md +19 -10
  2. package/.agents/skills/seed/contract.md +9 -2
  3. package/.agents/skills/seed/references/blocks.md +5 -5
  4. package/.agents/skills/seed/references/components.md +2 -2
  5. package/.agents/skills/seed/references/nextjs.md +2 -2
  6. package/README.md +3 -3
  7. package/contracts/consumer-intent-map.json +1 -2
  8. package/contracts/release-governance-baseline.json +3 -37
  9. package/dist/catalog/catalog.d.ts +2220 -0
  10. package/dist/catalog/catalog.js +1913 -0
  11. package/dist/catalog/components.d.ts +201 -0
  12. package/dist/catalog/components.js +407 -0
  13. package/dist/catalog/types.d.ts +4 -0
  14. package/dist/catalog/types.js +1 -0
  15. package/dist/chunk-224KPIOG.js +60 -0
  16. package/dist/chunk-25BOZMXA.js +169 -0
  17. package/dist/chunk-32OLQ7FC.js +130 -0
  18. package/dist/chunk-3JJBJ4VR.js +47 -0
  19. package/dist/chunk-3U56FXYC.js +30 -0
  20. package/dist/chunk-4MWKE6F5.js +86 -0
  21. package/dist/chunk-6HGSU24S.js +94 -0
  22. package/dist/chunk-7IADIXDV.js +168 -0
  23. package/dist/chunk-7NS3VFD7.js +86 -0
  24. package/dist/chunk-7XLZCXUL.js +175 -0
  25. package/dist/chunk-ALA6OM7K.js +134 -0
  26. package/dist/chunk-AN5TW4AL.js +50 -0
  27. package/dist/chunk-AWZFQQGN.js +167 -0
  28. package/dist/chunk-BRCBJ3S4.js +42 -0
  29. package/dist/chunk-BRICSLHJ.js +30 -0
  30. package/dist/chunk-BYEHHZZN.js +115 -0
  31. package/dist/chunk-C33GUEDY.js +149 -0
  32. package/dist/chunk-CUDMDYKE.js +150 -0
  33. package/dist/chunk-CVTMWSNS.js +145 -0
  34. package/dist/chunk-DEZXWNYF.js +165 -0
  35. package/dist/chunk-DNJEVMDY.js +40 -0
  36. package/dist/chunk-DNJOBML6.js +66 -0
  37. package/dist/chunk-FTGFOK6T.js +69 -0
  38. package/dist/chunk-HFBJ6L6O.js +104 -0
  39. package/dist/chunk-HPTHS7SX.js +52 -0
  40. package/dist/chunk-KNR3WB5C.js +147 -0
  41. package/dist/chunk-KQ7ZC6EM.js +66 -0
  42. package/dist/chunk-LGW7FVG5.js +83 -0
  43. package/dist/chunk-LP6ZZYOQ.js +36 -0
  44. package/dist/chunk-LV4P7WVM.js +54 -0
  45. package/dist/chunk-MGSGCARB.js +164 -0
  46. package/dist/chunk-N3YFYMNZ.js +73 -0
  47. package/dist/chunk-Q5IYBNA7.js +56 -0
  48. package/dist/chunk-QJCE7NZF.js +85 -0
  49. package/dist/chunk-QW5II6YK.js +96 -0
  50. package/dist/chunk-RMGDDOCD.js +138 -0
  51. package/dist/chunk-RNCX4JIE.js +70 -0
  52. package/dist/chunk-RWCL5OPX.js +112 -0
  53. package/dist/chunk-S5OY2B63.js +28 -0
  54. package/dist/chunk-SIQNG72C.js +257 -0
  55. package/dist/chunk-SP7NIZFP.js +117 -0
  56. package/dist/chunk-SWRJWMGG.js +30 -0
  57. package/dist/chunk-TCQIJ3DO.js +85 -0
  58. package/dist/chunk-TPJ6JJ2F.js +290 -0
  59. package/dist/chunk-TUJZMJXW.js +72 -0
  60. package/dist/chunk-UR43ANYS.js +159 -0
  61. package/dist/chunk-VRGPG2YN.js +79 -0
  62. package/dist/chunk-WSBLCWY7.js +126 -0
  63. package/dist/chunk-XKKFSFYO.js +93 -0
  64. package/dist/chunk-XO7TBM47.js +32 -0
  65. package/dist/chunk-YDYDGG5K.js +132 -0
  66. package/dist/chunk-YMJOUYMT.js +171 -0
  67. package/dist/chunk-Z2WION42.js +32 -0
  68. package/dist/chunk-ZFKSVEYW.js +35 -0
  69. package/dist/components/blocks/AgentProfileGridBlock.js +8 -86
  70. package/dist/components/blocks/AgentRunOverviewBlock.js +8 -147
  71. package/dist/components/blocks/AgentWorkbenchBlock.js +15 -257
  72. package/dist/components/blocks/AudioVisualizerBlock.js +2 -50
  73. package/dist/components/blocks/AuthLayout.js +9 -73
  74. package/dist/components/blocks/BannerBlock.js +8 -66
  75. package/dist/components/blocks/BarChartBlock.js +5 -47
  76. package/dist/components/blocks/ChartBlock.js +7 -54
  77. package/dist/components/blocks/ChartCollectionBlock.js +11 -171
  78. package/dist/components/blocks/ChatLayout.js +12 -126
  79. package/dist/components/blocks/CreateBlock.js +9 -104
  80. package/dist/components/blocks/DataGridBlock.js +9 -117
  81. package/dist/components/blocks/DirectoryBlock.js +12 -85
  82. package/dist/components/blocks/FeatureGridBlock.js +6 -56
  83. package/dist/components/blocks/GalleryBlock.js +6 -69
  84. package/dist/components/blocks/HeroSectionBlock.js +10 -134
  85. package/dist/components/blocks/IntegrationsBlock.js +13 -94
  86. package/dist/components/blocks/InteractiveAreaChartBlock.js +5 -290
  87. package/dist/components/blocks/KanbanDemoBlock.js +8 -145
  88. package/dist/components/blocks/LogoCloud.js +4 -35
  89. package/dist/components/blocks/NavUser.js +5 -85
  90. package/dist/components/blocks/NotFoundBlock.js +8 -32
  91. package/dist/components/blocks/OnboardingBlock.js +7 -66
  92. package/dist/components/blocks/SettingsLayout.js +13 -86
  93. package/dist/components/blocks/SignUpBlock.js +8 -168
  94. package/dist/components/blocks/SolutionShowcaseBlock.js +11 -112
  95. package/dist/components/blocks/StatsBlock.js +6 -60
  96. package/dist/components/blocks/UsageDonutBlock.js +5 -79
  97. package/dist/components/blocks/WizardBlock.js +12 -93
  98. package/dist/components/blocks/user/InviteUserModal.js +10 -132
  99. package/dist/components/page-kits/AccountLockedPageKit.js +3 -40
  100. package/dist/components/page-kits/AgentsChatPageKit.js +11 -159
  101. package/dist/components/page-kits/AnalyticsPageKit.js +12 -150
  102. package/dist/components/page-kits/BlogContentPageKit.js +12 -167
  103. package/dist/components/page-kits/CheckoutPageKit.js +9 -83
  104. package/dist/components/page-kits/CompanySuitePageKit.js +9 -96
  105. package/dist/components/page-kits/DashboardPageKit.js +11 -149
  106. package/dist/components/page-kits/ErrorPageKit.js +5 -52
  107. package/dist/components/page-kits/KanbanBoardPageKit.js +7 -169
  108. package/dist/components/page-kits/LandingPageKit.js +11 -72
  109. package/dist/components/page-kits/LoginPageKit.js +3 -32
  110. package/dist/components/page-kits/OnboardingPageKit.js +6 -115
  111. package/dist/components/page-kits/PricingPageKit.js +12 -138
  112. package/dist/components/page-kits/ProfileSettingsPageKit.js +10 -164
  113. package/dist/components/page-kits/RecoveryPageKit.js +3 -42
  114. package/dist/components/page-kits/ResetPageKit.js +3 -36
  115. package/dist/components/page-kits/ServiceSuitePageKit.js +10 -175
  116. package/dist/components/page-kits/SignupPageKit.js +3 -30
  117. package/dist/components/page-kits/SuccessPageKit.js +4 -30
  118. package/dist/components/page-kits/TeamSettingsPageKit.js +9 -165
  119. package/dist/components/page-kits/TwoFactorPageKit.js +4 -28
  120. package/dist/components/page-kits/VerifyEmailPageKit.js +4 -30
  121. package/dist/components/page-kits/VoiceAgentsPageKit.js +13 -130
  122. package/dist/components/ui/CheckoutForm.js +5 -70
  123. package/eslint-rules/nadicode/config.js +1 -0
  124. package/eslint-rules/nadicode/data/catalog-names.json +93 -0
  125. package/eslint-rules/nadicode/index.js +2 -0
  126. package/eslint-rules/nadicode/rules/__tests__/require-catalog-component.test.js +77 -0
  127. package/eslint-rules/nadicode/rules/require-catalog-component.js +79 -0
  128. package/package.json +18 -25
  129. package/contracts/block-props-schemas.json +0 -2186
  130. package/contracts/component-props-schemas.json +0 -8322
  131. package/contracts/consumer-contract.json +0 -178
  132. package/contracts/page-kit-props-schemas.json +0 -1894
  133. package/contracts/public-surface-registry.json +0 -5822
  134. package/contracts/public-surface-registry.schema.json +0 -219
  135. package/contracts/spec-manifest.json +0 -46
  136. package/dist/catalog.json +0 -5221
@@ -20,29 +20,38 @@ Consumer scaffold contract: brand customization stays palette-only unless the ta
20
20
 
21
21
  ## Component Discovery
22
22
 
23
- Start with the shipped machine-readable consumer contract:
23
+ The catalog (`./catalog` and `./catalog/components` subpath exports) is the single surface for discovering and consuming Seed components.
24
24
 
25
- ```
26
- cat node_modules/@vadimcomanescu/nadicode-design-system/contracts/consumer-contract.json
25
+ **Discovery** (server-safe, read this to learn what's available):
26
+ ```ts
27
+ import { seedComponentDefinitions } from "@vadimcomanescu/nadicode-design-system/catalog"
27
28
  ```
28
29
 
29
- Then follow `entrypoints.machineReadable.catalog` to the generated catalog for exact component names, variant values, props, and tiers:
30
+ Each entry provides: `props` (Zod schema), `description`, `slots`, `events`, `example`.
30
31
 
32
+ **Components** (client, import this to get React components):
33
+ ```ts
34
+ import { seedComponents } from "@vadimcomanescu/nadicode-design-system/catalog/components"
31
35
  ```
32
- cat node_modules/@vadimcomanescu/nadicode-design-system/dist/catalog.json
36
+
37
+ Usage:
38
+ ```tsx
39
+ const { LoginBlock, Button, Card } = seedComponents
40
+ <LoginBlock onSubmit={handleLogin} />
33
41
  ```
34
42
 
35
- The consumer contract is the machine entrypoint. The catalog is the component metadata surface. Both are auto-generated from source. Do not guess.
43
+ Do not import from individual subpath exports. Do not browse package exports. The catalog is the single source of truth.
44
+
45
+ The ESLint rule `nadicode/no-raw-recharts-import` and related rules enforce correct import paths at lint time. See the ESLint Rule Reference in `contract.md`.
36
46
 
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.
47
+ 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.
38
48
 
39
49
  ## Read Order
40
50
 
41
51
  1. **This file** -- router, quick references, forbidden patterns
42
52
  2. **`contract.md`** -- binary rules, package integration contract
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
53
+ 3. **catalog** (`@vadimcomanescu/nadicode-design-system/catalog`) -- machine-readable component metadata (variants, props, tiers)
54
+ 4. **`intent-map.md`** -- intent decision tree + recipe index
46
55
  6. **`recipes/<page-type>.md`** -- matching recipe for your page
47
56
  7. **`references/`** -- deep dives as needed
48
57
  8. **`references/brand-override.md`** -- palette-only brand customization guide for seeded apps
@@ -9,8 +9,15 @@ Binary rules for consumer apps using the Seed Design System. Every rule is non-n
9
9
 
10
10
  ## Component Catalog
11
11
 
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:b5370c96c1bb877883860055c4b3d2c7c67ef7c2b1df4acacd7ea5cb0847da78`
12
+ The catalog is the single starting point for component discovery. Read it via the `./catalog` subpath export for the authoritative list of components, variant names, props, and tiers. Get actual React components from `./catalog/components`. Verify component names and variant values against the catalog. Do not guess variant names or prop values.
13
+
14
+ ```ts
15
+ // Discovery (server-safe)
16
+ import { seedComponentDefinitions } from "@vadimcomanescu/nadicode-design-system/catalog"
17
+
18
+ // Components (client)
19
+ import { seedComponents } from "@vadimcomanescu/nadicode-design-system/catalog/components"
20
+ ```
14
21
 
15
22
  ## Import Rules
16
23
 
@@ -1,9 +1,8 @@
1
1
  # Blocks Catalog
2
2
 
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.
3
+ Derived from `src/catalog/catalog.ts`.
6
4
 
5
+ Components are consumed via `seedComponents` from `@vadimcomanescu/nadicode-design-system/catalog/components`. Repo source paths are maintainer references only.
7
6
  Blocks are pre-composed page sections built from Seed UI primitives.
8
7
  Run `npm run docs:inventory` for the current filesystem-backed list.
9
8
 
@@ -115,8 +114,9 @@ Run `npm run docs:inventory` for the current filesystem-backed list.
115
114
  Blocks accept `className` for placement and compose Seed UI primitives:
116
115
 
117
116
  ```tsx
118
- import { LoginBlock } from "@vadimcomanescu/nadicode-design-system/login-block"
119
- import { HeroBlock } from "@vadimcomanescu/nadicode-design-system/hero-block"
117
+ import { seedComponents } from "@vadimcomanescu/nadicode-design-system/catalog/components"
118
+
119
+ const { LoginBlock, HeroBlock } = seedComponents
120
120
 
121
121
  <div className="flex items-center justify-center min-h-dvh">
122
122
  <LoginBlock type="login" showSocial />
@@ -1,8 +1,8 @@
1
1
  # Component Inventory
2
2
 
3
- Derived from `dist/catalog.json`.
3
+ Derived from `src/catalog/catalog.ts`.
4
4
 
5
- Consumer code must import from `@vadimcomanescu/nadicode-design-system/*` subpaths. The `Path` column below is the repo source location for maintainers.
5
+ Components are consumed via `seedComponents` from `@vadimcomanescu/nadicode-design-system/catalog/components`. The `Path` column below is the repo source location for maintainers.
6
6
 
7
7
  Tiers: **1**=Core (3+ recipes), **2**=Domain (1-2 recipes), **3**=Decorative (marketing only), **4**=Deprecation candidate.
8
8
 
@@ -8,8 +8,8 @@ Use these in order:
8
8
 
9
9
  1. `contract.md`, binary consumer rules
10
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
11
+ 3. `./catalog` subpath export, server-safe component definitions with Zod schemas
12
+ 4. `./catalog/components` subpath export, React component map keyed by catalog name
13
13
 
14
14
  ## Integration Checklist
15
15
 
package/README.md CHANGED
@@ -27,11 +27,11 @@ Canonical consumer docs:
27
27
  The repo treats structured truth and prose differently.
28
28
 
29
29
  - Operational truth lives in `package.json` scripts and `.husky/*`.
30
- - The shipped machine entrypoint for agents and scaffold apps lives in `contracts/consumer-contract.json` and is exported as `@vadimcomanescu/nadicode-design-system/consumer-contract`.
31
- - Public package surface lives in `package.json` exports, `contracts/public-surface-registry.json`, and `bin/shipped-files.json`.
30
+ - The catalog is the single machine-readable component surface. Discovery: `@vadimcomanescu/nadicode-design-system/catalog`. Components: `@vadimcomanescu/nadicode-design-system/catalog/components`.
31
+ - Public package surface lives in `package.json` exports, `src/catalog/catalog.ts`, and `bin/shipped-files.json`.
32
32
  - Consumer ownership and package-backed runtime rules live in [docs/nadicode/SCAFFOLDING_PROCESS.md](docs/nadicode/SCAFFOLDING_PROCESS.md).
33
33
  - Release steps live in [docs/releasing-package.md](docs/releasing-package.md).
34
- - Component metadata lives in `dist/catalog.json`, generated from source.
34
+ - Component metadata lives in `dist/catalog/catalog.js`, generated from `src/catalog/catalog.ts`.
35
35
 
36
36
  Use prose docs for guidance and rationale. Use scripts, manifests, and generated artifacts for anything that must stay machine-accurate.
37
37
 
@@ -1,8 +1,7 @@
1
1
  {
2
2
  "schemaVersion": "1.0.0",
3
3
  "generatedFrom": {
4
- "registryPath": "contracts/public-surface-registry.json",
5
- "registrySchemaVersion": "1.0.0"
4
+ "source": "scripts/generate-consumer-intent-map.mjs"
6
5
  },
7
6
  "intents": {
8
7
  "agents-chat": {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": "1.0.0",
3
- "generatedAt": "2026-03-25T21:42:01.343Z",
4
- "packageVersion": "2.0.7",
3
+ "generatedAt": "2026-03-27T10:15:35.016Z",
4
+ "packageVersion": "4.0.0",
5
5
  "stableExports": [
6
6
  ".",
7
7
  "./accordion",
@@ -52,7 +52,6 @@
52
52
  "./banner-block",
53
53
  "./bar-chart-block",
54
54
  "./bento-grid",
55
- "./block-props-schemas",
56
55
  "./blog-content-page-kit",
57
56
  "./brand-icons",
58
57
  "./breadcrumb",
@@ -106,9 +105,7 @@
106
105
  "./command",
107
106
  "./company-suite-page-kit",
108
107
  "./comparison-block",
109
- "./component-props-schemas",
110
108
  "./confetti-burst",
111
- "./consumer-contract",
112
109
  "./consumer-intent-map",
113
110
  "./contact-block",
114
111
  "./context-menu",
@@ -330,7 +327,6 @@
330
327
  "./notification-center",
331
328
  "./onboarding-block",
332
329
  "./onboarding-page-kit",
333
- "./page-kit-props-schemas",
334
330
  "./page-transition",
335
331
  "./pagination",
336
332
  "./password-input",
@@ -345,7 +341,6 @@
345
341
  "./progress-ring",
346
342
  "./progressive-blur",
347
343
  "./promo-card",
348
- "./public-surface-registry",
349
344
  "./radio-group",
350
345
  "./react-utils",
351
346
  "./recovery-page-kit",
@@ -374,7 +369,6 @@
374
369
  "./social-proof-block",
375
370
  "./sonner",
376
371
  "./source-citation",
377
- "./spec-manifest",
378
372
  "./spinner",
379
373
  "./spring-hover",
380
374
  "./stagger-children",
@@ -810,41 +804,13 @@
810
804
  "pages.settings.underConstruction"
811
805
  ],
812
806
  "artifacts": {
813
- "contracts/public-surface-registry.json": {
814
- "schemaVersion": "1.0.0",
815
- "shapeSignature": "5a76cac109041a9f60e288cfe903e23db0a45c56f6daff8f09bff97bfeeb2d11"
816
- },
817
- "contracts/block-props-schemas.json": {
818
- "schemaVersion": "1.0.0",
819
- "shapeSignature": "5a20094b5a00004d3187ee3bc5b8fe6d5b2d76a6b5ad0297834ee39deefe8988"
820
- },
821
- "contracts/component-props-schemas.json": {
822
- "schemaVersion": "1.0.0",
823
- "shapeSignature": "61e2aa0831df178f701cdcb7d3905b87f33d15d5e13e42487c24ee8ff15a386a"
824
- },
825
- "contracts/page-kit-props-schemas.json": {
826
- "schemaVersion": "1.0.0",
827
- "shapeSignature": "76a764c4d9b76a1ccf40d5493872c344df2c136c8b4bdc06bddc854ea54e3590"
828
- },
829
807
  "contracts/consumer-intent-map.json": {
830
808
  "schemaVersion": "1.0.0",
831
- "shapeSignature": "ee0a6787c7613eb41c32568a90a9cad3568c79f3df8bdfaef69a642203e47886"
809
+ "shapeSignature": "583a600417b95d3b7278d18d8a23ad8f0353314feb64fba7fa037c2c7db5b8b9"
832
810
  },
833
811
  "contracts/message-catalog-contract.json": {
834
812
  "schemaVersion": "1.0.0",
835
813
  "shapeSignature": "c95089ecca818272b27b77f8fac6fae04f8e4f0f381e302dfa084b00da12fcc8"
836
- },
837
- "contracts/spec-manifest.json": {
838
- "schemaVersion": "1.0.0",
839
- "shapeSignature": "e6c8904e15cc0fa5117b58485856a7db80746905ab61615b3e9936fe7b59ce08"
840
- },
841
- "contracts/consumer-contract.json": {
842
- "schemaVersion": "1.0.0",
843
- "shapeSignature": "1472ab7f0c0d4cc77d02821ae5284c85fed6e57d664d93bb6552cf42157c9a86"
844
- },
845
- "dist/catalog.json": {
846
- "schemaVersion": "1.1.0",
847
- "shapeSignature": "163dd9cef740c711e04d3402491df7684801764142fd48de45ef9bdde9920e54"
848
814
  }
849
815
  }
850
816
  }