@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,46 +1,46 @@
1
1
  // @bun
2
2
  // src/features/docs/docs.contracts.ts
3
3
  import {
4
+ ContractReferenceQuery,
4
5
  DocSummaryModel,
5
6
  DocsIndexInput,
6
7
  DocsIndexOutput,
7
8
  DocsIndexQuery,
8
- DocsIndexQuery as DocsIndexQuery2,
9
- ContractReferenceQuery
9
+ DocsIndexQuery as DocsIndexQuery2
10
10
  } from "@contractspec/lib.contracts-spec/docs";
11
11
  // src/features/contracts-registry.ts
12
12
  import {
13
- OperationSpecRegistry,
14
- EventRegistry
13
+ EventRegistry,
14
+ OperationSpecRegistry
15
15
  } from "@contractspec/lib.contracts-spec";
16
- import {
17
- PresentationRegistry
18
- } from "@contractspec/lib.contracts-spec/presentations";
19
16
  import {
20
17
  DataViewRegistry
21
18
  } from "@contractspec/lib.contracts-spec/data-views";
22
- import { FormRegistry } from "@contractspec/lib.contracts-spec/forms";
23
- import {
24
- serializeOperationSpec,
25
- serializeEventSpec,
26
- serializePresentationSpec,
27
- serializeDataViewSpec,
28
- serializeFormSpec
29
- } from "@contractspec/lib.contracts-spec/serialization";
30
19
  import {
31
20
  ContractReferenceDataView,
32
21
  ContractReferenceQuery as ContractReferenceQuery2,
33
- DocsGeneratedEvent,
34
22
  DocsGenerateCommand,
23
+ DocsGeneratedEvent,
35
24
  DocsIndexDataView,
36
25
  DocsIndexQuery as DocsIndexQuery3,
37
26
  DocsLayoutPresentation,
38
- DocsPublishedEvent,
39
27
  DocsPublishCommand,
28
+ DocsPublishedEvent,
40
29
  DocsReferencePagePresentation,
41
30
  DocsSearchForm,
42
31
  ExampleCatalogDataView
43
32
  } from "@contractspec/lib.contracts-spec/docs";
33
+ import { FormRegistry } from "@contractspec/lib.contracts-spec/forms";
34
+ import {
35
+ PresentationRegistry
36
+ } from "@contractspec/lib.contracts-spec/presentations";
37
+ import {
38
+ serializeDataViewSpec,
39
+ serializeEventSpec,
40
+ serializeFormSpec,
41
+ serializeOperationSpec,
42
+ serializePresentationSpec
43
+ } from "@contractspec/lib.contracts-spec/serialization";
44
44
  var operationRegistry = null;
