@contractspec/bundle.library 3.7.5 → 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 (890) hide show
  1. package/.turbo/turbo-build.log +144 -142
  2. package/AGENTS.md +42 -24
  3. package/CHANGELOG.md +27 -0
  4. package/README.md +59 -37
  5. package/dist/application/index.d.ts +1 -1
  6. package/dist/application/index.js +842 -840
  7. package/dist/application/mcp/cliMcp.js +30 -30
  8. package/dist/application/mcp/common.d.ts +2 -2
  9. package/dist/application/mcp/common.js +2 -2
  10. package/dist/application/mcp/contractsMcp.d.ts +1 -1
  11. package/dist/application/mcp/contractsMcp.js +163 -163
  12. package/dist/application/mcp/docsMcp.js +31 -31
  13. package/dist/application/mcp/index.d.ts +2 -2
  14. package/dist/application/mcp/index.js +842 -840
  15. package/dist/application/mcp/internalMcp.js +30 -30
  16. package/dist/application/mcp/providerRankingMcp.js +35 -33
  17. package/dist/components/docs/DocsIndexPage.js +859 -212
  18. package/dist/components/docs/advanced/AdvancedMCPPage.js +15 -15
  19. package/dist/components/docs/advanced/AdvancedOverlayEditorPage.js +4 -4
  20. package/dist/components/docs/advanced/AdvancedRenderersPage.js +7 -7
  21. package/dist/components/docs/advanced/AdvancedSpecExperimentsPage.js +9 -9
  22. package/dist/components/docs/advanced/AdvancedTelemetryPage.js +16 -16
  23. package/dist/components/docs/advanced/AdvancedWorkflowMonitoringPage.js +6 -6
  24. package/dist/components/docs/advanced/index.d.ts +2 -2
  25. package/dist/components/docs/advanced/index.js +57 -57
  26. package/dist/components/docs/architecture/ArchitectureAppConfigPage.js +10 -10
  27. package/dist/components/docs/architecture/ArchitectureControlPlanePage.js +8 -8
  28. package/dist/components/docs/architecture/ArchitectureIntegrationBindingPage.js +14 -14
  29. package/dist/components/docs/architecture/ArchitectureKnowledgeBindingPage.js +16 -16
  30. package/dist/components/docs/architecture/ArchitectureMultiTenancyPage.js +7 -7
  31. package/dist/components/docs/architecture/ArchitectureOverviewPage.js +90 -411
  32. package/dist/components/docs/architecture/index.d.ts +3 -3
  33. package/dist/components/docs/architecture/index.js +145 -466
  34. package/dist/components/docs/comparison/ComparisonAutomationPlatformsPage.js +6 -6
  35. package/dist/components/docs/comparison/ComparisonEnterprisePlatformsPage.js +7 -7
  36. package/dist/components/docs/comparison/ComparisonInternalToolBuildersPage.js +6 -6
  37. package/dist/components/docs/comparison/ComparisonOverviewPage.js +4 -4
  38. package/dist/components/docs/comparison/ComparisonWindmillPage.js +6 -6
  39. package/dist/components/docs/comparison/ComparisonWorkflowEnginesPage.js +6 -6
  40. package/dist/components/docs/comparison/index.d.ts +2 -2
  41. package/dist/components/docs/comparison/index.js +35 -35
  42. package/dist/components/docs/docsManifest.d.ts +42 -0
  43. package/dist/components/docs/docsManifest.js +612 -0
  44. package/dist/components/docs/ecosystem/IntegrationsPage.js +5 -5
  45. package/dist/components/docs/ecosystem/PluginsPage.js +7 -7
  46. package/dist/components/docs/ecosystem/RegistryPage.js +4 -4
  47. package/dist/components/docs/ecosystem/TemplatesPage.js +11 -11
  48. package/dist/components/docs/ecosystem/index.d.ts +2 -2
  49. package/dist/components/docs/ecosystem/index.js +27 -27
  50. package/dist/components/docs/examples/DocsExamplesPage.js +4 -4
  51. package/dist/components/docs/examples/index.js +4 -4
  52. package/dist/components/docs/getting-started/CLIPage.js +9 -9
  53. package/dist/components/docs/getting-started/CompatibilityPage.js +12 -12
  54. package/dist/components/docs/getting-started/DataViewTutorialPage.js +7 -7
  55. package/dist/components/docs/getting-started/DeveloperToolsPage.js +10 -10
  56. package/dist/components/docs/getting-started/HelloWorldPage.js +8 -8
  57. package/dist/components/docs/getting-started/InstallationPage.js +10 -10
  58. package/dist/components/docs/getting-started/StartHerePage.js +8 -8
  59. package/dist/components/docs/getting-started/TroubleshootingPage.js +12 -12
  60. package/dist/components/docs/getting-started/VSCodeExtensionPage.js +13 -13
  61. package/dist/components/docs/getting-started/index.d.ts +5 -5
  62. package/dist/components/docs/getting-started/index.js +89 -89
  63. package/dist/components/docs/guides/GuideCIDiffGatingPage.js +13 -13
  64. package/dist/components/docs/guides/GuideContractTypesPage.js +33 -33
  65. package/dist/components/docs/guides/GuideDocsPipelinePage.js +13 -13
  66. package/dist/components/docs/guides/GuideGenerateDocsClientsSchemasPage.js +13 -13
  67. package/dist/components/docs/guides/GuideImportExistingCodebasesPage.js +35 -35
  68. package/dist/components/docs/guides/GuideNextjsOneEndpointPage.js +15 -15
  69. package/dist/components/docs/guides/GuideSpecValidationTypingPage.js +13 -13
  70. package/dist/components/docs/guides/GuidesIndexPage.js +69 -46
  71. package/dist/components/docs/guides/index.d.ts +4 -4
  72. package/dist/components/docs/guides/index.js +174 -151
  73. package/dist/components/docs/index.d.ts +13 -12
  74. package/dist/components/docs/index.js +14060 -15332
  75. package/dist/components/docs/integrations/IntegrationsCircuitBreakersPage.js +4 -4
  76. package/dist/components/docs/integrations/IntegrationsElevenLabsPage.js +7 -7
  77. package/dist/components/docs/integrations/IntegrationsGithubPage.js +11 -11
  78. package/dist/components/docs/integrations/IntegrationsGmailPage.js +7 -7
  79. package/dist/components/docs/integrations/IntegrationsGoogleCalendarPage.js +5 -5
  80. package/dist/components/docs/integrations/IntegrationsHealthRoutingPage.js +12 -12
  81. package/dist/components/docs/integrations/IntegrationsMistralPage.js +12 -12
  82. package/dist/components/docs/integrations/IntegrationsOpenAIPage.js +11 -11
  83. package/dist/components/docs/integrations/IntegrationsOverviewPage.js +119 -736
  84. package/dist/components/docs/integrations/IntegrationsPostmarkPage.js +12 -12
  85. package/dist/components/docs/integrations/IntegrationsPowensPage.js +24 -24
  86. package/dist/components/docs/integrations/IntegrationsQdrantPage.js +9 -9
  87. package/dist/components/docs/integrations/IntegrationsResendPage.js +7 -7
  88. package/dist/components/docs/integrations/IntegrationsS3Page.js +9 -9
  89. package/dist/components/docs/integrations/IntegrationsSlackPage.js +11 -11
  90. package/dist/components/docs/integrations/IntegrationsSpecModelPage.js +19 -19
  91. package/dist/components/docs/integrations/IntegrationsStripePage.js +25 -25
  92. package/dist/components/docs/integrations/IntegrationsTwilioPage.js +9 -9
  93. package/dist/components/docs/integrations/IntegrationsWhatsappMetaPage.js +12 -12
  94. package/dist/components/docs/integrations/IntegrationsWhatsappTwilioPage.js +13 -13
  95. package/dist/components/docs/integrations/index.d.ts +1 -1
  96. package/dist/components/docs/integrations/index.js +614 -1231
  97. package/dist/components/docs/intent/ContractFirstApiPage.js +8 -8
  98. package/dist/components/docs/intent/DeterministicCodegenPage.js +9 -9
  99. package/dist/components/docs/intent/GenerateClientFromSchemaPage.js +13 -13
  100. package/dist/components/docs/intent/OpenapiAlternativePage.js +13 -13
  101. package/dist/components/docs/intent/SchemaValidationTypescriptPage.js +9 -9
  102. package/dist/components/docs/intent/SpecDrivenDevelopmentPage.js +8 -8
  103. package/dist/components/docs/intent/index.d.ts +3 -3
  104. package/dist/components/docs/intent/index.js +766 -766
  105. package/dist/components/docs/knowledge/KnowledgeCategoriesPage.js +38 -38
  106. package/dist/components/docs/knowledge/KnowledgeExamplesPage.js +9 -9
  107. package/dist/components/docs/knowledge/KnowledgeOverviewPage.js +91 -439
  108. package/dist/components/docs/knowledge/KnowledgeSourcesPage.js +28 -28
  109. package/dist/components/docs/knowledge/KnowledgeSpacesPage.js +21 -21
  110. package/dist/components/docs/knowledge/index.d.ts +1 -1
  111. package/dist/components/docs/knowledge/index.js +437 -785
  112. package/dist/components/docs/libraries/LibrariesAccessibilityPage.js +16 -16
  113. package/dist/components/docs/libraries/LibrariesAiAgentPage.js +8 -8
  114. package/dist/components/docs/libraries/LibrariesAnalyticsPage.js +6 -6
  115. package/dist/components/docs/libraries/LibrariesContentGenPage.js +6 -6
  116. package/dist/components/docs/libraries/LibrariesContractsPage.js +16 -16
  117. package/dist/components/docs/libraries/LibrariesCostTrackingPage.js +6 -6
  118. package/dist/components/docs/libraries/LibrariesDataBackendPage.js +14 -14
  119. package/dist/components/docs/libraries/LibrariesDataViewsPage.js +7 -7
  120. package/dist/components/docs/libraries/LibrariesDesignSystemPage.js +13 -13
  121. package/dist/components/docs/libraries/LibrariesEvolutionPage.js +7 -7
  122. package/dist/components/docs/libraries/LibrariesGraphQLPage.js +13 -13
  123. package/dist/components/docs/libraries/LibrariesGrowthPage.js +5 -5
  124. package/dist/components/docs/libraries/LibrariesMultiTenancyPage.js +5 -5
  125. package/dist/components/docs/libraries/LibrariesObservabilityPage.js +7 -7
  126. package/dist/components/docs/libraries/LibrariesOverlayEnginePage.js +6 -6
  127. package/dist/components/docs/libraries/LibrariesOverviewPage.js +117 -430
  128. package/dist/components/docs/libraries/LibrariesPersonalizationPage.js +6 -6
  129. package/dist/components/docs/libraries/LibrariesProgressiveDeliveryPage.js +6 -6
  130. package/dist/components/docs/libraries/LibrariesResiliencePage.js +6 -6
  131. package/dist/components/docs/libraries/LibrariesRuntimePage.js +13 -13
  132. package/dist/components/docs/libraries/LibrariesSLOPage.js +6 -6
  133. package/dist/components/docs/libraries/LibrariesSchemaPage.js +16 -16
  134. package/dist/components/docs/libraries/LibrariesSupportBotPage.js +7 -7
  135. package/dist/components/docs/libraries/LibrariesTestingPage.js +7 -7
  136. package/dist/components/docs/libraries/LibrariesUIKitPage.js +10 -10
  137. package/dist/components/docs/libraries/LibrariesWorkflowComposerPage.js +5 -5
  138. package/dist/components/docs/libraries/LibrariesWorkflowsPage.js +8 -8
  139. package/dist/components/docs/libraries/index.d.ts +4 -4
  140. package/dist/components/docs/libraries/index.js +1308 -1621
  141. package/dist/components/docs/manifesto/ManifestoPage.js +33 -138
  142. package/dist/components/docs/ops/AutoEvolutionOpsPage.js +9 -9
  143. package/dist/components/docs/ops/DistributedTracingOpsPage.js +5 -5
  144. package/dist/components/docs/ops/index.js +14 -14
  145. package/dist/components/docs/reference/DocsMarkdownContent.js +1 -1
  146. package/dist/components/docs/reference/DocsReferenceContent.js +2 -2
  147. package/dist/components/docs/reference/DocsReferenceIndexClient.js +8 -8
  148. package/dist/components/docs/reference/DocsReferenceIndexPage.js +8 -8
  149. package/dist/components/docs/reference/DocsReferencePage.js +2 -2
  150. package/dist/components/docs/reference/index.js +10 -10
  151. package/dist/components/docs/safety/SafetyAuditingPage.js +16 -16
  152. package/dist/components/docs/safety/SafetyMigrationsPage.js +15 -15
  153. package/dist/components/docs/safety/SafetyOverviewPage.js +69 -206
  154. package/dist/components/docs/safety/SafetyPDPPage.js +12 -12
  155. package/dist/components/docs/safety/SafetySecurityTrustPage.js +11 -11
  156. package/dist/components/docs/safety/SafetySigningPage.js +7 -7
  157. package/dist/components/docs/safety/SafetyTenantIsolationPage.js +6 -6
  158. package/dist/components/docs/safety/index.d.ts +3 -3
  159. package/dist/components/docs/safety/index.js +616 -753
  160. package/dist/components/docs/shared/StudioPrompt.js +5 -5
  161. package/dist/components/docs/specs/SpecsCapabilitiesPage.js +12 -12
  162. package/dist/components/docs/specs/SpecsDataViewsPage.js +14 -14
  163. package/dist/components/docs/specs/SpecsOverlaysPage.js +14 -14
  164. package/dist/components/docs/specs/SpecsOverviewPage.js +135 -297
  165. package/dist/components/docs/specs/SpecsPolicyPage.js +29 -29
  166. package/dist/components/docs/specs/SpecsWorkflowsPage.js +18 -18
  167. package/dist/components/docs/specs/index.d.ts +3 -3
  168. package/dist/components/docs/specs/index.js +814 -976
  169. package/dist/components/docs/studio/StudioBYOKPage.js +1 -1
  170. package/dist/components/docs/studio/StudioDeploymentsPage.js +1 -1
  171. package/dist/components/docs/studio/StudioGettingStartedPage.js +1 -1
  172. package/dist/components/docs/studio/StudioIntegrationsPage.js +1 -1
  173. package/dist/components/docs/studio/StudioOverviewPage.js +109 -56
  174. package/dist/components/docs/studio/StudioVisualBuilderPage.js +1 -1
  175. package/dist/components/docs/studio/index.d.ts +4 -4
  176. package/dist/components/docs/studio/index.js +170 -117
  177. package/dist/components/integrations/index.js +25 -25
  178. package/dist/components/integrations/molecules/IntegrationCard.js +5 -5
  179. package/dist/components/integrations/organisms/IntegrationMarketplace.js +12 -12
  180. package/dist/components/integrations/organisms/IntegrationSettings.js +7 -7
  181. package/dist/components/integrations/organisms/KnowledgeSourceList.js +6 -6
  182. package/dist/components/legal/PrivacyTemplate.js +67 -67
  183. package/dist/components/legal/TermsTemplate.js +54 -54
  184. package/dist/components/legal/index.js +121 -121
  185. package/dist/components/shared/FeatureGateNotice.js +4 -4
  186. package/dist/components/shared/index.js +4 -4
  187. package/dist/components/shell/WorkspaceHeader.js +4 -4
  188. package/dist/components/shell/WorkspaceProjectShellLayout.d.ts +3 -3
  189. package/dist/components/shell/WorkspaceProjectShellLayout.js +10 -10
  190. package/dist/components/shell/WorkspaceShellRenderer.d.ts +4 -4
  191. package/dist/components/shell/WorkspaceShellRenderer.js +8 -8
  192. package/dist/components/shell/WorkspaceSidebar.js +2 -2
  193. package/dist/components/shell/index.d.ts +1 -1
  194. package/dist/components/shell/index.js +12 -12
  195. package/dist/components/templates/engine/index.d.ts +1 -1
  196. package/dist/components/templates/index.d.ts +1 -1
  197. package/dist/components/templates/index.js +835 -835
  198. package/dist/components/templates/messaging/ConversationList.js +11 -11
  199. package/dist/components/templates/messaging/MessageComposer.js +11 -11
  200. package/dist/components/templates/messaging/MessageThread.js +6 -6
  201. package/dist/components/templates/messaging/MessagingWorkspace.js +23 -23
  202. package/dist/components/templates/messaging/index.d.ts +1 -1
  203. package/dist/components/templates/messaging/index.js +23 -23
  204. package/dist/components/templates/recipes/LanguageSwitcher.js +1 -1
  205. package/dist/components/templates/recipes/RecipeCard.js +5 -5
  206. package/dist/components/templates/recipes/RecipeDetail.js +8 -8
  207. package/dist/components/templates/recipes/RecipeList.js +17 -17
  208. package/dist/components/templates/recipes/index.d.ts +2 -2
  209. package/dist/components/templates/recipes/index.js +17 -17
  210. package/dist/components/templates/todos/FilterBar.d.ts +1 -1
  211. package/dist/components/templates/todos/FilterBar.js +9 -9
  212. package/dist/components/templates/todos/TaskForm.js +14 -14
  213. package/dist/components/templates/todos/TaskItem.js +4 -4
  214. package/dist/components/templates/todos/TaskList.js +30 -30
  215. package/dist/components/templates/todos/index.d.ts +2 -2
  216. package/dist/components/templates/todos/index.js +30 -30
  217. package/dist/config/index.d.ts +2 -2
  218. package/dist/features/contracts-registry.d.ts +3 -3
  219. package/dist/features/contracts-registry.js +15 -15
  220. package/dist/features/docs/docs.contracts.d.ts +1 -1
  221. package/dist/features/docs/docs.contracts.js +2 -2
  222. package/dist/features/docs/index.d.ts +1 -1
  223. package/dist/features/docs/index.js +2 -2
  224. package/dist/features/index.d.ts +4 -4
  225. package/dist/features/index.js +18 -18
  226. package/dist/features/registry.js +1 -1
  227. package/dist/index.d.ts +2 -2
  228. package/dist/index.js +14982 -16254
  229. package/dist/libs/email/client.js +1 -1
  230. package/dist/libs/email/contact.js +1 -1
  231. package/dist/libs/email/newsletter.js +1 -1
  232. package/dist/libs/email/waitlist-application.js +1 -1
  233. package/dist/libs/email/waitlist.js +1 -1
  234. package/dist/libs/email.d.ts +1 -1
  235. package/dist/libs/email.js +1 -1
  236. package/dist/node/application/index.js +842 -840
  237. package/dist/node/application/mcp/cliMcp.js +30 -30
  238. package/dist/node/application/mcp/common.js +2 -2
  239. package/dist/node/application/mcp/contractsMcp.js +163 -163
  240. package/dist/node/application/mcp/docsMcp.js +31 -31
  241. package/dist/node/application/mcp/index.js +842 -840
  242. package/dist/node/application/mcp/internalMcp.js +30 -30
  243. package/dist/node/application/mcp/providerRankingMcp.js +35 -33
  244. package/dist/node/components/docs/DocsIndexPage.js +859 -212
  245. package/dist/node/components/docs/advanced/AdvancedMCPPage.js +15 -15
  246. package/dist/node/components/docs/advanced/AdvancedOverlayEditorPage.js +4 -4
  247. package/dist/node/components/docs/advanced/AdvancedRenderersPage.js +7 -7
  248. package/dist/node/components/docs/advanced/AdvancedSpecExperimentsPage.js +9 -9
  249. package/dist/node/components/docs/advanced/AdvancedTelemetryPage.js +16 -16
  250. package/dist/node/components/docs/advanced/AdvancedWorkflowMonitoringPage.js +6 -6
  251. package/dist/node/components/docs/advanced/index.js +57 -57
  252. package/dist/node/components/docs/architecture/ArchitectureAppConfigPage.js +10 -10
  253. package/dist/node/components/docs/architecture/ArchitectureControlPlanePage.js +8 -8
  254. package/dist/node/components/docs/architecture/ArchitectureIntegrationBindingPage.js +14 -14
  255. package/dist/node/components/docs/architecture/ArchitectureKnowledgeBindingPage.js +16 -16
  256. package/dist/node/components/docs/architecture/ArchitectureMultiTenancyPage.js +7 -7
  257. package/dist/node/components/docs/architecture/ArchitectureOverviewPage.js +90 -411
  258. package/dist/node/components/docs/architecture/index.js +145 -466
  259. package/dist/node/components/docs/comparison/ComparisonAutomationPlatformsPage.js +6 -6
  260. package/dist/node/components/docs/comparison/ComparisonEnterprisePlatformsPage.js +7 -7
  261. package/dist/node/components/docs/comparison/ComparisonInternalToolBuildersPage.js +6 -6
  262. package/dist/node/components/docs/comparison/ComparisonOverviewPage.js +4 -4
  263. package/dist/node/components/docs/comparison/ComparisonWindmillPage.js +6 -6
  264. package/dist/node/components/docs/comparison/ComparisonWorkflowEnginesPage.js +6 -6
  265. package/dist/node/components/docs/comparison/index.js +35 -35
  266. package/dist/node/components/docs/docsManifest.js +611 -0
  267. package/dist/node/components/docs/ecosystem/IntegrationsPage.js +5 -5
  268. package/dist/node/components/docs/ecosystem/PluginsPage.js +7 -7
  269. package/dist/node/components/docs/ecosystem/RegistryPage.js +4 -4
  270. package/dist/node/components/docs/ecosystem/TemplatesPage.js +11 -11
  271. package/dist/node/components/docs/ecosystem/index.js +27 -27
  272. package/dist/node/components/docs/examples/DocsExamplesPage.js +4 -4
  273. package/dist/node/components/docs/examples/index.js +4 -4
  274. package/dist/node/components/docs/getting-started/CLIPage.js +9 -9
  275. package/dist/node/components/docs/getting-started/CompatibilityPage.js +12 -12
  276. package/dist/node/components/docs/getting-started/DataViewTutorialPage.js +7 -7
  277. package/dist/node/components/docs/getting-started/DeveloperToolsPage.js +10 -10
  278. package/dist/node/components/docs/getting-started/HelloWorldPage.js +8 -8
  279. package/dist/node/components/docs/getting-started/InstallationPage.js +10 -10
  280. package/dist/node/components/docs/getting-started/StartHerePage.js +8 -8
  281. package/dist/node/components/docs/getting-started/TroubleshootingPage.js +12 -12
  282. package/dist/node/components/docs/getting-started/VSCodeExtensionPage.js +13 -13
  283. package/dist/node/components/docs/getting-started/index.js +89 -89
  284. package/dist/node/components/docs/guides/GuideCIDiffGatingPage.js +13 -13
  285. package/dist/node/components/docs/guides/GuideContractTypesPage.js +33 -33
  286. package/dist/node/components/docs/guides/GuideDocsPipelinePage.js +13 -13
  287. package/dist/node/components/docs/guides/GuideGenerateDocsClientsSchemasPage.js +13 -13
  288. package/dist/node/components/docs/guides/GuideImportExistingCodebasesPage.js +35 -35
  289. package/dist/node/components/docs/guides/GuideNextjsOneEndpointPage.js +15 -15
  290. package/dist/node/components/docs/guides/GuideSpecValidationTypingPage.js +13 -13
  291. package/dist/node/components/docs/guides/GuidesIndexPage.js +69 -46
  292. package/dist/node/components/docs/guides/index.js +174 -151
  293. package/dist/node/components/docs/index.js +14060 -15332
  294. package/dist/node/components/docs/integrations/IntegrationsCircuitBreakersPage.js +4 -4
  295. package/dist/node/components/docs/integrations/IntegrationsElevenLabsPage.js +7 -7
  296. package/dist/node/components/docs/integrations/IntegrationsGithubPage.js +11 -11
  297. package/dist/node/components/docs/integrations/IntegrationsGmailPage.js +7 -7
  298. package/dist/node/components/docs/integrations/IntegrationsGoogleCalendarPage.js +5 -5
  299. package/dist/node/components/docs/integrations/IntegrationsHealthRoutingPage.js +12 -12
  300. package/dist/node/components/docs/integrations/IntegrationsMistralPage.js +12 -12
  301. package/dist/node/components/docs/integrations/IntegrationsOpenAIPage.js +11 -11
  302. package/dist/node/components/docs/integrations/IntegrationsOverviewPage.js +119 -736
  303. package/dist/node/components/docs/integrations/IntegrationsPostmarkPage.js +12 -12
  304. package/dist/node/components/docs/integrations/IntegrationsPowensPage.js +24 -24
  305. package/dist/node/components/docs/integrations/IntegrationsQdrantPage.js +9 -9
  306. package/dist/node/components/docs/integrations/IntegrationsResendPage.js +7 -7
  307. package/dist/node/components/docs/integrations/IntegrationsS3Page.js +9 -9
  308. package/dist/node/components/docs/integrations/IntegrationsSlackPage.js +11 -11
  309. package/dist/node/components/docs/integrations/IntegrationsSpecModelPage.js +19 -19
  310. package/dist/node/components/docs/integrations/IntegrationsStripePage.js +25 -25
  311. package/dist/node/components/docs/integrations/IntegrationsTwilioPage.js +9 -9
  312. package/dist/node/components/docs/integrations/IntegrationsWhatsappMetaPage.js +12 -12
  313. package/dist/node/components/docs/integrations/IntegrationsWhatsappTwilioPage.js +13 -13
  314. package/dist/node/components/docs/integrations/index.js +614 -1231
  315. package/dist/node/components/docs/intent/ContractFirstApiPage.js +8 -8
  316. package/dist/node/components/docs/intent/DeterministicCodegenPage.js +9 -9
  317. package/dist/node/components/docs/intent/GenerateClientFromSchemaPage.js +13 -13
  318. package/dist/node/components/docs/intent/OpenapiAlternativePage.js +13 -13
  319. package/dist/node/components/docs/intent/SchemaValidationTypescriptPage.js +9 -9
  320. package/dist/node/components/docs/intent/SpecDrivenDevelopmentPage.js +8 -8
  321. package/dist/node/components/docs/intent/index.js +766 -766
  322. package/dist/node/components/docs/knowledge/KnowledgeCategoriesPage.js +38 -38
  323. package/dist/node/components/docs/knowledge/KnowledgeExamplesPage.js +9 -9
  324. package/dist/node/components/docs/knowledge/KnowledgeOverviewPage.js +91 -439
  325. package/dist/node/components/docs/knowledge/KnowledgeSourcesPage.js +28 -28
  326. package/dist/node/components/docs/knowledge/KnowledgeSpacesPage.js +21 -21
  327. package/dist/node/components/docs/knowledge/index.js +437 -785
  328. package/dist/node/components/docs/libraries/LibrariesAccessibilityPage.js +16 -16
  329. package/dist/node/components/docs/libraries/LibrariesAiAgentPage.js +8 -8
  330. package/dist/node/components/docs/libraries/LibrariesAnalyticsPage.js +6 -6
  331. package/dist/node/components/docs/libraries/LibrariesContentGenPage.js +6 -6
  332. package/dist/node/components/docs/libraries/LibrariesContractsPage.js +16 -16
  333. package/dist/node/components/docs/libraries/LibrariesCostTrackingPage.js +6 -6
  334. package/dist/node/components/docs/libraries/LibrariesDataBackendPage.js +14 -14
  335. package/dist/node/components/docs/libraries/LibrariesDataViewsPage.js +7 -7
  336. package/dist/node/components/docs/libraries/LibrariesDesignSystemPage.js +13 -13
  337. package/dist/node/components/docs/libraries/LibrariesEvolutionPage.js +7 -7
  338. package/dist/node/components/docs/libraries/LibrariesGraphQLPage.js +13 -13
  339. package/dist/node/components/docs/libraries/LibrariesGrowthPage.js +5 -5
  340. package/dist/node/components/docs/libraries/LibrariesMultiTenancyPage.js +5 -5
  341. package/dist/node/components/docs/libraries/LibrariesObservabilityPage.js +7 -7
  342. package/dist/node/components/docs/libraries/LibrariesOverlayEnginePage.js +6 -6
  343. package/dist/node/components/docs/libraries/LibrariesOverviewPage.js +117 -430
  344. package/dist/node/components/docs/libraries/LibrariesPersonalizationPage.js +6 -6
  345. package/dist/node/components/docs/libraries/LibrariesProgressiveDeliveryPage.js +6 -6
  346. package/dist/node/components/docs/libraries/LibrariesResiliencePage.js +6 -6
  347. package/dist/node/components/docs/libraries/LibrariesRuntimePage.js +13 -13
  348. package/dist/node/components/docs/libraries/LibrariesSLOPage.js +6 -6
  349. package/dist/node/components/docs/libraries/LibrariesSchemaPage.js +16 -16
  350. package/dist/node/components/docs/libraries/LibrariesSupportBotPage.js +7 -7
  351. package/dist/node/components/docs/libraries/LibrariesTestingPage.js +7 -7
  352. package/dist/node/components/docs/libraries/LibrariesUIKitPage.js +10 -10
  353. package/dist/node/components/docs/libraries/LibrariesWorkflowComposerPage.js +5 -5
  354. package/dist/node/components/docs/libraries/LibrariesWorkflowsPage.js +8 -8
  355. package/dist/node/components/docs/libraries/index.js +1308 -1621
  356. package/dist/node/components/docs/manifesto/ManifestoPage.js +33 -138
  357. package/dist/node/components/docs/ops/AutoEvolutionOpsPage.js +9 -9
  358. package/dist/node/components/docs/ops/DistributedTracingOpsPage.js +5 -5
  359. package/dist/node/components/docs/ops/index.js +14 -14
  360. package/dist/node/components/docs/reference/DocsMarkdownContent.js +1 -1
  361. package/dist/node/components/docs/reference/DocsReferenceContent.js +2 -2
  362. package/dist/node/components/docs/reference/DocsReferenceIndexClient.js +8 -8
  363. package/dist/node/components/docs/reference/DocsReferenceIndexPage.js +8 -8
  364. package/dist/node/components/docs/reference/DocsReferencePage.js +2 -2
  365. package/dist/node/components/docs/reference/index.js +10 -10
  366. package/dist/node/components/docs/safety/SafetyAuditingPage.js +16 -16
  367. package/dist/node/components/docs/safety/SafetyMigrationsPage.js +15 -15
  368. package/dist/node/components/docs/safety/SafetyOverviewPage.js +69 -206
  369. package/dist/node/components/docs/safety/SafetyPDPPage.js +12 -12
  370. package/dist/node/components/docs/safety/SafetySecurityTrustPage.js +11 -11
  371. package/dist/node/components/docs/safety/SafetySigningPage.js +7 -7
  372. package/dist/node/components/docs/safety/SafetyTenantIsolationPage.js +6 -6
  373. package/dist/node/components/docs/safety/index.js +616 -753
  374. package/dist/node/components/docs/shared/StudioPrompt.js +5 -5
  375. package/dist/node/components/docs/specs/SpecsCapabilitiesPage.js +12 -12
  376. package/dist/node/components/docs/specs/SpecsDataViewsPage.js +14 -14
  377. package/dist/node/components/docs/specs/SpecsOverlaysPage.js +14 -14
  378. package/dist/node/components/docs/specs/SpecsOverviewPage.js +135 -297
  379. package/dist/node/components/docs/specs/SpecsPolicyPage.js +29 -29
  380. package/dist/node/components/docs/specs/SpecsWorkflowsPage.js +18 -18
  381. package/dist/node/components/docs/specs/index.js +814 -976
  382. package/dist/node/components/docs/studio/StudioBYOKPage.js +1 -1
  383. package/dist/node/components/docs/studio/StudioDeploymentsPage.js +1 -1
  384. package/dist/node/components/docs/studio/StudioGettingStartedPage.js +1 -1
  385. package/dist/node/components/docs/studio/StudioIntegrationsPage.js +1 -1
  386. package/dist/node/components/docs/studio/StudioOverviewPage.js +109 -56
  387. package/dist/node/components/docs/studio/StudioVisualBuilderPage.js +1 -1
  388. package/dist/node/components/docs/studio/index.js +170 -117
  389. package/dist/node/components/integrations/index.js +25 -25
  390. package/dist/node/components/integrations/molecules/IntegrationCard.js +5 -5
  391. package/dist/node/components/integrations/organisms/IntegrationMarketplace.js +12 -12
  392. package/dist/node/components/integrations/organisms/IntegrationSettings.js +7 -7
  393. package/dist/node/components/integrations/organisms/KnowledgeSourceList.js +6 -6
  394. package/dist/node/components/legal/PrivacyTemplate.js +67 -67
  395. package/dist/node/components/legal/TermsTemplate.js +54 -54
  396. package/dist/node/components/legal/index.js +121 -121
  397. package/dist/node/components/shared/FeatureGateNotice.js +4 -4
  398. package/dist/node/components/shared/index.js +4 -4
  399. package/dist/node/components/shell/WorkspaceHeader.js +4 -4
  400. package/dist/node/components/shell/WorkspaceProjectShellLayout.js +10 -10
  401. package/dist/node/components/shell/WorkspaceShellRenderer.js +8 -8
  402. package/dist/node/components/shell/WorkspaceSidebar.js +2 -2
  403. package/dist/node/components/shell/index.js +12 -12
  404. package/dist/node/components/templates/index.js +835 -835
  405. package/dist/node/components/templates/messaging/ConversationList.js +11 -11
  406. package/dist/node/components/templates/messaging/MessageComposer.js +11 -11
  407. package/dist/node/components/templates/messaging/MessageThread.js +6 -6
  408. package/dist/node/components/templates/messaging/MessagingWorkspace.js +23 -23
  409. package/dist/node/components/templates/messaging/index.js +23 -23
  410. package/dist/node/components/templates/recipes/LanguageSwitcher.js +1 -1
  411. package/dist/node/components/templates/recipes/RecipeCard.js +5 -5
  412. package/dist/node/components/templates/recipes/RecipeDetail.js +8 -8
  413. package/dist/node/components/templates/recipes/RecipeList.js +17 -17
  414. package/dist/node/components/templates/recipes/index.js +17 -17
  415. package/dist/node/components/templates/todos/FilterBar.js +9 -9
  416. package/dist/node/components/templates/todos/TaskForm.js +14 -14
  417. package/dist/node/components/templates/todos/TaskItem.js +4 -4
  418. package/dist/node/components/templates/todos/TaskList.js +30 -30
  419. package/dist/node/components/templates/todos/index.js +30 -30
  420. package/dist/node/features/contracts-registry.js +15 -15
  421. package/dist/node/features/docs/docs.contracts.js +2 -2
  422. package/dist/node/features/docs/index.js +2 -2
  423. package/dist/node/features/index.js +18 -18
  424. package/dist/node/features/registry.js +1 -1
  425. package/dist/node/index.js +14982 -16254
  426. package/dist/node/libs/email/client.js +1 -1
  427. package/dist/node/libs/email/contact.js +1 -1
  428. package/dist/node/libs/email/newsletter.js +1 -1
  429. package/dist/node/libs/email/waitlist-application.js +1 -1
  430. package/dist/node/libs/email/waitlist.js +1 -1
  431. package/dist/node/libs/email.js +1 -1
  432. package/dist/node/presentation/features/atoms/FeatureIcon/FeatureIcon.js +7 -7
  433. package/dist/node/presentation/features/atoms/FeatureIcon/index.js +7 -7
  434. package/dist/node/presentation/features/atoms/index.js +7 -7
  435. package/dist/node/presentation/features/hooks/index.js +56 -56
  436. package/dist/node/presentation/features/hooks/useContractsRegistry.js +18 -18
  437. package/dist/node/presentation/features/hooks/useFeatureFilters.js +1 -1
  438. package/dist/node/presentation/features/hooks/useFeatureRegistry.js +1 -1
  439. package/dist/node/presentation/features/hooks/useRelatedDocs.js +1 -1
  440. package/dist/node/presentation/features/index.js +1364 -1364
  441. package/dist/node/presentation/features/molecules/FeatureCard/FeatureCard.js +15 -15
  442. package/dist/node/presentation/features/molecules/FeatureCard/index.js +15 -15
  443. package/dist/node/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.js +7 -7
  444. package/dist/node/presentation/features/molecules/FeatureCategoryHeader/index.js +7 -7
  445. package/dist/node/presentation/features/molecules/FeatureFilters/FeatureFilters.js +1 -1
  446. package/dist/node/presentation/features/molecules/FeatureFilters/index.js +1 -1
  447. package/dist/node/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.js +5 -5
  448. package/dist/node/presentation/features/molecules/FeatureHoverPreview/index.js +5 -5
  449. package/dist/node/presentation/features/molecules/index.js +77 -77
  450. package/dist/node/presentation/features/organisms/FeatureDataViewsList.js +18 -18
  451. package/dist/node/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.js +121 -121
  452. package/dist/node/presentation/features/organisms/FeatureDiscovery/index.js +121 -121
  453. package/dist/node/presentation/features/organisms/FeatureEventsList.js +18 -18
  454. package/dist/node/presentation/features/organisms/FeatureFormsList.js +18 -18
  455. package/dist/node/presentation/features/organisms/FeatureOperationsList.js +15 -15
  456. package/dist/node/presentation/features/organisms/FeaturePresentationsList.js +18 -18
  457. package/dist/node/presentation/features/organisms/index.js +401 -401
  458. package/dist/node/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.js +13 -13
  459. package/dist/node/presentation/features/templates/FeatureDataViewDetailTemplate/index.js +13 -13
  460. package/dist/node/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.js +20 -20
  461. package/dist/node/presentation/features/templates/FeatureDataViewsTemplate/index.js +20 -20
  462. package/dist/node/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.js +12 -12
  463. package/dist/node/presentation/features/templates/FeatureEventDetailTemplate/index.js +12 -12
  464. package/dist/node/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.js +18 -18
  465. package/dist/node/presentation/features/templates/FeatureEventsTemplate/index.js +18 -18
  466. package/dist/node/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.js +13 -13
  467. package/dist/node/presentation/features/templates/FeatureFormDetailTemplate/index.js +13 -13
  468. package/dist/node/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.js +20 -20
  469. package/dist/node/presentation/features/templates/FeatureFormsTemplate/index.js +20 -20
  470. package/dist/node/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.js +8 -8
  471. package/dist/node/presentation/features/templates/FeatureOperationDetailTemplate/index.js +8 -8
  472. package/dist/node/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.js +15 -15
  473. package/dist/node/presentation/features/templates/FeatureOperationsTemplate/index.js +15 -15
  474. package/dist/node/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.js +2 -2
  475. package/dist/node/presentation/features/templates/FeatureOverviewTemplate/index.js +2 -2
  476. package/dist/node/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.js +12 -12
  477. package/dist/node/presentation/features/templates/FeaturePresentationDetailTemplate/index.js +12 -12
  478. package/dist/node/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.js +18 -18
  479. package/dist/node/presentation/features/templates/FeaturePresentationsTemplate/index.js +18 -18
  480. package/dist/presentation/features/atoms/FeatureIcon/FeatureIcon.js +7 -7
  481. package/dist/presentation/features/atoms/FeatureIcon/index.d.ts +1 -1
  482. package/dist/presentation/features/atoms/FeatureIcon/index.js +7 -7
  483. package/dist/presentation/features/atoms/index.js +7 -7
  484. package/dist/presentation/features/hooks/index.d.ts +3 -3
  485. package/dist/presentation/features/hooks/index.js +56 -56
  486. package/dist/presentation/features/hooks/useContractsRegistry.js +18 -18
  487. package/dist/presentation/features/hooks/useFeatureFilters.js +1 -1
  488. package/dist/presentation/features/hooks/useFeatureRegistry.js +1 -1
  489. package/dist/presentation/features/hooks/useRelatedDocs.js +1 -1
  490. package/dist/presentation/features/index.d.ts +14 -14
  491. package/dist/presentation/features/index.js +1364 -1364
  492. package/dist/presentation/features/molecules/FeatureCard/FeatureCard.js +15 -15
  493. package/dist/presentation/features/molecules/FeatureCard/index.js +15 -15
  494. package/dist/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.js +7 -7
  495. package/dist/presentation/features/molecules/FeatureCategoryHeader/index.js +7 -7
  496. package/dist/presentation/features/molecules/FeatureFilters/FeatureFilters.js +1 -1
  497. package/dist/presentation/features/molecules/FeatureFilters/index.js +1 -1
  498. package/dist/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.js +5 -5
  499. package/dist/presentation/features/molecules/FeatureHoverPreview/index.js +5 -5
  500. package/dist/presentation/features/molecules/index.d.ts +1 -1
  501. package/dist/presentation/features/molecules/index.js +77 -77
  502. package/dist/presentation/features/organisms/FeatureDataViewsList.js +18 -18
  503. package/dist/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.js +121 -121
  504. package/dist/presentation/features/organisms/FeatureDiscovery/index.d.ts +1 -1
  505. package/dist/presentation/features/organisms/FeatureDiscovery/index.js +121 -121
  506. package/dist/presentation/features/organisms/FeatureEventsList.js +18 -18
  507. package/dist/presentation/features/organisms/FeatureFormsList.js +18 -18
  508. package/dist/presentation/features/organisms/FeatureOperationsList.js +15 -15
  509. package/dist/presentation/features/organisms/FeaturePresentationsList.js +18 -18
  510. package/dist/presentation/features/organisms/index.d.ts +4 -4
  511. package/dist/presentation/features/organisms/index.js +401 -401
  512. package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.js +13 -13
  513. package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/index.js +13 -13
  514. package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/types.d.ts +1 -1
  515. package/dist/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.js +20 -20
  516. package/dist/presentation/features/templates/FeatureDataViewsTemplate/index.js +20 -20
  517. package/dist/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.js +12 -12
  518. package/dist/presentation/features/templates/FeatureEventDetailTemplate/index.js +12 -12
  519. package/dist/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.js +18 -18
  520. package/dist/presentation/features/templates/FeatureEventsTemplate/index.js +18 -18
  521. package/dist/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.js +13 -13
  522. package/dist/presentation/features/templates/FeatureFormDetailTemplate/index.js +13 -13
  523. package/dist/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.js +20 -20
  524. package/dist/presentation/features/templates/FeatureFormsTemplate/index.js +20 -20
  525. package/dist/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.js +8 -8
  526. package/dist/presentation/features/templates/FeatureOperationDetailTemplate/index.js +8 -8
  527. package/dist/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.js +15 -15
  528. package/dist/presentation/features/templates/FeatureOperationsTemplate/index.js +15 -15
  529. package/dist/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.js +2 -2
  530. package/dist/presentation/features/templates/FeatureOverviewTemplate/index.js +2 -2
  531. package/dist/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.js +12 -12
  532. package/dist/presentation/features/templates/FeaturePresentationDetailTemplate/index.js +12 -12
  533. package/dist/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.js +18 -18
  534. package/dist/presentation/features/templates/FeaturePresentationsTemplate/index.js +18 -18
  535. package/package.json +46 -32
  536. package/src/__tests__/env-setup.ts +1 -1
  537. package/src/__tests__/mocks/prisma.ts +78 -78
  538. package/src/__tests__/setup.ts +2 -2
  539. package/src/application/context-storage/index.ts +42 -42
  540. package/src/application/index.ts +1 -1
  541. package/src/application/mcp/cliMcp.ts +221 -221
  542. package/src/application/mcp/common.ts +210 -210
  543. package/src/application/mcp/contractsMcp.ts +15 -15
  544. package/src/application/mcp/contractsMcpResources.ts +119 -119
  545. package/src/application/mcp/contractsMcpTools.ts +218 -218
  546. package/src/application/mcp/contractsMcpTypes.ts +35 -35
  547. package/src/application/mcp/docsMcp.ts +173 -173
  548. package/src/application/mcp/index.ts +2 -2
  549. package/src/application/mcp/internalMcp.ts +204 -204
  550. package/src/application/mcp/providerRankingMcp.ts +346 -344
  551. package/src/bundles/LibraryBundle.ts +136 -136
  552. package/src/components/docs/DocsIndexPage.tsx +189 -241
  553. package/src/components/docs/advanced/AdvancedMCPPage.tsx +168 -168
  554. package/src/components/docs/advanced/AdvancedOverlayEditorPage.tsx +52 -52
  555. package/src/components/docs/advanced/AdvancedRenderersPage.tsx +53 -53
  556. package/src/components/docs/advanced/AdvancedSpecExperimentsPage.tsx +48 -48
  557. package/src/components/docs/advanced/AdvancedTelemetryPage.tsx +205 -205
  558. package/src/components/docs/advanced/AdvancedWorkflowMonitoringPage.tsx +42 -42
  559. package/src/components/docs/advanced/index.ts +2 -2
  560. package/src/components/docs/architecture/ArchitectureAppConfigPage.tsx +127 -127
  561. package/src/components/docs/architecture/ArchitectureControlPlanePage.tsx +79 -79
  562. package/src/components/docs/architecture/ArchitectureIntegrationBindingPage.tsx +147 -147
  563. package/src/components/docs/architecture/ArchitectureKnowledgeBindingPage.tsx +193 -193
  564. package/src/components/docs/architecture/ArchitectureMultiTenancyPage.tsx +73 -73
  565. package/src/components/docs/architecture/ArchitectureOverviewPage.tsx +98 -273
  566. package/src/components/docs/architecture/index.ts +3 -3
  567. package/src/components/docs/comparison/ComparisonAutomationPlatformsPage.tsx +137 -137
  568. package/src/components/docs/comparison/ComparisonEnterprisePlatformsPage.tsx +138 -138
  569. package/src/components/docs/comparison/ComparisonInternalToolBuildersPage.tsx +147 -147
  570. package/src/components/docs/comparison/ComparisonOverviewPage.tsx +106 -106
  571. package/src/components/docs/comparison/ComparisonWindmillPage.tsx +143 -143
  572. package/src/components/docs/comparison/ComparisonWorkflowEnginesPage.tsx +168 -168
  573. package/src/components/docs/comparison/index.ts +2 -2
  574. package/src/components/docs/docsManifest.ts +720 -0
  575. package/src/components/docs/ecosystem/IntegrationsPage.tsx +45 -45
  576. package/src/components/docs/ecosystem/PluginsPage.tsx +77 -77
  577. package/src/components/docs/ecosystem/RegistryPage.tsx +48 -48
  578. package/src/components/docs/ecosystem/TemplatesPage.tsx +52 -52
  579. package/src/components/docs/ecosystem/ecosystem.docblocks.ts +42 -42
  580. package/src/components/docs/ecosystem/index.ts +2 -2
  581. package/src/components/docs/examples/DocsExamplesPage.tsx +67 -66
  582. package/src/components/docs/generated/docs-index._common.json +1757 -1757
  583. package/src/components/docs/generated/docs-index.agent-console.json +376 -376
  584. package/src/components/docs/generated/docs-index.ai-chat-assistant.json +8 -8
  585. package/src/components/docs/generated/docs-index.ai-chat.json +104 -104
  586. package/src/components/docs/generated/docs-index.ai-support-bot.json +8 -8
  587. package/src/components/docs/generated/docs-index.analytics-dashboard.json +168 -168
  588. package/src/components/docs/generated/docs-index.app-config.json +136 -136
  589. package/src/components/docs/generated/docs-index.audit-trail.json +48 -48
  590. package/src/components/docs/generated/docs-index.calendar-google.json +8 -8
  591. package/src/components/docs/generated/docs-index.content-generation.json +8 -8
  592. package/src/components/docs/generated/docs-index.crm-pipeline.json +160 -160
  593. package/src/components/docs/generated/docs-index.email-gmail.json +8 -8
  594. package/src/components/docs/generated/docs-index.feature-flags.json +216 -216
  595. package/src/components/docs/generated/docs-index.files.json +176 -176
  596. package/src/components/docs/generated/docs-index.generated.ts +19 -19
  597. package/src/components/docs/generated/docs-index.health.json +96 -96
  598. package/src/components/docs/generated/docs-index.identity-rbac.json +312 -312
  599. package/src/components/docs/generated/docs-index.in-app-docs.json +8 -8
  600. package/src/components/docs/generated/docs-index.integration-hub.json +264 -264
  601. package/src/components/docs/generated/docs-index.integration-posthog.json +8 -8
  602. package/src/components/docs/generated/docs-index.integration-stripe.json +8 -8
  603. package/src/components/docs/generated/docs-index.integration-supabase.json +8 -8
  604. package/src/components/docs/generated/docs-index.jobs.json +136 -136
  605. package/src/components/docs/generated/docs-index.kb-update-pipeline.json +128 -128
  606. package/src/components/docs/generated/docs-index.knowledge-canon.json +8 -8
  607. package/src/components/docs/generated/docs-index.learning-journey-ambient-coach.json +8 -8
  608. package/src/components/docs/generated/docs-index.learning-journey-crm-onboarding.json +48 -48
  609. package/src/components/docs/generated/docs-index.learning-journey-duo-drills.json +8 -8
  610. package/src/components/docs/generated/docs-index.learning-journey-platform-tour.json +48 -48
  611. package/src/components/docs/generated/docs-index.learning-journey-quest-challenges.json +8 -8
  612. package/src/components/docs/generated/docs-index.learning-journey-registry.json +32 -32
  613. package/src/components/docs/generated/docs-index.learning-journey-studio-onboarding.json +48 -48
  614. package/src/components/docs/generated/docs-index.learning-journey-ui-coaching.json +8 -8
  615. package/src/components/docs/generated/docs-index.learning-journey-ui-gamified.json +8 -8
  616. package/src/components/docs/generated/docs-index.learning-journey-ui-onboarding.json +8 -8
  617. package/src/components/docs/generated/docs-index.learning-journey-ui-shared.json +8 -8
  618. package/src/components/docs/generated/docs-index.learning-journey.json +216 -216
  619. package/src/components/docs/generated/docs-index.learning-patterns.json +8 -8
  620. package/src/components/docs/generated/docs-index.lifecycle-cli.json +8 -8
  621. package/src/components/docs/generated/docs-index.lifecycle-dashboard.json +8 -8
  622. package/src/components/docs/generated/docs-index.locale-jurisdiction-gate.json +48 -48
  623. package/src/components/docs/generated/docs-index.manifest.json +376 -376
  624. package/src/components/docs/generated/docs-index.marketplace.json +336 -336
  625. package/src/components/docs/generated/docs-index.meeting-recorder-providers.json +8 -8
  626. package/src/components/docs/generated/docs-index.meeting-recorder.json +48 -48
  627. package/src/components/docs/generated/docs-index.metrics.json +200 -200
  628. package/src/components/docs/generated/docs-index.minimal.json +16 -16
  629. package/src/components/docs/generated/docs-index.notifications.json +64 -64
  630. package/src/components/docs/generated/docs-index.openbanking-powens.json +8 -8
  631. package/src/components/docs/generated/docs-index.openbanking.json +64 -64
  632. package/src/components/docs/generated/docs-index.opencode-cli.json +16 -16
  633. package/src/components/docs/generated/docs-index.personalization.json +8 -8
  634. package/src/components/docs/generated/docs-index.platform-acp.json +72 -72
  635. package/src/components/docs/generated/docs-index.platform-agent.json +96 -96
  636. package/src/components/docs/generated/docs-index.platform-context.json +56 -56
  637. package/src/components/docs/generated/docs-index.platform-database.json +48 -48
  638. package/src/components/docs/generated/docs-index.platform-docs.json +88 -88
  639. package/src/components/docs/generated/docs-index.platform-integrations.json +320 -320
  640. package/src/components/docs/generated/docs-index.platform-knowledge.json +56 -56
  641. package/src/components/docs/generated/docs-index.platform-provider-ranking.json +96 -96
  642. package/src/components/docs/generated/docs-index.pocket-family-office.json +120 -120
  643. package/src/components/docs/generated/docs-index.policy-safe-knowledge-assistant.json +8 -8
  644. package/src/components/docs/generated/docs-index.product-intent.json +8 -8
  645. package/src/components/docs/generated/docs-index.project-management-sync.json +8 -8
  646. package/src/components/docs/generated/docs-index.saas-boilerplate.json +208 -208
  647. package/src/components/docs/generated/docs-index.service-business-os.json +192 -192
  648. package/src/components/docs/generated/docs-index.team-hub.json +184 -184
  649. package/src/components/docs/generated/docs-index.unknown.json +512 -512
  650. package/src/components/docs/generated/docs-index.versioned-knowledge-base.json +80 -80
  651. package/src/components/docs/generated/docs-index.video-api-showcase.json +32 -32
  652. package/src/components/docs/generated/docs-index.video-docs-terminal.json +8 -8
  653. package/src/components/docs/generated/docs-index.video-marketing-clip.json +8 -8
  654. package/src/components/docs/generated/docs-index.voice-providers.json +8 -8
  655. package/src/components/docs/generated/docs-index.wealth-snapshot.json +152 -152
  656. package/src/components/docs/generated/docs-index.workflow-system.json +432 -432
  657. package/src/components/docs/generated/docs-index.workspace-cli.json +8 -8
  658. package/src/components/docs/generated/index.ts +6 -6
  659. package/src/components/docs/generated/loader.ts +49 -49
  660. package/src/components/docs/getting-started/CLIPage.tsx +157 -157
  661. package/src/components/docs/getting-started/CompatibilityPage.tsx +69 -69
  662. package/src/components/docs/getting-started/DataViewTutorialPage.tsx +63 -63
  663. package/src/components/docs/getting-started/DeveloperToolsPage.tsx +141 -140
  664. package/src/components/docs/getting-started/HelloWorldPage.tsx +88 -88
  665. package/src/components/docs/getting-started/InstallationPage.tsx +78 -78
  666. package/src/components/docs/getting-started/StartHerePage.tsx +64 -64
  667. package/src/components/docs/getting-started/TroubleshootingPage.tsx +68 -68
  668. package/src/components/docs/getting-started/VSCodeExtensionPage.tsx +233 -233
  669. package/src/components/docs/getting-started/getting-started.docblocks.ts +30 -30
  670. package/src/components/docs/getting-started/index.ts +6 -5
  671. package/src/components/docs/guides/GuideCIDiffGatingPage.tsx +88 -88
  672. package/src/components/docs/guides/GuideContractTypesPage.tsx +266 -266
  673. package/src/components/docs/guides/GuideDocsPipelinePage.tsx +78 -78
  674. package/src/components/docs/guides/GuideGenerateDocsClientsSchemasPage.tsx +89 -89
  675. package/src/components/docs/guides/GuideImportExistingCodebasesPage.tsx +360 -360
  676. package/src/components/docs/guides/GuideNextjsOneEndpointPage.tsx +117 -117
  677. package/src/components/docs/guides/GuideSpecValidationTypingPage.tsx +82 -82
  678. package/src/components/docs/guides/GuidesIndexPage.tsx +109 -99
  679. package/src/components/docs/guides/guides.docblocks.ts +60 -60
  680. package/src/components/docs/guides/index.ts +4 -4
  681. package/src/components/docs/index.ts +26 -40
  682. package/src/components/docs/integrations/IntegrationsCircuitBreakersPage.tsx +22 -22
  683. package/src/components/docs/integrations/IntegrationsElevenLabsPage.tsx +41 -41
  684. package/src/components/docs/integrations/IntegrationsGithubPage.tsx +66 -66
  685. package/src/components/docs/integrations/IntegrationsGmailPage.tsx +44 -44
  686. package/src/components/docs/integrations/IntegrationsGoogleCalendarPage.tsx +31 -31
  687. package/src/components/docs/integrations/IntegrationsHealthRoutingPage.tsx +80 -80
  688. package/src/components/docs/integrations/IntegrationsMistralPage.tsx +65 -65
  689. package/src/components/docs/integrations/IntegrationsOpenAIPage.tsx +54 -54
  690. package/src/components/docs/integrations/IntegrationsOverviewPage.tsx +124 -529
  691. package/src/components/docs/integrations/IntegrationsPostmarkPage.tsx +97 -97
  692. package/src/components/docs/integrations/IntegrationsPowensPage.tsx +165 -165
  693. package/src/components/docs/integrations/IntegrationsQdrantPage.tsx +44 -44
  694. package/src/components/docs/integrations/IntegrationsResendPage.tsx +40 -40
  695. package/src/components/docs/integrations/IntegrationsS3Page.tsx +48 -48
  696. package/src/components/docs/integrations/IntegrationsSlackPage.tsx +70 -70
  697. package/src/components/docs/integrations/IntegrationsSpecModelPage.tsx +139 -139
  698. package/src/components/docs/integrations/IntegrationsStripePage.tsx +153 -153
  699. package/src/components/docs/integrations/IntegrationsTwilioPage.tsx +50 -50
  700. package/src/components/docs/integrations/IntegrationsWhatsappMetaPage.tsx +69 -69
  701. package/src/components/docs/integrations/IntegrationsWhatsappTwilioPage.tsx +73 -73
  702. package/src/components/docs/integrations/index.ts +1 -1
  703. package/src/components/docs/intent/ContractFirstApiPage.tsx +61 -61
  704. package/src/components/docs/intent/DeterministicCodegenPage.tsx +81 -80
  705. package/src/components/docs/intent/GenerateClientFromSchemaPage.tsx +108 -108
  706. package/src/components/docs/intent/OpenapiAlternativePage.tsx +98 -98
  707. package/src/components/docs/intent/SchemaValidationTypescriptPage.tsx +79 -79
  708. package/src/components/docs/intent/SpecDrivenDevelopmentPage.tsx +67 -67
  709. package/src/components/docs/intent/index.ts +3 -3
  710. package/src/components/docs/intent/intent-pages.docblocks.ts +186 -186
  711. package/src/components/docs/knowledge/KnowledgeCategoriesPage.tsx +304 -304
  712. package/src/components/docs/knowledge/KnowledgeExamplesPage.tsx +84 -84
  713. package/src/components/docs/knowledge/KnowledgeOverviewPage.tsx +76 -285
  714. package/src/components/docs/knowledge/KnowledgeSourcesPage.tsx +171 -171
  715. package/src/components/docs/knowledge/KnowledgeSpacesPage.tsx +132 -132
  716. package/src/components/docs/knowledge/index.ts +1 -1
  717. package/src/components/docs/libraries/LibrariesAccessibilityPage.tsx +95 -95
  718. package/src/components/docs/libraries/LibrariesAiAgentPage.tsx +58 -58
  719. package/src/components/docs/libraries/LibrariesAnalyticsPage.tsx +39 -39
  720. package/src/components/docs/libraries/LibrariesContentGenPage.tsx +41 -41
  721. package/src/components/docs/libraries/LibrariesContractsPage.tsx +132 -132
  722. package/src/components/docs/libraries/LibrariesCostTrackingPage.tsx +47 -47
  723. package/src/components/docs/libraries/LibrariesDataBackendPage.tsx +73 -73
  724. package/src/components/docs/libraries/LibrariesDataViewsPage.tsx +76 -76
  725. package/src/components/docs/libraries/LibrariesDesignSystemPage.tsx +115 -115
  726. package/src/components/docs/libraries/LibrariesEvolutionPage.tsx +64 -64
  727. package/src/components/docs/libraries/LibrariesGraphQLPage.tsx +92 -92
  728. package/src/components/docs/libraries/LibrariesGrowthPage.tsx +37 -37
  729. package/src/components/docs/libraries/LibrariesMultiTenancyPage.tsx +47 -47
  730. package/src/components/docs/libraries/LibrariesObservabilityPage.tsx +58 -58
  731. package/src/components/docs/libraries/LibrariesOverlayEnginePage.tsx +51 -51
  732. package/src/components/docs/libraries/LibrariesOverviewPage.tsx +137 -301
  733. package/src/components/docs/libraries/LibrariesPersonalizationPage.tsx +57 -57
  734. package/src/components/docs/libraries/LibrariesProgressiveDeliveryPage.tsx +51 -51
  735. package/src/components/docs/libraries/LibrariesResiliencePage.tsx +54 -54
  736. package/src/components/docs/libraries/LibrariesRuntimePage.tsx +96 -96
  737. package/src/components/docs/libraries/LibrariesSLOPage.tsx +52 -52
  738. package/src/components/docs/libraries/LibrariesSchemaPage.tsx +131 -131
  739. package/src/components/docs/libraries/LibrariesSupportBotPage.tsx +59 -59
  740. package/src/components/docs/libraries/LibrariesTestingPage.tsx +64 -64
  741. package/src/components/docs/libraries/LibrariesUIKitPage.tsx +85 -85
  742. package/src/components/docs/libraries/LibrariesWorkflowComposerPage.tsx +38 -38
  743. package/src/components/docs/libraries/LibrariesWorkflowsPage.tsx +79 -79
  744. package/src/components/docs/libraries/index.ts +4 -4
  745. package/src/components/docs/manifesto/ManifestoPage.tsx +61 -132
  746. package/src/components/docs/ops/AutoEvolutionOpsPage.tsx +81 -81
  747. package/src/components/docs/ops/DistributedTracingOpsPage.tsx +28 -28
  748. package/src/components/docs/ops/ops-lifecycle.docblocks.ts +32 -32
  749. package/src/components/docs/ops/ops-runbooks-a.docblocks.ts +60 -60
  750. package/src/components/docs/ops/ops-runbooks-b.docblocks.ts +60 -60
  751. package/src/components/docs/ops/ops-slo-tenant.docblocks.ts +61 -61
  752. package/src/components/docs/ops/ops-top.docs.ts +10 -10
  753. package/src/components/docs/ops/ops.docs.ts +6 -6
  754. package/src/components/docs/product/product.docblocks.ts +60 -60
  755. package/src/components/docs/reference/DocsMarkdownContent.tsx +74 -74
  756. package/src/components/docs/reference/DocsReferenceContent.tsx +51 -51
  757. package/src/components/docs/reference/DocsReferenceIndexClient.tsx +106 -105
  758. package/src/components/docs/reference/DocsReferenceIndexPage.tsx +2 -2
  759. package/src/components/docs/reference/DocsReferencePage.tsx +3 -3
  760. package/src/components/docs/reference/docsMarkdownParser.ts +90 -90
  761. package/src/components/docs/safety/SafetyAuditingPage.tsx +189 -189
  762. package/src/components/docs/safety/SafetyMigrationsPage.tsx +189 -189
  763. package/src/components/docs/safety/SafetyOverviewPage.tsx +70 -157
  764. package/src/components/docs/safety/SafetyPDPPage.tsx +163 -163
  765. package/src/components/docs/safety/SafetySecurityTrustPage.tsx +89 -89
  766. package/src/components/docs/safety/SafetySigningPage.tsx +38 -38
  767. package/src/components/docs/safety/SafetyTenantIsolationPage.tsx +39 -39
  768. package/src/components/docs/safety/index.ts +3 -3
  769. package/src/components/docs/shared/StudioPrompt.tsx +17 -17
  770. package/src/components/docs/specs/SpecsCapabilitiesPage.tsx +79 -79
  771. package/src/components/docs/specs/SpecsDataViewsPage.tsx +142 -142
  772. package/src/components/docs/specs/SpecsOverlaysPage.tsx +202 -202
  773. package/src/components/docs/specs/SpecsOverviewPage.tsx +118 -193
  774. package/src/components/docs/specs/SpecsPolicyPage.tsx +233 -233
  775. package/src/components/docs/specs/SpecsWorkflowsPage.tsx +156 -156
  776. package/src/components/docs/specs/index.ts +3 -3
  777. package/src/components/docs/studio/StudioBYOKPage.tsx +11 -11
  778. package/src/components/docs/studio/StudioDeploymentsPage.tsx +11 -11
  779. package/src/components/docs/studio/StudioGettingStartedPage.tsx +11 -11
  780. package/src/components/docs/studio/StudioIntegrationsPage.tsx +11 -11
  781. package/src/components/docs/studio/StudioOverviewPage.tsx +94 -73
  782. package/src/components/docs/studio/StudioVisualBuilderPage.tsx +11 -11
  783. package/src/components/docs/studio/index.ts +4 -4
  784. package/src/components/docs/tech/contracts/tech-docs.docblocks.ts +10 -10
  785. package/src/components/integrations/molecules/IntegrationCard.tsx +71 -72
  786. package/src/components/integrations/organisms/IntegrationMarketplace.tsx +116 -116
  787. package/src/components/integrations/organisms/IntegrationSettings.tsx +201 -201
  788. package/src/components/integrations/organisms/KnowledgeSourceList.tsx +93 -94
  789. package/src/components/legal/PrivacyTemplate.tsx +611 -611
  790. package/src/components/legal/TermsTemplate.tsx +675 -675
  791. package/src/components/shared/FeatureGateNotice.tsx +26 -27
  792. package/src/components/shell/WorkspaceHeader.tsx +80 -80
  793. package/src/components/shell/WorkspaceProjectShellLayout.tsx +59 -58
  794. package/src/components/shell/WorkspaceShellRenderer.tsx +69 -68
  795. package/src/components/shell/WorkspaceSidebar.tsx +58 -58
  796. package/src/components/shell/index.ts +1 -1
  797. package/src/components/templates/engine/index.ts +29 -28
  798. package/src/components/templates/index.ts +1 -1
  799. package/src/components/templates/messaging/ConversationList.tsx +68 -69
  800. package/src/components/templates/messaging/MessageComposer.tsx +59 -59
  801. package/src/components/templates/messaging/MessageThread.tsx +73 -74
  802. package/src/components/templates/messaging/MessagingWorkspace.tsx +18 -19
  803. package/src/components/templates/messaging/index.ts +1 -1
  804. package/src/components/templates/messaging/types.ts +17 -17
  805. package/src/components/templates/recipes/LanguageSwitcher.tsx +20 -20
  806. package/src/components/templates/recipes/RecipeCard.tsx +56 -56
  807. package/src/components/templates/recipes/RecipeDetail.tsx +43 -43
  808. package/src/components/templates/recipes/RecipeList.tsx +62 -63
  809. package/src/components/templates/recipes/index.ts +2 -2
  810. package/src/components/templates/recipes/types.ts +24 -24
  811. package/src/components/templates/todos/FilterBar.tsx +84 -84
  812. package/src/components/templates/todos/TaskForm.tsx +118 -119
  813. package/src/components/templates/todos/TaskItem.tsx +78 -78
  814. package/src/components/templates/todos/TaskList.tsx +106 -107
  815. package/src/components/templates/todos/index.ts +2 -2
  816. package/src/components/templates/todos/types.ts +11 -11
  817. package/src/config/contractspec-blueprint.ts +55 -55
  818. package/src/config/contractspec-branding.ts +37 -37
  819. package/src/config/contractspec-routes.ts +22 -22
  820. package/src/config/index.ts +14 -15
  821. package/src/features/contracts-registry.ts +118 -118
  822. package/src/features/docs/docs.contracts.ts +6 -6
  823. package/src/features/docs/index.ts +6 -6
  824. package/src/features/docs.feature.ts +27 -27
  825. package/src/features/index.ts +59 -63
  826. package/src/features/mcp.feature.ts +24 -24
  827. package/src/features/presentations.feature.ts +27 -27
  828. package/src/features/registry.ts +14 -14
  829. package/src/index.ts +2 -2
  830. package/src/infrastructure/elysia/logger.ts +21 -21
  831. package/src/libs/email/client.test.ts +81 -81
  832. package/src/libs/email/client.ts +111 -111
  833. package/src/libs/email/contact.ts +35 -35
  834. package/src/libs/email/newsletter.ts +46 -46
  835. package/src/libs/email/types.ts +29 -29
  836. package/src/libs/email/utils.ts +5 -5
  837. package/src/libs/email/waitlist-application.ts +69 -69
  838. package/src/libs/email/waitlist.ts +46 -46
  839. package/src/libs/email.ts +7 -7
  840. package/src/libs/posthog/client.ts +44 -44
  841. package/src/libs/posthog/native.ts +23 -22
  842. package/src/libs/posthog/server.ts +7 -7
  843. package/src/libs/pricing-examples.ts +12 -12
  844. package/src/presentation/features/atoms/FeatureIcon/FeatureIcon.tsx +90 -90
  845. package/src/presentation/features/atoms/FeatureIcon/index.ts +3 -3
  846. package/src/presentation/features/hooks/index.ts +9 -9
  847. package/src/presentation/features/hooks/useContractsRegistry.ts +23 -23
  848. package/src/presentation/features/hooks/useFeatureFilters.ts +117 -117
  849. package/src/presentation/features/hooks/useFeatureRegistry.ts +40 -40
  850. package/src/presentation/features/hooks/useRelatedDocs.ts +28 -28
  851. package/src/presentation/features/index.ts +50 -52
  852. package/src/presentation/features/molecules/FeatureCard/FeatureCard.tsx +80 -80
  853. package/src/presentation/features/molecules/FeatureCard/types.ts +6 -6
  854. package/src/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.tsx +54 -54
  855. package/src/presentation/features/molecules/FeatureCategoryHeader/index.ts +2 -2
  856. package/src/presentation/features/molecules/FeatureFilters/FeatureFilters.tsx +67 -67
  857. package/src/presentation/features/molecules/FeatureFilters/types.ts +20 -20
  858. package/src/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.tsx +120 -121
  859. package/src/presentation/features/molecules/FeatureHoverPreview/index.ts +2 -2
  860. package/src/presentation/features/molecules/index.ts +8 -8
  861. package/src/presentation/features/organisms/FeatureDataViewsList.tsx +21 -21
  862. package/src/presentation/features/organisms/FeatureDetail/FeatureDetail.tsx +86 -86
  863. package/src/presentation/features/organisms/FeatureDetail/types.ts +4 -4
  864. package/src/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.tsx +210 -210
  865. package/src/presentation/features/organisms/FeatureDiscovery/index.ts +3 -3
  866. package/src/presentation/features/organisms/FeatureDiscovery/types.ts +10 -10
  867. package/src/presentation/features/organisms/FeatureEventsList.tsx +19 -19
  868. package/src/presentation/features/organisms/FeatureFormsList.tsx +19 -19
  869. package/src/presentation/features/organisms/FeatureOperationsList.tsx +21 -21
  870. package/src/presentation/features/organisms/FeaturePresentationsList.tsx +21 -21
  871. package/src/presentation/features/organisms/index.ts +6 -6
  872. package/src/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.tsx +219 -219
  873. package/src/presentation/features/templates/FeatureDataViewDetailTemplate/types.ts +7 -7
  874. package/src/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.tsx +26 -26
  875. package/src/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.tsx +195 -195
  876. package/src/presentation/features/templates/FeatureEventDetailTemplate/types.ts +7 -7
  877. package/src/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.tsx +26 -26
  878. package/src/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.tsx +216 -216
  879. package/src/presentation/features/templates/FeatureFormDetailTemplate/types.ts +7 -7
  880. package/src/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.tsx +26 -26
  881. package/src/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.tsx +228 -228
  882. package/src/presentation/features/templates/FeatureOperationDetailTemplate/types.ts +7 -7
  883. package/src/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.tsx +26 -26
  884. package/src/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.tsx +24 -24
  885. package/src/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.tsx +201 -201
  886. package/src/presentation/features/templates/FeaturePresentationDetailTemplate/types.ts +8 -8
  887. package/src/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.tsx +26 -26
  888. package/src/presentation/features/templates/types.ts +2 -2
  889. package/tsconfig.json +12 -12
  890. 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
  }