@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.
Files changed (339) hide show
  1. package/.agents/skills/seed/SKILL.md +17 -8
  2. package/.agents/skills/seed/contract.md +5 -4
  3. package/.agents/skills/seed/intent-map.md +3 -3
  4. package/.agents/skills/seed/recipes/agents-chat.md +44 -20
  5. package/.agents/skills/seed/recipes/marketing-shell.md +10 -19
  6. package/.agents/skills/seed/recipes/navigation-shell.md +5 -5
  7. package/.agents/skills/seed/recipes/service-detail.md +1 -1
  8. package/.agents/skills/seed/references/blocks.md +30 -26
  9. package/.agents/skills/seed/references/brand-override.md +3 -1
  10. package/.agents/skills/seed/references/components.md +22 -2
  11. package/.agents/skills/seed/references/dashboard-patterns.md +12 -12
  12. package/.agents/skills/seed/references/nextjs.md +20 -80
  13. package/.agents/skills/seed/references/tokens.md +57 -248
  14. package/README.md +43 -215
  15. package/contracts/block-props-schemas.json +2186 -0
  16. package/contracts/component-props-schemas.json +8322 -0
  17. package/contracts/consumer-contract.json +178 -0
  18. package/contracts/consumer-intent-map.json +707 -0
  19. package/contracts/message-catalog-contract.json +820 -0
  20. package/contracts/page-kit-props-schemas.json +1894 -0
  21. package/contracts/public-surface-registry.json +6162 -0
  22. package/contracts/public-surface-registry.schema.json +227 -0
  23. package/contracts/release-governance-baseline.json +850 -0
  24. package/contracts/spec-manifest.json +46 -0
  25. package/css/tokens.css +300 -122
  26. package/dist/catalog.json +2166 -162
  27. package/dist/chunk-2BADJLMV.js +117 -0
  28. package/dist/chunk-35EX5FP5.js +106 -0
  29. package/dist/chunk-4IGBBIYW.js +47 -0
  30. package/dist/chunk-4WPZ6T7V.js +186 -0
  31. package/dist/chunk-5PZ4VR2D.js +142 -0
  32. package/dist/chunk-5UESKK6S.js +76 -0
  33. package/dist/chunk-7A2RXKGH.js +205 -0
  34. package/dist/{chunk-DF47R6LN.js → chunk-AWIG4QN6.js} +9 -9
  35. package/dist/chunk-AYWL4IYM.js +67 -0
  36. package/dist/chunk-C7WHMSF3.js +114 -0
  37. package/dist/{chunk-SV3KZ6CB.js → chunk-DSMGCFMJ.js} +7 -2
  38. package/dist/{chunk-4K3PATUT.js → chunk-EEL4RAPC.js} +13 -1
  39. package/dist/{chunk-ILIHQ2KZ.js → chunk-EK43W2Y6.js} +16 -10
  40. package/dist/chunk-FV2G6SAF.js +134 -0
  41. package/dist/chunk-FX23F33E.js +57 -0
  42. package/dist/chunk-GJPTPLCQ.js +52 -0
  43. package/dist/chunk-HJ3A2YNO.js +163 -0
  44. package/dist/chunk-HJZRSPWB.js +38 -0
  45. package/dist/chunk-HWHJ6IRQ.js +78 -0
  46. package/dist/chunk-HZERHGBT.js +77 -0
  47. package/dist/{chunk-AUSYEAIJ.js → chunk-I66XWYSS.js} +32 -8
  48. package/dist/chunk-IXQGKJU4.js +183 -0
  49. package/dist/chunk-JDJY4ABS.js +60 -0
  50. package/dist/chunk-K7NQ6ZAW.js +84 -0
  51. package/dist/chunk-KWILREVQ.js +147 -0
  52. package/dist/chunk-LCKLZ4XK.js +60 -0
  53. package/dist/{chunk-WI37ZYIF.js → chunk-M4XKO45H.js} +13 -1
  54. package/dist/chunk-NEHCPO53.js +44 -0
  55. package/dist/chunk-OJ7OO3QB.js +269 -0
  56. package/dist/{chunk-ZHTQF2KI.js → chunk-OSNTB6RY.js} +29 -22
  57. package/dist/{chunk-GMMPLZLC.js → chunk-PDSQC6VE.js} +1 -1
  58. package/dist/chunk-QIHA7S3A.js +36 -0
  59. package/dist/chunk-QQOWC53X.js +98 -0
  60. package/dist/chunk-RKQPU75I.js +126 -0
  61. package/dist/chunk-U4GYSYGN.js +120 -0
  62. package/dist/chunk-UGV45DH3.js +18 -0
  63. package/dist/chunk-VBZQ4DBE.js +52 -0
  64. package/dist/{chunk-LQLFA2EL.js → chunk-VDONTZZX.js} +2 -2
  65. package/dist/chunk-VEO56RH4.js +105 -0
  66. package/dist/chunk-VJ5VD4UT.js +91 -0
  67. package/dist/{chunk-RWNJ54CI.js → chunk-VN475YZS.js} +1 -1
  68. package/dist/chunk-VNNAL4A6.js +110 -0
  69. package/dist/chunk-VZCB4APK.js +94 -0
  70. package/dist/chunk-W7FXDRQJ.js +94 -0
  71. package/dist/{chunk-5I3FWRC5.js → chunk-WOYBVPXK.js} +10 -10
  72. package/dist/chunk-WST5NLLC.js +73 -0
  73. package/dist/chunk-X6VXWEDO.js +125 -0
  74. package/dist/chunk-XTASI4IY.js +60 -0
  75. package/dist/chunk-Z233ZQZE.js +33 -0
  76. package/dist/chunk-ZKLB5N3Q.js +110 -0
  77. package/dist/chunk-ZM2NODUK.js +39 -0
  78. package/dist/components/blocks/AccountLockedBlock.js +7 -57
  79. package/dist/components/blocks/ActivityFeedBlock.js +6 -39
  80. package/dist/components/blocks/AgentConversationBlock.d.ts +6 -1
  81. package/dist/components/blocks/AgentConversationBlock.js +45 -71
  82. package/dist/components/blocks/AgentRunOverviewBlock.js +1 -1
  83. package/dist/components/blocks/AgentWorkbenchBlock.d.ts +5 -1
  84. package/dist/components/blocks/AgentWorkbenchBlock.js +47 -46
  85. package/dist/components/blocks/AudioVisualizerBlock.d.ts +1 -1
  86. package/dist/components/blocks/AudioVisualizerBlock.js +2 -2
  87. package/dist/components/blocks/AuthLayout.js +2 -2
  88. package/dist/components/blocks/AuthSuccessBlock.js +5 -60
  89. package/dist/components/blocks/BannerBlock.js +38 -38
  90. package/dist/components/blocks/BarChartBlock.d.ts +1 -1
  91. package/dist/components/blocks/BarChartBlock.js +2 -2
  92. package/dist/components/blocks/CallToActionBlock.d.ts +1 -1
  93. package/dist/components/blocks/CallToActionBlock.js +7 -53
  94. package/dist/components/blocks/ChangelogBlock.js +45 -142
  95. package/dist/components/blocks/ChartBlock.js +38 -38
  96. package/dist/components/blocks/ChartCollectionBlock.js +3 -3
  97. package/dist/components/blocks/ChatLayout.d.ts +4 -1
  98. package/dist/components/blocks/ChatLayout.js +39 -39
  99. package/dist/components/blocks/CodeBlock.js +7 -60
  100. package/dist/components/blocks/ComparisonBlock.js +9 -94
  101. package/dist/components/blocks/ContactBlock.js +11 -120
  102. package/dist/components/blocks/CreateBlock.js +39 -39
  103. package/dist/components/blocks/DataGridBlock.js +40 -40
  104. package/dist/components/blocks/DirectoryBlock.js +43 -43
  105. package/dist/components/blocks/FAQBlock.js +44 -82
  106. package/dist/components/blocks/FeatureBlock.d.ts +10 -14
  107. package/dist/components/blocks/FeatureBlock.js +54 -196
  108. package/dist/components/blocks/FeatureGridBlock.d.ts +1 -1
  109. package/dist/components/blocks/FeatureGridBlock.js +2 -2
  110. package/dist/components/blocks/FooterBlock.d.ts +2 -2
  111. package/dist/components/blocks/FooterBlock.js +11 -67
  112. package/dist/components/blocks/GalleryBlock.js +38 -38
  113. package/dist/components/blocks/HeaderBlock.d.ts +2 -2
  114. package/dist/components/blocks/HeaderBlock.js +39 -39
  115. package/dist/components/blocks/HeatmapChartBlock.d.ts +1 -1
  116. package/dist/components/blocks/HeatmapChartBlock.js +1 -1
  117. package/dist/components/blocks/HeroBlock.d.ts +6 -3
  118. package/dist/components/blocks/HeroBlock.js +53 -236
  119. package/dist/components/blocks/HeroSectionBlock.d.ts +1 -1
  120. package/dist/components/blocks/HeroSectionBlock.js +59 -63
  121. package/dist/components/blocks/IntegrationsBlock.d.ts +1 -1
  122. package/dist/components/blocks/IntegrationsBlock.js +42 -42
  123. package/dist/components/blocks/InteractiveAreaChartBlock.d.ts +1 -1
  124. package/dist/components/blocks/InteractiveAreaChartBlock.js +40 -40
  125. package/dist/components/blocks/KanbanDemoBlock.js +3 -3
  126. package/dist/components/blocks/LoginBlock.js +2 -2
  127. package/dist/components/blocks/LogoCloud.js +2 -13
  128. package/dist/components/blocks/NavUser.js +42 -42
  129. package/dist/components/blocks/NewsletterBlock.js +11 -84
  130. package/dist/components/blocks/NotFoundBlock.js +41 -41
  131. package/dist/components/blocks/OnboardingBlock.js +38 -38
  132. package/dist/components/blocks/PasswordRecoveryBlock.js +14 -142
  133. package/dist/components/blocks/PricingBlock.d.ts +1 -1
  134. package/dist/components/blocks/PricingBlock.js +13 -112
  135. package/dist/components/blocks/ProcessFlowBlock.js +10 -77
  136. package/dist/components/blocks/ResetPasswordBlock.js +11 -125
  137. package/dist/components/blocks/SettingsLayout.js +42 -42
  138. package/dist/components/blocks/SignUpBlock.d.ts +1 -1
  139. package/dist/components/blocks/SignUpBlock.js +3 -3
  140. package/dist/components/blocks/SocialProofBlock.d.ts +7 -11
  141. package/dist/components/blocks/SocialProofBlock.js +10 -108
  142. package/dist/components/blocks/StatsBlock.d.ts +1 -1
  143. package/dist/components/blocks/StatsBlock.js +40 -40
  144. package/dist/components/blocks/StatsMarketingBlock.d.ts +1 -1
  145. package/dist/components/blocks/StatsMarketingBlock.js +7 -38
  146. package/dist/components/blocks/TeamBlock.d.ts +1 -1
  147. package/dist/components/blocks/TeamBlock.js +4 -52
  148. package/dist/components/blocks/TestimonialsBlock.d.ts +1 -1
  149. package/dist/components/blocks/TestimonialsBlock.js +5 -133
  150. package/dist/components/blocks/TwoFactorChallengeBlock.js +46 -131
  151. package/dist/components/blocks/TwoFactorSetupBlock.js +53 -220
  152. package/dist/components/blocks/UsageDonutBlock.d.ts +1 -1
  153. package/dist/components/blocks/UsageDonutBlock.js +2 -2
  154. package/dist/components/blocks/VoiceAgentCard.d.ts +3 -1
  155. package/dist/components/blocks/VoiceAgentCard.js +7 -76
  156. package/dist/components/blocks/WizardBlock.js +39 -39
  157. package/dist/components/blocks/user/InviteUserModal.js +38 -38
  158. package/dist/components/logos/index.js +2 -2
  159. package/dist/components/page-kits/AccountLockedPageKit.d.ts +10 -0
  160. package/dist/components/page-kits/AccountLockedPageKit.js +48 -0
  161. package/dist/components/page-kits/AgentsChatPageKit.d.ts +46 -0
  162. package/dist/components/page-kits/AgentsChatPageKit.js +290 -0
  163. package/dist/components/page-kits/AnalyticsPageKit.d.ts +49 -0
  164. package/dist/components/page-kits/AnalyticsPageKit.js +277 -0
  165. package/dist/components/page-kits/BlogContentPageKit.d.ts +64 -0
  166. package/dist/components/page-kits/BlogContentPageKit.js +296 -0
  167. package/dist/components/page-kits/CheckoutPageKit.d.ts +36 -0
  168. package/dist/components/page-kits/CheckoutPageKit.js +209 -0
  169. package/dist/components/page-kits/CompanySuitePageKit.d.ts +25 -0
  170. package/dist/components/page-kits/CompanySuitePageKit.js +240 -0
  171. package/dist/components/page-kits/CrudFormPageKit.d.ts +54 -0
  172. package/dist/components/page-kits/CrudFormPageKit.js +138 -0
  173. package/dist/components/page-kits/CrudListDetailPageKit.d.ts +70 -0
  174. package/dist/components/page-kits/CrudListDetailPageKit.js +138 -0
  175. package/dist/components/page-kits/DashboardPageKit.d.ts +39 -0
  176. package/dist/components/page-kits/DashboardPageKit.js +284 -0
  177. package/dist/components/page-kits/ErrorPageKit.d.ts +22 -0
  178. package/dist/components/page-kits/ErrorPageKit.js +55 -0
  179. package/dist/components/page-kits/KanbanBoardPageKit.d.ts +31 -0
  180. package/dist/components/page-kits/KanbanBoardPageKit.js +305 -0
  181. package/dist/components/page-kits/LandingPageKit.d.ts +29 -0
  182. package/dist/components/page-kits/LandingPageKit.js +222 -0
  183. package/dist/components/page-kits/LoginPageKit.d.ts +16 -0
  184. package/dist/components/page-kits/LoginPageKit.js +43 -0
  185. package/dist/components/page-kits/MarketingShellPageKit.d.ts +21 -0
  186. package/dist/components/page-kits/MarketingShellPageKit.js +131 -0
  187. package/dist/components/page-kits/NavigationShellPageKit.d.ts +41 -0
  188. package/dist/components/page-kits/NavigationShellPageKit.js +132 -0
  189. package/dist/components/page-kits/OnboardingPageKit.d.ts +26 -0
  190. package/dist/components/page-kits/OnboardingPageKit.js +248 -0
  191. package/dist/components/page-kits/PricingPageKit.d.ts +41 -0
  192. package/dist/components/page-kits/PricingPageKit.js +279 -0
  193. package/dist/components/page-kits/ProfileSettingsPageKit.d.ts +50 -0
  194. package/dist/components/page-kits/ProfileSettingsPageKit.js +171 -0
  195. package/dist/components/page-kits/RecoveryPageKit.d.ts +17 -0
  196. package/dist/components/page-kits/RecoveryPageKit.js +58 -0
  197. package/dist/components/page-kits/ResetPageKit.d.ts +14 -0
  198. package/dist/components/page-kits/ResetPageKit.js +52 -0
  199. package/dist/components/page-kits/ServiceSuitePageKit.d.ts +25 -0
  200. package/dist/components/page-kits/ServiceSuitePageKit.js +321 -0
  201. package/dist/components/page-kits/SettingsPageKit.d.ts +27 -0
  202. package/dist/components/page-kits/SettingsPageKit.js +11 -0
  203. package/dist/components/page-kits/SignupPageKit.d.ts +15 -0
  204. package/dist/components/page-kits/SignupPageKit.js +41 -0
  205. package/dist/components/page-kits/SuccessPageKit.d.ts +15 -0
  206. package/dist/components/page-kits/SuccessPageKit.js +146 -0
  207. package/dist/components/page-kits/TeamSettingsPageKit.d.ts +50 -0
  208. package/dist/components/page-kits/TeamSettingsPageKit.js +297 -0
  209. package/dist/components/page-kits/TwoFactorPageKit.d.ts +16 -0
  210. package/dist/components/page-kits/TwoFactorPageKit.js +156 -0
  211. package/dist/components/page-kits/VerifyEmailPageKit.d.ts +15 -0
  212. package/dist/components/page-kits/VerifyEmailPageKit.js +146 -0
  213. package/dist/components/page-kits/VoiceAgentsPageKit.d.ts +35 -0
  214. package/dist/components/page-kits/VoiceAgentsPageKit.js +250 -0
  215. package/dist/components/ui/Accordion.js +38 -38
  216. package/dist/components/ui/AgentMessageBubble.d.ts +20 -4
  217. package/dist/components/ui/AgentMessageBubble.js +39 -39
  218. package/dist/components/ui/AgentStatus.d.ts +1 -1
  219. package/dist/components/ui/AgentStatus.js +5 -10
  220. package/dist/components/ui/AgentTerminal.d.ts +4 -1
  221. package/dist/components/ui/AgentTerminal.js +3 -1
  222. package/dist/components/ui/AgentTimeline.d.ts +2 -2
  223. package/dist/components/ui/AgentTimeline.js +15 -6
  224. package/dist/components/ui/AnimatedDialog.js +38 -38
  225. package/dist/components/ui/AnimatedSheet.js +38 -38
  226. package/dist/components/ui/ApprovalCard.js +1 -1
  227. package/dist/components/ui/AudioWaveform.js +2 -76
  228. package/dist/components/ui/AvatarUpload.js +1 -1
  229. package/dist/components/ui/Breadcrumb.js +41 -143
  230. package/dist/components/ui/Calendar.js +38 -38
  231. package/dist/components/ui/Carousel.js +38 -38
  232. package/dist/components/ui/ChartCard.js +5 -38
  233. package/dist/components/ui/ChatActions.d.ts +14 -0
  234. package/dist/components/ui/ChatActions.js +52 -0
  235. package/dist/components/ui/ChatBranch.d.ts +18 -0
  236. package/dist/components/ui/ChatBranch.js +84 -0
  237. package/dist/components/ui/ChatChainOfThought.d.ts +25 -0
  238. package/dist/components/ui/ChatChainOfThought.js +99 -0
  239. package/dist/components/ui/ChatConfirmation.d.ts +37 -0
  240. package/dist/components/ui/ChatConfirmation.js +115 -0
  241. package/dist/components/ui/ChatGreeting.d.ts +18 -0
  242. package/dist/components/ui/ChatGreeting.js +80 -0
  243. package/dist/components/ui/ChatMessage.d.ts +40 -0
  244. package/dist/components/ui/ChatMessage.js +96 -0
  245. package/dist/components/ui/ChatPlan.d.ts +29 -0
  246. package/dist/components/ui/ChatPlan.js +86 -0
  247. package/dist/components/ui/ChatPromptInput.d.ts +32 -0
  248. package/dist/components/ui/ChatPromptInput.js +193 -0
  249. package/dist/components/ui/ChatPromptInputAttachments.d.ts +9 -0
  250. package/dist/components/ui/ChatPromptInputAttachments.js +145 -0
  251. package/dist/components/ui/ChatQueue.d.ts +32 -0
  252. package/dist/components/ui/ChatQueue.js +93 -0
  253. package/dist/components/ui/ChatReasoning.d.ts +20 -0
  254. package/dist/components/ui/ChatReasoning.js +91 -0
  255. package/dist/components/ui/ChatResponse.d.ts +14 -0
  256. package/dist/components/ui/ChatResponse.js +25 -0
  257. package/dist/components/ui/ChatShimmer.d.ts +23 -0
  258. package/dist/components/ui/ChatShimmer.js +6 -0
  259. package/dist/components/ui/ChatSources.d.ts +30 -0
  260. package/dist/components/ui/ChatSources.js +113 -0
  261. package/dist/components/ui/ChatSuggestion.d.ts +13 -0
  262. package/dist/components/ui/ChatSuggestion.js +41 -0
  263. package/dist/components/ui/ChatThinkingMessage.d.ts +12 -0
  264. package/dist/components/ui/ChatThinkingMessage.js +55 -0
  265. package/dist/components/ui/ChatToolCall.d.ts +41 -0
  266. package/dist/components/ui/ChatToolCall.js +192 -0
  267. package/dist/components/ui/CheckStatus.d.ts +1 -1
  268. package/dist/components/ui/Checkbox.js +38 -38
  269. package/dist/components/ui/CheckoutForm.js +38 -38
  270. package/dist/components/ui/CheckoutFormDemo.js +43 -44
  271. package/dist/components/ui/Combobox.js +38 -38
  272. package/dist/components/ui/Command.js +38 -38
  273. package/dist/components/ui/ContextMenu.js +38 -38
  274. package/dist/components/ui/Conversation.d.ts +21 -0
  275. package/dist/components/ui/Conversation.js +196 -0
  276. package/dist/components/ui/ConversationThread.d.ts +8 -2
  277. package/dist/components/ui/ConversationThread.js +34 -16
  278. package/dist/components/ui/DataFreshness.js +2 -73
  279. package/dist/components/ui/DataTable.js +40 -40
  280. package/dist/components/ui/DatePicker.js +38 -38
  281. package/dist/components/ui/DateRangePicker.js +38 -38
  282. package/dist/components/ui/Dialog.js +38 -38
  283. package/dist/components/ui/DropdownMenu.js +39 -39
  284. package/dist/components/ui/FileUpload.js +38 -38
  285. package/dist/components/ui/InputOTP.js +38 -38
  286. package/dist/components/ui/KanbanBoard.js +2 -2
  287. package/dist/components/ui/LanguageSwitcher.js +38 -38
  288. package/dist/components/ui/Menubar.js +38 -38
  289. package/dist/components/ui/MouseEffect.js +1 -1
  290. package/dist/components/ui/NativeSelect.js +2 -18
  291. package/dist/components/ui/NavigationMenu.js +38 -38
  292. package/dist/components/ui/NotificationCenter.js +38 -38
  293. package/dist/components/ui/Pagination.js +42 -153
  294. package/dist/components/ui/RadioGroup.js +38 -38
  295. package/dist/components/ui/Resizable.js +38 -38
  296. package/dist/components/ui/SearchCommand.js +38 -38
  297. package/dist/components/ui/Select.js +38 -38
  298. package/dist/components/ui/SettingsModal.js +38 -38
  299. package/dist/components/ui/ShaderBackground.js +2 -2
  300. package/dist/components/ui/Sheet.js +38 -38
  301. package/dist/components/ui/Sidebar.js +41 -41
  302. package/dist/components/ui/StyleToggle.js +1 -1
  303. package/dist/components/ui/TagInput.js +38 -38
  304. package/dist/components/ui/ThemeToggle.js +39 -39
  305. package/dist/components/ui/ThinkingIndicator.d.ts +3 -1
  306. package/dist/components/ui/ThinkingIndicator.js +2 -1
  307. package/dist/components/ui/Toast.js +38 -38
  308. package/dist/components/ui/Toaster.js +38 -38
  309. package/dist/components/ui/ToolCallCard.d.ts +1 -1
  310. package/dist/components/ui/ToolCallCard.js +5 -1
  311. package/dist/components/ui/TreeView.js +38 -38
  312. package/dist/components/ui/charts/index.js +1 -1
  313. package/dist/components/ui/icons/index.js +38 -38
  314. package/dist/components/ui/text-effects/index.js +2 -2
  315. package/dist/hooks/use-scroll-to-bottom.d.ts +13 -0
  316. package/dist/hooks/use-scroll-to-bottom.js +2 -0
  317. package/dist/hooks/use-shader-preset.js +2 -2
  318. package/dist/index.js +43 -43
  319. package/dist/internal/local-image-assets.d.ts +12 -0
  320. package/dist/lib/shader-presets.js +1 -1
  321. package/dist/lib/tokens.config.d.ts +19 -0
  322. package/dist/messages/en.js +1 -1
  323. package/dist/messages/it.js +1 -1
  324. package/dist/test/PublicSeedTestProvider.js +2 -2
  325. package/dist/test/simulate-ime-composition.d.ts +54 -0
  326. package/dist/test/simulate-ime-composition.js +55 -0
  327. package/eslint-rules/nadicode/config.js +2 -0
  328. package/eslint-rules/nadicode/index.js +4 -0
  329. package/eslint-rules/nadicode/rules/no-deprecated-ds-import.js +77 -0
  330. package/eslint-rules/nadicode/rules/no-forbidden-page-kit-import.js +99 -0
  331. package/eslint-rules/nadicode/rules/no-unregistered-glass.js +2 -0
  332. package/package.json +895 -686
  333. package/scripts/ds-check.mjs +102 -73
  334. package/src/lib/tokens.config.js +63 -41
  335. package/dist/chunk-MLUSJTS2.js +0 -107
  336. package/dist/{chunk-5DKCZWC6.js → chunk-CQEUNASC.js} +1 -1
  337. package/dist/{chunk-4HRVRW2X.js → chunk-J2DCQDXO.js} +2 -2
  338. package/dist/{chunk-6MFAZU4B.js → chunk-RGE5OQMZ.js} +1 -1
  339. package/dist/{chunk-PJNHVPHF.js → chunk-TYP2MR3Q.js} +1 -1
