@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
@@ -5,31 +5,31 @@ import type { FeatureModuleSpec } from '@contractspec/lib.contracts-spec/feature
5
5
  * Provides cross-platform rendering of contract-driven UI.
6
6
  */
7
7
  export const PresentationsFeature: FeatureModuleSpec = {
8
- meta: {
9
- key: 'contractspec.presentations',
10
- version: '1.0.0',
11
- title: 'Presentation Runtime',
12
- description: 'Cross-platform rendering of contract-driven UI',
13
- domain: 'platform',
14
- owners: ['@platform.presentations'],
15
- tags: ['presentations', 'ui', 'rendering', 'cross-platform'],
16
- stability: 'beta',
17
- },
18
- operations: [
19
- { key: 'presentation.render', version: '1.0.0' },
20
- { key: 'presentation.transform', version: '1.0.0' },
21
- ],
22
- events: [
23
- { key: 'presentation.rendered', version: '1.0.0' },
24
- { key: 'presentation.transformed', version: '1.0.0' },
25
- ],
26
- presentations: [
27
- { key: 'form.standard', version: '1.0.0' },
28
- { key: 'list.standard', version: '1.0.0' },
29
- { key: 'detail.standard', version: '1.0.0' },
30
- ],
31
- capabilities: {
32
- provides: [{ key: 'contracts.presentations', version: '1.0.0' }],
33
- requires: [],
34
- },
8
+ meta: {
9
+ key: 'contractspec.presentations',
10
+ version: '1.0.0',
11
+ title: 'Presentation Runtime',
12
+ description: 'Cross-platform rendering of contract-driven UI',
13
+ domain: 'platform',
14
+ owners: ['@platform.presentations'],
15
+ tags: ['presentations', 'ui', 'rendering', 'cross-platform'],
16
+ stability: 'beta',
17
+ },
18
+ operations: [
19
+ { key: 'presentation.render', version: '1.0.0' },
20
+ { key: 'presentation.transform', version: '1.0.0' },
21
+ ],
22
+ events: [
23
+ { key: 'presentation.rendered', version: '1.0.0' },
24
+ { key: 'presentation.transformed', version: '1.0.0' },
25
+ ],
26
+ presentations: [
27
+ { key: 'form.standard', version: '1.0.0' },
28
+ { key: 'list.standard', version: '1.0.0' },
29
+ { key: 'detail.standard', version: '1.0.0' },
30
+ ],
31
+ capabilities: {
32
+ provides: [{ key: 'contracts.presentations', version: '1.0.0' }],
33
+ requires: [],
34
+ },
35
35
  };
@@ -1,5 +1,5 @@
1
- import { FeatureRegistry } from '@contractspec/lib.contracts-spec/features';
2
1
  import { AppConfigFeature } from '@contractspec/lib.contracts-spec/app-config';
2
+ import { FeatureRegistry } from '@contractspec/lib.contracts-spec/features';
3
3
  import { DocsFeature } from './docs.feature';
4
4
  import { MCPFeature } from './mcp.feature';
5
5
  import { PresentationsFeature } from './presentations.feature';
@@ -9,17 +9,17 @@ import { PresentationsFeature } from './presentations.feature';
9
9
  * Registers all ContractSpec features without validation (ops/presentations not registered).
10
10
  */
11
11
  export function createContractSpecFeatureRegistry(): FeatureRegistry {
12
- const features = new FeatureRegistry();
12
+ const features = new FeatureRegistry();
13
13
 
14
- // Register ContractSpec-specific features
15
- features.register(DocsFeature);
16
- features.register(MCPFeature);
17
- features.register(PresentationsFeature);
14
+ // Register ContractSpec-specific features
15
+ features.register(DocsFeature);
16
+ features.register(MCPFeature);
17
+ features.register(PresentationsFeature);
18
18
 
19
- // Register lib.contracts features
20
- features.register(AppConfigFeature);
19
+ // Register lib.contracts features
20
+ features.register(AppConfigFeature);
21
21
 
22
- return features;
22
+ return features;
23
23
  }
24
24
 
25
25
  /** Singleton instance of the feature registry. */
@@ -30,15 +30,15 @@ let registryInstance: FeatureRegistry | null = null;
30
30
  * Creates the registry on first call, returns cached instance thereafter.
31
31
  */
32
32
  export function getContractSpecFeatureRegistry(): FeatureRegistry {
33
- if (!registryInstance) {
34
- registryInstance = createContractSpecFeatureRegistry();
35
- }
36
- return registryInstance;
33
+ if (!registryInstance) {
34
+ registryInstance = createContractSpecFeatureRegistry();
35
+ }
36
+ return registryInstance;
37
37
  }
