@contractspec/bundle.library 3.7.6 → 3.7.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (889) hide show
  1. package/.turbo/turbo-build.log +144 -142
  2. package/AGENTS.md +42 -24
  3. package/README.md +59 -37
  4. package/dist/application/index.d.ts +1 -1
  5. package/dist/application/index.js +842 -840
  6. package/dist/application/mcp/cliMcp.js +30 -30
  7. package/dist/application/mcp/common.d.ts +2 -2
  8. package/dist/application/mcp/common.js +2 -2
  9. package/dist/application/mcp/contractsMcp.d.ts +1 -1
  10. package/dist/application/mcp/contractsMcp.js +163 -163
  11. package/dist/application/mcp/docsMcp.js +31 -31
  12. package/dist/application/mcp/index.d.ts +2 -2
  13. package/dist/application/mcp/index.js +842 -840
  14. package/dist/application/mcp/internalMcp.js +30 -30
  15. package/dist/application/mcp/providerRankingMcp.js +35 -33
  16. package/dist/components/docs/DocsIndexPage.js +859 -212
  17. package/dist/components/docs/advanced/AdvancedMCPPage.js +15 -15
  18. package/dist/components/docs/advanced/AdvancedOverlayEditorPage.js +4 -4
  19. package/dist/components/docs/advanced/AdvancedRenderersPage.js +7 -7
  20. package/dist/components/docs/advanced/AdvancedSpecExperimentsPage.js +9 -9
  21. package/dist/components/docs/advanced/AdvancedTelemetryPage.js +16 -16
  22. package/dist/components/docs/advanced/AdvancedWorkflowMonitoringPage.js +6 -6
  23. package/dist/components/docs/advanced/index.d.ts +2 -2
  24. package/dist/components/docs/advanced/index.js +57 -57
  25. package/dist/components/docs/architecture/ArchitectureAppConfigPage.js +10 -10
  26. package/dist/components/docs/architecture/ArchitectureControlPlanePage.js +8 -8
  27. package/dist/components/docs/architecture/ArchitectureIntegrationBindingPage.js +14 -14
  28. package/dist/components/docs/architecture/ArchitectureKnowledgeBindingPage.js +16 -16
  29. package/dist/components/docs/architecture/ArchitectureMultiTenancyPage.js +7 -7
  30. package/dist/components/docs/architecture/ArchitectureOverviewPage.js +90 -411
  31. package/dist/components/docs/architecture/index.d.ts +3 -3
  32. package/dist/components/docs/architecture/index.js +145 -466
  33. package/dist/components/docs/comparison/ComparisonAutomationPlatformsPage.js +6 -6
  34. package/dist/components/docs/comparison/ComparisonEnterprisePlatformsPage.js +7 -7
  35. package/dist/components/docs/comparison/ComparisonInternalToolBuildersPage.js +6 -6
  36. package/dist/components/docs/comparison/ComparisonOverviewPage.js +4 -4
  37. package/dist/components/docs/comparison/ComparisonWindmillPage.js +6 -6
  38. package/dist/components/docs/comparison/ComparisonWorkflowEnginesPage.js +6 -6
  39. package/dist/components/docs/comparison/index.d.ts +2 -2
  40. package/dist/components/docs/comparison/index.js +35 -35
  41. package/dist/components/docs/docsManifest.d.ts +42 -0
  42. package/dist/components/docs/docsManifest.js +612 -0
  43. package/dist/components/docs/ecosystem/IntegrationsPage.js +5 -5
  44. package/dist/components/docs/ecosystem/PluginsPage.js +7 -7
  45. package/dist/components/docs/ecosystem/RegistryPage.js +4 -4
  46. package/dist/components/docs/ecosystem/TemplatesPage.js +11 -11
  47. package/dist/components/docs/ecosystem/index.d.ts +2 -2
  48. package/dist/components/docs/ecosystem/index.js +27 -27
  49. package/dist/components/docs/examples/DocsExamplesPage.js +4 -4
  50. package/dist/components/docs/examples/index.js +4 -4
  51. package/dist/components/docs/getting-started/CLIPage.js +9 -9
  52. package/dist/components/docs/getting-started/CompatibilityPage.js +12 -12
  53. package/dist/components/docs/getting-started/DataViewTutorialPage.js +7 -7
  54. package/dist/components/docs/getting-started/DeveloperToolsPage.js +10 -10
  55. package/dist/components/docs/getting-started/HelloWorldPage.js +8 -8
  56. package/dist/components/docs/getting-started/InstallationPage.js +10 -10
  57. package/dist/components/docs/getting-started/StartHerePage.js +8 -8
  58. package/dist/components/docs/getting-started/TroubleshootingPage.js +12 -12
  59. package/dist/components/docs/getting-started/VSCodeExtensionPage.js +13 -13
  60. package/dist/components/docs/getting-started/index.d.ts +5 -5
  61. package/dist/components/docs/getting-started/index.js +89 -89
  62. package/dist/components/docs/guides/GuideCIDiffGatingPage.js +13 -13
  63. package/dist/components/docs/guides/GuideContractTypesPage.js +33 -33
  64. package/dist/components/docs/guides/GuideDocsPipelinePage.js +13 -13
  65. package/dist/components/docs/guides/GuideGenerateDocsClientsSchemasPage.js +13 -13
  66. package/dist/components/docs/guides/GuideImportExistingCodebasesPage.js +35 -35
  67. package/dist/components/docs/guides/GuideNextjsOneEndpointPage.js +15 -15
  68. package/dist/components/docs/guides/GuideSpecValidationTypingPage.js +13 -13
  69. package/dist/components/docs/guides/GuidesIndexPage.js +69 -46
  70. package/dist/components/docs/guides/index.d.ts +4 -4
  71. package/dist/components/docs/guides/index.js +174 -151
  72. package/dist/components/docs/index.d.ts +13 -12
  73. package/dist/components/docs/index.js +14060 -15332
  74. package/dist/components/docs/integrations/IntegrationsCircuitBreakersPage.js +4 -4
  75. package/dist/components/docs/integrations/IntegrationsElevenLabsPage.js +7 -7
  76. package/dist/components/docs/integrations/IntegrationsGithubPage.js +11 -11
  77. package/dist/components/docs/integrations/IntegrationsGmailPage.js +7 -7
  78. package/dist/components/docs/integrations/IntegrationsGoogleCalendarPage.js +5 -5
  79. package/dist/components/docs/integrations/IntegrationsHealthRoutingPage.js +12 -12
  80. package/dist/components/docs/integrations/IntegrationsMistralPage.js +12 -12
  81. package/dist/components/docs/integrations/IntegrationsOpenAIPage.js +11 -11
  82. package/dist/components/docs/integrations/IntegrationsOverviewPage.js +119 -736
  83. package/dist/components/docs/integrations/IntegrationsPostmarkPage.js +12 -12
  84. package/dist/components/docs/integrations/IntegrationsPowensPage.js +24 -24
  85. package/dist/components/docs/integrations/IntegrationsQdrantPage.js +9 -9
  86. package/dist/components/docs/integrations/IntegrationsResendPage.js +7 -7
  87. package/dist/components/docs/integrations/IntegrationsS3Page.js +9 -9
  88. package/dist/components/docs/integrations/IntegrationsSlackPage.js +11 -11
  89. package/dist/components/docs/integrations/IntegrationsSpecModelPage.js +19 -19
  90. package/dist/components/docs/integrations/IntegrationsStripePage.js +25 -25
  91. package/dist/components/docs/integrations/IntegrationsTwilioPage.js +9 -9
  92. package/dist/components/docs/integrations/IntegrationsWhatsappMetaPage.js +12 -12
  93. package/dist/components/docs/integrations/IntegrationsWhatsappTwilioPage.js +13 -13
  94. package/dist/components/docs/integrations/index.d.ts +1 -1
  95. package/dist/components/docs/integrations/index.js +614 -1231
  96. package/dist/components/docs/intent/ContractFirstApiPage.js +8 -8
  97. package/dist/components/docs/intent/DeterministicCodegenPage.js +9 -9
  98. package/dist/components/docs/intent/GenerateClientFromSchemaPage.js +13 -13
  99. package/dist/components/docs/intent/OpenapiAlternativePage.js +13 -13
  100. package/dist/components/docs/intent/SchemaValidationTypescriptPage.js +9 -9
  101. package/dist/components/docs/intent/SpecDrivenDevelopmentPage.js +8 -8
  102. package/dist/components/docs/intent/index.d.ts +3 -3
  103. package/dist/components/docs/intent/index.js +766 -766
  104. package/dist/components/docs/knowledge/KnowledgeCategoriesPage.js +38 -38
  105. package/dist/components/docs/knowledge/KnowledgeExamplesPage.js +9 -9
  106. package/dist/components/docs/knowledge/KnowledgeOverviewPage.js +91 -439
  107. package/dist/components/docs/knowledge/KnowledgeSourcesPage.js +28 -28
  108. package/dist/components/docs/knowledge/KnowledgeSpacesPage.js +21 -21
  109. package/dist/components/docs/knowledge/index.d.ts +1 -1
  110. package/dist/components/docs/knowledge/index.js +437 -785
  111. package/dist/components/docs/libraries/LibrariesAccessibilityPage.js +16 -16
  112. package/dist/components/docs/libraries/LibrariesAiAgentPage.js +8 -8
  113. package/dist/components/docs/libraries/LibrariesAnalyticsPage.js +6 -6
  114. package/dist/components/docs/libraries/LibrariesContentGenPage.js +6 -6
  115. package/dist/components/docs/libraries/LibrariesContractsPage.js +16 -16
  116. package/dist/components/docs/libraries/LibrariesCostTrackingPage.js +6 -6
  117. package/dist/components/docs/libraries/LibrariesDataBackendPage.js +14 -14
  118. package/dist/components/docs/libraries/LibrariesDataViewsPage.js +7 -7
  119. package/dist/components/docs/libraries/LibrariesDesignSystemPage.js +13 -13
  120. package/dist/components/docs/libraries/LibrariesEvolutionPage.js +7 -7
  121. package/dist/components/docs/libraries/LibrariesGraphQLPage.js +13 -13
  122. package/dist/components/docs/libraries/LibrariesGrowthPage.js +5 -5
  123. package/dist/components/docs/libraries/LibrariesMultiTenancyPage.js +5 -5
  124. package/dist/components/docs/libraries/LibrariesObservabilityPage.js +7 -7
  125. package/dist/components/docs/libraries/LibrariesOverlayEnginePage.js +6 -6
  126. package/dist/components/docs/libraries/LibrariesOverviewPage.js +117 -430
  127. package/dist/components/docs/libraries/LibrariesPersonalizationPage.js +6 -6
  128. package/dist/components/docs/libraries/LibrariesProgressiveDeliveryPage.js +6 -6
  129. package/dist/components/docs/libraries/LibrariesResiliencePage.js +6 -6
  130. package/dist/components/docs/libraries/LibrariesRuntimePage.js +13 -13
  131. package/dist/components/docs/libraries/LibrariesSLOPage.js +6 -6
  132. package/dist/components/docs/libraries/LibrariesSchemaPage.js +16 -16
  133. package/dist/components/docs/libraries/LibrariesSupportBotPage.js +7 -7
  134. package/dist/components/docs/libraries/LibrariesTestingPage.js +7 -7
  135. package/dist/components/docs/libraries/LibrariesUIKitPage.js +10 -10
  136. package/dist/components/docs/libraries/LibrariesWorkflowComposerPage.js +5 -5
  137. package/dist/components/docs/libraries/LibrariesWorkflowsPage.js +8 -8
  138. package/dist/components/docs/libraries/index.d.ts +4 -4
  139. package/dist/components/docs/libraries/index.js +1308 -1621
  140. package/dist/components/docs/manifesto/ManifestoPage.js +33 -138
  141. package/dist/components/docs/ops/AutoEvolutionOpsPage.js +9 -9
  142. package/dist/components/docs/ops/DistributedTracingOpsPage.js +5 -5
  143. package/dist/components/docs/ops/index.js +14 -14
  144. package/dist/components/docs/reference/DocsMarkdownContent.js +1 -1
  145. package/dist/components/docs/reference/DocsReferenceContent.js +2 -2
  146. package/dist/components/docs/reference/DocsReferenceIndexClient.js +8 -8
  147. package/dist/components/docs/reference/DocsReferenceIndexPage.js +8 -8
  148. package/dist/components/docs/reference/DocsReferencePage.js +2 -2
  149. package/dist/components/docs/reference/index.js +10 -10
  150. package/dist/components/docs/safety/SafetyAuditingPage.js +16 -16
  151. package/dist/components/docs/safety/SafetyMigrationsPage.js +15 -15
  152. package/dist/components/docs/safety/SafetyOverviewPage.js +69 -206
  153. package/dist/components/docs/safety/SafetyPDPPage.js +12 -12
  154. package/dist/components/docs/safety/SafetySecurityTrustPage.js +11 -11
  155. package/dist/components/docs/safety/SafetySigningPage.js +7 -7
  156. package/dist/components/docs/safety/SafetyTenantIsolationPage.js +6 -6
  157. package/dist/components/docs/safety/index.d.ts +3 -3
  158. package/dist/components/docs/safety/index.js +616 -753
  159. package/dist/components/docs/shared/StudioPrompt.js +5 -5
  160. package/dist/components/docs/specs/SpecsCapabilitiesPage.js +12 -12
  161. package/dist/components/docs/specs/SpecsDataViewsPage.js +14 -14
  162. package/dist/components/docs/specs/SpecsOverlaysPage.js +14 -14
  163. package/dist/components/docs/specs/SpecsOverviewPage.js +135 -297
  164. package/dist/components/docs/specs/SpecsPolicyPage.js +29 -29
  165. package/dist/components/docs/specs/SpecsWorkflowsPage.js +18 -18
  166. package/dist/components/docs/specs/index.d.ts +3 -3
  167. package/dist/components/docs/specs/index.js +814 -976
  168. package/dist/components/docs/studio/StudioBYOKPage.js +1 -1
  169. package/dist/components/docs/studio/StudioDeploymentsPage.js +1 -1
  170. package/dist/components/docs/studio/StudioGettingStartedPage.js +1 -1
  171. package/dist/components/docs/studio/StudioIntegrationsPage.js +1 -1
  172. package/dist/components/docs/studio/StudioOverviewPage.js +109 -56
  173. package/dist/components/docs/studio/StudioVisualBuilderPage.js +1 -1
  174. package/dist/components/docs/studio/index.d.ts +4 -4
  175. package/dist/components/docs/studio/index.js +170 -117
  176. package/dist/components/integrations/index.js +25 -25
  177. package/dist/components/integrations/molecules/IntegrationCard.js +5 -5
  178. package/dist/components/integrations/organisms/IntegrationMarketplace.js +12 -12
  179. package/dist/components/integrations/organisms/IntegrationSettings.js +7 -7
  180. package/dist/components/integrations/organisms/KnowledgeSourceList.js +6 -6
  181. package/dist/components/legal/PrivacyTemplate.js +67 -67
  182. package/dist/components/legal/TermsTemplate.js +54 -54
  183. package/dist/components/legal/index.js +121 -121
  184. package/dist/components/shared/FeatureGateNotice.js +4 -4
  185. package/dist/components/shared/index.js +4 -4
  186. package/dist/components/shell/WorkspaceHeader.js +4 -4
  187. package/dist/components/shell/WorkspaceProjectShellLayout.d.ts +3 -3
  188. package/dist/components/shell/WorkspaceProjectShellLayout.js +10 -10
  189. package/dist/components/shell/WorkspaceShellRenderer.d.ts +4 -4
  190. package/dist/components/shell/WorkspaceShellRenderer.js +8 -8
  191. package/dist/components/shell/WorkspaceSidebar.js +2 -2
  192. package/dist/components/shell/index.d.ts +1 -1
  193. package/dist/components/shell/index.js +12 -12
  194. package/dist/components/templates/engine/index.d.ts +1 -1
  195. package/dist/components/templates/index.d.ts +1 -1
  196. package/dist/components/templates/index.js +835 -835
  197. package/dist/components/templates/messaging/ConversationList.js +11 -11
  198. package/dist/components/templates/messaging/MessageComposer.js +11 -11
  199. package/dist/components/templates/messaging/MessageThread.js +6 -6
  200. package/dist/components/templates/messaging/MessagingWorkspace.js +23 -23
  201. package/dist/components/templates/messaging/index.d.ts +1 -1
  202. package/dist/components/templates/messaging/index.js +23 -23
  203. package/dist/components/templates/recipes/LanguageSwitcher.js +1 -1
  204. package/dist/components/templates/recipes/RecipeCard.js +5 -5
  205. package/dist/components/templates/recipes/RecipeDetail.js +8 -8
  206. package/dist/components/templates/recipes/RecipeList.js +17 -17
  207. package/dist/components/templates/recipes/index.d.ts +2 -2
  208. package/dist/components/templates/recipes/index.js +17 -17
  209. package/dist/components/templates/todos/FilterBar.d.ts +1 -1
  210. package/dist/components/templates/todos/FilterBar.js +9 -9
  211. package/dist/components/templates/todos/TaskForm.js +14 -14
  212. package/dist/components/templates/todos/TaskItem.js +4 -4
  213. package/dist/components/templates/todos/TaskList.js +30 -30
  214. package/dist/components/templates/todos/index.d.ts +2 -2
  215. package/dist/components/templates/todos/index.js +30 -30
  216. package/dist/config/index.d.ts +2 -2
  217. package/dist/features/contracts-registry.d.ts +3 -3
  218. package/dist/features/contracts-registry.js +15 -15
  219. package/dist/features/docs/docs.contracts.d.ts +1 -1
  220. package/dist/features/docs/docs.contracts.js +2 -2
  221. package/dist/features/docs/index.d.ts +1 -1
  222. package/dist/features/docs/index.js +2 -2
  223. package/dist/features/index.d.ts +4 -4
  224. package/dist/features/index.js +18 -18
  225. package/dist/features/registry.js +1 -1
  226. package/dist/index.d.ts +2 -2
  227. package/dist/index.js +14982 -16254
  228. package/dist/libs/email/client.js +1 -1
  229. package/dist/libs/email/contact.js +1 -1
  230. package/dist/libs/email/newsletter.js +1 -1
  231. package/dist/libs/email/waitlist-application.js +1 -1
  232. package/dist/libs/email/waitlist.js +1 -1
  233. package/dist/libs/email.d.ts +1 -1
  234. package/dist/libs/email.js +1 -1
  235. package/dist/node/application/index.js +842 -840
  236. package/dist/node/application/mcp/cliMcp.js +30 -30
  237. package/dist/node/application/mcp/common.js +2 -2
  238. package/dist/node/application/mcp/contractsMcp.js +163 -163
  239. package/dist/node/application/mcp/docsMcp.js +31 -31
  240. package/dist/node/application/mcp/index.js +842 -840
  241. package/dist/node/application/mcp/internalMcp.js +30 -30
  242. package/dist/node/application/mcp/providerRankingMcp.js +35 -33
  243. package/dist/node/components/docs/DocsIndexPage.js +859 -212
  244. package/dist/node/components/docs/advanced/AdvancedMCPPage.js +15 -15
  245. package/dist/node/components/docs/advanced/AdvancedOverlayEditorPage.js +4 -4
  246. package/dist/node/components/docs/advanced/AdvancedRenderersPage.js +7 -7
  247. package/dist/node/components/docs/advanced/AdvancedSpecExperimentsPage.js +9 -9
  248. package/dist/node/components/docs/advanced/AdvancedTelemetryPage.js +16 -16
  249. package/dist/node/components/docs/advanced/AdvancedWorkflowMonitoringPage.js +6 -6
  250. package/dist/node/components/docs/advanced/index.js +57 -57
  251. package/dist/node/components/docs/architecture/ArchitectureAppConfigPage.js +10 -10
  252. package/dist/node/components/docs/architecture/ArchitectureControlPlanePage.js +8 -8
  253. package/dist/node/components/docs/architecture/ArchitectureIntegrationBindingPage.js +14 -14
  254. package/dist/node/components/docs/architecture/ArchitectureKnowledgeBindingPage.js +16 -16
  255. package/dist/node/components/docs/architecture/ArchitectureMultiTenancyPage.js +7 -7
  256. package/dist/node/components/docs/architecture/ArchitectureOverviewPage.js +90 -411
  257. package/dist/node/components/docs/architecture/index.js +145 -466
  258. package/dist/node/components/docs/comparison/ComparisonAutomationPlatformsPage.js +6 -6
  259. package/dist/node/components/docs/comparison/ComparisonEnterprisePlatformsPage.js +7 -7
  260. package/dist/node/components/docs/comparison/ComparisonInternalToolBuildersPage.js +6 -6
  261. package/dist/node/components/docs/comparison/ComparisonOverviewPage.js +4 -4
  262. package/dist/node/components/docs/comparison/ComparisonWindmillPage.js +6 -6
  263. package/dist/node/components/docs/comparison/ComparisonWorkflowEnginesPage.js +6 -6
  264. package/dist/node/components/docs/comparison/index.js +35 -35
  265. package/dist/node/components/docs/docsManifest.js +611 -0
  266. package/dist/node/components/docs/ecosystem/IntegrationsPage.js +5 -5
  267. package/dist/node/components/docs/ecosystem/PluginsPage.js +7 -7
  268. package/dist/node/components/docs/ecosystem/RegistryPage.js +4 -4
  269. package/dist/node/components/docs/ecosystem/TemplatesPage.js +11 -11
  270. package/dist/node/components/docs/ecosystem/index.js +27 -27
  271. package/dist/node/components/docs/examples/DocsExamplesPage.js +4 -4
  272. package/dist/node/components/docs/examples/index.js +4 -4
  273. package/dist/node/components/docs/getting-started/CLIPage.js +9 -9
  274. package/dist/node/components/docs/getting-started/CompatibilityPage.js +12 -12
  275. package/dist/node/components/docs/getting-started/DataViewTutorialPage.js +7 -7
  276. package/dist/node/components/docs/getting-started/DeveloperToolsPage.js +10 -10
  277. package/dist/node/components/docs/getting-started/HelloWorldPage.js +8 -8
  278. package/dist/node/components/docs/getting-started/InstallationPage.js +10 -10
  279. package/dist/node/components/docs/getting-started/StartHerePage.js +8 -8
  280. package/dist/node/components/docs/getting-started/TroubleshootingPage.js +12 -12
  281. package/dist/node/components/docs/getting-started/VSCodeExtensionPage.js +13 -13
  282. package/dist/node/components/docs/getting-started/index.js +89 -89
  283. package/dist/node/components/docs/guides/GuideCIDiffGatingPage.js +13 -13
  284. package/dist/node/components/docs/guides/GuideContractTypesPage.js +33 -33
  285. package/dist/node/components/docs/guides/GuideDocsPipelinePage.js +13 -13
  286. package/dist/node/components/docs/guides/GuideGenerateDocsClientsSchemasPage.js +13 -13
  287. package/dist/node/components/docs/guides/GuideImportExistingCodebasesPage.js +35 -35
  288. package/dist/node/components/docs/guides/GuideNextjsOneEndpointPage.js +15 -15
  289. package/dist/node/components/docs/guides/GuideSpecValidationTypingPage.js +13 -13
  290. package/dist/node/components/docs/guides/GuidesIndexPage.js +69 -46
  291. package/dist/node/components/docs/guides/index.js +174 -151
  292. package/dist/node/components/docs/index.js +14060 -15332
  293. package/dist/node/components/docs/integrations/IntegrationsCircuitBreakersPage.js +4 -4
  294. package/dist/node/components/docs/integrations/IntegrationsElevenLabsPage.js +7 -7
  295. package/dist/node/components/docs/integrations/IntegrationsGithubPage.js +11 -11
  296. package/dist/node/components/docs/integrations/IntegrationsGmailPage.js +7 -7
  297. package/dist/node/components/docs/integrations/IntegrationsGoogleCalendarPage.js +5 -5
  298. package/dist/node/components/docs/integrations/IntegrationsHealthRoutingPage.js +12 -12
  299. package/dist/node/components/docs/integrations/IntegrationsMistralPage.js +12 -12
  300. package/dist/node/components/docs/integrations/IntegrationsOpenAIPage.js +11 -11
  301. package/dist/node/components/docs/integrations/IntegrationsOverviewPage.js +119 -736
  302. package/dist/node/components/docs/integrations/IntegrationsPostmarkPage.js +12 -12
  303. package/dist/node/components/docs/integrations/IntegrationsPowensPage.js +24 -24
  304. package/dist/node/components/docs/integrations/IntegrationsQdrantPage.js +9 -9
  305. package/dist/node/components/docs/integrations/IntegrationsResendPage.js +7 -7
  306. package/dist/node/components/docs/integrations/IntegrationsS3Page.js +9 -9
  307. package/dist/node/components/docs/integrations/IntegrationsSlackPage.js +11 -11
  308. package/dist/node/components/docs/integrations/IntegrationsSpecModelPage.js +19 -19
  309. package/dist/node/components/docs/integrations/IntegrationsStripePage.js +25 -25
  310. package/dist/node/components/docs/integrations/IntegrationsTwilioPage.js +9 -9
  311. package/dist/node/components/docs/integrations/IntegrationsWhatsappMetaPage.js +12 -12
  312. package/dist/node/components/docs/integrations/IntegrationsWhatsappTwilioPage.js +13 -13
  313. package/dist/node/components/docs/integrations/index.js +614 -1231
  314. package/dist/node/components/docs/intent/ContractFirstApiPage.js +8 -8
  315. package/dist/node/components/docs/intent/DeterministicCodegenPage.js +9 -9
  316. package/dist/node/components/docs/intent/GenerateClientFromSchemaPage.js +13 -13
  317. package/dist/node/components/docs/intent/OpenapiAlternativePage.js +13 -13
  318. package/dist/node/components/docs/intent/SchemaValidationTypescriptPage.js +9 -9
  319. package/dist/node/components/docs/intent/SpecDrivenDevelopmentPage.js +8 -8
  320. package/dist/node/components/docs/intent/index.js +766 -766
  321. package/dist/node/components/docs/knowledge/KnowledgeCategoriesPage.js +38 -38
  322. package/dist/node/components/docs/knowledge/KnowledgeExamplesPage.js +9 -9
  323. package/dist/node/components/docs/knowledge/KnowledgeOverviewPage.js +91 -439
  324. package/dist/node/components/docs/knowledge/KnowledgeSourcesPage.js +28 -28
  325. package/dist/node/components/docs/knowledge/KnowledgeSpacesPage.js +21 -21
  326. package/dist/node/components/docs/knowledge/index.js +437 -785
  327. package/dist/node/components/docs/libraries/LibrariesAccessibilityPage.js +16 -16
  328. package/dist/node/components/docs/libraries/LibrariesAiAgentPage.js +8 -8
  329. package/dist/node/components/docs/libraries/LibrariesAnalyticsPage.js +6 -6
  330. package/dist/node/components/docs/libraries/LibrariesContentGenPage.js +6 -6
  331. package/dist/node/components/docs/libraries/LibrariesContractsPage.js +16 -16
  332. package/dist/node/components/docs/libraries/LibrariesCostTrackingPage.js +6 -6
  333. package/dist/node/components/docs/libraries/LibrariesDataBackendPage.js +14 -14
  334. package/dist/node/components/docs/libraries/LibrariesDataViewsPage.js +7 -7
  335. package/dist/node/components/docs/libraries/LibrariesDesignSystemPage.js +13 -13
  336. package/dist/node/components/docs/libraries/LibrariesEvolutionPage.js +7 -7
  337. package/dist/node/components/docs/libraries/LibrariesGraphQLPage.js +13 -13
  338. package/dist/node/components/docs/libraries/LibrariesGrowthPage.js +5 -5
  339. package/dist/node/components/docs/libraries/LibrariesMultiTenancyPage.js +5 -5
  340. package/dist/node/components/docs/libraries/LibrariesObservabilityPage.js +7 -7
  341. package/dist/node/components/docs/libraries/LibrariesOverlayEnginePage.js +6 -6
  342. package/dist/node/components/docs/libraries/LibrariesOverviewPage.js +117 -430
  343. package/dist/node/components/docs/libraries/LibrariesPersonalizationPage.js +6 -6
  344. package/dist/node/components/docs/libraries/LibrariesProgressiveDeliveryPage.js +6 -6
  345. package/dist/node/components/docs/libraries/LibrariesResiliencePage.js +6 -6
  346. package/dist/node/components/docs/libraries/LibrariesRuntimePage.js +13 -13
  347. package/dist/node/components/docs/libraries/LibrariesSLOPage.js +6 -6
  348. package/dist/node/components/docs/libraries/LibrariesSchemaPage.js +16 -16
  349. package/dist/node/components/docs/libraries/LibrariesSupportBotPage.js +7 -7
  350. package/dist/node/components/docs/libraries/LibrariesTestingPage.js +7 -7
  351. package/dist/node/components/docs/libraries/LibrariesUIKitPage.js +10 -10
  352. package/dist/node/components/docs/libraries/LibrariesWorkflowComposerPage.js +5 -5
  353. package/dist/node/components/docs/libraries/LibrariesWorkflowsPage.js +8 -8
  354. package/dist/node/components/docs/libraries/index.js +1308 -1621
  355. package/dist/node/components/docs/manifesto/ManifestoPage.js +33 -138
  356. package/dist/node/components/docs/ops/AutoEvolutionOpsPage.js +9 -9
  357. package/dist/node/components/docs/ops/DistributedTracingOpsPage.js +5 -5
  358. package/dist/node/components/docs/ops/index.js +14 -14
  359. package/dist/node/components/docs/reference/DocsMarkdownContent.js +1 -1
  360. package/dist/node/components/docs/reference/DocsReferenceContent.js +2 -2
  361. package/dist/node/components/docs/reference/DocsReferenceIndexClient.js +8 -8
  362. package/dist/node/components/docs/reference/DocsReferenceIndexPage.js +8 -8
  363. package/dist/node/components/docs/reference/DocsReferencePage.js +2 -2
  364. package/dist/node/components/docs/reference/index.js +10 -10
  365. package/dist/node/components/docs/safety/SafetyAuditingPage.js +16 -16
  366. package/dist/node/components/docs/safety/SafetyMigrationsPage.js +15 -15
  367. package/dist/node/components/docs/safety/SafetyOverviewPage.js +69 -206
  368. package/dist/node/components/docs/safety/SafetyPDPPage.js +12 -12
  369. package/dist/node/components/docs/safety/SafetySecurityTrustPage.js +11 -11
  370. package/dist/node/components/docs/safety/SafetySigningPage.js +7 -7
  371. package/dist/node/components/docs/safety/SafetyTenantIsolationPage.js +6 -6
  372. package/dist/node/components/docs/safety/index.js +616 -753
  373. package/dist/node/components/docs/shared/StudioPrompt.js +5 -5
  374. package/dist/node/components/docs/specs/SpecsCapabilitiesPage.js +12 -12
  375. package/dist/node/components/docs/specs/SpecsDataViewsPage.js +14 -14
  376. package/dist/node/components/docs/specs/SpecsOverlaysPage.js +14 -14
  377. package/dist/node/components/docs/specs/SpecsOverviewPage.js +135 -297
  378. package/dist/node/components/docs/specs/SpecsPolicyPage.js +29 -29
  379. package/dist/node/components/docs/specs/SpecsWorkflowsPage.js +18 -18
  380. package/dist/node/components/docs/specs/index.js +814 -976
  381. package/dist/node/components/docs/studio/StudioBYOKPage.js +1 -1
  382. package/dist/node/components/docs/studio/StudioDeploymentsPage.js +1 -1
  383. package/dist/node/components/docs/studio/StudioGettingStartedPage.js +1 -1
  384. package/dist/node/components/docs/studio/StudioIntegrationsPage.js +1 -1
  385. package/dist/node/components/docs/studio/StudioOverviewPage.js +109 -56
  386. package/dist/node/components/docs/studio/StudioVisualBuilderPage.js +1 -1
  387. package/dist/node/components/docs/studio/index.js +170 -117
  388. package/dist/node/components/integrations/index.js +25 -25
  389. package/dist/node/components/integrations/molecules/IntegrationCard.js +5 -5
  390. package/dist/node/components/integrations/organisms/IntegrationMarketplace.js +12 -12
  391. package/dist/node/components/integrations/organisms/IntegrationSettings.js +7 -7
  392. package/dist/node/components/integrations/organisms/KnowledgeSourceList.js +6 -6
  393. package/dist/node/components/legal/PrivacyTemplate.js +67 -67
  394. package/dist/node/components/legal/TermsTemplate.js +54 -54
  395. package/dist/node/components/legal/index.js +121 -121
  396. package/dist/node/components/shared/FeatureGateNotice.js +4 -4
  397. package/dist/node/components/shared/index.js +4 -4
  398. package/dist/node/components/shell/WorkspaceHeader.js +4 -4
  399. package/dist/node/components/shell/WorkspaceProjectShellLayout.js +10 -10
  400. package/dist/node/components/shell/WorkspaceShellRenderer.js +8 -8
  401. package/dist/node/components/shell/WorkspaceSidebar.js +2 -2
  402. package/dist/node/components/shell/index.js +12 -12
  403. package/dist/node/components/templates/index.js +835 -835
  404. package/dist/node/components/templates/messaging/ConversationList.js +11 -11
  405. package/dist/node/components/templates/messaging/MessageComposer.js +11 -11
  406. package/dist/node/components/templates/messaging/MessageThread.js +6 -6
  407. package/dist/node/components/templates/messaging/MessagingWorkspace.js +23 -23
  408. package/dist/node/components/templates/messaging/index.js +23 -23
  409. package/dist/node/components/templates/recipes/LanguageSwitcher.js +1 -1
  410. package/dist/node/components/templates/recipes/RecipeCard.js +5 -5
  411. package/dist/node/components/templates/recipes/RecipeDetail.js +8 -8
  412. package/dist/node/components/templates/recipes/RecipeList.js +17 -17
  413. package/dist/node/components/templates/recipes/index.js +17 -17
  414. package/dist/node/components/templates/todos/FilterBar.js +9 -9
  415. package/dist/node/components/templates/todos/TaskForm.js +14 -14
  416. package/dist/node/components/templates/todos/TaskItem.js +4 -4
  417. package/dist/node/components/templates/todos/TaskList.js +30 -30
  418. package/dist/node/components/templates/todos/index.js +30 -30
  419. package/dist/node/features/contracts-registry.js +15 -15
  420. package/dist/node/features/docs/docs.contracts.js +2 -2
  421. package/dist/node/features/docs/index.js +2 -2
  422. package/dist/node/features/index.js +18 -18
  423. package/dist/node/features/registry.js +1 -1
  424. package/dist/node/index.js +14982 -16254
  425. package/dist/node/libs/email/client.js +1 -1
  426. package/dist/node/libs/email/contact.js +1 -1
  427. package/dist/node/libs/email/newsletter.js +1 -1
  428. package/dist/node/libs/email/waitlist-application.js +1 -1
  429. package/dist/node/libs/email/waitlist.js +1 -1
  430. package/dist/node/libs/email.js +1 -1
  431. package/dist/node/presentation/features/atoms/FeatureIcon/FeatureIcon.js +7 -7
  432. package/dist/node/presentation/features/atoms/FeatureIcon/index.js +7 -7
  433. package/dist/node/presentation/features/atoms/index.js +7 -7
  434. package/dist/node/presentation/features/hooks/index.js +56 -56
  435. package/dist/node/presentation/features/hooks/useContractsRegistry.js +18 -18
  436. package/dist/node/presentation/features/hooks/useFeatureFilters.js +1 -1
  437. package/dist/node/presentation/features/hooks/useFeatureRegistry.js +1 -1
  438. package/dist/node/presentation/features/hooks/useRelatedDocs.js +1 -1
  439. package/dist/node/presentation/features/index.js +1364 -1364
  440. package/dist/node/presentation/features/molecules/FeatureCard/FeatureCard.js +15 -15
  441. package/dist/node/presentation/features/molecules/FeatureCard/index.js +15 -15
  442. package/dist/node/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.js +7 -7
  443. package/dist/node/presentation/features/molecules/FeatureCategoryHeader/index.js +7 -7
  444. package/dist/node/presentation/features/molecules/FeatureFilters/FeatureFilters.js +1 -1
  445. package/dist/node/presentation/features/molecules/FeatureFilters/index.js +1 -1
  446. package/dist/node/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.js +5 -5
  447. package/dist/node/presentation/features/molecules/FeatureHoverPreview/index.js +5 -5
  448. package/dist/node/presentation/features/molecules/index.js +77 -77
  449. package/dist/node/presentation/features/organisms/FeatureDataViewsList.js +18 -18
  450. package/dist/node/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.js +121 -121
  451. package/dist/node/presentation/features/organisms/FeatureDiscovery/index.js +121 -121
  452. package/dist/node/presentation/features/organisms/FeatureEventsList.js +18 -18
  453. package/dist/node/presentation/features/organisms/FeatureFormsList.js +18 -18
  454. package/dist/node/presentation/features/organisms/FeatureOperationsList.js +15 -15
  455. package/dist/node/presentation/features/organisms/FeaturePresentationsList.js +18 -18
  456. package/dist/node/presentation/features/organisms/index.js +401 -401
  457. package/dist/node/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.js +13 -13
  458. package/dist/node/presentation/features/templates/FeatureDataViewDetailTemplate/index.js +13 -13
  459. package/dist/node/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.js +20 -20
  460. package/dist/node/presentation/features/templates/FeatureDataViewsTemplate/index.js +20 -20
  461. package/dist/node/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.js +12 -12
  462. package/dist/node/presentation/features/templates/FeatureEventDetailTemplate/index.js +12 -12
  463. package/dist/node/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.js +18 -18
  464. package/dist/node/presentation/features/templates/FeatureEventsTemplate/index.js +18 -18
  465. package/dist/node/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.js +13 -13
  466. package/dist/node/presentation/features/templates/FeatureFormDetailTemplate/index.js +13 -13
  467. package/dist/node/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.js +20 -20
  468. package/dist/node/presentation/features/templates/FeatureFormsTemplate/index.js +20 -20
  469. package/dist/node/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.js +8 -8
  470. package/dist/node/presentation/features/templates/FeatureOperationDetailTemplate/index.js +8 -8
  471. package/dist/node/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.js +15 -15
  472. package/dist/node/presentation/features/templates/FeatureOperationsTemplate/index.js +15 -15
  473. package/dist/node/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.js +2 -2
  474. package/dist/node/presentation/features/templates/FeatureOverviewTemplate/index.js +2 -2
  475. package/dist/node/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.js +12 -12
  476. package/dist/node/presentation/features/templates/FeaturePresentationDetailTemplate/index.js +12 -12
  477. package/dist/node/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.js +18 -18
  478. package/dist/node/presentation/features/templates/FeaturePresentationsTemplate/index.js +18 -18
  479. package/dist/presentation/features/atoms/FeatureIcon/FeatureIcon.js +7 -7
  480. package/dist/presentation/features/atoms/FeatureIcon/index.d.ts +1 -1
  481. package/dist/presentation/features/atoms/FeatureIcon/index.js +7 -7
  482. package/dist/presentation/features/atoms/index.js +7 -7
  483. package/dist/presentation/features/hooks/index.d.ts +3 -3
  484. package/dist/presentation/features/hooks/index.js +56 -56
  485. package/dist/presentation/features/hooks/useContractsRegistry.js +18 -18
  486. package/dist/presentation/features/hooks/useFeatureFilters.js +1 -1
  487. package/dist/presentation/features/hooks/useFeatureRegistry.js +1 -1
  488. package/dist/presentation/features/hooks/useRelatedDocs.js +1 -1
  489. package/dist/presentation/features/index.d.ts +14 -14
  490. package/dist/presentation/features/index.js +1364 -1364
  491. package/dist/presentation/features/molecules/FeatureCard/FeatureCard.js +15 -15
  492. package/dist/presentation/features/molecules/FeatureCard/index.js +15 -15
  493. package/dist/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.js +7 -7
  494. package/dist/presentation/features/molecules/FeatureCategoryHeader/index.js +7 -7
  495. package/dist/presentation/features/molecules/FeatureFilters/FeatureFilters.js +1 -1
  496. package/dist/presentation/features/molecules/FeatureFilters/index.js +1 -1
  497. package/dist/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.js +5 -5
  498. package/dist/presentation/features/molecules/FeatureHoverPreview/index.js +5 -5
  499. package/dist/presentation/features/molecules/index.d.ts +1 -1
  500. package/dist/presentation/features/molecules/index.js +77 -77
  501. package/dist/presentation/features/organisms/FeatureDataViewsList.js +18 -18
  502. package/dist/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.js +121 -121
  503. package/dist/presentation/features/organisms/FeatureDiscovery/index.d.ts +1 -1
  504. package/dist/presentation/features/organisms/FeatureDiscovery/index.js +121 -121
  505. package/dist/presentation/features/organisms/FeatureEventsList.js +18 -18
  506. package/dist/presentation/features/organisms/FeatureFormsList.js +18 -18
  507. package/dist/presentation/features/organisms/FeatureOperationsList.js +15 -15
  508. package/dist/presentation/features/organisms/FeaturePresentationsList.js +18 -18
  509. package/dist/presentation/features/organisms/index.d.ts +4 -4
  510. package/dist/presentation/features/organisms/index.js +401 -401
  511. package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.js +13 -13
  512. package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/index.js +13 -13
  513. package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/types.d.ts +1 -1
  514. package/dist/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.js +20 -20
  515. package/dist/presentation/features/templates/FeatureDataViewsTemplate/index.js +20 -20
  516. package/dist/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.js +12 -12
  517. package/dist/presentation/features/templates/FeatureEventDetailTemplate/index.js +12 -12
  518. package/dist/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.js +18 -18
  519. package/dist/presentation/features/templates/FeatureEventsTemplate/index.js +18 -18
  520. package/dist/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.js +13 -13
  521. package/dist/presentation/features/templates/FeatureFormDetailTemplate/index.js +13 -13
  522. package/dist/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.js +20 -20
  523. package/dist/presentation/features/templates/FeatureFormsTemplate/index.js +20 -20
  524. package/dist/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.js +8 -8
  525. package/dist/presentation/features/templates/FeatureOperationDetailTemplate/index.js +8 -8
  526. package/dist/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.js +15 -15
  527. package/dist/presentation/features/templates/FeatureOperationsTemplate/index.js +15 -15
  528. package/dist/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.js +2 -2
  529. package/dist/presentation/features/templates/FeatureOverviewTemplate/index.js +2 -2
  530. package/dist/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.js +12 -12
  531. package/dist/presentation/features/templates/FeaturePresentationDetailTemplate/index.js +12 -12
  532. package/dist/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.js +18 -18
  533. package/dist/presentation/features/templates/FeaturePresentationsTemplate/index.js +18 -18
  534. package/package.json +38 -24
  535. package/src/__tests__/env-setup.ts +1 -1
  536. package/src/__tests__/mocks/prisma.ts +78 -78
  537. package/src/__tests__/setup.ts +2 -2
  538. package/src/application/context-storage/index.ts +42 -42
  539. package/src/application/index.ts +1 -1
  540. package/src/application/mcp/cliMcp.ts +221 -221
  541. package/src/application/mcp/common.ts +210 -210
  542. package/src/application/mcp/contractsMcp.ts +15 -15
  543. package/src/application/mcp/contractsMcpResources.ts +119 -119
  544. package/src/application/mcp/contractsMcpTools.ts +218 -218
  545. package/src/application/mcp/contractsMcpTypes.ts +35 -35
  546. package/src/application/mcp/docsMcp.ts +173 -173
  547. package/src/application/mcp/index.ts +2 -2
  548. package/src/application/mcp/internalMcp.ts +204 -204
  549. package/src/application/mcp/providerRankingMcp.ts +346 -344
  550. package/src/bundles/LibraryBundle.ts +136 -136
  551. package/src/components/docs/DocsIndexPage.tsx +189 -241
  552. package/src/components/docs/advanced/AdvancedMCPPage.tsx +168 -168
  553. package/src/components/docs/advanced/AdvancedOverlayEditorPage.tsx +52 -52
  554. package/src/components/docs/advanced/AdvancedRenderersPage.tsx +53 -53
  555. package/src/components/docs/advanced/AdvancedSpecExperimentsPage.tsx +48 -48
  556. package/src/components/docs/advanced/AdvancedTelemetryPage.tsx +205 -205
  557. package/src/components/docs/advanced/AdvancedWorkflowMonitoringPage.tsx +42 -42
  558. package/src/components/docs/advanced/index.ts +2 -2
  559. package/src/components/docs/architecture/ArchitectureAppConfigPage.tsx +127 -127
  560. package/src/components/docs/architecture/ArchitectureControlPlanePage.tsx +79 -79
  561. package/src/components/docs/architecture/ArchitectureIntegrationBindingPage.tsx +147 -147
  562. package/src/components/docs/architecture/ArchitectureKnowledgeBindingPage.tsx +193 -193
  563. package/src/components/docs/architecture/ArchitectureMultiTenancyPage.tsx +73 -73
  564. package/src/components/docs/architecture/ArchitectureOverviewPage.tsx +98 -273
  565. package/src/components/docs/architecture/index.ts +3 -3
  566. package/src/components/docs/comparison/ComparisonAutomationPlatformsPage.tsx +137 -137
  567. package/src/components/docs/comparison/ComparisonEnterprisePlatformsPage.tsx +138 -138
  568. package/src/components/docs/comparison/ComparisonInternalToolBuildersPage.tsx +147 -147
  569. package/src/components/docs/comparison/ComparisonOverviewPage.tsx +106 -106
  570. package/src/components/docs/comparison/ComparisonWindmillPage.tsx +143 -143
  571. package/src/components/docs/comparison/ComparisonWorkflowEnginesPage.tsx +168 -168
  572. package/src/components/docs/comparison/index.ts +2 -2
  573. package/src/components/docs/docsManifest.ts +720 -0
  574. package/src/components/docs/ecosystem/IntegrationsPage.tsx +45 -45
  575. package/src/components/docs/ecosystem/PluginsPage.tsx +77 -77
  576. package/src/components/docs/ecosystem/RegistryPage.tsx +48 -48
  577. package/src/components/docs/ecosystem/TemplatesPage.tsx +52 -52
  578. package/src/components/docs/ecosystem/ecosystem.docblocks.ts +42 -42
  579. package/src/components/docs/ecosystem/index.ts +2 -2
  580. package/src/components/docs/examples/DocsExamplesPage.tsx +67 -66
  581. package/src/components/docs/generated/docs-index._common.json +1757 -1757
  582. package/src/components/docs/generated/docs-index.agent-console.json +376 -376
  583. package/src/components/docs/generated/docs-index.ai-chat-assistant.json +8 -8
  584. package/src/components/docs/generated/docs-index.ai-chat.json +104 -104
  585. package/src/components/docs/generated/docs-index.ai-support-bot.json +8 -8
  586. package/src/components/docs/generated/docs-index.analytics-dashboard.json +168 -168
  587. package/src/components/docs/generated/docs-index.app-config.json +136 -136
  588. package/src/components/docs/generated/docs-index.audit-trail.json +48 -48
  589. package/src/components/docs/generated/docs-index.calendar-google.json +8 -8
  590. package/src/components/docs/generated/docs-index.content-generation.json +8 -8
  591. package/src/components/docs/generated/docs-index.crm-pipeline.json +160 -160
  592. package/src/components/docs/generated/docs-index.email-gmail.json +8 -8
  593. package/src/components/docs/generated/docs-index.feature-flags.json +216 -216
  594. package/src/components/docs/generated/docs-index.files.json +176 -176
  595. package/src/components/docs/generated/docs-index.generated.ts +19 -19
  596. package/src/components/docs/generated/docs-index.health.json +96 -96
  597. package/src/components/docs/generated/docs-index.identity-rbac.json +312 -312
  598. package/src/components/docs/generated/docs-index.in-app-docs.json +8 -8
  599. package/src/components/docs/generated/docs-index.integration-hub.json +264 -264
  600. package/src/components/docs/generated/docs-index.integration-posthog.json +8 -8
  601. package/src/components/docs/generated/docs-index.integration-stripe.json +8 -8
  602. package/src/components/docs/generated/docs-index.integration-supabase.json +8 -8
  603. package/src/components/docs/generated/docs-index.jobs.json +136 -136
  604. package/src/components/docs/generated/docs-index.kb-update-pipeline.json +128 -128
  605. package/src/components/docs/generated/docs-index.knowledge-canon.json +8 -8
  606. package/src/components/docs/generated/docs-index.learning-journey-ambient-coach.json +8 -8
  607. package/src/components/docs/generated/docs-index.learning-journey-crm-onboarding.json +48 -48
  608. package/src/components/docs/generated/docs-index.learning-journey-duo-drills.json +8 -8
  609. package/src/components/docs/generated/docs-index.learning-journey-platform-tour.json +48 -48
  610. package/src/components/docs/generated/docs-index.learning-journey-quest-challenges.json +8 -8
  611. package/src/components/docs/generated/docs-index.learning-journey-registry.json +32 -32
  612. package/src/components/docs/generated/docs-index.learning-journey-studio-onboarding.json +48 -48
  613. package/src/components/docs/generated/docs-index.learning-journey-ui-coaching.json +8 -8
  614. package/src/components/docs/generated/docs-index.learning-journey-ui-gamified.json +8 -8
  615. package/src/components/docs/generated/docs-index.learning-journey-ui-onboarding.json +8 -8
  616. package/src/components/docs/generated/docs-index.learning-journey-ui-shared.json +8 -8
  617. package/src/components/docs/generated/docs-index.learning-journey.json +216 -216
  618. package/src/components/docs/generated/docs-index.learning-patterns.json +8 -8
  619. package/src/components/docs/generated/docs-index.lifecycle-cli.json +8 -8
  620. package/src/components/docs/generated/docs-index.lifecycle-dashboard.json +8 -8
  621. package/src/components/docs/generated/docs-index.locale-jurisdiction-gate.json +48 -48
  622. package/src/components/docs/generated/docs-index.manifest.json +376 -376
  623. package/src/components/docs/generated/docs-index.marketplace.json +336 -336
  624. package/src/components/docs/generated/docs-index.meeting-recorder-providers.json +8 -8
  625. package/src/components/docs/generated/docs-index.meeting-recorder.json +48 -48
  626. package/src/components/docs/generated/docs-index.metrics.json +200 -200
  627. package/src/components/docs/generated/docs-index.minimal.json +16 -16
  628. package/src/components/docs/generated/docs-index.notifications.json +64 -64
  629. package/src/components/docs/generated/docs-index.openbanking-powens.json +8 -8
  630. package/src/components/docs/generated/docs-index.openbanking.json +64 -64
  631. package/src/components/docs/generated/docs-index.opencode-cli.json +16 -16
  632. package/src/components/docs/generated/docs-index.personalization.json +8 -8
  633. package/src/components/docs/generated/docs-index.platform-acp.json +72 -72
  634. package/src/components/docs/generated/docs-index.platform-agent.json +96 -96
  635. package/src/components/docs/generated/docs-index.platform-context.json +56 -56
  636. package/src/components/docs/generated/docs-index.platform-database.json +48 -48
  637. package/src/components/docs/generated/docs-index.platform-docs.json +88 -88
  638. package/src/components/docs/generated/docs-index.platform-integrations.json +320 -320
  639. package/src/components/docs/generated/docs-index.platform-knowledge.json +56 -56
  640. package/src/components/docs/generated/docs-index.platform-provider-ranking.json +96 -96
  641. package/src/components/docs/generated/docs-index.pocket-family-office.json +120 -120
  642. package/src/components/docs/generated/docs-index.policy-safe-knowledge-assistant.json +8 -8
  643. package/src/components/docs/generated/docs-index.product-intent.json +8 -8
  644. package/src/components/docs/generated/docs-index.project-management-sync.json +8 -8
  645. package/src/components/docs/generated/docs-index.saas-boilerplate.json +208 -208
  646. package/src/components/docs/generated/docs-index.service-business-os.json +192 -192
  647. package/src/components/docs/generated/docs-index.team-hub.json +184 -184
  648. package/src/components/docs/generated/docs-index.unknown.json +512 -512
  649. package/src/components/docs/generated/docs-index.versioned-knowledge-base.json +80 -80
  650. package/src/components/docs/generated/docs-index.video-api-showcase.json +32 -32
  651. package/src/components/docs/generated/docs-index.video-docs-terminal.json +8 -8
  652. package/src/components/docs/generated/docs-index.video-marketing-clip.json +8 -8
  653. package/src/components/docs/generated/docs-index.voice-providers.json +8 -8
  654. package/src/components/docs/generated/docs-index.wealth-snapshot.json +152 -152
  655. package/src/components/docs/generated/docs-index.workflow-system.json +432 -432
  656. package/src/components/docs/generated/docs-index.workspace-cli.json +8 -8
  657. package/src/components/docs/generated/index.ts +6 -6
  658. package/src/components/docs/generated/loader.ts +49 -49
  659. package/src/components/docs/getting-started/CLIPage.tsx +157 -157
  660. package/src/components/docs/getting-started/CompatibilityPage.tsx +69 -69
  661. package/src/components/docs/getting-started/DataViewTutorialPage.tsx +63 -63
  662. package/src/components/docs/getting-started/DeveloperToolsPage.tsx +141 -140
  663. package/src/components/docs/getting-started/HelloWorldPage.tsx +88 -88
  664. package/src/components/docs/getting-started/InstallationPage.tsx +78 -78
  665. package/src/components/docs/getting-started/StartHerePage.tsx +64 -64
  666. package/src/components/docs/getting-started/TroubleshootingPage.tsx +68 -68
  667. package/src/components/docs/getting-started/VSCodeExtensionPage.tsx +233 -233
  668. package/src/components/docs/getting-started/getting-started.docblocks.ts +30 -30
  669. package/src/components/docs/getting-started/index.ts +6 -5
  670. package/src/components/docs/guides/GuideCIDiffGatingPage.tsx +88 -88
  671. package/src/components/docs/guides/GuideContractTypesPage.tsx +266 -266
  672. package/src/components/docs/guides/GuideDocsPipelinePage.tsx +78 -78
  673. package/src/components/docs/guides/GuideGenerateDocsClientsSchemasPage.tsx +89 -89
  674. package/src/components/docs/guides/GuideImportExistingCodebasesPage.tsx +360 -360
  675. package/src/components/docs/guides/GuideNextjsOneEndpointPage.tsx +117 -117
  676. package/src/components/docs/guides/GuideSpecValidationTypingPage.tsx +82 -82
  677. package/src/components/docs/guides/GuidesIndexPage.tsx +109 -99
  678. package/src/components/docs/guides/guides.docblocks.ts +60 -60
  679. package/src/components/docs/guides/index.ts +4 -4
  680. package/src/components/docs/index.ts +26 -40
  681. package/src/components/docs/integrations/IntegrationsCircuitBreakersPage.tsx +22 -22
  682. package/src/components/docs/integrations/IntegrationsElevenLabsPage.tsx +41 -41
  683. package/src/components/docs/integrations/IntegrationsGithubPage.tsx +66 -66
  684. package/src/components/docs/integrations/IntegrationsGmailPage.tsx +44 -44
  685. package/src/components/docs/integrations/IntegrationsGoogleCalendarPage.tsx +31 -31
  686. package/src/components/docs/integrations/IntegrationsHealthRoutingPage.tsx +80 -80
  687. package/src/components/docs/integrations/IntegrationsMistralPage.tsx +65 -65
  688. package/src/components/docs/integrations/IntegrationsOpenAIPage.tsx +54 -54
  689. package/src/components/docs/integrations/IntegrationsOverviewPage.tsx +124 -529
  690. package/src/components/docs/integrations/IntegrationsPostmarkPage.tsx +97 -97
  691. package/src/components/docs/integrations/IntegrationsPowensPage.tsx +165 -165
  692. package/src/components/docs/integrations/IntegrationsQdrantPage.tsx +44 -44
  693. package/src/components/docs/integrations/IntegrationsResendPage.tsx +40 -40
  694. package/src/components/docs/integrations/IntegrationsS3Page.tsx +48 -48
  695. package/src/components/docs/integrations/IntegrationsSlackPage.tsx +70 -70
  696. package/src/components/docs/integrations/IntegrationsSpecModelPage.tsx +139 -139
  697. package/src/components/docs/integrations/IntegrationsStripePage.tsx +153 -153
  698. package/src/components/docs/integrations/IntegrationsTwilioPage.tsx +50 -50
  699. package/src/components/docs/integrations/IntegrationsWhatsappMetaPage.tsx +69 -69
  700. package/src/components/docs/integrations/IntegrationsWhatsappTwilioPage.tsx +73 -73
  701. package/src/components/docs/integrations/index.ts +1 -1
  702. package/src/components/docs/intent/ContractFirstApiPage.tsx +61 -61
  703. package/src/components/docs/intent/DeterministicCodegenPage.tsx +81 -80
  704. package/src/components/docs/intent/GenerateClientFromSchemaPage.tsx +108 -108
  705. package/src/components/docs/intent/OpenapiAlternativePage.tsx +98 -98
  706. package/src/components/docs/intent/SchemaValidationTypescriptPage.tsx +79 -79
  707. package/src/components/docs/intent/SpecDrivenDevelopmentPage.tsx +67 -67
  708. package/src/components/docs/intent/index.ts +3 -3
  709. package/src/components/docs/intent/intent-pages.docblocks.ts +186 -186
  710. package/src/components/docs/knowledge/KnowledgeCategoriesPage.tsx +304 -304
  711. package/src/components/docs/knowledge/KnowledgeExamplesPage.tsx +84 -84
  712. package/src/components/docs/knowledge/KnowledgeOverviewPage.tsx +76 -285
  713. package/src/components/docs/knowledge/KnowledgeSourcesPage.tsx +171 -171
  714. package/src/components/docs/knowledge/KnowledgeSpacesPage.tsx +132 -132
  715. package/src/components/docs/knowledge/index.ts +1 -1
  716. package/src/components/docs/libraries/LibrariesAccessibilityPage.tsx +95 -95
  717. package/src/components/docs/libraries/LibrariesAiAgentPage.tsx +58 -58
  718. package/src/components/docs/libraries/LibrariesAnalyticsPage.tsx +39 -39
  719. package/src/components/docs/libraries/LibrariesContentGenPage.tsx +41 -41
  720. package/src/components/docs/libraries/LibrariesContractsPage.tsx +132 -132
  721. package/src/components/docs/libraries/LibrariesCostTrackingPage.tsx +47 -47
  722. package/src/components/docs/libraries/LibrariesDataBackendPage.tsx +73 -73
  723. package/src/components/docs/libraries/LibrariesDataViewsPage.tsx +76 -76
  724. package/src/components/docs/libraries/LibrariesDesignSystemPage.tsx +115 -115
  725. package/src/components/docs/libraries/LibrariesEvolutionPage.tsx +64 -64
  726. package/src/components/docs/libraries/LibrariesGraphQLPage.tsx +92 -92
  727. package/src/components/docs/libraries/LibrariesGrowthPage.tsx +37 -37
  728. package/src/components/docs/libraries/LibrariesMultiTenancyPage.tsx +47 -47
  729. package/src/components/docs/libraries/LibrariesObservabilityPage.tsx +58 -58
  730. package/src/components/docs/libraries/LibrariesOverlayEnginePage.tsx +51 -51
  731. package/src/components/docs/libraries/LibrariesOverviewPage.tsx +137 -301
  732. package/src/components/docs/libraries/LibrariesPersonalizationPage.tsx +57 -57
  733. package/src/components/docs/libraries/LibrariesProgressiveDeliveryPage.tsx +51 -51
  734. package/src/components/docs/libraries/LibrariesResiliencePage.tsx +54 -54
  735. package/src/components/docs/libraries/LibrariesRuntimePage.tsx +96 -96
  736. package/src/components/docs/libraries/LibrariesSLOPage.tsx +52 -52
  737. package/src/components/docs/libraries/LibrariesSchemaPage.tsx +131 -131
  738. package/src/components/docs/libraries/LibrariesSupportBotPage.tsx +59 -59
  739. package/src/components/docs/libraries/LibrariesTestingPage.tsx +64 -64
  740. package/src/components/docs/libraries/LibrariesUIKitPage.tsx +85 -85
  741. package/src/components/docs/libraries/LibrariesWorkflowComposerPage.tsx +38 -38
  742. package/src/components/docs/libraries/LibrariesWorkflowsPage.tsx +79 -79
  743. package/src/components/docs/libraries/index.ts +4 -4
  744. package/src/components/docs/manifesto/ManifestoPage.tsx +61 -132
  745. package/src/components/docs/ops/AutoEvolutionOpsPage.tsx +81 -81
  746. package/src/components/docs/ops/DistributedTracingOpsPage.tsx +28 -28
  747. package/src/components/docs/ops/ops-lifecycle.docblocks.ts +32 -32
  748. package/src/components/docs/ops/ops-runbooks-a.docblocks.ts +60 -60
  749. package/src/components/docs/ops/ops-runbooks-b.docblocks.ts +60 -60
  750. package/src/components/docs/ops/ops-slo-tenant.docblocks.ts +61 -61
  751. package/src/components/docs/ops/ops-top.docs.ts +10 -10
  752. package/src/components/docs/ops/ops.docs.ts +6 -6
  753. package/src/components/docs/product/product.docblocks.ts +60 -60
  754. package/src/components/docs/reference/DocsMarkdownContent.tsx +74 -74
  755. package/src/components/docs/reference/DocsReferenceContent.tsx +51 -51
  756. package/src/components/docs/reference/DocsReferenceIndexClient.tsx +106 -105
  757. package/src/components/docs/reference/DocsReferenceIndexPage.tsx +2 -2
  758. package/src/components/docs/reference/DocsReferencePage.tsx +3 -3
  759. package/src/components/docs/reference/docsMarkdownParser.ts +90 -90
  760. package/src/components/docs/safety/SafetyAuditingPage.tsx +189 -189
  761. package/src/components/docs/safety/SafetyMigrationsPage.tsx +189 -189
  762. package/src/components/docs/safety/SafetyOverviewPage.tsx +70 -157
  763. package/src/components/docs/safety/SafetyPDPPage.tsx +163 -163
  764. package/src/components/docs/safety/SafetySecurityTrustPage.tsx +89 -89
  765. package/src/components/docs/safety/SafetySigningPage.tsx +38 -38
  766. package/src/components/docs/safety/SafetyTenantIsolationPage.tsx +39 -39
  767. package/src/components/docs/safety/index.ts +3 -3
  768. package/src/components/docs/shared/StudioPrompt.tsx +17 -17
  769. package/src/components/docs/specs/SpecsCapabilitiesPage.tsx +79 -79
  770. package/src/components/docs/specs/SpecsDataViewsPage.tsx +142 -142
  771. package/src/components/docs/specs/SpecsOverlaysPage.tsx +202 -202
  772. package/src/components/docs/specs/SpecsOverviewPage.tsx +118 -193
  773. package/src/components/docs/specs/SpecsPolicyPage.tsx +233 -233
  774. package/src/components/docs/specs/SpecsWorkflowsPage.tsx +156 -156
  775. package/src/components/docs/specs/index.ts +3 -3
  776. package/src/components/docs/studio/StudioBYOKPage.tsx +11 -11
  777. package/src/components/docs/studio/StudioDeploymentsPage.tsx +11 -11
  778. package/src/components/docs/studio/StudioGettingStartedPage.tsx +11 -11
  779. package/src/components/docs/studio/StudioIntegrationsPage.tsx +11 -11
  780. package/src/components/docs/studio/StudioOverviewPage.tsx +94 -73
  781. package/src/components/docs/studio/StudioVisualBuilderPage.tsx +11 -11
  782. package/src/components/docs/studio/index.ts +4 -4
  783. package/src/components/docs/tech/contracts/tech-docs.docblocks.ts +10 -10
  784. package/src/components/integrations/molecules/IntegrationCard.tsx +71 -72
  785. package/src/components/integrations/organisms/IntegrationMarketplace.tsx +116 -116
  786. package/src/components/integrations/organisms/IntegrationSettings.tsx +201 -201
  787. package/src/components/integrations/organisms/KnowledgeSourceList.tsx +93 -94
  788. package/src/components/legal/PrivacyTemplate.tsx +611 -611
  789. package/src/components/legal/TermsTemplate.tsx +675 -675
  790. package/src/components/shared/FeatureGateNotice.tsx +26 -27
  791. package/src/components/shell/WorkspaceHeader.tsx +80 -80
  792. package/src/components/shell/WorkspaceProjectShellLayout.tsx +59 -58
  793. package/src/components/shell/WorkspaceShellRenderer.tsx +69 -68
  794. package/src/components/shell/WorkspaceSidebar.tsx +58 -58
  795. package/src/components/shell/index.ts +1 -1
  796. package/src/components/templates/engine/index.ts +29 -28
  797. package/src/components/templates/index.ts +1 -1
  798. package/src/components/templates/messaging/ConversationList.tsx +68 -69
  799. package/src/components/templates/messaging/MessageComposer.tsx +59 -59
  800. package/src/components/templates/messaging/MessageThread.tsx +73 -74
  801. package/src/components/templates/messaging/MessagingWorkspace.tsx +18 -19
  802. package/src/components/templates/messaging/index.ts +1 -1
  803. package/src/components/templates/messaging/types.ts +17 -17
  804. package/src/components/templates/recipes/LanguageSwitcher.tsx +20 -20
  805. package/src/components/templates/recipes/RecipeCard.tsx +56 -56
  806. package/src/components/templates/recipes/RecipeDetail.tsx +43 -43
  807. package/src/components/templates/recipes/RecipeList.tsx +62 -63
  808. package/src/components/templates/recipes/index.ts +2 -2
  809. package/src/components/templates/recipes/types.ts +24 -24
  810. package/src/components/templates/todos/FilterBar.tsx +84 -84
  811. package/src/components/templates/todos/TaskForm.tsx +118 -119
  812. package/src/components/templates/todos/TaskItem.tsx +78 -78
  813. package/src/components/templates/todos/TaskList.tsx +106 -107
  814. package/src/components/templates/todos/index.ts +2 -2
  815. package/src/components/templates/todos/types.ts +11 -11
  816. package/src/config/contractspec-blueprint.ts +55 -55
  817. package/src/config/contractspec-branding.ts +37 -37
  818. package/src/config/contractspec-routes.ts +22 -22
  819. package/src/config/index.ts +14 -15
  820. package/src/features/contracts-registry.ts +118 -118
  821. package/src/features/docs/docs.contracts.ts +6 -6
  822. package/src/features/docs/index.ts +6 -6
  823. package/src/features/docs.feature.ts +27 -27
  824. package/src/features/index.ts +59 -63
  825. package/src/features/mcp.feature.ts +24 -24
  826. package/src/features/presentations.feature.ts +27 -27
  827. package/src/features/registry.ts +14 -14
  828. package/src/index.ts +2 -2
  829. package/src/infrastructure/elysia/logger.ts +21 -21
  830. package/src/libs/email/client.test.ts +81 -81
  831. package/src/libs/email/client.ts +111 -111
  832. package/src/libs/email/contact.ts +35 -35
  833. package/src/libs/email/newsletter.ts +46 -46
  834. package/src/libs/email/types.ts +29 -29
  835. package/src/libs/email/utils.ts +5 -5
  836. package/src/libs/email/waitlist-application.ts +69 -69
  837. package/src/libs/email/waitlist.ts +46 -46
  838. package/src/libs/email.ts +7 -7
  839. package/src/libs/posthog/client.ts +44 -44
  840. package/src/libs/posthog/native.ts +23 -22
  841. package/src/libs/posthog/server.ts +7 -7
  842. package/src/libs/pricing-examples.ts +12 -12
  843. package/src/presentation/features/atoms/FeatureIcon/FeatureIcon.tsx +90 -90
  844. package/src/presentation/features/atoms/FeatureIcon/index.ts +3 -3
  845. package/src/presentation/features/hooks/index.ts +9 -9
  846. package/src/presentation/features/hooks/useContractsRegistry.ts +23 -23
  847. package/src/presentation/features/hooks/useFeatureFilters.ts +117 -117
  848. package/src/presentation/features/hooks/useFeatureRegistry.ts +40 -40
  849. package/src/presentation/features/hooks/useRelatedDocs.ts +28 -28
  850. package/src/presentation/features/index.ts +50 -52
  851. package/src/presentation/features/molecules/FeatureCard/FeatureCard.tsx +80 -80
  852. package/src/presentation/features/molecules/FeatureCard/types.ts +6 -6
  853. package/src/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.tsx +54 -54
  854. package/src/presentation/features/molecules/FeatureCategoryHeader/index.ts +2 -2
  855. package/src/presentation/features/molecules/FeatureFilters/FeatureFilters.tsx +67 -67
  856. package/src/presentation/features/molecules/FeatureFilters/types.ts +20 -20
  857. package/src/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.tsx +120 -121
  858. package/src/presentation/features/molecules/FeatureHoverPreview/index.ts +2 -2
  859. package/src/presentation/features/molecules/index.ts +8 -8
  860. package/src/presentation/features/organisms/FeatureDataViewsList.tsx +21 -21
  861. package/src/presentation/features/organisms/FeatureDetail/FeatureDetail.tsx +86 -86
  862. package/src/presentation/features/organisms/FeatureDetail/types.ts +4 -4
  863. package/src/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.tsx +210 -210
  864. package/src/presentation/features/organisms/FeatureDiscovery/index.ts +3 -3
  865. package/src/presentation/features/organisms/FeatureDiscovery/types.ts +10 -10
  866. package/src/presentation/features/organisms/FeatureEventsList.tsx +19 -19
  867. package/src/presentation/features/organisms/FeatureFormsList.tsx +19 -19
  868. package/src/presentation/features/organisms/FeatureOperationsList.tsx +21 -21
  869. package/src/presentation/features/organisms/FeaturePresentationsList.tsx +21 -21
  870. package/src/presentation/features/organisms/index.ts +6 -6
  871. package/src/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.tsx +219 -219
  872. package/src/presentation/features/templates/FeatureDataViewDetailTemplate/types.ts +7 -7
  873. package/src/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.tsx +26 -26
  874. package/src/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.tsx +195 -195
  875. package/src/presentation/features/templates/FeatureEventDetailTemplate/types.ts +7 -7
  876. package/src/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.tsx +26 -26
  877. package/src/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.tsx +216 -216
  878. package/src/presentation/features/templates/FeatureFormDetailTemplate/types.ts +7 -7
  879. package/src/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.tsx +26 -26
  880. package/src/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.tsx +228 -228
  881. package/src/presentation/features/templates/FeatureOperationDetailTemplate/types.ts +7 -7
  882. package/src/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.tsx +26 -26
  883. package/src/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.tsx +24 -24
  884. package/src/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.tsx +201 -201
  885. package/src/presentation/features/templates/FeaturePresentationDetailTemplate/types.ts +8 -8
  886. package/src/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.tsx +26 -26
  887. package/src/presentation/features/templates/types.ts +2 -2
  888. package/tsconfig.json +12 -12
  889. package/tsdown.config.js +5 -5
