@frontmcp/ui 0.6.0 → 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (650) hide show
  1. package/README.md +140 -362
  2. package/bridge/core/bridge-factory.d.ts +1 -0
  3. package/bridge/core/bridge-factory.d.ts.map +1 -1
  4. package/bridge/index.d.ts +1 -1
  5. package/bridge/index.d.ts.map +1 -1
  6. package/bridge/index.js +39 -881
  7. package/bridge/runtime/index.d.ts +2 -1
  8. package/bridge/runtime/index.d.ts.map +1 -1
  9. package/bundler/browser-components.d.ts +42 -0
  10. package/bundler/browser-components.d.ts.map +1 -0
  11. package/bundler/bundler.d.ts +78 -4
  12. package/bundler/bundler.d.ts.map +1 -1
  13. package/bundler/index.d.ts +8 -8
  14. package/bundler/index.d.ts.map +1 -1
  15. package/bundler/index.js +1411 -2997
  16. package/bundler/types.d.ts +188 -7
  17. package/bundler/types.d.ts.map +1 -1
  18. package/components/alert.schema.d.ts +6 -6
  19. package/components/avatar.schema.d.ts +9 -9
  20. package/components/badge.schema.d.ts +9 -9
  21. package/components/button.schema.d.ts +9 -9
  22. package/components/card.schema.d.ts +7 -7
  23. package/components/form.schema.d.ts +24 -24
  24. package/components/index.js +128 -198
  25. package/components/modal.schema.d.ts +8 -8
  26. package/components/table.schema.d.ts +6 -6
  27. package/esm/bridge/{index.js → index.mjs} +40 -877
  28. package/esm/bundler/index.mjs +3136 -0
  29. package/esm/components/{index.js → index.mjs} +136 -196
  30. package/esm/index.mjs +5450 -0
  31. package/esm/layouts/index.mjs +409 -0
  32. package/esm/package.json +15 -32
  33. package/esm/react/{index.js → index.mjs} +71 -260
  34. package/esm/renderers/index.mjs +611 -0
  35. package/esm/universal/index.mjs +1951 -0
  36. package/esm/web-components/{index.js → index.mjs} +232 -287
  37. package/index.d.ts +22 -41
  38. package/index.d.ts.map +1 -1
  39. package/index.js +4286 -19607
  40. package/layouts/base.d.ts +2 -2
  41. package/layouts/base.d.ts.map +1 -1
  42. package/layouts/index.js +46 -539
  43. package/layouts/presets.d.ts.map +1 -1
  44. package/package.json +15 -32
  45. package/react/Alert.d.ts +1 -2
  46. package/react/Alert.d.ts.map +1 -1
  47. package/react/Badge.d.ts +1 -2
  48. package/react/Badge.d.ts.map +1 -1
  49. package/react/Button.d.ts +1 -2
  50. package/react/Button.d.ts.map +1 -1
  51. package/react/Card.d.ts +1 -2
  52. package/react/Card.d.ts.map +1 -1
  53. package/react/hooks/context.d.ts +1 -1
  54. package/react/hooks/context.d.ts.map +1 -1
  55. package/react/index.d.ts +5 -7
  56. package/react/index.d.ts.map +1 -1
  57. package/react/index.js +55 -269
  58. package/react/types.d.ts +1 -2
  59. package/react/types.d.ts.map +1 -1
  60. package/renderers/index.d.ts +15 -25
  61. package/renderers/index.d.ts.map +1 -1
  62. package/renderers/index.js +393 -1619
  63. package/renderers/mdx.renderer.d.ts +13 -34
  64. package/renderers/mdx.renderer.d.ts.map +1 -1
  65. package/{esm/runtime/adapters → renderers}/react.adapter.d.ts +2 -2
  66. package/renderers/react.adapter.d.ts.map +1 -0
  67. package/renderers/react.renderer.d.ts +25 -16
  68. package/renderers/react.renderer.d.ts.map +1 -1
  69. package/renderers/transpiler.d.ts +49 -0
  70. package/renderers/transpiler.d.ts.map +1 -0
  71. package/universal/cached-runtime.d.ts +25 -1
  72. package/universal/cached-runtime.d.ts.map +1 -1
  73. package/universal/index.js +2037 -0
  74. package/universal/runtime-builder.d.ts.map +1 -1
  75. package/universal/types.d.ts.map +1 -1
  76. package/web-components/elements/fmcp-input.d.ts.map +1 -1
  77. package/web-components/elements/fmcp-select.d.ts.map +1 -1
  78. package/web-components/index.d.ts +0 -1
  79. package/web-components/index.d.ts.map +1 -1
  80. package/web-components/index.js +224 -289
  81. package/adapters/index.d.ts +0 -13
  82. package/adapters/index.d.ts.map +0 -1
  83. package/adapters/index.js +0 -462
  84. package/adapters/platform-meta.d.ts +0 -166
  85. package/adapters/platform-meta.d.ts.map +0 -1
  86. package/adapters/response-builder.d.ts +0 -108
  87. package/adapters/response-builder.d.ts.map +0 -1
  88. package/adapters/serving-mode.d.ts +0 -107
  89. package/adapters/serving-mode.d.ts.map +0 -1
  90. package/base-template/bridge.d.ts +0 -90
  91. package/base-template/bridge.d.ts.map +0 -1
  92. package/base-template/default-base-template.d.ts +0 -92
  93. package/base-template/default-base-template.d.ts.map +0 -1
  94. package/base-template/index.d.ts +0 -15
  95. package/base-template/index.d.ts.map +0 -1
  96. package/base-template/index.js +0 -1398
  97. package/base-template/polyfills.d.ts +0 -31
  98. package/base-template/polyfills.d.ts.map +0 -1
  99. package/base-template/theme-styles.d.ts +0 -74
  100. package/base-template/theme-styles.d.ts.map +0 -1
  101. package/build/cdn-resources.d.ts +0 -243
  102. package/build/cdn-resources.d.ts.map +0 -1
  103. package/build/index.d.ts +0 -295
  104. package/build/index.d.ts.map +0 -1
  105. package/build/index.js +0 -7096
  106. package/build/widget-manifest.d.ts +0 -362
  107. package/build/widget-manifest.d.ts.map +0 -1
  108. package/bundler/cache.d.ts +0 -173
  109. package/bundler/cache.d.ts.map +0 -1
  110. package/bundler/file-cache/component-builder.d.ts +0 -167
  111. package/bundler/file-cache/component-builder.d.ts.map +0 -1
  112. package/bundler/file-cache/hash-calculator.d.ts +0 -155
  113. package/bundler/file-cache/hash-calculator.d.ts.map +0 -1
  114. package/bundler/file-cache/index.d.ts +0 -12
  115. package/bundler/file-cache/index.d.ts.map +0 -1
  116. package/bundler/file-cache/storage/filesystem.d.ts +0 -149
  117. package/bundler/file-cache/storage/filesystem.d.ts.map +0 -1
  118. package/bundler/file-cache/storage/index.d.ts +0 -11
  119. package/bundler/file-cache/storage/index.d.ts.map +0 -1
  120. package/bundler/file-cache/storage/interface.d.ts +0 -152
  121. package/bundler/file-cache/storage/interface.d.ts.map +0 -1
  122. package/bundler/file-cache/storage/redis.d.ts +0 -139
  123. package/bundler/file-cache/storage/redis.d.ts.map +0 -1
  124. package/bundler/sandbox/enclave-adapter.d.ts +0 -121
  125. package/bundler/sandbox/enclave-adapter.d.ts.map +0 -1
  126. package/bundler/sandbox/executor.d.ts +0 -14
  127. package/bundler/sandbox/executor.d.ts.map +0 -1
  128. package/bundler/sandbox/policy.d.ts +0 -62
  129. package/bundler/sandbox/policy.d.ts.map +0 -1
  130. package/dependency/cdn-registry.d.ts +0 -98
  131. package/dependency/cdn-registry.d.ts.map +0 -1
  132. package/dependency/import-map.d.ts +0 -186
  133. package/dependency/import-map.d.ts.map +0 -1
  134. package/dependency/import-parser.d.ts +0 -82
  135. package/dependency/import-parser.d.ts.map +0 -1
  136. package/dependency/index.d.ts +0 -17
  137. package/dependency/index.d.ts.map +0 -1
  138. package/dependency/resolver.d.ts +0 -164
  139. package/dependency/resolver.d.ts.map +0 -1
  140. package/dependency/schemas.d.ts +0 -486
  141. package/dependency/schemas.d.ts.map +0 -1
  142. package/dependency/template-loader.d.ts +0 -204
  143. package/dependency/template-loader.d.ts.map +0 -1
  144. package/dependency/template-processor.d.ts +0 -118
  145. package/dependency/template-processor.d.ts.map +0 -1
  146. package/dependency/types.d.ts +0 -739
  147. package/dependency/types.d.ts.map +0 -1
  148. package/esm/adapters/index.d.ts +0 -13
  149. package/esm/adapters/index.d.ts.map +0 -1
  150. package/esm/adapters/index.js +0 -427
  151. package/esm/adapters/platform-meta.d.ts +0 -166
  152. package/esm/adapters/platform-meta.d.ts.map +0 -1
  153. package/esm/adapters/response-builder.d.ts +0 -108
  154. package/esm/adapters/response-builder.d.ts.map +0 -1
  155. package/esm/adapters/serving-mode.d.ts +0 -107
  156. package/esm/adapters/serving-mode.d.ts.map +0 -1
  157. package/esm/base-template/bridge.d.ts +0 -90
  158. package/esm/base-template/bridge.d.ts.map +0 -1
  159. package/esm/base-template/default-base-template.d.ts +0 -92
  160. package/esm/base-template/default-base-template.d.ts.map +0 -1
  161. package/esm/base-template/index.d.ts +0 -15
  162. package/esm/base-template/index.d.ts.map +0 -1
  163. package/esm/base-template/index.js +0 -1364
  164. package/esm/base-template/polyfills.d.ts +0 -31
  165. package/esm/base-template/polyfills.d.ts.map +0 -1
  166. package/esm/base-template/theme-styles.d.ts +0 -74
  167. package/esm/base-template/theme-styles.d.ts.map +0 -1
  168. package/esm/bridge/adapters/base-adapter.d.ts +0 -104
  169. package/esm/bridge/adapters/base-adapter.d.ts.map +0 -1
  170. package/esm/bridge/adapters/claude.adapter.d.ts +0 -67
  171. package/esm/bridge/adapters/claude.adapter.d.ts.map +0 -1
  172. package/esm/bridge/adapters/ext-apps.adapter.d.ts +0 -143
  173. package/esm/bridge/adapters/ext-apps.adapter.d.ts.map +0 -1
  174. package/esm/bridge/adapters/gemini.adapter.d.ts +0 -64
  175. package/esm/bridge/adapters/gemini.adapter.d.ts.map +0 -1
  176. package/esm/bridge/adapters/generic.adapter.d.ts +0 -56
  177. package/esm/bridge/adapters/generic.adapter.d.ts.map +0 -1
  178. package/esm/bridge/adapters/index.d.ts +0 -26
  179. package/esm/bridge/adapters/index.d.ts.map +0 -1
  180. package/esm/bridge/adapters/openai.adapter.d.ts +0 -65
  181. package/esm/bridge/adapters/openai.adapter.d.ts.map +0 -1
  182. package/esm/bridge/core/adapter-registry.d.ts +0 -122
  183. package/esm/bridge/core/adapter-registry.d.ts.map +0 -1
  184. package/esm/bridge/core/bridge-factory.d.ts +0 -199
  185. package/esm/bridge/core/bridge-factory.d.ts.map +0 -1
  186. package/esm/bridge/core/index.d.ts +0 -10
  187. package/esm/bridge/core/index.d.ts.map +0 -1
  188. package/esm/bridge/index.d.ts +0 -62
  189. package/esm/bridge/index.d.ts.map +0 -1
  190. package/esm/bridge/runtime/iife-generator.d.ts +0 -62
  191. package/esm/bridge/runtime/iife-generator.d.ts.map +0 -1
  192. package/esm/bridge/runtime/index.d.ts +0 -9
  193. package/esm/bridge/runtime/index.d.ts.map +0 -1
  194. package/esm/bridge/types.d.ts +0 -386
  195. package/esm/bridge/types.d.ts.map +0 -1
  196. package/esm/build/cdn-resources.d.ts +0 -243
  197. package/esm/build/cdn-resources.d.ts.map +0 -1
  198. package/esm/build/index.d.ts +0 -295
  199. package/esm/build/index.d.ts.map +0 -1
  200. package/esm/build/index.js +0 -7021
  201. package/esm/build/widget-manifest.d.ts +0 -362
  202. package/esm/build/widget-manifest.d.ts.map +0 -1
  203. package/esm/bundler/bundler.d.ts +0 -208
  204. package/esm/bundler/bundler.d.ts.map +0 -1
  205. package/esm/bundler/cache.d.ts +0 -173
  206. package/esm/bundler/cache.d.ts.map +0 -1
  207. package/esm/bundler/file-cache/component-builder.d.ts +0 -167
  208. package/esm/bundler/file-cache/component-builder.d.ts.map +0 -1
  209. package/esm/bundler/file-cache/hash-calculator.d.ts +0 -155
  210. package/esm/bundler/file-cache/hash-calculator.d.ts.map +0 -1
  211. package/esm/bundler/file-cache/index.d.ts +0 -12
  212. package/esm/bundler/file-cache/index.d.ts.map +0 -1
  213. package/esm/bundler/file-cache/storage/filesystem.d.ts +0 -149
  214. package/esm/bundler/file-cache/storage/filesystem.d.ts.map +0 -1
  215. package/esm/bundler/file-cache/storage/index.d.ts +0 -11
  216. package/esm/bundler/file-cache/storage/index.d.ts.map +0 -1
  217. package/esm/bundler/file-cache/storage/interface.d.ts +0 -152
  218. package/esm/bundler/file-cache/storage/interface.d.ts.map +0 -1
  219. package/esm/bundler/file-cache/storage/redis.d.ts +0 -139
  220. package/esm/bundler/file-cache/storage/redis.d.ts.map +0 -1
  221. package/esm/bundler/index.d.ts +0 -43
  222. package/esm/bundler/index.d.ts.map +0 -1
  223. package/esm/bundler/index.js +0 -4687
  224. package/esm/bundler/sandbox/enclave-adapter.d.ts +0 -121
  225. package/esm/bundler/sandbox/enclave-adapter.d.ts.map +0 -1
  226. package/esm/bundler/sandbox/executor.d.ts +0 -14
  227. package/esm/bundler/sandbox/executor.d.ts.map +0 -1
  228. package/esm/bundler/sandbox/policy.d.ts +0 -62
  229. package/esm/bundler/sandbox/policy.d.ts.map +0 -1
  230. package/esm/bundler/types.d.ts +0 -702
  231. package/esm/bundler/types.d.ts.map +0 -1
  232. package/esm/components/alert.d.ts +0 -66
  233. package/esm/components/alert.d.ts.map +0 -1
  234. package/esm/components/alert.schema.d.ts +0 -98
  235. package/esm/components/alert.schema.d.ts.map +0 -1
  236. package/esm/components/avatar.d.ts +0 -77
  237. package/esm/components/avatar.d.ts.map +0 -1
  238. package/esm/components/avatar.schema.d.ts +0 -170
  239. package/esm/components/avatar.schema.d.ts.map +0 -1
  240. package/esm/components/badge.d.ts +0 -64
  241. package/esm/components/badge.d.ts.map +0 -1
  242. package/esm/components/badge.schema.d.ts +0 -91
  243. package/esm/components/badge.schema.d.ts.map +0 -1
  244. package/esm/components/button.d.ts +0 -100
  245. package/esm/components/button.d.ts.map +0 -1
  246. package/esm/components/button.schema.d.ts +0 -120
  247. package/esm/components/button.schema.d.ts.map +0 -1
  248. package/esm/components/card.d.ts +0 -53
  249. package/esm/components/card.d.ts.map +0 -1
  250. package/esm/components/card.schema.d.ts +0 -93
  251. package/esm/components/card.schema.d.ts.map +0 -1
  252. package/esm/components/form.d.ts +0 -212
  253. package/esm/components/form.d.ts.map +0 -1
  254. package/esm/components/form.schema.d.ts +0 -365
  255. package/esm/components/form.schema.d.ts.map +0 -1
  256. package/esm/components/index.d.ts +0 -29
  257. package/esm/components/index.d.ts.map +0 -1
  258. package/esm/components/list.d.ts +0 -121
  259. package/esm/components/list.d.ts.map +0 -1
  260. package/esm/components/list.schema.d.ts +0 -129
  261. package/esm/components/list.schema.d.ts.map +0 -1
  262. package/esm/components/modal.d.ts +0 -100
  263. package/esm/components/modal.d.ts.map +0 -1
  264. package/esm/components/modal.schema.d.ts +0 -151
  265. package/esm/components/modal.schema.d.ts.map +0 -1
  266. package/esm/components/table.d.ts +0 -91
  267. package/esm/components/table.d.ts.map +0 -1
  268. package/esm/components/table.schema.d.ts +0 -123
  269. package/esm/components/table.schema.d.ts.map +0 -1
  270. package/esm/dependency/cdn-registry.d.ts +0 -98
  271. package/esm/dependency/cdn-registry.d.ts.map +0 -1
  272. package/esm/dependency/import-map.d.ts +0 -186
  273. package/esm/dependency/import-map.d.ts.map +0 -1
  274. package/esm/dependency/import-parser.d.ts +0 -82
  275. package/esm/dependency/import-parser.d.ts.map +0 -1
  276. package/esm/dependency/index.d.ts +0 -17
  277. package/esm/dependency/index.d.ts.map +0 -1
  278. package/esm/dependency/resolver.d.ts +0 -164
  279. package/esm/dependency/resolver.d.ts.map +0 -1
  280. package/esm/dependency/schemas.d.ts +0 -486
  281. package/esm/dependency/schemas.d.ts.map +0 -1
  282. package/esm/dependency/template-loader.d.ts +0 -204
  283. package/esm/dependency/template-loader.d.ts.map +0 -1
  284. package/esm/dependency/template-processor.d.ts +0 -118
  285. package/esm/dependency/template-processor.d.ts.map +0 -1
  286. package/esm/dependency/types.d.ts +0 -739
  287. package/esm/dependency/types.d.ts.map +0 -1
  288. package/esm/handlebars/expression-extractor.d.ts +0 -147
  289. package/esm/handlebars/expression-extractor.d.ts.map +0 -1
  290. package/esm/handlebars/helpers.d.ts +0 -339
  291. package/esm/handlebars/helpers.d.ts.map +0 -1
  292. package/esm/handlebars/index.d.ts +0 -195
  293. package/esm/handlebars/index.d.ts.map +0 -1
  294. package/esm/handlebars/index.js +0 -587
  295. package/esm/index.d.ts +0 -56
  296. package/esm/index.d.ts.map +0 -1
  297. package/esm/index.js +0 -20511
  298. package/esm/layouts/base.d.ts +0 -86
  299. package/esm/layouts/base.d.ts.map +0 -1
  300. package/esm/layouts/index.d.ts +0 -8
  301. package/esm/layouts/index.d.ts.map +0 -1
  302. package/esm/layouts/index.js +0 -892
  303. package/esm/layouts/presets.d.ts +0 -134
  304. package/esm/layouts/presets.d.ts.map +0 -1
  305. package/esm/pages/consent.d.ts +0 -117
  306. package/esm/pages/consent.d.ts.map +0 -1
  307. package/esm/pages/error.d.ts +0 -101
  308. package/esm/pages/error.d.ts.map +0 -1
  309. package/esm/pages/index.d.ts +0 -9
  310. package/esm/pages/index.d.ts.map +0 -1
  311. package/esm/pages/index.js +0 -1563
  312. package/esm/react/Alert.d.ts +0 -102
  313. package/esm/react/Alert.d.ts.map +0 -1
  314. package/esm/react/Badge.d.ts +0 -101
  315. package/esm/react/Badge.d.ts.map +0 -1
  316. package/esm/react/Button.d.ts +0 -109
  317. package/esm/react/Button.d.ts.map +0 -1
  318. package/esm/react/Card.d.ts +0 -104
  319. package/esm/react/Card.d.ts.map +0 -1
  320. package/esm/react/hooks/context.d.ts +0 -179
  321. package/esm/react/hooks/context.d.ts.map +0 -1
  322. package/esm/react/hooks/index.d.ts +0 -42
  323. package/esm/react/hooks/index.d.ts.map +0 -1
  324. package/esm/react/hooks/tools.d.ts +0 -284
  325. package/esm/react/hooks/tools.d.ts.map +0 -1
  326. package/esm/react/index.d.ts +0 -81
  327. package/esm/react/index.d.ts.map +0 -1
  328. package/esm/react/types.d.ts +0 -106
  329. package/esm/react/types.d.ts.map +0 -1
  330. package/esm/react/utils.d.ts +0 -43
  331. package/esm/react/utils.d.ts.map +0 -1
  332. package/esm/registry/index.d.ts +0 -46
  333. package/esm/registry/index.d.ts.map +0 -1
  334. package/esm/registry/index.js +0 -6422
  335. package/esm/registry/render-template.d.ts +0 -91
  336. package/esm/registry/render-template.d.ts.map +0 -1
  337. package/esm/registry/tool-ui.registry.d.ts +0 -294
  338. package/esm/registry/tool-ui.registry.d.ts.map +0 -1
  339. package/esm/registry/uri-utils.d.ts +0 -56
  340. package/esm/registry/uri-utils.d.ts.map +0 -1
  341. package/esm/render/index.d.ts +0 -8
  342. package/esm/render/index.d.ts.map +0 -1
  343. package/esm/render/prerender.d.ts +0 -57
  344. package/esm/render/prerender.d.ts.map +0 -1
  345. package/esm/renderers/cache.d.ts +0 -145
  346. package/esm/renderers/cache.d.ts.map +0 -1
  347. package/esm/renderers/html.renderer.d.ts +0 -123
  348. package/esm/renderers/html.renderer.d.ts.map +0 -1
  349. package/esm/renderers/index.d.ts +0 -36
  350. package/esm/renderers/index.d.ts.map +0 -1
  351. package/esm/renderers/index.js +0 -1827
  352. package/esm/renderers/mdx.renderer.d.ts +0 -120
  353. package/esm/renderers/mdx.renderer.d.ts.map +0 -1
  354. package/esm/renderers/react.renderer.d.ts +0 -96
  355. package/esm/renderers/react.renderer.d.ts.map +0 -1
  356. package/esm/renderers/registry.d.ts +0 -134
  357. package/esm/renderers/registry.d.ts.map +0 -1
  358. package/esm/renderers/types.d.ts +0 -342
  359. package/esm/renderers/types.d.ts.map +0 -1
  360. package/esm/renderers/utils/detect.d.ts +0 -107
  361. package/esm/renderers/utils/detect.d.ts.map +0 -1
  362. package/esm/renderers/utils/hash.d.ts +0 -40
  363. package/esm/renderers/utils/hash.d.ts.map +0 -1
  364. package/esm/renderers/utils/index.d.ts +0 -9
  365. package/esm/renderers/utils/index.d.ts.map +0 -1
  366. package/esm/renderers/utils/transpiler.d.ts +0 -89
  367. package/esm/renderers/utils/transpiler.d.ts.map +0 -1
  368. package/esm/runtime/adapters/html.adapter.d.ts +0 -59
  369. package/esm/runtime/adapters/html.adapter.d.ts.map +0 -1
  370. package/esm/runtime/adapters/index.d.ts +0 -26
  371. package/esm/runtime/adapters/index.d.ts.map +0 -1
  372. package/esm/runtime/adapters/mdx.adapter.d.ts +0 -73
  373. package/esm/runtime/adapters/mdx.adapter.d.ts.map +0 -1
  374. package/esm/runtime/adapters/react.adapter.d.ts.map +0 -1
  375. package/esm/runtime/adapters/types.d.ts +0 -95
  376. package/esm/runtime/adapters/types.d.ts.map +0 -1
  377. package/esm/runtime/csp.d.ts +0 -48
  378. package/esm/runtime/csp.d.ts.map +0 -1
  379. package/esm/runtime/index.d.ts +0 -17
  380. package/esm/runtime/index.d.ts.map +0 -1
  381. package/esm/runtime/index.js +0 -5186
  382. package/esm/runtime/mcp-bridge.d.ts +0 -101
  383. package/esm/runtime/mcp-bridge.d.ts.map +0 -1
  384. package/esm/runtime/renderer-runtime.d.ts +0 -133
  385. package/esm/runtime/renderer-runtime.d.ts.map +0 -1
  386. package/esm/runtime/sanitizer.d.ts +0 -172
  387. package/esm/runtime/sanitizer.d.ts.map +0 -1
  388. package/esm/runtime/types.d.ts +0 -415
  389. package/esm/runtime/types.d.ts.map +0 -1
  390. package/esm/runtime/wrapper.d.ts +0 -421
  391. package/esm/runtime/wrapper.d.ts.map +0 -1
  392. package/esm/styles/index.d.ts +0 -8
  393. package/esm/styles/index.d.ts.map +0 -1
  394. package/esm/styles/index.js +0 -171
  395. package/esm/styles/variants.d.ts +0 -51
  396. package/esm/styles/variants.d.ts.map +0 -1
  397. package/esm/theme/cdn.d.ts +0 -195
  398. package/esm/theme/cdn.d.ts.map +0 -1
  399. package/esm/theme/index.d.ts +0 -18
  400. package/esm/theme/index.d.ts.map +0 -1
  401. package/esm/theme/index.js +0 -700
  402. package/esm/theme/platforms.d.ts +0 -107
  403. package/esm/theme/platforms.d.ts.map +0 -1
  404. package/esm/theme/presets/github-openai.d.ts +0 -50
  405. package/esm/theme/presets/github-openai.d.ts.map +0 -1
  406. package/esm/theme/presets/index.d.ts +0 -11
  407. package/esm/theme/presets/index.d.ts.map +0 -1
  408. package/esm/theme/theme.d.ts +0 -396
  409. package/esm/theme/theme.d.ts.map +0 -1
  410. package/esm/tool-template/builder.d.ts +0 -213
  411. package/esm/tool-template/builder.d.ts.map +0 -1
  412. package/esm/tool-template/index.d.ts +0 -16
  413. package/esm/tool-template/index.d.ts.map +0 -1
  414. package/esm/tool-template/index.js +0 -3515
  415. package/esm/types/index.d.ts +0 -14
  416. package/esm/types/index.d.ts.map +0 -1
  417. package/esm/types/index.js +0 -75
  418. package/esm/types/ui-config.d.ts +0 -639
  419. package/esm/types/ui-config.d.ts.map +0 -1
  420. package/esm/types/ui-runtime.d.ts +0 -1007
  421. package/esm/types/ui-runtime.d.ts.map +0 -1
  422. package/esm/typings/cache/cache-adapter.d.ts +0 -125
  423. package/esm/typings/cache/cache-adapter.d.ts.map +0 -1
  424. package/esm/typings/cache/index.d.ts +0 -10
  425. package/esm/typings/cache/index.d.ts.map +0 -1
  426. package/esm/typings/cache/memory-cache.d.ts +0 -92
  427. package/esm/typings/cache/memory-cache.d.ts.map +0 -1
  428. package/esm/typings/dts-parser.d.ts +0 -90
  429. package/esm/typings/dts-parser.d.ts.map +0 -1
  430. package/esm/typings/index.d.ts +0 -48
  431. package/esm/typings/index.d.ts.map +0 -1
  432. package/esm/typings/schemas.d.ts +0 -232
  433. package/esm/typings/schemas.d.ts.map +0 -1
  434. package/esm/typings/type-fetcher.d.ts +0 -89
  435. package/esm/typings/type-fetcher.d.ts.map +0 -1
  436. package/esm/typings/types.d.ts +0 -320
  437. package/esm/typings/types.d.ts.map +0 -1
  438. package/esm/universal/UniversalApp.d.ts +0 -108
  439. package/esm/universal/UniversalApp.d.ts.map +0 -1
  440. package/esm/universal/cached-runtime.d.ts +0 -115
  441. package/esm/universal/cached-runtime.d.ts.map +0 -1
  442. package/esm/universal/context.d.ts +0 -122
  443. package/esm/universal/context.d.ts.map +0 -1
  444. package/esm/universal/index.d.ts +0 -57
  445. package/esm/universal/index.d.ts.map +0 -1
  446. package/esm/universal/renderers/html.renderer.d.ts +0 -37
  447. package/esm/universal/renderers/html.renderer.d.ts.map +0 -1
  448. package/esm/universal/renderers/index.d.ts +0 -112
  449. package/esm/universal/renderers/index.d.ts.map +0 -1
  450. package/esm/universal/renderers/markdown.renderer.d.ts +0 -33
  451. package/esm/universal/renderers/markdown.renderer.d.ts.map +0 -1
  452. package/esm/universal/renderers/mdx.renderer.d.ts +0 -38
  453. package/esm/universal/renderers/mdx.renderer.d.ts.map +0 -1
  454. package/esm/universal/renderers/react.renderer.d.ts +0 -46
  455. package/esm/universal/renderers/react.renderer.d.ts.map +0 -1
  456. package/esm/universal/runtime-builder.d.ts +0 -33
  457. package/esm/universal/runtime-builder.d.ts.map +0 -1
  458. package/esm/universal/store.d.ts +0 -135
  459. package/esm/universal/store.d.ts.map +0 -1
  460. package/esm/universal/types.d.ts +0 -199
  461. package/esm/universal/types.d.ts.map +0 -1
  462. package/esm/utils/escape-html.d.ts +0 -58
  463. package/esm/utils/escape-html.d.ts.map +0 -1
  464. package/esm/utils/index.d.ts +0 -10
  465. package/esm/utils/index.d.ts.map +0 -1
  466. package/esm/utils/index.js +0 -40
  467. package/esm/utils/safe-stringify.d.ts +0 -30
  468. package/esm/utils/safe-stringify.d.ts.map +0 -1
  469. package/esm/validation/error-box.d.ts +0 -56
  470. package/esm/validation/error-box.d.ts.map +0 -1
  471. package/esm/validation/index.d.ts +0 -13
  472. package/esm/validation/index.d.ts.map +0 -1
  473. package/esm/validation/index.js +0 -562
  474. package/esm/validation/schema-paths.d.ts +0 -118
  475. package/esm/validation/schema-paths.d.ts.map +0 -1
  476. package/esm/validation/template-validator.d.ts +0 -143
  477. package/esm/validation/template-validator.d.ts.map +0 -1
  478. package/esm/validation/wrapper.d.ts +0 -97
  479. package/esm/validation/wrapper.d.ts.map +0 -1
  480. package/esm/web-components/core/attribute-parser.d.ts +0 -82
  481. package/esm/web-components/core/attribute-parser.d.ts.map +0 -1
  482. package/esm/web-components/core/base-element.d.ts +0 -197
  483. package/esm/web-components/core/base-element.d.ts.map +0 -1
  484. package/esm/web-components/core/index.d.ts +0 -9
  485. package/esm/web-components/core/index.d.ts.map +0 -1
  486. package/esm/web-components/elements/fmcp-alert.d.ts +0 -46
  487. package/esm/web-components/elements/fmcp-alert.d.ts.map +0 -1
  488. package/esm/web-components/elements/fmcp-badge.d.ts +0 -47
  489. package/esm/web-components/elements/fmcp-badge.d.ts.map +0 -1
  490. package/esm/web-components/elements/fmcp-button.d.ts +0 -117
  491. package/esm/web-components/elements/fmcp-button.d.ts.map +0 -1
  492. package/esm/web-components/elements/fmcp-card.d.ts +0 -53
  493. package/esm/web-components/elements/fmcp-card.d.ts.map +0 -1
  494. package/esm/web-components/elements/fmcp-input.d.ts +0 -96
  495. package/esm/web-components/elements/fmcp-input.d.ts.map +0 -1
  496. package/esm/web-components/elements/fmcp-select.d.ts +0 -100
  497. package/esm/web-components/elements/fmcp-select.d.ts.map +0 -1
  498. package/esm/web-components/elements/index.d.ts +0 -13
  499. package/esm/web-components/elements/index.d.ts.map +0 -1
  500. package/esm/web-components/index.d.ts +0 -50
  501. package/esm/web-components/index.d.ts.map +0 -1
  502. package/esm/web-components/register.d.ts +0 -57
  503. package/esm/web-components/register.d.ts.map +0 -1
  504. package/esm/web-components/types.d.ts +0 -122
  505. package/esm/web-components/types.d.ts.map +0 -1
  506. package/esm/widgets/index.d.ts +0 -8
  507. package/esm/widgets/index.d.ts.map +0 -1
  508. package/esm/widgets/index.js +0 -941
  509. package/esm/widgets/progress.d.ts +0 -133
  510. package/esm/widgets/progress.d.ts.map +0 -1
  511. package/esm/widgets/resource.d.ts +0 -163
  512. package/esm/widgets/resource.d.ts.map +0 -1
  513. package/handlebars/expression-extractor.d.ts +0 -147
  514. package/handlebars/expression-extractor.d.ts.map +0 -1
  515. package/handlebars/helpers.d.ts +0 -339
  516. package/handlebars/helpers.d.ts.map +0 -1
  517. package/handlebars/index.d.ts +0 -195
  518. package/handlebars/index.d.ts.map +0 -1
  519. package/handlebars/index.js +0 -666
  520. package/pages/consent.d.ts +0 -117
  521. package/pages/consent.d.ts.map +0 -1
  522. package/pages/error.d.ts +0 -101
  523. package/pages/error.d.ts.map +0 -1
  524. package/pages/index.d.ts +0 -9
  525. package/pages/index.d.ts.map +0 -1
  526. package/pages/index.js +0 -1602
  527. package/react/utils.d.ts +0 -43
  528. package/react/utils.d.ts.map +0 -1
  529. package/registry/index.d.ts +0 -46
  530. package/registry/index.d.ts.map +0 -1
  531. package/registry/index.js +0 -6465
  532. package/registry/render-template.d.ts +0 -91
  533. package/registry/render-template.d.ts.map +0 -1
  534. package/registry/tool-ui.registry.d.ts +0 -294
  535. package/registry/tool-ui.registry.d.ts.map +0 -1
  536. package/registry/uri-utils.d.ts +0 -56
  537. package/registry/uri-utils.d.ts.map +0 -1
  538. package/renderers/cache.d.ts +0 -145
  539. package/renderers/cache.d.ts.map +0 -1
  540. package/renderers/html.renderer.d.ts +0 -123
  541. package/renderers/html.renderer.d.ts.map +0 -1
  542. package/renderers/registry.d.ts +0 -134
  543. package/renderers/registry.d.ts.map +0 -1
  544. package/renderers/types.d.ts +0 -342
  545. package/renderers/types.d.ts.map +0 -1
  546. package/renderers/utils/detect.d.ts +0 -107
  547. package/renderers/utils/detect.d.ts.map +0 -1
  548. package/renderers/utils/hash.d.ts +0 -40
  549. package/renderers/utils/hash.d.ts.map +0 -1
  550. package/renderers/utils/index.d.ts +0 -9
  551. package/renderers/utils/index.d.ts.map +0 -1
  552. package/renderers/utils/transpiler.d.ts +0 -89
  553. package/renderers/utils/transpiler.d.ts.map +0 -1
  554. package/runtime/adapters/html.adapter.d.ts +0 -59
  555. package/runtime/adapters/html.adapter.d.ts.map +0 -1
  556. package/runtime/adapters/index.d.ts +0 -26
  557. package/runtime/adapters/index.d.ts.map +0 -1
  558. package/runtime/adapters/mdx.adapter.d.ts +0 -73
  559. package/runtime/adapters/mdx.adapter.d.ts.map +0 -1
  560. package/runtime/adapters/react.adapter.d.ts +0 -70
  561. package/runtime/adapters/react.adapter.d.ts.map +0 -1
  562. package/runtime/adapters/types.d.ts +0 -95
  563. package/runtime/adapters/types.d.ts.map +0 -1
  564. package/runtime/csp.d.ts +0 -48
  565. package/runtime/csp.d.ts.map +0 -1
  566. package/runtime/index.d.ts +0 -17
  567. package/runtime/index.d.ts.map +0 -1
  568. package/runtime/index.js +0 -5264
  569. package/runtime/mcp-bridge.d.ts +0 -101
  570. package/runtime/mcp-bridge.d.ts.map +0 -1
  571. package/runtime/renderer-runtime.d.ts +0 -133
  572. package/runtime/renderer-runtime.d.ts.map +0 -1
  573. package/runtime/sanitizer.d.ts +0 -172
  574. package/runtime/sanitizer.d.ts.map +0 -1
  575. package/runtime/types.d.ts +0 -415
  576. package/runtime/types.d.ts.map +0 -1
  577. package/runtime/wrapper.d.ts +0 -421
  578. package/runtime/wrapper.d.ts.map +0 -1
  579. package/styles/index.d.ts +0 -8
  580. package/styles/index.d.ts.map +0 -1
  581. package/styles/index.js +0 -222
  582. package/styles/variants.d.ts +0 -51
  583. package/styles/variants.d.ts.map +0 -1
  584. package/theme/cdn.d.ts +0 -195
  585. package/theme/cdn.d.ts.map +0 -1
  586. package/theme/index.d.ts +0 -18
  587. package/theme/index.d.ts.map +0 -1
  588. package/theme/index.js +0 -757
  589. package/theme/platforms.d.ts +0 -107
  590. package/theme/platforms.d.ts.map +0 -1
  591. package/theme/presets/github-openai.d.ts +0 -50
  592. package/theme/presets/github-openai.d.ts.map +0 -1
  593. package/theme/presets/index.d.ts +0 -11
  594. package/theme/presets/index.d.ts.map +0 -1
  595. package/theme/theme.d.ts +0 -396
  596. package/theme/theme.d.ts.map +0 -1
  597. package/tool-template/builder.d.ts +0 -213
  598. package/tool-template/builder.d.ts.map +0 -1
  599. package/tool-template/index.d.ts +0 -16
  600. package/tool-template/index.d.ts.map +0 -1
  601. package/tool-template/index.js +0 -3559
  602. package/types/index.d.ts +0 -14
  603. package/types/index.d.ts.map +0 -1
  604. package/types/index.js +0 -108
  605. package/types/ui-config.d.ts +0 -639
  606. package/types/ui-config.d.ts.map +0 -1
  607. package/types/ui-runtime.d.ts +0 -1007
  608. package/types/ui-runtime.d.ts.map +0 -1
  609. package/typings/cache/cache-adapter.d.ts +0 -125
  610. package/typings/cache/cache-adapter.d.ts.map +0 -1
  611. package/typings/cache/index.d.ts +0 -10
  612. package/typings/cache/index.d.ts.map +0 -1
  613. package/typings/cache/memory-cache.d.ts +0 -92
  614. package/typings/cache/memory-cache.d.ts.map +0 -1
  615. package/typings/dts-parser.d.ts +0 -90
  616. package/typings/dts-parser.d.ts.map +0 -1
  617. package/typings/index.d.ts +0 -48
  618. package/typings/index.d.ts.map +0 -1
  619. package/typings/schemas.d.ts +0 -232
  620. package/typings/schemas.d.ts.map +0 -1
  621. package/typings/type-fetcher.d.ts +0 -89
  622. package/typings/type-fetcher.d.ts.map +0 -1
  623. package/typings/types.d.ts +0 -320
  624. package/typings/types.d.ts.map +0 -1
  625. package/utils/escape-html.d.ts +0 -58
  626. package/utils/escape-html.d.ts.map +0 -1
  627. package/utils/index.d.ts +0 -10
  628. package/utils/index.d.ts.map +0 -1
  629. package/utils/index.js +0 -70
  630. package/utils/safe-stringify.d.ts +0 -30
  631. package/utils/safe-stringify.d.ts.map +0 -1
  632. package/validation/error-box.d.ts +0 -56
  633. package/validation/error-box.d.ts.map +0 -1
  634. package/validation/index.d.ts +0 -13
  635. package/validation/index.d.ts.map +0 -1
  636. package/validation/index.js +0 -603
  637. package/validation/schema-paths.d.ts +0 -118
  638. package/validation/schema-paths.d.ts.map +0 -1
  639. package/validation/template-validator.d.ts +0 -143
  640. package/validation/template-validator.d.ts.map +0 -1
  641. package/validation/wrapper.d.ts +0 -97
  642. package/validation/wrapper.d.ts.map +0 -1
  643. package/widgets/index.d.ts +0 -8
  644. package/widgets/index.d.ts.map +0 -1
  645. package/widgets/index.js +0 -978
  646. package/widgets/progress.d.ts +0 -133
  647. package/widgets/progress.d.ts.map +0 -1
  648. package/widgets/resource.d.ts +0 -163
  649. package/widgets/resource.d.ts.map +0 -1
  650. /package/esm/render/{index.js → index.mjs} +0 -0
