@frontmcp/ui 0.5.0 → 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 +28 -87
  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
@@ -1,397 +0,0 @@
1
- "use strict";
2
- /**
3
- * Tool Template Builder
4
- *
5
- * Provides utilities for building and rendering tool UI templates
6
- * with the MCP Bridge runtime.
7
- *
8
- * Supports multiple template types with auto-detection:
9
- * - HTML strings and template builder functions
10
- * - React components (imported or JSX strings)
11
- * - MDX content (Markdown + JSX)
12
- */
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.buildTemplateContext = buildTemplateContext;
15
- exports.executeTemplate = executeTemplate;
16
- exports.renderTemplate = renderTemplate;
17
- exports.renderToolTemplate = renderToolTemplate;
18
- exports.renderToolTemplateAsync = renderToolTemplateAsync;
19
- exports.createTemplate = createTemplate;
20
- exports.createToolUI = createToolUI;
21
- exports.container = container;
22
- exports.heading = heading;
23
- exports.paragraph = paragraph;
24
- exports.keyValue = keyValue;
25
- exports.dataList = dataList;
26
- exports.errorDisplay = errorDisplay;
27
- exports.successDisplay = successDisplay;
28
- exports.loadingDisplay = loadingDisplay;
29
- const wrapper_1 = require("../runtime/wrapper");
30
- const base_1 = require("../layouts/base");
31
- const registry_1 = require("../renderers/registry");
32
- const detect_1 = require("../renderers/utils/detect");
33
- // ============================================
34
- // Template Rendering
35
- // ============================================
36
- /**
37
- * Build template context from render options
38
- */
39
- function buildTemplateContext(input, output, structuredContent) {
40
- return {
41
- input,
42
- output,
43
- structuredContent,
44
- helpers: (0, wrapper_1.createTemplateHelpers)(),
45
- };
46
- }
47
- /**
48
- * Execute a template builder function or return static template.
49
- * This is used for simple HTML templates only.
50
- */
51
- function executeTemplate(template, ctx) {
52
- if (typeof template === 'string') {
53
- return template;
54
- }
55
- return template(ctx);
56
- }
57
- /**
58
- * Render a template using the appropriate renderer (auto-detected).
59
- *
60
- * This function detects the template type and routes to the appropriate
61
- * renderer (HTML, React, or MDX).
62
- *
63
- * @param template - The template to render
64
- * @param ctx - Template context with input/output/helpers
65
- * @param options - Additional render options
66
- * @returns Promise resolving to rendered HTML string
67
- */
68
- async function renderTemplate(template, ctx, options) {
69
- // Detect template type
70
- const detection = (0, detect_1.detectTemplateType)(template);
71
- // For simple HTML templates, use direct execution (sync, faster)
72
- if (detection.type === 'html-function' || detection.type === 'html-string') {
73
- const html = typeof template === 'function' ? template(ctx) : template;
74
- return { html, rendererType: 'html' };
75
- }
76
- // For React/MDX, use the renderer registry
77
- try {
78
- const result = await registry_1.rendererRegistry.render(template, ctx, {
79
- hydrate: options?.hydrate,
80
- mdxComponents: options?.mdxComponents,
81
- });
82
- return { html: result.html, rendererType: result.rendererType };
83
- }
84
- catch (error) {
85
- // Fallback to HTML if renderer fails
86
- console.warn(`[@frontmcp/ui] Renderer failed for ${detection.type}, falling back to HTML:`, error instanceof Error ? error.message : error);
87
- // Try to execute as HTML template
88
- if (typeof template === 'function') {
89
- try {
90
- const html = template(ctx);
91
- return { html, rendererType: 'html-fallback' };
92
- }
93
- catch {
94
- // If that fails too, return error message
95
- return {
96
- html: `<div class="error">Template rendering failed: ${error instanceof Error ? error.message : 'Unknown error'}</div>`,
97
- rendererType: 'error',
98
- };
99
- }
100
- }
101
- return { html: String(template), rendererType: 'html-fallback' };
102
- }
103
- }
104
- /**
105
- * Render a tool UI template to a complete HTML document (sync version).
106
- *
107
- * This is the sync entry point for rendering simple HTML tool UIs. It:
108
- * 1. Builds the template context with input/output/helpers
109
- * 2. Executes the template builder function
110
- * 3. Wraps the content in a complete HTML document with MCP Bridge
111
- * 4. Applies CSP and theme configuration
112
- *
113
- * Note: For React/MDX templates, use `renderToolTemplateAsync` instead.
114
- *
115
- * @param options - Render options
116
- * @returns Rendered template with HTML and metadata
117
- *
118
- * @example
119
- * ```typescript
120
- * const result = renderToolTemplate({
121
- * ui: toolMetadata.ui,
122
- * toolName: 'get_weather',
123
- * input: { location: 'San Francisco' },
124
- * output: { temperature: 72, conditions: 'sunny' },
125
- * });
126
- *
127
- * // Use result.html for the response body
128
- * // Use result.mimeType for Content-Type header
129
- * ```
130
- */
131
- function renderToolTemplate(options) {
132
- const { ui, toolName, input, output, structuredContent, theme, platform } = options;
133
- // Build template context
134
- const ctx = buildTemplateContext(input, output, structuredContent);
135
- // Execute template to get content HTML (sync for HTML templates)
136
- const content = executeTemplate(ui.template, ctx);
137
- // Build wrapper options
138
- const wrapperOptions = {
139
- content,
140
- toolName,
141
- input: input,
142
- output,
143
- structuredContent,
144
- csp: ui.csp,
145
- widgetAccessible: ui.widgetAccessible,
146
- title: `${toolName} Result`,
147
- theme,
148
- platform,
149
- };
150
- // Wrap in complete HTML document
151
- const html = (0, wrapper_1.wrapToolUI)(wrapperOptions);
152
- // Build OpenAI meta if widget features are used
153
- const openaiMeta = buildOpenAIMetaFromUI(ui);
154
- return {
155
- html,
156
- mimeType: 'text/html',
157
- openaiMeta: Object.keys(openaiMeta).length > 0 ? openaiMeta : undefined,
158
- };
159
- }
160
- /**
161
- * Render a tool UI template to a complete HTML document (async version).
162
- *
163
- * This is the async entry point that supports all template types:
164
- * - HTML strings and template builder functions
165
- * - React components (imported or JSX strings)
166
- * - MDX content (Markdown + JSX)
167
- *
168
- * The template type is auto-detected and the appropriate renderer is used.
169
- *
170
- * @param options - Render options
171
- * @returns Promise resolving to rendered template with HTML and metadata
172
- *
173
- * @example React component
174
- * ```typescript
175
- * import { WeatherWidget } from './weather-widget.tsx';
176
- *
177
- * const result = await renderToolTemplateAsync({
178
- * ui: { template: WeatherWidget, hydrate: true },
179
- * toolName: 'get_weather',
180
- * input: { location: 'San Francisco' },
181
- * output: { temperature: 72, conditions: 'sunny' },
182
- * });
183
- * ```
184
- *
185
- * @example MDX content
186
- * ```typescript
187
- * const result = await renderToolTemplateAsync({
188
- * ui: {
189
- * template: `# Weather in {output.location}\nTemperature: {output.temperature}°F`,
190
- * },
191
- * toolName: 'get_weather',
192
- * input: { location: 'San Francisco' },
193
- * output: { temperature: 72, location: 'San Francisco' },
194
- * });
195
- * ```
196
- */
197
- async function renderToolTemplateAsync(options) {
198
- const { ui, toolName, input, output, structuredContent, theme, platform } = options;
199
- // Build template context
200
- const ctx = buildTemplateContext(input, output, structuredContent);
201
- // Render template using the appropriate renderer (auto-detected)
202
- const { html: content, rendererType } = await renderTemplate(ui.template, ctx, {
203
- hydrate: ui.hydrate,
204
- mdxComponents: ui.mdxComponents,
205
- });
206
- // Apply custom wrapper if provided
207
- const wrappedContent = ui.wrapper ? ui.wrapper(content, ctx) : content;
208
- // Build wrapper options
209
- const wrapperOptions = {
210
- content: wrappedContent,
211
- toolName,
212
- input: input,
213
- output,
214
- structuredContent,
215
- csp: ui.csp,
216
- widgetAccessible: ui.widgetAccessible,
217
- title: `${toolName} Result`,
218
- theme,
219
- platform,
220
- // Pass renderer type for framework runtime injection
221
- rendererType,
222
- hydrate: ui.hydrate,
223
- };
224
- // Wrap in complete HTML document
225
- const html = (0, wrapper_1.wrapToolUI)(wrapperOptions);
226
- // Build OpenAI meta if widget features are used
227
- const openaiMeta = buildOpenAIMetaFromUI(ui);
228
- return {
229
- html,
230
- mimeType: 'text/html',
231
- rendererType,
232
- openaiMeta: Object.keys(openaiMeta).length > 0 ? openaiMeta : undefined,
233
- };
234
- }
235
- /**
236
- * Build OpenAI-specific metadata from UI config
237
- */
238
- function buildOpenAIMetaFromUI(ui) {
239
- const meta = {};
240
- if (ui.widgetAccessible) {
241
- meta['openai/widgetAccessible'] = true;
242
- }
243
- if (ui.widgetDescription) {
244
- meta['openai/widgetDescription'] = ui.widgetDescription;
245
- }
246
- if (ui.csp) {
247
- const cspConfig = {};
248
- if (ui.csp.connectDomains?.length) {
249
- cspConfig['connect_domains'] = ui.csp.connectDomains;
250
- }
251
- if (ui.csp.resourceDomains?.length) {
252
- cspConfig['resource_domains'] = ui.csp.resourceDomains;
253
- }
254
- if (Object.keys(cspConfig).length > 0) {
255
- meta['openai/widgetCSP'] = cspConfig;
256
- }
257
- }
258
- if (ui.displayMode && ui.displayMode !== 'inline') {
259
- meta['openai/displayMode'] = ui.displayMode;
260
- }
261
- return meta;
262
- }
263
- // ============================================
264
- // Template Factory
265
- // ============================================
266
- /**
267
- * Create a typed template builder with automatic input/output typing.
268
- *
269
- * This is a convenience function that helps TypeScript infer the
270
- * correct types for template builder functions.
271
- *
272
- * @example
273
- * ```typescript
274
- * interface WeatherInput {
275
- * location: string;
276
- * }
277
- *
278
- * interface WeatherOutput {
279
- * temperature: number;
280
- * conditions: string;
281
- * }
282
- *
283
- * const weatherTemplate = createTemplate<WeatherInput, WeatherOutput>((ctx) => `
284
- * <div class="p-4">
285
- * <h2>Weather in ${ctx.helpers.escapeHtml(ctx.input.location)}</h2>
286
- * <p>${ctx.output.temperature}°F - ${ctx.output.conditions}</p>
287
- * </div>
288
- * `);
289
- * ```
290
- */
291
- function createTemplate(builder) {
292
- return builder;
293
- }
294
- /**
295
- * Create a ToolUIConfig with proper typing
296
- *
297
- * @example
298
- * ```typescript
299
- * const ui = createToolUI<WeatherInput, WeatherOutput>({
300
- * template: (ctx) => `<div>${ctx.output.temperature}°F</div>`,
301
- * csp: { connectDomains: ['https://api.weather.com'] },
302
- * widgetAccessible: true,
303
- * });
304
- * ```
305
- */
306
- function createToolUI(config) {
307
- return config;
308
- }
309
- // ============================================
310
- // Template Component Helpers
311
- // ============================================
312
- /**
313
- * Create a container div with common styling
314
- */
315
- function container(content, className = '') {
316
- const baseClasses = 'p-4 rounded-lg bg-surface';
317
- return `<div class="${baseClasses} ${className}">${content}</div>`;
318
- }
319
- /**
320
- * Create a heading element
321
- */
322
- function heading(text, level = 2) {
323
- const tag = `h${level}`;
324
- const classes = {
325
- 1: 'text-2xl font-bold text-text-primary mb-4',
326
- 2: 'text-xl font-semibold text-text-primary mb-3',
327
- 3: 'text-lg font-medium text-text-primary mb-2',
328
- 4: 'text-base font-medium text-text-secondary mb-2',
329
- }[level] || '';
330
- return `<${tag} class="${classes}">${(0, base_1.escapeHtml)(text)}</${tag}>`;
331
- }
332
- /**
333
- * Create a paragraph element
334
- */
335
- function paragraph(text, className = '') {
336
- return `<p class="text-text-secondary ${className}">${(0, base_1.escapeHtml)(text)}</p>`;
337
- }
338
- /**
339
- * Create a key-value display
340
- */
341
- function keyValue(key, value, className = '') {
342
- const displayValue = typeof value === 'boolean' ? (value ? 'Yes' : 'No') : String(value);
343
- return `<div class="flex justify-between items-center py-2 border-b border-border ${className}">
344
- <span class="text-text-secondary">${(0, base_1.escapeHtml)(key)}</span>
345
- <span class="text-text-primary font-medium">${(0, base_1.escapeHtml)(displayValue)}</span>
346
- </div>`;
347
- }
348
- /**
349
- * Create a simple data list
350
- */
351
- function dataList(items) {
352
- const listItems = items.map((item) => keyValue(item.key, item.value)).join('');
353
- return `<div class="space-y-1">${listItems}</div>`;
354
- }
355
- /**
356
- * Create an error display
357
- */
358
- function errorDisplay(message, details) {
359
- return `<div class="p-4 bg-danger/10 border border-danger rounded-lg">
360
- <div class="flex items-center gap-2 text-danger">
361
- <svg class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
362
- <path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clip-rule="evenodd"/>
363
- </svg>
364
- <span class="font-medium">${(0, base_1.escapeHtml)(message)}</span>
365
- </div>
366
- ${details ? `<p class="mt-2 text-sm text-text-secondary">${(0, base_1.escapeHtml)(details)}</p>` : ''}
367
- </div>`;
368
- }
369
- /**
370
- * Create a success display
371
- */
372
- function successDisplay(message, details) {
373
- return `<div class="p-4 bg-success/10 border border-success rounded-lg">
374
- <div class="flex items-center gap-2 text-success">
375
- <svg class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
376
- <path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clip-rule="evenodd"/>
377
- </svg>
378
- <span class="font-medium">${(0, base_1.escapeHtml)(message)}</span>
379
- </div>
380
- ${details ? `<p class="mt-2 text-sm text-text-secondary">${(0, base_1.escapeHtml)(details)}</p>` : ''}
381
- </div>`;
382
- }
383
- /**
384
- * Create a loading indicator
385
- */
386
- function loadingDisplay(message = 'Loading...') {
387
- return `<div class="flex items-center justify-center p-8">
388
- <div class="flex items-center gap-3 text-text-secondary">
389
- <svg class="animate-spin w-5 h-5" fill="none" viewBox="0 0 24 24">
390
- <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle>
391
- <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>
392
- </svg>
393
- <span>${(0, base_1.escapeHtml)(message)}</span>
394
- </div>
395
- </div>`;
396
- }
397
- //# sourceMappingURL=builder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/tool-template/builder.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Tool Template Builder\n *\n * Provides utilities for building and rendering tool UI templates\n * with the MCP Bridge runtime.\n *\n * Supports multiple template types with auto-detection:\n * - HTML strings and template builder functions\n * - React components (imported or JSX strings)\n * - MDX content (Markdown + JSX)\n */\n\nimport type {\n TemplateContext,\n TemplateBuilderFn,\n ToolUIConfig,\n UIContentSecurityPolicy,\n ToolUITemplate,\n} from '../runtime/types';\nimport { createTemplateHelpers, wrapToolUI, type WrapToolUIFullOptions } from '../runtime/wrapper';\nimport type { ThemeConfig, PlatformCapabilities, DeepPartial } from '../theme';\nimport { escapeHtml } from '../layouts/base';\nimport { rendererRegistry } from '../renderers/registry';\nimport { detectTemplateType } from '../renderers/utils/detect';\n\n// ============================================\n// Template Builder Types\n// ============================================\n\n/**\n * Options for rendering a tool template\n */\nexport interface RenderTemplateOptions<In = Record<string, unknown>, Out = unknown> {\n /** UI configuration from tool metadata */\n ui: ToolUIConfig<In, Out>;\n\n /** Tool name */\n toolName: string;\n\n /** Tool input arguments */\n input: In;\n\n /** Tool output (raw result from execute) */\n output: Out;\n\n /** Structured content (parsed output for widgets) */\n structuredContent?: unknown;\n\n /** Theme configuration */\n theme?: DeepPartial<ThemeConfig>;\n\n /** Platform capabilities */\n platform?: PlatformCapabilities;\n}\n\n/**\n * Result of rendering a tool template\n */\nexport interface RenderedTemplate {\n /** Complete HTML document string */\n html: string;\n\n /** MIME type for the response */\n mimeType: string;\n\n /** OpenAI-specific metadata (if applicable) */\n openaiMeta?: Record<string, unknown>;\n}\n\n// ============================================\n// Template Rendering\n// ============================================\n\n/**\n * Build template context from render options\n */\nexport function buildTemplateContext<In = Record<string, unknown>, Out = unknown>(\n input: In,\n output: Out,\n structuredContent?: unknown,\n): TemplateContext<In, Out> {\n return {\n input,\n output,\n structuredContent,\n helpers: createTemplateHelpers(),\n };\n}\n\n/**\n * Execute a template builder function or return static template.\n * This is used for simple HTML templates only.\n */\nexport function executeTemplate<In = Record<string, unknown>, Out = unknown>(\n template: TemplateBuilderFn<In, Out> | string,\n ctx: TemplateContext<In, Out>,\n): string {\n if (typeof template === 'string') {\n return template;\n }\n return template(ctx);\n}\n\n/**\n * Render a template using the appropriate renderer (auto-detected).\n *\n * This function detects the template type and routes to the appropriate\n * renderer (HTML, React, or MDX).\n *\n * @param template - The template to render\n * @param ctx - Template context with input/output/helpers\n * @param options - Additional render options\n * @returns Promise resolving to rendered HTML string\n */\nexport async function renderTemplate<In = Record<string, unknown>, Out = unknown>(\n template: ToolUITemplate<In, Out>,\n ctx: TemplateContext<In, Out>,\n options?: {\n hydrate?: boolean;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n mdxComponents?: Record<string, any>;\n },\n): Promise<{ html: string; rendererType: string }> {\n // Detect template type\n const detection = detectTemplateType(template);\n\n // For simple HTML templates, use direct execution (sync, faster)\n if (detection.type === 'html-function' || detection.type === 'html-string') {\n const html = typeof template === 'function' ? (template as TemplateBuilderFn<In, Out>)(ctx) : (template as string);\n\n return { html, rendererType: 'html' };\n }\n\n // For React/MDX, use the renderer registry\n try {\n const result = await rendererRegistry.render(template, ctx, {\n hydrate: options?.hydrate,\n mdxComponents: options?.mdxComponents,\n });\n\n return { html: result.html, rendererType: result.rendererType };\n } catch (error) {\n // Fallback to HTML if renderer fails\n console.warn(\n `[@frontmcp/ui] Renderer failed for ${detection.type}, falling back to HTML:`,\n error instanceof Error ? error.message : error,\n );\n\n // Try to execute as HTML template\n if (typeof template === 'function') {\n try {\n const html = (template as TemplateBuilderFn<In, Out>)(ctx);\n return { html, rendererType: 'html-fallback' };\n } catch {\n // If that fails too, return error message\n return {\n html: `<div class=\"error\">Template rendering failed: ${\n error instanceof Error ? error.message : 'Unknown error'\n }</div>`,\n rendererType: 'error',\n };\n }\n }\n\n return { html: String(template), rendererType: 'html-fallback' };\n }\n}\n\n/**\n * Render a tool UI template to a complete HTML document (sync version).\n *\n * This is the sync entry point for rendering simple HTML tool UIs. It:\n * 1. Builds the template context with input/output/helpers\n * 2. Executes the template builder function\n * 3. Wraps the content in a complete HTML document with MCP Bridge\n * 4. Applies CSP and theme configuration\n *\n * Note: For React/MDX templates, use `renderToolTemplateAsync` instead.\n *\n * @param options - Render options\n * @returns Rendered template with HTML and metadata\n *\n * @example\n * ```typescript\n * const result = renderToolTemplate({\n * ui: toolMetadata.ui,\n * toolName: 'get_weather',\n * input: { location: 'San Francisco' },\n * output: { temperature: 72, conditions: 'sunny' },\n * });\n *\n * // Use result.html for the response body\n * // Use result.mimeType for Content-Type header\n * ```\n */\nexport function renderToolTemplate<In = Record<string, unknown>, Out = unknown>(\n options: RenderTemplateOptions<In, Out>,\n): RenderedTemplate {\n const { ui, toolName, input, output, structuredContent, theme, platform } = options;\n\n // Build template context\n const ctx = buildTemplateContext(input, output, structuredContent);\n\n // Execute template to get content HTML (sync for HTML templates)\n const content = executeTemplate(ui.template as TemplateBuilderFn<In, Out> | string, ctx);\n\n // Build wrapper options\n const wrapperOptions: WrapToolUIFullOptions = {\n content,\n toolName,\n input: input as Record<string, unknown>,\n output,\n structuredContent,\n csp: ui.csp,\n widgetAccessible: ui.widgetAccessible,\n title: `${toolName} Result`,\n theme,\n platform,\n };\n\n // Wrap in complete HTML document\n const html = wrapToolUI(wrapperOptions);\n\n // Build OpenAI meta if widget features are used\n const openaiMeta = buildOpenAIMetaFromUI(ui as ToolUIConfig);\n\n return {\n html,\n mimeType: 'text/html',\n openaiMeta: Object.keys(openaiMeta).length > 0 ? openaiMeta : undefined,\n };\n}\n\n/**\n * Render a tool UI template to a complete HTML document (async version).\n *\n * This is the async entry point that supports all template types:\n * - HTML strings and template builder functions\n * - React components (imported or JSX strings)\n * - MDX content (Markdown + JSX)\n *\n * The template type is auto-detected and the appropriate renderer is used.\n *\n * @param options - Render options\n * @returns Promise resolving to rendered template with HTML and metadata\n *\n * @example React component\n * ```typescript\n * import { WeatherWidget } from './weather-widget.tsx';\n *\n * const result = await renderToolTemplateAsync({\n * ui: { template: WeatherWidget, hydrate: true },\n * toolName: 'get_weather',\n * input: { location: 'San Francisco' },\n * output: { temperature: 72, conditions: 'sunny' },\n * });\n * ```\n *\n * @example MDX content\n * ```typescript\n * const result = await renderToolTemplateAsync({\n * ui: {\n * template: `# Weather in {output.location}\\nTemperature: {output.temperature}°F`,\n * },\n * toolName: 'get_weather',\n * input: { location: 'San Francisco' },\n * output: { temperature: 72, location: 'San Francisco' },\n * });\n * ```\n */\nexport async function renderToolTemplateAsync<In = Record<string, unknown>, Out = unknown>(\n options: RenderTemplateOptions<In, Out>,\n): Promise<RenderedTemplate & { rendererType: string }> {\n const { ui, toolName, input, output, structuredContent, theme, platform } = options;\n\n // Build template context\n const ctx = buildTemplateContext(input, output, structuredContent);\n\n // Render template using the appropriate renderer (auto-detected)\n const { html: content, rendererType } = await renderTemplate(ui.template, ctx, {\n hydrate: ui.hydrate,\n mdxComponents: ui.mdxComponents,\n });\n\n // Apply custom wrapper if provided\n const wrappedContent = ui.wrapper ? ui.wrapper(content, ctx) : content;\n\n // Build wrapper options\n const wrapperOptions: WrapToolUIFullOptions = {\n content: wrappedContent,\n toolName,\n input: input as Record<string, unknown>,\n output,\n structuredContent,\n csp: ui.csp,\n widgetAccessible: ui.widgetAccessible,\n title: `${toolName} Result`,\n theme,\n platform,\n // Pass renderer type for framework runtime injection\n rendererType,\n hydrate: ui.hydrate,\n };\n\n // Wrap in complete HTML document\n const html = wrapToolUI(wrapperOptions);\n\n // Build OpenAI meta if widget features are used\n const openaiMeta = buildOpenAIMetaFromUI(ui as ToolUIConfig);\n\n return {\n html,\n mimeType: 'text/html',\n rendererType,\n openaiMeta: Object.keys(openaiMeta).length > 0 ? openaiMeta : undefined,\n };\n}\n\n/**\n * Build OpenAI-specific metadata from UI config\n */\nfunction buildOpenAIMetaFromUI(ui: ToolUIConfig): Record<string, unknown> {\n const meta: Record<string, unknown> = {};\n\n if (ui.widgetAccessible) {\n meta['openai/widgetAccessible'] = true;\n }\n\n if (ui.widgetDescription) {\n meta['openai/widgetDescription'] = ui.widgetDescription;\n }\n\n if (ui.csp) {\n const cspConfig: Record<string, string[]> = {};\n if (ui.csp.connectDomains?.length) {\n cspConfig['connect_domains'] = ui.csp.connectDomains;\n }\n if (ui.csp.resourceDomains?.length) {\n cspConfig['resource_domains'] = ui.csp.resourceDomains;\n }\n if (Object.keys(cspConfig).length > 0) {\n meta['openai/widgetCSP'] = cspConfig;\n }\n }\n\n if (ui.displayMode && ui.displayMode !== 'inline') {\n meta['openai/displayMode'] = ui.displayMode;\n }\n\n return meta;\n}\n\n// ============================================\n// Template Factory\n// ============================================\n\n/**\n * Create a typed template builder with automatic input/output typing.\n *\n * This is a convenience function that helps TypeScript infer the\n * correct types for template builder functions.\n *\n * @example\n * ```typescript\n * interface WeatherInput {\n * location: string;\n * }\n *\n * interface WeatherOutput {\n * temperature: number;\n * conditions: string;\n * }\n *\n * const weatherTemplate = createTemplate<WeatherInput, WeatherOutput>((ctx) => `\n * <div class=\"p-4\">\n * <h2>Weather in ${ctx.helpers.escapeHtml(ctx.input.location)}</h2>\n * <p>${ctx.output.temperature}°F - ${ctx.output.conditions}</p>\n * </div>\n * `);\n * ```\n */\nexport function createTemplate<In = Record<string, unknown>, Out = unknown>(\n builder: TemplateBuilderFn<In, Out>,\n): TemplateBuilderFn<In, Out> {\n return builder;\n}\n\n/**\n * Create a ToolUIConfig with proper typing\n *\n * @example\n * ```typescript\n * const ui = createToolUI<WeatherInput, WeatherOutput>({\n * template: (ctx) => `<div>${ctx.output.temperature}°F</div>`,\n * csp: { connectDomains: ['https://api.weather.com'] },\n * widgetAccessible: true,\n * });\n * ```\n */\nexport function createToolUI<In = Record<string, unknown>, Out = unknown>(\n config: ToolUIConfig<In, Out>,\n): ToolUIConfig<In, Out> {\n return config;\n}\n\n// ============================================\n// Template Component Helpers\n// ============================================\n\n/**\n * Create a container div with common styling\n */\nexport function container(content: string, className = ''): string {\n const baseClasses = 'p-4 rounded-lg bg-surface';\n return `<div class=\"${baseClasses} ${className}\">${content}</div>`;\n}\n\n/**\n * Create a heading element\n */\nexport function heading(text: string, level: 1 | 2 | 3 | 4 = 2): string {\n const tag = `h${level}`;\n const classes =\n {\n 1: 'text-2xl font-bold text-text-primary mb-4',\n 2: 'text-xl font-semibold text-text-primary mb-3',\n 3: 'text-lg font-medium text-text-primary mb-2',\n 4: 'text-base font-medium text-text-secondary mb-2',\n }[level] || '';\n\n return `<${tag} class=\"${classes}\">${escapeHtml(text)}</${tag}>`;\n}\n\n/**\n * Create a paragraph element\n */\nexport function paragraph(text: string, className = ''): string {\n return `<p class=\"text-text-secondary ${className}\">${escapeHtml(text)}</p>`;\n}\n\n/**\n * Create a key-value display\n */\nexport function keyValue(key: string, value: string | number | boolean, className = ''): string {\n const displayValue = typeof value === 'boolean' ? (value ? 'Yes' : 'No') : String(value);\n\n return `<div class=\"flex justify-between items-center py-2 border-b border-border ${className}\">\n <span class=\"text-text-secondary\">${escapeHtml(key)}</span>\n <span class=\"text-text-primary font-medium\">${escapeHtml(displayValue)}</span>\n </div>`;\n}\n\n/**\n * Create a simple data list\n */\nexport function dataList(items: Array<{ key: string; value: string | number | boolean }>): string {\n const listItems = items.map((item) => keyValue(item.key, item.value)).join('');\n return `<div class=\"space-y-1\">${listItems}</div>`;\n}\n\n/**\n * Create an error display\n */\nexport function errorDisplay(message: string, details?: string): string {\n return `<div class=\"p-4 bg-danger/10 border border-danger rounded-lg\">\n <div class=\"flex items-center gap-2 text-danger\">\n <svg class=\"w-5 h-5\" fill=\"currentColor\" viewBox=\"0 0 20 20\">\n <path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\" clip-rule=\"evenodd\"/>\n </svg>\n <span class=\"font-medium\">${escapeHtml(message)}</span>\n </div>\n ${details ? `<p class=\"mt-2 text-sm text-text-secondary\">${escapeHtml(details)}</p>` : ''}\n </div>`;\n}\n\n/**\n * Create a success display\n */\nexport function successDisplay(message: string, details?: string): string {\n return `<div class=\"p-4 bg-success/10 border border-success rounded-lg\">\n <div class=\"flex items-center gap-2 text-success\">\n <svg class=\"w-5 h-5\" fill=\"currentColor\" viewBox=\"0 0 20 20\">\n <path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"/>\n </svg>\n <span class=\"font-medium\">${escapeHtml(message)}</span>\n </div>\n ${details ? `<p class=\"mt-2 text-sm text-text-secondary\">${escapeHtml(details)}</p>` : ''}\n </div>`;\n}\n\n/**\n * Create a loading indicator\n */\nexport function loadingDisplay(message = 'Loading...'): string {\n return `<div class=\"flex items-center justify-center p-8\">\n <div class=\"flex items-center gap-3 text-text-secondary\">\n <svg class=\"animate-spin w-5 h-5\" fill=\"none\" viewBox=\"0 0 24 24\">\n <circle class=\"opacity-25\" cx=\"12\" cy=\"12\" r=\"10\" stroke=\"currentColor\" stroke-width=\"4\"></circle>\n <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>\n </svg>\n <span>${escapeHtml(message)}</span>\n </div>\n </div>`;\n}\n"]}
@@ -1,15 +0,0 @@
1
- /**
2
- * Tool Template Module
3
- *
4
- * Provides utilities for building and rendering tool UI templates
5
- * that work across multiple host environments (OpenAI, Claude, ext-apps).
6
- *
7
- * Supports multiple template formats with auto-detection:
8
- * - HTML strings and template builder functions
9
- * - React components (imported from .tsx files)
10
- * - JSX strings (transpiled at runtime with SWC)
11
- * - MDX content (Markdown + JSX)
12
- *
13
- * @module @frontmcp/ui/tool-template
14
- */
15
- export { type RenderTemplateOptions, type RenderedTemplate, buildTemplateContext, executeTemplate, renderToolTemplate, renderTemplate, renderToolTemplateAsync, createTemplate, createToolUI, container, heading, paragraph, keyValue, dataList, errorDisplay, successDisplay, loadingDisplay, } from './builder';
@@ -1,38 +0,0 @@
1
- "use strict";
2
- /**
3
- * Tool Template Module
4
- *
5
- * Provides utilities for building and rendering tool UI templates
6
- * that work across multiple host environments (OpenAI, Claude, ext-apps).
7
- *
8
- * Supports multiple template formats with auto-detection:
9
- * - HTML strings and template builder functions
10
- * - React components (imported from .tsx files)
11
- * - JSX strings (transpiled at runtime with SWC)
12
- * - MDX content (Markdown + JSX)
13
- *
14
- * @module @frontmcp/ui/tool-template
15
- */
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.loadingDisplay = exports.successDisplay = exports.errorDisplay = exports.dataList = exports.keyValue = exports.paragraph = exports.heading = exports.container = exports.createToolUI = exports.createTemplate = exports.renderToolTemplateAsync = exports.renderTemplate = exports.renderToolTemplate = exports.executeTemplate = exports.buildTemplateContext = void 0;
18
- var builder_1 = require("./builder");
19
- // Core rendering (sync - for HTML templates)
20
- Object.defineProperty(exports, "buildTemplateContext", { enumerable: true, get: function () { return builder_1.buildTemplateContext; } });
21
- Object.defineProperty(exports, "executeTemplate", { enumerable: true, get: function () { return builder_1.executeTemplate; } });
22
- Object.defineProperty(exports, "renderToolTemplate", { enumerable: true, get: function () { return builder_1.renderToolTemplate; } });
23
- // Core rendering (async - for React/MDX templates)
24
- Object.defineProperty(exports, "renderTemplate", { enumerable: true, get: function () { return builder_1.renderTemplate; } });
25
- Object.defineProperty(exports, "renderToolTemplateAsync", { enumerable: true, get: function () { return builder_1.renderToolTemplateAsync; } });
26
- // Factories
27
- Object.defineProperty(exports, "createTemplate", { enumerable: true, get: function () { return builder_1.createTemplate; } });
28
- Object.defineProperty(exports, "createToolUI", { enumerable: true, get: function () { return builder_1.createToolUI; } });
29
- // Component helpers
30
- Object.defineProperty(exports, "container", { enumerable: true, get: function () { return builder_1.container; } });
31
- Object.defineProperty(exports, "heading", { enumerable: true, get: function () { return builder_1.heading; } });
32
- Object.defineProperty(exports, "paragraph", { enumerable: true, get: function () { return builder_1.paragraph; } });
33
- Object.defineProperty(exports, "keyValue", { enumerable: true, get: function () { return builder_1.keyValue; } });
34
- Object.defineProperty(exports, "dataList", { enumerable: true, get: function () { return builder_1.dataList; } });
35
- Object.defineProperty(exports, "errorDisplay", { enumerable: true, get: function () { return builder_1.errorDisplay; } });
36
- Object.defineProperty(exports, "successDisplay", { enumerable: true, get: function () { return builder_1.successDisplay; } });
37
- Object.defineProperty(exports, "loadingDisplay", { enumerable: true, get: function () { return builder_1.loadingDisplay; } });
38
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tool-template/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAEH,qCAuBmB;AAnBjB,6CAA6C;AAC7C,+GAAA,oBAAoB,OAAA;AACpB,0GAAA,eAAe,OAAA;AACf,6GAAA,kBAAkB,OAAA;AAClB,mDAAmD;AACnD,yGAAA,cAAc,OAAA;AACd,kHAAA,uBAAuB,OAAA;AACvB,YAAY;AACZ,yGAAA,cAAc,OAAA;AACd,uGAAA,YAAY,OAAA;AACZ,oBAAoB;AACpB,oGAAA,SAAS,OAAA;AACT,kGAAA,OAAO,OAAA;AACP,oGAAA,SAAS,OAAA;AACT,mGAAA,QAAQ,OAAA;AACR,mGAAA,QAAQ,OAAA;AACR,uGAAA,YAAY,OAAA;AACZ,yGAAA,cAAc,OAAA;AACd,yGAAA,cAAc,OAAA","sourcesContent":["/**\n * Tool Template Module\n *\n * Provides utilities for building and rendering tool UI templates\n * that work across multiple host environments (OpenAI, Claude, ext-apps).\n *\n * Supports multiple template formats with auto-detection:\n * - HTML strings and template builder functions\n * - React components (imported from .tsx files)\n * - JSX strings (transpiled at runtime with SWC)\n * - MDX content (Markdown + JSX)\n *\n * @module @frontmcp/ui/tool-template\n */\n\nexport {\n // Types\n type RenderTemplateOptions,\n type RenderedTemplate,\n // Core rendering (sync - for HTML templates)\n buildTemplateContext,\n executeTemplate,\n renderToolTemplate,\n // Core rendering (async - for React/MDX templates)\n renderTemplate,\n renderToolTemplateAsync,\n // Factories\n createTemplate,\n createToolUI,\n // Component helpers\n container,\n heading,\n paragraph,\n keyValue,\n dataList,\n errorDisplay,\n successDisplay,\n loadingDisplay,\n} from './builder';\n"]}
@@ -1,13 +0,0 @@
1
- /**
2
- * @frontmcp/ui Types
3
- *
4
- * Standalone types for UI configuration that don't depend on @frontmcp/sdk.
5
- * These types enable external systems (like AgentLink) to use @frontmcp/ui
6
- * without requiring the full SDK as a dependency.
7
- *
8
- * @packageDocumentation
9
- */
10
- export { type UIContentSecurityPolicy, type TemplateHelpers, type TemplateContext, type TemplateBuilderFn, type WidgetServingMode, type WidgetDisplayMode, type UITemplateConfig, type UITemplate, } from './ui-config';
11
- export { type UIType, type BundlingMode, type ResourceMode, type OutputMode, type DisplayMode, type CSPDirectives, type CDNResource, type RendererAssets, type WidgetManifest, type UIMetaFields, type OpenAIMetaFields, type ToolResponseMeta, type WidgetConfig, type WidgetTemplate, type WidgetTemplateContext, type WidgetTemplateHelpers, type WidgetRuntimeOptions, type BuildManifestResult, type BuildManifestOptions, isUIType, isBundlingMode, isResourceMode, isOutputMode, isDisplayMode, DEFAULT_CSP_BY_TYPE, DEFAULT_RENDERER_ASSETS,
12
- /** @deprecated Use UIMetaFields instead */
13
- type RuntimePayload, } from './ui-runtime';
@@ -1,26 +0,0 @@
1
- "use strict";
2
- /**
3
- * @frontmcp/ui Types
4
- *
5
- * Standalone types for UI configuration that don't depend on @frontmcp/sdk.
6
- * These types enable external systems (like AgentLink) to use @frontmcp/ui
7
- * without requiring the full SDK as a dependency.
8
- *
9
- * @packageDocumentation
10
- */
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.DEFAULT_RENDERER_ASSETS = exports.DEFAULT_CSP_BY_TYPE = exports.isDisplayMode = exports.isOutputMode = exports.isResourceMode = exports.isBundlingMode = exports.isUIType = void 0;
13
- // ============================================
14
- // Widget Runtime Types (New)
15
- // ============================================
16
- var ui_runtime_1 = require("./ui-runtime");
17
- // Type Guards
18
- Object.defineProperty(exports, "isUIType", { enumerable: true, get: function () { return ui_runtime_1.isUIType; } });
19
- Object.defineProperty(exports, "isBundlingMode", { enumerable: true, get: function () { return ui_runtime_1.isBundlingMode; } });
20
- Object.defineProperty(exports, "isResourceMode", { enumerable: true, get: function () { return ui_runtime_1.isResourceMode; } });
21
- Object.defineProperty(exports, "isOutputMode", { enumerable: true, get: function () { return ui_runtime_1.isOutputMode; } });
22
- Object.defineProperty(exports, "isDisplayMode", { enumerable: true, get: function () { return ui_runtime_1.isDisplayMode; } });
23
- // Default Values
24
- Object.defineProperty(exports, "DEFAULT_CSP_BY_TYPE", { enumerable: true, get: function () { return ui_runtime_1.DEFAULT_CSP_BY_TYPE; } });
25
- Object.defineProperty(exports, "DEFAULT_RENDERER_ASSETS", { enumerable: true, get: function () { return ui_runtime_1.DEFAULT_RENDERER_ASSETS; } });
26
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAqBH,+CAA+C;AAC/C,6BAA6B;AAC7B,+CAA+C;AAE/C,2CAsCsB;AAZpB,cAAc;AACd,sGAAA,QAAQ,OAAA;AACR,4GAAA,cAAc,OAAA;AACd,4GAAA,cAAc,OAAA;AACd,0GAAA,YAAY,OAAA;AACZ,2GAAA,aAAa,OAAA;AACb,iBAAiB;AACjB,iHAAA,mBAAmB,OAAA;AACnB,qHAAA,uBAAuB,OAAA","sourcesContent":["/**\n * @frontmcp/ui Types\n *\n * Standalone types for UI configuration that don't depend on @frontmcp/sdk.\n * These types enable external systems (like AgentLink) to use @frontmcp/ui\n * without requiring the full SDK as a dependency.\n *\n * @packageDocumentation\n */\n\n// ============================================\n// UI Config Types (Legacy/Base)\n// ============================================\n\nexport {\n // Content Security Policy\n type UIContentSecurityPolicy,\n // Template Context & Helpers\n type TemplateHelpers,\n type TemplateContext,\n type TemplateBuilderFn,\n // Widget Serving & Display\n type WidgetServingMode,\n type WidgetDisplayMode,\n // UI Template Configuration\n type UITemplateConfig,\n type UITemplate,\n} from './ui-config';\n\n// ============================================\n// Widget Runtime Types (New)\n// ============================================\n\nexport {\n // Core Types\n type UIType,\n type BundlingMode,\n type ResourceMode,\n type OutputMode,\n type DisplayMode,\n // CSP & Assets\n type CSPDirectives,\n type CDNResource,\n type RendererAssets,\n // Widget Manifest\n type WidgetManifest,\n // _meta Field Types (NEW)\n type UIMetaFields,\n type OpenAIMetaFields,\n type ToolResponseMeta,\n // Widget Configuration\n type WidgetConfig,\n type WidgetTemplate,\n type WidgetTemplateContext,\n type WidgetTemplateHelpers,\n type WidgetRuntimeOptions,\n // Build Types\n type BuildManifestResult,\n type BuildManifestOptions,\n // Type Guards\n isUIType,\n isBundlingMode,\n isResourceMode,\n isOutputMode,\n isDisplayMode,\n // Default Values\n DEFAULT_CSP_BY_TYPE,\n DEFAULT_RENDERER_ASSETS,\n // Deprecated\n /** @deprecated Use UIMetaFields instead */\n type RuntimePayload,\n} from './ui-runtime';\n"]}