@contractspec/bundle.library 3.4.3 → 3.5.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 (556) hide show
  1. package/.turbo/turbo-build.log +494 -488
  2. package/CHANGELOG.md +91 -0
  3. package/dist/application/index.js +8 -8
  4. package/dist/application/mcp/cliMcp.js +8 -8
  5. package/dist/application/mcp/contractsMcp.js +8 -8
  6. package/dist/application/mcp/docsMcp.js +8 -8
  7. package/dist/application/mcp/index.js +8 -8
  8. package/dist/application/mcp/internalMcp.js +8 -8
  9. package/dist/application/mcp/providerRankingMcp.js +8 -8
  10. package/dist/bundles/LibraryBundle.d.ts +126 -0
  11. package/dist/bundles/LibraryBundle.js +139 -0
  12. package/dist/bundles/index.d.ts +1 -0
  13. package/dist/bundles/index.js +139 -0
  14. package/dist/components/docs/DocsIndexPage.js +91 -91
  15. package/dist/components/docs/advanced/AdvancedMCPPage.js +125 -125
  16. package/dist/components/docs/advanced/AdvancedOverlayEditorPage.js +49 -49
  17. package/dist/components/docs/advanced/AdvancedRenderersPage.js +51 -51
  18. package/dist/components/docs/advanced/AdvancedSpecExperimentsPage.js +35 -35
  19. package/dist/components/docs/advanced/AdvancedTelemetryPage.js +177 -177
  20. package/dist/components/docs/advanced/AdvancedWorkflowMonitoringPage.js +45 -45
  21. package/dist/components/docs/advanced/index.js +482 -482
  22. package/dist/components/docs/architecture/ArchitectureAppConfigPage.js +107 -107
  23. package/dist/components/docs/architecture/ArchitectureControlPlanePage.js +73 -73
  24. package/dist/components/docs/architecture/ArchitectureIntegrationBindingPage.js +117 -117
  25. package/dist/components/docs/architecture/ArchitectureKnowledgeBindingPage.js +175 -175
  26. package/dist/components/docs/architecture/ArchitectureMultiTenancyPage.js +71 -71
  27. package/dist/components/docs/architecture/ArchitectureOverviewPage.js +205 -205
  28. package/dist/components/docs/architecture/index.js +748 -748
  29. package/dist/components/docs/comparison/ComparisonAutomationPlatformsPage.js +117 -117
  30. package/dist/components/docs/comparison/ComparisonEnterprisePlatformsPage.js +111 -111
  31. package/dist/components/docs/comparison/ComparisonInternalToolBuildersPage.js +117 -117
  32. package/dist/components/docs/comparison/ComparisonOverviewPage.js +97 -97
  33. package/dist/components/docs/comparison/ComparisonWindmillPage.js +125 -125
  34. package/dist/components/docs/comparison/ComparisonWorkflowEnginesPage.js +171 -171
  35. package/dist/components/docs/comparison/index.js +738 -738
  36. package/dist/components/docs/ecosystem/IntegrationsPage.js +45 -45
  37. package/dist/components/docs/ecosystem/PluginsPage.js +73 -73
  38. package/dist/components/docs/ecosystem/RegistryPage.js +37 -37
  39. package/dist/components/docs/ecosystem/TemplatesPage.js +56 -56
  40. package/dist/components/docs/ecosystem/index.js +211 -211
  41. package/dist/components/docs/examples/DocsExamplesPage.js +21 -21
  42. package/dist/components/docs/examples/index.js +21 -21
  43. package/dist/components/docs/generated/docs-index.generated.d.ts +6 -6
  44. package/dist/components/docs/getting-started/CLIPage.js +95 -95
  45. package/dist/components/docs/getting-started/CompatibilityPage.js +81 -81
  46. package/dist/components/docs/getting-started/DataViewTutorialPage.js +57 -57
  47. package/dist/components/docs/getting-started/DeveloperToolsPage.js +61 -61
  48. package/dist/components/docs/getting-started/HelloWorldPage.js +77 -77
  49. package/dist/components/docs/getting-started/InstallationPage.js +65 -65
  50. package/dist/components/docs/getting-started/StartHerePage.js +51 -51
  51. package/dist/components/docs/getting-started/TroubleshootingPage.js +73 -73
  52. package/dist/components/docs/getting-started/VSCodeExtensionPage.js +171 -171
  53. package/dist/components/docs/getting-started/index.js +731 -731
  54. package/dist/components/docs/guides/GuideCIDiffGatingPage.js +80 -80
  55. package/dist/components/docs/guides/GuideContractTypesPage.js +232 -232
  56. package/dist/components/docs/guides/GuideDocsPipelinePage.js +82 -82
  57. package/dist/components/docs/guides/GuideGenerateDocsClientsSchemasPage.js +84 -84
  58. package/dist/components/docs/guides/GuideImportExistingCodebasesPage.js +324 -324
  59. package/dist/components/docs/guides/GuideNextjsOneEndpointPage.js +107 -107
  60. package/dist/components/docs/guides/GuideSpecValidationTypingPage.js +78 -78
  61. package/dist/components/docs/guides/GuidesIndexPage.js +43 -43
  62. package/dist/components/docs/guides/index.js +976 -976
  63. package/dist/components/docs/index.js +10792 -10792
  64. package/dist/components/docs/integrations/IntegrationsCircuitBreakersPage.js +17 -17
  65. package/dist/components/docs/integrations/IntegrationsElevenLabsPage.js +47 -47
  66. package/dist/components/docs/integrations/IntegrationsGithubPage.js +61 -61
  67. package/dist/components/docs/integrations/IntegrationsGmailPage.js +49 -49
  68. package/dist/components/docs/integrations/IntegrationsGoogleCalendarPage.js +33 -33
  69. package/dist/components/docs/integrations/IntegrationsHealthRoutingPage.js +65 -65
  70. package/dist/components/docs/integrations/IntegrationsMistralPage.js +69 -69
  71. package/dist/components/docs/integrations/IntegrationsOpenAIPage.js +65 -65
  72. package/dist/components/docs/integrations/IntegrationsOverviewPage.js +313 -313
  73. package/dist/components/docs/integrations/IntegrationsPostmarkPage.js +101 -101
  74. package/dist/components/docs/integrations/IntegrationsPowensPage.js +121 -121
  75. package/dist/components/docs/integrations/IntegrationsQdrantPage.js +49 -49
  76. package/dist/components/docs/integrations/IntegrationsResendPage.js +45 -45
  77. package/dist/components/docs/integrations/IntegrationsS3Page.js +57 -57
  78. package/dist/components/docs/integrations/IntegrationsSlackPage.js +63 -63
  79. package/dist/components/docs/integrations/IntegrationsSpecModelPage.js +139 -139
  80. package/dist/components/docs/integrations/IntegrationsStripePage.js +159 -159
  81. package/dist/components/docs/integrations/IntegrationsTwilioPage.js +61 -61
  82. package/dist/components/docs/integrations/IntegrationsWhatsappMetaPage.js +63 -63
  83. package/dist/components/docs/integrations/IntegrationsWhatsappTwilioPage.js +65 -65
  84. package/dist/components/docs/integrations/index.js +1642 -1642
  85. package/dist/components/docs/intent/ContractFirstApiPage.js +51 -51
  86. package/dist/components/docs/intent/DeterministicCodegenPage.js +59 -59
  87. package/dist/components/docs/intent/GenerateClientFromSchemaPage.js +85 -85
  88. package/dist/components/docs/intent/OpenapiAlternativePage.js +91 -91
  89. package/dist/components/docs/intent/SchemaValidationTypescriptPage.js +59 -59
  90. package/dist/components/docs/intent/SpecDrivenDevelopmentPage.js +51 -51
  91. package/dist/components/docs/intent/index.js +396 -396
  92. package/dist/components/docs/knowledge/KnowledgeCategoriesPage.js +371 -371
  93. package/dist/components/docs/knowledge/KnowledgeExamplesPage.js +79 -79
  94. package/dist/components/docs/knowledge/KnowledgeOverviewPage.js +185 -185
  95. package/dist/components/docs/knowledge/KnowledgeSourcesPage.js +187 -187
  96. package/dist/components/docs/knowledge/KnowledgeSpacesPage.js +141 -141
  97. package/dist/components/docs/knowledge/index.js +963 -963
  98. package/dist/components/docs/libraries/LibrariesAccessibilityPage.js +85 -85
  99. package/dist/components/docs/libraries/LibrariesAiAgentPage.js +63 -63
  100. package/dist/components/docs/libraries/LibrariesAnalyticsPage.js +33 -33
  101. package/dist/components/docs/libraries/LibrariesContentGenPage.js +43 -43
  102. package/dist/components/docs/libraries/LibrariesContractsPage.js +125 -125
  103. package/dist/components/docs/libraries/LibrariesCostTrackingPage.js +45 -45
  104. package/dist/components/docs/libraries/LibrariesDataBackendPage.js +69 -69
  105. package/dist/components/docs/libraries/LibrariesDataViewsPage.js +79 -79
  106. package/dist/components/docs/libraries/LibrariesDesignSystemPage.js +129 -129
  107. package/dist/components/docs/libraries/LibrariesEvolutionPage.js +49 -49
  108. package/dist/components/docs/libraries/LibrariesGraphQLPage.js +73 -73
  109. package/dist/components/docs/libraries/LibrariesGrowthPage.js +35 -35
  110. package/dist/components/docs/libraries/LibrariesMultiTenancyPage.js +43 -43
  111. package/dist/components/docs/libraries/LibrariesObservabilityPage.js +53 -53
  112. package/dist/components/docs/libraries/LibrariesOverlayEnginePage.js +45 -45
  113. package/dist/components/docs/libraries/LibrariesOverviewPage.js +191 -191
  114. package/dist/components/docs/libraries/LibrariesPersonalizationPage.js +47 -47
  115. package/dist/components/docs/libraries/LibrariesProgressiveDeliveryPage.js +53 -53
  116. package/dist/components/docs/libraries/LibrariesResiliencePage.js +49 -49
  117. package/dist/components/docs/libraries/LibrariesRuntimePage.js +87 -87
  118. package/dist/components/docs/libraries/LibrariesSLOPage.js +47 -47
  119. package/dist/components/docs/libraries/LibrariesSchemaPage.js +139 -139
  120. package/dist/components/docs/libraries/LibrariesSupportBotPage.js +57 -57
  121. package/dist/components/docs/libraries/LibrariesTestingPage.js +49 -49
  122. package/dist/components/docs/libraries/LibrariesUIKitPage.js +107 -107
  123. package/dist/components/docs/libraries/LibrariesWorkflowComposerPage.js +35 -35
  124. package/dist/components/docs/libraries/LibrariesWorkflowsPage.js +89 -89
  125. package/dist/components/docs/libraries/index.js +1919 -1919
  126. package/dist/components/docs/manifesto/ManifestoPage.js +79 -79
  127. package/dist/components/docs/ops/AutoEvolutionOpsPage.js +59 -59
  128. package/dist/components/docs/ops/DistributedTracingOpsPage.js +33 -33
  129. package/dist/components/docs/ops/index.js +92 -92
  130. package/dist/components/docs/reference/DocsMarkdownContent.js +27 -27
  131. package/dist/components/docs/reference/DocsReferenceContent.js +34 -34
  132. package/dist/components/docs/reference/DocsReferenceIndexClient.js +23 -23
  133. package/dist/components/docs/reference/DocsReferenceIndexPage.js +26 -26
  134. package/dist/components/docs/reference/DocsReferencePage.js +37 -37
  135. package/dist/components/docs/reference/index.js +63 -63
  136. package/dist/components/docs/safety/SafetyAuditingPage.js +161 -161
  137. package/dist/components/docs/safety/SafetyMigrationsPage.js +169 -169
  138. package/dist/components/docs/safety/SafetyOverviewPage.js +99 -99
  139. package/dist/components/docs/safety/SafetyPDPPage.js +137 -137
  140. package/dist/components/docs/safety/SafetySecurityTrustPage.js +95 -95
  141. package/dist/components/docs/safety/SafetySigningPage.js +39 -39
  142. package/dist/components/docs/safety/SafetyTenantIsolationPage.js +33 -33
  143. package/dist/components/docs/safety/index.js +733 -733
  144. package/dist/components/docs/shared/StudioPrompt.js +9 -9
  145. package/dist/components/docs/specs/SpecsCapabilitiesPage.js +61 -61
  146. package/dist/components/docs/specs/SpecsDataViewsPage.js +119 -119
  147. package/dist/components/docs/specs/SpecsOverlaysPage.js +171 -171
  148. package/dist/components/docs/specs/SpecsOverviewPage.js +167 -167
  149. package/dist/components/docs/specs/SpecsPolicyPage.js +179 -179
  150. package/dist/components/docs/specs/SpecsWorkflowsPage.js +141 -141
  151. package/dist/components/docs/specs/index.js +838 -838
  152. package/dist/components/docs/studio/StudioBYOKPage.js +9 -9
  153. package/dist/components/docs/studio/StudioDeploymentsPage.js +9 -9
  154. package/dist/components/docs/studio/StudioGettingStartedPage.js +9 -9
  155. package/dist/components/docs/studio/StudioIntegrationsPage.js +9 -9
  156. package/dist/components/docs/studio/StudioOverviewPage.js +33 -33
  157. package/dist/components/docs/studio/StudioVisualBuilderPage.js +9 -9
  158. package/dist/components/docs/studio/index.js +78 -78
  159. package/dist/components/integrations/index.js +209 -209
  160. package/dist/components/integrations/molecules/IntegrationCard.js +33 -33
  161. package/dist/components/integrations/organisms/IntegrationMarketplace.js +71 -71
  162. package/dist/components/integrations/organisms/IntegrationSettings.js +98 -98
  163. package/dist/components/integrations/organisms/KnowledgeSourceList.js +40 -40
  164. package/dist/components/legal/PrivacyTemplate.js +477 -477
  165. package/dist/components/legal/TermsTemplate.js +421 -421
  166. package/dist/components/legal/index.js +898 -898
  167. package/dist/components/shared/FeatureGateNotice.js +13 -13
  168. package/dist/components/shared/index.js +13 -13
  169. package/dist/components/shell/WorkspaceHeader.js +37 -37
  170. package/dist/components/shell/WorkspaceProjectShellLayout.js +77 -77
  171. package/dist/components/shell/WorkspaceShellRenderer.d.ts +17 -0
  172. package/dist/components/shell/WorkspaceShellRenderer.js +229 -0
  173. package/dist/components/shell/WorkspaceSidebar.js +27 -27
  174. package/dist/components/shell/index.d.ts +1 -0
  175. package/dist/components/shell/index.js +140 -77
  176. package/dist/components/templates/index.js +272 -272
  177. package/dist/components/templates/messaging/ConversationList.js +27 -27
  178. package/dist/components/templates/messaging/MessageComposer.js +27 -27
  179. package/dist/components/templates/messaging/MessageThread.js +18 -18
  180. package/dist/components/templates/messaging/MessagingWorkspace.js +65 -65
  181. package/dist/components/templates/messaging/index.js +65 -65
  182. package/dist/components/templates/recipes/LanguageSwitcher.js +5 -5
  183. package/dist/components/templates/recipes/RecipeCard.js +26 -26
  184. package/dist/components/templates/recipes/RecipeDetail.js +33 -33
  185. package/dist/components/templates/recipes/RecipeList.js +80 -80
  186. package/dist/components/templates/recipes/index.js +80 -80
  187. package/dist/components/templates/todos/FilterBar.js +39 -39
  188. package/dist/components/templates/todos/TaskForm.js +43 -43
  189. package/dist/components/templates/todos/TaskItem.js +30 -30
  190. package/dist/components/templates/todos/TaskList.js +127 -127
  191. package/dist/components/templates/todos/index.js +127 -127
  192. package/dist/index.js +12324 -12261
  193. package/dist/infrastructure/elysia/index.js +8 -8
  194. package/dist/infrastructure/elysia/logger.js +8 -8
  195. package/dist/infrastructure/index.js +8 -8
  196. package/dist/libs/posthog/client.js +2 -2
  197. package/dist/node/application/index.js +8 -8
  198. package/dist/node/application/mcp/cliMcp.js +8 -8
  199. package/dist/node/application/mcp/contractsMcp.js +8 -8
  200. package/dist/node/application/mcp/docsMcp.js +8 -8
  201. package/dist/node/application/mcp/index.js +8 -8
  202. package/dist/node/application/mcp/internalMcp.js +8 -8
  203. package/dist/node/application/mcp/providerRankingMcp.js +8 -8
  204. package/dist/node/bundles/LibraryBundle.js +138 -0
  205. package/dist/node/bundles/index.js +138 -0
  206. package/dist/node/components/docs/DocsIndexPage.js +91 -91
  207. package/dist/node/components/docs/advanced/AdvancedMCPPage.js +125 -125
  208. package/dist/node/components/docs/advanced/AdvancedOverlayEditorPage.js +49 -49
  209. package/dist/node/components/docs/advanced/AdvancedRenderersPage.js +51 -51
  210. package/dist/node/components/docs/advanced/AdvancedSpecExperimentsPage.js +35 -35
  211. package/dist/node/components/docs/advanced/AdvancedTelemetryPage.js +177 -177
  212. package/dist/node/components/docs/advanced/AdvancedWorkflowMonitoringPage.js +45 -45
  213. package/dist/node/components/docs/advanced/index.js +482 -482
  214. package/dist/node/components/docs/architecture/ArchitectureAppConfigPage.js +107 -107
  215. package/dist/node/components/docs/architecture/ArchitectureControlPlanePage.js +73 -73
  216. package/dist/node/components/docs/architecture/ArchitectureIntegrationBindingPage.js +117 -117
  217. package/dist/node/components/docs/architecture/ArchitectureKnowledgeBindingPage.js +175 -175
  218. package/dist/node/components/docs/architecture/ArchitectureMultiTenancyPage.js +71 -71
  219. package/dist/node/components/docs/architecture/ArchitectureOverviewPage.js +205 -205
  220. package/dist/node/components/docs/architecture/index.js +748 -748
  221. package/dist/node/components/docs/comparison/ComparisonAutomationPlatformsPage.js +117 -117
  222. package/dist/node/components/docs/comparison/ComparisonEnterprisePlatformsPage.js +111 -111
  223. package/dist/node/components/docs/comparison/ComparisonInternalToolBuildersPage.js +117 -117
  224. package/dist/node/components/docs/comparison/ComparisonOverviewPage.js +97 -97
  225. package/dist/node/components/docs/comparison/ComparisonWindmillPage.js +125 -125
  226. package/dist/node/components/docs/comparison/ComparisonWorkflowEnginesPage.js +171 -171
  227. package/dist/node/components/docs/comparison/index.js +738 -738
  228. package/dist/node/components/docs/ecosystem/IntegrationsPage.js +45 -45
  229. package/dist/node/components/docs/ecosystem/PluginsPage.js +73 -73
  230. package/dist/node/components/docs/ecosystem/RegistryPage.js +37 -37
  231. package/dist/node/components/docs/ecosystem/TemplatesPage.js +56 -56
  232. package/dist/node/components/docs/ecosystem/index.js +211 -211
  233. package/dist/node/components/docs/examples/DocsExamplesPage.js +21 -21
  234. package/dist/node/components/docs/examples/index.js +21 -21
  235. package/dist/node/components/docs/getting-started/CLIPage.js +95 -95
  236. package/dist/node/components/docs/getting-started/CompatibilityPage.js +81 -81
  237. package/dist/node/components/docs/getting-started/DataViewTutorialPage.js +57 -57
  238. package/dist/node/components/docs/getting-started/DeveloperToolsPage.js +61 -61
  239. package/dist/node/components/docs/getting-started/HelloWorldPage.js +77 -77
  240. package/dist/node/components/docs/getting-started/InstallationPage.js +65 -65
  241. package/dist/node/components/docs/getting-started/StartHerePage.js +51 -51
  242. package/dist/node/components/docs/getting-started/TroubleshootingPage.js +73 -73
  243. package/dist/node/components/docs/getting-started/VSCodeExtensionPage.js +171 -171
  244. package/dist/node/components/docs/getting-started/index.js +731 -731
  245. package/dist/node/components/docs/guides/GuideCIDiffGatingPage.js +80 -80
  246. package/dist/node/components/docs/guides/GuideContractTypesPage.js +232 -232
  247. package/dist/node/components/docs/guides/GuideDocsPipelinePage.js +82 -82
  248. package/dist/node/components/docs/guides/GuideGenerateDocsClientsSchemasPage.js +84 -84
  249. package/dist/node/components/docs/guides/GuideImportExistingCodebasesPage.js +324 -324
  250. package/dist/node/components/docs/guides/GuideNextjsOneEndpointPage.js +107 -107
  251. package/dist/node/components/docs/guides/GuideSpecValidationTypingPage.js +78 -78
  252. package/dist/node/components/docs/guides/GuidesIndexPage.js +43 -43
  253. package/dist/node/components/docs/guides/index.js +976 -976
  254. package/dist/node/components/docs/index.js +10792 -10792
  255. package/dist/node/components/docs/integrations/IntegrationsCircuitBreakersPage.js +17 -17
  256. package/dist/node/components/docs/integrations/IntegrationsElevenLabsPage.js +47 -47
  257. package/dist/node/components/docs/integrations/IntegrationsGithubPage.js +61 -61
  258. package/dist/node/components/docs/integrations/IntegrationsGmailPage.js +49 -49
  259. package/dist/node/components/docs/integrations/IntegrationsGoogleCalendarPage.js +33 -33
  260. package/dist/node/components/docs/integrations/IntegrationsHealthRoutingPage.js +65 -65
  261. package/dist/node/components/docs/integrations/IntegrationsMistralPage.js +69 -69
  262. package/dist/node/components/docs/integrations/IntegrationsOpenAIPage.js +65 -65
  263. package/dist/node/components/docs/integrations/IntegrationsOverviewPage.js +313 -313
  264. package/dist/node/components/docs/integrations/IntegrationsPostmarkPage.js +101 -101
  265. package/dist/node/components/docs/integrations/IntegrationsPowensPage.js +121 -121
  266. package/dist/node/components/docs/integrations/IntegrationsQdrantPage.js +49 -49
  267. package/dist/node/components/docs/integrations/IntegrationsResendPage.js +45 -45
  268. package/dist/node/components/docs/integrations/IntegrationsS3Page.js +57 -57
  269. package/dist/node/components/docs/integrations/IntegrationsSlackPage.js +63 -63
  270. package/dist/node/components/docs/integrations/IntegrationsSpecModelPage.js +139 -139
  271. package/dist/node/components/docs/integrations/IntegrationsStripePage.js +159 -159
  272. package/dist/node/components/docs/integrations/IntegrationsTwilioPage.js +61 -61
  273. package/dist/node/components/docs/integrations/IntegrationsWhatsappMetaPage.js +63 -63
  274. package/dist/node/components/docs/integrations/IntegrationsWhatsappTwilioPage.js +65 -65
  275. package/dist/node/components/docs/integrations/index.js +1642 -1642
  276. package/dist/node/components/docs/intent/ContractFirstApiPage.js +51 -51
  277. package/dist/node/components/docs/intent/DeterministicCodegenPage.js +59 -59
  278. package/dist/node/components/docs/intent/GenerateClientFromSchemaPage.js +85 -85
  279. package/dist/node/components/docs/intent/OpenapiAlternativePage.js +91 -91
  280. package/dist/node/components/docs/intent/SchemaValidationTypescriptPage.js +59 -59
  281. package/dist/node/components/docs/intent/SpecDrivenDevelopmentPage.js +51 -51
  282. package/dist/node/components/docs/intent/index.js +396 -396
  283. package/dist/node/components/docs/knowledge/KnowledgeCategoriesPage.js +371 -371
  284. package/dist/node/components/docs/knowledge/KnowledgeExamplesPage.js +79 -79
  285. package/dist/node/components/docs/knowledge/KnowledgeOverviewPage.js +185 -185
  286. package/dist/node/components/docs/knowledge/KnowledgeSourcesPage.js +187 -187
  287. package/dist/node/components/docs/knowledge/KnowledgeSpacesPage.js +141 -141
  288. package/dist/node/components/docs/knowledge/index.js +963 -963
  289. package/dist/node/components/docs/libraries/LibrariesAccessibilityPage.js +85 -85
  290. package/dist/node/components/docs/libraries/LibrariesAiAgentPage.js +63 -63
  291. package/dist/node/components/docs/libraries/LibrariesAnalyticsPage.js +33 -33
  292. package/dist/node/components/docs/libraries/LibrariesContentGenPage.js +43 -43
  293. package/dist/node/components/docs/libraries/LibrariesContractsPage.js +125 -125
  294. package/dist/node/components/docs/libraries/LibrariesCostTrackingPage.js +45 -45
  295. package/dist/node/components/docs/libraries/LibrariesDataBackendPage.js +69 -69
  296. package/dist/node/components/docs/libraries/LibrariesDataViewsPage.js +79 -79
  297. package/dist/node/components/docs/libraries/LibrariesDesignSystemPage.js +129 -129
  298. package/dist/node/components/docs/libraries/LibrariesEvolutionPage.js +49 -49
  299. package/dist/node/components/docs/libraries/LibrariesGraphQLPage.js +73 -73
  300. package/dist/node/components/docs/libraries/LibrariesGrowthPage.js +35 -35
  301. package/dist/node/components/docs/libraries/LibrariesMultiTenancyPage.js +43 -43
  302. package/dist/node/components/docs/libraries/LibrariesObservabilityPage.js +53 -53
  303. package/dist/node/components/docs/libraries/LibrariesOverlayEnginePage.js +45 -45
  304. package/dist/node/components/docs/libraries/LibrariesOverviewPage.js +191 -191
  305. package/dist/node/components/docs/libraries/LibrariesPersonalizationPage.js +47 -47
  306. package/dist/node/components/docs/libraries/LibrariesProgressiveDeliveryPage.js +53 -53
  307. package/dist/node/components/docs/libraries/LibrariesResiliencePage.js +49 -49
  308. package/dist/node/components/docs/libraries/LibrariesRuntimePage.js +87 -87
  309. package/dist/node/components/docs/libraries/LibrariesSLOPage.js +47 -47
  310. package/dist/node/components/docs/libraries/LibrariesSchemaPage.js +139 -139
  311. package/dist/node/components/docs/libraries/LibrariesSupportBotPage.js +57 -57
  312. package/dist/node/components/docs/libraries/LibrariesTestingPage.js +49 -49
  313. package/dist/node/components/docs/libraries/LibrariesUIKitPage.js +107 -107
  314. package/dist/node/components/docs/libraries/LibrariesWorkflowComposerPage.js +35 -35
  315. package/dist/node/components/docs/libraries/LibrariesWorkflowsPage.js +89 -89
  316. package/dist/node/components/docs/libraries/index.js +1919 -1919
  317. package/dist/node/components/docs/manifesto/ManifestoPage.js +79 -79
  318. package/dist/node/components/docs/ops/AutoEvolutionOpsPage.js +59 -59
  319. package/dist/node/components/docs/ops/DistributedTracingOpsPage.js +33 -33
  320. package/dist/node/components/docs/ops/index.js +92 -92
  321. package/dist/node/components/docs/reference/DocsMarkdownContent.js +27 -27
  322. package/dist/node/components/docs/reference/DocsReferenceContent.js +34 -34
  323. package/dist/node/components/docs/reference/DocsReferenceIndexClient.js +23 -23
  324. package/dist/node/components/docs/reference/DocsReferenceIndexPage.js +26 -26
  325. package/dist/node/components/docs/reference/DocsReferencePage.js +37 -37
  326. package/dist/node/components/docs/reference/index.js +63 -63
  327. package/dist/node/components/docs/safety/SafetyAuditingPage.js +161 -161
  328. package/dist/node/components/docs/safety/SafetyMigrationsPage.js +169 -169
  329. package/dist/node/components/docs/safety/SafetyOverviewPage.js +99 -99
  330. package/dist/node/components/docs/safety/SafetyPDPPage.js +137 -137
  331. package/dist/node/components/docs/safety/SafetySecurityTrustPage.js +95 -95
  332. package/dist/node/components/docs/safety/SafetySigningPage.js +39 -39
  333. package/dist/node/components/docs/safety/SafetyTenantIsolationPage.js +33 -33
  334. package/dist/node/components/docs/safety/index.js +733 -733
  335. package/dist/node/components/docs/shared/StudioPrompt.js +9 -9
  336. package/dist/node/components/docs/specs/SpecsCapabilitiesPage.js +61 -61
  337. package/dist/node/components/docs/specs/SpecsDataViewsPage.js +119 -119
  338. package/dist/node/components/docs/specs/SpecsOverlaysPage.js +171 -171
  339. package/dist/node/components/docs/specs/SpecsOverviewPage.js +167 -167
  340. package/dist/node/components/docs/specs/SpecsPolicyPage.js +179 -179
  341. package/dist/node/components/docs/specs/SpecsWorkflowsPage.js +141 -141
  342. package/dist/node/components/docs/specs/index.js +838 -838
  343. package/dist/node/components/docs/studio/StudioBYOKPage.js +9 -9
  344. package/dist/node/components/docs/studio/StudioDeploymentsPage.js +9 -9
  345. package/dist/node/components/docs/studio/StudioGettingStartedPage.js +9 -9
  346. package/dist/node/components/docs/studio/StudioIntegrationsPage.js +9 -9
  347. package/dist/node/components/docs/studio/StudioOverviewPage.js +33 -33
  348. package/dist/node/components/docs/studio/StudioVisualBuilderPage.js +9 -9
  349. package/dist/node/components/docs/studio/index.js +78 -78
  350. package/dist/node/components/integrations/index.js +209 -209
  351. package/dist/node/components/integrations/molecules/IntegrationCard.js +33 -33
  352. package/dist/node/components/integrations/organisms/IntegrationMarketplace.js +71 -71
  353. package/dist/node/components/integrations/organisms/IntegrationSettings.js +98 -98
  354. package/dist/node/components/integrations/organisms/KnowledgeSourceList.js +40 -40
  355. package/dist/node/components/legal/PrivacyTemplate.js +477 -477
  356. package/dist/node/components/legal/TermsTemplate.js +421 -421
  357. package/dist/node/components/legal/index.js +898 -898
  358. package/dist/node/components/shared/FeatureGateNotice.js +13 -13
  359. package/dist/node/components/shared/index.js +13 -13
  360. package/dist/node/components/shell/WorkspaceHeader.js +37 -37
  361. package/dist/node/components/shell/WorkspaceProjectShellLayout.js +77 -77
  362. package/dist/node/components/shell/WorkspaceShellRenderer.js +228 -0
  363. package/dist/node/components/shell/WorkspaceSidebar.js +27 -27
  364. package/dist/node/components/shell/index.js +140 -77
  365. package/dist/node/components/templates/index.js +272 -272
  366. package/dist/node/components/templates/messaging/ConversationList.js +27 -27
  367. package/dist/node/components/templates/messaging/MessageComposer.js +27 -27
  368. package/dist/node/components/templates/messaging/MessageThread.js +18 -18
  369. package/dist/node/components/templates/messaging/MessagingWorkspace.js +65 -65
  370. package/dist/node/components/templates/messaging/index.js +65 -65
  371. package/dist/node/components/templates/recipes/LanguageSwitcher.js +5 -5
  372. package/dist/node/components/templates/recipes/RecipeCard.js +26 -26
  373. package/dist/node/components/templates/recipes/RecipeDetail.js +33 -33
  374. package/dist/node/components/templates/recipes/RecipeList.js +80 -80
  375. package/dist/node/components/templates/recipes/index.js +80 -80
  376. package/dist/node/components/templates/todos/FilterBar.js +39 -39
  377. package/dist/node/components/templates/todos/TaskForm.js +43 -43
  378. package/dist/node/components/templates/todos/TaskItem.js +30 -30
  379. package/dist/node/components/templates/todos/TaskList.js +127 -127
  380. package/dist/node/components/templates/todos/index.js +127 -127
  381. package/dist/node/index.js +12324 -12261
  382. package/dist/node/infrastructure/elysia/index.js +8 -8
  383. package/dist/node/infrastructure/elysia/logger.js +8 -8
  384. package/dist/node/infrastructure/index.js +8 -8
  385. package/dist/node/libs/posthog/client.js +2 -2
  386. package/dist/node/presentation/features/atoms/FeatureIcon/FeatureIcon.js +3 -3
  387. package/dist/node/presentation/features/atoms/FeatureIcon/index.js +3 -3
  388. package/dist/node/presentation/features/atoms/index.js +3 -3
  389. package/dist/node/presentation/features/index.js +915 -915
  390. package/dist/node/presentation/features/molecules/FeatureCard/FeatureCard.js +101 -101
  391. package/dist/node/presentation/features/molecules/FeatureCard/index.js +101 -101
  392. package/dist/node/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.js +15 -15
  393. package/dist/node/presentation/features/molecules/FeatureCategoryHeader/index.js +15 -15
  394. package/dist/node/presentation/features/molecules/FeatureFilters/FeatureFilters.js +23 -23
  395. package/dist/node/presentation/features/molecules/FeatureFilters/index.js +23 -23
  396. package/dist/node/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.js +67 -67
  397. package/dist/node/presentation/features/molecules/FeatureHoverPreview/index.js +67 -67
  398. package/dist/node/presentation/features/molecules/index.js +139 -139
  399. package/dist/node/presentation/features/organisms/FeatureDataViewsList.js +7 -7
  400. package/dist/node/presentation/features/organisms/FeatureDetail/FeatureDetail.js +57 -57
  401. package/dist/node/presentation/features/organisms/FeatureDetail/index.js +57 -57
  402. package/dist/node/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.js +183 -183
  403. package/dist/node/presentation/features/organisms/FeatureDiscovery/index.js +183 -183
  404. package/dist/node/presentation/features/organisms/FeatureEventsList.js +7 -7
  405. package/dist/node/presentation/features/organisms/FeatureFormsList.js +7 -7
  406. package/dist/node/presentation/features/organisms/FeatureOperationsList.js +7 -7
  407. package/dist/node/presentation/features/organisms/FeaturePresentationsList.js +7 -7
  408. package/dist/node/presentation/features/organisms/index.js +275 -275
  409. package/dist/node/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.js +126 -126
  410. package/dist/node/presentation/features/templates/FeatureDataViewDetailTemplate/index.js +126 -126
  411. package/dist/node/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.js +16 -16
  412. package/dist/node/presentation/features/templates/FeatureDataViewsTemplate/index.js +16 -16
  413. package/dist/node/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.js +112 -112
  414. package/dist/node/presentation/features/templates/FeatureEventDetailTemplate/index.js +112 -112
  415. package/dist/node/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.js +16 -16
  416. package/dist/node/presentation/features/templates/FeatureEventsTemplate/index.js +16 -16
  417. package/dist/node/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.js +126 -126
  418. package/dist/node/presentation/features/templates/FeatureFormDetailTemplate/index.js +126 -126
  419. package/dist/node/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.js +16 -16
  420. package/dist/node/presentation/features/templates/FeatureFormsTemplate/index.js +16 -16
  421. package/dist/node/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.js +110 -110
  422. package/dist/node/presentation/features/templates/FeatureOperationDetailTemplate/index.js +110 -110
  423. package/dist/node/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.js +16 -16
  424. package/dist/node/presentation/features/templates/FeatureOperationsTemplate/index.js +16 -16
  425. package/dist/node/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.js +66 -66
  426. package/dist/node/presentation/features/templates/FeatureOverviewTemplate/index.js +66 -66
  427. package/dist/node/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.js +112 -112
  428. package/dist/node/presentation/features/templates/FeaturePresentationDetailTemplate/index.js +112 -112
  429. package/dist/node/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.js +16 -16
  430. package/dist/node/presentation/features/templates/FeaturePresentationsTemplate/index.js +16 -16
  431. package/dist/presentation/features/atoms/FeatureIcon/FeatureIcon.js +3 -3
  432. package/dist/presentation/features/atoms/FeatureIcon/index.js +3 -3
  433. package/dist/presentation/features/atoms/index.js +3 -3
  434. package/dist/presentation/features/index.js +915 -915
  435. package/dist/presentation/features/molecules/FeatureCard/FeatureCard.js +101 -101
  436. package/dist/presentation/features/molecules/FeatureCard/index.js +101 -101
  437. package/dist/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.js +15 -15
  438. package/dist/presentation/features/molecules/FeatureCategoryHeader/index.js +15 -15
  439. package/dist/presentation/features/molecules/FeatureFilters/FeatureFilters.js +23 -23
  440. package/dist/presentation/features/molecules/FeatureFilters/index.js +23 -23
  441. package/dist/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.js +67 -67
  442. package/dist/presentation/features/molecules/FeatureHoverPreview/index.js +67 -67
  443. package/dist/presentation/features/molecules/index.js +139 -139
  444. package/dist/presentation/features/organisms/FeatureDataViewsList.js +7 -7
  445. package/dist/presentation/features/organisms/FeatureDetail/FeatureDetail.js +57 -57
  446. package/dist/presentation/features/organisms/FeatureDetail/index.js +57 -57
  447. package/dist/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.js +183 -183
  448. package/dist/presentation/features/organisms/FeatureDiscovery/index.js +183 -183
  449. package/dist/presentation/features/organisms/FeatureEventsList.js +7 -7
  450. package/dist/presentation/features/organisms/FeatureFormsList.js +7 -7
  451. package/dist/presentation/features/organisms/FeatureOperationsList.js +7 -7
  452. package/dist/presentation/features/organisms/FeaturePresentationsList.js +7 -7
  453. package/dist/presentation/features/organisms/index.js +275 -275
  454. package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.js +126 -126
  455. package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/index.js +126 -126
  456. package/dist/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.js +16 -16
  457. package/dist/presentation/features/templates/FeatureDataViewsTemplate/index.js +16 -16
  458. package/dist/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.js +112 -112
  459. package/dist/presentation/features/templates/FeatureEventDetailTemplate/index.js +112 -112
  460. package/dist/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.js +16 -16
  461. package/dist/presentation/features/templates/FeatureEventsTemplate/index.js +16 -16
  462. package/dist/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.js +126 -126
  463. package/dist/presentation/features/templates/FeatureFormDetailTemplate/index.js +126 -126
  464. package/dist/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.js +16 -16
  465. package/dist/presentation/features/templates/FeatureFormsTemplate/index.js +16 -16
  466. package/dist/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.js +110 -110
  467. package/dist/presentation/features/templates/FeatureOperationDetailTemplate/index.js +110 -110
  468. package/dist/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.js +16 -16
  469. package/dist/presentation/features/templates/FeatureOperationsTemplate/index.js +16 -16
  470. package/dist/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.js +66 -66
  471. package/dist/presentation/features/templates/FeatureOverviewTemplate/index.js +66 -66
  472. package/dist/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.js +112 -112
  473. package/dist/presentation/features/templates/FeaturePresentationDetailTemplate/index.js +112 -112
  474. package/dist/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.js +16 -16
  475. package/dist/presentation/features/templates/FeaturePresentationsTemplate/index.js +16 -16
  476. package/package.json +71 -22
  477. package/src/bundles/LibraryBundle.ts +152 -0
  478. package/src/bundles/index.ts +1 -0
  479. package/src/components/docs/generated/docs-index._common.json +441 -90
  480. package/src/components/docs/generated/docs-index.agent-console.json +1 -1
  481. package/src/components/docs/generated/docs-index.ai-chat.json +1 -1
  482. package/src/components/docs/generated/docs-index.ai-support-bot.json +1 -1
  483. package/src/components/docs/generated/docs-index.analytics-dashboard.json +1 -1
  484. package/src/components/docs/generated/docs-index.app-config.json +1 -1
  485. package/src/components/docs/generated/docs-index.audit-trail.json +1 -1
  486. package/src/components/docs/generated/docs-index.calendar-google.json +1 -1
  487. package/src/components/docs/generated/docs-index.content-generation.json +1 -1
  488. package/src/components/docs/generated/docs-index.crm-pipeline.json +1 -1
  489. package/src/components/docs/generated/docs-index.email-gmail.json +1 -1
  490. package/src/components/docs/generated/docs-index.feature-flags.json +1 -1
  491. package/src/components/docs/generated/docs-index.files.json +1 -1
  492. package/src/components/docs/generated/docs-index.generated.ts +7 -7
  493. package/src/components/docs/generated/docs-index.health.json +1 -1
  494. package/src/components/docs/generated/docs-index.identity-rbac.json +1 -1
  495. package/src/components/docs/generated/docs-index.in-app-docs.json +1 -1
  496. package/src/components/docs/generated/docs-index.integration-hub.json +1 -1
  497. package/src/components/docs/generated/docs-index.integration-posthog.json +1 -1
  498. package/src/components/docs/generated/docs-index.integration-stripe.json +1 -1
  499. package/src/components/docs/generated/docs-index.integration-supabase.json +1 -1
  500. package/src/components/docs/generated/docs-index.jobs.json +1 -1
  501. package/src/components/docs/generated/docs-index.kb-update-pipeline.json +1 -1
  502. package/src/components/docs/generated/docs-index.knowledge-canon.json +1 -1
  503. package/src/components/docs/generated/docs-index.learning-journey-ambient-coach.json +1 -1
  504. package/src/components/docs/generated/docs-index.learning-journey-crm-onboarding.json +1 -1
  505. package/src/components/docs/generated/docs-index.learning-journey-duo-drills.json +1 -1
  506. package/src/components/docs/generated/docs-index.learning-journey-platform-tour.json +1 -1
  507. package/src/components/docs/generated/docs-index.learning-journey-quest-challenges.json +1 -1
  508. package/src/components/docs/generated/docs-index.learning-journey-registry.json +1 -1
  509. package/src/components/docs/generated/docs-index.learning-journey-studio-onboarding.json +1 -1
  510. package/src/components/docs/generated/docs-index.learning-journey-ui-coaching.json +1 -1
  511. package/src/components/docs/generated/docs-index.learning-journey-ui-gamified.json +1 -1
  512. package/src/components/docs/generated/docs-index.learning-journey-ui-onboarding.json +1 -1
  513. package/src/components/docs/generated/docs-index.learning-journey-ui-shared.json +1 -1
  514. package/src/components/docs/generated/docs-index.learning-journey.json +1 -1
  515. package/src/components/docs/generated/docs-index.learning-patterns.json +1 -1
  516. package/src/components/docs/generated/docs-index.lifecycle-cli.json +1 -1
  517. package/src/components/docs/generated/docs-index.lifecycle-dashboard.json +1 -1
  518. package/src/components/docs/generated/docs-index.locale-jurisdiction-gate.json +1 -1
  519. package/src/components/docs/generated/docs-index.manifest.json +2 -2
  520. package/src/components/docs/generated/docs-index.marketplace.json +1 -1
  521. package/src/components/docs/generated/docs-index.meeting-recorder-providers.json +1 -1
  522. package/src/components/docs/generated/docs-index.meeting-recorder.json +1 -1
  523. package/src/components/docs/generated/docs-index.metrics.json +1 -1
  524. package/src/components/docs/generated/docs-index.minimal.json +1 -1
  525. package/src/components/docs/generated/docs-index.notifications.json +1 -1
  526. package/src/components/docs/generated/docs-index.openbanking-powens.json +1 -1
  527. package/src/components/docs/generated/docs-index.openbanking.json +1 -1
  528. package/src/components/docs/generated/docs-index.opencode-cli.json +1 -1
  529. package/src/components/docs/generated/docs-index.personalization.json +1 -1
  530. package/src/components/docs/generated/docs-index.platform-acp.json +1 -1
  531. package/src/components/docs/generated/docs-index.platform-agent.json +1 -1
  532. package/src/components/docs/generated/docs-index.platform-context.json +1 -1
  533. package/src/components/docs/generated/docs-index.platform-database.json +1 -1
  534. package/src/components/docs/generated/docs-index.platform-docs.json +1 -1
  535. package/src/components/docs/generated/docs-index.platform-integrations.json +1 -1
  536. package/src/components/docs/generated/docs-index.platform-knowledge.json +1 -1
  537. package/src/components/docs/generated/docs-index.platform-provider-ranking.json +1 -1
  538. package/src/components/docs/generated/docs-index.pocket-family-office.json +1 -1
  539. package/src/components/docs/generated/docs-index.policy-safe-knowledge-assistant.json +1 -1
  540. package/src/components/docs/generated/docs-index.product-intent.json +1 -1
  541. package/src/components/docs/generated/docs-index.project-management-sync.json +1 -1
  542. package/src/components/docs/generated/docs-index.saas-boilerplate.json +1 -1
  543. package/src/components/docs/generated/docs-index.service-business-os.json +1 -1
  544. package/src/components/docs/generated/docs-index.team-hub.json +1 -1
  545. package/src/components/docs/generated/docs-index.unknown.json +1 -1
  546. package/src/components/docs/generated/docs-index.versioned-knowledge-base.json +1 -1
  547. package/src/components/docs/generated/docs-index.video-api-showcase.json +1 -1
  548. package/src/components/docs/generated/docs-index.video-docs-terminal.json +1 -1
  549. package/src/components/docs/generated/docs-index.video-marketing-clip.json +1 -1
  550. package/src/components/docs/generated/docs-index.voice-providers.json +1 -1
  551. package/src/components/docs/generated/docs-index.wealth-snapshot.json +1 -1
  552. package/src/components/docs/generated/docs-index.workflow-system.json +1 -1
  553. package/src/components/docs/generated/docs-index.workspace-cli.json +1 -1
  554. package/src/components/docs/guides/GuideNextjsOneEndpointPage.tsx +1 -1
  555. package/src/components/shell/WorkspaceShellRenderer.tsx +90 -0
  556. package/src/components/shell/index.ts +1 -0