@@ -1,666 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
-
30
- // libs/ui/src/handlebars/index.ts
31
- var handlebars_exports = {};
32
- __export(handlebars_exports, {
33
- HandlebarsRenderer: () => HandlebarsRenderer,
34
- and: () => and,
35
- builtinHelpers: () => builtinHelpers,
36
- capitalize: () => capitalize,
37
- classNames: () => classNames,
38
- containsHandlebars: () => containsHandlebars,
39
- createHandlebarsRenderer: () => createHandlebarsRenderer,
40
- defaultValue: () => defaultValue,
41
- eq: () => eq,
42
- escapeHtml: () => escapeHtml,
43
- extractAll: () => extractAll,
44
- extractExpressions: () => extractExpressions,
45
- extractInputPaths: () => extractInputPaths,
46
- extractOutputPaths: () => extractOutputPaths,
47
- extractStructuredContentPaths: () => extractStructuredContentPaths,
48
- extractVariablePaths: () => extractVariablePaths,
49
- first: () => first,
50
- formatCurrency: () => formatCurrency,
51
- formatDate: () => formatDate,
52
- formatNumber: () => formatNumber,
53
- getExpressionAt: () => getExpressionAt,
54
- gt: () => gt,
55
- gte: () => gte,
56
- hasVariablePaths: () => hasVariablePaths,
57
- includes: () => includes,
58
- isHandlebarsAvailable: () => isHandlebarsAvailable,
59
- join: () => join,
60
- json: () => json,
61
- jsonEmbed: () => jsonEmbed,
62
- last: () => last,
63
- length: () => length,
64
- lowercase: () => lowercase,
65
- lt: () => lt,
66
- lte: () => lte,
67
- ne: () => ne,
68
- normalizePath: () => normalizePath,
69
- not: () => not,
70
- or: () => or,
71
- renderTemplate: () => renderTemplate,
72
- resetUniqueIdCounter: () => resetUniqueIdCounter,
73
- truncate: () => truncate,
74
- uniqueId: () => uniqueId,
75
- uppercase: () => uppercase
76
- });
77
- module.exports = __toCommonJS(handlebars_exports);
78
-
79
- // libs/ui/src/utils/escape-html.ts
80
- function escapeHtml(str) {
81
- if (str === null || str === void 0) {
82
- return "";
83
- }
84
- const s = String(str);
85
- return s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029");
86
- }
87
-
88
- // libs/ui/src/handlebars/helpers.ts
89
- function formatDate(date, format) {
90
- if (date === null || date === void 0) {
91
- return "";
92
- }
93
- let dateObj;
94
- if (date instanceof Date) {
95
- dateObj = date;
96
- } else if (typeof date === "string" || typeof date === "number") {
97
- dateObj = new Date(date);
98
- } else {
99
- return String(date);
100
- }
101
- if (isNaN(dateObj.getTime())) {
102
- return String(date);
103
- }
104
- const options = {};
105
- switch (format) {
106
- case "short":
107
- options.dateStyle = "short";
108
- break;
109
- case "medium":
110
- options.dateStyle = "medium";
111
- break;
112
- case "long":
113
- options.dateStyle = "long";
114
- break;
115
- case "full":
116
- options.dateStyle = "full";
117
- break;
118
- case "time":
119
- options.timeStyle = "short";
120
- break;
121
- case "datetime":
122
- options.dateStyle = "medium";
123
- options.timeStyle = "short";
124
- break;
125
- case "iso":
126
- return dateObj.toISOString();
127
- case "relative":
128
- return formatRelativeDate(dateObj);
129
- default:
130
- options.dateStyle = "medium";
131
- }
132
- return new Intl.DateTimeFormat("en-US", options).format(dateObj);
133
- }
134
- function formatRelativeDate(date) {
135
- const now = /* @__PURE__ */ new Date();
136
- const diffMs = now.getTime() - date.getTime();
137
- const diffSecs = Math.floor(diffMs / 1e3);
138
- const diffMins = Math.floor(diffSecs / 60);
139
- const diffHours = Math.floor(diffMins / 60);
140
- const diffDays = Math.floor(diffHours / 24);
141
- if (diffSecs < 60) {
142
- return "just now";
143
- } else if (diffMins < 60) {
144
- return `${diffMins} minute${diffMins === 1 ? "" : "s"} ago`;
145
- } else if (diffHours < 24) {
146
- return `${diffHours} hour${diffHours === 1 ? "" : "s"} ago`;
147
- } else if (diffDays < 7) {
148
- return `${diffDays} day${diffDays === 1 ? "" : "s"} ago`;
149
- } else {
150
- return formatDate(date, "medium");
151
- }
152
- }
153
- function formatCurrency(amount, currency) {
154
- if (amount === null || amount === void 0) {
155
- return "";
156
- }
157
- const num = typeof amount === "number" ? amount : parseFloat(String(amount));
158
- if (isNaN(num)) {
159
- return String(amount);
160
- }
161
- return new Intl.NumberFormat("en-US", {
162
- style: "currency",
163
- currency: typeof currency === "string" ? currency : "USD"
164
- }).format(num);
165
- }
166
- function formatNumber(value, decimals) {
167
- if (value === null || value === void 0) {
168
- return "";
169
- }
170
- const num = typeof value === "number" ? value : parseFloat(String(value));
171
- if (isNaN(num)) {
172
- return String(value);
173
- }
174
- const options = {};
175
- if (typeof decimals === "number") {
176
- options.minimumFractionDigits = decimals;
177
- options.maximumFractionDigits = decimals;
178
- }
179
- return new Intl.NumberFormat("en-US", options).format(num);
180
- }
181
- function jsonEmbed(data) {
182
- const json2 = JSON.stringify(data ?? null);
183
- return json2.replace(/</g, "\\u003c").replace(/>/g, "\\u003e").replace(/&/g, "\\u0026").replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029");
184
- }
185
- function json(data, pretty) {
186
- return JSON.stringify(data ?? null, null, pretty ? 2 : void 0);
187
- }
188
- function eq(a, b) {
189
- return a === b;
190
- }
191
- function ne(a, b) {
192
- return a !== b;
193
- }
194
- function gt(a, b) {
195
- return Number(a) > Number(b);
196
- }
197
- function gte(a, b) {
198
- return Number(a) >= Number(b);
199
- }
200
- function lt(a, b) {
201
- return Number(a) < Number(b);
202
- }
203
- function lte(a, b) {
204
- return Number(a) <= Number(b);
205
- }
206
- function and(a, b) {
207
- return Boolean(a) && Boolean(b);
208
- }
209
- function or(a, b) {
210
- return Boolean(a) || Boolean(b);
211
- }
212
- function not(value) {
213
- return !value;
214
- }
215
- function first(arr) {
216
- if (!Array.isArray(arr)) return void 0;
217
- return arr[0];
218
- }
219
- function last(arr) {
220
- if (!Array.isArray(arr)) return void 0;
221
- return arr[arr.length - 1];
222
- }
223
- function length(value) {
224
- if (Array.isArray(value)) return value.length;
225
- if (typeof value === "string") return value.length;
226
- return 0;
227
- }
228
- function includes(arr, value) {
229
- if (!Array.isArray(arr)) return false;
230
- return arr.includes(value);
231
- }
232
- function join(arr, separator) {
233
- if (!Array.isArray(arr)) return "";
234
- return arr.join(typeof separator === "string" ? separator : ", ");
235
- }
236
- function uppercase(str) {
237
- return String(str ?? "").toUpperCase();
238
- }
239
- function lowercase(str) {
240
- return String(str ?? "").toLowerCase();
241
- }
242
- function capitalize(str) {
243
- const s = String(str ?? "");
244
- return s.charAt(0).toUpperCase() + s.slice(1).toLowerCase();
245
- }
246
- function truncate(str, maxLength, suffix) {
247
- const s = String(str ?? "");
248
- const len = typeof maxLength === "number" ? maxLength : 50;
249
- const suf = typeof suffix === "string" ? suffix : "...";
250
- if (s.length <= len) return s;
251
- return s.slice(0, len - suf.length) + suf;
252
- }
253
- function defaultValue(value, defaultValue2) {
254
- return value || defaultValue2;
255
- }
256
- var idCounter = 0;
257
- function uniqueId(prefix) {
258
- const id = ++idCounter;
259
- return prefix ? `${prefix}-${id}` : `id-${id}`;
260
- }
261
- function resetUniqueIdCounter() {
262
- idCounter = 0;
263
- }
264
- function classNames(...classes) {
265
- return classes.filter(Boolean).map(String).join(" ");
266
- }
267
- var builtinHelpers = {
268
- // Escaping
269
- escapeHtml,
270
- // Formatting
271
- formatDate,
272
- formatCurrency,
273
- formatNumber,
274
- json,
275
- jsonEmbed,
276
- // Comparison
277
- eq,
278
- ne,
279
- gt,
280
- gte,
281
- lt,
282
- lte,
283
- // Logical
284
- and,
285
- or,
286
- not,
287
- // Array
288
- first,
289
- last,
290
- length,
291
- includes,
292
- join,
293
- // String
294
- uppercase,
295
- lowercase,
296
- capitalize,
297
- truncate,
298
- // Utility
299
- default: defaultValue,
300
- uniqueId,
301
- classNames
302
- };
303
-
304
- // libs/ui/src/handlebars/expression-extractor.ts
305
- var EXPRESSION_REGEX = /\{\{\{?(?!!)(#|\/)?([^}]+?)\}?\}\}/g;
306
- var PATH_REGEX = /\b(output|input|structuredContent)(\.[a-zA-Z_$][a-zA-Z0-9_$]*|\.\[[^\]]+\])+/g;
307
- var KEYWORDS = /* @__PURE__ */ new Set(["this", "else", "@index", "@key", "@first", "@last", "@root"]);
308
- function extractExpressions(template) {
309
- const expressions = [];
310
- const lines = template.split("\n");
311
- const positionMap = buildPositionMap(template);
312
- let match;
313
- EXPRESSION_REGEX.lastIndex = 0;
314
- while ((match = EXPRESSION_REGEX.exec(template)) !== null) {
315
- const fullExpression = match[0];
316
- const prefix = match[1];
317
- const content = match[2].trim();
318
- const position = positionMap.get(match.index) ?? { line: 1, column: 1 };
319
- let type = "variable";
320
- let helperName;
321
- if (prefix === "/") {
322
- type = "block-close";
323
- helperName = content;
324
- } else if (prefix === "#") {
325
- type = "block";
326
- const parts = content.split(/\s+/);
327
- helperName = parts[0];
328
- } else {
329
- const parts = content.split(/\s+/);
330
- if (parts.length > 1 && !content.startsWith("(")) {
331
- const firstToken = parts[0];
332
- if (!firstToken.includes(".") && !KEYWORDS.has(firstToken)) {
333
- type = "helper";
334
- helperName = firstToken;
335
- }
336
- }
337
- }
338
- const paths = extractPathsFromContent(content);
339
- for (const path of paths) {
340
- expressions.push({
341
- path,
342
- fullExpression,
343
- line: position.line,
344
- column: position.column,
345
- type,
346
- helperName
347
- });
348
- }
349
- if (paths.length === 0 && type === "variable") {
350
- const cleanContent = content.trim();
351
- if (!KEYWORDS.has(cleanContent) && !cleanContent.includes(" ") && !cleanContent.startsWith("(")) {
352
- }
353
- }
354
- }
355
- return expressions;
356
- }
357
- function extractPathsFromContent(content) {
358
- const paths = [];
359
- let match;
360
- const regex = new RegExp(PATH_REGEX.source, "g");
361
- while ((match = regex.exec(content)) !== null) {
362
- paths.push(match[0]);
363
- }
364
- return paths;
365
- }
366
- function buildPositionMap(template) {
367
- const map = /* @__PURE__ */ new Map();
368
- let line = 1;
369
- let column = 1;
370
- for (let i = 0; i < template.length; i++) {
371
- map.set(i, { line, column });
372
- if (template[i] === "\n") {
373
- line++;
374
- column = 1;
375
- } else {
376
- column++;
377
- }
378
- }
379
- return map;
380
- }
381
- function extractVariablePaths(template) {
382
- const expressions = extractExpressions(template);
383
- const paths = new Set(expressions.map((e) => e.path));
384
- return Array.from(paths);
385
- }
386
- function extractOutputPaths(template) {
387
- return extractVariablePaths(template).filter((p) => p.startsWith("output."));
388
- }
389
- function extractInputPaths(template) {
390
- return extractVariablePaths(template).filter((p) => p.startsWith("input."));
391
- }
392
- function extractStructuredContentPaths(template) {
393
- return extractVariablePaths(template).filter((p) => p.startsWith("structuredContent."));
394
- }
395
- function extractAll(template) {
396
- const expressions = extractExpressions(template);
397
- const paths = [...new Set(expressions.map((e) => e.path))];
398
- return {
399
- expressions,
400
- paths,
401
- outputPaths: paths.filter((p) => p.startsWith("output.")),
402
- inputPaths: paths.filter((p) => p.startsWith("input.")),
403
- structuredContentPaths: paths.filter((p) => p.startsWith("structuredContent."))
404
- };
405
- }
406
- function hasVariablePaths(template) {
407
- return extractVariablePaths(template).length > 0;
408
- }
409
- function getExpressionAt(template, line, column) {
410
- const expressions = extractExpressions(template);
411
- return expressions.find((expr) => {
412
- if (expr.line !== line) return false;
413
- const exprEnd = expr.column + expr.fullExpression.length;
414
- return column >= expr.column && column <= exprEnd;
415
- });
416
- }
417
- function normalizePath(path) {
418
- return path.replace(/\.\d+\./g, ".[].").replace(/\.\d+$/g, ".[]").replace(/\[\d+\]/g, ".[]");
419
- }
420
-
421
- // libs/ui/src/handlebars/index.ts
422
- var Handlebars = null;
423
- async function loadHandlebars() {
424
- if (Handlebars !== null) {
425
- return Handlebars;
426
- }
427
- try {
428
- Handlebars = await import("handlebars");
429
- return Handlebars;
430
- } catch {
431
- throw new Error("Handlebars is required for template rendering. Install it: npm install handlebars");
432
- }
433
- }
434
- async function isHandlebarsAvailable() {
435
- try {
436
- await loadHandlebars();
437
- return true;
438
- } catch {
439
- return false;
440
- }
441
- }
442
- var HandlebarsRenderer = class {
443
- options;
444
- compiledTemplates = /* @__PURE__ */ new Map();
445
- initialized = false;
446
- hbs = null;
447
- constructor(options = {}) {
448
- this.options = {
449
- strict: false,
450
- autoEscape: true,
451
- ...options
452
- };
453
- }
454
- /**
455
- * Initialize the renderer with Handlebars.
456
- */
457
- async init() {
458
- if (this.initialized) return;
459
- this.hbs = await loadHandlebars();
460
- for (const [name, helper] of Object.entries(builtinHelpers)) {
461
- this.hbs.registerHelper(name, helper);
462
- }
463
- if (this.options.helpers) {
464
- for (const [name, helper] of Object.entries(this.options.helpers)) {
465
- this.hbs.registerHelper(name, helper);
466
- }
467
- }
468
- if (this.options.partials) {
469
- for (const [name, template] of Object.entries(this.options.partials)) {
470
- this.hbs.registerPartial(name, template);
471
- }
472
- }
473
- this.initialized = true;
474
- }
475
- /**
476
- * Render a Handlebars template.
477
- *
478
- * @param template - Template string
479
- * @param context - Render context with input/output
480
- * @returns Rendered HTML string
481
- */
482
- async render(template, context) {
483
- await this.init();
484
- if (!this.hbs) {
485
- throw new Error("Handlebars not initialized");
486
- }
487
- let compiled = this.compiledTemplates.get(template);
488
- if (!compiled) {
489
- compiled = this.hbs.compile(template, {
490
- strict: this.options.strict,
491
- noEscape: !this.options.autoEscape
492
- });
493
- this.compiledTemplates.set(template, compiled);
494
- }
495
- const data = {
496
- input: context.input ?? {},
497
- output: context.output ?? {},
498
- structuredContent: context.structuredContent,
499
- // Also expose at root level for convenience
500
- ...context.input,
501
- ...typeof context.output === "object" && context.output !== null ? context.output : {}
502
- };
503
- try {
504
- return compiled(data);
505
- } catch (error) {
506
- throw new Error(`Template rendering failed: ${error instanceof Error ? error.message : String(error)}`);
507
- }
508
- }
509
- /**
510
- * Render a template synchronously.
511
- *
512
- * Note: Requires Handlebars to be pre-loaded. Use `render()` for async loading.
513
- *
514
- * @param template - Template string
515
- * @param context - Render context
516
- * @returns Rendered HTML string
517
- */
518
- renderSync(template, context) {
519
- if (!this.initialized || !this.hbs) {
520
- throw new Error("HandlebarsRenderer not initialized. Call render() first or use initSync().");
521
- }
522
- let compiled = this.compiledTemplates.get(template);
523
- if (!compiled) {
524
- compiled = this.hbs.compile(template, {
525
- strict: this.options.strict,
526
- noEscape: !this.options.autoEscape
527
- });
528
- this.compiledTemplates.set(template, compiled);
529
- }
530
- const data = {
531
- input: context.input ?? {},
532
- output: context.output ?? {},
533
- structuredContent: context.structuredContent,
534
- ...context.input,
535
- ...typeof context.output === "object" && context.output !== null ? context.output : {}
536
- };
537
- return compiled(data);
538
- }
539
- /**
540
- * Initialize synchronously (for environments where Handlebars is already loaded).
541
- */
542
- initSync(handlebars) {
543
- this.hbs = handlebars;
544
- for (const [name, helper] of Object.entries(builtinHelpers)) {
545
- this.hbs.registerHelper(name, helper);
546
- }
547
- if (this.options.helpers) {
548
- for (const [name, helper] of Object.entries(this.options.helpers)) {
549
- this.hbs.registerHelper(name, helper);
550
- }
551
- }
552
- if (this.options.partials) {
553
- for (const [name, template] of Object.entries(this.options.partials)) {
554
- this.hbs.registerPartial(name, template);
555
- }
556
- }
557
- this.initialized = true;
558
- }
559
- /**
560
- * Register a custom helper.
561
- *
562
- * @param name - Helper name
563
- * @param fn - Helper function
564
- */
565
- registerHelper(name, fn) {
566
- if (this.hbs) {
567
- this.hbs.registerHelper(name, fn);
568
- }
569
- if (!this.options.helpers) {
570
- this.options.helpers = {};
571
- }
572
- this.options.helpers[name] = fn;
573
- }
574
- /**
575
- * Register a partial template.
576
- *
577
- * @param name - Partial name
578
- * @param template - Partial template string
579
- */
580
- registerPartial(name, template) {
581
- if (this.hbs) {
582
- this.hbs.registerPartial(name, template);
583
- }
584
- if (!this.options.partials) {
585
- this.options.partials = {};
586
- }
587
- this.options.partials[name] = template;
588
- }
589
- /**
590
- * Clear compiled template cache.
591
- */
592
- clearCache() {
593
- this.compiledTemplates.clear();
594
- }
595
- /**
596
- * Check if a template string contains Handlebars syntax.
597
- *
598
- * @param template - Template string to check
599
- * @returns true if contains {{...}} syntax
600
- */
601
- static containsHandlebars(template) {
602
- return /\{\{(?!!)[\s\S]*?\}\}/.test(template);
603
- }
604
- /**
605
- * Check if the renderer is initialized.
606
- */
607
- get isInitialized() {
608
- return this.initialized;
609
- }
610
- };
611
- function createHandlebarsRenderer(options) {
612
- return new HandlebarsRenderer(options);
613
- }
614
- async function renderTemplate(template, context) {
615
- const renderer = createHandlebarsRenderer();
616
- return renderer.render(template, context);
617
- }
618
- function containsHandlebars(template) {
619
- return HandlebarsRenderer.containsHandlebars(template);
620
- }
621
- // Annotate the CommonJS export names for ESM import in node:
622
- 0 && (module.exports = {
623
- HandlebarsRenderer,
624
- and,
625
- builtinHelpers,
626
- capitalize,
627
- classNames,
628
- containsHandlebars,
629
- createHandlebarsRenderer,
630
- defaultValue,
631
- eq,
632
- escapeHtml,
633
- extractAll,
634
- extractExpressions,
635
- extractInputPaths,
636
- extractOutputPaths,
637
- extractStructuredContentPaths,
638
- extractVariablePaths,
639
- first,
640
- formatCurrency,
641
- formatDate,
642
- formatNumber,
643
- getExpressionAt,
644
- gt,
645
- gte,
646
- hasVariablePaths,
647
- includes,
648
- isHandlebarsAvailable,
649
- join,
650
- json,
651
- jsonEmbed,
652
- last,
653
- length,
654
- lowercase,
655
- lt,
656
- lte,
657
- ne,
658
- normalizePath,
659
- not,
660
- or,
661
- renderTemplate,
662
- resetUniqueIdCounter,
663
- truncate,
664
- uniqueId,
665
- uppercase
666
- });