38
38
 
39
39
  /**
40
40
  * Reset the feature registry singleton (for testing).
41
41
  */
42
42
  export function resetContractSpecFeatureRegistry(): void {
43
- registryInstance = null;
43
+ registryInstance = null;
44
44
  }
package/src/index.ts CHANGED
@@ -1,9 +1,9 @@
1
+ export * from './components/docs';
1
2
  export * from './components/integrations';
3
+ export * from './components/legal';
2
4
  export * from './components/shared';
3
5
  export * from './components/shell';
4
6
  export * from './components/templates';
5
- export * from './components/docs';
6
- export * from './components/legal';
7
7
 
8
8
  // App config and features
9
9
  export * from './config';
@@ -2,37 +2,37 @@ import { Logger, LogLevel } from '@contractspec/lib.logger';
2
2
 
3
3
  // Centralized logger configuration for the API
4
4
  export const createAppLogger = () =>
5
- new Logger({
6
- level:
7
- process.env.NODE_ENV === 'production' ? LogLevel.INFO : LogLevel.DEBUG,
8
- environment: process.env.NODE_ENV || 'development',
9
- enableTracing: true,
10
- enableTiming: true,
11
- enableContext: true,
12
- enableColors: process.env.NODE_ENV !== 'production',
13
- });
5
+ new Logger({
6
+ level:
7
+ process.env.NODE_ENV === 'production' ? LogLevel.INFO : LogLevel.DEBUG,
8
+ environment: process.env.NODE_ENV || 'development',
9
+ enableTracing: true,
10
+ enableTiming: true,
11
+ enableContext: true,
12
+ enableColors: process.env.NODE_ENV !== 'production',
13
+ });
14
14
 
15
15
  // Default logger instance for the application
16
16
  export const appLogger = createAppLogger();
17
17
 
18
18
  // Logger specifically for database operations
19
19
  export const dbLogger = new Logger({
20
- level: process.env.NODE_ENV === 'production' ? LogLevel.WARN : LogLevel.DEBUG,
21
- environment: process.env.NODE_ENV || 'development',
22
- enableTracing: true,
23
- enableTiming: true,
24
- enableContext: true,
25
- enableColors: process.env.NODE_ENV !== 'production',
20
+ level: process.env.NODE_ENV === 'production' ? LogLevel.WARN : LogLevel.DEBUG,
21
+ environment: process.env.NODE_ENV || 'development',
22
+ enableTracing: true,
23
+ enableTiming: true,
24
+ enableContext: true,
25
+ enableColors: process.env.NODE_ENV !== 'production',
26
26
  });
27
27
 
28
28
  // Logger for authentication operations
29
29
  export const authLogger = new Logger({
30
- level: LogLevel.INFO, // Always log auth events
31
- environment: process.env.NODE_ENV || 'development',
32
- enableTracing: true,
33
- enableTiming: true,
34
- enableContext: true,
35
- enableColors: process.env.NODE_ENV !== 'production',
30
+ level: LogLevel.INFO, // Always log auth events
31
+ environment: process.env.NODE_ENV || 'development',
32
+ enableTracing: true,
33
+ enableTiming: true,
34
+ enableContext: true,
35
+ enableColors: process.env.NODE_ENV !== 'production',
36
36
  });
37
37
 
38
38
  export { Logger, LogLevel };
@@ -5,103 +5,103 @@ import { beforeEach, describe, expect, it } from 'bun:test';
5
5
  import { __internal, getEmailConfig, sendEmail } from './client';
6
6
 
7
7
  const ENV_KEYS = [
8
- 'SCALEWAY_ACCESS_KEY',
9
- 'SCALEWAY_SECRET_KEY',
10
- 'SCALEWAY_PROJECT_ID',
11
- 'SCALEWAY_ACCESS_KEY_QUEUE',
12
- 'SCALEWAY_SECRET_KEY_QUEUE',
13
- 'SCALEWAY_REGION',
14
- 'SCALEWAY_EMAIL_FROM_EMAIL',
15
- 'SCALEWAY_EMAIL_FROM_NAME',
16
- 'SCALEWAY_EMAIL_TEAM_EMAIL',
17
- 'SCALEWAY_EMAIL_TEAM_NAME',
8
+ 'SCALEWAY_ACCESS_KEY',
9
+ 'SCALEWAY_SECRET_KEY',
10
+ 'SCALEWAY_PROJECT_ID',
11
+ 'SCALEWAY_ACCESS_KEY_QUEUE',
12
+ 'SCALEWAY_SECRET_KEY_QUEUE',
13
+ 'SCALEWAY_REGION',
14
+ 'SCALEWAY_EMAIL_FROM_EMAIL',
15
+ 'SCALEWAY_EMAIL_FROM_NAME',
16
+ 'SCALEWAY_EMAIL_TEAM_EMAIL',
17
+ 'SCALEWAY_EMAIL_TEAM_NAME',
18
18
  ];