package/dist/catalog.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
- "version": "2.0.6",
3
- "generatedAt": "2026-03-22T23:15:36.457Z",
2
+ "schemaVersion": "1.1.0",
3
+ "version": "2.0.8",
4
+ "generatedAt": "2026-03-26T09:55:14.398Z",
4
5
  "components": {
5
6
  "Accordion": {
6
7
  "file": "src/components/ui/Accordion.tsx",
@@ -46,10 +47,18 @@
46
47
  "role": {
47
48
  "options": [
48
49
  "user",
50
+ "assistant",
49
51
  "agent",
50
52
  "system"
51
53
  ],
52
- "default": "agent"
54
+ "default": "assistant"
55
+ },
56
+ "status": {
57
+ "options": [
58
+ "default",
59
+ "error"
60
+ ],
61
+ "default": "default"
53
62
  }
54
63
  },
55
64
  "notes": "Chat bubble with role-based styling"
@@ -580,6 +589,251 @@
580
589
  "variants": {},
581
590
  "notes": "Card wrapper for chart display with title and description"
582
591
  },
592
+ "ChatActions": {
593
+ "file": "src/components/ui/ChatActions.tsx",
594
+ "exportPath": "./chat-actions",
595
+ "tier": 2,
596
+ "category": "Agentic UI",
597
+ "lib": null,
598
+ "subComponents": [
599
+ "ChatAction"
600
+ ],
601
+ "variants": {},
602
+ "notes": "Quick-action buttons for chat messages"
603
+ },
604
+ "ChatBranch": {
605
+ "file": "src/components/ui/ChatBranch.tsx",
606
+ "exportPath": "./chat-branch",
607
+ "tier": 2,
608
+ "category": "Agentic UI",
609
+ "lib": null,
610
+ "subComponents": [
611
+ "ChatBranchPrevious",
612
+ "ChatBranchNext",
613
+ "ChatBranchCount"
614
+ ],
615
+ "variants": {},
616
+ "notes": "Conversation branching and fork navigation"
617
+ },
618
+ "ChatChainOfThought": {
619
+ "file": "src/components/ui/ChatChainOfThought.tsx",
620
+ "exportPath": "./chat-chain-of-thought",
621
+ "tier": 2,
622
+ "category": "Agentic UI",
623
+ "lib": null,
624
+ "subComponents": [
625
+ "ChatChainOfThoughtTrigger",
626
+ "ChatChainOfThoughtContent",
627
+ "ChatChainOfThoughtStep"
628
+ ],
629
+ "variants": {},
630
+ "notes": "Step-by-step reasoning display"
631
+ },
632
+ "ChatConfirmation": {
633
+ "file": "src/components/ui/ChatConfirmation.tsx",
634
+ "exportPath": "./chat-confirmation",
635
+ "tier": 2,
636
+ "category": "Agentic UI",
637
+ "lib": null,
638
+ "subComponents": [
639
+ "ChatConfirmationTitle",
640
+ "ChatConfirmationDescription",
641
+ "ChatConfirmationActions",
642
+ "ChatConfirmationPending",
643
+ "ChatConfirmationApproved",
644
+ "ChatConfirmationRejected"
645
+ ],
646
+ "variants": {},
647
+ "notes": "Action confirmation dialog in chat"
648
+ },
649
+ "ChatGreeting": {
650
+ "file": "src/components/ui/ChatGreeting.tsx",
651
+ "exportPath": "./chat-greeting",
652
+ "tier": 2,
653
+ "category": "Agentic UI",
654
+ "lib": null,
655
+ "subComponents": [],
656
+ "variants": {},
657
+ "notes": "Welcome greeting for chat sessions"
658
+ },
659
+ "ChatMessage": {
660
+ "file": "src/components/ui/ChatMessage.tsx",
661
+ "exportPath": "./chat-message",
662
+ "tier": 2,
663
+ "category": "Agentic UI",
664
+ "lib": null,
665
+ "subComponents": [
666
+ "ChatMessageContent",
667
+ "ChatMessageAvatar"
668
+ ],
669
+ "variants": {
670
+ "role": {
671
+ "options": [
672
+ "user",
673
+ "assistant",
674
+ "system"
675
+ ],
676
+ "default": "assistant"
677
+ }
678
+ },
679
+ "notes": "Core chat message with avatar, content, actions"
680
+ },
681
+ "ChatPlan": {
682
+ "file": "src/components/ui/ChatPlan.tsx",
683
+ "exportPath": "./chat-plan",
684
+ "tier": 2,
685
+ "category": "Agentic UI",
686
+ "lib": null,
687
+ "subComponents": [
688
+ "ChatPlanHeader",
689
+ "ChatPlanTitle",
690
+ "ChatPlanDescription",
691
+ "ChatPlanTrigger",
692
+ "ChatPlanContent"
693
+ ],
694
+ "variants": {},
695
+ "notes": "Collapsible plan card with streaming title"
696
+ },
697
+ "ChatPromptInput": {
698
+ "file": "src/components/ui/ChatPromptInput.tsx",
699
+ "exportPath": "./chat-prompt-input",
700
+ "tier": 2,
701
+ "category": "Agentic UI",
702
+ "lib": null,
703
+ "subComponents": [
704
+ "ChatPromptInputTextarea",
705
+ "ChatPromptInputToolbar",
706
+ "ChatPromptInputActions",
707
+ "ChatPromptInputSubmit"
708
+ ],
709
+ "variants": {},
710
+ "notes": "Chat text input with keyboard handling"
711
+ },
712
+ "ChatPromptInputAttachments": {
713
+ "file": "src/components/ui/ChatPromptInputAttachments.tsx",
714
+ "exportPath": "./chat-prompt-input-attachments",
715
+ "tier": 2,
716
+ "category": "Agentic UI",
717
+ "lib": null,
718
+ "subComponents": [],
719
+ "variants": {},
720
+ "notes": "File attachment support for chat input"
721
+ },
722
+ "ChatQueue": {
723
+ "file": "src/components/ui/ChatQueue.tsx",
724
+ "exportPath": "./chat-queue",
725
+ "tier": 2,
726
+ "category": "Agentic UI",
727
+ "lib": null,
728
+ "subComponents": [
729
+ "ChatQueueSection",
730
+ "ChatQueueSectionTrigger",
731
+ "ChatQueueSectionContent",
732
+ "ChatQueueItem",
733
+ "ChatQueueItemIndicator"
734
+ ],
735
+ "variants": {},
736
+ "notes": "Task queue with collapsible sections"
737
+ },
738
+ "ChatReasoning": {
739
+ "file": "src/components/ui/ChatReasoning.tsx",
740
+ "exportPath": "./chat-reasoning",
741
+ "tier": 2,
742
+ "category": "Agentic UI",
743
+ "lib": null,
744
+ "subComponents": [
745
+ "ChatReasoningTrigger",
746
+ "ChatReasoningContent"
747
+ ],
748
+ "variants": {},
749
+ "notes": "AI reasoning display with auto-close"
750
+ },
751
+ "ChatResponse": {
752
+ "file": "src/components/ui/ChatResponse.tsx",
753
+ "exportPath": "./chat-response",
754
+ "tier": 2,
755
+ "category": "Agentic UI",
756
+ "lib": null,
757
+ "subComponents": [],
758
+ "variants": {},
759
+ "notes": "Streaming markdown response renderer"
760
+ },
761
+ "ChatShimmer": {
762
+ "file": "src/components/ui/ChatShimmer.tsx",
763
+ "exportPath": "./chat-shimmer",
764
+ "tier": 2,
765
+ "category": "Agentic UI",
766
+ "lib": null,
767
+ "subComponents": [],
768
+ "variants": {},
769
+ "notes": "Loading shimmer placeholder for chat"
770
+ },
771
+ "ChatSources": {
772
+ "file": "src/components/ui/ChatSources.tsx",
773
+ "exportPath": "./chat-sources",
774
+ "tier": 2,
775
+ "category": "Agentic UI",
776
+ "lib": null,
777
+ "subComponents": [
778
+ "ChatSourcesTrigger",
779
+ "ChatSourcesContent",
780
+ "ChatSource",
781
+ "ChatInlineCitation"
782
+ ],
783
+ "variants": {},
784
+ "notes": "Source citations panel with inline citation"
785
+ },
786
+ "ChatSuggestion": {
787
+ "file": "src/components/ui/ChatSuggestion.tsx",
788
+ "exportPath": "./chat-suggestion",
789
+ "tier": 2,
790
+ "category": "Agentic UI",
791
+ "lib": null,
792
+ "subComponents": [
793
+ "ChatSuggestions"
794
+ ],
795
+ "variants": {},
796
+ "notes": "Suggested follow-up prompt chips"
797
+ },
798
+ "ChatThinkingMessage": {
799
+ "file": "src/components/ui/ChatThinkingMessage.tsx",
800
+ "exportPath": "./chat-thinking-message",
801
+ "tier": 2,
802
+ "category": "Agentic UI",
803
+ "lib": null,
804
+ "subComponents": [],
805
+ "variants": {},
806
+ "notes": "Animated thinking state message"
807
+ },
808
+ "ChatToolCall": {
809
+ "file": "src/components/ui/ChatToolCall.tsx",
810
+ "exportPath": "./chat-tool-call",
811
+ "tier": 2,
812
+ "category": "Agentic UI",
813
+ "lib": null,
814
+ "subComponents": [
815
+ "ChatToolCallInput",
816
+ "ChatToolCallOutput",
817
+ "ChatToolCallStatus",
818
+ "ChatToolCallHeader",
819
+ "ChatToolCallContent"
820
+ ],
821
+ "variants": {
822
+ "state": {
823
+ "options": [
824
+ "input-streaming",
825
+ "input-available",
826
+ "approval-requested",
827
+ "approval-responded",
828
+ "output-available",
829
+ "output-error",
830
+ "output-denied"
831
+ ],
832
+ "default": "input-streaming"
833
+ }
834
+ },
835
+ "notes": "Tool call lifecycle wrapper with state management"
836
+ },
583
837
  "CheckStatus": {
584
838
  "file": "src/components/ui/CheckStatus.tsx",
585
839
  "exportPath": "./check-status",
@@ -620,16 +874,6 @@
620
874
  "variants": {},
621
875
  "notes": "Stripe Elements checkout form"
622
876
  },