@@ -1,1023 +1,1023 @@
1
1
  // src/components/legal/PrivacyTemplate.tsx
2
- import { jsxDEV } from "react/jsx-dev-runtime";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
3
  var metadata = {
4
4
  title: "Privacy Policy | ContractSpec",
5
5
  description: "Learn how ContractSpec collects, uses, and protects your personal data in compliance with GDPR."
6
6
  };
7
7
  function PrivacyTemplate() {
8
- return /* @__PURE__ */ jsxDEV("main", {
8
+ return /* @__PURE__ */ jsx("main", {
9
9
  className: "flex grow flex-col items-center justify-center pt-24",
10
- children: /* @__PURE__ */ jsxDEV("section", {
10
+ children: /* @__PURE__ */ jsx("section", {
11
11
  className: "section-padding",
12
- children: /* @__PURE__ */ jsxDEV("div", {
12
+ children: /* @__PURE__ */ jsxs("div", {
13
13
  className: "prose prose-invert mx-auto max-w-3xl",
14
14
  children: [
15
- /* @__PURE__ */ jsxDEV("h1", {
15
+ /* @__PURE__ */ jsx("h1", {
16
16
  className: "mb-4 text-4xl font-bold",
17
17
  children: "Privacy Policy"
18
- }, undefined, false, undefined, this),
19
- /* @__PURE__ */ jsxDEV("p", {
18
+ }),
19
+ /* @__PURE__ */ jsx("p", {
20
20
  className: "text-muted-foreground mb-8",
21
21
  children: "Last updated: December 18, 2025"
22
- }, undefined, false, undefined, this),
23
- /* @__PURE__ */ jsxDEV("section", {
22
+ }),
23
+ /* @__PURE__ */ jsxs("section", {
24
24
  className: "space-y-4",
25
25
  children: [
26
- /* @__PURE__ */ jsxDEV("h2", {
26
+ /* @__PURE__ */ jsx("h2", {
27
27
  className: "text-foreground text-2xl font-bold",
28
28
  children: "1. Who We Are"
29
- }, undefined, false, undefined, this),
30
- /* @__PURE__ */ jsxDEV("p", {
29
+ }),
30
+ /* @__PURE__ */ jsxs("p", {
31
31
  className: "text-muted-foreground",
32
32
  children: [
33
- /* @__PURE__ */ jsxDEV("strong", {
33
+ /* @__PURE__ */ jsx("strong", {
34
34
  className: "text-foreground",
35
35
  children: "ContractSpec"
36
- }, undefined, false, undefined, this),
36
+ }),
37
37
  " is a brand of",
38
38
  " ",
39
- /* @__PURE__ */ jsxDEV("strong", {
39
+ /* @__PURE__ */ jsx("strong", {
40
40
  className: "text-foreground",
41
41
  children: "CHAMAN VENTURES"
42
- }, undefined, false, undefined, this),
42
+ }),
43
43
  ", a simplified joint-stock company (SASU) registered in France."
44
44
  ]
45
- }, undefined, true, undefined, this),
46
- /* @__PURE__ */ jsxDEV("div", {
45
+ }),
46
+ /* @__PURE__ */ jsxs("div", {
47
47
  className: "text-muted-foreground rounded-lg border border-white/10 bg-white/5 p-4",
48
48
  children: [
49
- /* @__PURE__ */ jsxDEV("p", {
49
+ /* @__PURE__ */ jsx("p", {
50
50
  className: "mb-2",
51
- children: /* @__PURE__ */ jsxDEV("strong", {
51
+ children: /* @__PURE__ */ jsx("strong", {
52
52
  className: "text-foreground",
53
53
  children: "Data Controller:"
54
- }, undefined, false, undefined, this)
55
- }, undefined, false, undefined, this),
56
- /* @__PURE__ */ jsxDEV("ul", {
54
+ })
55
+ }),
56
+ /* @__PURE__ */ jsxs("ul", {
57
57
  className: "list-none space-y-1 pl-0",
58
58
  children: [
59
- /* @__PURE__ */ jsxDEV("li", {
59
+ /* @__PURE__ */ jsx("li", {
60
60
  children: "CHAMAN VENTURES, SASU"
61
- }, undefined, false, undefined, this),
62
- /* @__PURE__ */ jsxDEV("li", {
61
+ }),
62
+ /* @__PURE__ */ jsx("li", {
63
63
  children: "RCS Paris • SIREN 989 498 902"
64
- }, undefined, false, undefined, this),
65
- /* @__PURE__ */ jsxDEV("li", {
64
+ }),
65
+ /* @__PURE__ */ jsx("li", {
66
66
  children: "229 rue Saint-Honoré, 75001 Paris, France"
67
- }, undefined, false, undefined, this),
68
- /* @__PURE__ */ jsxDEV("li", {
67
+ }),
68
+ /* @__PURE__ */ jsxs("li", {
69
69
  children: [
70
70
  "Contact:",
71
71
  " ",
72
- /* @__PURE__ */ jsxDEV("a", {
72
+ /* @__PURE__ */ jsx("a", {
73
73
  href: "mailto:privacy@contractspec.io",
74
74
  className: "text-primary hover:underline",
75
75
  children: "privacy@contractspec.io"
76
- }, undefined, false, undefined, this)
76
+ })
77
77
  ]
78
- }, undefined, true, undefined, this)
78
+ })
79
79
  ]
80
- }, undefined, true, undefined, this)
80
+ })
81
81
  ]
82
- }, undefined, true, undefined, this),
83
- /* @__PURE__ */ jsxDEV("p", {
82
+ }),
83
+ /* @__PURE__ */ jsx("p", {
84
84
  className: "text-muted-foreground",
85
85
  children: "We are responsible for deciding how we hold and use personal data about you. We are required under data protection legislation to notify you of the information contained in this privacy policy."
86
- }, undefined, false, undefined, this)
86
+ })
87
87
  ]
88
- }, undefined, true, undefined, this),
89
- /* @__PURE__ */ jsxDEV("section", {
88
+ }),
89
+ /* @__PURE__ */ jsxs("section", {
90
90
  className: "mt-10 space-y-4",
91
91
  children: [
92
- /* @__PURE__ */ jsxDEV("h2", {
92
+ /* @__PURE__ */ jsx("h2", {
93
93
  className: "text-foreground text-2xl font-bold",
94
94
  children: "2. What This Policy Covers"
95
- }, undefined, false, undefined, this),
96
- /* @__PURE__ */ jsxDEV("p", {
95
+ }),
96
+ /* @__PURE__ */ jsx("p", {
97
97
  className: "text-muted-foreground",
98
98
  children: "This privacy policy explains:"
99
- }, undefined, false, undefined, this),
100
- /* @__PURE__ */ jsxDEV("ul", {
99
+ }),
100
+ /* @__PURE__ */ jsxs("ul", {
101
101
  className: "text-muted-foreground list-disc space-y-2 pl-6",
102
102
  children: [
103
- /* @__PURE__ */ jsxDEV("li", {
103
+ /* @__PURE__ */ jsx("li", {
104
104
  children: "What personal data we collect through the ContractSpec website and services"
105
- }, undefined, false, undefined, this),
106
- /* @__PURE__ */ jsxDEV("li", {
105
+ }),
106
+ /* @__PURE__ */ jsx("li", {
107
107
  children: "Why we collect and process your data"
108
- }, undefined, false, undefined, this),
109
- /* @__PURE__ */ jsxDEV("li", {
108
+ }),
109
+ /* @__PURE__ */ jsx("li", {
110
110
  children: "How we store and protect your data"
111
- }, undefined, false, undefined, this),
112
- /* @__PURE__ */ jsxDEV("li", {
111
+ }),
112
+ /* @__PURE__ */ jsx("li", {
113
113
  children: "Who we may share your data with"
114
- }, undefined, false, undefined, this),
115
- /* @__PURE__ */ jsxDEV("li", {
114
+ }),
115
+ /* @__PURE__ */ jsx("li", {
116
116
  children: "Your rights under the General Data Protection Regulation (GDPR)"
117
- }, undefined, false, undefined, this)
117
+ })
118
118
  ]
119
- }, undefined, true, undefined, this),
120
- /* @__PURE__ */ jsxDEV("p", {
119
+ }),
120
+ /* @__PURE__ */ jsx("p", {
121
121
  className: "text-muted-foreground",
122
122
  children: "This policy applies to visitors of our website, users who sign up for our waitlist or contact us, and customers who use our services."
123
- }, undefined, false, undefined, this)
123
+ })
124
124
  ]
125
- }, undefined, true, undefined, this),
126
- /* @__PURE__ */ jsxDEV("section", {
125
+ }),
126
+ /* @__PURE__ */ jsxs("section", {
127
127
  className: "mt-10 space-y-4",
128
128
  children: [
129
- /* @__PURE__ */ jsxDEV("h2", {
129
+ /* @__PURE__ */ jsx("h2", {
130
130
  className: "text-foreground text-2xl font-bold",
131
131
  children: "3. Data We Collect"
132
- }, undefined, false, undefined, this),
133
- /* @__PURE__ */ jsxDEV("p", {
132
+ }),
133
+ /* @__PURE__ */ jsx("p", {
134
134
  className: "text-muted-foreground",
135
135
  children: "We collect different types of data depending on how you interact with ContractSpec:"
136
- }, undefined, false, undefined, this),
137
- /* @__PURE__ */ jsxDEV("div", {
136
+ }),
137
+ /* @__PURE__ */ jsx("div", {
138
138
  className: "overflow-x-auto",
139
- children: /* @__PURE__ */ jsxDEV("table", {
139
+ children: /* @__PURE__ */ jsxs("table", {
140
140
  className: "text-muted-foreground w-full border-collapse text-sm",
141
141
  children: [
142
- /* @__PURE__ */ jsxDEV("thead", {
143
- children: /* @__PURE__ */ jsxDEV("tr", {
142
+ /* @__PURE__ */ jsx("thead", {
143
+ children: /* @__PURE__ */ jsxs("tr", {
144
144
  className: "border-b border-white/20",
145
145
  children: [
146
- /* @__PURE__ */ jsxDEV("th", {
146
+ /* @__PURE__ */ jsx("th", {
147
147
  className: "text-foreground py-3 pr-4 text-left font-semibold",
148
148
  children: "Category"
149
- }, undefined, false, undefined, this),
150
- /* @__PURE__ */ jsxDEV("th", {
149
+ }),
150
+ /* @__PURE__ */ jsx("th", {
151
151
  className: "text-foreground py-3 pr-4 text-left font-semibold",
152
152
  children: "Data Collected"
153
- }, undefined, false, undefined, this),
154
- /* @__PURE__ */ jsxDEV("th", {
153
+ }),
154
+ /* @__PURE__ */ jsx("th", {
155
155
  className: "text-foreground py-3 text-left font-semibold",
156
156
  children: "When Collected"
157
- }, undefined, false, undefined, this)
157
+ })
158
158
  ]
159
- }, undefined, true, undefined, this)
160
- }, undefined, false, undefined, this),
161
- /* @__PURE__ */ jsxDEV("tbody", {
159
+ })
160
+ }),
161
+ /* @__PURE__ */ jsxs("tbody", {
162
162
  children: [
163
- /* @__PURE__ */ jsxDEV("tr", {
163
+ /* @__PURE__ */ jsxs("tr", {
164
164
  className: "border-b border-white/10",
165
165
  children: [
166
- /* @__PURE__ */ jsxDEV("td", {
166
+ /* @__PURE__ */ jsx("td", {
167
167
  className: "py-3 pr-4 font-medium",
168
168
  children: "Website Analytics"
169
- }, undefined, false, undefined, this),
170
- /* @__PURE__ */ jsxDEV("td", {
169
+ }),
170
+ /* @__PURE__ */ jsx("td", {
171
171
  className: "py-3 pr-4",
172
172
  children: "Page views, click events, device type, browser, approximate location (country level), session duration, referral source"
173
- }, undefined, false, undefined, this),
174
- /* @__PURE__ */ jsxDEV("td", {
173
+ }),
174
+ /* @__PURE__ */ jsx("td", {
175
175
  className: "py-3",
176
176
  children: "When browsing our website (with consent in EU/EEA)"
177
- }, undefined, false, undefined, this)
177
+ })
178
178
  ]
179
- }, undefined, true, undefined, this),
180
- /* @__PURE__ */ jsxDEV("tr", {
179
+ }),
180
+ /* @__PURE__ */ jsxs("tr", {
181
181
  className: "border-b border-white/10",
182
182
  children: [
183
- /* @__PURE__ */ jsxDEV("td", {
183
+ /* @__PURE__ */ jsx("td", {
184
184
  className: "py-3 pr-4 font-medium",
185
185
  children: "Contact / Waitlist"
186
- }, undefined, false, undefined, this),
187
- /* @__PURE__ */ jsxDEV("td", {
186
+ }),
187
+ /* @__PURE__ */ jsx("td", {
188
188
  className: "py-3 pr-4",
189
189
  children: "Name, email address, message content"
190
- }, undefined, false, undefined, this),
191
- /* @__PURE__ */ jsxDEV("td", {
190
+ }),
191
+ /* @__PURE__ */ jsx("td", {
192
192
  className: "py-3",
193
193
  children: "When you submit a form or join our waitlist"
194
- }, undefined, false, undefined, this)
194
+ })
195
195
  ]
196
- }, undefined, true, undefined, this),
197
- /* @__PURE__ */ jsxDEV("tr", {
196
+ }),
197
+ /* @__PURE__ */ jsxs("tr", {
198
198
  className: "border-b border-white/10",
199
199
  children: [
200
- /* @__PURE__ */ jsxDEV("td", {
200
+ /* @__PURE__ */ jsx("td", {
201
201
  className: "py-3 pr-4 font-medium",
202
202
  children: "Account Data"
203
- }, undefined, false, undefined, this),
204
- /* @__PURE__ */ jsxDEV("td", {
203
+ }),
204
+ /* @__PURE__ */ jsxs("td", {
205
205
  className: "py-3 pr-4",
206
206
  children: [
207
- /* @__PURE__ */ jsxDEV("em", {
207
+ /* @__PURE__ */ jsx("em", {
208
208
  children: "Not yet applicable"
209
- }, undefined, false, undefined, this),
209
+ }),
210
210
  " — We do not currently offer user accounts. This section will be updated when accounts are introduced."
211
211
  ]
212
- }, undefined, true, undefined, this),
213
- /* @__PURE__ */ jsxDEV("td", {
212
+ }),
213
+ /* @__PURE__ */ jsx("td", {
214
214
  className: "py-3",
215
215
  children: "—"
216
- }, undefined, false, undefined, this)
216
+ })
217
217
  ]
218
- }, undefined, true, undefined, this),
219
- /* @__PURE__ */ jsxDEV("tr", {
218
+ }),
219
+ /* @__PURE__ */ jsxs("tr", {
220
220
  className: "border-b border-white/10",
221
221
  children: [
222
- /* @__PURE__ */ jsxDEV("td", {
222
+ /* @__PURE__ */ jsx("td", {
223
223
  className: "py-3 pr-4 font-medium",
224
224
  children: "Billing Data"
225
- }, undefined, false, undefined, this),
226
- /* @__PURE__ */ jsxDEV("td", {
225
+ }),
226
+ /* @__PURE__ */ jsxs("td", {
227
227
  className: "py-3 pr-4",
228
228
  children: [
229
- /* @__PURE__ */ jsxDEV("em", {
229
+ /* @__PURE__ */ jsx("em", {
230
230
  children: "Not yet applicable"
231
- }, undefined, false, undefined, this),
231
+ }),
232
232
  " — We do not currently process payments. This section will be updated when billing is introduced."
233
233
  ]
234
- }, undefined, true, undefined, this),
235
- /* @__PURE__ */ jsxDEV("td", {
234
+ }),
235
+ /* @__PURE__ */ jsx("td", {
236
236
  className: "py-3",
237
237
  children: "—"
238
- }, undefined, false, undefined, this)
238
+ })
239
239
  ]
240
- }, undefined, true, undefined, this)
240
+ })
241
241
  ]
242
- }, undefined, true, undefined, this)
242
+ })
243
243
  ]
244
- }, undefined, true, undefined, this)
245
- }, undefined, false, undefined, this)
244
+ })
245
+ })
246
246
  ]
247
- }, undefined, true, undefined, this),
248
- /* @__PURE__ */ jsxDEV("section", {
247
+ }),
248
+ /* @__PURE__ */ jsxs("section", {
249
249
  className: "mt-10 space-y-4",
250
250
  children: [
251
- /* @__PURE__ */ jsxDEV("h2", {
251
+ /* @__PURE__ */ jsx("h2", {
252
252
  className: "text-foreground text-2xl font-bold",
253
253
  children: "4. Why We Process Data (Purposes & Legal Bases)"
254
- }, undefined, false, undefined, this),
255
- /* @__PURE__ */ jsxDEV("p", {
254
+ }),
255
+ /* @__PURE__ */ jsx("p", {
256
256
  className: "text-muted-foreground",
257
257
  children: "Under GDPR, we must have a lawful basis for processing your personal data. We rely on the following:"
258
- }, undefined, false, undefined, this),
259
- /* @__PURE__ */ jsxDEV("div", {
258
+ }),
259
+ /* @__PURE__ */ jsx("div", {
260
260
  className: "overflow-x-auto",
261
- children: /* @__PURE__ */ jsxDEV("table", {
261
+ children: /* @__PURE__ */ jsxs("table", {
262
262
  className: "text-muted-foreground w-full border-collapse text-sm",
263
263
  children: [
264
- /* @__PURE__ */ jsxDEV("thead", {
265
- children: /* @__PURE__ */ jsxDEV("tr", {
264
+ /* @__PURE__ */ jsx("thead", {
265
+ children: /* @__PURE__ */ jsxs("tr", {
266
266
  className: "border-b border-white/20",
267
267
  children: [
268
- /* @__PURE__ */ jsxDEV("th", {
268
+ /* @__PURE__ */ jsx("th", {
269
269
  className: "text-foreground py-3 pr-4 text-left font-semibold",
270
270
  children: "Purpose"
271
- }, undefined, false, undefined, this),
272
- /* @__PURE__ */ jsxDEV("th", {
271
+ }),
272
+ /* @__PURE__ */ jsx("th", {
273
273
  className: "text-foreground py-3 pr-4 text-left font-semibold",
274
274
  children: "Legal Basis"
275
- }, undefined, false, undefined, this),
276
- /* @__PURE__ */ jsxDEV("th", {
275
+ }),
276
+ /* @__PURE__ */ jsx("th", {
277
277
  className: "text-foreground py-3 text-left font-semibold",
278
278
  children: "Details"
279
- }, undefined, false, undefined, this)
279
+ })
280
280
  ]
281
- }, undefined, true, undefined, this)
282
- }, undefined, false, undefined, this),
283
- /* @__PURE__ */ jsxDEV("tbody", {
281
+ })
282
+ }),
283
+ /* @__PURE__ */ jsxs("tbody", {
284
284
  children: [
285
- /* @__PURE__ */ jsxDEV("tr", {
285
+ /* @__PURE__ */ jsxs("tr", {
286
286
  className: "border-b border-white/10",
287
287
  children: [
288
- /* @__PURE__ */ jsxDEV("td", {
288
+ /* @__PURE__ */ jsx("td", {
289
289
  className: "py-3 pr-4 font-medium",
290
290
  children: "Website operation & security"
291
- }, undefined, false, undefined, this),
292
- /* @__PURE__ */ jsxDEV("td", {
291
+ }),
292
+ /* @__PURE__ */ jsx("td", {
293
293
  className: "py-3 pr-4",
294
294
  children: "Legitimate interest"
295
- }, undefined, false, undefined, this),
296
- /* @__PURE__ */ jsxDEV("td", {
295
+ }),
296
+ /* @__PURE__ */ jsx("td", {
297
297
  className: "py-3",
298
298
  children: "Ensuring our website functions correctly, preventing abuse, and maintaining security"
299
- }, undefined, false, undefined, this)
299
+ })
300
300
  ]
301
- }, undefined, true, undefined, this),
302
- /* @__PURE__ */ jsxDEV("tr", {
301
+ }),
302
+ /* @__PURE__ */ jsxs("tr", {
303
303
  className: "border-b border-white/10",
304
304
  children: [
305
- /* @__PURE__ */ jsxDEV("td", {
305
+ /* @__PURE__ */ jsx("td", {
306
306
  className: "py-3 pr-4 font-medium",
307
307
  children: "Analytics & improvement"
308
- }, undefined, false, undefined, this),
309
- /* @__PURE__ */ jsxDEV("td", {
308
+ }),
309
+ /* @__PURE__ */ jsx("td", {
310
310
  className: "py-3 pr-4",
311
311
  children: "Consent"
312
- }, undefined, false, undefined, this),
313
- /* @__PURE__ */ jsxDEV("td", {
312
+ }),
313
+ /* @__PURE__ */ jsx("td", {
314
314
  className: "py-3",
315
315
  children: "Understanding how users interact with our site to improve our services (gated behind consent in EU/EEA)"
316
- }, undefined, false, undefined, this)
316
+ })
317
317
  ]
318
- }, undefined, true, undefined, this),
319
- /* @__PURE__ */ jsxDEV("tr", {
318
+ }),
319
+ /* @__PURE__ */ jsxs("tr", {
320
320
  className: "border-b border-white/10",
321
321
  children: [
322
- /* @__PURE__ */ jsxDEV("td", {
322
+ /* @__PURE__ */ jsx("td", {
323
323
  className: "py-3 pr-4 font-medium",
324
324
  children: "Responding to enquiries"
325
- }, undefined, false, undefined, this),
326
- /* @__PURE__ */ jsxDEV("td", {
325
+ }),
326
+ /* @__PURE__ */ jsx("td", {
327
327
  className: "py-3 pr-4",
328
328
  children: "Legitimate interest / Contract"
329
- }, undefined, false, undefined, this),
330
- /* @__PURE__ */ jsxDEV("td", {
329
+ }),
330
+ /* @__PURE__ */ jsx("td", {
331
331
  className: "py-3",
332
332
  children: "Responding to your questions, processing waitlist requests, or pre-contractual discussions"
333
- }, undefined, false, undefined, this)
333
+ })
334
334
  ]
335
- }, undefined, true, undefined, this),
336
- /* @__PURE__ */ jsxDEV("tr", {
335
+ }),
336
+ /* @__PURE__ */ jsxs("tr", {
337
337
  className: "border-b border-white/10",
338
338
  children: [
339
- /* @__PURE__ */ jsxDEV("td", {
339
+ /* @__PURE__ */ jsx("td", {
340
340
  className: "py-3 pr-4 font-medium",
341
341
  children: "Service delivery"
342
- }, undefined, false, undefined, this),
343
- /* @__PURE__ */ jsxDEV("td", {
342
+ }),
343
+ /* @__PURE__ */ jsx("td", {
344
344
  className: "py-3 pr-4",
345
345
  children: "Contract"
346
- }, undefined, false, undefined, this),
347
- /* @__PURE__ */ jsxDEV("td", {
346
+ }),
347
+ /* @__PURE__ */ jsx("td", {
348
348
  className: "py-3",
349
349
  children: "If/when you become a customer, processing your data is necessary to fulfil our contractual obligations"
350
- }, undefined, false, undefined, this)
350
+ })
351
351
  ]
352
- }, undefined, true, undefined, this),
353
- /* @__PURE__ */ jsxDEV("tr", {
352
+ }),
353
+ /* @__PURE__ */ jsxs("tr", {
354
354
  className: "border-b border-white/10",
355
355
  children: [
356
- /* @__PURE__ */ jsxDEV("td", {
356
+ /* @__PURE__ */ jsx("td", {
357
357
  className: "py-3 pr-4 font-medium",
358
358
  children: "Legal compliance"
359
- }, undefined, false, undefined, this),
360
- /* @__PURE__ */ jsxDEV("td", {
359
+ }),
360
+ /* @__PURE__ */ jsx("td", {
361
361
  className: "py-3 pr-4",
362
362
  children: "Legal obligation"
363
- }, undefined, false, undefined, this),
364
- /* @__PURE__ */ jsxDEV("td", {
363
+ }),
364
+ /* @__PURE__ */ jsx("td", {
365
365
  className: "py-3",
366
366
  children: "Complying with applicable laws, regulations, or legal processes"
367
- }, undefined, false, undefined, this)
367
+ })
368
368
  ]
369
- }, undefined, true, undefined, this)
369
+ })
370
370
  ]
371
- }, undefined, true, undefined, this)
371
+ })
372
372
  ]
373
- }, undefined, true, undefined, this)
374
- }, undefined, false, undefined, this)
373
+ })
374
+ })
375
375
  ]
376
- }, undefined, true, undefined, this),
377
- /* @__PURE__ */ jsxDEV("section", {
376
+ }),
377
+ /* @__PURE__ */ jsxs("section", {
378
378
  className: "mt-10 space-y-4",
379
379
  children: [
380
- /* @__PURE__ */ jsxDEV("h2", {
380
+ /* @__PURE__ */ jsx("h2", {
381
381
  className: "text-foreground text-2xl font-bold",
382
382
  children: "5. Cookies & Tracking"
383
- }, undefined, false, undefined, this),
384
- /* @__PURE__ */ jsxDEV("p", {
383
+ }),
384
+ /* @__PURE__ */ jsxs("p", {
385
385
  className: "text-muted-foreground",
386
386
  children: [
387
387
  "We use ",
388
- /* @__PURE__ */ jsxDEV("strong", {
388
+ /* @__PURE__ */ jsx("strong", {
389
389
  className: "text-foreground",
390
390
  children: "PostHog"
391
- }, undefined, false, undefined, this),
391
+ }),
392
392
  " for product analytics to understand how visitors use our website. PostHog may use cookies or similar technologies to collect this information."
393
393
  ]
394
- }, undefined, true, undefined, this),
395
- /* @__PURE__ */ jsxDEV("h3", {
394
+ }),
395
+ /* @__PURE__ */ jsx("h3", {
396
396
  className: "text-foreground mt-6 text-xl font-semibold",
397
397
  children: "Consent in the EU/EEA"
398
- }, undefined, false, undefined, this),
399
- /* @__PURE__ */ jsxDEV("p", {
398
+ }),
399
+ /* @__PURE__ */ jsx("p", {
400
400
  className: "text-muted-foreground",
401
401
  children: "If you are located in the European Union or European Economic Area, we gate analytics tracking behind your explicit consent. Analytics cookies will not be set until you opt-in through our cookie consent mechanism."
402
- }, undefined, false, undefined, this),
403
- /* @__PURE__ */ jsxDEV("h3", {
402
+ }),
403
+ /* @__PURE__ */ jsx("h3", {
404
404
  className: "text-foreground mt-6 text-xl font-semibold",
405
405
  children: "Withdrawing Consent / Opting Out"
406
- }, undefined, false, undefined, this),
407
- /* @__PURE__ */ jsxDEV("p", {
406
+ }),
407
+ /* @__PURE__ */ jsx("p", {
408
408
  className: "text-muted-foreground",
409
409
  children: "You can withdraw consent or opt out at any time:"
410
- }, undefined, false, undefined, this),
411
- /* @__PURE__ */ jsxDEV("ul", {
410
+ }),
411
+ /* @__PURE__ */ jsxs("ul", {
412
412
  className: "text-muted-foreground list-disc space-y-2 pl-6",
413
413
  children: [
414
- /* @__PURE__ */ jsxDEV("li", {
414
+ /* @__PURE__ */ jsxs("li", {
415
415
  children: [
416
- /* @__PURE__ */ jsxDEV("strong", {
416
+ /* @__PURE__ */ jsx("strong", {
417
417
  children: "Cookie settings:"
418
- }, undefined, false, undefined, this),
418
+ }),
419
419
  " Use the cookie preferences link in our website footer to manage your consent"
420
420
  ]
421
- }, undefined, true, undefined, this),
422
- /* @__PURE__ */ jsxDEV("li", {
421
+ }),
422
+ /* @__PURE__ */ jsxs("li", {
423
423
  children: [
424
- /* @__PURE__ */ jsxDEV("strong", {
424
+ /* @__PURE__ */ jsx("strong", {
425
425
  children: "Browser settings:"
426
- }, undefined, false, undefined, this),
426
+ }),
427
427
  " Configure your browser to reject cookies or alert you when cookies are being set"
428
428
  ]
429
- }, undefined, true, undefined, this),
430
- /* @__PURE__ */ jsxDEV("li", {
429
+ }),
430
+ /* @__PURE__ */ jsxs("li", {
431
431
  children: [
432
- /* @__PURE__ */ jsxDEV("strong", {
432
+ /* @__PURE__ */ jsx("strong", {
433
433
  children: "PostHog opt-out:"
434
- }, undefined, false, undefined, this),
434
+ }),
435
435
  ' PostHog respects "Do Not Track" browser signals where applicable'
436
436
  ]
437
- }, undefined, true, undefined, this)
437
+ })
438
438
  ]
439
- }, undefined, true, undefined, this),
440
- /* @__PURE__ */ jsxDEV("p", {
439
+ }),
440
+ /* @__PURE__ */ jsx("p", {
441
441
  className: "text-muted-foreground",
442
442
  children: "Note: Rejecting analytics cookies will not affect your ability to use our website."
443
- }, undefined, false, undefined, this)
443
+ })
444
444
  ]
445
- }, undefined, true, undefined, this),
446
- /* @__PURE__ */ jsxDEV("section", {
445
+ }),
446
+ /* @__PURE__ */ jsxs("section", {
447
447
  className: "mt-10 space-y-4",
448
448
  children: [
449
- /* @__PURE__ */ jsxDEV("h2", {
449
+ /* @__PURE__ */ jsx("h2", {
450
450
  className: "text-foreground text-2xl font-bold",
451
451
  children: "6. Sub-processors & Recipients"
452
- }, undefined, false, undefined, this),
453
- /* @__PURE__ */ jsxDEV("p", {
452
+ }),
453
+ /* @__PURE__ */ jsx("p", {
454
454
  className: "text-muted-foreground",
455
455
  children: "We share data with the following third-party service providers who process data on our behalf:"
456
- }, undefined, false, undefined, this),
457
- /* @__PURE__ */ jsxDEV("div", {
456
+ }),
457
+ /* @__PURE__ */ jsx("div", {
458
458
  className: "overflow-x-auto",
459
- children: /* @__PURE__ */ jsxDEV("table", {
459
+ children: /* @__PURE__ */ jsxs("table", {
460
460
  className: "text-muted-foreground w-full border-collapse text-sm",
461
461
  children: [
462
- /* @__PURE__ */ jsxDEV("thead", {
463
- children: /* @__PURE__ */ jsxDEV("tr", {
462
+ /* @__PURE__ */ jsx("thead", {
463
+ children: /* @__PURE__ */ jsxs("tr", {
464
464
  className: "border-b border-white/20",
465
465
  children: [
466
- /* @__PURE__ */ jsxDEV("th", {
466
+ /* @__PURE__ */ jsx("th", {
467
467
  className: "text-foreground py-3 pr-4 text-left font-semibold",
468
468
  children: "Provider"
469
- }, undefined, false, undefined, this),
470
- /* @__PURE__ */ jsxDEV("th", {
469
+ }),
470
+ /* @__PURE__ */ jsx("th", {
471
471
  className: "text-foreground py-3 pr-4 text-left font-semibold",
472
472
  children: "Purpose"
473
- }, undefined, false, undefined, this),
474
- /* @__PURE__ */ jsxDEV("th", {
473
+ }),
474
+ /* @__PURE__ */ jsx("th", {
475
475
  className: "text-foreground py-3 text-left font-semibold",
476
476
  children: "Location"
477
- }, undefined, false, undefined, this)
477
+ })
478
478
  ]
479
- }, undefined, true, undefined, this)
480
- }, undefined, false, undefined, this),
481
- /* @__PURE__ */ jsxDEV("tbody", {
479
+ })
480
+ }),
481
+ /* @__PURE__ */ jsxs("tbody", {
482
482
  children: [
483
- /* @__PURE__ */ jsxDEV("tr", {
483
+ /* @__PURE__ */ jsxs("tr", {
484
484
  className: "border-b border-white/10",
485
485
  children: [
486
- /* @__PURE__ */ jsxDEV("td", {
486
+ /* @__PURE__ */ jsx("td", {
487
487
  className: "py-3 pr-4 font-medium",
488
488
  children: "PostHog"
489
- }, undefined, false, undefined, this),
490
- /* @__PURE__ */ jsxDEV("td", {
489
+ }),
490
+ /* @__PURE__ */ jsx("td", {
491
491
  className: "py-3 pr-4",
492
492
  children: "Product analytics"
493
- }, undefined, false, undefined, this),
494
- /* @__PURE__ */ jsxDEV("td", {
493
+ }),
494
+ /* @__PURE__ */ jsx("td", {
495
495
  className: "py-3",
496
496
  children: "EU (PostHog Cloud EU) or US"
497
- }, undefined, false, undefined, this)
497
+ })
498
498
  ]
499
- }, undefined, true, undefined, this),
500
- /* @__PURE__ */ jsxDEV("tr", {
499
+ }),
500
+ /* @__PURE__ */ jsxs("tr", {
501
501
  className: "border-b border-white/10",
502
502
  children: [
503
- /* @__PURE__ */ jsxDEV("td", {
503
+ /* @__PURE__ */ jsx("td", {
504
504
  className: "py-3 pr-4 font-medium",
505
505
  children: "Vercel"
506
- }, undefined, false, undefined, this),
507
- /* @__PURE__ */ jsxDEV("td", {
506
+ }),
507
+ /* @__PURE__ */ jsx("td", {
508
508
  className: "py-3 pr-4",
509
509
  children: "Website hosting & CDN"
510
- }, undefined, false, undefined, this),
511
- /* @__PURE__ */ jsxDEV("td", {
510
+ }),
511
+ /* @__PURE__ */ jsx("td", {
512
512
  className: "py-3",
513
513
  children: "Global (including EU regions)"
514
- }, undefined, false, undefined, this)
514
+ })
515
515
  ]
516
- }, undefined, true, undefined, this),
517
- /* @__PURE__ */ jsxDEV("tr", {
516
+ }),
517
+ /* @__PURE__ */ jsxs("tr", {
518
518
  className: "border-b border-white/10",
519
519
  children: [
520
- /* @__PURE__ */ jsxDEV("td", {
520
+ /* @__PURE__ */ jsx("td", {
521
521
  className: "py-3 pr-4 font-medium",
522
522
  children: "Scaleway"
523
- }, undefined, false, undefined, this),
524
- /* @__PURE__ */ jsxDEV("td", {
523
+ }),
524
+ /* @__PURE__ */ jsx("td", {
525
525
  className: "py-3 pr-4",
526
526
  children: "Cloud infrastructure"
527
- }, undefined, false, undefined, this),
528
- /* @__PURE__ */ jsxDEV("td", {
527
+ }),
528
+ /* @__PURE__ */ jsx("td", {
529
529
  className: "py-3",
530
530
  children: "France / EU"
531
- }, undefined, false, undefined, this)
531
+ })
532
532
  ]
533
- }, undefined, true, undefined, this),
534
- /* @__PURE__ */ jsxDEV("tr", {
533
+ }),
534
+ /* @__PURE__ */ jsxs("tr", {
535
535
  className: "border-b border-white/10",
536
536
  children: [
537
- /* @__PURE__ */ jsxDEV("td", {
537
+ /* @__PURE__ */ jsxs("td", {
538
538
  className: "py-3 pr-4 font-medium",
539
539
  children: [
540
540
  "Email provider ",
541
- /* @__PURE__ */ jsxDEV("em", {
541
+ /* @__PURE__ */ jsx("em", {
542
542
  children: "(TBD)"
543
- }, undefined, false, undefined, this)
543
+ })
544
544
  ]
545
- }, undefined, true, undefined, this),
546
- /* @__PURE__ */ jsxDEV("td", {
545
+ }),
546
+ /* @__PURE__ */ jsx("td", {
547
547
  className: "py-3 pr-4",
548
548
  children: "Transactional & marketing emails"
549
- }, undefined, false, undefined, this),
550
- /* @__PURE__ */ jsxDEV("td", {
549
+ }),
550
+ /* @__PURE__ */ jsx("td", {
551
551
  className: "py-3",
552
- children: /* @__PURE__ */ jsxDEV("em", {
552
+ children: /* @__PURE__ */ jsx("em", {
553
553
  children: "To be confirmed"
554
- }, undefined, false, undefined, this)
555
- }, undefined, false, undefined, this)
554
+ })
555
+ })
556
556
  ]
557
- }, undefined, true, undefined, this),
558
- /* @__PURE__ */ jsxDEV("tr", {
557
+ }),
558
+ /* @__PURE__ */ jsxs("tr", {
559
559
  className: "border-b border-white/10",
560
560
  children: [
561
- /* @__PURE__ */ jsxDEV("td", {
561
+ /* @__PURE__ */ jsxs("td", {
562
562
  className: "py-3 pr-4 font-medium",
563
563
  children: [
564
564
  "Error tracking ",
565
- /* @__PURE__ */ jsxDEV("em", {
565
+ /* @__PURE__ */ jsx("em", {
566
566
  children: "(TBD)"
567
- }, undefined, false, undefined, this)
567
+ })
568
568
  ]
569
- }, undefined, true, undefined, this),
570
- /* @__PURE__ */ jsxDEV("td", {
569
+ }),
570
+ /* @__PURE__ */ jsx("td", {
571
571
  className: "py-3 pr-4",
572
572
  children: "Application error monitoring"
573
- }, undefined, false, undefined, this),
574
- /* @__PURE__ */ jsxDEV("td", {
573
+ }),
574
+ /* @__PURE__ */ jsx("td", {
575
575
  className: "py-3",
576
- children: /* @__PURE__ */ jsxDEV("em", {
576
+ children: /* @__PURE__ */ jsx("em", {
577
577
  children: "To be confirmed"
578
- }, undefined, false, undefined, this)
579
- }, undefined, false, undefined, this)
578
+ })
579
+ })
580
580
  ]
581
- }, undefined, true, undefined, this),
582
- /* @__PURE__ */ jsxDEV("tr", {
581
+ }),
582
+ /* @__PURE__ */ jsxs("tr", {
583
583
  className: "border-b border-white/10",
584
584
  children: [
585
- /* @__PURE__ */ jsxDEV("td", {
585
+ /* @__PURE__ */ jsxs("td", {
586
586
  className: "py-3 pr-4 font-medium",
587
587
  children: [
588
588
  "Payment processor ",
589
- /* @__PURE__ */ jsxDEV("em", {
589
+ /* @__PURE__ */ jsx("em", {
590
590
  children: "(TBD)"
591
- }, undefined, false, undefined, this)
591
+ })
592
592
  ]
593
- }, undefined, true, undefined, this),
594
- /* @__PURE__ */ jsxDEV("td", {
593
+ }),
594
+ /* @__PURE__ */ jsx("td", {
595
595
  className: "py-3 pr-4",
596
596
  children: "Billing & subscription management"
597
- }, undefined, false, undefined, this),
598
- /* @__PURE__ */ jsxDEV("td", {
597
+ }),
598
+ /* @__PURE__ */ jsx("td", {
599
599
  className: "py-3",
600
- children: /* @__PURE__ */ jsxDEV("em", {
600
+ children: /* @__PURE__ */ jsx("em", {
601
601
  children: "To be confirmed"
602
- }, undefined, false, undefined, this)
603
- }, undefined, false, undefined, this)
602
+ })
603
+ })
604
604
  ]
605
- }, undefined, true, undefined, this)
605
+ })
606
606
  ]
607
- }, undefined, true, undefined, this)
607
+ })
608
608
  ]
609
- }, undefined, true, undefined, this)
610
- }, undefined, false, undefined, this),
611
- /* @__PURE__ */ jsxDEV("p", {
609
+ })
610
+ }),
611
+ /* @__PURE__ */ jsx("p", {
612
612
  className: "text-muted-foreground mt-4",
613
613
  children: "We carefully select our sub-processors and require them to maintain appropriate security measures and only process data according to our instructions."
614
- }, undefined, false, undefined, this)
614
+ })
615
615
  ]
616
- }, undefined, true, undefined, this),
617
- /* @__PURE__ */ jsxDEV("section", {
616
+ }),
617
+ /* @__PURE__ */ jsxs("section", {
618
618
  className: "mt-10 space-y-4",
619
619
  children: [
620
- /* @__PURE__ */ jsxDEV("h2", {
620
+ /* @__PURE__ */ jsx("h2", {
621
621
  className: "text-foreground text-2xl font-bold",
622
622
  children: "7. International Data Transfers"
623
- }, undefined, false, undefined, this),
624
- /* @__PURE__ */ jsxDEV("p", {
623
+ }),
624
+ /* @__PURE__ */ jsx("p", {
625
625
  className: "text-muted-foreground",
626
626
  children: "As a France-based company, we aim to keep your data within the European Union wherever possible."
627
- }, undefined, false, undefined, this),
628
- /* @__PURE__ */ jsxDEV("p", {
627
+ }),
628
+ /* @__PURE__ */ jsx("p", {
629
629
  className: "text-muted-foreground",
630
630
  children: "However, some of our service providers may process data outside the EU/EEA. When this occurs, we ensure appropriate safeguards are in place, such as:"
631
- }, undefined, false, undefined, this),
632
- /* @__PURE__ */ jsxDEV("ul", {
631
+ }),
632
+ /* @__PURE__ */ jsxs("ul", {
633
633
  className: "text-muted-foreground list-disc space-y-2 pl-6",
634
634
  children: [
635
- /* @__PURE__ */ jsxDEV("li", {
635
+ /* @__PURE__ */ jsxs("li", {
636
636
  children: [
637
- /* @__PURE__ */ jsxDEV("strong", {
637
+ /* @__PURE__ */ jsx("strong", {
638
638
  children: "Standard Contractual Clauses (SCCs)"
639
- }, undefined, false, undefined, this),
639
+ }),
640
640
  " approved by the European Commission"
641
641
  ]
642
- }, undefined, true, undefined, this),
643
- /* @__PURE__ */ jsxDEV("li", {
642
+ }),
643
+ /* @__PURE__ */ jsxs("li", {
644
644
  children: [
645
- /* @__PURE__ */ jsxDEV("strong", {
645
+ /* @__PURE__ */ jsx("strong", {
646
646
  children: "Adequacy decisions"
647
- }, undefined, false, undefined, this),
647
+ }),
648
648
  " where the recipient country has been deemed to provide adequate protection"
649
649
  ]
650
- }, undefined, true, undefined, this),
651
- /* @__PURE__ */ jsxDEV("li", {
650
+ }),
651
+ /* @__PURE__ */ jsxs("li", {
652
652
  children: [
653
- /* @__PURE__ */ jsxDEV("strong", {
653
+ /* @__PURE__ */ jsx("strong", {
654
654
  children: "Binding Corporate Rules"
655
- }, undefined, false, undefined, this),
655
+ }),
656
656
  " where applicable"
657
657
  ]
658
- }, undefined, true, undefined, this)
658
+ })
659
659
  ]
660
- }, undefined, true, undefined, this),
661
- /* @__PURE__ */ jsxDEV("p", {
660
+ }),
661
+ /* @__PURE__ */ jsxs("p", {
662
662
  className: "text-muted-foreground",
663
663
  children: [
664
664
  "You may request more information about these safeguards by contacting us at",
665
665
  " ",
666
- /* @__PURE__ */ jsxDEV("a", {
666
+ /* @__PURE__ */ jsx("a", {
667
667
  href: "mailto:privacy@contractspec.io",
668
668
  className: "text-primary hover:underline",
669
669
  children: "privacy@contractspec.io"
670
- }, undefined, false, undefined, this),
670
+ }),
671
671
  "."
672
672
  ]
673
- }, undefined, true, undefined, this)
673
+ })
674
674
  ]
675
- }, undefined, true, undefined, this),
676
- /* @__PURE__ */ jsxDEV("section", {
675
+ }),
676
+ /* @__PURE__ */ jsxs("section", {
677
677
  className: "mt-10 space-y-4",
678
678
  children: [
679
- /* @__PURE__ */ jsxDEV("h2", {
679
+ /* @__PURE__ */ jsx("h2", {
680
680
  className: "text-foreground text-2xl font-bold",
681
681
  children: "8. Data Retention"
682
- }, undefined, false, undefined, this),
683
- /* @__PURE__ */ jsxDEV("p", {
682
+ }),
683
+ /* @__PURE__ */ jsx("p", {
684
684
  className: "text-muted-foreground",
685
685
  children: "We retain your personal data only for as long as necessary to fulfil the purposes for which it was collected:"
686
- }, undefined, false, undefined, this),
687
- /* @__PURE__ */ jsxDEV("div", {
686
+ }),
687
+ /* @__PURE__ */ jsx("div", {
688
688
  className: "overflow-x-auto",
689
- children: /* @__PURE__ */ jsxDEV("table", {
689
+ children: /* @__PURE__ */ jsxs("table", {
690
690
  className: "text-muted-foreground w-full border-collapse text-sm",
691
691
  children: [
692
- /* @__PURE__ */ jsxDEV("thead", {
693
- children: /* @__PURE__ */ jsxDEV("tr", {
692
+ /* @__PURE__ */ jsx("thead", {
693
+ children: /* @__PURE__ */ jsxs("tr", {
694
694
  className: "border-b border-white/20",
695
695
  children: [
696
- /* @__PURE__ */ jsxDEV("th", {
696
+ /* @__PURE__ */ jsx("th", {
697
697
  className: "text-foreground py-3 pr-4 text-left font-semibold",
698
698
  children: "Data Type"
699
- }, undefined, false, undefined, this),
700
- /* @__PURE__ */ jsxDEV("th", {
699
+ }),
700
+ /* @__PURE__ */ jsx("th", {
701
701
  className: "text-foreground py-3 text-left font-semibold",
702
702
  children: "Retention Period"
703
- }, undefined, false, undefined, this)
703
+ })
704
704
  ]
705
- }, undefined, true, undefined, this)
706
- }, undefined, false, undefined, this),
707
- /* @__PURE__ */ jsxDEV("tbody", {
705
+ })
706
+ }),
707
+ /* @__PURE__ */ jsxs("tbody", {
708
708
  children: [
709
- /* @__PURE__ */ jsxDEV("tr", {
709
+ /* @__PURE__ */ jsxs("tr", {
710
710
  className: "border-b border-white/10",
711
711
  children: [
712
- /* @__PURE__ */ jsxDEV("td", {
712
+ /* @__PURE__ */ jsx("td", {
713
713
  className: "py-3 pr-4 font-medium",
714
714
  children: "Analytics data"
715
- }, undefined, false, undefined, this),
716
- /* @__PURE__ */ jsxDEV("td", {
715
+ }),
716
+ /* @__PURE__ */ jsx("td", {
717
717
  className: "py-3",
718
718
  children: "24 months from collection"
719
- }, undefined, false, undefined, this)
719
+ })
720
720
  ]
721
- }, undefined, true, undefined, this),
722
- /* @__PURE__ */ jsxDEV("tr", {
721
+ }),
722
+ /* @__PURE__ */ jsxs("tr", {
723
723
  className: "border-b border-white/10",
724
724
  children: [
725
- /* @__PURE__ */ jsxDEV("td", {
725
+ /* @__PURE__ */ jsx("td", {
726
726
  className: "py-3 pr-4 font-medium",
727
727
  children: "Waitlist / contact form data"
728
- }, undefined, false, undefined, this),
729
- /* @__PURE__ */ jsxDEV("td", {
728
+ }),
729
+ /* @__PURE__ */ jsx("td", {
730
730
  className: "py-3",
731
731
  children: "Until you request deletion or 24 months after last interaction"
732
- }, undefined, false, undefined, this)
732
+ })
733
733
  ]
734
- }, undefined, true, undefined, this),
735
- /* @__PURE__ */ jsxDEV("tr", {
734
+ }),
735
+ /* @__PURE__ */ jsxs("tr", {
736
736
  className: "border-b border-white/10",
737
737
  children: [
738
- /* @__PURE__ */ jsxDEV("td", {
738
+ /* @__PURE__ */ jsx("td", {
739
739
  className: "py-3 pr-4 font-medium",
740
740
  children: "Account data (when applicable)"
741
- }, undefined, false, undefined, this),
742
- /* @__PURE__ */ jsxDEV("td", {
741
+ }),
742
+ /* @__PURE__ */ jsx("td", {
743
743
  className: "py-3",
744
744
  children: "Duration of account plus 12 months after closure"
745
- }, undefined, false, undefined, this)
745
+ })
746
746
  ]
747
- }, undefined, true, undefined, this),
748
- /* @__PURE__ */ jsxDEV("tr", {
747
+ }),
748
+ /* @__PURE__ */ jsxs("tr", {
749
749
  className: "border-b border-white/10",
750
750
  children: [
751
- /* @__PURE__ */ jsxDEV("td", {
751
+ /* @__PURE__ */ jsx("td", {
752
752
  className: "py-3 pr-4 font-medium",
753
753
  children: "Billing records (when applicable)"
754
- }, undefined, false, undefined, this),
755
- /* @__PURE__ */ jsxDEV("td", {
754
+ }),
755
+ /* @__PURE__ */ jsx("td", {
756
756
  className: "py-3",
757
757
  children: "10 years (French legal requirement)"
758
- }, undefined, false, undefined, this)
758
+ })
759
759
  ]
760
- }, undefined, true, undefined, this)
760
+ })
761
761
  ]
762
- }, undefined, true, undefined, this)
762
+ })
763
763
  ]
764
- }, undefined, true, undefined, this)
765
- }, undefined, false, undefined, this),
766
- /* @__PURE__ */ jsxDEV("p", {
764
+ })
765
+ }),
766
+ /* @__PURE__ */ jsx("p", {
767
767
  className: "text-muted-foreground mt-4",
768
768
  children: "We may retain certain data longer if required by law or to establish, exercise, or defend legal claims."
769
- }, undefined, false, undefined, this)
769
+ })
770
770
  ]
771
- }, undefined, true, undefined, this),
772
- /* @__PURE__ */ jsxDEV("section", {
771
+ }),
772
+ /* @__PURE__ */ jsxs("section", {
773
773
  className: "mt-10 space-y-4",
774
774
  children: [
775
- /* @__PURE__ */ jsxDEV("h2", {
775
+ /* @__PURE__ */ jsx("h2", {
776
776
  className: "text-foreground text-2xl font-bold",
777
777
  children: "9. Your Rights Under GDPR"
778
- }, undefined, false, undefined, this),
779
- /* @__PURE__ */ jsxDEV("p", {
778
+ }),
779
+ /* @__PURE__ */ jsx("p", {
780
780
  className: "text-muted-foreground",
781
781
  children: "As a data subject in the EU, you have the following rights:"
782
- }, undefined, false, undefined, this),
783
- /* @__PURE__ */ jsxDEV("ul", {
782
+ }),
783
+ /* @__PURE__ */ jsxs("ul", {
784
784
  className: "text-muted-foreground list-disc space-y-3 pl-6",
785
785
  children: [
786
- /* @__PURE__ */ jsxDEV("li", {
786
+ /* @__PURE__ */ jsxs("li", {
787
787
  children: [
788
- /* @__PURE__ */ jsxDEV("strong", {
788
+ /* @__PURE__ */ jsx("strong", {
789
789
  className: "text-foreground",
790
790
  children: "Right to access"
791
- }, undefined, false, undefined, this),
791
+ }),
792
792
  " — Request a copy of the personal data we hold about you"
793
793
  ]
794
- }, undefined, true, undefined, this),
795
- /* @__PURE__ */ jsxDEV("li", {
794
+ }),
795
+ /* @__PURE__ */ jsxs("li", {
796
796
  children: [
797
- /* @__PURE__ */ jsxDEV("strong", {
797
+ /* @__PURE__ */ jsx("strong", {
798
798
  className: "text-foreground",
799
799
  children: "Right to rectification"
800
- }, undefined, false, undefined, this),
800
+ }),
801
801
  " ",
802
802
  "— Request correction of inaccurate or incomplete data"
803
803
  ]
804
- }, undefined, true, undefined, this),
805
- /* @__PURE__ */ jsxDEV("li", {
804
+ }),
805
+ /* @__PURE__ */ jsxs("li", {
806
806
  children: [
807
- /* @__PURE__ */ jsxDEV("strong", {
807
+ /* @__PURE__ */ jsx("strong", {
808
808
  className: "text-foreground",
809
809
  children: 'Right to erasure ("right to be forgotten")'
810
- }, undefined, false, undefined, this),
810
+ }),
811
811
  " ",
812
812
  "— Request deletion of your personal data in certain circumstances"
813
813
  ]
814
- }, undefined, true, undefined, this),
815
- /* @__PURE__ */ jsxDEV("li", {
814
+ }),
815
+ /* @__PURE__ */ jsxs("li", {
816
816
  children: [
817
- /* @__PURE__ */ jsxDEV("strong", {
817
+ /* @__PURE__ */ jsx("strong", {
818
818
  className: "text-foreground",
819
819
  children: "Right to restriction"
820
- }, undefined, false, undefined, this),
820
+ }),
821
821
  " ",
822
822
  "— Request that we limit how we use your data"
823
823
  ]
824
- }, undefined, true, undefined, this),
825
- /* @__PURE__ */ jsxDEV("li", {
824
+ }),
825
+ /* @__PURE__ */ jsxs("li", {
826
826
  children: [
827
- /* @__PURE__ */ jsxDEV("strong", {
827
+ /* @__PURE__ */ jsx("strong", {
828
828
  className: "text-foreground",
829
829
  children: "Right to data portability"
830
- }, undefined, false, undefined, this),
830
+ }),
831
831
  " ",
832
832
  "— Receive your data in a structured, machine-readable format"
833
833
  ]
834
- }, undefined, true, undefined, this),
835
- /* @__PURE__ */ jsxDEV("li", {
834
+ }),
835
+ /* @__PURE__ */ jsxs("li", {
836
836
  children: [
837
- /* @__PURE__ */ jsxDEV("strong", {
837
+ /* @__PURE__ */ jsx("strong", {
838
838
  className: "text-foreground",
839
839
  children: "Right to object"
840
- }, undefined, false, undefined, this),
840
+ }),
841
841
  " — Object to processing based on legitimate interests or direct marketing"
842
842
  ]
843
- }, undefined, true, undefined, this),
844
- /* @__PURE__ */ jsxDEV("li", {
843
+ }),
844
+ /* @__PURE__ */ jsxs("li", {
845
845
  children: [
846
- /* @__PURE__ */ jsxDEV("strong", {
846
+ /* @__PURE__ */ jsx("strong", {
847
847
  className: "text-foreground",
848
848
  children: "Right to withdraw consent"
849
- }, undefined, false, undefined, this),
849
+ }),
850
850
  " ",
851
851
  "— Where processing is based on consent, withdraw it at any time"
852
852
  ]
853
- }, undefined, true, undefined, this)
853
+ })
854
854
  ]
855
- }, undefined, true, undefined, this),
856
- /* @__PURE__ */ jsxDEV("p", {
855
+ }),
856
+ /* @__PURE__ */ jsxs("p", {
857
857
  className: "text-muted-foreground mt-4",
858
858
  children: [
859
859
  "To exercise any of these rights, please contact us at",
860
860
  " ",
861
- /* @__PURE__ */ jsxDEV("a", {
861
+ /* @__PURE__ */ jsx("a", {
862
862
  href: "mailto:privacy@contractspec.io",
863
863
  className: "text-primary hover:underline",
864
864
  children: "privacy@contractspec.io"
865
- }, undefined, false, undefined, this),
865
+ }),
866
866
  ". We will respond within one month as required by GDPR."
867
867
  ]
868
- }, undefined, true, undefined, this)
868
+ })
869
869
  ]
870
- }, undefined, true, undefined, this),
871
- /* @__PURE__ */ jsxDEV("section", {
870
+ }),
871
+ /* @__PURE__ */ jsxs("section", {
872
872
  className: "mt-10 space-y-4",
873
873
  children: [
874
- /* @__PURE__ */ jsxDEV("h2", {
874
+ /* @__PURE__ */ jsx("h2", {
875
875
  className: "text-foreground text-2xl font-bold",
876
876
  children: "10. Security"
877
- }, undefined, false, undefined, this),
878
- /* @__PURE__ */ jsxDEV("p", {
877
+ }),
878
+ /* @__PURE__ */ jsx("p", {
879
879
  className: "text-muted-foreground",
880
880
  children: "We implement appropriate technical and organisational measures to protect your personal data against unauthorised access, alteration, disclosure, or destruction. These measures include:"
881
- }, undefined, false, undefined, this),
882
- /* @__PURE__ */ jsxDEV("ul", {
881
+ }),
882
+ /* @__PURE__ */ jsxs("ul", {
883
883
  className: "text-muted-foreground list-disc space-y-2 pl-6",
884
884
  children: [
885
- /* @__PURE__ */ jsxDEV("li", {
885
+ /* @__PURE__ */ jsx("li", {
886
886
  children: "Encryption of data in transit (TLS/HTTPS)"
887
- }, undefined, false, undefined, this),
888
- /* @__PURE__ */ jsxDEV("li", {
887
+ }),
888
+ /* @__PURE__ */ jsx("li", {
889
889
  children: "Encryption of data at rest where appropriate"
890
- }, undefined, false, undefined, this),
891
- /* @__PURE__ */ jsxDEV("li", {
890
+ }),
891
+ /* @__PURE__ */ jsx("li", {
892
892
  children: "Access controls and authentication"
893
- }, undefined, false, undefined, this),
894
- /* @__PURE__ */ jsxDEV("li", {
893
+ }),
894
+ /* @__PURE__ */ jsx("li", {
895
895
  children: "Regular security reviews and updates"
896
- }, undefined, false, undefined, this),
897
- /* @__PURE__ */ jsxDEV("li", {
896
+ }),
897
+ /* @__PURE__ */ jsx("li", {
898
898
  children: "Careful vetting of sub-processors"
899
- }, undefined, false, undefined, this)
899
+ })
900
900
  ]
901
- }, undefined, true, undefined, this),
902
- /* @__PURE__ */ jsxDEV("p", {
901
+ }),
902
+ /* @__PURE__ */ jsx("p", {
903
903
  className: "text-muted-foreground",
904
904
  children: "While we strive to protect your data, no method of transmission over the Internet or electronic storage is 100% secure. We cannot guarantee absolute security but are committed to continuous improvement."
905
- }, undefined, false, undefined, this)
905
+ })
906
906
  ]
907
- }, undefined, true, undefined, this),
908
- /* @__PURE__ */ jsxDEV("section", {
907
+ }),
908
+ /* @__PURE__ */ jsxs("section", {
909
909
  className: "mt-10 space-y-4",
910
910
  children: [
911
- /* @__PURE__ */ jsxDEV("h2", {
911
+ /* @__PURE__ */ jsx("h2", {
912
912
  className: "text-foreground text-2xl font-bold",
913
913
  children: "11. Contact & Complaints"
914
- }, undefined, false, undefined, this),
915
- /* @__PURE__ */ jsxDEV("p", {
914
+ }),
915
+ /* @__PURE__ */ jsx("p", {
916
916
  className: "text-muted-foreground",
917
917
  children: "If you have any questions, concerns, or requests regarding this privacy policy or our data practices, please contact us:"
918
- }, undefined, false, undefined, this),
919
- /* @__PURE__ */ jsxDEV("div", {
918
+ }),
919
+ /* @__PURE__ */ jsxs("div", {
920
920
  className: "text-muted-foreground rounded-lg border border-white/10 bg-white/5 p-4",
921
921
  children: [
922
- /* @__PURE__ */ jsxDEV("p", {
922
+ /* @__PURE__ */ jsxs("p", {
923
923
  children: [
924
- /* @__PURE__ */ jsxDEV("strong", {
924
+ /* @__PURE__ */ jsx("strong", {
925
925
  className: "text-foreground",
926
926
  children: "Email:"
927
- }, undefined, false, undefined, this),
927
+ }),
928
928
  " ",
929
- /* @__PURE__ */ jsxDEV("a", {
929
+ /* @__PURE__ */ jsx("a", {
930
930
  href: "mailto:privacy@contractspec.io",
931
931
  className: "text-primary hover:underline",
932
932
  children: "privacy@contractspec.io"
933
- }, undefined, false, undefined, this)
933
+ })
934
934
  ]
935
- }, undefined, true, undefined, this),
936
- /* @__PURE__ */ jsxDEV("p", {
935
+ }),
936
+ /* @__PURE__ */ jsxs("p", {
937
937
  className: "mt-2",
938
938
  children: [
939
- /* @__PURE__ */ jsxDEV("strong", {
939
+ /* @__PURE__ */ jsx("strong", {
940
940
  className: "text-foreground",
941
941
  children: "Address:"
942
- }, undefined, false, undefined, this),
942
+ }),
943
943
  " CHAMAN VENTURES, 229 rue Saint-Honoré, 75001 Paris, France"
944
944
  ]
945
- }, undefined, true, undefined, this)
945
+ })
946
946
  ]
947
- }, undefined, true, undefined, this),
948
- /* @__PURE__ */ jsxDEV("h3", {
947
+ }),
948
+ /* @__PURE__ */ jsx("h3", {
949
949
  className: "text-foreground mt-6 text-xl font-semibold",
950
950
  children: "Supervisory Authority"
951
- }, undefined, false, undefined, this),
952
- /* @__PURE__ */ jsxDEV("p", {
951
+ }),
952
+ /* @__PURE__ */ jsx("p", {
953
953
  className: "text-muted-foreground",
954
954
  children: "If you are not satisfied with our response or believe we are processing your data unlawfully, you have the right to lodge a complaint with a supervisory authority. In France, the relevant authority is:"
955
- }, undefined, false, undefined, this),
956
- /* @__PURE__ */ jsxDEV("div", {
955
+ }),
956
+ /* @__PURE__ */ jsxs("div", {
957
957
  className: "text-muted-foreground rounded-lg border border-white/10 bg-white/5 p-4",
958
958
  children: [
959
- /* @__PURE__ */ jsxDEV("p", {
960
- children: /* @__PURE__ */ jsxDEV("strong", {
959
+ /* @__PURE__ */ jsx("p", {
960
+ children: /* @__PURE__ */ jsx("strong", {
961
961
  className: "text-foreground",
962
962
  children: "Commission Nationale de l'Informatique et des Libertés (CNIL)"
963
- }, undefined, false, undefined, this)
964
- }, undefined, false, undefined, this),
965
- /* @__PURE__ */ jsxDEV("p", {
963
+ })
964
+ }),
965
+ /* @__PURE__ */ jsx("p", {
966
966
  children: "3 Place de Fontenoy, TSA 80715, 75334 Paris Cedex 07"
967
- }, undefined, false, undefined, this),
968
- /* @__PURE__ */ jsxDEV("p", {
967
+ }),
968
+ /* @__PURE__ */ jsxs("p", {
969
969
  children: [
970
970
  "Website:",
971
971
  " ",
972
- /* @__PURE__ */ jsxDEV("a", {
972
+ /* @__PURE__ */ jsx("a", {
973
973
  href: "https://www.cnil.fr",
974
974
  target: "_blank",
975
975
  rel: "noopener noreferrer",
976
976
  className: "text-primary hover:underline",
977
977
  children: "www.cnil.fr"
978
- }, undefined, false, undefined, this)
978
+ })
979
979
  ]
980
- }, undefined, true, undefined, this)
980
+ })
981
981
  ]
982
- }, undefined, true, undefined, this)
982
+ })
983
983
  ]
984
- }, undefined, true, undefined, this),
985
- /* @__PURE__ */ jsxDEV("section", {
984
+ }),
985
+ /* @__PURE__ */ jsxs("section", {
986
986
  className: "mt-10 space-y-4",
987
987
  children: [
988
- /* @__PURE__ */ jsxDEV("h2", {
988
+ /* @__PURE__ */ jsx("h2", {
989
989
  className: "text-foreground text-2xl font-bold",
990
990
  children: "12. Changes to This Policy"
991
- }, undefined, false, undefined, this),
992
- /* @__PURE__ */ jsxDEV("p", {
991
+ }),
992
+ /* @__PURE__ */ jsx("p", {
993
993
  className: "text-muted-foreground",
994
994
  children: 'We may update this privacy policy from time to time to reflect changes in our practices, technology, legal requirements, or for other operational reasons. We will notify you of any material changes by updating the "Last updated" date at the top of this page.'
995
- }, undefined, false, undefined, this),
996
- /* @__PURE__ */ jsxDEV("p", {
995
+ }),
996
+ /* @__PURE__ */ jsx("p", {
997
997
  className: "text-muted-foreground",
998
998
  children: "We encourage you to review this policy periodically to stay informed about how we protect your data."
999
- }, undefined, false, undefined, this)
999
+ })
1000
1000
  ]
1001
- }, undefined, true, undefined, this),
1002
- /* @__PURE__ */ jsxDEV("div", {
1001
+ }),
1002
+ /* @__PURE__ */ jsx("div", {
1003
1003
  className: "mt-12 border-t border-white/10 pt-8",
1004
- children: /* @__PURE__ */ jsxDEV("p", {
1004
+ children: /* @__PURE__ */ jsxs("p", {
1005
1005
  className: "text-muted-foreground text-sm",
1006
1006
  children: [
1007
1007
  "For questions about this privacy policy, please contact us at",
1008
1008
  " ",
1009
- /* @__PURE__ */ jsxDEV("a", {
1009
+ /* @__PURE__ */ jsx("a", {
1010
1010
  href: "mailto:privacy@contractspec.io",
1011
1011
  className: "text-primary hover:underline",
1012
1012
  children: "privacy@contractspec.io"
1013
- }, undefined, false, undefined, this)
1013
+ })
1014
1014
  ]
1015
- }, undefined, true, undefined, this)
1016
- }, undefined, false, undefined, this)
1015
+ })
1016
+ })
1017
1017
  ]
1018
- }, undefined, true, undefined, this)
1019
- }, undefined, false, undefined, this)
1020
- }, undefined, false, undefined, this);
1018
+ })
1019
+ })
1020
+ });
1021
1021
  }
1022
1022
  export {
1023
1023
  metadata,