19
19
 
20
20
  const clearEnv = () => {
21
- ENV_KEYS.forEach((key) => {
22
- // eslint-disable-next-line @typescript-eslint/no-dynamic-delete -- Pragmatic use for environment cleanup in tests
23
- delete process.env[key];
24
- });
21
+ ENV_KEYS.forEach((key) => {
22
+ // eslint-disable-next-line @typescript-eslint/no-dynamic-delete -- Pragmatic use for environment cleanup in tests
23
+ delete process.env[key];
24
+ });
25
25
  };
26
26
 
27
27
  const setEnv = (values: Partial<Record<string, string>>) => {
28
- Object.entries(values).forEach(([key, value]) => {
29
- process.env[key] = value;
30
- });
28
+ Object.entries(values).forEach(([key, value]) => {
29
+ process.env[key] = value;
30
+ });
31
31
  };
32
32
 
33
33
  describe('email client config', () => {
34
- beforeEach(() => {
35
- __internal.resetCaches();
36
- clearEnv();
37
- });
34
+ beforeEach(() => {
35
+ __internal.resetCaches();
36
+ clearEnv();
37
+ });
38
38
 
39
- it('returns a failure result when credentials are missing', () => {
40
- const result = getEmailConfig();
41
- expect(result.ok).toBeFalse();
42
- expect(result.config).toBeUndefined();
43
- });
39
+ it('returns a failure result when credentials are missing', () => {
40
+ const result = getEmailConfig();
41
+ expect(result.ok).toBeFalse();
42
+ expect(result.config).toBeUndefined();
43
+ });
44
44
 
45
- it('prefers Scaleway env variables for config and region mapping', () => {
46
- setEnv({
47
- SCALEWAY_ACCESS_KEY: 'access',
48
- SCALEWAY_SECRET_KEY: 'secret',
49
- SCALEWAY_PROJECT_ID: 'project-123',
50
- SCALEWAY_EMAIL_FROM_EMAIL: 'from@example.com',
51
- SCALEWAY_EMAIL_FROM_NAME: 'From Name',
52
- SCALEWAY_EMAIL_TEAM_EMAIL: 'team@example.com',
53
- SCALEWAY_EMAIL_TEAM_NAME: 'Team Name',
54
- });
45
+ it('prefers Scaleway env variables for config and region mapping', () => {
46
+ setEnv({
47
+ SCALEWAY_ACCESS_KEY: 'access',
48
+ SCALEWAY_SECRET_KEY: 'secret',
49
+ SCALEWAY_PROJECT_ID: 'project-123',
50
+ SCALEWAY_EMAIL_FROM_EMAIL: 'from@example.com',
51
+ SCALEWAY_EMAIL_FROM_NAME: 'From Name',
52
+ SCALEWAY_EMAIL_TEAM_EMAIL: 'team@example.com',
53
+ SCALEWAY_EMAIL_TEAM_NAME: 'Team Name',
54
+ });
55
55
 
56
- const result = getEmailConfig();
57
- expect(result.ok).toBeTrue();
58
- expect(result.config?.accessKey).toBe('access');
59
- expect(result.config?.secretKey).toBe('secret');
60
- expect(result.config?.projectId).toBe('project-123');
61
- expect(result.config?.region).toBe('fr-par');
62
- expect(result.config?.from.email).toBe('from@example.com');
63
- expect(result.config?.from.name).toBe('From Name');
64
- expect(result.config?.teamInbox.email).toBe('team@example.com');
65
- expect(result.config?.teamInbox.name).toBe('Team Name');
66
- });
56
+ const result = getEmailConfig();
57
+ expect(result.ok).toBeTrue();
58
+ expect(result.config?.accessKey).toBe('access');
59
+ expect(result.config?.secretKey).toBe('secret');
60
+ expect(result.config?.projectId).toBe('project-123');
61
+ expect(result.config?.region).toBe('fr-par');
62
+ expect(result.config?.from.email).toBe('from@example.com');
63
+ expect(result.config?.from.name).toBe('From Name');
64
+ expect(result.config?.teamInbox.email).toBe('team@example.com');
65
+ expect(result.config?.teamInbox.name).toBe('Team Name');
66
+ });
67
67
 
68
- it('uses provided API factory to send email with reply-to header', async () => {
69
- setEnv({
70
- SCALEWAY_ACCESS_KEY: 'access',
71
- SCALEWAY_SECRET_KEY: 'secret',
72
- SCALEWAY_PROJECT_ID: 'project-123',
73
- });
68
+ it('uses provided API factory to send email with reply-to header', async () => {
69
+ setEnv({
70
+ SCALEWAY_ACCESS_KEY: 'access',
71
+ SCALEWAY_SECRET_KEY: 'secret',
72
+ SCALEWAY_PROJECT_ID: 'project-123',
73
+ });
74
74
 
75
- let captured: unknown = null;
75
+ let captured: unknown = null;
76
76
 
77
- __internal.setClient({
78
- async createEmail(request: unknown) {
79
- captured = request;
80
- return { emails: [] };
81
- },
82
- });
77
+ __internal.setClient({
78
+ async createEmail(request: unknown) {
79
+ captured = request;
80
+ return { emails: [] };
81
+ },
82
+ });
83
83
 
84
- const config = getEmailConfig().config!;
84
+ const config = getEmailConfig().config!;
85
85
 
86
- const response = await sendEmail(config, {
87
- to: [{ email: 'user@example.com' }],
88
- subject: 'Subject',
89
- text: 'Plain text',
90
- html: '<p>html</p>',
91
- replyTo: 'reply@example.com',
92
- context: 'test',
93
- });
86
+ const response = await sendEmail(config, {
87
+ to: [{ email: 'user@example.com' }],
88
+ subject: 'Subject',
89
+ text: 'Plain text',
90
+ html: '<p>html</p>',
91
+ replyTo: 'reply@example.com',
92
+ context: 'test',
93
+ });
94
94
 
95
- expect(response.success).toBeTrue();
96
- const createEmailRequest = captured as Record<string, unknown>;
97
- expect(createEmailRequest.region).toBe(config.region);
98
- expect(createEmailRequest.projectId).toBe(config.projectId);
99
- expect(createEmailRequest.from).toStrictEqual(config.from);
100
- expect(createEmailRequest.to).toStrictEqual([
101
- { email: 'user@example.com' },
102
- ]);
103
- expect(createEmailRequest.additionalHeaders).toStrictEqual([
104
- { key: 'Reply-To', value: 'reply@example.com' },
105
- ]);
106
- });
95
+ expect(response.success).toBeTrue();
96
+ const createEmailRequest = captured as Record<string, unknown>;
97
+ expect(createEmailRequest.region).toBe(config.region);
98
+ expect(createEmailRequest.projectId).toBe(config.projectId);
99
+ expect(createEmailRequest.from).toStrictEqual(config.from);
100
+ expect(createEmailRequest.to).toStrictEqual([
101
+ { email: 'user@example.com' },
102
+ ]);
103
+ expect(createEmailRequest.additionalHeaders).toStrictEqual([
104
+ { key: 'Reply-To', value: 'reply@example.com' },
105
+ ]);
106
+ });
107
107
  });