623
- "CheckoutFormDemo": {
624
- "file": "src/components/ui/CheckoutFormDemo.tsx",
625
- "exportPath": "./checkout-form-demo",
626
- "tier": 2,
627
- "category": "Form Controls",
628
- "lib": "@stripe/react-stripe-js",
629
- "subComponents": [],
630
- "variants": {},
631
- "notes": "Demo checkout with pre-wired state"
632
- },
633
877
  "CodeDiffViewer": {
634
878
  "file": "src/components/ui/CodeDiffViewer.tsx",
635
879
  "exportPath": "./code-diff-viewer",
@@ -736,6 +980,19 @@
736
980
  },
737
981
  "notes": "Context window usage visualization"
738
982
  },
983
+ "Conversation": {
984
+ "file": "src/components/ui/Conversation.tsx",
985
+ "exportPath": "./conversation",
986
+ "tier": 2,
987
+ "category": "Agentic UI",
988
+ "lib": null,
989
+ "subComponents": [
990
+ "ConversationContent",
991
+ "ConversationScrollButton"
992
+ ],
993
+ "variants": {},
994
+ "notes": "Scroll-aware conversation container with auto-scroll"
995
+ },
739
996
  "ConversationThread": {
740
997
  "file": "src/components/ui/ConversationThread.tsx",
741
998
  "exportPath": "./conversation-thread",
@@ -756,6 +1013,7 @@
756
1013
  "options": [
757
1014
  "user",
758
1015
  "assistant",
1016
+ "agent",
759
1017
  "system"
760
1018
  ],
761
1019
  "default": "user"
@@ -2024,7 +2282,10 @@
2024
2282
  "pending",
2025
2283
  "running",
2026
2284
  "complete",
2027
- "error"
2285
+ "error",
2286
+ "approval-requested",
2287
+ "approval-responded",
2288
+ "output-denied"
2028
2289
  ],
2029
2290
  "default": "pending"
2030
2291
  }
@@ -2367,7 +2628,46 @@
2367
2628
  "onBackToLogin",
2368
2629
  "title",
2369
2630
  "description"
2370
- ]
2631
+ ],
2632
+ "propsSchema": {
2633
+ "kind": "object",
2634
+ "noDataProps": false,
2635
+ "required": [],
2636
+ "optional": [
2637
+ "reason",
2638
+ "unlockMinutes",
2639
+ "onContactSupport",
2640
+ "onBackToLogin",
2641
+ "title",
2642
+ "description"
2643
+ ],
2644
+ "properties": {
2645
+ "reason": {
2646
+ "required": false,
2647
+ "type": "\"too_many_attempts\" | \"suspicious_activity\" | \"admin\""
2648
+ },
2649
+ "unlockMinutes": {
2650
+ "required": false,
2651
+ "type": "number"
2652
+ },
2653
+ "onContactSupport": {
2654
+ "required": false,
2655
+ "type": "() => void"
2656
+ },
2657
+ "onBackToLogin": {
2658
+ "required": false,
2659
+ "type": "() => void"
2660
+ },
2661
+ "title": {
2662
+ "required": false,
2663
+ "type": "string"
2664
+ },
2665
+ "description": {
2666
+ "required": false,
2667
+ "type": "string"
2668
+ }
2669
+ }
2670
+ }
2371
2671
  },
2372
2672
  "ActivityFeedBlock": {
2373
2673
  "file": "src/components/blocks/ActivityFeedBlock.tsx",
@@ -2381,7 +2681,26 @@
2381
2681
  "keyProps": [
2382
2682
  "activities",
2383
2683
  "title"
2384
- ]
2684
+ ],
2685
+ "propsSchema": {
2686
+ "kind": "object",
2687
+ "noDataProps": false,
2688
+ "required": [],
2689
+ "optional": [
2690
+ "activities",
2691
+ "title"
2692
+ ],
2693
+ "properties": {
2694
+ "activities": {
2695
+ "required": false,
2696
+ "type": "Activity[]"
2697
+ },
2698
+ "title": {
2699
+ "required": false,
2700
+ "type": "string"
2701
+ }
2702
+ }
2703
+ }
2385
2704
  },
2386
2705
  "AgentConversationBlock": {
2387
2706
  "file": "src/components/blocks/AgentConversationBlock.tsx",
@@ -2392,7 +2711,23 @@
2392
2711
  "subComponents": [],
2393
2712
  "variants": {},
2394
2713
  "notes": "Agent conversation UI (messages, tool calls, thinking)",
2395
- "keyProps": []
2714
+ "keyProps": [
2715
+ "messages"
2716
+ ],
2717
+ "propsSchema": {
2718
+ "kind": "object",
2719
+ "noDataProps": false,
2720
+ "required": [
2721
+ "messages"
2722
+ ],
2723
+ "optional": [],
2724
+ "properties": {
2725
+ "messages": {
2726
+ "required": true,
2727
+ "type": "ConversationMessage[]"
2728
+ }
2729
+ }
2730
+ }
2396
2731
  },
2397
2732
  "AgentProfileGridBlock": {
2398
2733
  "file": "src/components/blocks/AgentProfileGridBlock.tsx",
@@ -2408,7 +2743,36 @@
2408
2743
  "description",
2409
2744
  "agents",
2410
2745
  "columns"
2411
- ]
2746
+ ],
2747
+ "propsSchema": {
2748
+ "kind": "object",
2749
+ "noDataProps": false,
2750
+ "required": [],
2751
+ "optional": [
2752
+ "title",
2753
+ "description",
2754
+ "agents",
2755
+ "columns"
2756
+ ],
2757
+ "properties": {
2758
+ "title": {
2759
+ "required": false,
2760
+ "type": "string"
2761
+ },
2762
+ "description": {
2763
+ "required": false,
2764
+ "type": "string"
2765
+ },
2766
+ "agents": {
2767
+ "required": false,
2768
+ "type": "AgentProfile[]"
2769
+ },
2770
+ "columns": {
2771
+ "required": false,
2772
+ "type": "2 | 3 | 4"
2773
+ }
2774
+ }
2775
+ }
2412
2776
  },
