@frontmcp/ui 0.5.1 → 0.6.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 (1134) hide show
  1. package/adapters/index.d.ts +13 -0
  2. package/adapters/index.d.ts.map +1 -0
  3. package/adapters/index.js +462 -0
  4. package/adapters/platform-meta.d.ts +166 -0
  5. package/adapters/platform-meta.d.ts.map +1 -0
  6. package/adapters/response-builder.d.ts +108 -0
  7. package/adapters/response-builder.d.ts.map +1 -0
  8. package/adapters/serving-mode.d.ts +107 -0
  9. package/adapters/serving-mode.d.ts.map +1 -0
  10. package/base-template/bridge.d.ts +90 -0
  11. package/base-template/bridge.d.ts.map +1 -0
  12. package/base-template/default-base-template.d.ts +92 -0
  13. package/base-template/default-base-template.d.ts.map +1 -0
  14. package/base-template/index.d.ts +15 -0
  15. package/base-template/index.d.ts.map +1 -0
  16. package/base-template/index.js +1398 -0
  17. package/base-template/polyfills.d.ts +31 -0
  18. package/base-template/polyfills.d.ts.map +1 -0
  19. package/base-template/theme-styles.d.ts +74 -0
  20. package/base-template/theme-styles.d.ts.map +1 -0
  21. package/bridge/adapters/base-adapter.d.ts +104 -0
  22. package/bridge/adapters/base-adapter.d.ts.map +1 -0
  23. package/bridge/adapters/claude.adapter.d.ts +67 -0
  24. package/bridge/adapters/claude.adapter.d.ts.map +1 -0
  25. package/bridge/adapters/ext-apps.adapter.d.ts +143 -0
  26. package/bridge/adapters/ext-apps.adapter.d.ts.map +1 -0
  27. package/bridge/adapters/gemini.adapter.d.ts +64 -0
  28. package/bridge/adapters/gemini.adapter.d.ts.map +1 -0
  29. package/bridge/adapters/generic.adapter.d.ts +56 -0
  30. package/bridge/adapters/generic.adapter.d.ts.map +1 -0
  31. package/bridge/adapters/index.d.ts +26 -0
  32. package/bridge/adapters/index.d.ts.map +1 -0
  33. package/bridge/adapters/openai.adapter.d.ts +65 -0
  34. package/bridge/adapters/openai.adapter.d.ts.map +1 -0
  35. package/bridge/core/adapter-registry.d.ts +122 -0
  36. package/bridge/core/adapter-registry.d.ts.map +1 -0
  37. package/bridge/core/bridge-factory.d.ts +199 -0
  38. package/bridge/core/bridge-factory.d.ts.map +1 -0
  39. package/bridge/core/index.d.ts +10 -0
  40. package/bridge/core/index.d.ts.map +1 -0
  41. package/bridge/index.d.ts +62 -0
  42. package/bridge/index.d.ts.map +1 -0
  43. package/bridge/index.js +2540 -0
  44. package/bridge/runtime/iife-generator.d.ts +62 -0
  45. package/bridge/runtime/iife-generator.d.ts.map +1 -0
  46. package/bridge/runtime/index.d.ts +9 -0
  47. package/bridge/runtime/index.d.ts.map +1 -0
  48. package/bridge/types.d.ts +386 -0
  49. package/bridge/types.d.ts.map +1 -0
  50. package/build/cdn-resources.d.ts +243 -0
  51. package/build/cdn-resources.d.ts.map +1 -0
  52. package/build/index.d.ts +295 -0
  53. package/build/index.d.ts.map +1 -0
  54. package/build/index.js +7096 -0
  55. package/build/widget-manifest.d.ts +362 -0
  56. package/build/widget-manifest.d.ts.map +1 -0
  57. package/bundler/bundler.d.ts +208 -0
  58. package/bundler/bundler.d.ts.map +1 -0
  59. package/bundler/cache.d.ts +173 -0
  60. package/bundler/cache.d.ts.map +1 -0
  61. package/bundler/file-cache/component-builder.d.ts +167 -0
  62. package/bundler/file-cache/component-builder.d.ts.map +1 -0
  63. package/bundler/file-cache/hash-calculator.d.ts +155 -0
  64. package/bundler/file-cache/hash-calculator.d.ts.map +1 -0
  65. package/bundler/file-cache/index.d.ts +12 -0
  66. package/bundler/file-cache/index.d.ts.map +1 -0
  67. package/bundler/file-cache/storage/filesystem.d.ts +149 -0
  68. package/bundler/file-cache/storage/filesystem.d.ts.map +1 -0
  69. package/bundler/file-cache/storage/index.d.ts +11 -0
  70. package/bundler/file-cache/storage/index.d.ts.map +1 -0
  71. package/bundler/file-cache/storage/interface.d.ts +152 -0
  72. package/bundler/file-cache/storage/interface.d.ts.map +1 -0
  73. package/bundler/file-cache/storage/redis.d.ts +139 -0
  74. package/bundler/file-cache/storage/redis.d.ts.map +1 -0
  75. package/bundler/index.d.ts +43 -0
  76. package/bundler/index.d.ts.map +1 -0
  77. package/bundler/index.js +4754 -0
  78. package/bundler/sandbox/enclave-adapter.d.ts +121 -0
  79. package/bundler/sandbox/enclave-adapter.d.ts.map +1 -0
  80. package/bundler/sandbox/executor.d.ts +14 -0
  81. package/bundler/sandbox/executor.d.ts.map +1 -0
  82. package/bundler/sandbox/policy.d.ts +62 -0
  83. package/bundler/sandbox/policy.d.ts.map +1 -0
  84. package/bundler/types.d.ts +702 -0
  85. package/bundler/types.d.ts.map +1 -0
  86. package/components/alert.d.ts +66 -0
  87. package/components/alert.d.ts.map +1 -0
  88. package/components/alert.schema.d.ts +98 -0
  89. package/components/alert.schema.d.ts.map +1 -0
  90. package/components/avatar.d.ts +77 -0
  91. package/components/avatar.d.ts.map +1 -0
  92. package/components/avatar.schema.d.ts +170 -0
  93. package/components/avatar.schema.d.ts.map +1 -0
  94. package/components/badge.d.ts +64 -0
  95. package/components/badge.d.ts.map +1 -0
  96. package/components/badge.schema.d.ts +91 -0
  97. package/components/badge.schema.d.ts.map +1 -0
  98. package/components/button.d.ts +100 -0
  99. package/components/button.d.ts.map +1 -0
  100. package/components/button.schema.d.ts +120 -0
  101. package/components/button.schema.d.ts.map +1 -0
  102. package/components/card.d.ts +53 -0
  103. package/components/card.d.ts.map +1 -0
  104. package/components/card.schema.d.ts +93 -0
  105. package/components/card.schema.d.ts.map +1 -0
  106. package/components/form.d.ts +212 -0
  107. package/components/form.d.ts.map +1 -0
  108. package/components/form.schema.d.ts +365 -0
  109. package/components/form.schema.d.ts.map +1 -0
  110. package/components/index.d.ts +29 -0
  111. package/components/index.d.ts.map +1 -0
  112. package/components/index.js +2595 -0
  113. package/components/list.d.ts +121 -0
  114. package/components/list.d.ts.map +1 -0
  115. package/components/list.schema.d.ts +129 -0
  116. package/components/list.schema.d.ts.map +1 -0
  117. package/components/modal.d.ts +100 -0
  118. package/components/modal.d.ts.map +1 -0
  119. package/components/modal.schema.d.ts +151 -0
  120. package/components/modal.schema.d.ts.map +1 -0
  121. package/components/table.d.ts +91 -0
  122. package/components/table.d.ts.map +1 -0
  123. package/components/table.schema.d.ts +123 -0
  124. package/components/table.schema.d.ts.map +1 -0
  125. package/dependency/cdn-registry.d.ts +98 -0
  126. package/dependency/cdn-registry.d.ts.map +1 -0
  127. package/dependency/import-map.d.ts +186 -0
  128. package/dependency/import-map.d.ts.map +1 -0
  129. package/dependency/import-parser.d.ts +82 -0
  130. package/dependency/import-parser.d.ts.map +1 -0
  131. package/dependency/index.d.ts +17 -0
  132. package/dependency/index.d.ts.map +1 -0
  133. package/dependency/resolver.d.ts +164 -0
  134. package/dependency/resolver.d.ts.map +1 -0
  135. package/dependency/schemas.d.ts +486 -0
  136. package/dependency/schemas.d.ts.map +1 -0
  137. package/dependency/template-loader.d.ts +204 -0
  138. package/dependency/template-loader.d.ts.map +1 -0
  139. package/dependency/template-processor.d.ts +118 -0
  140. package/dependency/template-processor.d.ts.map +1 -0
  141. package/dependency/types.d.ts +739 -0
  142. package/dependency/types.d.ts.map +1 -0
  143. package/esm/adapters/index.d.ts +13 -0
  144. package/esm/adapters/index.d.ts.map +1 -0
  145. package/esm/adapters/index.js +427 -0
  146. package/esm/adapters/platform-meta.d.ts +166 -0
  147. package/esm/adapters/platform-meta.d.ts.map +1 -0
  148. package/esm/adapters/response-builder.d.ts +108 -0
  149. package/esm/adapters/response-builder.d.ts.map +1 -0
  150. package/esm/adapters/serving-mode.d.ts +107 -0
  151. package/esm/adapters/serving-mode.d.ts.map +1 -0
  152. package/esm/base-template/bridge.d.ts +90 -0
  153. package/esm/base-template/bridge.d.ts.map +1 -0
  154. package/esm/base-template/default-base-template.d.ts +92 -0
  155. package/esm/base-template/default-base-template.d.ts.map +1 -0
  156. package/esm/base-template/index.d.ts +15 -0
  157. package/esm/base-template/index.d.ts.map +1 -0
  158. package/esm/base-template/index.js +1364 -0
  159. package/esm/base-template/polyfills.d.ts +31 -0
  160. package/esm/base-template/polyfills.d.ts.map +1 -0
  161. package/esm/base-template/theme-styles.d.ts +74 -0
  162. package/esm/base-template/theme-styles.d.ts.map +1 -0
  163. package/esm/bridge/adapters/base-adapter.d.ts +104 -0
  164. package/esm/bridge/adapters/base-adapter.d.ts.map +1 -0
  165. package/esm/bridge/adapters/claude.adapter.d.ts +67 -0
  166. package/esm/bridge/adapters/claude.adapter.d.ts.map +1 -0
  167. package/esm/bridge/adapters/ext-apps.adapter.d.ts +143 -0
  168. package/esm/bridge/adapters/ext-apps.adapter.d.ts.map +1 -0
  169. package/esm/bridge/adapters/gemini.adapter.d.ts +64 -0
  170. package/esm/bridge/adapters/gemini.adapter.d.ts.map +1 -0
  171. package/esm/bridge/adapters/generic.adapter.d.ts +56 -0
  172. package/esm/bridge/adapters/generic.adapter.d.ts.map +1 -0
  173. package/esm/bridge/adapters/index.d.ts +26 -0
  174. package/esm/bridge/adapters/index.d.ts.map +1 -0
  175. package/esm/bridge/adapters/openai.adapter.d.ts +65 -0
  176. package/esm/bridge/adapters/openai.adapter.d.ts.map +1 -0
  177. package/esm/bridge/core/adapter-registry.d.ts +122 -0
  178. package/esm/bridge/core/adapter-registry.d.ts.map +1 -0
  179. package/esm/bridge/core/bridge-factory.d.ts +199 -0
  180. package/esm/bridge/core/bridge-factory.d.ts.map +1 -0
  181. package/esm/bridge/core/index.d.ts +10 -0
  182. package/esm/bridge/core/index.d.ts.map +1 -0
  183. package/esm/bridge/index.d.ts +62 -0
  184. package/esm/bridge/index.d.ts.map +1 -0
  185. package/esm/bridge/index.js +2487 -0
  186. package/esm/bridge/runtime/iife-generator.d.ts +62 -0
  187. package/esm/bridge/runtime/iife-generator.d.ts.map +1 -0
  188. package/esm/bridge/runtime/index.d.ts +9 -0
  189. package/esm/bridge/runtime/index.d.ts.map +1 -0
  190. package/esm/bridge/types.d.ts +386 -0
  191. package/esm/bridge/types.d.ts.map +1 -0
  192. package/esm/build/cdn-resources.d.ts +243 -0
  193. package/esm/build/cdn-resources.d.ts.map +1 -0
  194. package/esm/build/index.d.ts +295 -0
  195. package/esm/build/index.d.ts.map +1 -0
  196. package/esm/build/index.js +7021 -0
  197. package/esm/build/widget-manifest.d.ts +362 -0
  198. package/esm/build/widget-manifest.d.ts.map +1 -0
  199. package/esm/bundler/bundler.d.ts +208 -0
  200. package/esm/bundler/bundler.d.ts.map +1 -0
  201. package/esm/bundler/cache.d.ts +173 -0
  202. package/esm/bundler/cache.d.ts.map +1 -0
  203. package/esm/bundler/file-cache/component-builder.d.ts +167 -0
  204. package/esm/bundler/file-cache/component-builder.d.ts.map +1 -0
  205. package/esm/bundler/file-cache/hash-calculator.d.ts +155 -0
  206. package/esm/bundler/file-cache/hash-calculator.d.ts.map +1 -0
  207. package/esm/bundler/file-cache/index.d.ts +12 -0
  208. package/esm/bundler/file-cache/index.d.ts.map +1 -0
  209. package/esm/bundler/file-cache/storage/filesystem.d.ts +149 -0
  210. package/esm/bundler/file-cache/storage/filesystem.d.ts.map +1 -0
  211. package/esm/bundler/file-cache/storage/index.d.ts +11 -0
  212. package/esm/bundler/file-cache/storage/index.d.ts.map +1 -0
  213. package/esm/bundler/file-cache/storage/interface.d.ts +152 -0
  214. package/esm/bundler/file-cache/storage/interface.d.ts.map +1 -0
  215. package/esm/bundler/file-cache/storage/redis.d.ts +139 -0
  216. package/esm/bundler/file-cache/storage/redis.d.ts.map +1 -0
  217. package/esm/bundler/index.d.ts +43 -0
  218. package/esm/bundler/index.d.ts.map +1 -0
  219. package/esm/bundler/index.js +4687 -0
  220. package/esm/bundler/sandbox/enclave-adapter.d.ts +121 -0
  221. package/esm/bundler/sandbox/enclave-adapter.d.ts.map +1 -0
  222. package/esm/bundler/sandbox/executor.d.ts +14 -0
  223. package/esm/bundler/sandbox/executor.d.ts.map +1 -0
  224. package/esm/bundler/sandbox/policy.d.ts +62 -0
  225. package/esm/bundler/sandbox/policy.d.ts.map +1 -0
  226. package/esm/bundler/types.d.ts +702 -0
  227. package/esm/bundler/types.d.ts.map +1 -0
  228. package/esm/components/alert.d.ts +66 -0
  229. package/esm/components/alert.d.ts.map +1 -0
  230. package/esm/components/alert.schema.d.ts +98 -0
  231. package/esm/components/alert.schema.d.ts.map +1 -0
  232. package/esm/components/avatar.d.ts +77 -0
  233. package/esm/components/avatar.d.ts.map +1 -0
  234. package/esm/components/avatar.schema.d.ts +170 -0
  235. package/esm/components/avatar.schema.d.ts.map +1 -0
  236. package/esm/components/badge.d.ts +64 -0
  237. package/esm/components/badge.d.ts.map +1 -0
  238. package/esm/components/badge.schema.d.ts +91 -0
  239. package/esm/components/badge.schema.d.ts.map +1 -0
  240. package/esm/components/button.d.ts +100 -0
  241. package/esm/components/button.d.ts.map +1 -0
  242. package/esm/components/button.schema.d.ts +120 -0
  243. package/esm/components/button.schema.d.ts.map +1 -0
  244. package/esm/components/card.d.ts +53 -0
  245. package/esm/components/card.d.ts.map +1 -0
  246. package/esm/components/card.schema.d.ts +93 -0
  247. package/esm/components/card.schema.d.ts.map +1 -0
  248. package/esm/components/form.d.ts +212 -0
  249. package/esm/components/form.d.ts.map +1 -0
  250. package/esm/components/form.schema.d.ts +365 -0
  251. package/esm/components/form.schema.d.ts.map +1 -0
  252. package/esm/components/index.d.ts +29 -0
  253. package/esm/components/index.d.ts.map +1 -0
  254. package/esm/components/index.js +2456 -0
  255. package/esm/components/list.d.ts +121 -0
  256. package/esm/components/list.d.ts.map +1 -0
  257. package/esm/components/list.schema.d.ts +129 -0
  258. package/esm/components/list.schema.d.ts.map +1 -0
  259. package/esm/components/modal.d.ts +100 -0
  260. package/esm/components/modal.d.ts.map +1 -0
  261. package/esm/components/modal.schema.d.ts +151 -0
  262. package/esm/components/modal.schema.d.ts.map +1 -0
  263. package/esm/components/table.d.ts +91 -0
  264. package/esm/components/table.d.ts.map +1 -0
  265. package/esm/components/table.schema.d.ts +123 -0
  266. package/esm/components/table.schema.d.ts.map +1 -0
  267. package/esm/dependency/cdn-registry.d.ts +98 -0
  268. package/esm/dependency/cdn-registry.d.ts.map +1 -0
  269. package/esm/dependency/import-map.d.ts +186 -0
  270. package/esm/dependency/import-map.d.ts.map +1 -0
  271. package/esm/dependency/import-parser.d.ts +82 -0
  272. package/esm/dependency/import-parser.d.ts.map +1 -0
  273. package/esm/dependency/index.d.ts +17 -0
  274. package/esm/dependency/index.d.ts.map +1 -0
  275. package/esm/dependency/resolver.d.ts +164 -0
  276. package/esm/dependency/resolver.d.ts.map +1 -0
  277. package/esm/dependency/schemas.d.ts +486 -0
  278. package/esm/dependency/schemas.d.ts.map +1 -0
  279. package/esm/dependency/template-loader.d.ts +204 -0
  280. package/esm/dependency/template-loader.d.ts.map +1 -0
  281. package/esm/dependency/template-processor.d.ts +118 -0
  282. package/esm/dependency/template-processor.d.ts.map +1 -0
  283. package/esm/dependency/types.d.ts +739 -0
  284. package/esm/dependency/types.d.ts.map +1 -0
  285. package/esm/handlebars/expression-extractor.d.ts +147 -0
  286. package/esm/handlebars/expression-extractor.d.ts.map +1 -0
  287. package/esm/handlebars/helpers.d.ts +339 -0
  288. package/esm/handlebars/helpers.d.ts.map +1 -0
  289. package/esm/handlebars/index.d.ts +195 -0
  290. package/esm/handlebars/index.d.ts.map +1 -0
  291. package/esm/handlebars/index.js +587 -0
  292. package/esm/index.d.ts +56 -0
  293. package/esm/index.d.ts.map +1 -0
  294. package/esm/index.js +20511 -0
  295. package/esm/layouts/base.d.ts +86 -0
  296. package/esm/layouts/base.d.ts.map +1 -0
  297. package/esm/layouts/index.d.ts +8 -0
  298. package/esm/layouts/index.d.ts.map +1 -0
  299. package/esm/layouts/index.js +892 -0
  300. package/esm/layouts/presets.d.ts +134 -0
  301. package/esm/layouts/presets.d.ts.map +1 -0
  302. package/esm/package.json +90 -0
  303. package/esm/pages/consent.d.ts +117 -0
  304. package/esm/pages/consent.d.ts.map +1 -0
  305. package/esm/pages/error.d.ts +101 -0
  306. package/esm/pages/error.d.ts.map +1 -0
  307. package/esm/pages/index.d.ts +9 -0
  308. package/esm/pages/index.d.ts.map +1 -0
  309. package/esm/pages/index.js +1563 -0
  310. package/esm/react/Alert.d.ts +102 -0
  311. package/esm/react/Alert.d.ts.map +1 -0
  312. package/esm/react/Badge.d.ts +101 -0
  313. package/esm/react/Badge.d.ts.map +1 -0
  314. package/esm/react/Button.d.ts +109 -0
  315. package/esm/react/Button.d.ts.map +1 -0
  316. package/esm/react/Card.d.ts +104 -0
  317. package/esm/react/Card.d.ts.map +1 -0
  318. package/esm/react/hooks/context.d.ts +179 -0
  319. package/esm/react/hooks/context.d.ts.map +1 -0
  320. package/esm/react/hooks/index.d.ts +42 -0
  321. package/esm/react/hooks/index.d.ts.map +1 -0
  322. package/esm/react/hooks/tools.d.ts +284 -0
  323. package/esm/react/hooks/tools.d.ts.map +1 -0
  324. package/esm/react/index.d.ts +81 -0
  325. package/esm/react/index.d.ts.map +1 -0
  326. package/esm/react/index.js +1372 -0
  327. package/esm/react/types.d.ts +106 -0
  328. package/esm/react/types.d.ts.map +1 -0
  329. package/esm/react/utils.d.ts +43 -0
  330. package/esm/react/utils.d.ts.map +1 -0
  331. package/esm/registry/index.d.ts +46 -0
  332. package/esm/registry/index.d.ts.map +1 -0
  333. package/esm/registry/index.js +6422 -0
  334. package/esm/registry/render-template.d.ts +91 -0
  335. package/esm/registry/render-template.d.ts.map +1 -0
  336. package/esm/registry/tool-ui.registry.d.ts +294 -0
  337. package/esm/registry/tool-ui.registry.d.ts.map +1 -0
  338. package/esm/registry/uri-utils.d.ts +56 -0
  339. package/esm/registry/uri-utils.d.ts.map +1 -0
  340. package/esm/render/index.d.ts +8 -0
  341. package/esm/render/index.d.ts.map +1 -0
  342. package/esm/render/index.js +45 -0
  343. package/esm/render/prerender.d.ts +57 -0
  344. package/esm/render/prerender.d.ts.map +1 -0
  345. package/esm/renderers/cache.d.ts +145 -0
  346. package/esm/renderers/cache.d.ts.map +1 -0
  347. package/esm/renderers/html.renderer.d.ts +123 -0
  348. package/esm/renderers/html.renderer.d.ts.map +1 -0
  349. package/esm/renderers/index.d.ts +36 -0
  350. package/esm/renderers/index.d.ts.map +1 -0
  351. package/esm/renderers/index.js +1827 -0
  352. package/esm/renderers/mdx.renderer.d.ts +120 -0
  353. package/esm/renderers/mdx.renderer.d.ts.map +1 -0
  354. package/esm/renderers/react.renderer.d.ts +96 -0
  355. package/esm/renderers/react.renderer.d.ts.map +1 -0
  356. package/esm/renderers/registry.d.ts +134 -0
  357. package/esm/renderers/registry.d.ts.map +1 -0
  358. package/esm/renderers/types.d.ts +342 -0
  359. package/esm/renderers/types.d.ts.map +1 -0
  360. package/esm/renderers/utils/detect.d.ts +107 -0
  361. package/esm/renderers/utils/detect.d.ts.map +1 -0
  362. package/esm/renderers/utils/hash.d.ts +40 -0
  363. package/esm/renderers/utils/hash.d.ts.map +1 -0
  364. package/esm/renderers/utils/index.d.ts +9 -0
  365. package/esm/renderers/utils/index.d.ts.map +1 -0
  366. package/esm/renderers/utils/transpiler.d.ts +89 -0
  367. package/esm/renderers/utils/transpiler.d.ts.map +1 -0
  368. package/esm/runtime/adapters/html.adapter.d.ts +59 -0
  369. package/esm/runtime/adapters/html.adapter.d.ts.map +1 -0
  370. package/esm/runtime/adapters/index.d.ts +26 -0
  371. package/esm/runtime/adapters/index.d.ts.map +1 -0
  372. package/esm/runtime/adapters/mdx.adapter.d.ts +73 -0
  373. package/esm/runtime/adapters/mdx.adapter.d.ts.map +1 -0
  374. package/esm/runtime/adapters/react.adapter.d.ts +70 -0
  375. package/esm/runtime/adapters/react.adapter.d.ts.map +1 -0
  376. package/esm/runtime/adapters/types.d.ts +95 -0
  377. package/esm/runtime/adapters/types.d.ts.map +1 -0
  378. package/esm/runtime/csp.d.ts +48 -0
  379. package/esm/runtime/csp.d.ts.map +1 -0
  380. package/esm/runtime/index.d.ts +17 -0
  381. package/esm/runtime/index.d.ts.map +1 -0
  382. package/esm/runtime/index.js +5186 -0
  383. package/esm/runtime/mcp-bridge.d.ts +101 -0
  384. package/esm/runtime/mcp-bridge.d.ts.map +1 -0
  385. package/esm/runtime/renderer-runtime.d.ts +133 -0
  386. package/esm/runtime/renderer-runtime.d.ts.map +1 -0
  387. package/esm/runtime/sanitizer.d.ts +172 -0
  388. package/esm/runtime/sanitizer.d.ts.map +1 -0
  389. package/esm/runtime/types.d.ts +415 -0
  390. package/esm/runtime/types.d.ts.map +1 -0
  391. package/esm/runtime/wrapper.d.ts +421 -0
  392. package/esm/runtime/wrapper.d.ts.map +1 -0
  393. package/esm/styles/index.d.ts +8 -0
  394. package/esm/styles/index.d.ts.map +1 -0
  395. package/esm/styles/index.js +171 -0
  396. package/esm/styles/variants.d.ts +51 -0
  397. package/esm/styles/variants.d.ts.map +1 -0
  398. package/esm/theme/cdn.d.ts +195 -0
  399. package/esm/theme/cdn.d.ts.map +1 -0
  400. package/esm/theme/index.d.ts +18 -0
  401. package/esm/theme/index.d.ts.map +1 -0
  402. package/esm/theme/index.js +700 -0
  403. package/esm/theme/platforms.d.ts +107 -0
  404. package/esm/theme/platforms.d.ts.map +1 -0
  405. package/esm/theme/presets/github-openai.d.ts +50 -0
  406. package/esm/theme/presets/github-openai.d.ts.map +1 -0
  407. package/esm/theme/presets/index.d.ts +11 -0
  408. package/esm/theme/presets/index.d.ts.map +1 -0
  409. package/esm/theme/theme.d.ts +396 -0
  410. package/esm/theme/theme.d.ts.map +1 -0
  411. package/esm/tool-template/builder.d.ts +213 -0
  412. package/esm/tool-template/builder.d.ts.map +1 -0
  413. package/esm/tool-template/index.d.ts +16 -0
  414. package/esm/tool-template/index.d.ts.map +1 -0
  415. package/esm/tool-template/index.js +3515 -0
  416. package/esm/types/index.d.ts +14 -0
  417. package/esm/types/index.d.ts.map +1 -0
  418. package/esm/types/index.js +75 -0
  419. package/esm/types/ui-config.d.ts +639 -0
  420. package/esm/types/ui-config.d.ts.map +1 -0
  421. package/esm/types/ui-runtime.d.ts +1007 -0
  422. package/esm/types/ui-runtime.d.ts.map +1 -0
  423. package/esm/typings/cache/cache-adapter.d.ts +125 -0
  424. package/esm/typings/cache/cache-adapter.d.ts.map +1 -0
  425. package/esm/typings/cache/index.d.ts +10 -0
  426. package/esm/typings/cache/index.d.ts.map +1 -0
  427. package/esm/typings/cache/memory-cache.d.ts +92 -0
  428. package/esm/typings/cache/memory-cache.d.ts.map +1 -0
  429. package/esm/typings/dts-parser.d.ts +90 -0
  430. package/esm/typings/dts-parser.d.ts.map +1 -0
  431. package/esm/typings/index.d.ts +48 -0
  432. package/esm/typings/index.d.ts.map +1 -0
  433. package/esm/typings/schemas.d.ts +232 -0
  434. package/esm/typings/schemas.d.ts.map +1 -0
  435. package/esm/typings/type-fetcher.d.ts +89 -0
  436. package/esm/typings/type-fetcher.d.ts.map +1 -0
  437. package/esm/typings/types.d.ts +320 -0
  438. package/esm/typings/types.d.ts.map +1 -0
  439. package/esm/universal/UniversalApp.d.ts +108 -0
  440. package/esm/universal/UniversalApp.d.ts.map +1 -0
  441. package/esm/universal/cached-runtime.d.ts +115 -0
  442. package/esm/universal/cached-runtime.d.ts.map +1 -0
  443. package/esm/universal/context.d.ts +122 -0
  444. package/esm/universal/context.d.ts.map +1 -0
  445. package/esm/universal/index.d.ts +57 -0
  446. package/esm/universal/index.d.ts.map +1 -0
  447. package/esm/universal/renderers/html.renderer.d.ts +37 -0
  448. package/esm/universal/renderers/html.renderer.d.ts.map +1 -0
  449. package/esm/universal/renderers/index.d.ts +112 -0
  450. package/esm/universal/renderers/index.d.ts.map +1 -0
  451. package/esm/universal/renderers/markdown.renderer.d.ts +33 -0
  452. package/esm/universal/renderers/markdown.renderer.d.ts.map +1 -0
  453. package/esm/universal/renderers/mdx.renderer.d.ts +38 -0
  454. package/esm/universal/renderers/mdx.renderer.d.ts.map +1 -0
  455. package/esm/universal/renderers/react.renderer.d.ts +46 -0
  456. package/esm/universal/renderers/react.renderer.d.ts.map +1 -0
  457. package/esm/universal/runtime-builder.d.ts +33 -0
  458. package/esm/universal/runtime-builder.d.ts.map +1 -0
  459. package/esm/universal/store.d.ts +135 -0
  460. package/esm/universal/store.d.ts.map +1 -0
  461. package/esm/universal/types.d.ts +199 -0
  462. package/esm/universal/types.d.ts.map +1 -0
  463. package/esm/utils/escape-html.d.ts +58 -0
  464. package/esm/utils/escape-html.d.ts.map +1 -0
  465. package/esm/utils/index.d.ts +10 -0
  466. package/esm/utils/index.d.ts.map +1 -0
  467. package/esm/utils/index.js +40 -0
  468. package/esm/utils/safe-stringify.d.ts +30 -0
  469. package/esm/utils/safe-stringify.d.ts.map +1 -0
  470. package/esm/validation/error-box.d.ts +56 -0
  471. package/esm/validation/error-box.d.ts.map +1 -0
  472. package/esm/validation/index.d.ts +13 -0
  473. package/esm/validation/index.d.ts.map +1 -0
  474. package/esm/validation/index.js +562 -0
  475. package/esm/validation/schema-paths.d.ts +118 -0
  476. package/esm/validation/schema-paths.d.ts.map +1 -0
  477. package/esm/validation/template-validator.d.ts +143 -0
  478. package/esm/validation/template-validator.d.ts.map +1 -0
  479. package/esm/validation/wrapper.d.ts +97 -0
  480. package/esm/validation/wrapper.d.ts.map +1 -0
  481. package/esm/web-components/core/attribute-parser.d.ts +82 -0
  482. package/esm/web-components/core/attribute-parser.d.ts.map +1 -0
  483. package/esm/web-components/core/base-element.d.ts +197 -0
  484. package/esm/web-components/core/base-element.d.ts.map +1 -0
  485. package/esm/web-components/core/index.d.ts +9 -0
  486. package/esm/web-components/core/index.d.ts.map +1 -0
  487. package/esm/web-components/elements/fmcp-alert.d.ts +46 -0
  488. package/esm/web-components/elements/fmcp-alert.d.ts.map +1 -0
  489. package/esm/web-components/elements/fmcp-badge.d.ts +47 -0
  490. package/esm/web-components/elements/fmcp-badge.d.ts.map +1 -0
  491. package/esm/web-components/elements/fmcp-button.d.ts +117 -0
  492. package/esm/web-components/elements/fmcp-button.d.ts.map +1 -0
  493. package/esm/web-components/elements/fmcp-card.d.ts +53 -0
  494. package/esm/web-components/elements/fmcp-card.d.ts.map +1 -0
  495. package/esm/web-components/elements/fmcp-input.d.ts +96 -0
  496. package/esm/web-components/elements/fmcp-input.d.ts.map +1 -0
  497. package/esm/web-components/elements/fmcp-select.d.ts +100 -0
  498. package/esm/web-components/elements/fmcp-select.d.ts.map +1 -0
  499. package/esm/web-components/elements/index.d.ts +13 -0
  500. package/esm/web-components/elements/index.d.ts.map +1 -0
  501. package/esm/web-components/index.d.ts +50 -0
  502. package/esm/web-components/index.d.ts.map +1 -0
  503. package/esm/web-components/index.js +2048 -0
  504. package/esm/web-components/register.d.ts +57 -0
  505. package/esm/web-components/register.d.ts.map +1 -0
  506. package/esm/web-components/types.d.ts +122 -0
  507. package/esm/web-components/types.d.ts.map +1 -0
  508. package/esm/widgets/index.d.ts +8 -0
  509. package/esm/widgets/index.d.ts.map +1 -0
  510. package/esm/widgets/index.js +941 -0
  511. package/esm/widgets/progress.d.ts +133 -0
  512. package/esm/widgets/progress.d.ts.map +1 -0
  513. package/esm/widgets/resource.d.ts +163 -0
  514. package/esm/widgets/resource.d.ts.map +1 -0
  515. package/handlebars/expression-extractor.d.ts +147 -0
  516. package/handlebars/expression-extractor.d.ts.map +1 -0
  517. package/handlebars/helpers.d.ts +339 -0
  518. package/handlebars/helpers.d.ts.map +1 -0
  519. package/handlebars/index.d.ts +195 -0
  520. package/handlebars/index.d.ts.map +1 -0
  521. package/handlebars/index.js +666 -0
  522. package/index.d.ts +56 -0
  523. package/index.d.ts.map +1 -0
  524. package/index.js +20942 -0
  525. package/layouts/base.d.ts +86 -0
  526. package/layouts/base.d.ts.map +1 -0
  527. package/layouts/index.d.ts +8 -0
  528. package/layouts/index.d.ts.map +1 -0
  529. package/layouts/index.js +930 -0
  530. package/layouts/presets.d.ts +134 -0
  531. package/layouts/presets.d.ts.map +1 -0
  532. package/package.json +26 -85
  533. package/pages/consent.d.ts +117 -0
  534. package/pages/consent.d.ts.map +1 -0
  535. package/pages/error.d.ts +101 -0
  536. package/pages/error.d.ts.map +1 -0
  537. package/pages/index.d.ts +9 -0
  538. package/pages/index.d.ts.map +1 -0
  539. package/pages/index.js +1602 -0
  540. package/react/Alert.d.ts +102 -0
  541. package/react/Alert.d.ts.map +1 -0
  542. package/react/Badge.d.ts +101 -0
  543. package/react/Badge.d.ts.map +1 -0
  544. package/react/Button.d.ts +109 -0
  545. package/react/Button.d.ts.map +1 -0
  546. package/react/Card.d.ts +104 -0
  547. package/react/Card.d.ts.map +1 -0
  548. package/react/hooks/context.d.ts +179 -0
  549. package/react/hooks/context.d.ts.map +1 -0
  550. package/react/hooks/index.d.ts +42 -0
  551. package/react/hooks/index.d.ts.map +1 -0
  552. package/react/hooks/tools.d.ts +284 -0
  553. package/react/hooks/tools.d.ts.map +1 -0
  554. package/react/index.d.ts +81 -0
  555. package/react/index.d.ts.map +1 -0
  556. package/react/index.js +1430 -0
  557. package/react/types.d.ts +106 -0
  558. package/react/types.d.ts.map +1 -0
  559. package/react/utils.d.ts +43 -0
  560. package/react/utils.d.ts.map +1 -0
  561. package/registry/index.d.ts +46 -0
  562. package/registry/index.d.ts.map +1 -0
  563. package/registry/index.js +6465 -0
  564. package/registry/render-template.d.ts +91 -0
  565. package/registry/render-template.d.ts.map +1 -0
  566. package/registry/tool-ui.registry.d.ts +294 -0
  567. package/registry/tool-ui.registry.d.ts.map +1 -0
  568. package/registry/uri-utils.d.ts +56 -0
  569. package/registry/uri-utils.d.ts.map +1 -0
  570. package/render/index.d.ts +8 -0
  571. package/render/index.d.ts.map +1 -0
  572. package/render/index.js +77 -0
  573. package/render/prerender.d.ts +57 -0
  574. package/render/prerender.d.ts.map +1 -0
  575. package/renderers/cache.d.ts +145 -0
  576. package/renderers/cache.d.ts.map +1 -0
  577. package/renderers/html.renderer.d.ts +123 -0
  578. package/renderers/html.renderer.d.ts.map +1 -0
  579. package/renderers/index.d.ts +36 -0
  580. package/renderers/index.d.ts.map +1 -0
  581. package/renderers/index.js +1882 -0
  582. package/renderers/mdx.renderer.d.ts +120 -0
  583. package/renderers/mdx.renderer.d.ts.map +1 -0
  584. package/renderers/react.renderer.d.ts +96 -0
  585. package/renderers/react.renderer.d.ts.map +1 -0
  586. package/renderers/registry.d.ts +134 -0
  587. package/renderers/registry.d.ts.map +1 -0
  588. package/renderers/types.d.ts +342 -0
  589. package/renderers/types.d.ts.map +1 -0
  590. package/renderers/utils/detect.d.ts +107 -0
  591. package/renderers/utils/detect.d.ts.map +1 -0
  592. package/renderers/utils/hash.d.ts +40 -0
  593. package/renderers/utils/hash.d.ts.map +1 -0
  594. package/renderers/utils/index.d.ts +9 -0
  595. package/renderers/utils/index.d.ts.map +1 -0
  596. package/renderers/utils/transpiler.d.ts +89 -0
  597. package/renderers/utils/transpiler.d.ts.map +1 -0
  598. package/runtime/adapters/html.adapter.d.ts +59 -0
  599. package/runtime/adapters/html.adapter.d.ts.map +1 -0
  600. package/runtime/adapters/index.d.ts +26 -0
  601. package/runtime/adapters/index.d.ts.map +1 -0
  602. package/runtime/adapters/mdx.adapter.d.ts +73 -0
  603. package/runtime/adapters/mdx.adapter.d.ts.map +1 -0
  604. package/runtime/adapters/react.adapter.d.ts +70 -0
  605. package/runtime/adapters/react.adapter.d.ts.map +1 -0
  606. package/runtime/adapters/types.d.ts +95 -0
  607. package/runtime/adapters/types.d.ts.map +1 -0
  608. package/runtime/csp.d.ts +48 -0
  609. package/runtime/csp.d.ts.map +1 -0
  610. package/runtime/index.d.ts +17 -0
  611. package/runtime/index.d.ts.map +1 -0
  612. package/runtime/index.js +5264 -0
  613. package/runtime/mcp-bridge.d.ts +101 -0
  614. package/runtime/mcp-bridge.d.ts.map +1 -0
  615. package/runtime/renderer-runtime.d.ts +133 -0
  616. package/runtime/renderer-runtime.d.ts.map +1 -0
  617. package/runtime/sanitizer.d.ts +172 -0
  618. package/runtime/sanitizer.d.ts.map +1 -0
  619. package/runtime/types.d.ts +415 -0
  620. package/runtime/types.d.ts.map +1 -0
  621. package/runtime/wrapper.d.ts +421 -0
  622. package/runtime/wrapper.d.ts.map +1 -0
  623. package/styles/index.d.ts +8 -0
  624. package/styles/index.d.ts.map +1 -0
  625. package/styles/index.js +222 -0
  626. package/styles/variants.d.ts +51 -0
  627. package/styles/variants.d.ts.map +1 -0
  628. package/theme/cdn.d.ts +195 -0
  629. package/theme/cdn.d.ts.map +1 -0
  630. package/theme/index.d.ts +18 -0
  631. package/theme/index.d.ts.map +1 -0
  632. package/theme/index.js +757 -0
  633. package/theme/platforms.d.ts +107 -0
  634. package/theme/platforms.d.ts.map +1 -0
  635. package/theme/presets/github-openai.d.ts +50 -0
  636. package/theme/presets/github-openai.d.ts.map +1 -0
  637. package/theme/presets/index.d.ts +11 -0
  638. package/theme/presets/index.d.ts.map +1 -0
  639. package/theme/theme.d.ts +396 -0
  640. package/theme/theme.d.ts.map +1 -0
  641. package/tool-template/builder.d.ts +213 -0
  642. package/tool-template/builder.d.ts.map +1 -0
  643. package/tool-template/index.d.ts +16 -0
  644. package/tool-template/index.d.ts.map +1 -0
  645. package/tool-template/index.js +3559 -0
  646. package/types/index.d.ts +14 -0
  647. package/types/index.d.ts.map +1 -0
  648. package/types/index.js +108 -0
  649. package/types/ui-config.d.ts +639 -0
  650. package/types/ui-config.d.ts.map +1 -0
  651. package/types/ui-runtime.d.ts +1007 -0
  652. package/types/ui-runtime.d.ts.map +1 -0
  653. package/typings/cache/cache-adapter.d.ts +125 -0
  654. package/typings/cache/cache-adapter.d.ts.map +1 -0
  655. package/typings/cache/index.d.ts +10 -0
  656. package/typings/cache/index.d.ts.map +1 -0
  657. package/typings/cache/memory-cache.d.ts +92 -0
  658. package/typings/cache/memory-cache.d.ts.map +1 -0
  659. package/typings/dts-parser.d.ts +90 -0
  660. package/typings/dts-parser.d.ts.map +1 -0
  661. package/typings/index.d.ts +48 -0
  662. package/typings/index.d.ts.map +1 -0
  663. package/typings/schemas.d.ts +232 -0
  664. package/typings/schemas.d.ts.map +1 -0
  665. package/typings/type-fetcher.d.ts +89 -0
  666. package/typings/type-fetcher.d.ts.map +1 -0
  667. package/typings/types.d.ts +320 -0
  668. package/typings/types.d.ts.map +1 -0
  669. package/universal/UniversalApp.d.ts +108 -0
  670. package/universal/UniversalApp.d.ts.map +1 -0
  671. package/universal/cached-runtime.d.ts +115 -0
  672. package/universal/cached-runtime.d.ts.map +1 -0
  673. package/universal/context.d.ts +122 -0
  674. package/universal/context.d.ts.map +1 -0
  675. package/universal/index.d.ts +57 -0
  676. package/universal/index.d.ts.map +1 -0
  677. package/universal/renderers/html.renderer.d.ts +37 -0
  678. package/universal/renderers/html.renderer.d.ts.map +1 -0
  679. package/universal/renderers/index.d.ts +112 -0
  680. package/universal/renderers/index.d.ts.map +1 -0
  681. package/universal/renderers/markdown.renderer.d.ts +33 -0
  682. package/universal/renderers/markdown.renderer.d.ts.map +1 -0
  683. package/universal/renderers/mdx.renderer.d.ts +38 -0
  684. package/universal/renderers/mdx.renderer.d.ts.map +1 -0
  685. package/universal/renderers/react.renderer.d.ts +46 -0
  686. package/universal/renderers/react.renderer.d.ts.map +1 -0
  687. package/universal/runtime-builder.d.ts +33 -0
  688. package/universal/runtime-builder.d.ts.map +1 -0
  689. package/universal/store.d.ts +135 -0
  690. package/universal/store.d.ts.map +1 -0
  691. package/universal/types.d.ts +199 -0
  692. package/universal/types.d.ts.map +1 -0
  693. package/utils/escape-html.d.ts +58 -0
  694. package/utils/escape-html.d.ts.map +1 -0
  695. package/utils/index.d.ts +10 -0
  696. package/utils/index.d.ts.map +1 -0
  697. package/utils/index.js +70 -0
  698. package/utils/safe-stringify.d.ts +30 -0
  699. package/utils/safe-stringify.d.ts.map +1 -0
  700. package/validation/error-box.d.ts +56 -0
  701. package/validation/error-box.d.ts.map +1 -0
  702. package/validation/index.d.ts +13 -0
  703. package/validation/index.d.ts.map +1 -0
  704. package/validation/index.js +603 -0
  705. package/validation/schema-paths.d.ts +118 -0
  706. package/validation/schema-paths.d.ts.map +1 -0
  707. package/validation/template-validator.d.ts +143 -0
  708. package/validation/template-validator.d.ts.map +1 -0
  709. package/validation/wrapper.d.ts +97 -0
  710. package/validation/wrapper.d.ts.map +1 -0
  711. package/web-components/core/attribute-parser.d.ts +82 -0
  712. package/web-components/core/attribute-parser.d.ts.map +1 -0
  713. package/web-components/core/base-element.d.ts +197 -0
  714. package/web-components/core/base-element.d.ts.map +1 -0
  715. package/web-components/core/index.d.ts +9 -0
  716. package/web-components/core/index.d.ts.map +1 -0
  717. package/web-components/elements/fmcp-alert.d.ts +46 -0
  718. package/web-components/elements/fmcp-alert.d.ts.map +1 -0
  719. package/web-components/elements/fmcp-badge.d.ts +47 -0
  720. package/web-components/elements/fmcp-badge.d.ts.map +1 -0
  721. package/web-components/elements/fmcp-button.d.ts +117 -0
  722. package/web-components/elements/fmcp-button.d.ts.map +1 -0
  723. package/web-components/elements/fmcp-card.d.ts +53 -0
  724. package/web-components/elements/fmcp-card.d.ts.map +1 -0
  725. package/web-components/elements/fmcp-input.d.ts +96 -0
  726. package/web-components/elements/fmcp-input.d.ts.map +1 -0
  727. package/web-components/elements/fmcp-select.d.ts +100 -0
  728. package/web-components/elements/fmcp-select.d.ts.map +1 -0
  729. package/web-components/elements/index.d.ts +13 -0
  730. package/web-components/elements/index.d.ts.map +1 -0
  731. package/web-components/index.d.ts +50 -0
  732. package/web-components/index.d.ts.map +1 -0
  733. package/web-components/index.js +2093 -0
  734. package/web-components/register.d.ts +57 -0
  735. package/web-components/register.d.ts.map +1 -0
  736. package/web-components/types.d.ts +122 -0
  737. package/web-components/types.d.ts.map +1 -0
  738. package/widgets/index.d.ts +8 -0
  739. package/widgets/index.d.ts.map +1 -0
  740. package/widgets/index.js +978 -0
  741. package/widgets/progress.d.ts +133 -0
  742. package/widgets/progress.d.ts.map +1 -0
  743. package/widgets/resource.d.ts +163 -0
  744. package/widgets/resource.d.ts.map +1 -0
  745. package/src/adapters/index.d.ts +0 -10
  746. package/src/adapters/index.js +0 -18
  747. package/src/adapters/index.js.map +0 -1
  748. package/src/adapters/platform-meta.d.ts +0 -165
  749. package/src/adapters/platform-meta.js +0 -310
  750. package/src/adapters/platform-meta.js.map +0 -1
  751. package/src/base-template/bridge.d.ts +0 -89
  752. package/src/base-template/bridge.js +0 -452
  753. package/src/base-template/bridge.js.map +0 -1
  754. package/src/base-template/default-base-template.d.ts +0 -91
  755. package/src/base-template/default-base-template.js +0 -435
  756. package/src/base-template/default-base-template.js.map +0 -1
  757. package/src/base-template/index.d.ts +0 -14
  758. package/src/base-template/index.js +0 -30
  759. package/src/base-template/index.js.map +0 -1
  760. package/src/base-template/polyfills.d.ts +0 -30
  761. package/src/base-template/polyfills.js +0 -190
  762. package/src/base-template/polyfills.js.map +0 -1
  763. package/src/base-template/theme-styles.d.ts +0 -73
  764. package/src/base-template/theme-styles.js +0 -95
  765. package/src/base-template/theme-styles.js.map +0 -1
  766. package/src/bridge/adapters/base-adapter.d.ts +0 -103
  767. package/src/bridge/adapters/base-adapter.js +0 -314
  768. package/src/bridge/adapters/base-adapter.js.map +0 -1
  769. package/src/bridge/adapters/claude.adapter.d.ts +0 -66
  770. package/src/bridge/adapters/claude.adapter.js +0 -145
  771. package/src/bridge/adapters/claude.adapter.js.map +0 -1
  772. package/src/bridge/adapters/ext-apps.adapter.d.ts +0 -142
  773. package/src/bridge/adapters/ext-apps.adapter.js +0 -416
  774. package/src/bridge/adapters/ext-apps.adapter.js.map +0 -1
  775. package/src/bridge/adapters/gemini.adapter.d.ts +0 -63
  776. package/src/bridge/adapters/gemini.adapter.js +0 -160
  777. package/src/bridge/adapters/gemini.adapter.js.map +0 -1
  778. package/src/bridge/adapters/generic.adapter.d.ts +0 -55
  779. package/src/bridge/adapters/generic.adapter.js +0 -108
  780. package/src/bridge/adapters/generic.adapter.js.map +0 -1
  781. package/src/bridge/adapters/index.d.ts +0 -25
  782. package/src/bridge/adapters/index.js +0 -65
  783. package/src/bridge/adapters/index.js.map +0 -1
  784. package/src/bridge/adapters/openai.adapter.d.ts +0 -64
  785. package/src/bridge/adapters/openai.adapter.js +0 -194
  786. package/src/bridge/adapters/openai.adapter.js.map +0 -1
  787. package/src/bridge/core/adapter-registry.d.ts +0 -121
  788. package/src/bridge/core/adapter-registry.js +0 -271
  789. package/src/bridge/core/adapter-registry.js.map +0 -1
  790. package/src/bridge/core/bridge-factory.d.ts +0 -198
  791. package/src/bridge/core/bridge-factory.js +0 -428
  792. package/src/bridge/core/bridge-factory.js.map +0 -1
  793. package/src/bridge/core/index.d.ts +0 -9
  794. package/src/bridge/core/index.js +0 -22
  795. package/src/bridge/core/index.js.map +0 -1
  796. package/src/bridge/index.d.ts +0 -61
  797. package/src/bridge/index.js +0 -94
  798. package/src/bridge/index.js.map +0 -1
  799. package/src/bridge/runtime/iife-generator.d.ts +0 -61
  800. package/src/bridge/runtime/iife-generator.js +0 -940
  801. package/src/bridge/runtime/iife-generator.js.map +0 -1
  802. package/src/bridge/runtime/index.d.ts +0 -8
  803. package/src/bridge/runtime/index.js +0 -16
  804. package/src/bridge/runtime/index.js.map +0 -1
  805. package/src/bridge/types.d.ts +0 -385
  806. package/src/bridge/types.js +0 -11
  807. package/src/bridge/types.js.map +0 -1
  808. package/src/build/cdn-resources.d.ts +0 -140
  809. package/src/build/cdn-resources.js +0 -314
  810. package/src/build/cdn-resources.js.map +0 -1
  811. package/src/build/index.d.ts +0 -294
  812. package/src/build/index.js +0 -325
  813. package/src/build/index.js.map +0 -1
  814. package/src/build/widget-manifest.d.ts +0 -212
  815. package/src/build/widget-manifest.js +0 -652
  816. package/src/build/widget-manifest.js.map +0 -1
  817. package/src/bundler/bundler.d.ts +0 -110
  818. package/src/bundler/bundler.js +0 -432
  819. package/src/bundler/bundler.js.map +0 -1
  820. package/src/bundler/cache.d.ts +0 -172
  821. package/src/bundler/cache.js +0 -250
  822. package/src/bundler/cache.js.map +0 -1
  823. package/src/bundler/index.d.ts +0 -41
  824. package/src/bundler/index.js +0 -73
  825. package/src/bundler/index.js.map +0 -1
  826. package/src/bundler/sandbox/enclave-adapter.d.ts +0 -120
  827. package/src/bundler/sandbox/enclave-adapter.js +0 -339
  828. package/src/bundler/sandbox/enclave-adapter.js.map +0 -1
  829. package/src/bundler/sandbox/executor.d.ts +0 -13
  830. package/src/bundler/sandbox/executor.js +0 -22
  831. package/src/bundler/sandbox/executor.js.map +0 -1
  832. package/src/bundler/sandbox/policy.d.ts +0 -61
  833. package/src/bundler/sandbox/policy.js +0 -238
  834. package/src/bundler/sandbox/policy.js.map +0 -1
  835. package/src/bundler/types.d.ts +0 -347
  836. package/src/bundler/types.js +0 -132
  837. package/src/bundler/types.js.map +0 -1
  838. package/src/components/alert.d.ts +0 -71
  839. package/src/components/alert.js +0 -189
  840. package/src/components/alert.js.map +0 -1
  841. package/src/components/alert.schema.d.ts +0 -114
  842. package/src/components/alert.schema.js +0 -105
  843. package/src/components/alert.schema.js.map +0 -1
  844. package/src/components/avatar.d.ts +0 -76
  845. package/src/components/avatar.js +0 -176
  846. package/src/components/avatar.js.map +0 -1
  847. package/src/components/avatar.schema.d.ts +0 -169
  848. package/src/components/avatar.schema.js +0 -103
  849. package/src/components/avatar.schema.js.map +0 -1
  850. package/src/components/badge.d.ts +0 -70
  851. package/src/components/badge.js +0 -149
  852. package/src/components/badge.js.map +0 -1
  853. package/src/components/badge.schema.d.ts +0 -109
  854. package/src/components/badge.schema.js +0 -96
  855. package/src/components/badge.schema.js.map +0 -1
  856. package/src/components/button.d.ts +0 -111
  857. package/src/components/button.js +0 -336
  858. package/src/components/button.js.map +0 -1
  859. package/src/components/button.schema.d.ts +0 -148
  860. package/src/components/button.schema.js +0 -121
  861. package/src/components/button.schema.js.map +0 -1
  862. package/src/components/card.d.ts +0 -60
  863. package/src/components/card.js +0 -117
  864. package/src/components/card.js.map +0 -1
  865. package/src/components/card.schema.d.ts +0 -113
  866. package/src/components/card.schema.js +0 -98
  867. package/src/components/card.schema.js.map +0 -1
  868. package/src/components/form.d.ts +0 -239
  869. package/src/components/form.js +0 -420
  870. package/src/components/form.js.map +0 -1
  871. package/src/components/form.schema.d.ts +0 -441
  872. package/src/components/form.schema.js +0 -406
  873. package/src/components/form.schema.js.map +0 -1
  874. package/src/components/index.d.ts +0 -29
  875. package/src/components/index.js +0 -98
  876. package/src/components/index.js.map +0 -1
  877. package/src/components/list.d.ts +0 -127
  878. package/src/components/list.js +0 -279
  879. package/src/components/list.js.map +0 -1
  880. package/src/components/list.schema.d.ts +0 -134
  881. package/src/components/list.schema.js +0 -168
  882. package/src/components/list.schema.js.map +0 -1
  883. package/src/components/modal.d.ts +0 -111
  884. package/src/components/modal.js +0 -260
  885. package/src/components/modal.js.map +0 -1
  886. package/src/components/modal.schema.d.ts +0 -186
  887. package/src/components/modal.schema.js +0 -167
  888. package/src/components/modal.schema.js.map +0 -1
  889. package/src/components/table.d.ts +0 -105
  890. package/src/components/table.js +0 -283
  891. package/src/components/table.js.map +0 -1
  892. package/src/components/table.schema.d.ts +0 -159
  893. package/src/components/table.schema.js +0 -173
  894. package/src/components/table.schema.js.map +0 -1
  895. package/src/handlebars/helpers.d.ts +0 -348
  896. package/src/handlebars/helpers.js +0 -605
  897. package/src/handlebars/helpers.js.map +0 -1
  898. package/src/handlebars/index.d.ts +0 -193
  899. package/src/handlebars/index.js +0 -350
  900. package/src/handlebars/index.js.map +0 -1
  901. package/src/index.d.ts +0 -50
  902. package/src/index.js +0 -192
  903. package/src/index.js.map +0 -1
  904. package/src/layouts/base.d.ts +0 -88
  905. package/src/layouts/base.js +0 -227
  906. package/src/layouts/base.js.map +0 -1
  907. package/src/layouts/index.d.ts +0 -7
  908. package/src/layouts/index.js +0 -25
  909. package/src/layouts/index.js.map +0 -1
  910. package/src/layouts/presets.d.ts +0 -133
  911. package/src/layouts/presets.js +0 -277
  912. package/src/layouts/presets.js.map +0 -1
  913. package/src/pages/consent.d.ts +0 -116
  914. package/src/pages/consent.js +0 -218
  915. package/src/pages/consent.js.map +0 -1
  916. package/src/pages/error.d.ts +0 -100
  917. package/src/pages/error.js +0 -263
  918. package/src/pages/error.js.map +0 -1
  919. package/src/pages/index.d.ts +0 -8
  920. package/src/pages/index.js +0 -27
  921. package/src/pages/index.js.map +0 -1
  922. package/src/react/Alert.d.ts +0 -101
  923. package/src/react/Alert.js +0 -51
  924. package/src/react/Alert.js.map +0 -1
  925. package/src/react/Badge.d.ts +0 -100
  926. package/src/react/Badge.js +0 -55
  927. package/src/react/Badge.js.map +0 -1
  928. package/src/react/Button.d.ts +0 -108
  929. package/src/react/Button.js +0 -52
  930. package/src/react/Button.js.map +0 -1
  931. package/src/react/Card.d.ts +0 -103
  932. package/src/react/Card.js +0 -55
  933. package/src/react/Card.js.map +0 -1
  934. package/src/react/hooks/context.d.ts +0 -178
  935. package/src/react/hooks/context.js +0 -287
  936. package/src/react/hooks/context.js.map +0 -1
  937. package/src/react/hooks/index.d.ts +0 -41
  938. package/src/react/hooks/index.js +0 -61
  939. package/src/react/hooks/index.js.map +0 -1
  940. package/src/react/hooks/tools.d.ts +0 -283
  941. package/src/react/hooks/tools.js +0 -465
  942. package/src/react/hooks/tools.js.map +0 -1
  943. package/src/react/index.d.ts +0 -80
  944. package/src/react/index.js +0 -113
  945. package/src/react/index.js.map +0 -1
  946. package/src/react/types.d.ts +0 -105
  947. package/src/react/types.js +0 -12
  948. package/src/react/types.js.map +0 -1
  949. package/src/react/utils.d.ts +0 -42
  950. package/src/react/utils.js +0 -99
  951. package/src/react/utils.js.map +0 -1
  952. package/src/registry/index.d.ts +0 -45
  953. package/src/registry/index.js +0 -67
  954. package/src/registry/index.js.map +0 -1
  955. package/src/registry/render-template.d.ts +0 -86
  956. package/src/registry/render-template.js +0 -239
  957. package/src/registry/render-template.js.map +0 -1
  958. package/src/registry/tool-ui.registry.d.ts +0 -260
  959. package/src/registry/tool-ui.registry.js +0 -438
  960. package/src/registry/tool-ui.registry.js.map +0 -1
  961. package/src/registry/uri-utils.d.ts +0 -55
  962. package/src/registry/uri-utils.js +0 -97
  963. package/src/registry/uri-utils.js.map +0 -1
  964. package/src/render/index.d.ts +0 -7
  965. package/src/render/index.js +0 -14
  966. package/src/render/index.js.map +0 -1
  967. package/src/render/prerender.d.ts +0 -56
  968. package/src/render/prerender.js +0 -98
  969. package/src/render/prerender.js.map +0 -1
  970. package/src/renderers/cache.d.ts +0 -144
  971. package/src/renderers/cache.js +0 -240
  972. package/src/renderers/cache.js.map +0 -1
  973. package/src/renderers/html.renderer.d.ts +0 -122
  974. package/src/renderers/html.renderer.js +0 -204
  975. package/src/renderers/html.renderer.js.map +0 -1
  976. package/src/renderers/index.d.ts +0 -35
  977. package/src/renderers/index.js +0 -70
  978. package/src/renderers/index.js.map +0 -1
  979. package/src/renderers/mdx.renderer.d.ts +0 -119
  980. package/src/renderers/mdx.renderer.js +0 -305
  981. package/src/renderers/mdx.renderer.js.map +0 -1
  982. package/src/renderers/react.renderer.d.ts +0 -95
  983. package/src/renderers/react.renderer.js +0 -260
  984. package/src/renderers/react.renderer.js.map +0 -1
  985. package/src/renderers/registry.d.ts +0 -133
  986. package/src/renderers/registry.js +0 -232
  987. package/src/renderers/registry.js.map +0 -1
  988. package/src/renderers/types.d.ts +0 -341
  989. package/src/renderers/types.js +0 -9
  990. package/src/renderers/types.js.map +0 -1
  991. package/src/renderers/utils/detect.d.ts +0 -106
  992. package/src/renderers/utils/detect.js +0 -267
  993. package/src/renderers/utils/detect.js.map +0 -1
  994. package/src/renderers/utils/hash.d.ts +0 -39
  995. package/src/renderers/utils/hash.js +0 -75
  996. package/src/renderers/utils/hash.js.map +0 -1
  997. package/src/renderers/utils/index.d.ts +0 -8
  998. package/src/renderers/utils/index.js +0 -28
  999. package/src/renderers/utils/index.js.map +0 -1
  1000. package/src/renderers/utils/transpiler.d.ts +0 -88
  1001. package/src/renderers/utils/transpiler.js +0 -215
  1002. package/src/renderers/utils/transpiler.js.map +0 -1
  1003. package/src/runtime/adapters/html.adapter.d.ts +0 -58
  1004. package/src/runtime/adapters/html.adapter.js +0 -131
  1005. package/src/runtime/adapters/html.adapter.js.map +0 -1
  1006. package/src/runtime/adapters/index.d.ts +0 -25
  1007. package/src/runtime/adapters/index.js +0 -54
  1008. package/src/runtime/adapters/index.js.map +0 -1
  1009. package/src/runtime/adapters/mdx.adapter.d.ts +0 -72
  1010. package/src/runtime/adapters/mdx.adapter.js +0 -241
  1011. package/src/runtime/adapters/mdx.adapter.js.map +0 -1
  1012. package/src/runtime/adapters/react.adapter.d.ts +0 -69
  1013. package/src/runtime/adapters/react.adapter.js +0 -245
  1014. package/src/runtime/adapters/react.adapter.js.map +0 -1
  1015. package/src/runtime/adapters/types.d.ts +0 -94
  1016. package/src/runtime/adapters/types.js +0 -11
  1017. package/src/runtime/adapters/types.js.map +0 -1
  1018. package/src/runtime/csp.d.ts +0 -37
  1019. package/src/runtime/csp.js +0 -140
  1020. package/src/runtime/csp.js.map +0 -1
  1021. package/src/runtime/index.d.ts +0 -16
  1022. package/src/runtime/index.js +0 -72
  1023. package/src/runtime/index.js.map +0 -1
  1024. package/src/runtime/mcp-bridge.d.ts +0 -100
  1025. package/src/runtime/mcp-bridge.js +0 -581
  1026. package/src/runtime/mcp-bridge.js.map +0 -1
  1027. package/src/runtime/renderer-runtime.d.ts +0 -132
  1028. package/src/runtime/renderer-runtime.js +0 -389
  1029. package/src/runtime/renderer-runtime.js.map +0 -1
  1030. package/src/runtime/sanitizer.d.ts +0 -171
  1031. package/src/runtime/sanitizer.js +0 -318
  1032. package/src/runtime/sanitizer.js.map +0 -1
  1033. package/src/runtime/types.d.ts +0 -414
  1034. package/src/runtime/types.js +0 -12
  1035. package/src/runtime/types.js.map +0 -1
  1036. package/src/runtime/wrapper.d.ts +0 -375
  1037. package/src/runtime/wrapper.js +0 -1793
  1038. package/src/runtime/wrapper.js.map +0 -1
  1039. package/src/styles/index.d.ts +0 -7
  1040. package/src/styles/index.js +0 -11
  1041. package/src/styles/index.js.map +0 -1
  1042. package/src/styles/variants.d.ts +0 -50
  1043. package/src/styles/variants.js +0 -175
  1044. package/src/styles/variants.js.map +0 -1
  1045. package/src/theme/cdn.d.ts +0 -194
  1046. package/src/theme/cdn.js +0 -375
  1047. package/src/theme/cdn.js.map +0 -1
  1048. package/src/theme/index.d.ts +0 -17
  1049. package/src/theme/index.js +0 -57
  1050. package/src/theme/index.js.map +0 -1
  1051. package/src/theme/platforms.d.ts +0 -106
  1052. package/src/theme/platforms.js +0 -161
  1053. package/src/theme/platforms.js.map +0 -1
  1054. package/src/theme/presets/github-openai.d.ts +0 -49
  1055. package/src/theme/presets/github-openai.js +0 -189
  1056. package/src/theme/presets/github-openai.js.map +0 -1
  1057. package/src/theme/presets/index.d.ts +0 -10
  1058. package/src/theme/presets/index.js +0 -17
  1059. package/src/theme/presets/index.js.map +0 -1
  1060. package/src/theme/theme.d.ts +0 -395
  1061. package/src/theme/theme.js +0 -332
  1062. package/src/theme/theme.js.map +0 -1
  1063. package/src/tool-template/builder.d.ts +0 -212
  1064. package/src/tool-template/builder.js +0 -397
  1065. package/src/tool-template/builder.js.map +0 -1
  1066. package/src/tool-template/index.d.ts +0 -15
  1067. package/src/tool-template/index.js +0 -38
  1068. package/src/tool-template/index.js.map +0 -1
  1069. package/src/types/index.d.ts +0 -13
  1070. package/src/types/index.js +0 -26
  1071. package/src/types/index.js.map +0 -1
  1072. package/src/types/ui-config.d.ts +0 -357
  1073. package/src/types/ui-config.js +0 -12
  1074. package/src/types/ui-config.js.map +0 -1
  1075. package/src/types/ui-runtime.d.ts +0 -965
  1076. package/src/types/ui-runtime.js +0 -117
  1077. package/src/types/ui-runtime.js.map +0 -1
  1078. package/src/validation/error-box.d.ts +0 -55
  1079. package/src/validation/error-box.js +0 -75
  1080. package/src/validation/error-box.js.map +0 -1
  1081. package/src/validation/index.d.ts +0 -12
  1082. package/src/validation/index.js +0 -21
  1083. package/src/validation/index.js.map +0 -1
  1084. package/src/validation/wrapper.d.ts +0 -96
  1085. package/src/validation/wrapper.js +0 -117
  1086. package/src/validation/wrapper.js.map +0 -1
  1087. package/src/web-components/core/attribute-parser.d.ts +0 -85
  1088. package/src/web-components/core/attribute-parser.js +0 -189
  1089. package/src/web-components/core/attribute-parser.js.map +0 -1
  1090. package/src/web-components/core/base-element.d.ts +0 -197
  1091. package/src/web-components/core/base-element.js +0 -289
  1092. package/src/web-components/core/base-element.js.map +0 -1
  1093. package/src/web-components/core/index.d.ts +0 -8
  1094. package/src/web-components/core/index.js +0 -18
  1095. package/src/web-components/core/index.js.map +0 -1
  1096. package/src/web-components/elements/fmcp-alert.d.ts +0 -45
  1097. package/src/web-components/elements/fmcp-alert.js +0 -93
  1098. package/src/web-components/elements/fmcp-alert.js.map +0 -1
  1099. package/src/web-components/elements/fmcp-badge.d.ts +0 -46
  1100. package/src/web-components/elements/fmcp-badge.js +0 -99
  1101. package/src/web-components/elements/fmcp-badge.js.map +0 -1
  1102. package/src/web-components/elements/fmcp-button.d.ts +0 -124
  1103. package/src/web-components/elements/fmcp-button.js +0 -233
  1104. package/src/web-components/elements/fmcp-button.js.map +0 -1
  1105. package/src/web-components/elements/fmcp-card.d.ts +0 -52
  1106. package/src/web-components/elements/fmcp-card.js +0 -115
  1107. package/src/web-components/elements/fmcp-card.js.map +0 -1
  1108. package/src/web-components/elements/fmcp-input.d.ts +0 -95
  1109. package/src/web-components/elements/fmcp-input.js +0 -248
  1110. package/src/web-components/elements/fmcp-input.js.map +0 -1
  1111. package/src/web-components/elements/fmcp-select.d.ts +0 -99
  1112. package/src/web-components/elements/fmcp-select.js +0 -243
  1113. package/src/web-components/elements/fmcp-select.js.map +0 -1
  1114. package/src/web-components/elements/index.d.ts +0 -12
  1115. package/src/web-components/elements/index.js +0 -34
  1116. package/src/web-components/elements/index.js.map +0 -1
  1117. package/src/web-components/index.d.ts +0 -49
  1118. package/src/web-components/index.js +0 -75
  1119. package/src/web-components/index.js.map +0 -1
  1120. package/src/web-components/register.d.ts +0 -56
  1121. package/src/web-components/register.js +0 -80
  1122. package/src/web-components/register.js.map +0 -1
  1123. package/src/web-components/types.d.ts +0 -121
  1124. package/src/web-components/types.js +0 -25
  1125. package/src/web-components/types.js.map +0 -1
  1126. package/src/widgets/index.d.ts +0 -7
  1127. package/src/widgets/index.js +0 -24
  1128. package/src/widgets/index.js.map +0 -1
  1129. package/src/widgets/progress.d.ts +0 -132
  1130. package/src/widgets/progress.js +0 -303
  1131. package/src/widgets/progress.js.map +0 -1
  1132. package/src/widgets/resource.d.ts +0 -162
  1133. package/src/widgets/resource.js +0 -340
  1134. package/src/widgets/resource.js.map +0 -1