@@ -1,22 +1,22 @@
1
+ import { Logger } from '@contractspec/lib.logger';
1
2
  import { createClient, Temv1alpha1 } from '@scaleway/sdk';
2
3
  import type { Region } from '@scaleway/sdk-client';
3
- import { Logger } from '@contractspec/lib.logger';
4
4
  import type {
5
- EmailAddress,
6
- EmailConfigResult,
7
- EmailSendOutcome,
8
- EmailServiceConfig,
9
- SendEmailRequest,
5
+ EmailAddress,
6
+ EmailConfigResult,
7
+ EmailSendOutcome,
8
+ EmailServiceConfig,
9
+ SendEmailRequest,
10
10
  } from './types';
11
11
 
12
12
  const DEFAULT_FROM: EmailAddress = {
13
- email: 'noreply@transactional.contractspec.io',
14
- name: 'ContractSpec',
13
+ email: 'noreply@transactional.contractspec.io',
14
+ name: 'ContractSpec',
15
15
  };
16
16
 
17
17
  const DEFAULT_TEAM_INBOX: EmailAddress = {
18
- email: 'contact@contractspec.io',
19
- name: 'ContractSpec Team',
18
+ email: 'contact@contractspec.io',
19
+ name: 'ContractSpec Team',
20
20
  };
