@contractspec/bundle.library 3.7.6 → 3.8.2

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