2413
2777
  "AgentRunOverviewBlock": {
2414
2778
  "file": "src/components/blocks/AgentRunOverviewBlock.tsx",
@@ -2419,7 +2783,71 @@
2419
2783
  "subComponents": [],
2420
2784
  "variants": {},
2421
2785
  "notes": "Agent run summary with status, duration, and output",
2422
- "keyProps": []
2786
+ "keyProps": [
2787
+ "title",
2788
+ "description",
2789
+ "teamTitle",
2790
+ "metricsTitle",
2791
+ "contextTitle",
2792
+ "workflow",
2793
+ "agents",
2794
+ "metrics",
2795
+ "context"
2796
+ ],
2797
+ "propsSchema": {
2798
+ "kind": "object",
2799
+ "noDataProps": false,
2800
+ "required": [],
2801
+ "optional": [
2802
+ "title",
2803
+ "description",
2804
+ "teamTitle",
2805
+ "metricsTitle",
2806
+ "contextTitle",
2807
+ "workflow",
2808
+ "agents",
2809
+ "metrics",
2810
+ "context"
2811
+ ],
2812
+ "properties": {
2813
+ "title": {
2814
+ "required": false,
2815
+ "type": "string"
2816
+ },
2817
+ "description": {
2818
+ "required": false,
2819
+ "type": "string"
2820
+ },
2821
+ "teamTitle": {
2822
+ "required": false,
2823
+ "type": "string"
2824
+ },
2825
+ "metricsTitle": {
2826
+ "required": false,
2827
+ "type": "string"
2828
+ },
2829
+ "contextTitle": {
2830
+ "required": false,
2831
+ "type": "string"
2832
+ },
2833
+ "workflow": {
2834
+ "required": false,
2835
+ "type": "AgentRunOverviewWorkflow"
2836
+ },
2837
+ "agents": {
2838
+ "required": false,
2839
+ "type": "AgentTeamPanelProps['agents']"
2840
+ },
2841
+ "metrics": {
2842
+ "required": false,
2843
+ "type": "Metric[]"
2844
+ },
2845
+ "context": {
2846
+ "required": false,
2847
+ "type": "AgentRunOverviewContext"
2848
+ }
2849
+ }
2850
+ }
2423
2851
  },
2424
2852
  "AgentWorkbenchBlock": {
2425
2853
  "file": "src/components/blocks/AgentWorkbenchBlock.tsx",
@@ -2430,7 +2858,77 @@
2430
2858
  "subComponents": [],
2431
2859
  "variants": {},
2432
2860
  "notes": "Agent workbench layout with tool panels and conversation",
2433
- "keyProps": []
2861
+ "keyProps": [
2862
+ "title",
2863
+ "description",
2864
+ "threadTitle",
2865
+ "workTitle",
2866
+ "defaultWorkTab",
2867
+ "messages",
2868
+ "artifacts",
2869
+ "diffs",
2870
+ "logs",
2871
+ "composer"
2872
+ ],
2873
+ "propsSchema": {
2874
+ "kind": "object",
2875
+ "noDataProps": false,
2876
+ "required": [],
2877
+ "optional": [
2878
+ "title",
2879
+ "description",
2880
+ "threadTitle",
2881
+ "workTitle",
2882
+ "defaultWorkTab",
2883
+ "messages",
2884
+ "artifacts",
2885
+ "diffs",
2886
+ "logs",
2887
+ "composer"
2888
+ ],
2889
+ "properties": {
2890
+ "title": {
2891
+ "required": false,
2892
+ "type": "string"
2893
+ },
2894
+ "description": {
2895
+ "required": false,
2896
+ "type": "string"
2897
+ },
2898
+ "threadTitle": {
2899
+ "required": false,
2900
+ "type": "string"
2901
+ },
2902
+ "workTitle": {
2903
+ "required": false,
2904
+ "type": "string"
2905
+ },
2906
+ "defaultWorkTab": {
2907
+ "required": false,
2908
+ "type": "'artifacts' | 'diffs' | 'logs'"
2909
+ },
2910
+ "messages": {
2911
+ "required": false,
2912
+ "type": "AgentWorkbenchMessage[]"
2913
+ },
2914
+ "artifacts": {
2915
+ "required": false,
2916
+ "type": "AgentWorkbenchArtifact[]"
2917
+ },
2918
+ "diffs": {
2919
+ "required": false,
2920
+ "type": "AgentWorkbenchDiff[]"
2921
+ },
2922
+ "logs": {
2923
+ "required": false,
2924
+ "type": "TerminalLine[]"
2925
+ },
2926
+ "composer": {
2927
+ "required": false,
2928
+ "type": "AgentWorkbenchComposer"
2929
+ }
2930
+ }
2931
+ }
2434
2932
  },
2435
2933
  "AudioVisualizerBlock": {
2436
2934
  "file": "src/components/blocks/AudioVisualizerBlock.tsx",
@@ -2438,12 +2936,32 @@
2438
2936
  "tier": 2,
2439
2937
  "category": "Content & Media",
2440
2938
  "lib": null,
2441
- "subComponents": [
2442
- "AudioVisualizer"
2443
- ],
2939
+ "subComponents": [],
2444
2940
  "variants": {},
2445
2941
  "notes": "Audio visualization display",
2446
- "keyProps": []
2942
+ "keyProps": [
2943
+ "bars",
2944
+ "isPlaying"
2945
+ ],
2946
+ "propsSchema": {
2947
+ "kind": "object",
2948
+ "noDataProps": false,
2949
+ "required": [],
2950
+ "optional": [
2951
+ "bars",
2952
+ "isPlaying"
2953
+ ],
2954
+ "properties": {
2955
+ "bars": {
2956
+ "required": false,
2957
+ "type": "number"
2958
+ },
2959
+ "isPlaying": {
2960
+ "required": false,
2961
+ "type": "boolean"
2962
+ }
2963
+ }
2964
+ }
2447
2965
  },
2448
2966
  "AuthLayout": {
2449
2967
  "file": "src/components/blocks/AuthLayout.tsx",
@@ -2460,7 +2978,41 @@
2460
2978
  "error",
2461
2979
  "googleAction",
2462
2980
  "labels"
2463
- ]
2981
+ ],
2982
+ "propsSchema": {
2983
+ "kind": "object",
2984
+ "noDataProps": false,
2985
+ "required": [],
2986
+ "optional": [
2987
+ "mode",
2988
+ "action",
2989
+ "error",
2990
+ "googleAction",
2991
+ "labels"
2992
+ ],
2993
+ "properties": {
2994
+ "mode": {
2995
+ "required": false,
2996
+ "type": "\"login\" | \"signup\""
2997
+ },
2998
+ "action": {
2999
+ "required": false,
3000
+ "type": "(formData: FormData) => void | Promise<void>"
3001
+ },
3002
+ "error": {
3003
+ "required": false,
3004
+ "type": "string | null"
3005
+ },
3006
+ "googleAction": {
3007
+ "required": false,
3008
+ "type": "(formData: FormData) => void | Promise<void>"
3009
+ },
3010
+ "labels": {
3011
+ "required": false,
3012
+ "type": "Partial<typeof defaultLabels>"
3013
+ }
3014
+ }
3015
+ }
2464
3016
  },
2465
3017
  "AuthSuccessBlock": {
2466
3018
  "file": "src/components/blocks/AuthSuccessBlock.tsx",
@@ -2478,7 +3030,47 @@
2478
3030
  "buttonText",
2479
3031
  "onContinue",
2480
3032
  "autoRedirectSeconds"
2481
- ]
3033
+ ],
3034
+ "propsSchema": {
3035
+ "kind": "object",
3036
+ "noDataProps": false,
3037
+ "required": [
3038
+ "icon",
3039
+ "title",
3040
+ "description"
3041
+ ],
3042
+ "optional": [
3043
+ "buttonText",
3044
+ "onContinue",
3045
+ "autoRedirectSeconds"
3046
+ ],
3047
+ "properties": {
3048
+ "icon": {
3049
+ "required": true,
3050
+ "type": "React.ReactNode"
3051
+ },
3052
+ "title": {
3053
+ "required": true,
3054
+ "type": "string"
3055
+ },
3056
+ "description": {
3057
+ "required": true,
3058
+ "type": "string"
3059
+ },
3060
+ "buttonText": {
3061
+ "required": false,
3062
+ "type": "string"
3063
+ },
3064
+ "onContinue": {
3065
+ "required": false,
3066
+ "type": "() => void"
3067
+ },
3068
+ "autoRedirectSeconds": {
3069
+ "required": false,
3070
+ "type": "number"
3071
+ }
3072
+ }
3073
+ }
2482
3074
  },
2483
3075
  "BannerBlock": {
2484
3076
  "file": "src/components/blocks/BannerBlock.tsx",
@@ -2493,7 +3085,31 @@
2493
3085
  "variant",
2494
3086
  "dismissible",
2495
3087
  "onDismiss"
2496
- ]
3088
+ ],
3089
+ "propsSchema": {
3090
+ "kind": "object",
3091
+ "noDataProps": false,
3092
+ "required": [],
3093
+ "optional": [
3094
+ "variant",
3095
+ "dismissible",
3096
+ "onDismiss"
3097
+ ],
3098
+ "properties": {
3099
+ "variant": {
3100
+ "required": false,
3101
+ "type": "\"info\" | \"warning\" | \"accent\""
3102
+ },
3103
+ "dismissible": {
3104
+ "required": false,
3105
+ "type": "boolean"
3106
+ },
3107
+ "onDismiss": {
3108
+ "required": false,
3109
+ "type": "() => void"
3110
+ }
3111
+ }
3112
+ }
2497
3113
  },
2498
3114
  "BarChartBlock": {
2499
3115
  "file": "src/components/blocks/BarChartBlock.tsx",
@@ -2501,12 +3117,44 @@
2501
3117
  "tier": 2,
2502
3118
  "category": "Dashboard & Data",
2503
3119
  "lib": null,
2504
- "subComponents": [
2505
- "BarChart"
2506
- ],
3120
+ "subComponents": [],
2507
3121
  "variants": {},
2508
3122
  "notes": "Pre-configured bar chart",
2509
- "keyProps": []
3123
+ "keyProps": [
3124
+ "data",
3125
+ "config",
3126
+ "title",
3127
+ "description"
3128
+ ],
3129
+ "propsSchema": {
3130
+ "kind": "object",
3131
+ "noDataProps": false,
3132
+ "required": [],
3133
+ "optional": [
3134
+ "data",
3135
+ "config",
3136
+ "title",
3137
+ "description"
3138
+ ],
3139
+ "properties": {
3140
+ "data": {
3141
+ "required": false,
3142
+ "type": "BarChartDataItem[]"
3143
+ },
3144
+ "config": {
3145
+ "required": false,
3146
+ "type": "ChartConfig"
3147
+ },
3148
+ "title": {
3149
+ "required": false,
3150
+ "type": "string"
3151
+ },
3152
+ "description": {
3153
+ "required": false,
3154
+ "type": "string"
3155
+ }
3156
+ }
3157
+ }
2510
3158
  },
2511
3159
  "CallToActionBlock": {
2512
3160
  "file": "src/components/blocks/CallToActionBlock.tsx",
@@ -2514,12 +3162,44 @@
2514
3162
  "tier": 2,
2515
3163
  "category": "Marketing",
2516
3164
  "lib": null,
2517
- "subComponents": [
2518
- "CallToAction"
2519
- ],
3165
+ "subComponents": [],
2520
3166
  "variants": {},
2521
3167
  "notes": "Call-to-action section",
2522
- "keyProps": []
3168
+ "keyProps": [
3169
+ "title",
3170
+ "description",
3171
+ "primaryAction",
3172
+ "secondaryAction"
3173
+ ],
3174
+ "propsSchema": {
3175
+ "kind": "object",
3176
+ "noDataProps": false,
3177
+ "required": [],
3178
+ "optional": [
3179
+ "title",
3180
+ "description",
3181
+ "primaryAction",
3182
+ "secondaryAction"
3183
+ ],
3184
+ "properties": {
3185
+ "title": {
3186
+ "required": false,
3187
+ "type": "string"
3188
+ },
3189
+ "description": {
3190
+ "required": false,
3191
+ "type": "string"
3192
+ },
3193
+ "primaryAction": {
3194
+ "required": false,
3195
+ "type": "CallToActionAction"
3196
+ },
3197
+ "secondaryAction": {
3198
+ "required": false,
3199
+ "type": "CallToActionAction"
3200
+ }
3201
+ }
3202
+ }
2523
3203
  },
2524
3204
  "ChangelogBlock": {
2525
3205
  "file": "src/components/blocks/ChangelogBlock.tsx",
@@ -2533,7 +3213,26 @@
2533
3213
  "keyProps": [
2534
3214
  "entries",
2535
3215
  "title"
2536
- ]
3216
+ ],
3217
+ "propsSchema": {
3218
+ "kind": "object",
3219
+ "noDataProps": false,
3220
+ "required": [],
3221
+ "optional": [
3222
+ "entries",
3223
+ "title"
3224
+ ],
3225
+ "properties": {
3226
+ "entries": {
3227
+ "required": false,
3228
+ "type": "ChangelogEntry[]"
3229
+ },
3230
+ "title": {
3231
+ "required": false,
3232
+ "type": "string"
3233
+ }
3234
+ }
3235
+ }
2537
3236
  },
2538
3237
  "ChartBlock": {
2539
3238
  "file": "src/components/blocks/ChartBlock.tsx",
@@ -2549,7 +3248,36 @@
2549
3248
  "config",
2550
3249
  "title",
2551
3250
  "description"
2552
- ]
3251
+ ],
3252
+ "propsSchema": {
3253
+ "kind": "object",
3254
+ "noDataProps": false,
3255
+ "required": [],
3256
+ "optional": [
3257
+ "data",
3258
+ "config",
3259
+ "title",
3260
+ "description"
3261
+ ],
3262
+ "properties": {
3263
+ "data": {
3264
+ "required": false,
3265
+ "type": "ChartBlockDataItem[]"
3266
+ },
3267
+ "config": {
3268
+ "required": false,
3269
+ "type": "ChartConfig"
3270
+ },
3271
+ "title": {
3272
+ "required": false,
3273
+ "type": "string"
3274
+ },
3275
+ "description": {
3276
+ "required": false,
3277
+ "type": "string"
3278
+ }
3279
+ }
3280
+ }
2553
3281
  },