21
21
 
22
22
  const DEFAULT_REGION: Region = 'fr-par';
@@ -26,121 +26,121 @@ type EmailApi = Pick<Temv1alpha1.API, 'createEmail'>;
26
26
  let cachedConfig: EmailServiceConfig | null = null;
27
27
  let cachedClient: EmailApi | null = null;
28
28
  let apiFactory: (client: ReturnType<typeof createClient>) => EmailApi = (
29
- client
29
+ client
30
30
  ) => new Temv1alpha1.API(client);
31
31
 
32
32
  const mapRegion = (value?: string | null): Region => {
33
- const normalized = value?.trim().toLowerCase();
34
- if (normalized === 'par' || normalized === 'fr-par') return 'fr-par';
35
- if (normalized === 'ams' || normalized === 'nl-ams') return 'nl-ams';
36
- if (normalized === 'waw' || normalized === 'pl-waw') return 'pl-waw';
37
- return DEFAULT_REGION;
33
+ const normalized = value?.trim().toLowerCase();
34
+ if (normalized === 'par' || normalized === 'fr-par') return 'fr-par';
35
+ if (normalized === 'ams' || normalized === 'nl-ams') return 'nl-ams';
36
+ if (normalized === 'waw' || normalized === 'pl-waw') return 'pl-waw';
37
+ return DEFAULT_REGION;
38
38
  };
39
39
 
40
40
  export const getEmailConfig = (): EmailConfigResult => {
41
- if (cachedConfig) {
42
- return { ok: true, config: cachedConfig };
43
- }
44
-
45
- const accessKey =
46
- process.env.SCALEWAY_ACCESS_KEY || process.env.SCALEWAY_ACCESS_KEY_QUEUE;
47
- const secretKey =
48
- process.env.SCALEWAY_SECRET_KEY || process.env.SCALEWAY_SECRET_KEY_QUEUE;
49
- const projectId = process.env.SCALEWAY_PROJECT_ID;
50
-
51
- if (!accessKey || !secretKey || !projectId) {
52
- return {
53
- ok: false,
54
- errorMessage:
55
- 'Email service is not configured. Please contact us directly at contact@contractspec.io.',
56
- };
57
- }
58
-
59
- const region = mapRegion(process.env.SCALEWAY_REGION);
60
-
61
- cachedConfig = {
62
- accessKey,
63
- secretKey,
64
- projectId,
65
- region,
66
- defaultZone: `${region}-1`,
67
- from: {
68
- email: process.env.SCALEWAY_EMAIL_FROM_EMAIL ?? DEFAULT_FROM.email,
69
- name: process.env.SCALEWAY_EMAIL_FROM_NAME ?? DEFAULT_FROM.name,
70
- },
71
- teamInbox: {
72
- email: process.env.SCALEWAY_EMAIL_TEAM_EMAIL ?? DEFAULT_TEAM_INBOX.email,
73
- name: process.env.SCALEWAY_EMAIL_TEAM_NAME ?? DEFAULT_TEAM_INBOX.name,
74
- },
75
- };
76
-
77
- return { ok: true, config: cachedConfig };
41
+ if (cachedConfig) {
42
+ return { ok: true, config: cachedConfig };
43
+ }
44
+
45
+ const accessKey =
46
+ process.env.SCALEWAY_ACCESS_KEY || process.env.SCALEWAY_ACCESS_KEY_QUEUE;
47
+ const secretKey =
48
+ process.env.SCALEWAY_SECRET_KEY || process.env.SCALEWAY_SECRET_KEY_QUEUE;
49
+ const projectId = process.env.SCALEWAY_PROJECT_ID;
50
+
51
+ if (!accessKey || !secretKey || !projectId) {
52
+ return {
53
+ ok: false,
54
+ errorMessage:
55
+ 'Email service is not configured. Please contact us directly at contact@contractspec.io.',
56
+ };
57
+ }
58
+
59
+ const region = mapRegion(process.env.SCALEWAY_REGION);
60
+
61
+ cachedConfig = {
62
+ accessKey,
63
+ secretKey,
64
+ projectId,
65
+ region,
66
+ defaultZone: `${region}-1`,
67
+ from: {
68
+ email: process.env.SCALEWAY_EMAIL_FROM_EMAIL ?? DEFAULT_FROM.email,
69
+ name: process.env.SCALEWAY_EMAIL_FROM_NAME ?? DEFAULT_FROM.name,
70
+ },
71
+ teamInbox: {
72
+ email: process.env.SCALEWAY_EMAIL_TEAM_EMAIL ?? DEFAULT_TEAM_INBOX.email,
73
+ name: process.env.SCALEWAY_EMAIL_TEAM_NAME ?? DEFAULT_TEAM_INBOX.name,
74
+ },
75
+ };
76
+
77
+ return { ok: true, config: cachedConfig };
78
78
  };
