@contractspec/bundle.library 3.4.3 → 3.5.0

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 (479) hide show
  1. package/.turbo/turbo-build.log +494 -488
  2. package/CHANGELOG.md +36 -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/getting-started/CLIPage.js +95 -95
  44. package/dist/components/docs/getting-started/CompatibilityPage.js +81 -81
  45. package/dist/components/docs/getting-started/DataViewTutorialPage.js +57 -57
  46. package/dist/components/docs/getting-started/DeveloperToolsPage.js +61 -61
  47. package/dist/components/docs/getting-started/HelloWorldPage.js +77 -77
  48. package/dist/components/docs/getting-started/InstallationPage.js +65 -65
  49. package/dist/components/docs/getting-started/StartHerePage.js +51 -51
  50. package/dist/components/docs/getting-started/TroubleshootingPage.js +73 -73
  51. package/dist/components/docs/getting-started/VSCodeExtensionPage.js +171 -171
  52. package/dist/components/docs/getting-started/index.js +731 -731
  53. package/dist/components/docs/guides/GuideCIDiffGatingPage.js +80 -80
  54. package/dist/components/docs/guides/GuideContractTypesPage.js +232 -232
  55. package/dist/components/docs/guides/GuideDocsPipelinePage.js +82 -82
  56. package/dist/components/docs/guides/GuideGenerateDocsClientsSchemasPage.js +84 -84
  57. package/dist/components/docs/guides/GuideImportExistingCodebasesPage.js +324 -324
  58. package/dist/components/docs/guides/GuideNextjsOneEndpointPage.js +106 -106
  59. package/dist/components/docs/guides/GuideSpecValidationTypingPage.js +78 -78
  60. package/dist/components/docs/guides/GuidesIndexPage.js +43 -43
  61. package/dist/components/docs/guides/index.js +975 -975
  62. package/dist/components/docs/index.js +10791 -10791
  63. package/dist/components/docs/integrations/IntegrationsCircuitBreakersPage.js +17 -17
  64. package/dist/components/docs/integrations/IntegrationsElevenLabsPage.js +47 -47
  65. package/dist/components/docs/integrations/IntegrationsGithubPage.js +61 -61
  66. package/dist/components/docs/integrations/IntegrationsGmailPage.js +49 -49
  67. package/dist/components/docs/integrations/IntegrationsGoogleCalendarPage.js +33 -33
  68. package/dist/components/docs/integrations/IntegrationsHealthRoutingPage.js +65 -65
  69. package/dist/components/docs/integrations/IntegrationsMistralPage.js +69 -69
  70. package/dist/components/docs/integrations/IntegrationsOpenAIPage.js +65 -65
  71. package/dist/components/docs/integrations/IntegrationsOverviewPage.js +313 -313
  72. package/dist/components/docs/integrations/IntegrationsPostmarkPage.js +101 -101
  73. package/dist/components/docs/integrations/IntegrationsPowensPage.js +121 -121
  74. package/dist/components/docs/integrations/IntegrationsQdrantPage.js +49 -49
  75. package/dist/components/docs/integrations/IntegrationsResendPage.js +45 -45
  76. package/dist/components/docs/integrations/IntegrationsS3Page.js +57 -57
  77. package/dist/components/docs/integrations/IntegrationsSlackPage.js +63 -63
  78. package/dist/components/docs/integrations/IntegrationsSpecModelPage.js +139 -139
  79. package/dist/components/docs/integrations/IntegrationsStripePage.js +159 -159
  80. package/dist/components/docs/integrations/IntegrationsTwilioPage.js +61 -61
  81. package/dist/components/docs/integrations/IntegrationsWhatsappMetaPage.js +63 -63
  82. package/dist/components/docs/integrations/IntegrationsWhatsappTwilioPage.js +65 -65
  83. package/dist/components/docs/integrations/index.js +1642 -1642
  84. package/dist/components/docs/intent/ContractFirstApiPage.js +51 -51
  85. package/dist/components/docs/intent/DeterministicCodegenPage.js +59 -59
  86. package/dist/components/docs/intent/GenerateClientFromSchemaPage.js +85 -85
  87. package/dist/components/docs/intent/OpenapiAlternativePage.js +91 -91
  88. package/dist/components/docs/intent/SchemaValidationTypescriptPage.js +59 -59
  89. package/dist/components/docs/intent/SpecDrivenDevelopmentPage.js +51 -51
  90. package/dist/components/docs/intent/index.js +396 -396
  91. package/dist/components/docs/knowledge/KnowledgeCategoriesPage.js +371 -371
  92. package/dist/components/docs/knowledge/KnowledgeExamplesPage.js +79 -79
  93. package/dist/components/docs/knowledge/KnowledgeOverviewPage.js +185 -185
  94. package/dist/components/docs/knowledge/KnowledgeSourcesPage.js +187 -187
  95. package/dist/components/docs/knowledge/KnowledgeSpacesPage.js +141 -141
  96. package/dist/components/docs/knowledge/index.js +963 -963
  97. package/dist/components/docs/libraries/LibrariesAccessibilityPage.js +85 -85
  98. package/dist/components/docs/libraries/LibrariesAiAgentPage.js +63 -63
  99. package/dist/components/docs/libraries/LibrariesAnalyticsPage.js +33 -33
  100. package/dist/components/docs/libraries/LibrariesContentGenPage.js +43 -43
  101. package/dist/components/docs/libraries/LibrariesContractsPage.js +125 -125
  102. package/dist/components/docs/libraries/LibrariesCostTrackingPage.js +45 -45
  103. package/dist/components/docs/libraries/LibrariesDataBackendPage.js +69 -69
  104. package/dist/components/docs/libraries/LibrariesDataViewsPage.js +79 -79
  105. package/dist/components/docs/libraries/LibrariesDesignSystemPage.js +129 -129
  106. package/dist/components/docs/libraries/LibrariesEvolutionPage.js +49 -49
  107. package/dist/components/docs/libraries/LibrariesGraphQLPage.js +73 -73
  108. package/dist/components/docs/libraries/LibrariesGrowthPage.js +35 -35
  109. package/dist/components/docs/libraries/LibrariesMultiTenancyPage.js +43 -43
  110. package/dist/components/docs/libraries/LibrariesObservabilityPage.js +53 -53
  111. package/dist/components/docs/libraries/LibrariesOverlayEnginePage.js +45 -45
  112. package/dist/components/docs/libraries/LibrariesOverviewPage.js +191 -191
  113. package/dist/components/docs/libraries/LibrariesPersonalizationPage.js +47 -47
  114. package/dist/components/docs/libraries/LibrariesProgressiveDeliveryPage.js +53 -53
  115. package/dist/components/docs/libraries/LibrariesResiliencePage.js +49 -49
  116. package/dist/components/docs/libraries/LibrariesRuntimePage.js +87 -87
  117. package/dist/components/docs/libraries/LibrariesSLOPage.js +47 -47
  118. package/dist/components/docs/libraries/LibrariesSchemaPage.js +139 -139
  119. package/dist/components/docs/libraries/LibrariesSupportBotPage.js +57 -57
  120. package/dist/components/docs/libraries/LibrariesTestingPage.js +49 -49
  121. package/dist/components/docs/libraries/LibrariesUIKitPage.js +107 -107
  122. package/dist/components/docs/libraries/LibrariesWorkflowComposerPage.js +35 -35
  123. package/dist/components/docs/libraries/LibrariesWorkflowsPage.js +89 -89
  124. package/dist/components/docs/libraries/index.js +1919 -1919
  125. package/dist/components/docs/manifesto/ManifestoPage.js +79 -79
  126. package/dist/components/docs/ops/AutoEvolutionOpsPage.js +59 -59
  127. package/dist/components/docs/ops/DistributedTracingOpsPage.js +33 -33
  128. package/dist/components/docs/ops/index.js +92 -92
  129. package/dist/components/docs/reference/DocsMarkdownContent.js +27 -27
  130. package/dist/components/docs/reference/DocsReferenceContent.js +34 -34
  131. package/dist/components/docs/reference/DocsReferenceIndexClient.js +23 -23
  132. package/dist/components/docs/reference/DocsReferenceIndexPage.js +26 -26
  133. package/dist/components/docs/reference/DocsReferencePage.js +37 -37
  134. package/dist/components/docs/reference/index.js +63 -63
  135. package/dist/components/docs/safety/SafetyAuditingPage.js +161 -161
  136. package/dist/components/docs/safety/SafetyMigrationsPage.js +169 -169
  137. package/dist/components/docs/safety/SafetyOverviewPage.js +99 -99
  138. package/dist/components/docs/safety/SafetyPDPPage.js +137 -137
  139. package/dist/components/docs/safety/SafetySecurityTrustPage.js +95 -95
  140. package/dist/components/docs/safety/SafetySigningPage.js +39 -39
  141. package/dist/components/docs/safety/SafetyTenantIsolationPage.js +33 -33
  142. package/dist/components/docs/safety/index.js +733 -733
  143. package/dist/components/docs/shared/StudioPrompt.js +9 -9
  144. package/dist/components/docs/specs/SpecsCapabilitiesPage.js +61 -61
  145. package/dist/components/docs/specs/SpecsDataViewsPage.js +119 -119
  146. package/dist/components/docs/specs/SpecsOverlaysPage.js +171 -171
  147. package/dist/components/docs/specs/SpecsOverviewPage.js +167 -167
  148. package/dist/components/docs/specs/SpecsPolicyPage.js +179 -179
  149. package/dist/components/docs/specs/SpecsWorkflowsPage.js +141 -141
  150. package/dist/components/docs/specs/index.js +838 -838
  151. package/dist/components/docs/studio/StudioBYOKPage.js +9 -9
  152. package/dist/components/docs/studio/StudioDeploymentsPage.js +9 -9
  153. package/dist/components/docs/studio/StudioGettingStartedPage.js +9 -9
  154. package/dist/components/docs/studio/StudioIntegrationsPage.js +9 -9
  155. package/dist/components/docs/studio/StudioOverviewPage.js +33 -33
  156. package/dist/components/docs/studio/StudioVisualBuilderPage.js +9 -9
  157. package/dist/components/docs/studio/index.js +78 -78
  158. package/dist/components/integrations/index.js +209 -209
  159. package/dist/components/integrations/molecules/IntegrationCard.js +33 -33
  160. package/dist/components/integrations/organisms/IntegrationMarketplace.js +71 -71
  161. package/dist/components/integrations/organisms/IntegrationSettings.js +98 -98
  162. package/dist/components/integrations/organisms/KnowledgeSourceList.js +40 -40
  163. package/dist/components/legal/PrivacyTemplate.js +477 -477
  164. package/dist/components/legal/TermsTemplate.js +421 -421
  165. package/dist/components/legal/index.js +898 -898
  166. package/dist/components/shared/FeatureGateNotice.js +13 -13
  167. package/dist/components/shared/index.js +13 -13
  168. package/dist/components/shell/WorkspaceHeader.js +37 -37
  169. package/dist/components/shell/WorkspaceProjectShellLayout.js +77 -77
  170. package/dist/components/shell/WorkspaceShellRenderer.d.ts +17 -0
  171. package/dist/components/shell/WorkspaceShellRenderer.js +229 -0
  172. package/dist/components/shell/WorkspaceSidebar.js +27 -27
  173. package/dist/components/shell/index.d.ts +1 -0
  174. package/dist/components/shell/index.js +140 -77
  175. package/dist/components/templates/index.js +272 -272
  176. package/dist/components/templates/messaging/ConversationList.js +27 -27
  177. package/dist/components/templates/messaging/MessageComposer.js +27 -27
  178. package/dist/components/templates/messaging/MessageThread.js +18 -18
  179. package/dist/components/templates/messaging/MessagingWorkspace.js +65 -65
  180. package/dist/components/templates/messaging/index.js +65 -65
  181. package/dist/components/templates/recipes/LanguageSwitcher.js +5 -5
  182. package/dist/components/templates/recipes/RecipeCard.js +26 -26
  183. package/dist/components/templates/recipes/RecipeDetail.js +33 -33
  184. package/dist/components/templates/recipes/RecipeList.js +80 -80
  185. package/dist/components/templates/recipes/index.js +80 -80
  186. package/dist/components/templates/todos/FilterBar.js +39 -39
  187. package/dist/components/templates/todos/TaskForm.js +43 -43
  188. package/dist/components/templates/todos/TaskItem.js +30 -30
  189. package/dist/components/templates/todos/TaskList.js +127 -127
  190. package/dist/components/templates/todos/index.js +127 -127
  191. package/dist/index.js +12323 -12260
  192. package/dist/infrastructure/elysia/index.js +8 -8
  193. package/dist/infrastructure/elysia/logger.js +8 -8
  194. package/dist/infrastructure/index.js +8 -8
  195. package/dist/libs/posthog/client.js +2 -2
  196. package/dist/node/application/index.js +8 -8
  197. package/dist/node/application/mcp/cliMcp.js +8 -8
  198. package/dist/node/application/mcp/contractsMcp.js +8 -8
  199. package/dist/node/application/mcp/docsMcp.js +8 -8
  200. package/dist/node/application/mcp/index.js +8 -8
  201. package/dist/node/application/mcp/internalMcp.js +8 -8
  202. package/dist/node/application/mcp/providerRankingMcp.js +8 -8
  203. package/dist/node/bundles/LibraryBundle.js +138 -0
  204. package/dist/node/bundles/index.js +138 -0
  205. package/dist/node/components/docs/DocsIndexPage.js +91 -91
  206. package/dist/node/components/docs/advanced/AdvancedMCPPage.js +125 -125
  207. package/dist/node/components/docs/advanced/AdvancedOverlayEditorPage.js +49 -49
  208. package/dist/node/components/docs/advanced/AdvancedRenderersPage.js +51 -51
  209. package/dist/node/components/docs/advanced/AdvancedSpecExperimentsPage.js +35 -35
  210. package/dist/node/components/docs/advanced/AdvancedTelemetryPage.js +177 -177
  211. package/dist/node/components/docs/advanced/AdvancedWorkflowMonitoringPage.js +45 -45
  212. package/dist/node/components/docs/advanced/index.js +482 -482
  213. package/dist/node/components/docs/architecture/ArchitectureAppConfigPage.js +107 -107
  214. package/dist/node/components/docs/architecture/ArchitectureControlPlanePage.js +73 -73
  215. package/dist/node/components/docs/architecture/ArchitectureIntegrationBindingPage.js +117 -117
  216. package/dist/node/components/docs/architecture/ArchitectureKnowledgeBindingPage.js +175 -175
  217. package/dist/node/components/docs/architecture/ArchitectureMultiTenancyPage.js +71 -71
  218. package/dist/node/components/docs/architecture/ArchitectureOverviewPage.js +205 -205
  219. package/dist/node/components/docs/architecture/index.js +748 -748
  220. package/dist/node/components/docs/comparison/ComparisonAutomationPlatformsPage.js +117 -117
  221. package/dist/node/components/docs/comparison/ComparisonEnterprisePlatformsPage.js +111 -111
  222. package/dist/node/components/docs/comparison/ComparisonInternalToolBuildersPage.js +117 -117
  223. package/dist/node/components/docs/comparison/ComparisonOverviewPage.js +97 -97
  224. package/dist/node/components/docs/comparison/ComparisonWindmillPage.js +125 -125
  225. package/dist/node/components/docs/comparison/ComparisonWorkflowEnginesPage.js +171 -171
  226. package/dist/node/components/docs/comparison/index.js +738 -738
  227. package/dist/node/components/docs/ecosystem/IntegrationsPage.js +45 -45
  228. package/dist/node/components/docs/ecosystem/PluginsPage.js +73 -73
  229. package/dist/node/components/docs/ecosystem/RegistryPage.js +37 -37
  230. package/dist/node/components/docs/ecosystem/TemplatesPage.js +56 -56
  231. package/dist/node/components/docs/ecosystem/index.js +211 -211
  232. package/dist/node/components/docs/examples/DocsExamplesPage.js +21 -21
  233. package/dist/node/components/docs/examples/index.js +21 -21
  234. package/dist/node/components/docs/getting-started/CLIPage.js +95 -95
  235. package/dist/node/components/docs/getting-started/CompatibilityPage.js +81 -81
  236. package/dist/node/components/docs/getting-started/DataViewTutorialPage.js +57 -57
  237. package/dist/node/components/docs/getting-started/DeveloperToolsPage.js +61 -61
  238. package/dist/node/components/docs/getting-started/HelloWorldPage.js +77 -77
  239. package/dist/node/components/docs/getting-started/InstallationPage.js +65 -65
  240. package/dist/node/components/docs/getting-started/StartHerePage.js +51 -51
  241. package/dist/node/components/docs/getting-started/TroubleshootingPage.js +73 -73
  242. package/dist/node/components/docs/getting-started/VSCodeExtensionPage.js +171 -171
  243. package/dist/node/components/docs/getting-started/index.js +731 -731
  244. package/dist/node/components/docs/guides/GuideCIDiffGatingPage.js +80 -80
  245. package/dist/node/components/docs/guides/GuideContractTypesPage.js +232 -232
  246. package/dist/node/components/docs/guides/GuideDocsPipelinePage.js +82 -82
  247. package/dist/node/components/docs/guides/GuideGenerateDocsClientsSchemasPage.js +84 -84
  248. package/dist/node/components/docs/guides/GuideImportExistingCodebasesPage.js +324 -324
  249. package/dist/node/components/docs/guides/GuideNextjsOneEndpointPage.js +106 -106
  250. package/dist/node/components/docs/guides/GuideSpecValidationTypingPage.js +78 -78
  251. package/dist/node/components/docs/guides/GuidesIndexPage.js +43 -43
  252. package/dist/node/components/docs/guides/index.js +975 -975
  253. package/dist/node/components/docs/index.js +10791 -10791
  254. package/dist/node/components/docs/integrations/IntegrationsCircuitBreakersPage.js +17 -17
  255. package/dist/node/components/docs/integrations/IntegrationsElevenLabsPage.js +47 -47
  256. package/dist/node/components/docs/integrations/IntegrationsGithubPage.js +61 -61
  257. package/dist/node/components/docs/integrations/IntegrationsGmailPage.js +49 -49
  258. package/dist/node/components/docs/integrations/IntegrationsGoogleCalendarPage.js +33 -33
  259. package/dist/node/components/docs/integrations/IntegrationsHealthRoutingPage.js +65 -65
  260. package/dist/node/components/docs/integrations/IntegrationsMistralPage.js +69 -69
  261. package/dist/node/components/docs/integrations/IntegrationsOpenAIPage.js +65 -65
  262. package/dist/node/components/docs/integrations/IntegrationsOverviewPage.js +313 -313
  263. package/dist/node/components/docs/integrations/IntegrationsPostmarkPage.js +101 -101
  264. package/dist/node/components/docs/integrations/IntegrationsPowensPage.js +121 -121
  265. package/dist/node/components/docs/integrations/IntegrationsQdrantPage.js +49 -49
  266. package/dist/node/components/docs/integrations/IntegrationsResendPage.js +45 -45
  267. package/dist/node/components/docs/integrations/IntegrationsS3Page.js +57 -57
  268. package/dist/node/components/docs/integrations/IntegrationsSlackPage.js +63 -63
  269. package/dist/node/components/docs/integrations/IntegrationsSpecModelPage.js +139 -139
  270. package/dist/node/components/docs/integrations/IntegrationsStripePage.js +159 -159
  271. package/dist/node/components/docs/integrations/IntegrationsTwilioPage.js +61 -61
  272. package/dist/node/components/docs/integrations/IntegrationsWhatsappMetaPage.js +63 -63
  273. package/dist/node/components/docs/integrations/IntegrationsWhatsappTwilioPage.js +65 -65
  274. package/dist/node/components/docs/integrations/index.js +1642 -1642
  275. package/dist/node/components/docs/intent/ContractFirstApiPage.js +51 -51
  276. package/dist/node/components/docs/intent/DeterministicCodegenPage.js +59 -59
  277. package/dist/node/components/docs/intent/GenerateClientFromSchemaPage.js +85 -85
  278. package/dist/node/components/docs/intent/OpenapiAlternativePage.js +91 -91
  279. package/dist/node/components/docs/intent/SchemaValidationTypescriptPage.js +59 -59
  280. package/dist/node/components/docs/intent/SpecDrivenDevelopmentPage.js +51 -51
  281. package/dist/node/components/docs/intent/index.js +396 -396
  282. package/dist/node/components/docs/knowledge/KnowledgeCategoriesPage.js +371 -371
  283. package/dist/node/components/docs/knowledge/KnowledgeExamplesPage.js +79 -79
  284. package/dist/node/components/docs/knowledge/KnowledgeOverviewPage.js +185 -185
  285. package/dist/node/components/docs/knowledge/KnowledgeSourcesPage.js +187 -187
  286. package/dist/node/components/docs/knowledge/KnowledgeSpacesPage.js +141 -141
  287. package/dist/node/components/docs/knowledge/index.js +963 -963
  288. package/dist/node/components/docs/libraries/LibrariesAccessibilityPage.js +85 -85
  289. package/dist/node/components/docs/libraries/LibrariesAiAgentPage.js +63 -63
  290. package/dist/node/components/docs/libraries/LibrariesAnalyticsPage.js +33 -33
  291. package/dist/node/components/docs/libraries/LibrariesContentGenPage.js +43 -43
  292. package/dist/node/components/docs/libraries/LibrariesContractsPage.js +125 -125
  293. package/dist/node/components/docs/libraries/LibrariesCostTrackingPage.js +45 -45
  294. package/dist/node/components/docs/libraries/LibrariesDataBackendPage.js +69 -69
  295. package/dist/node/components/docs/libraries/LibrariesDataViewsPage.js +79 -79
  296. package/dist/node/components/docs/libraries/LibrariesDesignSystemPage.js +129 -129
  297. package/dist/node/components/docs/libraries/LibrariesEvolutionPage.js +49 -49
  298. package/dist/node/components/docs/libraries/LibrariesGraphQLPage.js +73 -73
  299. package/dist/node/components/docs/libraries/LibrariesGrowthPage.js +35 -35
  300. package/dist/node/components/docs/libraries/LibrariesMultiTenancyPage.js +43 -43
  301. package/dist/node/components/docs/libraries/LibrariesObservabilityPage.js +53 -53
  302. package/dist/node/components/docs/libraries/LibrariesOverlayEnginePage.js +45 -45
  303. package/dist/node/components/docs/libraries/LibrariesOverviewPage.js +191 -191
  304. package/dist/node/components/docs/libraries/LibrariesPersonalizationPage.js +47 -47
  305. package/dist/node/components/docs/libraries/LibrariesProgressiveDeliveryPage.js +53 -53
  306. package/dist/node/components/docs/libraries/LibrariesResiliencePage.js +49 -49
  307. package/dist/node/components/docs/libraries/LibrariesRuntimePage.js +87 -87
  308. package/dist/node/components/docs/libraries/LibrariesSLOPage.js +47 -47
  309. package/dist/node/components/docs/libraries/LibrariesSchemaPage.js +139 -139
  310. package/dist/node/components/docs/libraries/LibrariesSupportBotPage.js +57 -57
  311. package/dist/node/components/docs/libraries/LibrariesTestingPage.js +49 -49
  312. package/dist/node/components/docs/libraries/LibrariesUIKitPage.js +107 -107
  313. package/dist/node/components/docs/libraries/LibrariesWorkflowComposerPage.js +35 -35
  314. package/dist/node/components/docs/libraries/LibrariesWorkflowsPage.js +89 -89
  315. package/dist/node/components/docs/libraries/index.js +1919 -1919
  316. package/dist/node/components/docs/manifesto/ManifestoPage.js +79 -79
  317. package/dist/node/components/docs/ops/AutoEvolutionOpsPage.js +59 -59
  318. package/dist/node/components/docs/ops/DistributedTracingOpsPage.js +33 -33
  319. package/dist/node/components/docs/ops/index.js +92 -92
  320. package/dist/node/components/docs/reference/DocsMarkdownContent.js +27 -27
  321. package/dist/node/components/docs/reference/DocsReferenceContent.js +34 -34
  322. package/dist/node/components/docs/reference/DocsReferenceIndexClient.js +23 -23
  323. package/dist/node/components/docs/reference/DocsReferenceIndexPage.js +26 -26
  324. package/dist/node/components/docs/reference/DocsReferencePage.js +37 -37
  325. package/dist/node/components/docs/reference/index.js +63 -63
  326. package/dist/node/components/docs/safety/SafetyAuditingPage.js +161 -161
  327. package/dist/node/components/docs/safety/SafetyMigrationsPage.js +169 -169
  328. package/dist/node/components/docs/safety/SafetyOverviewPage.js +99 -99
  329. package/dist/node/components/docs/safety/SafetyPDPPage.js +137 -137
  330. package/dist/node/components/docs/safety/SafetySecurityTrustPage.js +95 -95
  331. package/dist/node/components/docs/safety/SafetySigningPage.js +39 -39
  332. package/dist/node/components/docs/safety/SafetyTenantIsolationPage.js +33 -33
  333. package/dist/node/components/docs/safety/index.js +733 -733
  334. package/dist/node/components/docs/shared/StudioPrompt.js +9 -9
  335. package/dist/node/components/docs/specs/SpecsCapabilitiesPage.js +61 -61
  336. package/dist/node/components/docs/specs/SpecsDataViewsPage.js +119 -119
  337. package/dist/node/components/docs/specs/SpecsOverlaysPage.js +171 -171
  338. package/dist/node/components/docs/specs/SpecsOverviewPage.js +167 -167
  339. package/dist/node/components/docs/specs/SpecsPolicyPage.js +179 -179
  340. package/dist/node/components/docs/specs/SpecsWorkflowsPage.js +141 -141
  341. package/dist/node/components/docs/specs/index.js +838 -838
  342. package/dist/node/components/docs/studio/StudioBYOKPage.js +9 -9
  343. package/dist/node/components/docs/studio/StudioDeploymentsPage.js +9 -9
  344. package/dist/node/components/docs/studio/StudioGettingStartedPage.js +9 -9
  345. package/dist/node/components/docs/studio/StudioIntegrationsPage.js +9 -9
  346. package/dist/node/components/docs/studio/StudioOverviewPage.js +33 -33
  347. package/dist/node/components/docs/studio/StudioVisualBuilderPage.js +9 -9
  348. package/dist/node/components/docs/studio/index.js +78 -78
  349. package/dist/node/components/integrations/index.js +209 -209
  350. package/dist/node/components/integrations/molecules/IntegrationCard.js +33 -33
  351. package/dist/node/components/integrations/organisms/IntegrationMarketplace.js +71 -71
  352. package/dist/node/components/integrations/organisms/IntegrationSettings.js +98 -98
  353. package/dist/node/components/integrations/organisms/KnowledgeSourceList.js +40 -40
  354. package/dist/node/components/legal/PrivacyTemplate.js +477 -477
  355. package/dist/node/components/legal/TermsTemplate.js +421 -421
  356. package/dist/node/components/legal/index.js +898 -898
  357. package/dist/node/components/shared/FeatureGateNotice.js +13 -13
  358. package/dist/node/components/shared/index.js +13 -13
  359. package/dist/node/components/shell/WorkspaceHeader.js +37 -37
  360. package/dist/node/components/shell/WorkspaceProjectShellLayout.js +77 -77
  361. package/dist/node/components/shell/WorkspaceShellRenderer.js +228 -0
  362. package/dist/node/components/shell/WorkspaceSidebar.js +27 -27
  363. package/dist/node/components/shell/index.js +140 -77
  364. package/dist/node/components/templates/index.js +272 -272
  365. package/dist/node/components/templates/messaging/ConversationList.js +27 -27
  366. package/dist/node/components/templates/messaging/MessageComposer.js +27 -27
  367. package/dist/node/components/templates/messaging/MessageThread.js +18 -18
  368. package/dist/node/components/templates/messaging/MessagingWorkspace.js +65 -65
  369. package/dist/node/components/templates/messaging/index.js +65 -65
  370. package/dist/node/components/templates/recipes/LanguageSwitcher.js +5 -5
  371. package/dist/node/components/templates/recipes/RecipeCard.js +26 -26
  372. package/dist/node/components/templates/recipes/RecipeDetail.js +33 -33
  373. package/dist/node/components/templates/recipes/RecipeList.js +80 -80
  374. package/dist/node/components/templates/recipes/index.js +80 -80
  375. package/dist/node/components/templates/todos/FilterBar.js +39 -39
  376. package/dist/node/components/templates/todos/TaskForm.js +43 -43
  377. package/dist/node/components/templates/todos/TaskItem.js +30 -30
  378. package/dist/node/components/templates/todos/TaskList.js +127 -127
  379. package/dist/node/components/templates/todos/index.js +127 -127
  380. package/dist/node/index.js +12323 -12260
  381. package/dist/node/infrastructure/elysia/index.js +8 -8
  382. package/dist/node/infrastructure/elysia/logger.js +8 -8
  383. package/dist/node/infrastructure/index.js +8 -8
  384. package/dist/node/libs/posthog/client.js +2 -2
  385. package/dist/node/presentation/features/atoms/FeatureIcon/FeatureIcon.js +3 -3
  386. package/dist/node/presentation/features/atoms/FeatureIcon/index.js +3 -3
  387. package/dist/node/presentation/features/atoms/index.js +3 -3
  388. package/dist/node/presentation/features/index.js +915 -915
  389. package/dist/node/presentation/features/molecules/FeatureCard/FeatureCard.js +101 -101
  390. package/dist/node/presentation/features/molecules/FeatureCard/index.js +101 -101
  391. package/dist/node/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.js +15 -15
  392. package/dist/node/presentation/features/molecules/FeatureCategoryHeader/index.js +15 -15
  393. package/dist/node/presentation/features/molecules/FeatureFilters/FeatureFilters.js +23 -23
  394. package/dist/node/presentation/features/molecules/FeatureFilters/index.js +23 -23
  395. package/dist/node/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.js +67 -67
  396. package/dist/node/presentation/features/molecules/FeatureHoverPreview/index.js +67 -67
  397. package/dist/node/presentation/features/molecules/index.js +139 -139
  398. package/dist/node/presentation/features/organisms/FeatureDataViewsList.js +7 -7
  399. package/dist/node/presentation/features/organisms/FeatureDetail/FeatureDetail.js +57 -57
  400. package/dist/node/presentation/features/organisms/FeatureDetail/index.js +57 -57
  401. package/dist/node/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.js +183 -183
  402. package/dist/node/presentation/features/organisms/FeatureDiscovery/index.js +183 -183
  403. package/dist/node/presentation/features/organisms/FeatureEventsList.js +7 -7
  404. package/dist/node/presentation/features/organisms/FeatureFormsList.js +7 -7
  405. package/dist/node/presentation/features/organisms/FeatureOperationsList.js +7 -7
  406. package/dist/node/presentation/features/organisms/FeaturePresentationsList.js +7 -7
  407. package/dist/node/presentation/features/organisms/index.js +275 -275
  408. package/dist/node/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.js +126 -126
  409. package/dist/node/presentation/features/templates/FeatureDataViewDetailTemplate/index.js +126 -126
  410. package/dist/node/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.js +16 -16
  411. package/dist/node/presentation/features/templates/FeatureDataViewsTemplate/index.js +16 -16
  412. package/dist/node/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.js +112 -112
  413. package/dist/node/presentation/features/templates/FeatureEventDetailTemplate/index.js +112 -112
  414. package/dist/node/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.js +16 -16
  415. package/dist/node/presentation/features/templates/FeatureEventsTemplate/index.js +16 -16
  416. package/dist/node/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.js +126 -126
  417. package/dist/node/presentation/features/templates/FeatureFormDetailTemplate/index.js +126 -126
  418. package/dist/node/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.js +16 -16
  419. package/dist/node/presentation/features/templates/FeatureFormsTemplate/index.js +16 -16
  420. package/dist/node/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.js +110 -110
  421. package/dist/node/presentation/features/templates/FeatureOperationDetailTemplate/index.js +110 -110
  422. package/dist/node/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.js +16 -16
  423. package/dist/node/presentation/features/templates/FeatureOperationsTemplate/index.js +16 -16
  424. package/dist/node/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.js +66 -66
  425. package/dist/node/presentation/features/templates/FeatureOverviewTemplate/index.js +66 -66
  426. package/dist/node/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.js +112 -112
  427. package/dist/node/presentation/features/templates/FeaturePresentationDetailTemplate/index.js +112 -112
  428. package/dist/node/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.js +16 -16
  429. package/dist/node/presentation/features/templates/FeaturePresentationsTemplate/index.js +16 -16
  430. package/dist/presentation/features/atoms/FeatureIcon/FeatureIcon.js +3 -3
  431. package/dist/presentation/features/atoms/FeatureIcon/index.js +3 -3
  432. package/dist/presentation/features/atoms/index.js +3 -3
  433. package/dist/presentation/features/index.js +915 -915
  434. package/dist/presentation/features/molecules/FeatureCard/FeatureCard.js +101 -101
  435. package/dist/presentation/features/molecules/FeatureCard/index.js +101 -101
  436. package/dist/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.js +15 -15
  437. package/dist/presentation/features/molecules/FeatureCategoryHeader/index.js +15 -15
  438. package/dist/presentation/features/molecules/FeatureFilters/FeatureFilters.js +23 -23
  439. package/dist/presentation/features/molecules/FeatureFilters/index.js +23 -23
  440. package/dist/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.js +67 -67
  441. package/dist/presentation/features/molecules/FeatureHoverPreview/index.js +67 -67
  442. package/dist/presentation/features/molecules/index.js +139 -139
  443. package/dist/presentation/features/organisms/FeatureDataViewsList.js +7 -7
  444. package/dist/presentation/features/organisms/FeatureDetail/FeatureDetail.js +57 -57
  445. package/dist/presentation/features/organisms/FeatureDetail/index.js +57 -57
  446. package/dist/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.js +183 -183
  447. package/dist/presentation/features/organisms/FeatureDiscovery/index.js +183 -183
  448. package/dist/presentation/features/organisms/FeatureEventsList.js +7 -7
  449. package/dist/presentation/features/organisms/FeatureFormsList.js +7 -7
  450. package/dist/presentation/features/organisms/FeatureOperationsList.js +7 -7
  451. package/dist/presentation/features/organisms/FeaturePresentationsList.js +7 -7
  452. package/dist/presentation/features/organisms/index.js +275 -275
  453. package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.js +126 -126
  454. package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/index.js +126 -126
  455. package/dist/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.js +16 -16
  456. package/dist/presentation/features/templates/FeatureDataViewsTemplate/index.js +16 -16
  457. package/dist/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.js +112 -112
  458. package/dist/presentation/features/templates/FeatureEventDetailTemplate/index.js +112 -112
  459. package/dist/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.js +16 -16
  460. package/dist/presentation/features/templates/FeatureEventsTemplate/index.js +16 -16
  461. package/dist/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.js +126 -126
  462. package/dist/presentation/features/templates/FeatureFormDetailTemplate/index.js +126 -126
  463. package/dist/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.js +16 -16
  464. package/dist/presentation/features/templates/FeatureFormsTemplate/index.js +16 -16
  465. package/dist/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.js +110 -110
  466. package/dist/presentation/features/templates/FeatureOperationDetailTemplate/index.js +110 -110
  467. package/dist/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.js +16 -16
  468. package/dist/presentation/features/templates/FeatureOperationsTemplate/index.js +16 -16
  469. package/dist/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.js +66 -66
  470. package/dist/presentation/features/templates/FeatureOverviewTemplate/index.js +66 -66
  471. package/dist/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.js +112 -112
  472. package/dist/presentation/features/templates/FeaturePresentationDetailTemplate/index.js +112 -112
  473. package/dist/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.js +16 -16
  474. package/dist/presentation/features/templates/FeaturePresentationsTemplate/index.js +16 -16
  475. package/package.json +71 -22
  476. package/src/bundles/LibraryBundle.ts +152 -0
  477. package/src/bundles/index.ts +1 -0
  478. package/src/components/shell/WorkspaceShellRenderer.tsx +90 -0
  479. package/src/components/shell/index.ts +1 -0