@@ -1,45 +1,45 @@
1
1
  // src/features/docs/docs.contracts.ts
2
2
  import {
3
+ ContractReferenceQuery,
3
4
  DocSummaryModel,
4
5
  DocsIndexInput,
5
6
  DocsIndexOutput,
6
7
  DocsIndexQuery,
7
- DocsIndexQuery as DocsIndexQuery2,
8
- ContractReferenceQuery
8
+ DocsIndexQuery as DocsIndexQuery2
9
9
  } from "@contractspec/lib.contracts-spec/docs";
10
10
  // src/features/contracts-registry.ts
11
11
  import {
12
- OperationSpecRegistry,
13
- EventRegistry
12
+ EventRegistry,
13
+ OperationSpecRegistry
14
14
  } from "@contractspec/lib.contracts-spec";
15
- import {
16
- PresentationRegistry
17
- } from "@contractspec/lib.contracts-spec/presentations";
18
15
  import {
19
16
  DataViewRegistry
20
17
  } from "@contractspec/lib.contracts-spec/data-views";
21
- import { FormRegistry } from "@contractspec/lib.contracts-spec/forms";
22
- import {
23
- serializeOperationSpec,
24
- serializeEventSpec,
25
- serializePresentationSpec,
26
- serializeDataViewSpec,
27
- serializeFormSpec
28
- } from "@contractspec/lib.contracts-spec/serialization";
29
18
  import {
30
19
  ContractReferenceDataView,
31
20
  ContractReferenceQuery as ContractReferenceQuery2,
32
- DocsGeneratedEvent,
33
21
  DocsGenerateCommand,
22
+ DocsGeneratedEvent,
34
23
  DocsIndexDataView,
35
24
  DocsIndexQuery as DocsIndexQuery3,
36
25
  DocsLayoutPresentation,
37
- DocsPublishedEvent,
38
26
  DocsPublishCommand,
27
+ DocsPublishedEvent,
39
28
  DocsReferencePagePresentation,
40
29
  DocsSearchForm,
41
30
  ExampleCatalogDataView
42
31
  } from "@contractspec/lib.contracts-spec/docs";