45
45
  function createContractSpecOperationRegistry() {
46
46
  const registry = new OperationSpecRegistry;
@@ -250,8 +250,8 @@ var PresentationsFeature = {
250
250
  };
251
251
 
252
252
  // src/features/registry.ts
253
- import { FeatureRegistry } from "@contractspec/lib.contracts-spec/features";
254
253
  import { AppConfigFeature } from "@contractspec/lib.contracts-spec/app-config";
254
+ import { FeatureRegistry } from "@contractspec/lib.contracts-spec/features";
255
255
  function createContractSpecFeatureRegistry() {
256
256
  const features = new FeatureRegistry;
257
257
  features.register(DocsFeature);
@@ -275,19 +275,19 @@ function resetContractSpecFeatureRegistry() {
275
275
  import { FeatureRegistry as FeatureRegistry2 } from "@contractspec/lib.contracts-spec/features";
276
276
 
277
277
  // src/presentation/features/atoms/FeatureIcon/FeatureIcon.tsx
278
- import * as React from "react";
278
+ import { cn } from "@contractspec/lib.ui-kit-web/ui/utils";
279
279
  import {
280
- FileText,
281
280
  Boxes,
282
- Settings,
283
- Globe,
284
- Shield,
285
281
  Database,
286
- MessageSquare,
282
+ FileText,
283
+ Globe,
287
284
  Layout,
285
+ MessageSquare,
286
+ Settings,
287
+ Shield,
288
288
  Workflow
289
289
  } from "lucide-react";
290
- import { cn } from "@contractspec/lib.ui-kit-web/ui/utils";
290
+ import * as React from "react";
291
291
  import { jsx } from "react/jsx-runtime";
292
292
  "use client";
293
293
  var domainIconMap = {
@@ -367,41 +367,8 @@ function getFeatureIconTone(stability) {
367
367
  return "primary";
368
368
  return stabilityToneMap[stability] || "primary";
369
369
  }
370
- // src/presentation/features/hooks/useFeatureRegistry.ts
371
- import { useMemo as useMemo2 } from "react";
372
- "use client";
373
- function useFeatureRegistry() {
374
- const registry = useMemo2(() => getContractSpecFeatureRegistry(), []);
375
- return useMemo2(() => {
376
- const features = registry.list();
377
- return {
378
- features,
379
- getFeature: (key) => registry.get(key),
380
- getByTag: (tag) => registry.listByTag(tag),
381
- getByOwner: (owner) => registry.listByOwner(owner),
382
- getUniqueTags: () => registry.getUniqueTags(),
383
- getUniqueDomains: () => {
384
- const domains = new Set;
385
- for (const f of features) {
386
- if (f.meta.domain)
387
- domains.add(f.meta.domain);
388
- }
389
- return [...domains].sort();
390
- },
391
- getUniqueStabilities: () => {
392
- const stabilities = new Set;
393
- for (const f of features) {
394
- if (f.meta.stability)
395
- stabilities.add(f.meta.stability);
396
- }
397
- return [...stabilities].sort();
398
- }
399
- };
400
- }, [registry]);
401
- }
402
-
403
370
  // src/presentation/features/hooks/useFeatureFilters.ts
404
- import { useState, useMemo as useMemo3, useCallback } from "react";
371
+ import { useCallback, useMemo as useMemo2, useState } from "react";
405
372
  "use client";
406
373
  var defaultFilters = {
407
374
  search: "",
@@ -433,10 +400,10 @@ function useFeatureFilters(features) {
433
400
  }));
434
401
  }, []);
435
402
  const clearFilters = useCallback(() => setFilters(defaultFilters), []);
436
- const hasActiveFilters = useMemo3(() => {
403
+ const hasActiveFilters = useMemo2(() => {
437
404
  return filters.search.length > 0 || filters.tags.length > 0 || filters.stability.length > 0 || filters.domain.length > 0;
438
405
  }, [filters]);
439
- const filteredFeatures = useMemo3(() => {
406
+ const filteredFeatures = useMemo2(() => {
440
407
  return features.filter((feature) => {
441
408
  if (filters.search) {
442
409
  const searchLower = filters.search.toLowerCase();
@@ -473,6 +440,39 @@ function useFeatureFilters(features) {
473
440
  };
474
441
  }
475
442
 
443
+ // src/presentation/features/hooks/useFeatureRegistry.ts
444
+ import { useMemo as useMemo3 } from "react";
445
+ "use client";
446
+ function useFeatureRegistry() {
447
+ const registry = useMemo3(() => getContractSpecFeatureRegistry(), []);
448
+ return useMemo3(() => {
449
+ const features = registry.list();
450
+ return {
451
+ features,
452
+ getFeature: (key) => registry.get(key),
453
+ getByTag: (tag) => registry.listByTag(tag),
454
+ getByOwner: (owner) => registry.listByOwner(owner),
455
+ getUniqueTags: () => registry.getUniqueTags(),
456
+ getUniqueDomains: () => {
457
+ const domains = new Set;
458
+ for (const f of features) {
459
+ if (f.meta.domain)
460
+ domains.add(f.meta.domain);
461
+ }
462
+ return [...domains].sort();
463
+ },
464
+ getUniqueStabilities: () => {
465
+ const stabilities = new Set;
466
+ for (const f of features) {
467
+ if (f.meta.stability)
468
+ stabilities.add(f.meta.stability);
469
+ }
470
+ return [...stabilities].sort();
471
+ }
472
+ };
473
+ }, [registry]);
474
+ }
475
+
476
476
  // src/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.tsx
477
477
  import { StatusChip } from "@contractspec/lib.design-system";
478
478
  import { HStack } from "@contractspec/lib.ui-kit-web/ui/stack";
@@ -551,7 +551,7 @@ function FeatureHoverPreview({ feature }) {
551
551
  ]
552
552
  }),
553
553
  hasCapabilities && /* @__PURE__ */ jsxs("div", {
554
- className: "border-border/50 space-y-1.5 border-t pt-1",
554
+ className: "space-y-1.5 border-border/50 border-t pt-1",
555
555
  children: [
556
556
  capabilities?.provides?.length ? /* @__PURE__ */ jsxs(HStack, {
557
557
  gap: "xs",
@@ -610,13 +610,13 @@ function FeatureHoverPreview({ feature }) {
610
610
  meta.tags?.length ? /* @__PURE__ */ jsxs(HStack, {
611
611
  gap: "xs",
612
612
  wrap: "wrap",
613
- className: "border-border/50 items-center border-t pt-1",
613
+ className: "items-center border-border/50 border-t pt-1",
614
614
  children: [
615
615
  /* @__PURE__ */ jsx2(Tag, {
616
- className: "text-muted-foreground h-3.5 w-3.5"
616
+ className: "h-3.5 w-3.5 text-muted-foreground"
617
617
  }),
618
618
  meta.tags.slice(0, 4).map((tag) => /* @__PURE__ */ jsxs("span", {
619
- className: "bg-muted text-muted-foreground rounded px-1.5 py-0.5 text-xs",
619
+ className: "rounded bg-muted px-1.5 py-0.5 text-muted-foreground text-xs",
620
620
  children: [
621
621
  "#",
622
622
  tag
@@ -633,7 +633,7 @@ function FeatureHoverPreview({ feature }) {
633
633
  }) : null,
634
634
  meta.owners?.length ? /* @__PURE__ */ jsxs(HStack, {
635
635
  gap: "xs",
636
- className: "text-muted-foreground items-center text-xs",
636
+ className: "items-center text-muted-foreground text-xs",
637
637
  children: [
638
638
  /* @__PURE__ */ jsx2(Users, {
639
639
  className: "h-3.5 w-3.5"
@@ -649,7 +649,7 @@ function FeatureHoverPreview({ feature }) {
649
649
  // src/presentation/features/molecules/FeatureCard/FeatureCard.tsx
650
650
  import { EntityCard, StatusChip as StatusChip2 } from "@contractspec/lib.design-system";
651
651
  import { HStack as HStack2 } from "@contractspec/lib.ui-kit-web/ui/stack";
652
- import { Zap as Zap2, Radio as Radio2, Layout as Layout3, Shield as Shield3 } from "lucide-react";
652
+ import { Layout as Layout3, Radio as Radio2, Shield as Shield3, Zap as Zap2 } from "lucide-react";
653
653
  import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
654
654
  "use client";
655
655
  var stabilityTone = {
@@ -688,7 +688,7 @@ function FeatureCard({
688
688
  size: "sm"
689
689
  }),
690
690
  meta: meta.description ? /* @__PURE__ */ jsx3("span", {
691
- className: "text-muted-foreground line-clamp-2 text-sm",
691
+ className: "line-clamp-2 text-muted-foreground text-sm",
692
692
  children: meta.description
693
693
  }) : undefined,
694
694
  preview: /* @__PURE__ */ jsx3(FeatureHoverPreview, {
@@ -696,7 +696,7 @@ function FeatureCard({
696
696
  }),
697
697
  footer: /* @__PURE__ */ jsxs2(HStack2, {
698
698
  gap: "md",
699
- className: "text-muted-foreground w-full justify-between text-xs",
699
+ className: "w-full justify-between text-muted-foreground text-xs",
700
700
  children: [
701
701
  /* @__PURE__ */ jsxs2(HStack2, {
702
702
  gap: "sm",
@@ -743,12 +743,59 @@ function FeatureCard({
743
743
  })
744
744
  });
745
745
  }
746
- // src/presentation/features/molecules/FeatureFilters/FeatureFilters.tsx
747
- import { Button, Input } from "@contractspec/lib.design-system";
748
- import { VStack, HStack as HStack3 } from "@contractspec/lib.ui-kit-web/ui/stack";
746
+ // src/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.tsx
747
+ import { StatusChip as StatusChip3 } from "@contractspec/lib.design-system";
748
+ import { HStack as HStack3 } from "@contractspec/lib.ui-kit-web/ui/stack";
749
749
  import { cn as cn2 } from "@contractspec/lib.ui-kit-web/ui/utils";
750
+ import { Boxes as Boxes2, ChevronDown } from "lucide-react";
750
751
  import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
751
752
  "use client";
753
+ function FeatureCategoryHeader({
754
+ title,
755
+ count,
756
+ icon,
757
+ isCollapsed = false,
758
+ onToggle,
759
+ className
760
+ }) {
761
+ return /* @__PURE__ */ jsxs3("button", {
762
+ type: "button",
763
+ onClick: onToggle,
764
+ 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),
765
+ children: [
766
+ /* @__PURE__ */ jsxs3(HStack3, {
767
+ gap: "sm",
768
+ className: "items-center",
769
+ children: [
770
+ /* @__PURE__ */ jsx4("div", {
771
+ className: "text-muted-foreground transition-colors group-hover:text-foreground",
772
+ children: icon || /* @__PURE__ */ jsx4(Boxes2, {
773
+ className: "h-5 w-5"
774
+ })
775
+ }),
776
+ /* @__PURE__ */ jsx4("span", {
777
+ className: "font-semibold text-lg capitalize transition-colors group-hover:text-primary",
778
+ children: title
779
+ }),
780
+ /* @__PURE__ */ jsx4(StatusChip3, {
781
+ tone: "neutral",
782
+ label: `${count} ${count === 1 ? "feature" : "features"}`,
783
+ size: "sm"
784
+ })
785
+ ]
786
+ }),
787
+ /* @__PURE__ */ jsx4(ChevronDown, {
788
+ className: cn2("h-5 w-5 text-muted-foreground transition-transform duration-200", isCollapsed && "-rotate-90")
789
+ })
790
+ ]
791
+ });
792
+ }
793
+ // src/presentation/features/molecules/FeatureFilters/FeatureFilters.tsx
794
+ import { Button, Input } from "@contractspec/lib.design-system";
795
+ import { HStack as HStack4, VStack } from "@contractspec/lib.ui-kit-web/ui/stack";
796
+ import { cn as cn3 } from "@contractspec/lib.ui-kit-web/ui/utils";
797
+ import { jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
798
+ "use client";
752
799
  function FeatureFiltersBar({
753
800
  uniqueTags,
754
801
  uniqueStabilities,
@@ -760,23 +807,23 @@ function FeatureFiltersBar({
760
807
  hasActiveFilters,
761
808
  className
762
809
  }) {
763
- return /* @__PURE__ */ jsxs3(VStack, {
810
+ return /* @__PURE__ */ jsxs4(VStack, {
764
811
  gap: "md",
765
- className: cn2("w-full", className),
812
+ className: cn3("w-full", className),
766
813
  children: [
767
- /* @__PURE__ */ jsxs3(HStack3, {
814
+ /* @__PURE__ */ jsxs4(HStack4, {
768
815
  gap: "md",
769
816
  justify: "between",
770
817
  className: "w-full",
771
818
  children: [
772
- /* @__PURE__ */ jsx4(Input, {
819
+ /* @__PURE__ */ jsx5(Input, {
773
820
  placeholder: "Search features...",
774
821
  value: filters.search,
775
822
  onChange: (e) => setSearch(e.target.value),
776
823
  className: "max-w-md",
777
824
  "aria-label": "Search features"
778
825
  }),
779
- hasActiveFilters && /* @__PURE__ */ jsx4(Button, {
826
+ hasActiveFilters && /* @__PURE__ */ jsx5(Button, {
780
827
  variant: "ghost",
781
828
  size: "sm",
782
829
  onClick: clearFilters,
@@ -784,15 +831,15 @@ function FeatureFiltersBar({
784
831
  })
785
832
  ]
786
833
  }),
787
- uniqueStabilities.length > 0 && /* @__PURE__ */ jsxs3(HStack3, {
834
+ uniqueStabilities.length > 0 && /* @__PURE__ */ jsxs4(HStack4, {
788
835
  gap: "xs",
789
836
  wrap: "wrap",
790
837
  children: [
791
- /* @__PURE__ */ jsx4("span", {
838
+ /* @__PURE__ */ jsx5("span", {
792
839
  className: "text-muted-foreground text-sm",
793
840
  children: "Stability:"
794
841
  }),
795
- uniqueStabilities.map((stability) => /* @__PURE__ */ jsx4(Button, {
842
+ uniqueStabilities.map((stability) => /* @__PURE__ */ jsx5(Button, {
796
843
  variant: filters.stability.includes(stability) ? "default" : "outline",
797
844
  size: "sm",
798
845
  onClick: () => toggleStability(stability),
@@ -801,15 +848,15 @@ function FeatureFiltersBar({
801
848
  }, stability))
802
849
  ]
803
850
  }),
804
- uniqueTags.length > 0 && /* @__PURE__ */ jsxs3(HStack3, {
851
+ uniqueTags.length > 0 && /* @__PURE__ */ jsxs4(HStack4, {
805
852
  gap: "xs",
806
853
  wrap: "wrap",
807
854
  children: [
808
- /* @__PURE__ */ jsx4("span", {
855
+ /* @__PURE__ */ jsx5("span", {
809
856
  className: "text-muted-foreground text-sm",
810
857
  children: "Tags:"
811
858
  }),
812
- uniqueTags.slice(0, 10).map((tag) => /* @__PURE__ */ jsxs3(Button, {
859
+ uniqueTags.slice(0, 10).map((tag) => /* @__PURE__ */ jsxs4(Button, {
813
860
  variant: filters.tags.includes(tag) ? "default" : "outline",
814
861
  size: "sm",
815
862
  onClick: () => toggleTag(tag),
@@ -819,7 +866,7 @@ function FeatureFiltersBar({
819
866
  tag
820
867
  ]
821
868
  }, tag)),
822
- uniqueTags.length > 10 && /* @__PURE__ */ jsxs3("span", {
869
+ uniqueTags.length > 10 && /* @__PURE__ */ jsxs4("span", {
823
870
  className: "text-muted-foreground text-sm",
824
871
  children: [
825
872
  "+",
@@ -832,96 +879,227 @@ function FeatureFiltersBar({
832
879
  ]
833
880
  });
834
881
  }
835
- // src/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.tsx
836
- import { cn as cn3 } from "@contractspec/lib.ui-kit-web/ui/utils";
837
- import { ChevronDown, Boxes as Boxes2 } from "lucide-react";
838
- import { HStack as HStack4 } from "@contractspec/lib.ui-kit-web/ui/stack";
839
- import { StatusChip as StatusChip3 } from "@contractspec/lib.design-system";
840
- import { jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
882
+ // src/presentation/features/organisms/FeatureDataViewsList.tsx
883
+ import { EntityCard as EntityCard2 } from "@contractspec/lib.design-system";
884
+ import { Table } from "lucide-react";
885
+ import { jsx as jsx6 } from "react/jsx-runtime";
841
886
  "use client";
842
- function FeatureCategoryHeader({
843
- title,
844
- count,
845
- icon,
846
- isCollapsed = false,
847
- onToggle,
848
- className
887
+ function FeatureDataViewsList({
888
+ feature
849
889
  }) {
850
- return /* @__PURE__ */ jsxs4("button", {
851
- type: "button",
852
- onClick: onToggle,
853
- 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),
890
+ if (!feature.dataViews?.length)
891
+ return null;
892
+ return /* @__PURE__ */ jsx6("div", {
893
+ className: "grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",
894
+ children: feature.dataViews.map((view) => {
895
+ const spec = resolveSerializedDataViewSpec(view.key, view.version);
896
+ return /* @__PURE__ */ jsx6(EntityCard2, {
897
+ cardTitle: view.key,
898
+ cardSubtitle: `v${view.version}`,
899
+ footer: spec?.meta.description,
900
+ icon: /* @__PURE__ */ jsx6(Table, {
901
+ className: "h-4 w-4"
902
+ }),
903
+ href: `/features/${feature.meta.key}/dataviews/${view.key}`
904
+ }, view.key);
905
+ })
906
+ });
907
+ }
908
+
909
+ // src/presentation/features/organisms/FeatureDetail/FeatureDetail.tsx
910
+ import {
911
+ StatCard,
912
+ StatCardGroup,
913
+ StatusChip as StatusChip4
914
+ } from "@contractspec/lib.design-system";
915
+ import { Box, HStack as HStack5, VStack as VStack2 } from "@contractspec/lib.ui-kit-web/ui/stack";
916
+ import { cn as cn4 } from "@contractspec/lib.ui-kit-web/ui/utils";
917
+ import Link from "next/link";
918
+ import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
919
+ "use client";
920
+ var stabilityTone2 = {
921
+ stable: "success",
922
+ beta: "warning",
923
+ experimental: "info",
924
+ deprecated: "danger"
925
+ };
926
+ function FeatureDetail({ feature, className }) {
927
+ const { meta, operations, events, presentations, capabilities } = feature;
928
+ const tone = stabilityTone2[meta.stability] ?? "neutral";
929
+ return /* @__PURE__ */ jsxs5(VStack2, {
930
+ gap: "lg",
931
+ className: cn4("w-full", className),
854
932
  children: [
855
- /* @__PURE__ */ jsxs4(HStack4, {
933
+ /* @__PURE__ */ jsxs5(HStack5, {
856
934
  gap: "sm",
857
- className: "items-center",
858
935
  children: [
859
- /* @__PURE__ */ jsx5("div", {
860
- className: "text-muted-foreground group-hover:text-foreground transition-colors",
861
- children: icon || /* @__PURE__ */ jsx5(Boxes2, {
862
- className: "h-5 w-5"
863
- })
936
+ /* @__PURE__ */ jsx7(StatusChip4, {
937
+ tone,
938
+ label: meta.stability ?? "unknown"
864
939
  }),
865
- /* @__PURE__ */ jsx5("span", {
866
- className: "group-hover:text-primary text-lg font-semibold capitalize transition-colors",
867
- children: title
940
+ /* @__PURE__ */ jsx7(StatusChip4, {
941
+ tone: "neutral",
942
+ label: meta.key,
943
+ size: "sm"
868
944
  }),
869
- /* @__PURE__ */ jsx5(StatusChip3, {
945
+ /* @__PURE__ */ jsx7(StatusChip4, {
870
946
  tone: "neutral",
871
- label: `${count} ${count === 1 ? "feature" : "features"}`,
947
+ label: `v${meta.version}`,
872
948
  size: "sm"
873
949
  })
874
950
  ]
875
951
  }),
876
- /* @__PURE__ */ jsx5(ChevronDown, {
877
- className: cn3("text-muted-foreground h-5 w-5 transition-transform duration-200", isCollapsed && "-rotate-90")
878
- })
879
- ]
880
- });
881
- }
882
- // src/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.tsx
883
- import * as React2 from "react";
884
- import {
885
- PageHeaderResponsive,
886
- EmptyState,
887
- Button as Button2,
888
- StatusChip as StatusChip4
889
- } from "@contractspec/lib.design-system";
890
- import { VStack as VStack2, HStack as HStack5 } from "@contractspec/lib.ui-kit-web/ui/stack";
891
- import { cn as cn4 } from "@contractspec/lib.ui-kit-web/ui/utils";
892
- import { LayoutGrid, List, Star } from "lucide-react";
893
- import { jsx as jsx6, jsxs as jsxs5 } from "react/jsx-runtime";
894
- "use client";
895
- function groupFeaturesByDomain(features) {
896
- const groups = {};
897
- for (const feature of features) {
898
- const domain = feature.meta.domain || "Other";
899
- if (!groups[domain])
900
- groups[domain] = [];
901
- groups[domain].push(feature);
902
- }
903
- return groups;
904
- }
905
- function groupFeaturesByStability(features) {
906
- const order = ["stable", "beta", "experimental", "deprecated", "unknown"];
907
- const groups = {};
908
- for (const feature of features) {
909
- const stability = feature.meta.stability || "unknown";
910
- if (!groups[stability])
911
- groups[stability] = [];
912
- groups[stability].push(feature);
913
- }
914
- const sorted = {};
915
- for (const key of order) {
916
- if (groups[key])
917
- sorted[key] = groups[key];
918
- }
919
- return sorted;
920
- }
921
- function FeatureDiscovery({
922
- onSelectFeature,
923
- className,
924
- defaultViewMode = "grid",
952
+ /* @__PURE__ */ jsxs5(StatCardGroup, {
953
+ children: [
954
+ /* @__PURE__ */ jsx7(Link, {
955
+ href: `./${feature.meta.key}/operations`,
956
+ children: /* @__PURE__ */ jsx7(StatCard, {
957
+ label: "Operations",
958
+ value: operations?.length ?? 0
959
+ })
960
+ }),
961
+ /* @__PURE__ */ jsx7(Link, {
962
+ href: `./${feature.meta.key}/events`,
963
+ children: /* @__PURE__ */ jsx7(StatCard, {
964
+ label: "Events",
965
+ value: events?.length ?? 0
966
+ })
967
+ }),
968
+ /* @__PURE__ */ jsx7(Link, {
969
+ href: `./${feature.meta.key}/presentations`,
970
+ children: /* @__PURE__ */ jsx7(StatCard, {
971
+ label: "Presentations",
972
+ value: presentations?.length ?? 0
973
+ })
974
+ })
975
+ ]
976
+ }),
977
+ capabilities?.provides?.length ? /* @__PURE__ */ jsxs5(Box, {
978
+ className: "flex-col rounded-lg border p-4",
979
+ gap: "sm",
980
+ align: "start",
981
+ children: [
982
+ /* @__PURE__ */ jsx7("span", {
983
+ className: "font-semibold",
984
+ children: "Provides Capabilities"
985
+ }),
986
+ /* @__PURE__ */ jsx7(HStack5, {
987
+ gap: "xs",
988
+ wrap: "wrap",
989
+ children: capabilities.provides.map((cap) => /* @__PURE__ */ jsx7(StatusChip4, {
990
+ tone: "success",
991
+ label: `${cap.key} v${cap.version}`,
992
+ size: "sm"
993
+ }, `${cap.key}-${cap.version}`))
994
+ })
995
+ ]
996
+ }) : null,
997
+ capabilities?.requires?.length ? /* @__PURE__ */ jsxs5(Box, {
998
+ className: "flex-col rounded-lg border p-4",
999
+ gap: "sm",
1000
+ align: "start",
1001
+ children: [
1002
+ /* @__PURE__ */ jsx7("span", {
1003
+ className: "font-semibold",
1004
+ children: "Requires Capabilities"
1005
+ }),
1006
+ /* @__PURE__ */ jsx7(HStack5, {
1007
+ gap: "xs",
1008
+ wrap: "wrap",
1009
+ children: capabilities.requires.map((req) => /* @__PURE__ */ jsx7(StatusChip4, {
1010
+ tone: "info",
1011
+ label: `${req.key}${req.version ? ` v${req.version}` : ""}${req.optional ? " (optional)" : ""}`,
1012
+ size: "sm"
1013
+ }, req.key))
1014
+ })
1015
+ ]
1016
+ }) : null,
1017
+ meta.tags?.length ? /* @__PURE__ */ jsxs5(Box, {
1018
+ className: "flex-col rounded-lg border p-4",
1019
+ gap: "sm",
1020
+ align: "start",
1021
+ children: [
1022
+ /* @__PURE__ */ jsx7("span", {
1023
+ className: "font-semibold",
1024
+ children: "Tags"
1025
+ }),
1026
+ /* @__PURE__ */ jsx7(HStack5, {
1027
+ gap: "xs",
1028
+ wrap: "wrap",
1029
+ children: meta.tags.map((tag) => /* @__PURE__ */ jsx7(StatusChip4, {
1030
+ tone: "neutral",
1031
+ label: `#${tag}`,
1032
+ size: "sm"
1033
+ }, tag))
1034
+ })
1035
+ ]
1036
+ }) : null,
1037
+ meta.owners?.length ? /* @__PURE__ */ jsxs5(Box, {
1038
+ className: "flex-col rounded-lg border p-4",
1039
+ gap: "sm",
1040
+ align: "start",
1041
+ children: [
1042
+ /* @__PURE__ */ jsx7("span", {
1043
+ className: "font-semibold",
1044
+ children: "Owners"
1045
+ }),
1046
+ /* @__PURE__ */ jsx7(HStack5, {
1047
+ gap: "xs",
1048
+ wrap: "wrap",
1049
+ children: meta.owners.map((owner) => /* @__PURE__ */ jsx7(StatusChip4, {
1050
+ tone: "neutral",
1051
+ label: owner,
1052
+ size: "sm"
1053
+ }, owner))
1054
+ })
1055
+ ]
1056
+ }) : null
1057
+ ]
1058
+ });
1059
+ }
1060
+ // src/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.tsx
1061
+ import {
1062
+ Button as Button2,
1063
+ EmptyState,
1064
+ PageHeaderResponsive,
1065
+ StatusChip as StatusChip5
1066
+ } from "@contractspec/lib.design-system";
1067
+ import { HStack as HStack6, VStack as VStack3 } from "@contractspec/lib.ui-kit-web/ui/stack";
1068
+ import { cn as cn5 } from "@contractspec/lib.ui-kit-web/ui/utils";
1069
+ import { LayoutGrid, List, Star } from "lucide-react";
1070
+ import * as React2 from "react";
1071
+ import { jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
1072
+ "use client";
1073
+ function groupFeaturesByDomain(features) {
1074
+ const groups = {};
1075
+ for (const feature of features) {
1076
+ const domain = feature.meta.domain || "Other";
1077
+ if (!groups[domain])
1078
+ groups[domain] = [];
1079
+ groups[domain].push(feature);
1080
+ }
1081
+ return groups;
1082
+ }
1083
+ function groupFeaturesByStability(features) {
1084
+ const order = ["stable", "beta", "experimental", "deprecated", "unknown"];
1085
+ const groups = {};
1086
+ for (const feature of features) {
1087
+ const stability = feature.meta.stability || "unknown";
1088
+ if (!groups[stability])
1089
+ groups[stability] = [];
1090
+ groups[stability].push(feature);
1091
+ }
1092
+ const sorted = {};
1093
+ for (const key of order) {
1094
+ if (groups[key])
1095
+ sorted[key] = groups[key];
1096
+ }
1097
+ return sorted;
1098
+ }
1099
+ function FeatureDiscovery({
1100
+ onSelectFeature,
1101
+ className,
1102
+ defaultViewMode = "grid",
925
1103
  groupBy = "domain",
926
1104
  showFeatured = true
927
1105
  }) {
@@ -960,42 +1138,42 @@ function FeatureDiscovery({
960
1138
  });
961
1139
  };
962
1140
  const gridClasses = viewMode === "grid" ? "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3" : "flex flex-col gap-3";
963
- const renderFeatureCards = (featureList) => /* @__PURE__ */ jsx6("div", {
1141
+ const renderFeatureCards = (featureList) => /* @__PURE__ */ jsx8("div", {
964
1142
  className: gridClasses,
965
- children: featureList.map((feature) => /* @__PURE__ */ jsx6(FeatureCard, {
1143
+ children: featureList.map((feature) => /* @__PURE__ */ jsx8(FeatureCard, {
966
1144
  feature,
967
1145
  onSelect: onSelectFeature
968
1146
  }, feature.meta.key))
969
1147
  });
970
- return /* @__PURE__ */ jsxs5(VStack2, {
1148
+ return /* @__PURE__ */ jsxs6(VStack3, {
971
1149
  gap: "lg",
972
- className: cn4("w-full p-6", className),
1150
+ className: cn5("w-full p-6", className),
973
1151
  children: [
974
- /* @__PURE__ */ jsxs5("div", {
1152
+ /* @__PURE__ */ jsxs6("div", {
975
1153
  className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
976
1154
  children: [
977
- /* @__PURE__ */ jsx6(PageHeaderResponsive, {
1155
+ /* @__PURE__ */ jsx8(PageHeaderResponsive, {
978
1156
  title: "Feature Discovery",
979
1157
  subtitle: `Browse ${features.length} available ContractSpec features`
980
1158
  }),
981
- /* @__PURE__ */ jsxs5(HStack5, {
1159
+ /* @__PURE__ */ jsxs6(HStack6, {
982
1160
  gap: "xs",
983
1161
  children: [
984
- /* @__PURE__ */ jsx6("button", {
1162
+ /* @__PURE__ */ jsx8("button", {
985
1163
  type: "button",
986
1164
  onClick: () => setViewMode("grid"),
987
- className: cn4("rounded-md p-2 transition-colors", viewMode === "grid" ? "bg-primary text-primary-foreground" : "bg-muted hover:bg-muted/80 text-muted-foreground"),
1165
+ className: cn5("rounded-md p-2 transition-colors", viewMode === "grid" ? "bg-primary text-primary-foreground" : "bg-muted text-muted-foreground hover:bg-muted/80"),
988
1166
  "aria-label": "Grid view",
989
- children: /* @__PURE__ */ jsx6(LayoutGrid, {
1167
+ children: /* @__PURE__ */ jsx8(LayoutGrid, {
990
1168
  className: "h-4 w-4"
991
1169
  })
992
1170
  }),
993
- /* @__PURE__ */ jsx6("button", {
1171
+ /* @__PURE__ */ jsx8("button", {
994
1172
  type: "button",
995
1173
  onClick: () => setViewMode("list"),
996
- className: cn4("rounded-md p-2 transition-colors", viewMode === "list" ? "bg-primary text-primary-foreground" : "bg-muted hover:bg-muted/80 text-muted-foreground"),
1174
+ className: cn5("rounded-md p-2 transition-colors", viewMode === "list" ? "bg-primary text-primary-foreground" : "bg-muted text-muted-foreground hover:bg-muted/80"),
997
1175
  "aria-label": "List view",
998
- children: /* @__PURE__ */ jsx6(List, {
1176
+ children: /* @__PURE__ */ jsx8(List, {
999
1177
  className: "h-4 w-4"
1000
1178
  })
1001
1179
  })
@@ -1003,7 +1181,7 @@ function FeatureDiscovery({
1003
1181
  })
1004
1182
  ]
1005
1183
  }),
1006
- /* @__PURE__ */ jsx6(FeatureFiltersBar, {
1184
+ /* @__PURE__ */ jsx8(FeatureFiltersBar, {
1007
1185
  uniqueTags,
1008
1186
  uniqueStabilities,
1009
1187
  filters,
@@ -1013,32 +1191,32 @@ function FeatureDiscovery({
1013
1191
  clearFilters,
1014
1192
  hasActiveFilters
1015
1193
  }),
1016
- filteredFeatures.length === 0 ? /* @__PURE__ */ jsx6(EmptyState, {
1194
+ filteredFeatures.length === 0 ? /* @__PURE__ */ jsx8(EmptyState, {
1017
1195
  title: "No features found",
1018
1196
  description: hasActiveFilters ? "Try adjusting your search or filters" : "No features are registered yet",
1019
- primaryAction: hasActiveFilters ? /* @__PURE__ */ jsx6(Button2, {
1197
+ primaryAction: hasActiveFilters ? /* @__PURE__ */ jsx8(Button2, {
1020
1198
  variant: "outline",
1021
1199
  onClick: clearFilters,
1022
1200
  children: "Clear filters"
1023
1201
  }) : undefined
1024
- }) : /* @__PURE__ */ jsxs5(VStack2, {
1202
+ }) : /* @__PURE__ */ jsxs6(VStack3, {
1025
1203
  gap: "lg",
1026
1204
  children: [
1027
- showFeatured && featuredFeatures.length > 0 && /* @__PURE__ */ jsxs5(VStack2, {
1205
+ showFeatured && featuredFeatures.length > 0 && /* @__PURE__ */ jsxs6(VStack3, {
1028
1206
  gap: "sm",
1029
1207
  children: [
1030
- /* @__PURE__ */ jsxs5(HStack5, {
1208
+ /* @__PURE__ */ jsxs6(HStack6, {
1031
1209
  gap: "sm",
1032
1210
  className: "items-center",
1033
1211
  children: [
1034
- /* @__PURE__ */ jsx6(Star, {
1212
+ /* @__PURE__ */ jsx8(Star, {
1035
1213
  className: "h-5 w-5 fill-amber-500 text-amber-500"
1036
1214
  }),
1037
- /* @__PURE__ */ jsx6("span", {
1038
- className: "text-lg font-semibold",
1215
+ /* @__PURE__ */ jsx8("span", {
1216
+ className: "font-semibold text-lg",
1039
1217
  children: "Featured"
1040
1218
  }),
1041
- /* @__PURE__ */ jsx6(StatusChip4, {
1219
+ /* @__PURE__ */ jsx8(StatusChip5, {
1042
1220
  tone: "success",
1043
1221
  label: `${featuredFeatures.length} stable`,
1044
1222
  size: "sm"
@@ -1048,12 +1226,12 @@ function FeatureDiscovery({
1048
1226
  renderFeatureCards(featuredFeatures)
1049
1227
  ]
1050
1228
  }),
1051
- groupedFeatures ? /* @__PURE__ */ jsx6(VStack2, {
1229
+ groupedFeatures ? /* @__PURE__ */ jsx8(VStack3, {
1052
1230
  gap: "md",
1053
- children: Object.entries(groupedFeatures).map(([group, groupFeatures]) => /* @__PURE__ */ jsxs5(VStack2, {
1231
+ children: Object.entries(groupedFeatures).map(([group, groupFeatures]) => /* @__PURE__ */ jsxs6(VStack3, {
1054
1232
  gap: "sm",
1055
1233
  children: [
1056
- /* @__PURE__ */ jsx6(FeatureCategoryHeader, {
1234
+ /* @__PURE__ */ jsx8(FeatureCategoryHeader, {
1057
1235
  title: group,
1058
1236
  count: groupFeatures.length,
1059
1237
  isCollapsed: collapsedGroups.has(group),
@@ -1068,184 +1246,6 @@ function FeatureDiscovery({
1068
1246
  ]
1069
1247
  });
1070
1248
  }
1071
- // src/presentation/features/organisms/FeatureDetail/FeatureDetail.tsx
1072
- import {
1073
- StatCard,
1074
- StatCardGroup,
1075
- StatusChip as StatusChip5
1076
- } from "@contractspec/lib.design-system";
1077
- import { Box, HStack as HStack6, VStack as VStack3 } from "@contractspec/lib.ui-kit-web/ui/stack";
1078
- import { cn as cn5 } from "@contractspec/lib.ui-kit-web/ui/utils";
1079
- import Link from "next/link";
1080
- import { jsx as jsx7, jsxs as jsxs6 } from "react/jsx-runtime";
1081
- "use client";
1082
- var stabilityTone2 = {
1083
- stable: "success",
1084
- beta: "warning",
1085
- experimental: "info",
1086
- deprecated: "danger"
1087
- };
1088
- function FeatureDetail({ feature, className }) {
1089
- const { meta, operations, events, presentations, capabilities } = feature;
1090
- const tone = stabilityTone2[meta.stability] ?? "neutral";
1091
- return /* @__PURE__ */ jsxs6(VStack3, {
1092
- gap: "lg",
1093
- className: cn5("w-full", className),
1094
- children: [
1095
- /* @__PURE__ */ jsxs6(HStack6, {
1096
- gap: "sm",
1097
- children: [
1098
- /* @__PURE__ */ jsx7(StatusChip5, {
1099
- tone,
1100
- label: meta.stability ?? "unknown"
1101
- }),
1102
- /* @__PURE__ */ jsx7(StatusChip5, {
1103
- tone: "neutral",
1104
- label: meta.key,
1105
- size: "sm"
1106
- }),
1107
- /* @__PURE__ */ jsx7(StatusChip5, {
1108
- tone: "neutral",
1109
- label: `v${meta.version}`,
1110
- size: "sm"
1111
- })
1112
- ]
1113
- }),
1114
- /* @__PURE__ */ jsxs6(StatCardGroup, {
1115
- children: [
1116
- /* @__PURE__ */ jsx7(Link, {
1117
- href: `./${feature.meta.key}/operations`,
1118
- children: /* @__PURE__ */ jsx7(StatCard, {
1119
- label: "Operations",
1120
- value: operations?.length ?? 0
1121
- })
1122
- }),
1123
- /* @__PURE__ */ jsx7(Link, {
1124
- href: `./${feature.meta.key}/events`,
1125
- children: /* @__PURE__ */ jsx7(StatCard, {
1126
- label: "Events",
1127
- value: events?.length ?? 0
1128
- })
1129
- }),
1130
- /* @__PURE__ */ jsx7(Link, {
1131
- href: `./${feature.meta.key}/presentations`,
1132
- children: /* @__PURE__ */ jsx7(StatCard, {
1133
- label: "Presentations",
1134
- value: presentations?.length ?? 0
1135
- })
1136
- })
1137
- ]
1138
- }),
1139
- capabilities?.provides?.length ? /* @__PURE__ */ jsxs6(Box, {
1140
- className: "flex-col rounded-lg border p-4",
1141
- gap: "sm",
1142
- align: "start",
1143
- children: [
1144
- /* @__PURE__ */ jsx7("span", {
1145
- className: "font-semibold",
1146
- children: "Provides Capabilities"
1147
- }),
1148
- /* @__PURE__ */ jsx7(HStack6, {
1149
- gap: "xs",
1150
- wrap: "wrap",
1151
- children: capabilities.provides.map((cap) => /* @__PURE__ */ jsx7(StatusChip5, {
1152
- tone: "success",
1153
- label: `${cap.key} v${cap.version}`,
1154
- size: "sm"
1155
- }, `${cap.key}-${cap.version}`))
1156
- })
1157
- ]
1158
- }) : null,
1159
- capabilities?.requires?.length ? /* @__PURE__ */ jsxs6(Box, {
1160
- className: "flex-col rounded-lg border p-4",
1161
- gap: "sm",
1162
- align: "start",
1163
- children: [
1164
- /* @__PURE__ */ jsx7("span", {
1165
- className: "font-semibold",
1166
- children: "Requires Capabilities"
1167
- }),
1168
- /* @__PURE__ */ jsx7(HStack6, {
1169
- gap: "xs",
1170
- wrap: "wrap",
1171
- children: capabilities.requires.map((req) => /* @__PURE__ */ jsx7(StatusChip5, {
1172
- tone: "info",
1173
- label: `${req.key}${req.version ? ` v${req.version}` : ""}${req.optional ? " (optional)" : ""}`,
1174
- size: "sm"
1175
- }, req.key))
1176
- })
1177
- ]
1178
- }) : null,
1179
- meta.tags?.length ? /* @__PURE__ */ jsxs6(Box, {
1180
- className: "flex-col rounded-lg border p-4",
1181
- gap: "sm",
1182
- align: "start",
1183
- children: [
1184
- /* @__PURE__ */ jsx7("span", {
1185
- className: "font-semibold",
1186
- children: "Tags"
1187
- }),
1188
- /* @__PURE__ */ jsx7(HStack6, {
1189
- gap: "xs",
1190
- wrap: "wrap",
1191
- children: meta.tags.map((tag) => /* @__PURE__ */ jsx7(StatusChip5, {
1192
- tone: "neutral",
1193
- label: `#${tag}`,
1194
- size: "sm"
1195
- }, tag))
1196
- })
1197
- ]
1198
- }) : null,
1199
- meta.owners?.length ? /* @__PURE__ */ jsxs6(Box, {
1200
- className: "flex-col rounded-lg border p-4",
1201
- gap: "sm",
1202
- align: "start",
1203
- children: [
1204
- /* @__PURE__ */ jsx7("span", {
1205
- className: "font-semibold",
1206
- children: "Owners"
1207
- }),
1208
- /* @__PURE__ */ jsx7(HStack6, {
1209
- gap: "xs",
1210
- wrap: "wrap",
1211
- children: meta.owners.map((owner) => /* @__PURE__ */ jsx7(StatusChip5, {
1212
- tone: "neutral",
1213
- label: owner,
1214
- size: "sm"
1215
- }, owner))
1216
- })
1217
- ]
1218
- }) : null
1219
- ]
1220
- });
1221
- }
1222
- // src/presentation/features/organisms/FeatureOperationsList.tsx
1223
- import { EntityCard as EntityCard2 } from "@contractspec/lib.design-system";
1224
- import { Zap as Zap3 } from "lucide-react";
1225
- import { jsx as jsx8 } from "react/jsx-runtime";
1226
- "use client";
1227
- function FeatureOperationsList({
1228
- feature
1229
- }) {
1230
- if (!feature.operations?.length)
1231
- return null;
1232
- return /* @__PURE__ */ jsx8("div", {
1233
- className: "grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",
1234
- children: feature.operations.map((op) => {
1235
- const spec = resolveSerializedOperationSpec(op.key, op.version);
1236
- return /* @__PURE__ */ jsx8(EntityCard2, {
1237
- cardTitle: op.key,
1238
- cardSubtitle: `v${op.version}`,
1239
- footer: spec?.meta.description,
1240
- icon: /* @__PURE__ */ jsx8(Zap3, {
1241
- className: "h-4 w-4"
1242
- }),
1243
- href: `/features/${feature.meta.key}/operations/${op.key}`
1244
- }, op.key);
1245
- })
1246
- });
1247
- }
1248
-
1249
1249
  // src/presentation/features/organisms/FeatureEventsList.tsx
1250
1250
  import { EntityCard as EntityCard3 } from "@contractspec/lib.design-system";
1251
1251
  import { Radio as Radio3 } from "lucide-react";
@@ -1271,81 +1271,81 @@ function FeatureEventsList({ feature }) {
1271
1271
  });
1272
1272
  }
1273
1273
 
1274
- // src/presentation/features/organisms/FeaturePresentationsList.tsx
1274
+ // src/presentation/features/organisms/FeatureFormsList.tsx
1275
1275
  import { EntityCard as EntityCard4 } from "@contractspec/lib.design-system";
1276
- import { Layout as Layout4 } from "lucide-react";
1276
+ import { FormInput } from "lucide-react";
1277
1277
  import { jsx as jsx10 } from "react/jsx-runtime";
1278
1278
  "use client";
1279
- function FeaturePresentationsList({
1280
- feature
1281
- }) {
1282
- if (!feature.presentations?.length)
1279
+ function FeatureFormsList({ feature }) {
1280
+ if (!feature.forms?.length)
1283
1281
  return null;
1284
1282
  return /* @__PURE__ */ jsx10("div", {
1285
1283
  className: "grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",
1286
- children: feature.presentations.map((pres) => {
1287
- const spec = resolveSerializedPresentationSpec(pres.key, pres.version);
1284
+ children: feature.forms.map((form) => {
1285
+ const spec = resolveSerializedFormSpec(form.key, form.version);
1288
1286
  return /* @__PURE__ */ jsx10(EntityCard4, {
1289
- cardTitle: pres.key,
1290
- cardSubtitle: `v${pres.version}`,
1287
+ cardTitle: form.key,
1288
+ cardSubtitle: form.version ? `v${form.version}` : undefined,
1291
1289
  footer: spec?.meta.description,
1292
- icon: /* @__PURE__ */ jsx10(Layout4, {
1290
+ icon: /* @__PURE__ */ jsx10(FormInput, {
1293
1291
  className: "h-4 w-4"
1294
1292
  }),
1295
- href: `/features/${feature.meta.key}/presentations/${pres.key}`
1296
- }, pres.key);
1293
+ href: `/features/${feature.meta.key}/forms/${form.key}`
1294
+ }, form.key);
1297
1295
  })
1298
1296
  });
1299
1297
  }
1300
1298
 
1301
- // src/presentation/features/organisms/FeatureDataViewsList.tsx
1299
+ // src/presentation/features/organisms/FeatureOperationsList.tsx
1302
1300
  import { EntityCard as EntityCard5 } from "@contractspec/lib.design-system";
1303
- import { Table } from "lucide-react";
1301
+ import { Zap as Zap3 } from "lucide-react";
1304
1302
  import { jsx as jsx11 } from "react/jsx-runtime";
1305
1303
  "use client";
1306
- function FeatureDataViewsList({
1304
+ function FeatureOperationsList({
1307
1305
  feature
1308
1306
  }) {
1309
- if (!feature.dataViews?.length)
1307
+ if (!feature.operations?.length)
1310
1308
  return null;
1311
1309
  return /* @__PURE__ */ jsx11("div", {
1312
1310
  className: "grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",
1313
- children: feature.dataViews.map((view) => {
1314
- const spec = resolveSerializedDataViewSpec(view.key, view.version);
1311
+ children: feature.operations.map((op) => {
1312
+ const spec = resolveSerializedOperationSpec(op.key, op.version);
1315
1313
  return /* @__PURE__ */ jsx11(EntityCard5, {
1316
- cardTitle: view.key,
1317
- cardSubtitle: `v${view.version}`,
1314
+ cardTitle: op.key,
1315
+ cardSubtitle: `v${op.version}`,
1318
1316
  footer: spec?.meta.description,
1319
- icon: /* @__PURE__ */ jsx11(Table, {
1317
+ icon: /* @__PURE__ */ jsx11(Zap3, {
1320
1318
  className: "h-4 w-4"
1321
1319
  }),
1322
- href: `/features/${feature.meta.key}/dataviews/${view.key}`
1323
- }, view.key);
1320
+ href: `/features/${feature.meta.key}/operations/${op.key}`
1321
+ }, op.key);
1324
1322
  })
1325
1323
  });
1326
1324
  }
1327
1325
 
1328
- // src/presentation/features/organisms/FeatureFormsList.tsx
1326
+ // src/presentation/features/organisms/FeaturePresentationsList.tsx
1329
1327
  import { EntityCard as EntityCard6 } from "@contractspec/lib.design-system";
1330
- import { FormInput } from "lucide-react";
1328
+ import { Layout as Layout4 } from "lucide-react";
1331
1329
  import { jsx as jsx12 } from "react/jsx-runtime";
1332
1330
  "use client";
1333
- function FeatureFormsList({ feature }) {
1334
- if (!feature.forms?.length)
1331
+ function FeaturePresentationsList({
1332
+ feature
1333
+ }) {
1334
+ if (!feature.presentations?.length)
1335
1335
  return null;
1336
1336
  return /* @__PURE__ */ jsx12("div", {
1337
1337
  className: "grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",
1338
- children: feature.forms.map((form) => {
1339
- const spec = resolveSerializedFormSpec(form.key, form.version);
1338
+ children: feature.presentations.map((pres) => {
1339
+ const spec = resolveSerializedPresentationSpec(pres.key, pres.version);
1340
1340
  return /* @__PURE__ */ jsx12(EntityCard6, {
1341
- cardTitle: form.key,
1342
- cardSubtitle: form.version ? `v${form.version}` : undefined,
1341
+ cardTitle: pres.key,
1342
+ cardSubtitle: `v${pres.version}`,
1343
1343
  footer: spec?.meta.description,
1344
- icon: /* @__PURE__ */ jsx12(FormInput, {
1344
+ icon: /* @__PURE__ */ jsx12(Layout4, {
1345
1345
  className: "h-4 w-4"
1346
1346
  }),
1347
- href: `/features/${feature.meta.key}/forms/${form.key}`
1348
- }, form.key);
1347
+ href: `/features/${feature.meta.key}/presentations/${pres.key}`
1348
+ }, pres.key);
1349
1349
  })
1350
1350
  });
1351
1351
  }