@@ -1,107 +1,107 @@
1
1
  // @bun
2
2
  // src/components/templates/todos/FilterBar.tsx
3
- import { jsxDEV } from "react/jsx-dev-runtime";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
4
4
  function FilterBar({ value, onChange, categories }) {
5
5
  const handleChange = (key, nextValue) => {
6
6
  onChange({ ...value, [key]: nextValue });
7
7
  };
8
- return /* @__PURE__ */ jsxDEV("div", {
8
+ return /* @__PURE__ */ jsxs("div", {
9
9
  className: "border-border bg-card grid gap-3 rounded-2xl border p-4 md:grid-cols-4",
10
10
  children: [
11
- /* @__PURE__ */ jsxDEV("label", {
11
+ /* @__PURE__ */ jsxs("label", {
12
12
  className: "text-muted-foreground flex flex-col text-xs tracking-wide uppercase",
13
13
  children: [
14
14
  "Status",
15
- /* @__PURE__ */ jsxDEV("select", {
15
+ /* @__PURE__ */ jsxs("select", {
16
16
  className: "border-border bg-background text-foreground mt-1 rounded-md border px-3 py-2 text-sm",
17
17
  value: value.status,
18
18
  onChange: (event) => handleChange("status", event.target.value),
19
19
  children: [
20
- /* @__PURE__ */ jsxDEV("option", {
20
+ /* @__PURE__ */ jsx("option", {
21
21
  value: "all",
22
22
  children: "All tasks"
23
- }, undefined, false, undefined, this),
24
- /* @__PURE__ */ jsxDEV("option", {
23
+ }),
24
+ /* @__PURE__ */ jsx("option", {
25
25
  value: "active",
26
26
  children: "Active"
27
- }, undefined, false, undefined, this),
28
- /* @__PURE__ */ jsxDEV("option", {
27
+ }),
28
+ /* @__PURE__ */ jsx("option", {
29
29
  value: "completed",
30
30
  children: "Completed"
31
- }, undefined, false, undefined, this)
31
+ })
32
32
  ]
33
- }, undefined, true, undefined, this)
33
+ })
34
34
  ]
35
- }, undefined, true, undefined, this),
36
- /* @__PURE__ */ jsxDEV("label", {
35
+ }),
36
+ /* @__PURE__ */ jsxs("label", {
37
37
  className: "text-muted-foreground flex flex-col text-xs tracking-wide uppercase",
38
38
  children: [
39
39
  "Priority",
40
- /* @__PURE__ */ jsxDEV("select", {
40
+ /* @__PURE__ */ jsxs("select", {
41
41
  className: "border-border bg-background text-foreground mt-1 rounded-md border px-3 py-2 text-sm",
42
42
  value: value.priority,
43
43
  onChange: (event) => handleChange("priority", event.target.value),
44
44
  children: [
45
- /* @__PURE__ */ jsxDEV("option", {
45
+ /* @__PURE__ */ jsx("option", {
46
46
  value: "all",
47
47
  children: "All"
48
- }, undefined, false, undefined, this),
49
- /* @__PURE__ */ jsxDEV("option", {
48
+ }),
49
+ /* @__PURE__ */ jsx("option", {
50
50
  value: "LOW",
51
51
  children: "Low"
52
- }, undefined, false, undefined, this),
53
- /* @__PURE__ */ jsxDEV("option", {
52
+ }),
53
+ /* @__PURE__ */ jsx("option", {
54
54
  value: "MEDIUM",
55
55
  children: "Medium"
56
- }, undefined, false, undefined, this),
57
- /* @__PURE__ */ jsxDEV("option", {
56
+ }),
57
+ /* @__PURE__ */ jsx("option", {
58
58
  value: "HIGH",
59
59
  children: "High"
60
- }, undefined, false, undefined, this),
61
- /* @__PURE__ */ jsxDEV("option", {
60
+ }),
61
+ /* @__PURE__ */ jsx("option", {
62
62
  value: "URGENT",
63
63
  children: "Urgent"
64
- }, undefined, false, undefined, this)
64
+ })
65
65
  ]
66
- }, undefined, true, undefined, this)
66
+ })
67
67
  ]
68
- }, undefined, true, undefined, this),
69
- /* @__PURE__ */ jsxDEV("label", {
68
+ }),
69
+ /* @__PURE__ */ jsxs("label", {
70
70
  className: "text-muted-foreground flex flex-col text-xs tracking-wide uppercase",
71
71
  children: [
72
72
  "Category",
73
- /* @__PURE__ */ jsxDEV("select", {
73
+ /* @__PURE__ */ jsxs("select", {
74
74
  className: "border-border bg-background text-foreground mt-1 rounded-md border px-3 py-2 text-sm",
75
75
  value: value.categoryId,
76
76
  onChange: (event) => handleChange("categoryId", event.target.value),
77
77
  children: [
78
- /* @__PURE__ */ jsxDEV("option", {
78
+ /* @__PURE__ */ jsx("option", {
79
79
  value: "all",
80
80
  children: "All categories"
81
- }, undefined, false, undefined, this),
82
- categories.map((category) => /* @__PURE__ */ jsxDEV("option", {
81
+ }),
82
+ categories.map((category) => /* @__PURE__ */ jsx("option", {
83
83
  value: category.id,
84
84
  children: category.name
85
- }, category.id, false, undefined, this))
85
+ }, category.id))
86
86
  ]
87
- }, undefined, true, undefined, this)
87
+ })
88
88
  ]
89
- }, undefined, true, undefined, this),
90
- /* @__PURE__ */ jsxDEV("label", {
89
+ }),
90
+ /* @__PURE__ */ jsxs("label", {
91
91
  className: "text-muted-foreground flex flex-col text-xs tracking-wide uppercase",
92
92
  children: [
93
93
  "Search",
94
- /* @__PURE__ */ jsxDEV("input", {
94
+ /* @__PURE__ */ jsx("input", {
95
95
  type: "search",
96
96
  className: "border-border bg-background text-foreground mt-1 rounded-md border px-3 py-2 text-sm",
97
97
  placeholder: "Search by title",
98
98
  value: value.search,
99
99
  onChange: (event) => handleChange("search", event.target.value)
100
- }, undefined, false, undefined, this)
100
+ })
101
101
  ]
102
- }, undefined, true, undefined, this)
102
+ })
103
103
  ]
104
- }, undefined, true, undefined, this);
104
+ });
105
105
  }