32
+ import { FormRegistry } from "@contractspec/lib.contracts-spec/forms";
33
+ import {
34
+ PresentationRegistry
35
+ } from "@contractspec/lib.contracts-spec/presentations";
36
+ import {
37
+ serializeDataViewSpec,
38
+ serializeEventSpec,
39
+ serializeFormSpec,
40
+ serializeOperationSpec,
41
+ serializePresentationSpec
42
+ } from "@contractspec/lib.contracts-spec/serialization";
43
43
  var operationRegistry = null;
44
44
  function createContractSpecOperationRegistry() {
45
45
  const registry = new OperationSpecRegistry;
@@ -249,8 +249,8 @@ var PresentationsFeature = {
249
249
  };
250
250
 
251
251
  // src/features/registry.ts
252
- import { FeatureRegistry } from "@contractspec/lib.contracts-spec/features";
253
252
  import { AppConfigFeature } from "@contractspec/lib.contracts-spec/app-config";
253
+ import { FeatureRegistry } from "@contractspec/lib.contracts-spec/features";
254
254
  function createContractSpecFeatureRegistry() {
255
255
  const features = new FeatureRegistry;
256
256
  features.register(DocsFeature);
@@ -274,19 +274,19 @@ function resetContractSpecFeatureRegistry() {
274
274
  import { FeatureRegistry as FeatureRegistry2 } from "@contractspec/lib.contracts-spec/features";
275
275
 
276
276
  // src/presentation/features/atoms/FeatureIcon/FeatureIcon.tsx
277
- import * as React from "react";
277
+ import { cn } from "@contractspec/lib.ui-kit-web/ui/utils";
278
278
  import {
279
- FileText,
280
279
  Boxes,
281
- Settings,
282
- Globe,
283
- Shield,
284
280
  Database,
285
- MessageSquare,
281
+ FileText,
282
+ Globe,
286
283
  Layout,
284
+ MessageSquare,
285
+ Settings,
286
+ Shield,
287
287
  Workflow
288
288
  } from "lucide-react";
289
- import { cn } from "@contractspec/lib.ui-kit-web/ui/utils";
289
+ import * as React from "react";
290
290
  import { jsx } from "react/jsx-runtime";
291
291
  "use client";
292
292
  var domainIconMap = {
@@ -366,41 +366,8 @@ function getFeatureIconTone(stability) {
366
366
  return "primary";
367
367
  return stabilityToneMap[stability] || "primary";
368
368
  }
369
- // src/presentation/features/hooks/useFeatureRegistry.ts
370
- import { useMemo as useMemo2 } from "react";
371
- "use client";
372
- function useFeatureRegistry() {
373
- const registry = useMemo2(() => getContractSpecFeatureRegistry(), []);
374
- return useMemo2(() => {
375
- const features = registry.list();
376
- return {
377
- features,
378
- getFeature: (key) => registry.get(key),
379
- getByTag: (tag) => registry.listByTag(tag),
380
- getByOwner: (owner) => registry.listByOwner(owner),
381
- getUniqueTags: () => registry.getUniqueTags(),
382
- getUniqueDomains: () => {
383
- const domains = new Set;
384
- for (const f of features) {
385
- if (f.meta.domain)
386
- domains.add(f.meta.domain);
387
- }
388
- return [...domains].sort();
389
- },
390
- getUniqueStabilities: () => {
391
- const stabilities = new Set;
392
- for (const f of features) {
393
- if (f.meta.stability)
394
- stabilities.add(f.meta.stability);
395
- }
396
- return [...stabilities].sort();
397
- }
398
- };
399
- }, [registry]);
400
- }
401
-
402
369
  // src/presentation/features/hooks/useFeatureFilters.ts
403
- import { useState, useMemo as useMemo3, useCallback } from "react";
370
+ import { useCallback, useMemo as useMemo2, useState } from "react";
404
371
  "use client";
405
372
  var defaultFilters = {
406
373
  search: "",
@@ -432,10 +399,10 @@ function useFeatureFilters(features) {
432
399
  }));
433
400
  }, []);
434
401
  const clearFilters = useCallback(() => setFilters(defaultFilters), []);
435
- const hasActiveFilters = useMemo3(() => {
402
+ const hasActiveFilters = useMemo2(() => {
436
403
  return filters.search.length > 0 || filters.tags.length > 0 || filters.stability.length > 0 || filters.domain.length > 0;
437
404
  }, [filters]);
438
- const filteredFeatures = useMemo3(() => {
405
+ const filteredFeatures = useMemo2(() => {
439
406
  return features.filter((feature) => {
440
407
  if (filters.search) {
441
408
  const searchLower = filters.search.toLowerCase();
@@ -472,6 +439,39 @@ function useFeatureFilters(features) {
472
439
  };
473
440
  }
474
441
 
442
+ // src/presentation/features/hooks/useFeatureRegistry.ts
443
+ import { useMemo as useMemo3 } from "react";
444
+ "use client";
445
+ function useFeatureRegistry() {
446
+ const registry = useMemo3(() => getContractSpecFeatureRegistry(), []);
447
+ return useMemo3(() => {
448
+ const features = registry.list();
449
+ return {
450
+ features,
451
+ getFeature: (key) => registry.get(key),
452
+ getByTag: (tag) => registry.listByTag(tag),
453
+ getByOwner: (owner) => registry.listByOwner(owner),
454
+ getUniqueTags: () => registry.getUniqueTags(),
455
+ getUniqueDomains: () => {
456
+ const domains = new Set;
457
+ for (const f of features) {
458
+ if (f.meta.domain)
459
+ domains.add(f.meta.domain);
460
+ }
461
+ return [...domains].sort();
462
+ },
463
+ getUniqueStabilities: () => {
464
+ const stabilities = new Set;
465
+ for (const f of features) {
466
+ if (f.meta.stability)
467
+ stabilities.add(f.meta.stability);
468
+ }
469
+ return [...stabilities].sort();
470
+ }
471
+ };
472
+ }, [registry]);
473
+ }
474
+
475
475
  // src/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.tsx
476
476
  import { StatusChip } from "@contractspec/lib.design-system";
477
477
  import { HStack } from "@contractspec/lib.ui-kit-web/ui/stack";
@@ -550,7 +550,7 @@ function FeatureHoverPreview({ feature }) {
550
550
  ]
551
551
  }),
552
552
  hasCapabilities && /* @__PURE__ */ jsxs("div", {
553
- className: "border-border/50 space-y-1.5 border-t pt-1",
553
+ className: "space-y-1.5 border-border/50 border-t pt-1",
554
554
  children: [
555
555
  capabilities?.provides?.length ? /* @__PURE__ */ jsxs(HStack, {
556
556
  gap: "xs",
@@ -609,13 +609,13 @@ function FeatureHoverPreview({ feature }) {
609
609
  meta.tags?.length ? /* @__PURE__ */ jsxs(HStack, {
610
610
  gap: "xs",
611
611
  wrap: "wrap",
612
- className: "border-border/50 items-center border-t pt-1",
612
+ className: "items-center border-border/50 border-t pt-1",
613
613
  children: [
614
614
  /* @__PURE__ */ jsx2(Tag, {
615
- className: "text-muted-foreground h-3.5 w-3.5"
615
+ className: "h-3.5 w-3.5 text-muted-foreground"
616
616
  }),
617
617
  meta.tags.slice(0, 4).map((tag) => /* @__PURE__ */ jsxs("span", {
618
- className: "bg-muted text-muted-foreground rounded px-1.5 py-0.5 text-xs",
618
+ className: "rounded bg-muted px-1.5 py-0.5 text-muted-foreground text-xs",
619
619
  children: [
620
620
  "#",
621
621
  tag
@@ -632,7 +632,7 @@ function FeatureHoverPreview({ feature }) {
632
632
  }) : null,
633
633
  meta.owners?.length ? /* @__PURE__ */ jsxs(HStack, {
634
634
  gap: "xs",
635
- className: "text-muted-foreground items-center text-xs",
635
+ className: "items-center text-muted-foreground text-xs",
636
636
  children: [
637
637
  /* @__PURE__ */ jsx2(Users, {
638
638
  className: "h-3.5 w-3.5"
@@ -648,7 +648,7 @@ function FeatureHoverPreview({ feature }) {
648
648
  // src/presentation/features/molecules/FeatureCard/FeatureCard.tsx
649
649
  import { EntityCard, StatusChip as StatusChip2 } from "@contractspec/lib.design-system";
650
650
  import { HStack as HStack2 } from "@contractspec/lib.ui-kit-web/ui/stack";
651
- import { Zap as Zap2, Radio as Radio2, Layout as Layout3, Shield as Shield3 } from "lucide-react";
651
+ import { Layout as Layout3, Radio as Radio2, Shield as Shield3, Zap as Zap2 } from "lucide-react";
652
652
  import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
653
653
  "use client";
654
654
  var stabilityTone = {
@@ -687,7 +687,7 @@ function FeatureCard({
687
687
  size: "sm"
688
688
  }),
689
689
  meta: meta.description ? /* @__PURE__ */ jsx3("span", {
690
- className: "text-muted-foreground line-clamp-2 text-sm",
690
+ className: "line-clamp-2 text-muted-foreground text-sm",
691
691
  children: meta.description
692
692
  }) : undefined,
693
693
  preview: /* @__PURE__ */ jsx3(FeatureHoverPreview, {
@@ -695,7 +695,7 @@ function FeatureCard({
695
695
  }),
696
696
  footer: /* @__PURE__ */ jsxs2(HStack2, {
697
697
  gap: "md",
698
- className: "text-muted-foreground w-full justify-between text-xs",
698
+ className: "w-full justify-between text-muted-foreground text-xs",
699
699
  children: [
700
700
  /* @__PURE__ */ jsxs2(HStack2, {
701
701
  gap: "sm",
@@ -742,12 +742,59 @@ function FeatureCard({
742
742
  })
743
743
  });
744
744
  }
745
- // src/presentation/features/molecules/FeatureFilters/FeatureFilters.tsx
746
- import { Button, Input } from "@contractspec/lib.design-system";
747
- import { VStack, HStack as HStack3 } from "@contractspec/lib.ui-kit-web/ui/stack";
745
+ // src/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.tsx
746
+ import { StatusChip as StatusChip3 } from "@contractspec/lib.design-system";
747
+ import { HStack as HStack3 } from "@contractspec/lib.ui-kit-web/ui/stack";
748
748
  import { cn as cn2 } from "@contractspec/lib.ui-kit-web/ui/utils";
749
+ import { Boxes as Boxes2, ChevronDown } from "lucide-react";
749
750
  import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
750
751
  "use client";
752
+ function FeatureCategoryHeader({
753
+ title,
754
+ count,
755
+ icon,
756
+ isCollapsed = false,
757
+ onToggle,
758
+ className
759
+ }) {
760
+ return /* @__PURE__ */ jsxs3("button", {
761
+ type: "button",
762
+ onClick: onToggle,
763
+ className: cn2("flex w-full items-center justify-between rounded-lg px-4 py-3", "bg-muted/30 transition-colors hover:bg-muted/50", "group cursor-pointer", className),
764
+ children: [
765
+ /* @__PURE__ */ jsxs3(HStack3, {
766
+ gap: "sm",
767
+ className: "items-center",
768
+ children: [
769
+ /* @__PURE__ */ jsx4("div", {
770
+ className: "text-muted-foreground transition-colors group-hover:text-foreground",
771
+ children: icon || /* @__PURE__ */ jsx4(Boxes2, {
772
+ className: "h-5 w-5"
773
+ })
774
+ }),
775
+ /* @__PURE__ */ jsx4("span", {
776
+ className: "font-semibold text-lg capitalize transition-colors group-hover:text-primary",
777
+ children: title
778
+ }),
779
+ /* @__PURE__ */ jsx4(StatusChip3, {
780
+ tone: "neutral",
781
+ label: `${count} ${count === 1 ? "feature" : "features"}`,
782
+ size: "sm"
783
+ })
784
+ ]
785
+ }),
786
+ /* @__PURE__ */ jsx4(ChevronDown, {
787
+ className: cn2("h-5 w-5 text-muted-foreground transition-transform duration-200", isCollapsed && "-rotate-90")
788
+ })
789
+ ]
790
+ });
791
+ }
792
+ // src/presentation/features/molecules/FeatureFilters/FeatureFilters.tsx
793
+ import { Button, Input } from "@contractspec/lib.design-system";
794
+ import { HStack as HStack4, VStack } from "@contractspec/lib.ui-kit-web/ui/stack";
795
+ import { cn as cn3 } from "@contractspec/lib.ui-kit-web/ui/utils";
796
+ import { jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
797
+ "use client";
751
798
  function FeatureFiltersBar({
752
799
  uniqueTags,
753
800
  uniqueStabilities,
@@ -759,23 +806,23 @@ function FeatureFiltersBar({
759
806
  hasActiveFilters,
760
807
  className
761
808
  }) {
762
- return /* @__PURE__ */ jsxs3(VStack, {
809
+ return /* @__PURE__ */ jsxs4(VStack, {
763
810
  gap: "md",
764
- className: cn2("w-full", className),
811
+ className: cn3("w-full", className),
765
812
  children: [
766
- /* @__PURE__ */ jsxs3(HStack3, {
813
+ /* @__PURE__ */ jsxs4(HStack4, {
767
814
  gap: "md",
768
815
  justify: "between",
769
816
  className: "w-full",
770
817
  children: [
771
- /* @__PURE__ */ jsx4(Input, {
818
+ /* @__PURE__ */ jsx5(Input, {
772
819
  placeholder: "Search features...",
773
820
  value: filters.search,
774
821
  onChange: (e) => setSearch(e.target.value),
775
822
  className: "max-w-md",
776
823
  "aria-label": "Search features"
777
824
  }),
778
- hasActiveFilters && /* @__PURE__ */ jsx4(Button, {
825
+ hasActiveFilters && /* @__PURE__ */ jsx5(Button, {
779
826
  variant: "ghost",
780
827
  size: "sm",
781
828
  onClick: clearFilters,
@@ -783,15 +830,15 @@ function FeatureFiltersBar({
783
830
  })
784
831
  ]
785
832
  }),
786
- uniqueStabilities.length > 0 && /* @__PURE__ */ jsxs3(HStack3, {
833
+ uniqueStabilities.length > 0 && /* @__PURE__ */ jsxs4(HStack4, {
787
834
  gap: "xs",
788
835
  wrap: "wrap",
789
836
  children: [
790
- /* @__PURE__ */ jsx4("span", {
837
+ /* @__PURE__ */ jsx5("span", {
791
838
  className: "text-muted-foreground text-sm",
792
839
  children: "Stability:"
793
840
  }),
794
- uniqueStabilities.map((stability) => /* @__PURE__ */ jsx4(Button, {
841
+ uniqueStabilities.map((stability) => /* @__PURE__ */ jsx5(Button, {
795
842
  variant: filters.stability.includes(stability) ? "default" : "outline",
796
843
  size: "sm",
797
844
  onClick: () => toggleStability(stability),
@@ -800,15 +847,15 @@ function FeatureFiltersBar({
800
847
  }, stability))
801
848
  ]
802
849
  }),
803
- uniqueTags.length > 0 && /* @__PURE__ */ jsxs3(HStack3, {
850
+ uniqueTags.length > 0 && /* @__PURE__ */ jsxs4(HStack4, {
804
851
  gap: "xs",
805
852
  wrap: "wrap",
806
853
  children: [
807
- /* @__PURE__ */ jsx4("span", {
854
+ /* @__PURE__ */ jsx5("span", {
808
855
  className: "text-muted-foreground text-sm",
809
856
  children: "Tags:"
810
857
  }),
811
- uniqueTags.slice(0, 10).map((tag) => /* @__PURE__ */ jsxs3(Button, {
858
+ uniqueTags.slice(0, 10).map((tag) => /* @__PURE__ */ jsxs4(Button, {
812
859
  variant: filters.tags.includes(tag) ? "default" : "outline",
813
860
  size: "sm",
814
861
  onClick: () => toggleTag(tag),
@@ -818,7 +865,7 @@ function FeatureFiltersBar({
818
865
  tag
819
866
  ]
820
867
  }, tag)),
821
- uniqueTags.length > 10 && /* @__PURE__ */ jsxs3("span", {
868
+ uniqueTags.length > 10 && /* @__PURE__ */ jsxs4("span", {
822
869
  className: "text-muted-foreground text-sm",
823
870
  children: [
824
871
  "+",
@@ -831,96 +878,227 @@ function FeatureFiltersBar({
831
878
  ]
832
879
  });
833
880
  }
834
- // src/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.tsx
835
- import { cn as cn3 } from "@contractspec/lib.ui-kit-web/ui/utils";
836
- import { ChevronDown, Boxes as Boxes2 } from "lucide-react";
837
- import { HStack as HStack4 } from "@contractspec/lib.ui-kit-web/ui/stack";
838
- import { StatusChip as StatusChip3 } from "@contractspec/lib.design-system";
839
- import { jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
881
+ // src/presentation/features/organisms/FeatureDataViewsList.tsx
882
+ import { EntityCard as EntityCard2 } from "@contractspec/lib.design-system";
883
+ import { Table } from "lucide-react";
884
+ import { jsx as jsx6 } from "react/jsx-runtime";
840
885
  "use client";
841
- function FeatureCategoryHeader({
842
- title,
843
- count,
844
- icon,
845
- isCollapsed = false,
846
- onToggle,
847
- className
886
+ function FeatureDataViewsList({
887
+ feature
848
888
  }) {
849
- return /* @__PURE__ */ jsxs4("button", {
850
- type: "button",
851
- onClick: onToggle,
852
- className: cn3("flex w-full items-center justify-between rounded-lg px-4 py-3", "bg-muted/30 hover:bg-muted/50 transition-colors", "group cursor-pointer", className),
889
+ if (!feature.dataViews?.length)
890
+ return null;
891
+ return /* @__PURE__ */ jsx6("div", {
892
+ className: "grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",
893
+ children: feature.dataViews.map((view) => {
894
+ const spec = resolveSerializedDataViewSpec(view.key, view.version);
895
+ return /* @__PURE__ */ jsx6(EntityCard2, {
896
+ cardTitle: view.key,
897
+ cardSubtitle: `v${view.version}`,
898
+ footer: spec?.meta.description,
899
+ icon: /* @__PURE__ */ jsx6(Table, {
900
+ className: "h-4 w-4"
901
+ }),
902
+ href: `/features/${feature.meta.key}/dataviews/${view.key}`
903
+ }, view.key);
904
+ })
905
+ });
906
+ }
907
+
908
+ // src/presentation/features/organisms/FeatureDetail/FeatureDetail.tsx
909
+ import {
910
+ StatCard,
911
+ StatCardGroup,
912
+ StatusChip as StatusChip4
913
+ } from "@contractspec/lib.design-system";
914
+ import { Box, HStack as HStack5, VStack as VStack2 } from "@contractspec/lib.ui-kit-web/ui/stack";
915
+ import { cn as cn4 } from "@contractspec/lib.ui-kit-web/ui/utils";
916
+ import Link from "next/link";
917
+ import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
918
+ "use client";
919
+ var stabilityTone2 = {
920
+ stable: "success",
921
+ beta: "warning",
922
+ experimental: "info",
923
+ deprecated: "danger"
924
+ };
925
+ function FeatureDetail({ feature, className }) {
926
+ const { meta, operations, events, presentations, capabilities } = feature;
927
+ const tone = stabilityTone2[meta.stability] ?? "neutral";
928
+ return /* @__PURE__ */ jsxs5(VStack2, {
929
+ gap: "lg",
930
+ className: cn4("w-full", className),
853
931
  children: [
854
- /* @__PURE__ */ jsxs4(HStack4, {
932
+ /* @__PURE__ */ jsxs5(HStack5, {
855
933
  gap: "sm",
856
- className: "items-center",
857
934
  children: [
858
- /* @__PURE__ */ jsx5("div", {
859
- className: "text-muted-foreground group-hover:text-foreground transition-colors",
860
- children: icon || /* @__PURE__ */ jsx5(Boxes2, {
861
- className: "h-5 w-5"
862
- })
935
+ /* @__PURE__ */ jsx7(StatusChip4, {
936
+ tone,
937
+ label: meta.stability ?? "unknown"
863
938
  }),
864
- /* @__PURE__ */ jsx5("span", {
865
- className: "group-hover:text-primary text-lg font-semibold capitalize transition-colors",
866
- children: title
939
+ /* @__PURE__ */ jsx7(StatusChip4, {
940
+ tone: "neutral",
941
+ label: meta.key,
942
+ size: "sm"
867
943
  }),
868
- /* @__PURE__ */ jsx5(StatusChip3, {
944
+ /* @__PURE__ */ jsx7(StatusChip4, {
869
945
  tone: "neutral",
870
- label: `${count} ${count === 1 ? "feature" : "features"}`,
946
+ label: `v${meta.version}`,
871
947
  size: "sm"
872
948
  })
873
949
  ]
874
950
  }),
875
- /* @__PURE__ */ jsx5(ChevronDown, {
876
- className: cn3("text-muted-foreground h-5 w-5 transition-transform duration-200", isCollapsed && "-rotate-90")
877
- })
878
- ]
879
- });
880
- }
881
- // src/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.tsx
882
- import * as React2 from "react";
883
- import {
884
- PageHeaderResponsive,
885
- EmptyState,
886
- Button as Button2,
887
- StatusChip as StatusChip4
888
- } from "@contractspec/lib.design-system";
889
- import { VStack as VStack2, HStack as HStack5 } from "@contractspec/lib.ui-kit-web/ui/stack";
890
- import { cn as cn4 } from "@contractspec/lib.ui-kit-web/ui/utils";
891
- import { LayoutGrid, List, Star } from "lucide-react";
892
- import { jsx as jsx6, jsxs as jsxs5 } from "react/jsx-runtime";
893
- "use client";
894
- function groupFeaturesByDomain(features) {
895
- const groups = {};
896
- for (const feature of features) {
897
- const domain = feature.meta.domain || "Other";
898
- if (!groups[domain])
899
- groups[domain] = [];
900
- groups[domain].push(feature);
901
- }
902
- return groups;
903
- }
904
- function groupFeaturesByStability(features) {
905
- const order = ["stable", "beta", "experimental", "deprecated", "unknown"];
906
- const groups = {};
907
- for (const feature of features) {
908
- const stability = feature.meta.stability || "unknown";
909
- if (!groups[stability])
910
- groups[stability] = [];
911
- groups[stability].push(feature);
912
- }
913
- const sorted = {};
914
- for (const key of order) {
915
- if (groups[key])
916
- sorted[key] = groups[key];
917
- }
918
- return sorted;
919
- }
920
- function FeatureDiscovery({
921
- onSelectFeature,
922
- className,
923
- defaultViewMode = "grid",
951
+ /* @__PURE__ */ jsxs5(StatCardGroup, {
952
+ children: [
953
+ /* @__PURE__ */ jsx7(Link, {
954
+ href: `./${feature.meta.key}/operations`,
955
+ children: /* @__PURE__ */ jsx7(StatCard, {
956
+ label: "Operations",
957
+ value: operations?.length ?? 0
958
+ })
959
+ }),
960
+ /* @__PURE__ */ jsx7(Link, {
961
+ href: `./${feature.meta.key}/events`,
962
+ children: /* @__PURE__ */ jsx7(StatCard, {
963
+ label: "Events",
964
+ value: events?.length ?? 0
965
+ })
966
+ }),
967
+ /* @__PURE__ */ jsx7(Link, {
968
+ href: `./${feature.meta.key}/presentations`,
969
+ children: /* @__PURE__ */ jsx7(StatCard, {
970
+ label: "Presentations",
971
+ value: presentations?.length ?? 0
972
+ })
973
+ })
974
+ ]
975
+ }),
976
+ capabilities?.provides?.length ? /* @__PURE__ */ jsxs5(Box, {
977
+ className: "flex-col rounded-lg border p-4",
978
+ gap: "sm",
979
+ align: "start",
980
+ children: [
981
+ /* @__PURE__ */ jsx7("span", {
982
+ className: "font-semibold",
983
+ children: "Provides Capabilities"
984
+ }),
985
+ /* @__PURE__ */ jsx7(HStack5, {
986
+ gap: "xs",
987
+ wrap: "wrap",
988
+ children: capabilities.provides.map((cap) => /* @__PURE__ */ jsx7(StatusChip4, {
989
+ tone: "success",
990
+ label: `${cap.key} v${cap.version}`,
991
+ size: "sm"
992
+ }, `${cap.key}-${cap.version}`))
993
+ })
994
+ ]
995
+ }) : null,
996
+ capabilities?.requires?.length ? /* @__PURE__ */ jsxs5(Box, {
997
+ className: "flex-col rounded-lg border p-4",
998
+ gap: "sm",
999
+ align: "start",
1000
+ children: [
1001
+ /* @__PURE__ */ jsx7("span", {
1002
+ className: "font-semibold",
1003
+ children: "Requires Capabilities"
1004
+ }),
1005
+ /* @__PURE__ */ jsx7(HStack5, {
1006
+ gap: "xs",
1007
+ wrap: "wrap",
1008
+ children: capabilities.requires.map((req) => /* @__PURE__ */ jsx7(StatusChip4, {
1009
+ tone: "info",
1010
+ label: `${req.key}${req.version ? ` v${req.version}` : ""}${req.optional ? " (optional)" : ""}`,
1011
+ size: "sm"
1012
+ }, req.key))
1013
+ })
1014
+ ]
1015
+ }) : null,
1016
+ meta.tags?.length ? /* @__PURE__ */ jsxs5(Box, {
1017
+ className: "flex-col rounded-lg border p-4",
1018
+ gap: "sm",
1019
+ align: "start",
1020
+ children: [
1021
+ /* @__PURE__ */ jsx7("span", {
1022
+ className: "font-semibold",
1023
+ children: "Tags"
1024
+ }),
1025
+ /* @__PURE__ */ jsx7(HStack5, {
1026
+ gap: "xs",
1027
+ wrap: "wrap",
1028
+ children: meta.tags.map((tag) => /* @__PURE__ */ jsx7(StatusChip4, {
1029
+ tone: "neutral",
1030
+ label: `#${tag}`,
1031
+ size: "sm"
1032
+ }, tag))
1033
+ })
1034
+ ]
1035
+ }) : null,
1036
+ meta.owners?.length ? /* @__PURE__ */ jsxs5(Box, {
1037
+ className: "flex-col rounded-lg border p-4",
1038
+ gap: "sm",
1039
+ align: "start",
1040
+ children: [
1041
+ /* @__PURE__ */ jsx7("span", {
1042
+ className: "font-semibold",
1043
+ children: "Owners"
1044
+ }),
1045
+ /* @__PURE__ */ jsx7(HStack5, {
1046
+ gap: "xs",
1047
+ wrap: "wrap",
1048
+ children: meta.owners.map((owner) => /* @__PURE__ */ jsx7(StatusChip4, {
1049
+ tone: "neutral",
1050
+ label: owner,
1051
+ size: "sm"
1052
+ }, owner))
1053
+ })
1054
+ ]
1055
+ }) : null
1056
+ ]
1057
+ });
1058
+ }
1059
+ // src/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.tsx
1060
+ import {
1061
+ Button as Button2,
1062
+ EmptyState,
1063
+ PageHeaderResponsive,
1064
+ StatusChip as StatusChip5
1065
+ } from "@contractspec/lib.design-system";
1066
+ import { HStack as HStack6, VStack as VStack3 } from "@contractspec/lib.ui-kit-web/ui/stack";
1067
+ import { cn as cn5 } from "@contractspec/lib.ui-kit-web/ui/utils";
1068
+ import { LayoutGrid, List, Star } from "lucide-react";
1069
+ import * as React2 from "react";
1070
+ import { jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
1071
+ "use client";
1072
+ function groupFeaturesByDomain(features) {
1073
+ const groups = {};
1074
+ for (const feature of features) {
1075
+ const domain = feature.meta.domain || "Other";
1076
+ if (!groups[domain])
1077
+ groups[domain] = [];
1078
+ groups[domain].push(feature);
1079
+ }
1080
+ return groups;
1081
+ }
1082
+ function groupFeaturesByStability(features) {
1083
+ const order = ["stable", "beta", "experimental", "deprecated", "unknown"];
1084
+ const groups = {};
1085
+ for (const feature of features) {
1086
+ const stability = feature.meta.stability || "unknown";
1087
+ if (!groups[stability])
1088
+ groups[stability] = [];
1089
+ groups[stability].push(feature);
1090
+ }
1091
+ const sorted = {};
1092
+ for (const key of order) {
1093
+ if (groups[key])
1094
+ sorted[key] = groups[key];
1095
+ }
1096
+ return sorted;
1097
+ }
1098
+ function FeatureDiscovery({
1099
+ onSelectFeature,
1100
+ className,
1101
+ defaultViewMode = "grid",
924
1102
  groupBy = "domain",
925
1103
  showFeatured = true
926
1104
  }) {
@@ -959,42 +1137,42 @@ function FeatureDiscovery({
959
1137
  });
960
1138
  };
961
1139
  const gridClasses = viewMode === "grid" ? "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3" : "flex flex-col gap-3";
962
- const renderFeatureCards = (featureList) => /* @__PURE__ */ jsx6("div", {
1140
+ const renderFeatureCards = (featureList) => /* @__PURE__ */ jsx8("div", {
963
1141
  className: gridClasses,
964
- children: featureList.map((feature) => /* @__PURE__ */ jsx6(FeatureCard, {
1142
+ children: featureList.map((feature) => /* @__PURE__ */ jsx8(FeatureCard, {
965
1143
  feature,
966
1144
  onSelect: onSelectFeature
967
1145
  }, feature.meta.key))
968
1146
  });
969
- return /* @__PURE__ */ jsxs5(VStack2, {
1147
+ return /* @__PURE__ */ jsxs6(VStack3, {
970
1148
  gap: "lg",
971
- className: cn4("w-full p-6", className),
1149
+ className: cn5("w-full p-6", className),
972
1150
  children: [
973
- /* @__PURE__ */ jsxs5("div", {
1151
+ /* @__PURE__ */ jsxs6("div", {
974
1152
  className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
975
1153
  children: [
976
- /* @__PURE__ */ jsx6(PageHeaderResponsive, {
1154
+ /* @__PURE__ */ jsx8(PageHeaderResponsive, {
977
1155
  title: "Feature Discovery",
978
1156
  subtitle: `Browse ${features.length} available ContractSpec features`
979
1157
  }),
980
- /* @__PURE__ */ jsxs5(HStack5, {
1158
+ /* @__PURE__ */ jsxs6(HStack6, {
981
1159
  gap: "xs",
982
1160
  children: [
983
- /* @__PURE__ */ jsx6("button", {
1161
+ /* @__PURE__ */ jsx8("button", {
984
1162
  type: "button",
985
1163
  onClick: () => setViewMode("grid"),
986
- className: cn4("rounded-md p-2 transition-colors", viewMode === "grid" ? "bg-primary text-primary-foreground" : "bg-muted hover:bg-muted/80 text-muted-foreground"),
1164
+ className: cn5("rounded-md p-2 transition-colors", viewMode === "grid" ? "bg-primary text-primary-foreground" : "bg-muted text-muted-foreground hover:bg-muted/80"),
987
1165
  "aria-label": "Grid view",
988
- children: /* @__PURE__ */ jsx6(LayoutGrid, {
1166
+ children: /* @__PURE__ */ jsx8(LayoutGrid, {
989
1167
  className: "h-4 w-4"
990
1168
  })
991
1169
  }),
992
- /* @__PURE__ */ jsx6("button", {
1170
+ /* @__PURE__ */ jsx8("button", {
993
1171
  type: "button",
994
1172
  onClick: () => setViewMode("list"),
995
- className: cn4("rounded-md p-2 transition-colors", viewMode === "list" ? "bg-primary text-primary-foreground" : "bg-muted hover:bg-muted/80 text-muted-foreground"),
1173
+ className: cn5("rounded-md p-2 transition-colors", viewMode === "list" ? "bg-primary text-primary-foreground" : "bg-muted text-muted-foreground hover:bg-muted/80"),
996
1174
  "aria-label": "List view",
997
- children: /* @__PURE__ */ jsx6(List, {
1175
+ children: /* @__PURE__ */ jsx8(List, {
998
1176
  className: "h-4 w-4"
999
1177
  })
1000
1178
  })
@@ -1002,7 +1180,7 @@ function FeatureDiscovery({
1002
1180
  })
1003
1181
  ]
1004
1182
  }),
1005
- /* @__PURE__ */ jsx6(FeatureFiltersBar, {
1183
+ /* @__PURE__ */ jsx8(FeatureFiltersBar, {
1006
1184
  uniqueTags,
1007
1185
  uniqueStabilities,
1008
1186
  filters,
@@ -1012,32 +1190,32 @@ function FeatureDiscovery({
1012
1190
  clearFilters,
1013
1191
  hasActiveFilters
1014
1192
  }),
1015
- filteredFeatures.length === 0 ? /* @__PURE__ */ jsx6(EmptyState, {
1193
+ filteredFeatures.length === 0 ? /* @__PURE__ */ jsx8(EmptyState, {
1016
1194
  title: "No features found",
1017
1195
  description: hasActiveFilters ? "Try adjusting your search or filters" : "No features are registered yet",
1018
- primaryAction: hasActiveFilters ? /* @__PURE__ */ jsx6(Button2, {
1196
+ primaryAction: hasActiveFilters ? /* @__PURE__ */ jsx8(Button2, {
1019
1197
  variant: "outline",
1020
1198
  onClick: clearFilters,
1021
1199
  children: "Clear filters"
1022
1200
  }) : undefined
1023
- }) : /* @__PURE__ */ jsxs5(VStack2, {
1201
+ }) : /* @__PURE__ */ jsxs6(VStack3, {
1024
1202
  gap: "lg",
1025
1203
  children: [
1026
- showFeatured && featuredFeatures.length > 0 && /* @__PURE__ */ jsxs5(VStack2, {
1204
+ showFeatured && featuredFeatures.length > 0 && /* @__PURE__ */ jsxs6(VStack3, {
1027
1205
  gap: "sm",
1028
1206
  children: [
1029
- /* @__PURE__ */ jsxs5(HStack5, {
1207
+ /* @__PURE__ */ jsxs6(HStack6, {
1030
1208
  gap: "sm",
1031
1209
  className: "items-center",
1032
1210
  children: [
1033
- /* @__PURE__ */ jsx6(Star, {
1211
+ /* @__PURE__ */ jsx8(Star, {
1034
1212
  className: "h-5 w-5 fill-amber-500 text-amber-500"
1035
1213
  }),
1036
- /* @__PURE__ */ jsx6("span", {
1037
- className: "text-lg font-semibold",
1214
+ /* @__PURE__ */ jsx8("span", {
1215
+ className: "font-semibold text-lg",
1038
1216
  children: "Featured"
1039
1217
  }),
1040
- /* @__PURE__ */ jsx6(StatusChip4, {
1218
+ /* @__PURE__ */ jsx8(StatusChip5, {
1041
1219
  tone: "success",
1042
1220
  label: `${featuredFeatures.length} stable`,
1043
1221
  size: "sm"
@@ -1047,12 +1225,12 @@ function FeatureDiscovery({
1047
1225
  renderFeatureCards(featuredFeatures)
1048
1226
  ]
1049
1227
  }),
1050
- groupedFeatures ? /* @__PURE__ */ jsx6(VStack2, {
1228
+ groupedFeatures ? /* @__PURE__ */ jsx8(VStack3, {
1051
1229
  gap: "md",
1052
- children: Object.entries(groupedFeatures).map(([group, groupFeatures]) => /* @__PURE__ */ jsxs5(VStack2, {
1230
+ children: Object.entries(groupedFeatures).map(([group, groupFeatures]) => /* @__PURE__ */ jsxs6(VStack3, {
1053
1231
  gap: "sm",
1054
1232
  children: [
1055
- /* @__PURE__ */ jsx6(FeatureCategoryHeader, {
1233
+ /* @__PURE__ */ jsx8(FeatureCategoryHeader, {
1056
1234
  title: group,
1057
1235
  count: groupFeatures.length,
1058
1236
  isCollapsed: collapsedGroups.has(group),
@@ -1067,184 +1245,6 @@ function FeatureDiscovery({
1067
1245
  ]
1068
1246
  });
1069
1247
  }
1070
- // src/presentation/features/organisms/FeatureDetail/FeatureDetail.tsx
1071
- import {
1072
- StatCard,
1073
- StatCardGroup,
1074
- StatusChip as StatusChip5
1075
- } from "@contractspec/lib.design-system";
1076
- import { Box, HStack as HStack6, VStack as VStack3 } from "@contractspec/lib.ui-kit-web/ui/stack";
1077
- import { cn as cn5 } from "@contractspec/lib.ui-kit-web/ui/utils";
1078
- import Link from "next/link";
1079
- import { jsx as jsx7, jsxs as jsxs6 } from "react/jsx-runtime";
1080
- "use client";
1081
- var stabilityTone2 = {
1082
- stable: "success",
1083
- beta: "warning",
1084
- experimental: "info",
1085
- deprecated: "danger"
1086
- };
1087
- function FeatureDetail({ feature, className }) {
1088
- const { meta, operations, events, presentations, capabilities } = feature;
1089
- const tone = stabilityTone2[meta.stability] ?? "neutral";
1090
- return /* @__PURE__ */ jsxs6(VStack3, {
1091
- gap: "lg",
1092
- className: cn5("w-full", className),
1093
- children: [
1094
- /* @__PURE__ */ jsxs6(HStack6, {
1095
- gap: "sm",
1096
- children: [
1097
- /* @__PURE__ */ jsx7(StatusChip5, {
1098
- tone,
1099
- label: meta.stability ?? "unknown"
1100
- }),
1101
- /* @__PURE__ */ jsx7(StatusChip5, {
1102
- tone: "neutral",
1103
- label: meta.key,
1104
- size: "sm"
1105
- }),
1106
- /* @__PURE__ */ jsx7(StatusChip5, {
1107
- tone: "neutral",
1108
- label: `v${meta.version}`,
1109
- size: "sm"
1110
- })
1111
- ]
1112
- }),
1113
- /* @__PURE__ */ jsxs6(StatCardGroup, {
1114
- children: [
1115
- /* @__PURE__ */ jsx7(Link, {
1116
- href: `./${feature.meta.key}/operations`,
1117
- children: /* @__PURE__ */ jsx7(StatCard, {
1118
- label: "Operations",
1119
- value: operations?.length ?? 0
1120
- })
1121
- }),
1122
- /* @__PURE__ */ jsx7(Link, {
1123
- href: `./${feature.meta.key}/events`,
1124
- children: /* @__PURE__ */ jsx7(StatCard, {
1125
- label: "Events",
1126
- value: events?.length ?? 0
1127
- })
1128
- }),
1129
- /* @__PURE__ */ jsx7(Link, {
1130
- href: `./${feature.meta.key}/presentations`,
1131
- children: /* @__PURE__ */ jsx7(StatCard, {
1132
- label: "Presentations",
1133
- value: presentations?.length ?? 0
1134
- })
1135
- })
1136
- ]
1137
- }),
1138
- capabilities?.provides?.length ? /* @__PURE__ */ jsxs6(Box, {
1139
- className: "flex-col rounded-lg border p-4",
1140
- gap: "sm",
1141
- align: "start",
1142
- children: [
1143
- /* @__PURE__ */ jsx7("span", {
1144
- className: "font-semibold",
1145
- children: "Provides Capabilities"
1146
- }),
1147
- /* @__PURE__ */ jsx7(HStack6, {
1148
- gap: "xs",
1149
- wrap: "wrap",
1150
- children: capabilities.provides.map((cap) => /* @__PURE__ */ jsx7(StatusChip5, {
1151
- tone: "success",
1152
- label: `${cap.key} v${cap.version}`,
1153
- size: "sm"
1154
- }, `${cap.key}-${cap.version}`))
1155
- })
1156
- ]
1157
- }) : null,
1158
- capabilities?.requires?.length ? /* @__PURE__ */ jsxs6(Box, {
1159
- className: "flex-col rounded-lg border p-4",
1160
- gap: "sm",
1161
- align: "start",
1162
- children: [
1163
- /* @__PURE__ */ jsx7("span", {
1164
- className: "font-semibold",
1165
- children: "Requires Capabilities"
1166
- }),
1167
- /* @__PURE__ */ jsx7(HStack6, {
1168
- gap: "xs",
1169
- wrap: "wrap",
1170
- children: capabilities.requires.map((req) => /* @__PURE__ */ jsx7(StatusChip5, {
1171
- tone: "info",
1172
- label: `${req.key}${req.version ? ` v${req.version}` : ""}${req.optional ? " (optional)" : ""}`,
1173
- size: "sm"
1174
- }, req.key))
1175
- })
1176
- ]
1177
- }) : null,
1178
- meta.tags?.length ? /* @__PURE__ */ jsxs6(Box, {
1179
- className: "flex-col rounded-lg border p-4",
1180
- gap: "sm",
1181
- align: "start",
1182
- children: [
1183
- /* @__PURE__ */ jsx7("span", {
1184
- className: "font-semibold",
1185
- children: "Tags"
1186
- }),
1187
- /* @__PURE__ */ jsx7(HStack6, {
1188
- gap: "xs",
1189
- wrap: "wrap",
1190
- children: meta.tags.map((tag) => /* @__PURE__ */ jsx7(StatusChip5, {
1191
- tone: "neutral",
1192
- label: `#${tag}`,
1193
- size: "sm"
1194
- }, tag))
1195
- })
1196
- ]
1197
- }) : null,
1198
- meta.owners?.length ? /* @__PURE__ */ jsxs6(Box, {
1199
- className: "flex-col rounded-lg border p-4",
1200
- gap: "sm",
1201
- align: "start",
1202
- children: [
1203
- /* @__PURE__ */ jsx7("span", {
1204
- className: "font-semibold",
1205
- children: "Owners"
1206
- }),
1207
- /* @__PURE__ */ jsx7(HStack6, {
1208
- gap: "xs",
1209
- wrap: "wrap",
1210
- children: meta.owners.map((owner) => /* @__PURE__ */ jsx7(StatusChip5, {
1211
- tone: "neutral",
1212
- label: owner,
1213
- size: "sm"
1214
- }, owner))
1215
- })
1216
- ]
1217
- }) : null
1218
- ]
1219
- });
1220
- }
1221
- // src/presentation/features/organisms/FeatureOperationsList.tsx
1222
- import { EntityCard as EntityCard2 } from "@contractspec/lib.design-system";
1223
- import { Zap as Zap3 } from "lucide-react";
1224
- import { jsx as jsx8 } from "react/jsx-runtime";
1225
- "use client";
1226
- function FeatureOperationsList({
1227
- feature
1228
- }) {
1229
- if (!feature.operations?.length)
1230
- return null;
1231
- return /* @__PURE__ */ jsx8("div", {
1232
- className: "grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",
1233
- children: feature.operations.map((op) => {
1234
- const spec = resolveSerializedOperationSpec(op.key, op.version);
1235
- return /* @__PURE__ */ jsx8(EntityCard2, {
1236
- cardTitle: op.key,
1237
- cardSubtitle: `v${op.version}`,
1238
- footer: spec?.meta.description,
1239
- icon: /* @__PURE__ */ jsx8(Zap3, {
1240
- className: "h-4 w-4"
1241
- }),
1242
- href: `/features/${feature.meta.key}/operations/${op.key}`
1243
- }, op.key);
1244
- })
1245
- });
1246
- }
1247
-
1248
1248
  // src/presentation/features/organisms/FeatureEventsList.tsx
1249
1249
  import { EntityCard as EntityCard3 } from "@contractspec/lib.design-system";
1250
1250
  import { Radio as Radio3 } from "lucide-react";
@@ -1270,81 +1270,81 @@ function FeatureEventsList({ feature }) {
1270
1270
  });
1271
1271
  }
1272
1272
 
1273
- // src/presentation/features/organisms/FeaturePresentationsList.tsx
1273
+ // src/presentation/features/organisms/FeatureFormsList.tsx
1274
1274
  import { EntityCard as EntityCard4 } from "@contractspec/lib.design-system";
1275
- import { Layout as Layout4 } from "lucide-react";
1275
+ import { FormInput } from "lucide-react";
1276
1276
  import { jsx as jsx10 } from "react/jsx-runtime";
1277
1277
  "use client";
1278
- function FeaturePresentationsList({
1279
- feature
1280
- }) {
1281
- if (!feature.presentations?.length)
1278
+ function FeatureFormsList({ feature }) {
1279
+ if (!feature.forms?.length)
1282
1280
  return null;
1283
1281
  return /* @__PURE__ */ jsx10("div", {
1284
1282
  className: "grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",
1285
- children: feature.presentations.map((pres) => {
1286
- const spec = resolveSerializedPresentationSpec(pres.key, pres.version);
1283
+ children: feature.forms.map((form) => {
1284
+ const spec = resolveSerializedFormSpec(form.key, form.version);
1287
1285
  return /* @__PURE__ */ jsx10(EntityCard4, {
1288
- cardTitle: pres.key,
1289
- cardSubtitle: `v${pres.version}`,
1286
+ cardTitle: form.key,
1287
+ cardSubtitle: form.version ? `v${form.version}` : undefined,
1290
1288
  footer: spec?.meta.description,
1291
- icon: /* @__PURE__ */ jsx10(Layout4, {
1289
+ icon: /* @__PURE__ */ jsx10(FormInput, {
1292
1290
  className: "h-4 w-4"
1293
1291
  }),
1294
- href: `/features/${feature.meta.key}/presentations/${pres.key}`
1295
- }, pres.key);
1292
+ href: `/features/${feature.meta.key}/forms/${form.key}`
1293
+ }, form.key);
1296
1294
  })
1297
1295
  });
1298
1296
  }
1299
1297
 
1300
- // src/presentation/features/organisms/FeatureDataViewsList.tsx
1298
+ // src/presentation/features/organisms/FeatureOperationsList.tsx
1301
1299
  import { EntityCard as EntityCard5 } from "@contractspec/lib.design-system";
1302
- import { Table } from "lucide-react";
1300
+ import { Zap as Zap3 } from "lucide-react";
1303
1301
  import { jsx as jsx11 } from "react/jsx-runtime";
1304
1302
  "use client";
1305
- function FeatureDataViewsList({
1303
+ function FeatureOperationsList({
1306
1304
  feature
1307
1305
  }) {
1308
- if (!feature.dataViews?.length)
1306
+ if (!feature.operations?.length)
1309
1307
  return null;
1310
1308
  return /* @__PURE__ */ jsx11("div", {
1311
1309
  className: "grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",
1312
- children: feature.dataViews.map((view) => {
1313
- const spec = resolveSerializedDataViewSpec(view.key, view.version);
1310
+ children: feature.operations.map((op) => {
1311
+ const spec = resolveSerializedOperationSpec(op.key, op.version);
1314
1312
  return /* @__PURE__ */ jsx11(EntityCard5, {
1315
- cardTitle: view.key,
1316
- cardSubtitle: `v${view.version}`,
1313
+ cardTitle: op.key,
1314
+ cardSubtitle: `v${op.version}`,
1317
1315
  footer: spec?.meta.description,
1318
- icon: /* @__PURE__ */ jsx11(Table, {
1316
+ icon: /* @__PURE__ */ jsx11(Zap3, {
1319
1317
  className: "h-4 w-4"
1320
1318
  }),
1321
- href: `/features/${feature.meta.key}/dataviews/${view.key}`
1322
- }, view.key);
1319
+ href: `/features/${feature.meta.key}/operations/${op.key}`
1320
+ }, op.key);
1323
1321
  })
1324
1322
  });
1325
1323
  }
1326
1324
 
1327
- // src/presentation/features/organisms/FeatureFormsList.tsx
1325
+ // src/presentation/features/organisms/FeaturePresentationsList.tsx
1328
1326
  import { EntityCard as EntityCard6 } from "@contractspec/lib.design-system";
1329
- import { FormInput } from "lucide-react";
1327
+ import { Layout as Layout4 } from "lucide-react";
1330
1328
  import { jsx as jsx12 } from "react/jsx-runtime";
1331
1329
  "use client";
1332
- function FeatureFormsList({ feature }) {
1333
- if (!feature.forms?.length)
1330
+ function FeaturePresentationsList({
1331
+ feature
1332
+ }) {
1333
+ if (!feature.presentations?.length)
1334
1334
  return null;
1335
1335
  return /* @__PURE__ */ jsx12("div", {
1336
1336
  className: "grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",
1337
- children: feature.forms.map((form) => {
1338
- const spec = resolveSerializedFormSpec(form.key, form.version);
1337
+ children: feature.presentations.map((pres) => {
1338
+ const spec = resolveSerializedPresentationSpec(pres.key, pres.version);
1339
1339
  return /* @__PURE__ */ jsx12(EntityCard6, {
1340
- cardTitle: form.key,
1341
- cardSubtitle: form.version ? `v${form.version}` : undefined,
1340
+ cardTitle: pres.key,
1341
+ cardSubtitle: `v${pres.version}`,
1342
1342
  footer: spec?.meta.description,
1343
- icon: /* @__PURE__ */ jsx12(FormInput, {
1343
+ icon: /* @__PURE__ */ jsx12(Layout4, {
1344
1344
  className: "h-4 w-4"
1345
1345
  }),
1346
- href: `/features/${feature.meta.key}/forms/${form.key}`
1347
- }, form.key);
1346
+ href: `/features/${feature.meta.key}/presentations/${pres.key}`
1347
+ }, pres.key);
1348
1348
  })
1349
1349
  });
1350
1350
  }