79
79
 
80
80
  const getTemClient = (config: EmailServiceConfig): EmailApi => {
81
- if (cachedClient) {
82
- return cachedClient;
83
- }
84
-
85
- const client = createClient({
86
- accessKey: config.accessKey,
87
- secretKey: config.secretKey,
88
- defaultProjectId: config.projectId,
89
- defaultRegion: config.region,
90
- defaultZone: config.defaultZone,
91
- });
92
-
93
- cachedClient = apiFactory(client);
94
- return cachedClient;
81
+ if (cachedClient) {
82
+ return cachedClient;
83
+ }
84
+
85
+ const client = createClient({
86
+ accessKey: config.accessKey,
87
+ secretKey: config.secretKey,
88
+ defaultProjectId: config.projectId,
89
+ defaultRegion: config.region,
90
+ defaultZone: config.defaultZone,
91
+ });
92
+
93
+ cachedClient = apiFactory(client);
94
+ return cachedClient;
95
95
  };
96
96
 
97
97
  export const sendEmail = async (
98
- config: EmailServiceConfig,
99
- request: SendEmailRequest
98
+ config: EmailServiceConfig,
99
+ request: SendEmailRequest
100
100
  ): Promise<EmailSendOutcome> => {
101
- try {
102
- const client = getTemClient(config);
103
-
104
- await client.createEmail({
105
- region: config.region,
106
- projectId: config.projectId,
107
- from: config.from,
108
- to: request.to,
109
- subject: request.subject,
110
- text: request.text,
111
- html: request.html || request.text,
112
- additionalHeaders: request.replyTo
113
- ? [{ key: 'Reply-To', value: request.replyTo }]
114
- : undefined,
115
- });
116
-
117
- return { success: true };
118
- } catch (error) {
119
- new Logger().error('scaleway_tem_email_send_failed', {
120
- context: request.context ?? 'email',
121
- error: error instanceof Error ? error.message : error,
122
- });
123
- return {
124
- success: false,
125
- error,
126
- errorMessage: 'Failed to send email via Scaleway.',
127
- };
128
- }
101
+ try {
102
+ const client = getTemClient(config);
103
+
104
+ await client.createEmail({
105
+ region: config.region,
106
+ projectId: config.projectId,
107
+ from: config.from,
108
+ to: request.to,
109
+ subject: request.subject,
110
+ text: request.text,
111
+ html: request.html || request.text,
112
+ additionalHeaders: request.replyTo
113
+ ? [{ key: 'Reply-To', value: request.replyTo }]
114
+ : undefined,
115
+ });
116
+
117
+ return { success: true };
118
+ } catch (error) {
119
+ new Logger().error('scaleway_tem_email_send_failed', {
120
+ context: request.context ?? 'email',
121
+ error: error instanceof Error ? error.message : error,
122
+ });
123
+ return {
124
+ success: false,
125
+ error,
126
+ errorMessage: 'Failed to send email via Scaleway.',
127
+ };
128
+ }
129
129
  };
130
130
 
131
131
  export const __internal = {
132
- resetCaches() {
133
- cachedClient = null;
134
- cachedConfig = null;
135
- apiFactory = (client: ReturnType<typeof createClient>) =>
136
- new Temv1alpha1.API(client);
137
- },
138
- setApiFactory(
139
- factory: (client: ReturnType<typeof createClient>) => EmailApi
140
- ) {
141
- apiFactory = factory;
142
- },
143
- setClient(client: EmailApi) {
144
- cachedClient = client;
145
- },
132
+ resetCaches() {
133
+ cachedClient = null;
134
+ cachedConfig = null;
135
+ apiFactory = (client: ReturnType<typeof createClient>) =>
136
+ new Temv1alpha1.API(client);
137
+ },
138
+ setApiFactory(
139
+ factory: (client: ReturnType<typeof createClient>) => EmailApi
140
+ ) {
141
+ apiFactory = factory;
142
+ },
143
+ setClient(client: EmailApi) {
144
+ cachedClient = client;
145
+ },
146
146
  };