106
106
 
107
107
  // src/components/templates/todos/TaskForm.tsx
@@ -109,7 +109,7 @@ import { useState } from "react";
109
109
  import { useMutation } from "@apollo/client/react";
110
110
  import { gql } from "@apollo/client";
111
111
  import { useTemplateRuntime } from "@contractspec/lib.example-shared-ui";
112
- import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
112
+ import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
113
113
  "use client";
114
114
  var CREATE_TASK = gql`
115
115
  mutation CreateTask($input: CreateTaskInput!) {
@@ -151,116 +151,116 @@ function TaskForm({ categories }) {
151
151
  setCategoryId("none");
152
152
  setTagsInput("");
153
153
  };
154
- return /* @__PURE__ */ jsxDEV2("form", {
154
+ return /* @__PURE__ */ jsxs2("form", {
155
155
  onSubmit: handleSubmit,
156
156
  className: "border-border bg-background/60 space-y-3 rounded-2xl border p-4",
157
157
  children: [
158
- /* @__PURE__ */ jsxDEV2("div", {
159
- children: /* @__PURE__ */ jsxDEV2("label", {
158
+ /* @__PURE__ */ jsx2("div", {
159
+ children: /* @__PURE__ */ jsxs2("label", {
160
160
  className: "text-muted-foreground text-xs font-semibold uppercase",
161
161
  children: [
162
162
  "Title",
163
- /* @__PURE__ */ jsxDEV2("input", {
163
+ /* @__PURE__ */ jsx2("input", {
164
164
  type: "text",
165
165
  className: "border-border bg-card mt-1 w-full rounded-md border px-3 py-2 text-sm",
166
166
  placeholder: "What needs to get done?",
167
167
  value: title,
168
168
  onChange: (event) => setTitle(event.target.value),
169
169
  required: true
170
- }, undefined, false, undefined, this)
170
+ })
171
171
  ]
172
- }, undefined, true, undefined, this)
173
- }, undefined, false, undefined, this),
174
- /* @__PURE__ */ jsxDEV2("div", {
175
- children: /* @__PURE__ */ jsxDEV2("label", {
172
+ })
173
+ }),
174
+ /* @__PURE__ */ jsx2("div", {
175
+ children: /* @__PURE__ */ jsxs2("label", {
176
176
  className: "text-muted-foreground text-xs font-semibold uppercase",
177
177
  children: [
178
178
  "Description",
179
- /* @__PURE__ */ jsxDEV2("textarea", {
179
+ /* @__PURE__ */ jsx2("textarea", {
180
180
  className: "border-border bg-card mt-1 w-full rounded-md border px-3 py-2 text-sm",
181
181
  rows: 3,
182
182
  placeholder: "Add context or policy notes",
183
183
  value: description,
184
184
  onChange: (event) => setDescription(event.target.value)
185
- }, undefined, false, undefined, this)
185
+ })
186
186
  ]
187
- }, undefined, true, undefined, this)
188
- }, undefined, false, undefined, this),
189
- /* @__PURE__ */ jsxDEV2("div", {
187
+ })
188
+ }),
189
+ /* @__PURE__ */ jsxs2("div", {
190
190
  className: "grid gap-3 md:grid-cols-3",
191
191
  children: [
192
- /* @__PURE__ */ jsxDEV2("label", {
192
+ /* @__PURE__ */ jsxs2("label", {
193
193
  className: "text-muted-foreground text-xs font-semibold uppercase",
194
194
  children: [
195
195
  "Priority",
196
- /* @__PURE__ */ jsxDEV2("select", {
196
+ /* @__PURE__ */ jsxs2("select", {
197
197
  className: "border-border bg-card mt-1 w-full rounded-md border px-3 py-2 text-sm",
198
198
  value: priority,
199
199
  onChange: (event) => setPriority(event.target.value),
200
200
  children: [
201
- /* @__PURE__ */ jsxDEV2("option", {
201
+ /* @__PURE__ */ jsx2("option", {
202
202
  value: "LOW",
203
203
  children: "Low"
204
- }, undefined, false, undefined, this),
205
- /* @__PURE__ */ jsxDEV2("option", {
204
+ }),
205
+ /* @__PURE__ */ jsx2("option", {
206
206
  value: "MEDIUM",
207
207
  children: "Medium"
208
- }, undefined, false, undefined, this),
209
- /* @__PURE__ */ jsxDEV2("option", {
208
+ }),
209
+ /* @__PURE__ */ jsx2("option", {
210
210
  value: "HIGH",
211
211
  children: "High"
212
- }, undefined, false, undefined, this),
213
- /* @__PURE__ */ jsxDEV2("option", {
212
+ }),
213
+ /* @__PURE__ */ jsx2("option", {
214
214
  value: "URGENT",
215
215
  children: "Urgent"
216
- }, undefined, false, undefined, this)
216
+ })
217
217
  ]
218
- }, undefined, true, undefined, this)
218
+ })
219
219
  ]
220
- }, undefined, true, undefined, this),
221
- /* @__PURE__ */ jsxDEV2("label", {
220
+ }),
221
+ /* @__PURE__ */ jsxs2("label", {
222
222
  className: "text-muted-foreground text-xs font-semibold uppercase",
223
223
  children: [
224
224
  "Category",
225
- /* @__PURE__ */ jsxDEV2("select", {
225
+ /* @__PURE__ */ jsxs2("select", {
226
226
  className: "border-border bg-card mt-1 w-full rounded-md border px-3 py-2 text-sm",
227
227
  value: categoryId,
228
228
  onChange: (event) => setCategoryId(event.target.value),
229
229
  children: [
230
- /* @__PURE__ */ jsxDEV2("option", {
230
+ /* @__PURE__ */ jsx2("option", {
231
231
  value: "none",
232
232
  children: "None"
233
- }, undefined, false, undefined, this),
234
- categories.map((category) => /* @__PURE__ */ jsxDEV2("option", {
233
+ }),
234
+ categories.map((category) => /* @__PURE__ */ jsx2("option", {
235
235
  value: category.id,
236
236
  children: category.name
237
- }, category.id, false, undefined, this))
237
+ }, category.id))
238
238
  ]
239
- }, undefined, true, undefined, this)
239
+ })
240
240
  ]
241
- }, undefined, true, undefined, this),
242
- /* @__PURE__ */ jsxDEV2("label", {
241
+ }),
242
+ /* @__PURE__ */ jsxs2("label", {
243
243
  className: "text-muted-foreground text-xs font-semibold uppercase",
244
244
  children: [
245
245
  "Tags",
246
- /* @__PURE__ */ jsxDEV2("input", {
246
+ /* @__PURE__ */ jsx2("input", {
247
247
  className: "border-border bg-card mt-1 w-full rounded-md border px-3 py-2 text-sm",
248
248
  placeholder: "Comma separated (optional)",
249
249
  value: tagsInput,
250
250
  onChange: (event) => setTagsInput(event.target.value)
251
- }, undefined, false, undefined, this)
251
+ })
252
252
  ]
253
- }, undefined, true, undefined, this)
253
+ })
254
254
  ]
255
- }, undefined, true, undefined, this),
256
- /* @__PURE__ */ jsxDEV2("button", {
255
+ }),
256
+ /* @__PURE__ */ jsx2("button", {
257
257
  type: "submit",
258
258
  className: "btn-primary w-full py-2 text-sm font-semibold",
259
259
  disabled: loading,
260
260
  children: loading ? "Saving..." : "Add task"
261
- }, undefined, false, undefined, this)
261
+ })
262
262
  ]
263
- }, undefined, true, undefined, this);
263
+ });
264
264
  }
265
265
  function parseTags(input) {
266
266
  return input.split(",").map((tag) => tag.trim()).filter(Boolean);
@@ -268,77 +268,77 @@ function parseTags(input) {
268
268
 
269
269
  // src/components/templates/todos/TaskItem.tsx
270
270
  import { Check, Circle, Trash2 } from "lucide-react";
271
- import { jsxDEV as jsxDEV3 } from "react/jsx-dev-runtime";
271
+ import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
272
272
  function TaskItem({ task, onToggle, onDelete }) {
273
273
  const badgeColor = task.priority === "URGENT" ? "text-red-200 bg-red-500/10 border-red-500/40" : task.priority === "HIGH" ? "text-amber-200 bg-amber-500/10 border-amber-500/40" : task.priority === "LOW" ? "text-emerald-200 bg-emerald-500/10 border-emerald-500/40" : "text-violet-200 bg-violet-500/10 border-violet-500/40";
274
- return /* @__PURE__ */ jsxDEV3("div", {
274
+ return /* @__PURE__ */ jsxs3("div", {
275
275
  className: "border-border/70 bg-card/60 hover:border-border flex items-start gap-4 rounded-2xl border p-4 transition",
276
276
  children: [
277
- /* @__PURE__ */ jsxDEV3("button", {
277
+ /* @__PURE__ */ jsx3("button", {
278
278
  type: "button",
279
279
  className: "border-border text-muted-foreground hover:bg-muted/40 rounded-full border p-2",
280
280
  "aria-pressed": task.completed,
281
281
  onClick: () => onToggle?.(task),
282
- children: task.completed ? /* @__PURE__ */ jsxDEV3(Check, {
282
+ children: task.completed ? /* @__PURE__ */ jsx3(Check, {
283
283
  className: "h-4 w-4 text-emerald-400"
284
- }, undefined, false, undefined, this) : /* @__PURE__ */ jsxDEV3(Circle, {
284
+ }) : /* @__PURE__ */ jsx3(Circle, {
285
285
  className: "h-4 w-4"
286
- }, undefined, false, undefined, this)
287
- }, undefined, false, undefined, this),
288
- /* @__PURE__ */ jsxDEV3("div", {
286
+ })
287
+ }),
288
+ /* @__PURE__ */ jsxs3("div", {
289
289
  className: "flex-1 space-y-2",
290
290
  children: [
291
- /* @__PURE__ */ jsxDEV3("div", {
291
+ /* @__PURE__ */ jsxs3("div", {
292
292
  className: "flex flex-wrap items-center gap-2",
293
293
  children: [
294
- /* @__PURE__ */ jsxDEV3("p", {
294
+ /* @__PURE__ */ jsx3("p", {
295
295
  className: `font-medium ${task.completed ? "text-muted-foreground line-through" : "text-foreground"}`,
296
296
  children: task.title
297
- }, undefined, false, undefined, this),
298
- /* @__PURE__ */ jsxDEV3("span", {
297
+ }),
298
+ /* @__PURE__ */ jsx3("span", {
299
299
  className: `rounded-full border px-2 py-0.5 text-xs ${badgeColor}`,
300
300
  children: task.priority.charAt(0) + task.priority.slice(1).toLowerCase()
301
- }, undefined, false, undefined, this),
302
- task.category ? /* @__PURE__ */ jsxDEV3("span", {
301
+ }),
302
+ task.category ? /* @__PURE__ */ jsx3("span", {
303
303
  className: "bg-muted/40 text-muted-foreground rounded-full px-2 py-0.5 text-xs",
304
304
  children: task.category.name
305
- }, undefined, false, undefined, this) : null,
306
- task.dueDate ? /* @__PURE__ */ jsxDEV3("span", {
305
+ }) : null,
306
+ task.dueDate ? /* @__PURE__ */ jsxs3("span", {
307
307
  className: "text-muted-foreground text-xs",
308
308
  children: [
309
309
  "Due ",
310
310
  new Date(task.dueDate).toLocaleDateString()
311
311
  ]
312
- }, undefined, true, undefined, this) : null
312
+ }) : null
313
313
  ]
314
- }, undefined, true, undefined, this),
315
- task.description ? /* @__PURE__ */ jsxDEV3("p", {
314
+ }),
315
+ task.description ? /* @__PURE__ */ jsx3("p", {
316
316
  className: "text-muted-foreground text-sm",
317
317
  children: task.description
318
- }, undefined, false, undefined, this) : null,
319
- task.tags.length ? /* @__PURE__ */ jsxDEV3("div", {
318
+ }) : null,
319
+ task.tags.length ? /* @__PURE__ */ jsx3("div", {
320
320
  className: "flex flex-wrap gap-1",
321
- children: task.tags.map((tag) => /* @__PURE__ */ jsxDEV3("span", {
321
+ children: task.tags.map((tag) => /* @__PURE__ */ jsxs3("span", {
322
322
  className: "bg-muted/40 text-muted-foreground rounded-full px-2 py-0.5 text-xs",
323
323
  children: [
324
324
  "#",
325
325
  tag
326
326
  ]
327
- }, tag, true, undefined, this))
328
- }, undefined, false, undefined, this) : null
327
+ }, tag))
328
+ }) : null
329
329
  ]
330
- }, undefined, true, undefined, this),
331
- /* @__PURE__ */ jsxDEV3("button", {
330
+ }),
331
+ /* @__PURE__ */ jsx3("button", {
332
332
  type: "button",
333
333
  className: "text-muted-foreground hover:text-destructive",
334
334
  "aria-label": `Delete ${task.title}`,
335
335
  onClick: () => onDelete?.(task),
336
- children: /* @__PURE__ */ jsxDEV3(Trash2, {
336
+ children: /* @__PURE__ */ jsx3(Trash2, {
337
337
  className: "h-4 w-4"
338
- }, undefined, false, undefined, this)
339
- }, undefined, false, undefined, this)
338
+ })
339
+ })
340
340
  ]
341
- }, undefined, true, undefined, this);
341
+ });
342
342
  }
343
343
 
344
344
  // src/components/templates/todos/TaskList.tsx
@@ -349,7 +349,7 @@ import {
349
349
  registerTemplateComponents,
350
350
  useTemplateRuntime as useTemplateRuntime2
351
351
  } from "@contractspec/lib.example-shared-ui";
352
- import { jsxDEV as jsxDEV4 } from "react/jsx-dev-runtime";
352
+ import { jsx as jsx4, jsxs as jsxs4 } from "react/jsx-runtime";
353
353
  "use client";
354
354
  var TASKS_QUERY = gql2`