2554
3282
  "ChartCollectionBlock": {
2555
3283
  "file": "src/components/blocks/ChartCollectionBlock.tsx",
@@ -2560,7 +3288,14 @@
2560
3288
  "subComponents": [],
2561
3289
  "variants": {},
2562
3290
  "notes": "Multiple chart grid",
2563
- "keyProps": []
3291
+ "keyProps": [],
3292
+ "propsSchema": {
3293
+ "kind": "object",
3294
+ "noDataProps": true,
3295
+ "required": [],
3296
+ "optional": [],
3297
+ "properties": {}
3298
+ }
2564
3299
  },
2565
3300
  "ChatLayout": {
2566
3301
  "file": "src/components/blocks/ChatLayout.tsx",
@@ -2576,7 +3311,36 @@
2576
3311
  "assistantName",
2577
3312
  "assistantStatus",
2578
3313
  "placeholder"
2579
- ]
3314
+ ],
3315
+ "propsSchema": {
3316
+ "kind": "object",
3317
+ "noDataProps": false,
3318
+ "required": [],
3319
+ "optional": [
3320
+ "initialMessages",
3321
+ "assistantName",
3322
+ "assistantStatus",
3323
+ "placeholder"
3324
+ ],
3325
+ "properties": {
3326
+ "initialMessages": {
3327
+ "required": false,
3328
+ "type": "Message[]"
3329
+ },
3330
+ "assistantName": {
3331
+ "required": false,
3332
+ "type": "string"
3333
+ },
3334
+ "assistantStatus": {
3335
+ "required": false,
3336
+ "type": "string"
3337
+ },
3338
+ "placeholder": {
3339
+ "required": false,
3340
+ "type": "string"
3341
+ }
3342
+ }
3343
+ }
2580
3344
  },
2581
3345
  "CodeBlock": {
2582
3346
  "file": "src/components/blocks/CodeBlock.tsx",
@@ -2587,7 +3351,36 @@
2587
3351
  "subComponents": [],
2588
3352
  "variants": {},
2589
3353
  "notes": "Syntax-highlighted code display",
2590
- "keyProps": []
3354
+ "keyProps": [
3355
+ "code",
3356
+ "language",
3357
+ "filename"
3358
+ ],
3359
+ "propsSchema": {
3360
+ "kind": "object",
3361
+ "noDataProps": false,
3362
+ "required": [
3363
+ "code"
3364
+ ],
3365
+ "optional": [
3366
+ "language",
3367
+ "filename"
3368
+ ],
3369
+ "properties": {
3370
+ "code": {
3371
+ "required": true,
3372
+ "type": "string"
3373
+ },
3374
+ "language": {
3375
+ "required": false,
3376
+ "type": "string"
3377
+ },
3378
+ "filename": {
3379
+ "required": false,
3380
+ "type": "string"
3381
+ }
3382
+ }
3383
+ }
2591
3384
  },
2592
3385
  "ComparisonBlock": {
2593
3386
  "file": "src/components/blocks/ComparisonBlock.tsx",
@@ -2602,7 +3395,31 @@
2602
3395
  "plans",
2603
3396
  "title",
2604
3397
  "description"
2605
- ]
3398
+ ],
3399
+ "propsSchema": {
3400
+ "kind": "object",
3401
+ "noDataProps": false,
3402
+ "required": [],
3403
+ "optional": [
3404
+ "plans",
3405
+ "title",
3406
+ "description"
3407
+ ],
3408
+ "properties": {
3409
+ "plans": {
3410
+ "required": false,
3411
+ "type": "ComparisonPlan[]"
3412
+ },
3413
+ "title": {
3414
+ "required": false,
3415
+ "type": "string"
3416
+ },
3417
+ "description": {
3418
+ "required": false,
3419
+ "type": "string"
3420
+ }
3421
+ }
3422
+ }
2606
3423
  },
2607
3424
  "ContactBlock": {
2608
3425
  "file": "src/components/blocks/ContactBlock.tsx",
@@ -2622,7 +3439,56 @@
2622
3439
  "messagePlaceholder",
2623
3440
  "successTitle",
2624
3441
  "submitLabel"
2625
- ]
3442
+ ],
3443
+ "propsSchema": {
3444
+ "kind": "object",
3445
+ "noDataProps": false,
3446
+ "required": [],
3447
+ "optional": [
3448
+ "onSubmit",
3449
+ "title",
3450
+ "description",
3451
+ "namePlaceholder",
3452
+ "emailPlaceholder",
3453
+ "messagePlaceholder",
3454
+ "successTitle",
3455
+ "submitLabel"
3456
+ ],
3457
+ "properties": {
3458
+ "onSubmit": {
3459
+ "required": false,
3460
+ "type": "(data: { name: string; email: string; message: string }) => void"
3461
+ },
3462
+ "title": {
3463
+ "required": false,
3464
+ "type": "string"
3465
+ },
3466
+ "description": {
3467
+ "required": false,
3468
+ "type": "string"
3469
+ },
3470
+ "namePlaceholder": {
3471
+ "required": false,
3472
+ "type": "string"
3473
+ },
3474
+ "emailPlaceholder": {
3475
+ "required": false,
3476
+ "type": "string"
3477
+ },
3478
+ "messagePlaceholder": {
3479
+ "required": false,
3480
+ "type": "string"
3481
+ },
3482
+ "successTitle": {
3483
+ "required": false,
3484
+ "type": "string"
3485
+ },
3486
+ "submitLabel": {
3487
+ "required": false,
3488
+ "type": "string"
3489
+ }
3490
+ }
3491
+ }
2626
3492
  },
2627
3493
  "CreateBlock": {
2628
3494
  "file": "src/components/blocks/CreateBlock.tsx",
@@ -2638,7 +3504,36 @@
2638
3504
  "description",
2639
3505
  "submitLabel",
2640
3506
  "onSubmit"
2641
- ]
3507
+ ],
3508
+ "propsSchema": {
3509
+ "kind": "object",
3510
+ "noDataProps": false,
3511
+ "required": [],
3512
+ "optional": [
3513
+ "title",
3514
+ "description",
3515
+ "submitLabel",
3516
+ "onSubmit"
3517
+ ],
3518
+ "properties": {
3519
+ "title": {
3520
+ "required": false,
3521
+ "type": "string"
3522
+ },
3523
+ "description": {
3524
+ "required": false,
3525
+ "type": "string"
3526
+ },
3527
+ "submitLabel": {
3528
+ "required": false,
3529
+ "type": "string"
3530
+ },
3531
+ "onSubmit": {
3532
+ "required": false,
3533
+ "type": "(data: ProfileFormValues) => void"
3534
+ }
3535
+ }
3536
+ }
2642
3537
  },
2643
3538
  "DataGridBlock": {
2644
3539
  "file": "src/components/blocks/DataGridBlock.tsx",
@@ -2654,7 +3549,36 @@
2654
3549
  "columns",
2655
3550
  "title",
2656
3551
  "description"
2657
- ]
3552
+ ],
3553
+ "propsSchema": {
3554
+ "kind": "object",
3555
+ "noDataProps": false,
3556
+ "required": [],
3557
+ "optional": [
3558
+ "data",
3559
+ "columns",
3560
+ "title",
3561
+ "description"
3562
+ ],
3563
+ "properties": {
3564
+ "data": {
3565
+ "required": false,
3566
+ "type": "Payment[]"
3567
+ },
3568
+ "columns": {
3569
+ "required": false,
3570
+ "type": "ColumnDef<Payment>[]"
3571
+ },
3572
+ "title": {
3573
+ "required": false,
3574
+ "type": "string"
3575
+ },
3576
+ "description": {
3577
+ "required": false,
3578
+ "type": "string"
3579
+ }
3580
+ }
3581
+ }
2658
3582
  },
2659
3583
  "DirectoryBlock": {
2660
3584
  "file": "src/components/blocks/DirectoryBlock.tsx",
@@ -2668,7 +3592,26 @@
2668
3592
  "keyProps": [
2669
3593
  "navItems",
2670
3594
  "projects"
2671
- ]
3595
+ ],
3596
+ "propsSchema": {
3597
+ "kind": "object",
3598
+ "noDataProps": false,
3599
+ "required": [],
3600
+ "optional": [
3601
+ "navItems",
3602
+ "projects"
3603
+ ],
3604
+ "properties": {
3605
+ "navItems": {
3606
+ "required": false,
3607
+ "type": "NavItem[]"
3608
+ },
3609
+ "projects": {
3610
+ "required": false,
3611
+ "type": "ProjectItem[]"
3612
+ }
3613
+ }
3614
+ }
2672
3615
  },
2673
3616
  "FAQBlock": {
2674
3617
  "file": "src/components/blocks/FAQBlock.tsx",
@@ -2683,7 +3626,31 @@
2683
3626
  "items",
2684
3627
  "title",
2685
3628
  "description"
2686
- ]
3629
+ ],
3630
+ "propsSchema": {
3631
+ "kind": "object",
3632
+ "noDataProps": false,
3633
+ "required": [],
3634
+ "optional": [
3635
+ "items",
3636
+ "title",
3637
+ "description"
3638
+ ],
3639
+ "properties": {
3640
+ "items": {
3641
+ "required": false,
3642
+ "type": "FAQItem[]"
3643
+ },
3644
+ "title": {
3645
+ "required": false,
3646
+ "type": "string"
3647
+ },
3648
+ "description": {
3649
+ "required": false,
3650
+ "type": "string"
3651
+ }
3652
+ }
3653
+ }
2687
3654
  },
2688
3655
  "FeatureBlock": {
2689
3656
  "file": "src/components/blocks/FeatureBlock.tsx",
@@ -2691,13 +3658,50 @@
2691
3658
  "tier": 2,
2692
3659
  "category": "Marketing",
2693
3660
  "lib": null,
2694
- "subComponents": [
2695
- "FeatureGrid",
2696
- "FeatureList"
2697
- ],
3661
+ "subComponents": [],
2698
3662
  "variants": {},
2699
3663
  "notes": "Single feature showcase",
2700
- "keyProps": []
3664
+ "keyProps": [
3665
+ "variant",
3666
+ "badge",
3667
+ "title",
3668
+ "description",
3669
+ "features"
3670
+ ],
3671
+ "propsSchema": {
3672
+ "kind": "object",
3673
+ "noDataProps": false,
3674
+ "required": [],
3675
+ "optional": [
3676
+ "variant",
3677
+ "badge",
3678
+ "title",
3679
+ "description",
3680
+ "features"
3681
+ ],
3682
+ "properties": {
3683
+ "variant": {
3684
+ "required": false,
3685
+ "type": "FeatureBlockVariant"
3686
+ },
3687
+ "badge": {
3688
+ "required": false,
3689
+ "type": "string"
3690
+ },
3691
+ "title": {
3692
+ "required": false,
3693
+ "type": "string"
3694
+ },
3695
+ "description": {
3696
+ "required": false,
3697
+ "type": "string"
3698
+ },
3699
+ "features": {
3700
+ "required": false,
3701
+ "type": "FeatureGridItem[] | FeatureListItem[]"
3702
+ }
3703
+ }
3704
+ }
2701
3705
  },
2702
3706
  "FeatureGridBlock": {
2703
3707
  "file": "src/components/blocks/FeatureGridBlock.tsx",
@@ -2705,12 +3709,38 @@
2705
3709
  "tier": 2,
2706
3710
  "category": "Marketing",
2707
3711
  "lib": null,
2708
- "subComponents": [
2709
- "Features"
2710
- ],
3712
+ "subComponents": [],
2711
3713
  "variants": {},
2712
3714
  "notes": "Multi-feature grid layout",
2713
- "keyProps": []
3715
+ "keyProps": [
3716
+ "title",
3717
+ "description",
3718
+ "features"
3719
+ ],
3720
+ "propsSchema": {
3721
+ "kind": "object",
3722
+ "noDataProps": false,
3723
+ "required": [],
3724
+ "optional": [
3725
+ "title",
3726
+ "description",
3727
+ "features"
3728
+ ],
3729
+ "properties": {
3730
+ "title": {
3731
+ "required": false,
3732
+ "type": "string"
3733
+ },
3734
+ "description": {
3735
+ "required": false,
3736
+ "type": "string"
3737
+ },
3738
+ "features": {
3739
+ "required": false,
3740
+ "type": "FeatureItem[]"
3741
+ }
3742
+ }
3743
+ }
2714
3744
  },
2715
3745
  "FooterBlock": {
2716
3746
  "file": "src/components/blocks/FooterBlock.tsx",
@@ -2718,12 +3748,56 @@
2718
3748
  "tier": 2,
2719
3749
  "category": "Navigation",
2720
3750
  "lib": null,
2721
- "subComponents": [
2722
- "Footer"
2723
- ],
3751
+ "subComponents": [],
2724
3752
  "variants": {},
2725
3753
  "notes": "Site footer with link columns",
2726
- "keyProps": []
3754
+ "keyProps": [
3755
+ "brandDescription",
3756
+ "newsletterPlaceholder",
3757
+ "productLinks",
3758
+ "companyLinks",
3759
+ "legalLinks",
3760
+ "socialIcons"
3761
+ ],
3762
+ "propsSchema": {
3763
+ "kind": "object",
3764
+ "noDataProps": false,
3765
+ "required": [],
3766
+ "optional": [
3767
+ "brandDescription",
3768
+ "newsletterPlaceholder",
3769
+ "productLinks",
3770
+ "companyLinks",
3771
+ "legalLinks",
3772
+ "socialIcons"
3773
+ ],
3774
+ "properties": {
3775
+ "brandDescription": {
3776
+ "required": false,
3777
+ "type": "string"
3778
+ },
3779
+ "newsletterPlaceholder": {
3780
+ "required": false,
3781
+ "type": "string"
3782
+ },
3783
+ "productLinks": {
3784
+ "required": false,
3785
+ "type": "NavLink[]"
3786
+ },
3787
+ "companyLinks": {
3788
+ "required": false,
3789
+ "type": "NavLink[]"
3790
+ },
3791
+ "legalLinks": {
3792
+ "required": false,
3793
+ "type": "NavLink[]"
3794
+ },
3795
+ "socialIcons": {
3796
+ "required": false,
3797
+ "type": "{ icon: ReactNode; label: string }[]"
3798
+ }
3799
+ }
3800
+ }
2727
3801
  },