@@ -0,0 +1,930 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // libs/ui/src/layouts/index.ts
21
+ var layouts_exports = {};
22
+ __export(layouts_exports, {
23
+ authLayout: () => authLayout,
24
+ authLayoutBuilder: () => authLayoutBuilder,
25
+ baseLayout: () => baseLayout,
26
+ consentLayout: () => consentLayout,
27
+ consentLayoutBuilder: () => consentLayoutBuilder,
28
+ createLayoutBuilder: () => createLayoutBuilder,
29
+ errorLayout: () => errorLayout,
30
+ errorLayoutBuilder: () => errorLayoutBuilder,
31
+ escapeHtml: () => escapeHtml,
32
+ loadingLayout: () => loadingLayout,
33
+ successLayout: () => successLayout,
34
+ widgetLayout: () => widgetLayout
35
+ });
36
+ module.exports = __toCommonJS(layouts_exports);
37
+
38
+ // libs/ui/src/theme/cdn.ts
39
+ var CDN = {
40
+ /**
41
+ * Tailwind CSS v4 Browser CDN
42
+ * Generates styles on-the-fly with @theme support
43
+ * @see https://tailwindcss.com/docs/installation/play-cdn
44
+ */
45
+ tailwind: "https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4",
46
+ /**
47
+ * HTMX 2.x - High power tools for HTML
48
+ * Enables AJAX, WebSockets, Server Sent Events directly in HTML
49
+ * @see https://htmx.org
50
+ */
51
+ htmx: {
52
+ url: "https://cdnjs.cloudflare.com/ajax/libs/htmx/2.0.7/htmx.min.js",
53
+ integrity: "sha512-T6VLg/MJYMbLTmQ8VLvonbWg8VOvmDhXcOvHzCwo6ShdGuUU5SEcp1IAPXL4k9lVoMi8gRXl5K/S/zh43Y9rJA=="
54
+ },
55
+ /**
56
+ * Alpine.js - Lightweight reactive framework
57
+ * Used for more complex client-side interactions
58
+ * @see https://alpinejs.dev
59
+ */
60
+ alpine: {
61
+ url: "https://cdn.jsdelivr.net/npm/alpinejs@3.14.3/dist/cdn.min.js",
62
+ integrity: "sha384-6zY8MFQJ/EqS1r4RJl+7j8rvZPuBWpT0RzWf+IFcKhxqUzQNmJzA1X1VEVZhYaEz"
63
+ },
64
+ /**
65
+ * Google Fonts - Inter for modern UI typography
66
+ */
67
+ fonts: {
68
+ preconnect: ["https://fonts.googleapis.com", "https://fonts.gstatic.com"],
69
+ inter: "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap",
70
+ mono: "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap"
71
+ },
72
+ /**
73
+ * Lucide Icons - Beautiful & consistent icons
74
+ * @see https://lucide.dev
75
+ */
76
+ icons: {
77
+ url: "https://cdn.jsdelivr.net/npm/lucide@0.294.0/dist/umd/lucide.min.js",
78
+ integrity: "sha384-wpLmHb7v7V1LsEuTmPQ9tXqWZvTtRWWVqJuE+Yz6X0I6O2T6bHJVeXH1lVWqF4qE"
79
+ }
80
+ };
81
+ var scriptCache = /* @__PURE__ */ new Map();
82
+ function getCachedScript(url) {
83
+ return scriptCache.get(url);
84
+ }
85
+ function isScriptCached(url) {
86
+ return scriptCache.has(url);
87
+ }
88
+ function buildFontPreconnect() {
89
+ return CDN.fonts.preconnect.map((url, i) => `<link rel="preconnect" href="${url}"${i > 0 ? " crossorigin" : ""}>`).join("\n ");
90
+ }
91
+ function buildFontStylesheets(options = {}) {
92
+ const { inter = true, mono = false } = options;
93
+ const links = [];
94
+ if (inter) {
95
+ links.push(`<link href="${CDN.fonts.inter}" rel="stylesheet">`);
96
+ }
97
+ if (mono) {
98
+ links.push(`<link href="${CDN.fonts.mono}" rel="stylesheet">`);
99
+ }
100
+ return links.join("\n ");
101
+ }
102
+ function buildScriptTag(url, integrity, options = {}) {
103
+ const attrs = [`src="${url}"`];
104
+ if (integrity) {
105
+ attrs.push(`integrity="${integrity}"`);
106
+ attrs.push('crossorigin="anonymous"');
107
+ }
108
+ if (options.defer) attrs.push("defer");
109
+ if (options.async) attrs.push("async");
110
+ return `<script ${attrs.join(" ")}></script>`;
111
+ }
112
+ function buildInlineScriptTag(content) {
113
+ return `<script>${content}</script>`;
114
+ }
115
+ function buildCdnScripts(options = {}) {
116
+ const { tailwind = true, htmx = true, alpine = false, icons = false, inline = false } = options;
117
+ const scripts = [];
118
+ if (inline) {
119
+ if (tailwind) {
120
+ if (isScriptCached(CDN.tailwind)) {
121
+ scripts.push(buildInlineScriptTag(getCachedScript(CDN.tailwind)));
122
+ } else {
123
+ console.warn(
124
+ "[frontmcp/ui] Inline mode requested but Tailwind script not cached. Call fetchAndCacheScripts() first."
125
+ );
126
+ }
127
+ }
128
+ if (htmx) {
129
+ if (isScriptCached(CDN.htmx.url)) {
130
+ scripts.push(buildInlineScriptTag(getCachedScript(CDN.htmx.url)));
131
+ } else {
132
+ console.warn(
133
+ "[frontmcp/ui] Inline mode requested but HTMX script not cached. Call fetchAndCacheScripts() first."
134
+ );
135
+ }
136
+ }
137
+ if (alpine) {
138
+ if (isScriptCached(CDN.alpine.url)) {
139
+ scripts.push(buildInlineScriptTag(getCachedScript(CDN.alpine.url)));
140
+ } else {
141
+ console.warn(
142
+ "[frontmcp/ui] Inline mode requested but Alpine.js script not cached. Call fetchAndCacheScripts() first."
143
+ );
144
+ }
145
+ }
146
+ if (icons) {
147
+ if (isScriptCached(CDN.icons.url)) {
148
+ scripts.push(buildInlineScriptTag(getCachedScript(CDN.icons.url)));
149
+ } else {
150
+ console.warn(
151
+ "[frontmcp/ui] Inline mode requested but Lucide icons script not cached. Call fetchAndCacheScripts() first."
152
+ );
153
+ }
154
+ }
155
+ } else {
156
+ if (tailwind) {
157
+ scripts.push(buildScriptTag(CDN.tailwind));
158
+ }
159
+ if (htmx) {
160
+ scripts.push(buildScriptTag(CDN.htmx.url, CDN.htmx.integrity));
161
+ }
162
+ if (alpine) {
163
+ scripts.push(buildScriptTag(CDN.alpine.url, CDN.alpine.integrity, { defer: true }));
164
+ }
165
+ if (icons) {
166
+ scripts.push(buildScriptTag(CDN.icons.url, CDN.icons.integrity));
167
+ }
168
+ }
169
+ return scripts.join("\n ");
170
+ }
171
+
172
+ // libs/ui/src/theme/platforms.ts
173
+ var OPENAI_PLATFORM = {
174
+ id: "openai",
175
+ name: "OpenAI",
176
+ supportsWidgets: true,
177
+ supportsTailwind: true,
178
+ supportsHtmx: true,
179
+ networkMode: "full",
180
+ scriptStrategy: "cdn",
181
+ options: {
182
+ sdk: "apps-sdk",
183
+ version: "1.0"
184
+ }
185
+ };
186
+ var CLAUDE_PLATFORM = {
187
+ id: "claude",
188
+ name: "Claude (Artifacts)",
189
+ supportsWidgets: true,
190
+ supportsTailwind: true,
191
+ supportsHtmx: false,
192
+ // Network blocked, HTMX won't work for API calls
193
+ networkMode: "blocked",
194
+ scriptStrategy: "inline",
195
+ maxInlineSize: 100 * 1024,
196
+ // 100KB limit for artifacts
197
+ cspRestrictions: ["script-src 'unsafe-inline'", "connect-src 'none'"],
198
+ options: {
199
+ mode: "artifacts",
200
+ framework: "react"
201
+ // Claude artifacts prefer React
202
+ }
203
+ };
204
+ function canUseCdn(platform) {
205
+ return platform.networkMode === "full" && platform.scriptStrategy === "cdn";
206
+ }
207
+ function needsInlineScripts(platform) {
208
+ return platform.scriptStrategy === "inline" || platform.networkMode === "blocked";
209
+ }
210
+
211
+ // libs/ui/src/theme/presets/github-openai.ts
212
+ var GITHUB_OPENAI_THEME = {
213
+ name: "github-openai",
214
+ colors: {
215
+ semantic: {
216
+ // Primary: Near-black for main actions and branding
217
+ primary: "#24292f",
218
+ // Secondary: Medium gray for secondary elements
219
+ secondary: "#57606a",
220
+ // Accent: Blue for links, focus states, and highlights
221
+ accent: "#0969da",
222
+ // Status colors
223
+ success: "#1a7f37",
224
+ // GitHub green
225
+ warning: "#9a6700",
226
+ // Amber warning
227
+ danger: "#cf222e",
228
+ // GitHub red
229
+ info: "#0969da"
230
+ // Blue info
231
+ },
232
+ surface: {
233
+ // Pure white background
234
+ background: "#ffffff",
235
+ // Light gray surface (GitHub code background style)
236
+ surface: "#f6f8fa",
237
+ // White elevated surfaces (modals, cards)
238
+ elevated: "#ffffff",
239
+ // Dark semi-transparent overlay
240
+ overlay: "rgba(27, 31, 36, 0.5)"
241
+ },
242
+ text: {
243
+ // Near-black for primary text
244
+ primary: "#24292f",
245
+ // Gray for secondary/muted text
246
+ secondary: "#57606a",
247
+ // Light gray for disabled text
248
+ disabled: "#8c959f",
249
+ // White for text on dark backgrounds
250
+ inverse: "#ffffff",
251
+ // Blue for links
252
+ link: "#0969da"
253
+ },
254
+ border: {
255
+ // Light gray border (GitHub style)
256
+ default: "#d0d7de",
257
+ // Medium gray on hover
258
+ hover: "#8c959f",
259
+ // Blue focus ring
260
+ focus: "#0969da",
261
+ // Subtle divider
262
+ divider: "#d8dee4"
263
+ }
264
+ },
265
+ typography: {
266
+ families: {
267
+ // System UI font stack (GitHub/Apple style)
268
+ sans: '-apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"',
269
+ // Monospace stack
270
+ mono: 'ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, "Liberation Mono", monospace'
271
+ },
272
+ sizes: {
273
+ xs: "0.75rem",
274
+ // 12px
275
+ sm: "0.875rem",
276
+ // 14px
277
+ base: "1rem",
278
+ // 16px
279
+ lg: "1.125rem",
280
+ // 18px
281
+ xl: "1.25rem",
282
+ // 20px
283
+ "2xl": "1.5rem",
284
+ // 24px
285
+ "3xl": "1.875rem",
286
+ // 30px
287
+ "4xl": "2.25rem"
288
+ // 36px
289
+ },
290
+ weights: {
291
+ normal: "400",
292
+ medium: "500",
293
+ semibold: "600",
294
+ bold: "700"
295
+ }
296
+ },
297
+ radius: {
298
+ none: "0",
299
+ sm: "3px",
300
+ // GitHub uses smaller radii
301
+ md: "6px",
302
+ lg: "8px",
303
+ xl: "12px",
304
+ "2xl": "16px",
305
+ full: "9999px"
306
+ },
307
+ shadows: {
308
+ // Subtle shadows with gray tones
309
+ sm: "0 1px 0 rgba(27, 31, 36, 0.04)",
310
+ md: "0 3px 6px rgba(140, 149, 159, 0.15)",
311
+ lg: "0 8px 24px rgba(140, 149, 159, 0.2)",
312
+ xl: "0 12px 28px rgba(140, 149, 159, 0.3)"
313
+ },
314
+ components: {
315
+ button: {
316
+ radius: "6px",
317
+ paddingX: "16px",
318
+ paddingY: "5px",
319
+ fontSize: "14px",
320
+ fontWeight: "500"
321
+ },
322
+ card: {
323
+ radius: "6px",
324
+ padding: "16px",
325
+ shadow: "0 1px 0 rgba(27, 31, 36, 0.04)",
326
+ borderWidth: "1px"
327
+ },
328
+ input: {
329
+ radius: "6px",
330
+ paddingX: "12px",
331
+ paddingY: "5px",
332
+ borderWidth: "1px",
333
+ focusRingWidth: "3px"
334
+ }
335
+ },
336
+ cdn: {
337
+ fonts: {
338
+ preconnect: ["https://fonts.googleapis.com", "https://fonts.gstatic.com"],
339
+ stylesheets: [
340
+ // System UI fonts don't need external stylesheets, but we include
341
+ // Inter as an optional enhancement for consistent cross-platform rendering
342
+ "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap"
343
+ ]
344
+ },
345
+ icons: {
346
+ script: {
347
+ url: "https://cdn.jsdelivr.net/npm/lucide@0.294.0/dist/umd/lucide.min.js"
348
+ }
349
+ },
350
+ scripts: {
351
+ tailwind: "https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4",
352
+ htmx: {
353
+ url: "https://cdnjs.cloudflare.com/ajax/libs/htmx/2.0.7/htmx.min.js",
354
+ integrity: "sha512-T6VLg/MJYMbLTmQ8VLvonbWg8VOvmDhXcOvHzCwo6ShdGuUU5SEcp1IAPXL4k9lVoMi8gRXl5K/S/zh43Y9rJA=="
355
+ },
356
+ alpine: {
357
+ url: "https://cdn.jsdelivr.net/npm/alpinejs@3.14.3/dist/cdn.min.js",
358
+ integrity: "sha384-6zY8MFQJ/EqS1r4RJl+7j8rvZPuBWpT0RzWf+IFcKhxqUzQNmJzA1X1VEVZhYaEz"
359
+ }
360
+ }
361
+ }
362
+ };
363
+ var DEFAULT_THEME = GITHUB_OPENAI_THEME;
364
+
365
+ // libs/ui/src/theme/theme.ts
366
+ function mergeThemesCore(base, override) {
367
+ const baseColors = base.colors ?? { semantic: { primary: "#24292f" } };
368
+ const filterStrings = (arr) => arr.filter((s) => s !== void 0);
369
+ return {
370
+ ...base,
371
+ ...override,
372
+ colors: {
373
+ ...baseColors,
374
+ ...override.colors,
375
+ semantic: { ...baseColors.semantic, ...override.colors?.semantic },
376
+ surface: { ...baseColors.surface, ...override.colors?.surface },
377
+ text: { ...baseColors.text, ...override.colors?.text },
378
+ border: { ...baseColors.border, ...override.colors?.border },
379
+ custom: { ...baseColors.custom, ...override.colors?.custom }
380
+ },
381
+ typography: {
382
+ ...base.typography,
383
+ ...override.typography,
384
+ families: { ...base.typography?.families, ...override.typography?.families },
385
+ sizes: { ...base.typography?.sizes, ...override.typography?.sizes },
386
+ weights: { ...base.typography?.weights, ...override.typography?.weights },
387
+ lineHeight: { ...base.typography?.lineHeight, ...override.typography?.lineHeight }
388
+ },
389
+ spacing: { ...base.spacing, ...override.spacing },
390
+ radius: { ...base.radius, ...override.radius },
391
+ shadows: { ...base.shadows, ...override.shadows },
392
+ components: {
393
+ ...base.components,
394
+ ...override.components,
395
+ button: { ...base.components?.button, ...override.components?.button },
396
+ card: { ...base.components?.card, ...override.components?.card },
397
+ input: { ...base.components?.input, ...override.components?.input }
398
+ },
399
+ cdn: {
400
+ ...base.cdn,
401
+ ...override.cdn,
402
+ fonts: {
403
+ // Concatenate then dedupe so base entries are preserved without duplicates
404
+ preconnect: filterStrings(
405
+ Array.from(/* @__PURE__ */ new Set([...base.cdn?.fonts?.preconnect ?? [], ...override.cdn?.fonts?.preconnect ?? []]))
406
+ ),
407
+ stylesheets: filterStrings(
408
+ Array.from(/* @__PURE__ */ new Set([...base.cdn?.fonts?.stylesheets ?? [], ...override.cdn?.fonts?.stylesheets ?? []]))
409
+ )
410
+ },
411
+ icons: {
412
+ ...base.cdn?.icons,
413
+ ...override.cdn?.icons,
414
+ // Deep merge script to preserve integrity when only url is overridden
415
+ script: override.cdn?.icons?.script ? { ...base.cdn?.icons?.script, ...override.cdn?.icons?.script } : base.cdn?.icons?.script
416
+ },
417
+ scripts: {
418
+ // tailwind is a simple string, just use override or base
419
+ tailwind: override.cdn?.scripts?.tailwind ?? base.cdn?.scripts?.tailwind,
420
+ // Deep merge htmx/alpine to preserve integrity when only url is overridden
421
+ htmx: override.cdn?.scripts?.htmx ? { ...base.cdn?.scripts?.htmx, ...override.cdn?.scripts?.htmx } : base.cdn?.scripts?.htmx,
422
+ alpine: override.cdn?.scripts?.alpine ? { ...base.cdn?.scripts?.alpine, ...override.cdn?.scripts?.alpine } : base.cdn?.scripts?.alpine
423
+ }
424
+ },
425
+ customVars: { ...base.customVars, ...override.customVars },
426
+ customCss: [base.customCss, override.customCss].filter(Boolean).join("\n")
427
+ };
428
+ }
429
+ function mergeThemes(base, override) {
430
+ const merged = mergeThemesCore(base, override);
431
+ let darkVariant;
432
+ if (override.dark !== void 0) {
433
+ const darkBase = base.dark ?? base;
434
+ const { dark: _nestedDark, ...overrideDarkWithoutNested } = override.dark;
435
+ darkVariant = mergeThemesCore(darkBase, overrideDarkWithoutNested);
436
+ } else if (base.dark !== void 0) {
437
+ const { dark: _nestedDark, ...baseDarkWithoutNested } = base.dark;
438
+ darkVariant = baseDarkWithoutNested;
439
+ }
440
+ return {
441
+ ...merged,
442
+ dark: darkVariant
443
+ };
444
+ }
445
+ function emitColorScale(lines, name, scale) {
446
+ for (const [shade, value] of Object.entries(scale)) {
447
+ if (value) lines.push(`--color-${name}-${shade}: ${value};`);
448
+ }
449
+ }
450
+ function buildThemeCss(theme) {
451
+ const lines = [];
452
+ const semantic = theme.colors.semantic;
453
+ if (typeof semantic.primary === "string") {
454
+ lines.push(`--color-primary: ${semantic.primary};`);
455
+ } else if (semantic.primary) {
456
+ emitColorScale(lines, "primary", semantic.primary);
457
+ }
458
+ if (semantic.secondary) {
459
+ if (typeof semantic.secondary === "string") {
460
+ lines.push(`--color-secondary: ${semantic.secondary};`);
461
+ } else {
462
+ emitColorScale(lines, "secondary", semantic.secondary);
463
+ }
464
+ }
465
+ if (semantic.accent) {
466
+ if (typeof semantic.accent === "string") {
467
+ lines.push(`--color-accent: ${semantic.accent};`);
468
+ } else {
469
+ emitColorScale(lines, "accent", semantic.accent);
470
+ }
471
+ }
472
+ if (semantic.neutral) {
473
+ if (typeof semantic.neutral === "string") {
474
+ lines.push(`--color-neutral: ${semantic.neutral};`);
475
+ } else {
476
+ emitColorScale(lines, "neutral", semantic.neutral);
477
+ }
478
+ }
479
+ if (semantic.success) lines.push(`--color-success: ${semantic.success};`);
480
+ if (semantic.warning) lines.push(`--color-warning: ${semantic.warning};`);
481
+ if (semantic.danger) lines.push(`--color-danger: ${semantic.danger};`);
482
+ if (semantic.info) lines.push(`--color-info: ${semantic.info};`);
483
+ const surface = theme.colors.surface;
484
+ if (surface?.background) lines.push(`--color-background: ${surface.background};`);
485
+ if (surface?.surface) lines.push(`--color-surface: ${surface.surface};`);
486
+ if (surface?.elevated) lines.push(`--color-elevated: ${surface.elevated};`);
487
+ if (surface?.overlay) lines.push(`--color-overlay: ${surface.overlay};`);
488
+ const text = theme.colors.text;
489
+ if (text?.primary) lines.push(`--color-text-primary: ${text.primary};`);
490
+ if (text?.secondary) lines.push(`--color-text-secondary: ${text.secondary};`);
491
+ if (text?.disabled) lines.push(`--color-text-disabled: ${text.disabled};`);
492
+ if (text?.inverse) lines.push(`--color-text-inverse: ${text.inverse};`);
493
+ if (text?.link) lines.push(`--color-text-link: ${text.link};`);
494
+ const border = theme.colors.border;
495
+ if (border?.default) lines.push(`--color-border: ${border.default};`);
496
+ if (border?.hover) lines.push(`--color-border-hover: ${border.hover};`);
497
+ if (border?.focus) lines.push(`--color-border-focus: ${border.focus};`);
498
+ if (border?.divider) lines.push(`--color-divider: ${border.divider};`);
499
+ if (theme.colors.custom) {
500
+ for (const [key, value] of Object.entries(theme.colors.custom)) {
501
+ lines.push(`--color-${key}: ${value};`);
502
+ }
503
+ }
504
+ const typography = theme.typography;
505
+ if (typography?.families?.sans) lines.push(`--font-sans: ${typography.families.sans};`);
506
+ if (typography?.families?.serif) lines.push(`--font-serif: ${typography.families.serif};`);
507
+ if (typography?.families?.mono) lines.push(`--font-mono: ${typography.families.mono};`);
508
+ if (typography?.families?.display) lines.push(`--font-display: ${typography.families.display};`);
509
+ const radius = theme.radius;
510
+ if (radius?.none) lines.push(`--radius-none: ${radius.none};`);
511
+ if (radius?.sm) lines.push(`--radius-sm: ${radius.sm};`);
512
+ if (radius?.md) lines.push(`--radius-md: ${radius.md};`);
513
+ if (radius?.lg) lines.push(`--radius-lg: ${radius.lg};`);
514
+ if (radius?.xl) lines.push(`--radius-xl: ${radius.xl};`);
515
+ if (radius?.["2xl"]) lines.push(`--radius-2xl: ${radius["2xl"]};`);
516
+ if (radius?.full) lines.push(`--radius-full: ${radius.full};`);
517
+ if (theme.customVars) {
518
+ for (const [key, value] of Object.entries(theme.customVars)) {
519
+ lines.push(`${key}: ${value};`);
520
+ }
521
+ }
522
+ return lines.join("\n ");
523
+ }
524
+
525
+ // libs/ui/src/utils/escape-html.ts
526
+ function escapeHtml(str) {
527
+ if (str === null || str === void 0) {
528
+ return "";
529
+ }
530
+ const s = String(str);
531
+ return s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029");
532
+ }
533
+
534
+ // libs/ui/src/layouts/base.ts
535
+ function getSizeClass(size) {
536
+ const sizeMap = {
537
+ xs: "max-w-sm",
538
+ sm: "max-w-md",
539
+ md: "max-w-lg",
540
+ lg: "max-w-xl",
541
+ xl: "max-w-2xl",
542
+ "2xl": "max-w-3xl",
543
+ "3xl": "max-w-4xl",
544
+ full: "max-w-full"
545
+ };
546
+ return sizeMap[size];
547
+ }
548
+ function getAlignmentClasses(alignment) {
549
+ const alignMap = {
550
+ center: "min-h-screen flex items-center justify-center",
551
+ top: "min-h-screen flex flex-col items-center pt-12",
552
+ start: "min-h-screen"
553
+ };
554
+ return alignMap[alignment];
555
+ }
556
+ function getBackgroundClasses(background, theme) {
557
+ switch (background) {
558
+ case "gradient":
559
+ return "bg-gradient-to-br from-primary to-secondary";
560
+ case "pattern":
561
+ return 'bg-surface bg-[url("data:image/svg+xml,...")]';
562
+ // Pattern would be defined
563
+ case "solid":
564
+ return "bg-background";
565
+ case "none":
566
+ default:
567
+ return "";
568
+ }
569
+ }
570
+ function buildMetaTags(options) {
571
+ const tags = [];
572
+ if (options.description) {
573
+ tags.push(`<meta name="description" content="${escapeHtml(options.description)}">`);
574
+ }
575
+ if (options.og) {
576
+ if (options.og.title) {
577
+ tags.push(`<meta property="og:title" content="${escapeHtml(options.og.title)}">`);
578
+ }
579
+ if (options.og.description) {
580
+ tags.push(`<meta property="og:description" content="${escapeHtml(options.og.description)}">`);
581
+ }
582
+ if (options.og.image) {
583
+ tags.push(`<meta property="og:image" content="${escapeHtml(options.og.image)}">`);
584
+ }
585
+ if (options.og.type) {
586
+ tags.push(`<meta property="og:type" content="${escapeHtml(options.og.type)}">`);
587
+ }
588
+ }
589
+ if (options.favicon) {
590
+ tags.push(`<link rel="icon" href="${escapeHtml(options.favicon)}">`);
591
+ }
592
+ return tags.join("\n ");
593
+ }
594
+ function buildBodyAttrs(attrs) {
595
+ if (!attrs) return "";
596
+ return Object.entries(attrs).map(([key, value]) => `${key}="${escapeHtml(value)}"`).join(" ");
597
+ }
598
+ function baseLayout(content, options) {
599
+ const {
600
+ title,
601
+ pageType = "custom",
602
+ size = "md",
603
+ alignment = "center",
604
+ background = "solid",
605
+ platform = OPENAI_PLATFORM,
606
+ theme: themeOverrides,
607
+ includeHtmx,
608
+ includeAlpine = false,
609
+ includeIcons = false,
610
+ headExtra = "",
611
+ bodyAttrs,
612
+ bodyClass = "",
613
+ titleSuffix = "FrontMCP"
614
+ } = options;
615
+ const theme = themeOverrides ? mergeThemes(DEFAULT_THEME, themeOverrides) : DEFAULT_THEME;
616
+ const shouldIncludeHtmx = includeHtmx ?? platform.supportsHtmx;
617
+ const useCdn = canUseCdn(platform);
618
+ const useInline = needsInlineScripts(platform);
619
+ const fontPreconnect = useCdn ? buildFontPreconnect() : "";
620
+ const fontStylesheets = useCdn ? buildFontStylesheets({ inter: true }) : "";
621
+ const scripts = buildCdnScripts({
622
+ tailwind: platform.supportsTailwind,
623
+ htmx: shouldIncludeHtmx,
624
+ alpine: includeAlpine,
625
+ icons: includeIcons,
626
+ inline: useInline
627
+ });
628
+ const themeCss = buildThemeCss(theme);
629
+ const customCss = theme.customCss || "";
630
+ const styleBlock = platform.supportsTailwind ? `<style type="text/tailwindcss">
631
+ @theme {
632
+ ${themeCss}
633
+ }
634
+ ${customCss}
635
+ </style>` : "";
636
+ const sizeClass = getSizeClass(size);
637
+ const alignmentClasses = getAlignmentClasses(alignment);
638
+ const backgroundClasses = getBackgroundClasses(background, theme);
639
+ const allBodyClasses = [backgroundClasses, "font-sans antialiased", bodyClass].filter(Boolean).join(" ");
640
+ const metaTags = buildMetaTags(options);
641
+ const bodyAttrStr = buildBodyAttrs(bodyAttrs);
642
+ const wrappedContent = alignment === "center" ? `<div class="${alignmentClasses} p-4">
643
+ <div class="w-full ${sizeClass}">
644
+ ${content}
645
+ </div>
646
+ </div>` : `<div class="${alignmentClasses}">
647
+ <div class="w-full ${sizeClass} mx-auto px-4 py-8">
648
+ ${content}
649
+ </div>
650
+ </div>`;
651
+ return `<!DOCTYPE html>
652
+ <html lang="en">
653
+ <head>
654
+ <meta charset="UTF-8">
655
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
656
+ <title>${escapeHtml(title)}${titleSuffix ? ` - ${escapeHtml(titleSuffix)}` : ""}</title>
657
+ ${metaTags}
658
+
659
+ <!-- Fonts -->
660
+ ${fontPreconnect}
661
+ ${fontStylesheets}
662
+
663
+ <!-- Tailwind CSS -->
664
+ ${scripts}
665
+ ${styleBlock}
666
+
667
+ ${headExtra}
668
+ </head>
669
+ <body class="${escapeHtml(allBodyClasses)}"${bodyAttrStr ? ` ${bodyAttrStr}` : ""}>
670
+ ${wrappedContent}
671
+ </body>
672
+ </html>`;
673
+ }
674
+ function createLayoutBuilder(defaults) {
675
+ return (content, options = {}) => {
676
+ let mergedTheme = DEFAULT_THEME;
677
+ if (defaults.theme) {
678
+ mergedTheme = mergeThemes(mergedTheme, defaults.theme);
679
+ }
680
+ if (options.theme) {
681
+ mergedTheme = mergeThemes(mergedTheme, options.theme);
682
+ }
683
+ const merged = {
684
+ ...defaults,
685
+ ...options,
686
+ theme: mergedTheme
687
+ };
688
+ if (!merged.title) {
689
+ throw new Error("createLayoutBuilder: title is required either in defaults or options");
690
+ }
691
+ return baseLayout(content, merged);
692
+ };
693
+ }
694
+
695
+ // libs/ui/src/layouts/presets.ts
696
+ function authLayout(content, options) {
697
+ const { showBranding = true, logo, footer, ...baseOptions } = options;
698
+ const brandingHtml = showBranding && logo ? `<div class="text-center mb-8">${logo}</div>` : showBranding ? `<div class="text-center mb-8">
699
+ <div class="inline-flex items-center justify-center w-16 h-16 rounded-xl bg-gradient-to-br from-primary to-secondary mb-4">
700
+ <svg class="w-8 h-8 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
701
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z"/>
702
+ </svg>
703
+ </div>
704
+ </div>` : "";
705
+ const footerHtml = footer ? `<div class="mt-8 text-center text-sm text-text-secondary">${footer}</div>` : "";
706
+ const wrappedContent = `
707
+ <div class="bg-white rounded-2xl shadow-xl p-8">
708
+ ${brandingHtml}
709
+ ${content}
710
+ </div>
711
+ ${footerHtml}
712
+ `;
713
+ return baseLayout(wrappedContent, {
714
+ ...baseOptions,
715
+ pageType: "auth",
716
+ size: baseOptions.size ?? "sm",
717
+ alignment: "center",
718
+ background: "gradient"
719
+ });
720
+ }
721
+ function consentLayout(content, options) {
722
+ const { clientName, clientIcon, userInfo, ...baseOptions } = options;
723
+ const headerHtml = clientName ? `<div class="text-center mb-6">
724
+ ${clientIcon ? `<img src="${escapeHtml(clientIcon)}" alt="${escapeHtml(
725
+ clientName
726
+ )}" class="w-16 h-16 rounded-xl mx-auto mb-4">` : `<div class="inline-flex items-center justify-center w-16 h-16 rounded-xl bg-gradient-to-br from-primary to-secondary text-white font-bold text-2xl mx-auto mb-4">
727
+ ${escapeHtml(clientName.charAt(0).toUpperCase())}
728
+ </div>`}
729
+ <h1 class="text-2xl font-bold text-text-primary">${escapeHtml(clientName)}</h1>
730
+ </div>` : "";
731
+ const userInfoHtml = userInfo ? `<div class="flex items-center gap-3 p-3 bg-gray-50 rounded-lg mb-6">
732
+ ${userInfo.avatar ? `<img src="${escapeHtml(userInfo.avatar)}" class="w-10 h-10 rounded-full">` : `<div class="w-10 h-10 rounded-full bg-primary text-white flex items-center justify-center font-medium">
733
+ ${escapeHtml((userInfo.name || userInfo.email || "U").charAt(0).toUpperCase())}
734
+ </div>`}
735
+ <div>
736
+ ${userInfo.name ? `<div class="font-medium text-text-primary">${escapeHtml(userInfo.name)}</div>` : ""}
737
+ ${userInfo.email ? `<div class="text-sm text-text-secondary">${escapeHtml(userInfo.email)}</div>` : ""}
738
+ </div>
739
+ </div>` : "";
740
+ const wrappedContent = `
741
+ ${headerHtml}
742
+ ${userInfoHtml}
743
+ ${content}
744
+ `;
745
+ return baseLayout(wrappedContent, {
746
+ ...baseOptions,
747
+ pageType: "consent",
748
+ size: baseOptions.size ?? "lg",
749
+ alignment: "top",
750
+ background: "solid"
751
+ });
752
+ }
753
+ function errorLayout(content, options) {
754
+ const {
755
+ errorCode,
756
+ errorTitle = "Something went wrong",
757
+ errorMessage,
758
+ showRetry = true,
759
+ retryUrl,
760
+ showHome = true,
761
+ homeUrl = "/",
762
+ ...baseOptions
763
+ } = options;
764
+ const errorHtml = `
765
+ <div class="text-center">
766
+ <!-- Error icon -->
767
+ <div class="inline-flex items-center justify-center w-20 h-20 rounded-full bg-danger/10 mb-6">
768
+ <svg class="w-10 h-10 text-danger" fill="none" stroke="currentColor" viewBox="0 0 24 24">
769
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"/>
770
+ </svg>
771
+ </div>
772
+
773
+ ${errorCode ? `<p class="text-6xl font-bold text-danger mb-2">${escapeHtml(errorCode)}</p>` : ""}
774
+ <h1 class="text-2xl font-bold text-text-primary mb-4">${escapeHtml(errorTitle)}</h1>
775
+ ${errorMessage ? `<p class="text-text-secondary mb-8">${escapeHtml(errorMessage)}</p>` : ""}
776
+
777
+ ${content}
778
+
779
+ <div class="flex gap-4 justify-center mt-8">
780
+ ${showRetry ? `<button onclick="${retryUrl ? `window.location.href='${escapeHtml(retryUrl)}'` : "window.location.reload()"}" class="px-6 py-3 bg-primary hover:bg-primary/90 text-white font-medium rounded-lg transition-colors">Try Again</button>` : ""}
781
+ ${showHome ? `<a href="${escapeHtml(
782
+ homeUrl
783
+ )}" class="px-6 py-3 bg-gray-100 hover:bg-gray-200 text-text-primary font-medium rounded-lg transition-colors">Go Home</a>` : ""}
784
+ </div>
785
+ </div>
786
+ `;
787
+ return baseLayout(errorHtml, {
788
+ ...baseOptions,
789
+ pageType: "error",
790
+ size: "sm",
791
+ alignment: "center",
792
+ background: "solid",
793
+ title: baseOptions.title ?? errorTitle
794
+ });
795
+ }
796
+ function loadingLayout(content, options) {
797
+ const { message = "Loading...", showSpinner = true, showProgress = false, progress = 0, ...baseOptions } = options;
798
+ const spinnerHtml = showSpinner ? `<div class="inline-flex items-center justify-center w-16 h-16 mb-6">
799
+ <svg class="animate-spin w-12 h-12 text-primary" fill="none" viewBox="0 0 24 24">
800
+ <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle>
801
+ <path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path>
802
+ </svg>
803
+ </div>` : "";
804
+ const progressHtml = showProgress ? `<div class="w-full bg-gray-200 rounded-full h-2 mb-4">
805
+ <div class="bg-primary h-2 rounded-full transition-all duration-300" style="width: ${progress}%"></div>
806
+ </div>` : "";
807
+ const loadingHtml = `
808
+ <div class="text-center">
809
+ ${spinnerHtml}
810
+ <h2 class="text-xl font-medium text-text-primary mb-2">${escapeHtml(message)}</h2>
811
+ ${progressHtml}
812
+ ${content}
813
+ </div>
814
+ `;
815
+ return baseLayout(loadingHtml, {
816
+ ...baseOptions,
817
+ pageType: "loading",
818
+ size: "sm",
819
+ alignment: "center",
820
+ background: "solid",
821
+ title: baseOptions.title ?? "Loading"
822
+ });
823
+ }
824
+ function successLayout(content, options) {
825
+ const {
826
+ successTitle = "Success!",
827
+ successMessage,
828
+ continueText = "Continue",
829
+ continueUrl,
830
+ autoClose,
831
+ ...baseOptions
832
+ } = options;
833
+ const autoCloseScript = autoClose ? `<script>
834
+ let countdown = ${autoClose};
835
+ const countdownEl = document.getElementById('countdown');
836
+ const interval = setInterval(() => {
837
+ countdown--;
838
+ if (countdownEl) countdownEl.textContent = countdown;
839
+ if (countdown <= 0) {
840
+ clearInterval(interval);
841
+ ${continueUrl ? `window.location.href = '${escapeHtml(continueUrl)}';` : "window.close();"}
842
+ }
843
+ }, 1000);
844
+ </script>` : "";
845
+ const successHtml = `
846
+ <div class="text-center">
847
+ <!-- Success icon -->
848
+ <div class="inline-flex items-center justify-center w-20 h-20 rounded-full bg-success/10 mb-6">
849
+ <svg class="w-10 h-10 text-success" fill="none" stroke="currentColor" viewBox="0 0 24 24">
850
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 13l4 4L19 7"/>
851
+ </svg>
852
+ </div>
853
+
854
+ <h1 class="text-2xl font-bold text-text-primary mb-4">${escapeHtml(successTitle)}</h1>
855
+ ${successMessage ? `<p class="text-text-secondary mb-8">${escapeHtml(successMessage)}</p>` : ""}
856
+
857
+ ${content}
858
+
859
+ ${continueUrl ? `<a href="${escapeHtml(
860
+ continueUrl
861
+ )}" class="inline-block mt-6 px-6 py-3 bg-primary hover:bg-primary/90 text-white font-medium rounded-lg transition-colors">${escapeHtml(
862
+ continueText
863
+ )}</a>` : ""}
864
+
865
+ ${autoClose ? `<p class="mt-4 text-sm text-text-secondary">Closing in <span id="countdown">${autoClose}</span> seconds...</p>` : ""}
866
+ </div>
867
+ ${autoCloseScript}
868
+ `;
869
+ return baseLayout(successHtml, {
870
+ ...baseOptions,
871
+ pageType: "success",
872
+ size: "sm",
873
+ alignment: "center",
874
+ background: "solid",
875
+ title: baseOptions.title ?? successTitle
876
+ });
877
+ }
878
+ function widgetLayout(content, options) {
879
+ const { maxWidth = "100%", showBorder = false, transparent = true, ...baseOptions } = options;
880
+ const containerClasses = [
881
+ "widget-container",
882
+ showBorder ? "border border-border rounded-lg" : "",
883
+ transparent ? "" : "bg-surface"
884
+ ].filter(Boolean).join(" ");
885
+ const wrappedContent = `
886
+ <div class="${containerClasses}" style="max-width: ${escapeHtml(maxWidth)}">
887
+ ${content}
888
+ </div>
889
+ `;
890
+ return baseLayout(wrappedContent, {
891
+ ...baseOptions,
892
+ pageType: "widget",
893
+ size: "full",
894
+ alignment: "start",
895
+ background: "none"
896
+ });
897
+ }
898
+ var authLayoutBuilder = createLayoutBuilder({
899
+ pageType: "auth",
900
+ size: "sm",
901
+ alignment: "center",
902
+ background: "gradient"
903
+ });
904
+ var consentLayoutBuilder = createLayoutBuilder({
905
+ pageType: "consent",
906
+ size: "lg",
907
+ alignment: "top",
908
+ background: "solid"
909
+ });
910
+ var errorLayoutBuilder = createLayoutBuilder({
911
+ pageType: "error",
912
+ size: "sm",
913
+ alignment: "center",
914
+ background: "solid"
915
+ });
916
+ // Annotate the CommonJS export names for ESM import in node:
917
+ 0 && (module.exports = {
918
+ authLayout,
919
+ authLayoutBuilder,
920
+ baseLayout,
921
+ consentLayout,
922
+ consentLayoutBuilder,
923
+ createLayoutBuilder,
924
+ errorLayout,
925
+ errorLayoutBuilder,
926
+ escapeHtml,
927
+ loadingLayout,
928
+ successLayout,
929
+ widgetLayout
930
+ });