355
355
  query Tasks($projectId: ID!) {
@@ -445,36 +445,36 @@ function TaskList() {
445
445
  refetchQueries: [{ query: TASKS_QUERY, variables: { projectId } }]
446
446
  });
447
447
  };
448
- return /* @__PURE__ */ jsxDEV4("div", {
448
+ return /* @__PURE__ */ jsxs4("div", {
449
449
  className: "space-y-6",
450
450
  children: [
451
- /* @__PURE__ */ jsxDEV4(FilterBar, {
451
+ /* @__PURE__ */ jsx4(FilterBar, {
452
452
  value: filters,
453
453
  onChange: setFilters,
454
454
  categories
455
- }, undefined, false, undefined, this),
456
- /* @__PURE__ */ jsxDEV4(TaskForm, {
455
+ }),
456
+ /* @__PURE__ */ jsx4(TaskForm, {
457
457
  categories
458
- }, undefined, false, undefined, this),
459
- loading ? /* @__PURE__ */ jsxDEV4("p", {
458
+ }),
459
+ loading ? /* @__PURE__ */ jsx4("p", {
460
460
  className: "text-muted-foreground text-sm",
461
461
  children: "Loading tasks\u2026"
462
- }, undefined, false, undefined, this) : filtered.length ? /* @__PURE__ */ jsxDEV4("div", {
462
+ }) : filtered.length ? /* @__PURE__ */ jsx4("div", {
463
463
  className: "space-y-3",
464
- children: filtered.map((task) => /* @__PURE__ */ jsxDEV4(TaskItem, {
464
+ children: filtered.map((task) => /* @__PURE__ */ jsx4(TaskItem, {
465
465
  task,
466
466
  onToggle: handleToggle,
467
467
  onDelete: handleDelete
468
- }, task.id, false, undefined, this))
469
- }, undefined, false, undefined, this) : /* @__PURE__ */ jsxDEV4("div", {
468
+ }, task.id))
469
+ }) : /* @__PURE__ */ jsx4("div", {
470
470
  className: "border-border rounded-2xl border border-dashed p-8 text-center",
471
- children: /* @__PURE__ */ jsxDEV4("p", {
471
+ children: /* @__PURE__ */ jsx4("p", {
472
472
  className: "text-muted-foreground",
473
473
  children: "No tasks match your filters. Create one above."
474
- }, undefined, false, undefined, this)
475
- }, undefined, false, undefined, this)
474
+ })
475
+ })
476
476
  ]
477
- }, undefined, true, undefined, this);
477
+ });
478
478
  }