2728
3802
  "GalleryBlock": {
2729
3803
  "file": "src/components/blocks/GalleryBlock.tsx",
@@ -2738,7 +3812,31 @@
2738
3812
  "images",
2739
3813
  "columns",
2740
3814
  "title"
2741
- ]
3815
+ ],
3816
+ "propsSchema": {
3817
+ "kind": "object",
3818
+ "noDataProps": false,
3819
+ "required": [],
3820
+ "optional": [
3821
+ "images",
3822
+ "columns",
3823
+ "title"
3824
+ ],
3825
+ "properties": {
3826
+ "images": {
3827
+ "required": false,
3828
+ "type": "GalleryImage[]"
3829
+ },
3830
+ "columns": {
3831
+ "required": false,
3832
+ "type": "number"
3833
+ },
3834
+ "title": {
3835
+ "required": false,
3836
+ "type": "string"
3837
+ }
3838
+ }
3839
+ }
2742
3840
  },
2743
3841
  "HeaderBlock": {
2744
3842
  "file": "src/components/blocks/HeaderBlock.tsx",
@@ -2746,12 +3844,50 @@
2746
3844
  "tier": 2,
2747
3845
  "category": "Navigation",
2748
3846
  "lib": null,
2749
- "subComponents": [
2750
- "HeroHeader"
2751
- ],
3847
+ "subComponents": [],
2752
3848
  "variants": {},
2753
3849
  "notes": "Site header with nav links",
2754
- "keyProps": []
3850
+ "keyProps": [
3851
+ "menuItems",
3852
+ "loginLabel",
3853
+ "signUpLabel",
3854
+ "loginHref",
3855
+ "signUpHref"
3856
+ ],
3857
+ "propsSchema": {
3858
+ "kind": "object",
3859
+ "noDataProps": false,
3860
+ "required": [],
3861
+ "optional": [
3862
+ "menuItems",
3863
+ "loginLabel",
3864
+ "signUpLabel",
3865
+ "loginHref",
3866
+ "signUpHref"
3867
+ ],
3868
+ "properties": {
3869
+ "menuItems": {
3870
+ "required": false,
3871
+ "type": "MenuItem[]"
3872
+ },
3873
+ "loginLabel": {
3874
+ "required": false,
3875
+ "type": "string"
3876
+ },
3877
+ "signUpLabel": {
3878
+ "required": false,
3879
+ "type": "string"
3880
+ },
3881
+ "loginHref": {
3882
+ "required": false,
3883
+ "type": "string"
3884
+ },
3885
+ "signUpHref": {
3886
+ "required": false,
3887
+ "type": "string"
3888
+ }
3889
+ }
3890
+ }
2755
3891
  },
2756
3892
  "HeatmapChartBlock": {
2757
3893
  "file": "src/components/blocks/HeatmapChartBlock.tsx",
@@ -2759,12 +3895,44 @@
2759
3895
  "tier": 2,
2760
3896
  "category": "Dashboard & Data",
2761
3897
  "lib": null,
2762
- "subComponents": [
2763
- "HeatmapBlock"
2764
- ],
3898
+ "subComponents": [],
2765
3899
  "variants": {},
2766
3900
  "notes": "Heatmap visualization",
2767
- "keyProps": []
3901
+ "keyProps": [
3902
+ "data",
3903
+ "config",
3904
+ "title",
3905
+ "description"
3906
+ ],
3907
+ "propsSchema": {
3908
+ "kind": "object",
3909
+ "noDataProps": false,
3910
+ "required": [],
3911
+ "optional": [
3912
+ "data",
3913
+ "config",
3914
+ "title",
3915
+ "description"
3916
+ ],
3917
+ "properties": {
3918
+ "data": {
3919
+ "required": false,
3920
+ "type": "HeatmapDataItem[]"
3921
+ },
3922
+ "config": {
3923
+ "required": false,
3924
+ "type": "ChartConfig"
3925
+ },
3926
+ "title": {
3927
+ "required": false,
3928
+ "type": "string"
3929
+ },
3930
+ "description": {
3931
+ "required": false,
3932
+ "type": "string"
3933
+ }
3934
+ }
3935
+ }
2768
3936
  },
2769
3937
  "HeroBlock": {
2770
3938
  "file": "src/components/blocks/HeroBlock.tsx",
@@ -2772,13 +3940,56 @@
2772
3940
  "tier": 2,
2773
3941
  "category": "Marketing",
2774
3942
  "lib": null,
2775
- "subComponents": [
2776
- "HeroCentered",
2777
- "HeroSplit"
2778
- ],
3943
+ "subComponents": [],
2779
3944
  "variants": {},
2780
3945
  "notes": "Full hero with gradient text",
2781
- "keyProps": []
3946
+ "keyProps": [
3947
+ "variant",
3948
+ "headline",
3949
+ "subheadline",
3950
+ "primaryAction",
3951
+ "secondaryAction",
3952
+ "announcement"
3953
+ ],
3954
+ "propsSchema": {
3955
+ "kind": "object",
3956
+ "noDataProps": false,
3957
+ "required": [],
3958
+ "optional": [
3959
+ "variant",
3960
+ "headline",
3961
+ "subheadline",
3962
+ "primaryAction",
3963
+ "secondaryAction",
3964
+ "announcement"
3965
+ ],
3966
+ "properties": {
3967
+ "variant": {
3968
+ "required": false,
3969
+ "type": "HeroBlockVariant"
3970
+ },
3971
+ "headline": {
3972
+ "required": false,
3973
+ "type": "string"
3974
+ },
3975
+ "subheadline": {
3976
+ "required": false,
3977
+ "type": "string"
3978
+ },
3979
+ "primaryAction": {
3980
+ "required": false,
3981
+ "type": "{ label: string onClick?: () => void }"
3982
+ },
3983
+ "secondaryAction": {
3984
+ "required": false,
3985
+ "type": "{ label: string onClick?: () => void }"
3986
+ },
3987
+ "announcement": {
3988
+ "required": false,
3989
+ "type": "{ label: string text: string href?: string }"
3990
+ }
3991
+ }
3992
+ }
2782
3993
  },
2783
3994
  "HeroSectionBlock": {
2784
3995
  "file": "src/components/blocks/HeroSectionBlock.tsx",
@@ -2786,12 +3997,50 @@
2786
3997
  "tier": 2,
2787
3998
  "category": "Marketing",
2788
3999
  "lib": null,
2789
- "subComponents": [
2790
- "HeroSection"
2791
- ],
4000
+ "subComponents": [],
2792
4001
  "variants": {},
2793
4002
  "notes": "Alternate hero layout",
2794
- "keyProps": []
4003
+ "keyProps": [
4004
+ "headline",
4005
+ "flipWords",
4006
+ "primaryAction",
4007
+ "secondaryAction",
4008
+ "logos"
4009
+ ],
4010
+ "propsSchema": {
4011
+ "kind": "object",
4012
+ "noDataProps": false,
4013
+ "required": [],
4014
+ "optional": [
4015
+ "headline",
4016
+ "flipWords",
4017
+ "primaryAction",
4018
+ "secondaryAction",
4019
+ "logos"
4020
+ ],
4021
+ "properties": {
4022
+ "headline": {
4023
+ "required": false,
4024
+ "type": "string"
4025
+ },
4026
+ "flipWords": {
4027
+ "required": false,
4028
+ "type": "string[]"
4029
+ },
4030
+ "primaryAction": {
4031
+ "required": false,
4032
+ "type": "HeroAction"
4033
+ },
4034
+ "secondaryAction": {
4035
+ "required": false,
4036
+ "type": "HeroAction"
4037
+ },
4038
+ "logos": {
4039
+ "required": false,
4040
+ "type": "HeroLogo[]"
4041
+ }
4042
+ }
4043
+ }
2795
4044
  },
2796
4045
  "IntegrationsBlock": {
2797
4046
  "file": "src/components/blocks/IntegrationsBlock.tsx",
@@ -2799,12 +4048,38 @@
2799
4048
  "tier": 2,
2800
4049
  "category": "Application",
2801
4050
  "lib": null,
2802
- "subComponents": [
2803
- "IntegrationsSection"
2804
- ],
4051
+ "subComponents": [],
2805
4052
  "variants": {},
2806
4053
  "notes": "Integration marketplace grid",
2807
- "keyProps": []
4054
+ "keyProps": [
4055
+ "title",
4056
+ "description",
4057
+ "integrations"
4058
+ ],
4059
+ "propsSchema": {
4060
+ "kind": "object",
4061
+ "noDataProps": false,
4062
+ "required": [],
4063
+ "optional": [
4064
+ "title",
4065
+ "description",
4066
+ "integrations"
4067
+ ],
4068
+ "properties": {
4069
+ "title": {
4070
+ "required": false,
4071
+ "type": "string"
4072
+ },
4073
+ "description": {
4074
+ "required": false,
4075
+ "type": "string"
4076
+ },
4077
+ "integrations": {
4078
+ "required": false,
4079
+ "type": "IntegrationItem[]"
4080
+ }
4081
+ }
4082
+ }
2808
4083
  },
2809
4084
  "InteractiveAreaChartBlock": {
2810
4085
  "file": "src/components/blocks/InteractiveAreaChartBlock.tsx",
@@ -2812,23 +4087,50 @@
2812
4087
  "tier": 2,
2813
4088
  "category": "Dashboard & Data",
2814
4089
  "lib": null,
2815
- "subComponents": [
2816
- "InteractiveAreaChart"
2817
- ],
2818
- "variants": {},
2819
- "notes": "Zoomable/interactive area chart",
2820
- "keyProps": []
2821
- },
2822
- "KanbanDemoBlock": {
2823
- "file": "src/components/blocks/KanbanDemoBlock.tsx",
2824
- "exportPath": "./kanban-demo-block",
2825
- "tier": 2,
2826
- "category": "Application",
2827
- "lib": null,
2828
4090
  "subComponents": [],
2829
4091
  "variants": {},
2830
- "notes": "Kanban board demo with sample data",
2831
- "keyProps": []
4092
+ "notes": "Zoomable/interactive area chart",
4093
+ "keyProps": [
4094
+ "data",
4095
+ "config",
4096
+ "title",
4097
+ "description",
4098
+ "timeRanges"
4099
+ ],
4100
+ "propsSchema": {
4101
+ "kind": "object",
4102
+ "noDataProps": false,
4103
+ "required": [],
4104
+ "optional": [
4105
+ "data",
4106
+ "config",
4107
+ "title",
4108
+ "description",
4109
+ "timeRanges"
4110
+ ],
4111
+ "properties": {
4112
+ "data": {
4113
+ "required": false,
4114
+ "type": "AreaChartDataItem[]"
4115
+ },
4116
+ "config": {
4117
+ "required": false,
4118
+ "type": "ChartConfig"
4119
+ },
4120
+ "title": {
4121
+ "required": false,
4122
+ "type": "string"
4123
+ },
4124
+ "description": {
4125
+ "required": false,
4126
+ "type": "string"
4127
+ },
4128
+ "timeRanges": {
4129
+ "required": false,
4130
+ "type": "TimeRange[]"
4131
+ }
4132
+ }
4133
+ }
2832
4134
  },
2833
4135
  "LoginBlock": {
2834
4136
  "file": "src/components/blocks/LoginBlock.tsx",
@@ -2850,7 +4152,66 @@
2850
4152
  "forgotPasswordHref",
2851
4153
  "signUpHref",
2852
4154
  "signInHref"
2853
- ]
4155
+ ],
4156
+ "propsSchema": {
4157
+ "kind": "object",
4158
+ "noDataProps": false,
4159
+ "required": [],
4160
+ "optional": [
4161
+ "type",
4162
+ "showSocial",
4163
+ "labels",
4164
+ "action",
4165
+ "error",
4166
+ "onLogin",
4167
+ "googleAction",
4168
+ "forgotPasswordHref",
4169
+ "signUpHref",
4170
+ "signInHref"
4171
+ ],
4172
+ "properties": {
4173
+ "type": {
4174
+ "required": false,
4175
+ "type": "\"login\" | \"signup\""
4176
+ },
4177
+ "showSocial": {
4178
+ "required": false,
4179
+ "type": "boolean"
4180
+ },
4181
+ "labels": {
4182
+ "required": false,
4183
+ "type": "Partial<typeof defaultLabels>"
4184
+ },
4185
+ "action": {
4186
+ "required": false,
4187
+ "type": "(formData: FormData) => void | Promise<void>"
4188
+ },
4189
+ "error": {
4190
+ "required": false,
4191
+ "type": "string | null"
4192
+ },
4193
+ "onLogin": {
4194
+ "required": false,
4195
+ "type": "(e: FormEvent) => void"
4196
+ },
4197
+ "googleAction": {
4198
+ "required": false,
4199
+ "type": "(formData: FormData) => void | Promise<void>"
4200
+ },
4201
+ "forgotPasswordHref": {
4202
+ "required": false,
4203
+ "type": "string"
4204
+ },
4205
+ "signUpHref": {
4206
+ "required": false,
4207
+ "type": "string"
4208
+ },
4209
+ "signInHref": {
4210
+ "required": false,
4211
+ "type": "string"
4212
+ }
4213
+ }
4214
+ }
2854
4215
  },
2855
4216
  "LogoCloud": {
2856
4217
  "file": "src/components/blocks/LogoCloud.tsx",
@@ -2864,7 +4225,26 @@
2864
4225
  "keyProps": [
2865
4226
  "title",
2866
4227
  "logos"
2867
- ]
4228
+ ],
4229
+ "propsSchema": {
4230
+ "kind": "object",
4231
+ "noDataProps": false,
4232
+ "required": [],
4233
+ "optional": [
4234
+ "title",
4235
+ "logos"
4236
+ ],
4237
+ "properties": {
4238
+ "title": {
4239
+ "required": false,
4240
+ "type": "string"
4241
+ },
4242
+ "logos": {
4243
+ "required": false,
4244
+ "type": "LogoItem[]"
4245
+ }
4246
+ }
4247
+ }
2868
4248
  },