479
479
  registerTemplateComponents("todos-app", {
480
480
  list: TaskList,
@@ -487,7 +487,7 @@ import { gql as gql3 } from "@apollo/client";
487
487
  import { MessageCircle, Users } from "lucide-react";
488
488
  import { useMemo as useMemo2 } from "react";
489
489
  import { useTemplateRuntime as useTemplateRuntime3 } from "@contractspec/lib.example-shared-ui";
490
- import { jsxDEV as jsxDEV5 } from "react/jsx-dev-runtime";
490
+ import { jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
491
491
  var CONVERSATIONS_QUERY = gql3`
492
492
  query Conversations($projectId: ID!) {
493
493
  conversations(projectId: $projectId) {
@@ -513,66 +513,66 @@ function ConversationList({
513
513
  fetchPolicy: "cache-and-network"
514
514
  });
515
515
  const conversations = useMemo2(() => data?.conversations ?? [], [data]);
516
- return /* @__PURE__ */ jsxDEV5("aside", {
516
+ return /* @__PURE__ */ jsxs5("aside", {
517
517
  className: "border-border bg-card h-full overflow-y-auto rounded-2xl border",
518
518
  children: [
519
- /* @__PURE__ */ jsxDEV5("header", {
519
+ /* @__PURE__ */ jsxs5("header", {
520
520
  className: "border-border px -4 flex items-center justify-between border-b px-4 py-3",
521
521
  children: [
522
- /* @__PURE__ */ jsxDEV5("div", {
522
+ /* @__PURE__ */ jsxs5("div", {
523
523
  children: [
524
- /* @__PURE__ */ jsxDEV5("p", {
524
+ /* @__PURE__ */ jsx5("p", {
525
525
  className: "text-sm font-semibold",
526
526
  children: "Conversations"
527
- }, undefined, false, undefined, this),
528
- /* @__PURE__ */ jsxDEV5("p", {
527
+ }),
528
+ /* @__PURE__ */ jsx5("p", {
529
529
  className: "text-muted-foreground text-xs",
530
530
  children: loading ? "Loading\u2026" : `${conversations.length} active`
531
- }, undefined, false, undefined, this)
531
+ })
532
532
  ]
533
- }, undefined, true, undefined, this),
534
- /* @__PURE__ */ jsxDEV5(Users, {
533
+ }),
534
+ /* @__PURE__ */ jsx5(Users, {
535
535
  className: "text-muted-foreground h-4 w-4"
536
- }, undefined, false, undefined, this)
536
+ })
537
537
  ]
538
- }, undefined, true, undefined, this),
539
- /* @__PURE__ */ jsxDEV5("div", {
538
+ }),
539
+ /* @__PURE__ */ jsxs5("div", {
540
540
  className: "divide-border/70 divide-y",
541
541
  children: [
542
542
  conversations.map((conversation) => {
543
543
  const isSelected = selectedId === conversation.id;
544
- return /* @__PURE__ */ jsxDEV5("button", {
544
+ return /* @__PURE__ */ jsxs5("button", {
545
545
  type: "button",
546
546
  className: `flex w-full flex-col items-start gap-1 px-4 py-3 text-left transition ${isSelected ? "text-foreground bg-violet-500/10" : "hover:bg-muted/40"}`,
547
547
  onClick: () => onSelect?.(conversation.id),
548
548
  children: [
549
- /* @__PURE__ */ jsxDEV5("div", {
549
+ /* @__PURE__ */ jsxs5("div", {
550
550
  className: "flex items-center gap-2",
551
551
  children: [
552
- /* @__PURE__ */ jsxDEV5(MessageCircle, {
552
+ /* @__PURE__ */ jsx5(MessageCircle, {
553
553
  className: "text-muted-foreground h-4 w-4"
554
- }, undefined, false, undefined, this),
555
- /* @__PURE__ */ jsxDEV5("span", {
554
+ }),
555
+ /* @__PURE__ */ jsx5("span", {
556
556
  className: "text-sm font-medium",
557
557
  children: conversation.name || "Untitled conversation"
558
- }, undefined, false, undefined, this)
558
+ })
559
559
  ]
560
- }, undefined, true, undefined, this),
561
- /* @__PURE__ */ jsxDEV5("p", {
560
+ }),
561
+ /* @__PURE__ */ jsx5("p", {
562
562
  className: "text-muted-foreground text-xs",
563
563
  children: conversation.participants.map((participant) => participant.displayName || participant.userId).join(" \xB7 ")
564
- }, undefined, false, undefined, this)
564
+ })
565
565
  ]
566
- }, conversation.id, true, undefined, this);
566
+ }, conversation.id);
567
567
  }),
568
- !loading && conversations.length === 0 ? /* @__PURE__ */ jsxDEV5("p", {
568
+ !loading && conversations.length === 0 ? /* @__PURE__ */ jsx5("p", {
569
569
  className: "text-muted-foreground p-4 text-center text-xs",
570
570
  children: "No conversations yet."
571
- }, undefined, false, undefined, this) : null
571
+ }) : null
572
572
  ]
573
- }, undefined, true, undefined, this)
573
+ })
574
574
  ]
575
- }, undefined, true, undefined, this);
575
+ });
576
576
  }
577
577
 
578
578
  // src/components/templates/messaging/MessageThread.tsx
@@ -580,7 +580,7 @@ import { useMutation as useMutation3, useQuery as useQuery3 } from "@apollo/clie
580
580
  import { gql as gql4 } from "@apollo/client";
581
581
  import { useEffect, useRef } from "react";
582
582
  import { useTemplateRuntime as useTemplateRuntime4 } from "@contractspec/lib.example-shared-ui";
583
- import { jsxDEV as jsxDEV6 } from "react/jsx-dev-runtime";
583
+ import { jsx as jsx6, jsxs as jsxs6 } from "react/jsx-runtime";
584
584
  "use client";
585
585
  var MESSAGES_QUERY = gql4`
586
586
  query Messages($conversationId: ID!) {
@@ -625,32 +625,32 @@ function MessageThread({
625
625
  container.scrollTop = container.scrollHeight;
626
626
  }, [messages]);
627
627
  if (!conversationId) {
628
- return /* @__PURE__ */ jsxDEV6("div", {
628
+ return /* @__PURE__ */ jsx6("div", {
629
629
  className: "border-border flex flex-1 items-center justify-center rounded-2xl border border-dashed",
630
- children: /* @__PURE__ */ jsxDEV6("p", {
630
+ children: /* @__PURE__ */ jsx6("p", {
631
631
  className: "text-muted-foreground text-sm",
632
632
  children: "Select a conversation"
633
- }, undefined, false, undefined, this)
634
- }, undefined, false, undefined, this);
633
+ })
634
+ });
635
635
  }
636
- return /* @__PURE__ */ jsxDEV6("div", {
636
+ return /* @__PURE__ */ jsx6("div", {
637
637
  className: "border-border bg-card flex flex-1 flex-col rounded-2xl border",
638
- children: /* @__PURE__ */ jsxDEV6("div", {
638
+ children: /* @__PURE__ */ jsx6("div", {
639
639
  ref: scrollRef,
640
640
  className: "flex-1 space-y-3 overflow-y-auto p-4",
641
- children: loading ? /* @__PURE__ */ jsxDEV6("p", {
641
+ children: loading ? /* @__PURE__ */ jsx6("p", {
642
642
  className: "text-muted-foreground text-center text-sm",
643
643
  children: "Loading\u2026"
644
- }, undefined, false, undefined, this) : messages.slice().reverse().map((message) => /* @__PURE__ */ jsxDEV6("div", {
644
+ }) : messages.slice().reverse().map((message) => /* @__PURE__ */ jsxs6("div", {
645
645
  className: `flex flex-col ${message.senderId === viewerId ? "items-end" : "items-start"}`,
646
646
  children: [
647
- /* @__PURE__ */ jsxDEV6("div", {
647
+ /* @__PURE__ */ jsx6("div", {
648
648
  className: `max-w-xs rounded-2xl px-3 py-2 text-sm ${message.senderId === viewerId ? "bg-violet-500 text-white" : "bg-muted text-foreground"}`,
649
- children: /* @__PURE__ */ jsxDEV6("p", {
649
+ children: /* @__PURE__ */ jsx6("p", {
650
650
  children: message.content
651
- }, undefined, false, undefined, this)
652
- }, undefined, false, undefined, this),
653
- /* @__PURE__ */ jsxDEV6("span", {
651
+ })
652
+ }),
653
+ /* @__PURE__ */ jsxs6("span", {
654
654
  className: "text-muted-foreground mt-1 text-xs",
655
655
  children: [
656
656
  message.senderName || message.senderId,
@@ -661,11 +661,11 @@ function MessageThread({
661
661
  minute: "2-digit"
662
662
  })
663
663
  ]
664
- }, undefined, true, undefined, this)
664
+ })
665
665
  ]
666
- }, message.id, true, undefined, this))
667
- }, undefined, false, undefined, this)
668
- }, undefined, false, undefined, this);
666
+ }, message.id))
667
+ })
668
+ });
669
669
  }
670
670
 
671
671
  // src/components/templates/messaging/MessageComposer.tsx
@@ -674,7 +674,7 @@ import { useMutation as useMutation4 } from "@apollo/client/react";
674
674
  import { gql as gql5 } from "@apollo/client";
675
675
  import { Send } from "lucide-react";
676
676
  import { useTemplateRuntime as useTemplateRuntime5 } from "@contractspec/lib.example-shared-ui";
677
- import { jsxDEV as jsxDEV7 } from "react/jsx-dev-runtime";
677
+ import { jsx as jsx7, jsxs as jsxs7 } from "react/jsx-runtime";
678
678
  "use client";
679
679
  var SEND_MESSAGE = gql5`
680
680
  mutation SendMessage($input: SendMessageInput!) {
@@ -714,60 +714,60 @@ function MessageComposer({
714
714
  });
715
715
  setContent("");
716
716
  };
717
- return /* @__PURE__ */ jsxDEV7("form", {
717
+ return /* @__PURE__ */ jsxs7("form", {
718
718
  onSubmit: handleSubmit,
719
719
  className: "border-border bg-card mt-3 flex items-center gap-2 rounded-2xl border px-4 py-3",
720
720
  children: [
721
- /* @__PURE__ */ jsxDEV7("input", {
721
+ /* @__PURE__ */ jsx7("input", {
722
722
  type: "text",
723
723
  className: "text-foreground flex-1 bg-transparent text-sm outline-none",
724
724
  placeholder: conversationId ? "Type a message\u2026" : "Select a conversation to start",
725
725
  disabled: !conversationId || loading,
726
726
  value: content,
727
727
  onChange: (event) => setContent(event.target.value)
728
- }, undefined, false, undefined, this),
729
- /* @__PURE__ */ jsxDEV7("button", {
728
+ }),
729
+ /* @__PURE__ */ jsxs7("button", {
730
730
  type: "submit",
731
731
  className: "btn-primary inline-flex items-center gap-1 text-sm",
732
732
  disabled: !conversationId || loading || !content.trim(),
733
733
  children: [
734
- /* @__PURE__ */ jsxDEV7(Send, {
734
+ /* @__PURE__ */ jsx7(Send, {
735
735
  className: "h-4 w-4"
736
- }, undefined, false, undefined, this),
736
+ }),
737
737
  "Send"
738
738
  ]
739
- }, undefined, true, undefined, this)
739
+ })
740
740
  ]
741
- }, undefined, true, undefined, this);
741
+ });
742
742
  }
743
743
 
744
744
  // src/components/templates/messaging/MessagingWorkspace.tsx
745
745
  import { useState as useState4 } from "react";
746
746
  import { registerTemplateComponents as registerTemplateComponents2 } from "@contractspec/lib.example-shared-ui";
747
- import { jsxDEV as jsxDEV8 } from "react/jsx-dev-runtime";
747
+ import { jsx as jsx8, jsxs as jsxs8 } from "react/jsx-runtime";
748
748
  "use client";
749
749
  function MessagingWorkspace() {
750
750
  const [conversationId, setConversationId] = useState4();
751
- return /* @__PURE__ */ jsxDEV8("div", {
751
+ return /* @__PURE__ */ jsxs8("div", {
752
752
  className: "grid gap-4 md:grid-cols-[280px,1fr]",
753
753
  children: [
754
- /* @__PURE__ */ jsxDEV8(ConversationList, {
754
+ /* @__PURE__ */ jsx8(ConversationList, {
755
755
  selectedId: conversationId,
756
756
  onSelect: setConversationId
757
- }, undefined, false, undefined, this),
758
- /* @__PURE__ */ jsxDEV8("div", {
757
+ }),
758
+ /* @__PURE__ */ jsxs8("div", {
759
759
  className: "flex flex-col gap-3",
760
760
  children: [
761
- /* @__PURE__ */ jsxDEV8(MessageThread, {
761
+ /* @__PURE__ */ jsx8(MessageThread, {
762
762
  conversationId
763
- }, undefined, false, undefined, this),
764
- /* @__PURE__ */ jsxDEV8(MessageComposer, {
763
+ }),
764
+ /* @__PURE__ */ jsx8(MessageComposer, {
765
765
  conversationId
766
- }, undefined, false, undefined, this)
766
+ })
767
767
  ]
768
- }, undefined, true, undefined, this)
768
+ })
769
769
  ]
770
- }, undefined, true, undefined, this);
770
+ });
771
771
  }
772
772
  registerTemplateComponents2("messaging-app", {
773
773
  list: MessagingWorkspace,
@@ -775,167 +775,167 @@ registerTemplateComponents2("messaging-app", {
775
775
  form: MessageComposer
776
776
  });
777
777
  // src/components/templates/recipes/LanguageSwitcher.tsx
778
- import { jsxDEV as jsxDEV9 } from "react/jsx-dev-runtime";
778
+ import { jsx as jsx9 } from "react/jsx-runtime";
779
779
  function LanguageSwitcher({ locale, onChange }) {
780
- return /* @__PURE__ */ jsxDEV9("div", {
780
+ return /* @__PURE__ */ jsx9("div", {
781
781
  className: "border-border bg-card text-muted-foreground inline-flex rounded-full border p-1 text-xs font-semibold",
782
- children: ["EN", "FR"].map((language) => /* @__PURE__ */ jsxDEV9("button", {
782
+ children: ["EN", "FR"].map((language) => /* @__PURE__ */ jsx9("button", {
783
783
  type: "button",
784
784
  className: `rounded-full px-3 py-1 transition ${locale === language ? "bg-violet-500 text-white" : "hover:text-foreground"}`,
785
785
  onClick: () => onChange(language),
786
786
  children: language === "EN" ? "English" : "Fran\xE7ais"
787
- }, language, false, undefined, this))
788
- }, undefined, false, undefined, this);
787
+ }, language))
788
+ });
789
789
  }
790
790
 
791
791
  // src/components/templates/recipes/RecipeCard.tsx
792
792
  import { Heart } from "lucide-react";
793
- import { jsxDEV as jsxDEV10 } from "react/jsx-dev-runtime";
793
+ import { jsx as jsx10, jsxs as jsxs9 } from "react/jsx-runtime";
794
794
  function RecipeCard({
795
795
  recipe,
796
796
  onSelect,
797
797
  onToggleFavorite
798
798
  }) {
799
- return /* @__PURE__ */ jsxDEV10("button", {
799
+ return /* @__PURE__ */ jsxs9("button", {
800
800
  type: "button",
801
801
  onClick: () => onSelect?.(recipe),
802
802
  className: "border-border bg-card flex flex-col gap-3 rounded-2xl border text-left transition hover:border-violet-400",
803
803
  children: [
804
- recipe.heroImageUrl ? /* @__PURE__ */ jsxDEV10("img", {
804
+ recipe.heroImageUrl ? /* @__PURE__ */ jsx10("img", {
805
805
  src: recipe.heroImageUrl,
806
806
  alt: recipe.name,
807
807
  className: "h-40 w-full rounded-t-2xl object-cover"
808
- }, undefined, false, undefined, this) : /* @__PURE__ */ jsxDEV10("div", {
808
+ }) : /* @__PURE__ */ jsx10("div", {
809
809
  className: "bg-muted h-40 rounded-t-2xl"
810
- }, undefined, false, undefined, this),
811
- /* @__PURE__ */ jsxDEV10("div", {
810
+ }),
811
+ /* @__PURE__ */ jsxs9("div", {
812
812
  className: "space-y-2 p-4",
813
813
  children: [
814
- /* @__PURE__ */ jsxDEV10("div", {
814
+ /* @__PURE__ */ jsxs9("div", {
815
815
  className: "flex items-center justify-between",
816
816
  children: [
817
- /* @__PURE__ */ jsxDEV10("p", {
817
+ /* @__PURE__ */ jsx10("p", {
818
818
  className: "text-base font-semibold",
819
819
  children: recipe.name
820
- }, undefined, false, undefined, this),
821
- /* @__PURE__ */ jsxDEV10("button", {
820
+ }),
821
+ /* @__PURE__ */ jsx10("button", {
822
822
  type: "button",
823
823
  className: `inline-flex items-center justify-center rounded-full border border-transparent p-2 ${recipe.isFavorite ? "text-red-400" : "text-muted-foreground hover:text-red-400"}`,
824
824
  onClick: (event) => {
825
825
  event.stopPropagation();
826
826
  onToggleFavorite?.(recipe);
827
827
  },
828
- children: /* @__PURE__ */ jsxDEV10(Heart, {
828
+ children: /* @__PURE__ */ jsx10(Heart, {
829
829
  className: `h-4 w-4 ${recipe.isFavorite ? "fill-red-400" : ""}`
830
- }, undefined, false, undefined, this)
831
- }, undefined, false, undefined, this)
830
+ })
831
+ })
832
832
  ]
833
- }, undefined, true, undefined, this),
834
- /* @__PURE__ */ jsxDEV10("p", {
833
+ }),
834
+ /* @__PURE__ */ jsx10("p", {
835
835
  className: "text-muted-foreground line-clamp-2 text-sm",
836
836
  children: recipe.description
837
- }, undefined, false, undefined, this),
838
- /* @__PURE__ */ jsxDEV10("div", {
837
+ }),
838
+ /* @__PURE__ */ jsxs9("div", {
839
839
  className: "text-muted-foreground flex flex-wrap gap-3 text-xs",
840
840
  children: [
841
- recipe.prepTimeMinutes ? /* @__PURE__ */ jsxDEV10("span", {
841
+ recipe.prepTimeMinutes ? /* @__PURE__ */ jsxs9("span", {
842
842
  children: [
843
843
  "Prep ",
844
844
  recipe.prepTimeMinutes,
845
845
  "m"
846
846
  ]
847
- }, undefined, true, undefined, this) : null,
848
- recipe.cookTimeMinutes ? /* @__PURE__ */ jsxDEV10("span", {
847
+ }) : null,
848
+ recipe.cookTimeMinutes ? /* @__PURE__ */ jsxs9("span", {
849
849
  children: [
850
850
  "Cook ",
851
851
  recipe.cookTimeMinutes,
852
852
  "m"
853
853
  ]
854
- }, undefined, true, undefined, this) : null,
855
- recipe.servings ? /* @__PURE__ */ jsxDEV10("span", {
854
+ }) : null,
855
+ recipe.servings ? /* @__PURE__ */ jsxs9("span", {
856
856
  children: [
857
857
  recipe.servings,
858
858
  " servings"
859
859
  ]
860
- }, undefined, true, undefined, this) : null
860
+ }) : null
861
861
  ]
862
- }, undefined, true, undefined, this)
862
+ })
863
863
  ]
864
- }, undefined, true, undefined, this)
864
+ })
865
865
  ]
866
- }, undefined, true, undefined, this);
866
+ });
867
867
  }
868
868
 
869
869
  // src/components/templates/recipes/RecipeDetail.tsx
870
870
  import { BookOpen } from "lucide-react";
871
- import { jsxDEV as jsxDEV11 } from "react/jsx-dev-runtime";
871
+ import { jsx as jsx11, jsxs as jsxs10 } from "react/jsx-runtime";
872
872
  function RecipeDetail({ recipe }) {
873
873
  if (!recipe) {
874
- return /* @__PURE__ */ jsxDEV11("div", {
874
+ return /* @__PURE__ */ jsx11("div", {
875
875
  className: "border-border flex flex-1 items-center justify-center rounded-2xl border border-dashed",
876
- children: /* @__PURE__ */ jsxDEV11("p", {
876
+ children: /* @__PURE__ */ jsx11("p", {
877
877
  className: "text-muted-foreground text-sm",
878
878
  children: "Select a recipe to view details."
879
- }, undefined, false, undefined, this)
880
- }, undefined, false, undefined, this);
879
+ })
880
+ });
881
881
  }
882
- return /* @__PURE__ */ jsxDEV11("article", {
882
+ return /* @__PURE__ */ jsxs10("article", {
883
883
  className: "border-border bg-card space-y-4 rounded-2xl border p-6",
884
884
  children: [
885
- /* @__PURE__ */ jsxDEV11("header", {
885
+ /* @__PURE__ */ jsxs10("header", {
886
886
  className: "flex flex-wrap items-center gap-3",
887
887
  children: [
888
- /* @__PURE__ */ jsxDEV11(BookOpen, {
888
+ /* @__PURE__ */ jsx11(BookOpen, {
889
889
  className: "text-muted-foreground h-5 w-5"
890
- }, undefined, false, undefined, this),
891
- /* @__PURE__ */ jsxDEV11("div", {
890
+ }),
891
+ /* @__PURE__ */ jsxs10("div", {
892
892
  children: [
893
- /* @__PURE__ */ jsxDEV11("h2", {
893
+ /* @__PURE__ */ jsx11("h2", {
894
894
  className: "text-xl font-semibold",
895
895
  children: recipe.name
896
- }, undefined, false, undefined, this),
897
- /* @__PURE__ */ jsxDEV11("p", {
896
+ }),
897
+ /* @__PURE__ */ jsx11("p", {
898
898
  className: "text-muted-foreground text-sm",
899
899
  children: recipe.description
900
- }, undefined, false, undefined, this)
900
+ })
901
901
  ]
902
- }, undefined, true, undefined, this)
902
+ })
903
903
  ]
904
- }, undefined, true, undefined, this),
905
- /* @__PURE__ */ jsxDEV11("section", {
904
+ }),
905
+ /* @__PURE__ */ jsxs10("section", {
906
906
  children: [
907
- /* @__PURE__ */ jsxDEV11("h3", {
907
+ /* @__PURE__ */ jsx11("h3", {
908
908
  className: "text-muted-foreground text-sm font-semibold tracking-wide uppercase",
909
909
  children: "Ingredients"
910
- }, undefined, false, undefined, this),
911
- /* @__PURE__ */ jsxDEV11("ul", {
910
+ }),
911
+ /* @__PURE__ */ jsx11("ul", {
912
912
  className: "text-foreground mt-2 list-disc space-y-1 pl-6 text-sm",
913
- children: recipe.ingredients.map((ingredient) => /* @__PURE__ */ jsxDEV11("li", {
913
+ children: recipe.ingredients.map((ingredient) => /* @__PURE__ */ jsxs10("li", {
914
914
  children: [
915
915
  ingredient.name,
916
916
  " \u2013 ",
917
917
  ingredient.quantity
918
918
  ]
919
- }, ingredient.id, true, undefined, this))
920
- }, undefined, false, undefined, this)
919
+ }, ingredient.id))
920
+ })
921
921
  ]
922
- }, undefined, true, undefined, this),
923
- /* @__PURE__ */ jsxDEV11("section", {
922
+ }),
923
+ /* @__PURE__ */ jsxs10("section", {
924
924
  children: [
925
- /* @__PURE__ */ jsxDEV11("h3", {
925
+ /* @__PURE__ */ jsx11("h3", {
926
926
  className: "text-muted-foreground text-sm font-semibold tracking-wide uppercase",
927
927
  children: "Instructions"
928
- }, undefined, false, undefined, this),
929
- /* @__PURE__ */ jsxDEV11("ol", {
928
+ }),
929
+ /* @__PURE__ */ jsx11("ol", {
930
930
  className: "text-foreground mt-2 list-decimal space-y-2 pl-6 text-sm",
931
- children: recipe.instructions.map((instruction) => /* @__PURE__ */ jsxDEV11("li", {
931
+ children: recipe.instructions.map((instruction) => /* @__PURE__ */ jsx11("li", {
932
932
  children: instruction.content
933
- }, instruction.id, false, undefined, this))
934
- }, undefined, false, undefined, this)
933
+ }, instruction.id))
934
+ })
935
935
  ]
936
- }, undefined, true, undefined, this)
936
+ })
937
937
  ]
938
- }, undefined, true, undefined, this);
938
+ });
939
939
  }
940
940
 
941
941
  // src/components/templates/recipes/RecipeList.tsx
@@ -946,7 +946,7 @@ import {
946
946
  registerTemplateComponents as registerTemplateComponents3,
947
947
  useTemplateRuntime as useTemplateRuntime6
948
948
  } from "@contractspec/lib.example-shared-ui";
949
- import { jsxDEV as jsxDEV12 } from "react/jsx-dev-runtime";
949
+ import { jsx as jsx12, jsxs as jsxs11 } from "react/jsx-runtime";
950
950
  "use client";
951
951
  var RECIPES_QUERY = gql6`
952
952
  query Recipes($projectId: ID!, $locale: RecipeLocale!) {
@@ -1010,41 +1010,41 @@ function RecipeList() {
1010
1010
  }
1011
1011
  });
1012
1012
  };
1013
- return /* @__PURE__ */ jsxDEV12("div", {
1013
+ return /* @__PURE__ */ jsxs11("div", {
1014
1014
  className: "space-y-4",
1015
1015
  children: [
1016
- /* @__PURE__ */ jsxDEV12("div", {
1016
+ /* @__PURE__ */ jsxs11("div", {
1017
1017
  className: "flex flex-wrap items-center gap-3",
1018
1018
  children: [
1019
- /* @__PURE__ */ jsxDEV12(LanguageSwitcher, {
1019
+ /* @__PURE__ */ jsx12(LanguageSwitcher, {
1020
1020
  locale,
1021
1021
  onChange: setLocale
1022
- }, undefined, false, undefined, this),
1023
- /* @__PURE__ */ jsxDEV12("input", {
1022
+ }),
1023
+ /* @__PURE__ */ jsx12("input", {
1024
1024
  type: "search",
1025
1025
  placeholder: locale === "EN" ? "Search recipes" : "Rechercher des recettes",
1026
1026
  className: "border-border bg-card flex-1 rounded-full border px-4 py-2 text-sm",
1027
1027
  value: search,
1028
1028
  onChange: (event) => setSearch(event.target.value)
1029
- }, undefined, false, undefined, this)
1029
+ })
1030
1030
  ]
1031
- }, undefined, true, undefined, this),
1032
- loading ? /* @__PURE__ */ jsxDEV12("p", {
1031
+ }),
1032
+ loading ? /* @__PURE__ */ jsx12("p", {
1033
1033
  className: "text-muted-foreground text-sm",
1034
1034
  children: "Loading recipes\u2026"
1035
- }, undefined, false, undefined, this) : /* @__PURE__ */ jsxDEV12("div", {
1035
+ }) : /* @__PURE__ */ jsx12("div", {
1036
1036
  className: "grid gap-4 md:grid-cols-3",
1037
- children: filtered.map((recipe) => /* @__PURE__ */ jsxDEV12(RecipeCard, {
1037
+ children: filtered.map((recipe) => /* @__PURE__ */ jsx12(RecipeCard, {
1038
1038
  recipe,
1039
1039
  onSelect: setSelected,
1040
1040
  onToggleFavorite: handleToggleFavorite
1041
- }, recipe.id, false, undefined, this))
1042
- }, undefined, false, undefined, this),
1043
- /* @__PURE__ */ jsxDEV12(RecipeDetail, {
1041
+ }, recipe.id))
1042
+ }),
1043
+ /* @__PURE__ */ jsx12(RecipeDetail, {
1044
1044
  recipe: selected
1045
- }, undefined, false, undefined, this)
1045
+ })
1046
1046
  ]
1047
- }, undefined, true, undefined, this);
1047
+ });
1048
1048
  }
1049
1049
  registerTemplateComponents3("recipe-app-i18n", {
1050
1050
  list: RecipeList,