2869
4249
  "NavUser": {
2870
4250
  "file": "src/components/blocks/NavUser.tsx",
@@ -2877,12 +4257,34 @@
2877
4257
  "notes": "Sidebar user menu with dropdown",
2878
4258
  "keyProps": [
2879
4259
  "user",
2880
- "name",
2881
- "email",
2882
- "avatar",
2883
4260
  "items",
2884
4261
  "footer"
2885
- ]
4262
+ ],
4263
+ "propsSchema": {
4264
+ "kind": "object",
4265
+ "noDataProps": false,
4266
+ "required": [
4267
+ "user"
4268
+ ],
4269
+ "optional": [
4270
+ "items",
4271
+ "footer"
4272
+ ],
4273
+ "properties": {
4274
+ "user": {
4275
+ "required": true,
4276
+ "type": "{ name: string email: string avatar?: string }"
4277
+ },
4278
+ "items": {
4279
+ "required": false,
4280
+ "type": "NavUserItem[]"
4281
+ },
4282
+ "footer": {
4283
+ "required": false,
4284
+ "type": "React.ReactNode"
4285
+ }
4286
+ }
4287
+ }
2886
4288
  },
2887
4289
  "NewsletterBlock": {
2888
4290
  "file": "src/components/blocks/NewsletterBlock.tsx",
@@ -2897,7 +4299,31 @@
2897
4299
  "onSubscribe",
2898
4300
  "title",
2899
4301
  "description"
2900
- ]
4302
+ ],
4303
+ "propsSchema": {
4304
+ "kind": "object",
4305
+ "noDataProps": false,
4306
+ "required": [],
4307
+ "optional": [
4308
+ "onSubscribe",
4309
+ "title",
4310
+ "description"
4311
+ ],
4312
+ "properties": {
4313
+ "onSubscribe": {
4314
+ "required": false,
4315
+ "type": "(email: string) => void"
4316
+ },
4317
+ "title": {
4318
+ "required": false,
4319
+ "type": "string"
4320
+ },
4321
+ "description": {
4322
+ "required": false,
4323
+ "type": "string"
4324
+ }
4325
+ }
4326
+ }
2901
4327
  },
2902
4328
  "NotFoundBlock": {
2903
4329
  "file": "src/components/blocks/NotFoundBlock.tsx",
@@ -2913,7 +4339,36 @@
2913
4339
  "description",
2914
4340
  "backHref",
2915
4341
  "backLabel"
2916
- ]
4342
+ ],
4343
+ "propsSchema": {
4344
+ "kind": "object",
4345
+ "noDataProps": false,
4346
+ "required": [],
4347
+ "optional": [
4348
+ "title",
4349
+ "description",
4350
+ "backHref",
4351
+ "backLabel"
4352
+ ],
4353
+ "properties": {
4354
+ "title": {
4355
+ "required": false,
4356
+ "type": "string"
4357
+ },
4358
+ "description": {
4359
+ "required": false,
4360
+ "type": "string"
4361
+ },
4362
+ "backHref": {
4363
+ "required": false,
4364
+ "type": "string"
4365
+ },
4366
+ "backLabel": {
4367
+ "required": false,
4368
+ "type": "string"
4369
+ }
4370
+ }
4371
+ }
2917
4372
  },
2918
4373
  "OnboardingBlock": {
2919
4374
  "file": "src/components/blocks/OnboardingBlock.tsx",
@@ -2928,7 +4383,31 @@
2928
4383
  "steps",
2929
4384
  "title",
2930
4385
  "onToggle"
2931
- ]
4386
+ ],
4387
+ "propsSchema": {
4388
+ "kind": "object",
4389
+ "noDataProps": false,
4390
+ "required": [],
4391
+ "optional": [
4392
+ "steps",
4393
+ "title",
4394
+ "onToggle"
4395
+ ],
4396
+ "properties": {
4397
+ "steps": {
4398
+ "required": false,
4399
+ "type": "OnboardingStep[]"
4400
+ },
4401
+ "title": {
4402
+ "required": false,
4403
+ "type": "string"
4404
+ },
4405
+ "onToggle": {
4406
+ "required": false,
4407
+ "type": "(id: string, completed: boolean) => void"
4408
+ }
4409
+ }
4410
+ }
2932
4411
  },
2933
4412
  "PasswordRecoveryBlock": {
2934
4413
  "file": "src/components/blocks/PasswordRecoveryBlock.tsx",
@@ -2947,7 +4426,51 @@
2947
4426
  "description",
2948
4427
  "buttonText",
2949
4428
  "successTitle"
2950
- ]
4429
+ ],
4430
+ "propsSchema": {
4431
+ "kind": "object",
4432
+ "noDataProps": false,
4433
+ "required": [],
4434
+ "optional": [
4435
+ "mode",
4436
+ "onSubmit",
4437
+ "onBackToLogin",
4438
+ "title",
4439
+ "description",
4440
+ "buttonText",
4441
+ "successTitle"
4442
+ ],
4443
+ "properties": {
4444
+ "mode": {
4445
+ "required": false,
4446
+ "type": "\"reset\" | \"magic-link\""
4447
+ },
4448
+ "onSubmit": {
4449
+ "required": false,
4450
+ "type": "(email: string) => void"
4451
+ },
4452
+ "onBackToLogin": {
4453
+ "required": false,
4454
+ "type": "() => void"
4455
+ },
4456
+ "title": {
4457
+ "required": false,
4458
+ "type": "string"
4459
+ },
4460
+ "description": {
4461
+ "required": false,
4462
+ "type": "string"
4463
+ },
4464
+ "buttonText": {
4465
+ "required": false,
4466
+ "type": "string"
4467
+ },
4468
+ "successTitle": {
4469
+ "required": false,
4470
+ "type": "string"
4471
+ }
4472
+ }
4473
+ }
2951
4474
  },
2952
4475
  "PricingBlock": {
2953
4476
  "file": "src/components/blocks/PricingBlock.tsx",
@@ -2955,12 +4478,44 @@
2955
4478
  "tier": 2,
2956
4479
  "category": "Marketing",
2957
4480
  "lib": null,
2958
- "subComponents": [
2959
- "PricingTable"
2960
- ],
4481
+ "subComponents": [],
2961
4482
  "variants": {},
2962
4483
  "notes": "Pricing cards comparison",
2963
- "keyProps": []
4484
+ "keyProps": [
4485
+ "title",
4486
+ "description",
4487
+ "plans",
4488
+ "showBillingToggle"
4489
+ ],
4490
+ "propsSchema": {
4491
+ "kind": "object",
4492
+ "noDataProps": false,
4493
+ "required": [],
4494
+ "optional": [
4495
+ "title",
4496
+ "description",
4497
+ "plans",
4498
+ "showBillingToggle"
4499
+ ],
4500
+ "properties": {
4501
+ "title": {
4502
+ "required": false,
4503
+ "type": "string"
4504
+ },
4505
+ "description": {
4506
+ "required": false,
4507
+ "type": "string"
4508
+ },
4509
+ "plans": {
4510
+ "required": false,
4511
+ "type": "PricingPlan[]"
4512
+ },
4513
+ "showBillingToggle": {
4514
+ "required": false,
4515
+ "type": "boolean"
4516
+ }
4517
+ }
4518
+ }
2964
4519
  },
2965
4520
  "ProcessFlowBlock": {
2966
4521
  "file": "src/components/blocks/ProcessFlowBlock.tsx",
@@ -2976,7 +4531,36 @@
2976
4531
  "description",
2977
4532
  "badge",
2978
4533
  "steps"
2979
- ]
4534
+ ],
4535
+ "propsSchema": {
4536
+ "kind": "object",
4537
+ "noDataProps": false,
4538
+ "required": [],
4539
+ "optional": [
4540
+ "title",
4541
+ "description",
4542
+ "badge",
4543
+ "steps"
4544
+ ],
4545
+ "properties": {
4546
+ "title": {
4547
+ "required": false,
4548
+ "type": "string"
4549
+ },
4550
+ "description": {
4551
+ "required": false,
4552
+ "type": "string"
4553
+ },
4554
+ "badge": {
4555
+ "required": false,
4556
+ "type": "string"
4557
+ },
4558
+ "steps": {
4559
+ "required": false,
4560
+ "type": "ProcessStep[]"
4561
+ }
4562
+ }
4563
+ }
2980
4564
  },
2981
4565
  "ResetPasswordBlock": {
2982
4566
  "file": "src/components/blocks/ResetPasswordBlock.tsx",
@@ -2992,7 +4576,36 @@
2992
4576
  "onBackToLogin",
2993
4577
  "title",
2994
4578
  "description"
2995
- ]
4579
+ ],
4580
+ "propsSchema": {
4581
+ "kind": "object",
4582
+ "noDataProps": false,
4583
+ "required": [],
4584
+ "optional": [
4585
+ "onSubmit",
4586
+ "onBackToLogin",
4587
+ "title",
4588
+ "description"
4589
+ ],
4590
+ "properties": {
4591
+ "onSubmit": {
4592
+ "required": false,
4593
+ "type": "(password: string) => void"
4594
+ },
4595
+ "onBackToLogin": {
4596
+ "required": false,
4597
+ "type": "() => void"
4598
+ },
4599
+ "title": {
4600
+ "required": false,
4601
+ "type": "string"
4602
+ },
4603
+ "description": {
4604
+ "required": false,
4605
+ "type": "string"
4606
+ }
4607
+ }
4608
+ }
2996
4609
  },
2997
4610
  "SettingsLayout": {
2998
4611
  "file": "src/components/blocks/SettingsLayout.tsx",
@@ -3009,7 +4622,41 @@
3009
4622
  "subtitle",
3010
4623
  "defaultActive",
3011
4624
  "renderContent"
3012
- ]
4625
+ ],
4626
+ "propsSchema": {
4627
+ "kind": "object",
4628
+ "noDataProps": false,
4629
+ "required": [],
4630
+ "optional": [
4631
+ "links",
4632
+ "title",
4633
+ "subtitle",
4634
+ "defaultActive",
4635
+ "renderContent"
4636
+ ],
4637
+ "properties": {
4638
+ "links": {
4639
+ "required": false,
4640
+ "type": "SettingsLink[]"
4641
+ },
4642
+ "title": {
4643
+ "required": false,
4644
+ "type": "string"
4645
+ },
4646
+ "subtitle": {
4647
+ "required": false,
4648
+ "type": "string"
4649
+ },
4650
+ "defaultActive": {
4651
+ "required": false,
4652
+ "type": "string"
4653
+ },
4654
+ "renderContent": {
4655
+ "required": false,
4656
+ "type": "(activeLink: string) => ReactNode"
4657
+ }
4658
+ }
4659
+ }
3013
4660
  },
3014
4661
  "SignUpBlock": {
3015
4662
  "file": "src/components/blocks/SignUpBlock.tsx",
@@ -3017,9 +4664,7 @@
3017
4664
  "tier": 2,
3018
4665
  "category": "Auth Flow",
3019
4666
  "lib": null,
3020
- "subComponents": [
3021
- "LoginPage"
3022
- ],
4667
+ "subComponents": [],
3023
4668
  "variants": {},
3024
4669
  "notes": "Registration form",
3025
4670
  "keyProps": [
@@ -3028,7 +4673,41 @@
3028
4673
  "showSocial",
3029
4674
  "signInHref",
3030
4675
  "onSubmit"
3031
- ]
4676
+ ],
4677
+ "propsSchema": {
4678
+ "kind": "object",
4679
+ "noDataProps": false,
4680
+ "required": [],
4681
+ "optional": [
4682
+ "title",
4683
+ "description",
4684
+ "showSocial",
4685
+ "signInHref",
4686
+ "onSubmit"
4687
+ ],
4688
+ "properties": {
4689
+ "title": {
4690
+ "required": false,
4691
+ "type": "string"
4692
+ },
4693
+ "description": {
4694
+ "required": false,
4695
+ "type": "string"
4696
+ },
4697
+ "showSocial": {
4698
+ "required": false,
4699
+ "type": "boolean"
4700
+ },
4701
+ "signInHref": {
4702
+ "required": false,
4703
+ "type": "string"
4704
+ },
4705
+ "onSubmit": {
4706
+ "required": false,
4707
+ "type": "(e: FormEvent<HTMLFormElement>) => void"
4708
+ }
4709
+ }
4710
+ }
3032
4711
  },
3033
4712
  "SocialProofBlock": {
3034
4713
  "file": "src/components/blocks/SocialProofBlock.tsx",
@@ -3036,29 +4715,44 @@
3036
4715
  "tier": 2,
3037
4716
  "category": "Marketing",
3038
4717
  "lib": null,
3039
- "subComponents": [
3040
- "LogoCloud",
3041
- "Testimonials"
3042
- ],
3043
- "variants": {},
3044
- "notes": "Social proof metrics/logos",
3045
- "keyProps": []
3046
- },
3047
- "SolutionShowcaseBlock": {
3048
- "file": "src/components/blocks/SolutionShowcaseBlock.tsx",
3049
- "exportPath": "./solution-showcase-block",
3050
- "tier": 2,
3051
- "category": "Marketing",
3052
- "lib": null,
3053
4718
  "subComponents": [],
3054
4719
  "variants": {},
3055
- "notes": "Problem -> Solution -> Output narrative with color-coded arc",
4720
+ "notes": "Social proof metrics/logos",
3056
4721
  "keyProps": [
4722
+ "variant",
4723
+ "logos",
3057
4724
  "title",
3058
- "description",
3059
- "badge",
3060
- "sections"
3061
- ]
4725
+ "testimonials"
4726
+ ],
4727
+ "propsSchema": {
4728
+ "kind": "object",
4729
+ "noDataProps": false,
4730
+ "required": [],
4731
+ "optional": [
4732
+ "variant",
4733
+ "logos",
4734
+ "title",
4735
+ "testimonials"
4736
+ ],
4737
+ "properties": {
4738
+ "variant": {
4739
+ "required": false,
4740
+ "type": "SocialProofBlockVariant"
4741
+ },
4742
+ "logos": {
4743
+ "required": false,
4744
+ "type": "LogoItem[]"
4745
+ },
4746
+ "title": {
4747
+ "required": false,
4748
+ "type": "string"
4749
+ },
4750
+ "testimonials": {
4751
+ "required": false,
4752
+ "type": "SocialTestimonialItem[]"
4753
+ }
4754
+ }
4755
+ }
3062
4756
  },
3063
4757
  "StatsBlock": {
3064
4758
  "file": "src/components/blocks/StatsBlock.tsx",
@@ -3066,12 +4760,26 @@
3066
4760
  "tier": 2,
3067
4761
  "category": "Dashboard & Data",
3068
4762
  "lib": null,
3069
- "subComponents": [
3070
- "StatsGeneric"
3071
- ],
4763
+ "subComponents": [],
3072
4764
  "variants": {},
3073
4765
  "notes": "KPI statistics cards",
3074
- "keyProps": []
4766
+ "keyProps": [
4767
+ "stats"
4768
+ ],
4769
+ "propsSchema": {
4770
+ "kind": "object",
4771
+ "noDataProps": false,
4772
+ "required": [],
4773
+ "optional": [
4774
+ "stats"
4775
+ ],
4776
+ "properties": {
4777
+ "stats": {
4778
+ "required": false,
4779
+ "type": "StatItem[]"
4780
+ }
4781
+ }
4782
+ }
3075
4783
  },
3076
4784
  "StatsMarketingBlock": {
3077
4785
  "file": "src/components/blocks/StatsMarketingBlock.tsx",
@@ -3079,12 +4787,38 @@
3079
4787
  "tier": 2,
3080
4788
  "category": "Marketing",
3081
4789
  "lib": null,
3082
- "subComponents": [
3083
- "StatsSection"
3084
- ],
4790
+ "subComponents": [],
3085
4791
  "variants": {},
3086
4792
  "notes": "Marketing statistics display",
3087
- "keyProps": []
4793
+ "keyProps": [
4794
+ "title",
4795
+ "description",
4796
+ "stats"
4797
+ ],
4798
+ "propsSchema": {
4799
+ "kind": "object",
4800
+ "noDataProps": false,
4801
+ "required": [],
4802
+ "optional": [
4803
+ "title",
4804
+ "description",
4805
+ "stats"
4806
+ ],
4807
+ "properties": {
4808
+ "title": {
4809
+ "required": false,
4810
+ "type": "string"
4811
+ },
4812
+ "description": {
4813
+ "required": false,
4814
+ "type": "string"
4815
+ },
4816
+ "stats": {
4817
+ "required": false,
4818
+ "type": "StatItem[]"
4819
+ }
4820
+ }
4821
+ }
3088
4822
  },
3089
4823
  "TeamBlock": {
3090
4824
  "file": "src/components/blocks/TeamBlock.tsx",
@@ -3092,12 +4826,32 @@
3092
4826
  "tier": 2,
3093
4827
  "category": "User",
3094
4828
  "lib": null,
3095
- "subComponents": [
3096
- "TeamSection"
3097
- ],
4829
+ "subComponents": [],
3098
4830
  "variants": {},
3099
4831
  "notes": "Team members grid with roles/avatars",
3100
- "keyProps": []
4832
+ "keyProps": [
4833
+ "title",
4834
+ "sections"
4835
+ ],
4836
+ "propsSchema": {
4837
+ "kind": "object",
4838
+ "noDataProps": false,
4839
+ "required": [],
4840
+ "optional": [
4841
+ "title",
4842
+ "sections"
4843
+ ],
4844
+ "properties": {
4845
+ "title": {
4846
+ "required": false,
4847
+ "type": "string"
4848
+ },
4849
+ "sections": {
4850
+ "required": false,
4851
+ "type": "TeamSectionDef[]"
4852
+ }
4853
+ }
4854
+ }
3101
4855
  },
3102
4856
  "TestimonialsBlock": {
3103
4857
  "file": "src/components/blocks/TestimonialsBlock.tsx",
@@ -3105,12 +4859,38 @@
3105
4859
  "tier": 2,
3106
4860
  "category": "Marketing",
3107
4861
  "lib": null,
3108
- "subComponents": [
3109
- "Testimonials"
3110
- ],
4862
+ "subComponents": [],
3111
4863
  "variants": {},
3112
4864
  "notes": "Customer testimonial carousel/grid",
3113
- "keyProps": []
4865
+ "keyProps": [
4866
+ "title",
4867
+ "description",
4868
+ "testimonials"
4869
+ ],
4870
+ "propsSchema": {
4871
+ "kind": "object",
4872
+ "noDataProps": false,
4873
+ "required": [],
4874
+ "optional": [
4875
+ "title",
4876
+ "description",
4877
+ "testimonials"
4878
+ ],
4879
+ "properties": {
4880
+ "title": {
4881
+ "required": false,
4882
+ "type": "string"
4883
+ },
4884
+ "description": {
4885
+ "required": false,
4886
+ "type": "string"
4887
+ },
4888
+ "testimonials": {
4889
+ "required": false,
4890
+ "type": "TestimonialItem[]"
4891
+ }
4892
+ }
4893
+ }
3114
4894
  },
3115
4895
  "TwoFactorChallengeBlock": {
3116
4896
  "file": "src/components/blocks/TwoFactorChallengeBlock.tsx",
@@ -3129,7 +4909,51 @@
3129
4909
  "title",
3130
4910
  "description",
3131
4911
  "backupCodeLabel"
3132
- ]
4912
+ ],
4913
+ "propsSchema": {
4914
+ "kind": "object",
4915
+ "noDataProps": false,
4916
+ "required": [],
4917
+ "optional": [
4918
+ "onVerify",
4919
+ "onUseBackupCode",
4920
+ "onBackToLogin",
4921
+ "error",
4922
+ "title",
4923
+ "description",
4924
+ "backupCodeLabel"
4925
+ ],
4926
+ "properties": {
4927
+ "onVerify": {
4928
+ "required": false,
4929
+ "type": "(code: string) => void"
4930
+ },
4931
+ "onUseBackupCode": {
4932
+ "required": false,
4933
+ "type": "() => void"
4934
+ },
4935
+ "onBackToLogin": {
4936
+ "required": false,
4937
+ "type": "() => void"
4938
+ },
4939
+ "error": {
4940
+ "required": false,
4941
+ "type": "string"
4942
+ },
4943
+ "title": {
4944
+ "required": false,
4945
+ "type": "string"
4946
+ },
4947
+ "description": {
4948
+ "required": false,
4949
+ "type": "string"
4950
+ },
4951
+ "backupCodeLabel": {
4952
+ "required": false,
4953
+ "type": "string"
4954
+ }
4955
+ }
4956
+ }
3133
4957
  },
3134
4958
  "TwoFactorSetupBlock": {
3135
4959
  "file": "src/components/blocks/TwoFactorSetupBlock.tsx",
@@ -3148,7 +4972,51 @@
3148
4972
  "onComplete",
3149
4973
  "title",
3150
4974
  "description"
3151
- ]
4975
+ ],
4976
+ "propsSchema": {
4977
+ "kind": "object",
4978
+ "noDataProps": false,
4979
+ "required": [],
4980
+ "optional": [
4981
+ "qrCodeUrl",
4982
+ "secret",
4983
+ "backupCodes",
4984
+ "onVerify",
4985
+ "onComplete",
4986
+ "title",
4987
+ "description"
4988
+ ],
4989
+ "properties": {
4990
+ "qrCodeUrl": {
4991
+ "required": false,
4992
+ "type": "string"
4993
+ },
4994
+ "secret": {
4995
+ "required": false,
4996
+ "type": "string"
4997
+ },
4998
+ "backupCodes": {
4999
+ "required": false,
5000
+ "type": "string[]"
5001
+ },
5002
+ "onVerify": {
5003
+ "required": false,
5004
+ "type": "(code: string) => boolean | Promise<boolean>"
5005
+ },
5006
+ "onComplete": {
5007
+ "required": false,
5008
+ "type": "() => void"
5009
+ },
5010
+ "title": {
5011
+ "required": false,
5012
+ "type": "string"
5013
+ },
5014
+ "description": {
5015
+ "required": false,
5016
+ "type": "string"
5017
+ }
5018
+ }
5019
+ }
3152
5020
  },
3153
5021
  "UsageDonutBlock": {
3154
5022
  "file": "src/components/blocks/UsageDonutBlock.tsx",
@@ -3156,12 +5024,50 @@
3156
5024
  "tier": 2,
3157
5025
  "category": "Dashboard & Data",
3158
5026
  "lib": null,
3159
- "subComponents": [
3160
- "UsageDonut"
3161
- ],
5027
+ "subComponents": [],
3162
5028
  "variants": {},
3163
5029
  "notes": "Usage/quota donut chart",
3164
- "keyProps": []
5030
+ "keyProps": [
5031
+ "data",
5032
+ "config",
5033
+ "title",
5034
+ "description",
5035
+ "centerLabel"
5036
+ ],
5037
+ "propsSchema": {
5038
+ "kind": "object",
5039
+ "noDataProps": false,
5040
+ "required": [],
5041
+ "optional": [
5042
+ "data",
5043
+ "config",
5044
+ "title",
5045
+ "description",
5046
+ "centerLabel"
5047
+ ],
5048
+ "properties": {
5049
+ "data": {
5050
+ "required": false,
5051
+ "type": "UsageDonutDataItem[]"
5052
+ },
5053
+ "config": {
5054
+ "required": false,
5055
+ "type": "ChartConfig"
5056
+ },
5057
+ "title": {
5058
+ "required": false,
5059
+ "type": "string"
5060
+ },
5061
+ "description": {
5062
+ "required": false,
5063
+ "type": "string"
5064
+ },
5065
+ "centerLabel": {
5066
+ "required": false,
5067
+ "type": "React.ReactNode"
5068
+ }
5069
+ }
5070
+ }
3165
5071
  },
3166
5072
  "VoiceAgentCard": {
3167
5073
  "file": "src/components/blocks/VoiceAgentCard.tsx",
@@ -3176,8 +5082,44 @@
3176
5082
  "agent",
3177
5083
  "state",
3178
5084
  "selected",
3179
- "onSelect"
3180
- ]
5085
+ "onSelect",
5086
+ "ariaLabel"
5087
+ ],
5088
+ "propsSchema": {
5089
+ "kind": "object",
5090
+ "noDataProps": false,
5091
+ "required": [
5092
+ "agent",
5093
+ "state"
5094
+ ],
5095
+ "optional": [
5096
+ "selected",
5097
+ "onSelect",
5098
+ "ariaLabel"
5099
+ ],
5100
+ "properties": {
5101
+ "agent": {
5102
+ "required": true,
5103
+ "type": "VoiceAgent"
5104
+ },
5105
+ "state": {
5106
+ "required": true,
5107
+ "type": "Avatar3DState"
5108
+ },
5109
+ "selected": {
5110
+ "required": false,
5111
+ "type": "boolean"
5112
+ },
5113
+ "onSelect": {
5114
+ "required": false,
5115
+ "type": "() => void"
5116
+ },
5117
+ "ariaLabel": {
5118
+ "required": false,
5119
+ "type": "string"
5120
+ }
5121
+ }
5122
+ }
3181
5123
  },
3182
5124
  "WizardBlock": {
3183
5125
  "file": "src/components/blocks/WizardBlock.tsx",
@@ -3193,7 +5135,69 @@
3193
5135
  "description",
3194
5136
  "steps",
3195
5137
  "onFinish"
3196
- ]
5138
+ ],
5139
+ "propsSchema": {
5140
+ "kind": "object",
5141
+ "noDataProps": false,
5142
+ "required": [],
5143
+ "optional": [
5144
+ "title",
5145
+ "description",
5146
+ "steps",
5147
+ "onFinish"
5148
+ ],
5149
+ "properties": {
5150
+ "title": {
5151
+ "required": false,
5152
+ "type": "string"
5153
+ },
5154
+ "description": {
5155
+ "required": false,
5156
+ "type": "string"
5157
+ },
5158
+ "steps": {
5159
+ "required": false,
5160
+ "type": "WizardStep[]"
5161
+ },
5162
+ "onFinish": {
5163
+ "required": false,
5164
+ "type": "() => void"
5165
+ }
5166
+ }
5167
+ }
5168
+ },
5169
+ "InviteUserModal": {
5170
+ "file": "src/components/blocks/user/InviteUserModal.tsx",
5171
+ "exportPath": "./user/invite-user-modal",
5172
+ "tier": 2,
5173
+ "category": "User",
5174
+ "lib": null,
5175
+ "subComponents": [],
5176
+ "variants": {},
5177
+ "notes": "Invite teammate modal with role selection",
5178
+ "keyProps": [
5179
+ "onInvite",
5180
+ "onInvited"
5181
+ ],
5182
+ "propsSchema": {
5183
+ "kind": "object",
5184
+ "noDataProps": false,
5185
+ "required": [],
5186
+ "optional": [
5187
+ "onInvite",
5188
+ "onInvited"
5189
+ ],
5190
+ "properties": {
5191
+ "onInvite": {
5192
+ "required": false,
5193
+ "type": "(values: InviteFormValues) => Promise<InviteResult> | InviteResult"
5194
+ },
5195
+ "onInvited": {
5196
+ "required": false,
5197
+ "type": "() => void"
5198
+ }
5199
+ }
5200
+ }
3197
5201
  }
3198
5202
  },
3199
5203
  "tiers": {
@@ -3203,7 +5207,7 @@
3203
5207
  },
3204
5208
  "2": {
3205
5209
  "label": "Domain",
3206
- "count": 43
5210
+ "count": 61
3207
5211
  },
3208
5212
  "3": {
3209
5213
  "label": "Decorative",