@frontmcp/uipack 0.6.1 → 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 (315) hide show
  1. package/CLAUDE.md +88 -105
  2. package/README.md +1 -0
  3. package/adapters/index.d.ts +1 -1
  4. package/adapters/index.d.ts.map +1 -1
  5. package/adapters/index.js +35 -2
  6. package/adapters/platform-meta.d.ts +29 -0
  7. package/adapters/platform-meta.d.ts.map +1 -1
  8. package/base-template/default-base-template.d.ts +0 -1
  9. package/base-template/default-base-template.d.ts.map +1 -1
  10. package/base-template/index.js +32 -37
  11. package/build/builders/base-builder.d.ts +122 -0
  12. package/build/builders/base-builder.d.ts.map +1 -0
  13. package/build/builders/esbuild-config.d.ts +94 -0
  14. package/build/builders/esbuild-config.d.ts.map +1 -0
  15. package/build/builders/hybrid-builder.d.ts +93 -0
  16. package/build/builders/hybrid-builder.d.ts.map +1 -0
  17. package/build/builders/index.d.ts +17 -0
  18. package/build/builders/index.d.ts.map +1 -0
  19. package/build/builders/inline-builder.d.ts +83 -0
  20. package/build/builders/inline-builder.d.ts.map +1 -0
  21. package/build/builders/static-builder.d.ts +78 -0
  22. package/build/builders/static-builder.d.ts.map +1 -0
  23. package/build/builders/types.d.ts +341 -0
  24. package/build/builders/types.d.ts.map +1 -0
  25. package/build/cdn-resources.d.ts +3 -2
  26. package/build/cdn-resources.d.ts.map +1 -1
  27. package/build/hybrid-data.d.ts +127 -0
  28. package/build/hybrid-data.d.ts.map +1 -0
  29. package/build/index.d.ts +4 -0
  30. package/build/index.d.ts.map +1 -1
  31. package/build/index.js +1885 -171
  32. package/build/ui-components-browser.d.ts +64 -0
  33. package/build/ui-components-browser.d.ts.map +1 -0
  34. package/build/widget-manifest.d.ts.map +1 -1
  35. package/bundler/file-cache/component-builder.d.ts.map +1 -1
  36. package/bundler/file-cache/storage/redis.d.ts.map +1 -1
  37. package/bundler/index.js +6 -4
  38. package/dependency/cdn-registry.d.ts +1 -1
  39. package/dependency/cdn-registry.d.ts.map +1 -1
  40. package/dependency/import-map.d.ts.map +1 -1
  41. package/dependency/index.js +93 -121
  42. package/dependency/resolver.d.ts.map +1 -1
  43. package/esm/adapters/{index.js → index.mjs} +34 -2
  44. package/esm/base-template/{index.js → index.mjs} +32 -37
  45. package/esm/build/{index.js → index.mjs} +1855 -170
  46. package/esm/bundler/{index.js → index.mjs} +6 -4
  47. package/esm/dependency/{index.js → index.mjs} +93 -121
  48. package/esm/handlebars/{index.js → index.mjs} +0 -1
  49. package/esm/{index.js → index.mjs} +2516 -830
  50. package/esm/package.json +7 -6
  51. package/esm/registry/{index.js → index.mjs} +196 -264
  52. package/esm/renderers/{index.js → index.mjs} +106 -200
  53. package/esm/runtime/{index.js → index.mjs} +44 -35
  54. package/esm/styles/{index.js → index.mjs} +6 -6
  55. package/esm/theme/{index.js → index.mjs} +90 -42
  56. package/esm/tool-template/{index.js → index.mjs} +35 -28
  57. package/esm/typings/{index.js → index.mjs} +157 -1
  58. package/esm/utils/{index.js → index.mjs} +24 -0
  59. package/esm/validation/{index.js → index.mjs} +0 -1
  60. package/handlebars/expression-extractor.d.ts.map +1 -1
  61. package/handlebars/index.d.ts.map +1 -1
  62. package/handlebars/index.js +0 -1
  63. package/index.d.ts +2 -1
  64. package/index.d.ts.map +1 -1
  65. package/index.js +2545 -835
  66. package/package.json +7 -6
  67. package/preview/claude-preview.d.ts +67 -0
  68. package/preview/claude-preview.d.ts.map +1 -0
  69. package/preview/generic-preview.d.ts +67 -0
  70. package/preview/generic-preview.d.ts.map +1 -0
  71. package/preview/index.d.ts +36 -0
  72. package/preview/index.d.ts.map +1 -0
  73. package/preview/openai-preview.d.ts +70 -0
  74. package/preview/openai-preview.d.ts.map +1 -0
  75. package/preview/types.d.ts +185 -0
  76. package/preview/types.d.ts.map +1 -0
  77. package/registry/index.js +196 -264
  78. package/registry/render-template.d.ts.map +1 -1
  79. package/renderers/index.d.ts +2 -2
  80. package/renderers/index.d.ts.map +1 -1
  81. package/renderers/index.js +110 -204
  82. package/renderers/mdx-client.renderer.d.ts +124 -0
  83. package/renderers/mdx-client.renderer.d.ts.map +1 -0
  84. package/renderers/registry.d.ts +2 -2
  85. package/renderers/registry.d.ts.map +1 -1
  86. package/renderers/types.d.ts +3 -2
  87. package/renderers/types.d.ts.map +1 -1
  88. package/renderers/utils/transpiler.d.ts +8 -27
  89. package/renderers/utils/transpiler.d.ts.map +1 -1
  90. package/runtime/index.js +44 -35
  91. package/runtime/mcp-bridge.d.ts.map +1 -1
  92. package/runtime/renderer-runtime.d.ts.map +1 -1
  93. package/runtime/wrapper.d.ts.map +1 -1
  94. package/styles/index.js +6 -6
  95. package/styles/variants.d.ts +1 -1
  96. package/styles/variants.d.ts.map +1 -1
  97. package/theme/cdn.d.ts.map +1 -1
  98. package/theme/css-to-theme.d.ts +91 -0
  99. package/theme/css-to-theme.d.ts.map +1 -0
  100. package/theme/index.d.ts +2 -1
  101. package/theme/index.d.ts.map +1 -1
  102. package/theme/index.js +92 -43
  103. package/theme/platforms.d.ts +1 -6
  104. package/theme/platforms.d.ts.map +1 -1
  105. package/theme/theme.d.ts.map +1 -1
  106. package/tool-template/builder.d.ts.map +1 -1
  107. package/tool-template/index.js +35 -28
  108. package/typings/index.d.ts +4 -4
  109. package/typings/index.d.ts.map +1 -1
  110. package/typings/index.js +162 -1
  111. package/typings/schemas.d.ts +30 -0
  112. package/typings/schemas.d.ts.map +1 -1
  113. package/typings/type-fetcher.d.ts +74 -1
  114. package/typings/type-fetcher.d.ts.map +1 -1
  115. package/typings/types.d.ts +72 -1
  116. package/typings/types.d.ts.map +1 -1
  117. package/utils/escape-html.d.ts +44 -0
  118. package/utils/escape-html.d.ts.map +1 -1
  119. package/utils/index.d.ts +1 -1
  120. package/utils/index.d.ts.map +1 -1
  121. package/utils/index.js +26 -0
  122. package/validation/index.js +0 -1
  123. package/validation/template-validator.d.ts.map +1 -1
  124. package/esm/adapters/index.d.ts +0 -13
  125. package/esm/adapters/index.d.ts.map +0 -1
  126. package/esm/adapters/platform-meta.d.ts +0 -166
  127. package/esm/adapters/platform-meta.d.ts.map +0 -1
  128. package/esm/adapters/response-builder.d.ts +0 -108
  129. package/esm/adapters/response-builder.d.ts.map +0 -1
  130. package/esm/adapters/serving-mode.d.ts +0 -107
  131. package/esm/adapters/serving-mode.d.ts.map +0 -1
  132. package/esm/base-template/bridge.d.ts +0 -90
  133. package/esm/base-template/bridge.d.ts.map +0 -1
  134. package/esm/base-template/default-base-template.d.ts +0 -92
  135. package/esm/base-template/default-base-template.d.ts.map +0 -1
  136. package/esm/base-template/index.d.ts +0 -15
  137. package/esm/base-template/index.d.ts.map +0 -1
  138. package/esm/base-template/polyfills.d.ts +0 -31
  139. package/esm/base-template/polyfills.d.ts.map +0 -1
  140. package/esm/base-template/theme-styles.d.ts +0 -74
  141. package/esm/base-template/theme-styles.d.ts.map +0 -1
  142. package/esm/bridge-runtime/iife-generator.d.ts +0 -62
  143. package/esm/bridge-runtime/iife-generator.d.ts.map +0 -1
  144. package/esm/bridge-runtime/index.d.ts +0 -10
  145. package/esm/bridge-runtime/index.d.ts.map +0 -1
  146. package/esm/build/cdn-resources.d.ts +0 -243
  147. package/esm/build/cdn-resources.d.ts.map +0 -1
  148. package/esm/build/index.d.ts +0 -295
  149. package/esm/build/index.d.ts.map +0 -1
  150. package/esm/build/widget-manifest.d.ts +0 -362
  151. package/esm/build/widget-manifest.d.ts.map +0 -1
  152. package/esm/bundler/cache.d.ts +0 -173
  153. package/esm/bundler/cache.d.ts.map +0 -1
  154. package/esm/bundler/file-cache/component-builder.d.ts +0 -167
  155. package/esm/bundler/file-cache/component-builder.d.ts.map +0 -1
  156. package/esm/bundler/file-cache/hash-calculator.d.ts +0 -155
  157. package/esm/bundler/file-cache/hash-calculator.d.ts.map +0 -1
  158. package/esm/bundler/file-cache/index.d.ts +0 -12
  159. package/esm/bundler/file-cache/index.d.ts.map +0 -1
  160. package/esm/bundler/file-cache/storage/filesystem.d.ts +0 -149
  161. package/esm/bundler/file-cache/storage/filesystem.d.ts.map +0 -1
  162. package/esm/bundler/file-cache/storage/index.d.ts +0 -11
  163. package/esm/bundler/file-cache/storage/index.d.ts.map +0 -1
  164. package/esm/bundler/file-cache/storage/interface.d.ts +0 -152
  165. package/esm/bundler/file-cache/storage/interface.d.ts.map +0 -1
  166. package/esm/bundler/file-cache/storage/redis.d.ts +0 -139
  167. package/esm/bundler/file-cache/storage/redis.d.ts.map +0 -1
  168. package/esm/bundler/index.d.ts +0 -35
  169. package/esm/bundler/index.d.ts.map +0 -1
  170. package/esm/bundler/sandbox/enclave-adapter.d.ts +0 -121
  171. package/esm/bundler/sandbox/enclave-adapter.d.ts.map +0 -1
  172. package/esm/bundler/sandbox/executor.d.ts +0 -14
  173. package/esm/bundler/sandbox/executor.d.ts.map +0 -1
  174. package/esm/bundler/sandbox/policy.d.ts +0 -62
  175. package/esm/bundler/sandbox/policy.d.ts.map +0 -1
  176. package/esm/bundler/types.d.ts +0 -702
  177. package/esm/bundler/types.d.ts.map +0 -1
  178. package/esm/dependency/cdn-registry.d.ts +0 -98
  179. package/esm/dependency/cdn-registry.d.ts.map +0 -1
  180. package/esm/dependency/import-map.d.ts +0 -186
  181. package/esm/dependency/import-map.d.ts.map +0 -1
  182. package/esm/dependency/import-parser.d.ts +0 -82
  183. package/esm/dependency/import-parser.d.ts.map +0 -1
  184. package/esm/dependency/index.d.ts +0 -17
  185. package/esm/dependency/index.d.ts.map +0 -1
  186. package/esm/dependency/resolver.d.ts +0 -164
  187. package/esm/dependency/resolver.d.ts.map +0 -1
  188. package/esm/dependency/schemas.d.ts +0 -486
  189. package/esm/dependency/schemas.d.ts.map +0 -1
  190. package/esm/dependency/template-loader.d.ts +0 -204
  191. package/esm/dependency/template-loader.d.ts.map +0 -1
  192. package/esm/dependency/template-processor.d.ts +0 -118
  193. package/esm/dependency/template-processor.d.ts.map +0 -1
  194. package/esm/dependency/types.d.ts +0 -739
  195. package/esm/dependency/types.d.ts.map +0 -1
  196. package/esm/handlebars/expression-extractor.d.ts +0 -147
  197. package/esm/handlebars/expression-extractor.d.ts.map +0 -1
  198. package/esm/handlebars/helpers.d.ts +0 -339
  199. package/esm/handlebars/helpers.d.ts.map +0 -1
  200. package/esm/handlebars/index.d.ts +0 -195
  201. package/esm/handlebars/index.d.ts.map +0 -1
  202. package/esm/index.d.ts +0 -50
  203. package/esm/index.d.ts.map +0 -1
  204. package/esm/registry/index.d.ts +0 -46
  205. package/esm/registry/index.d.ts.map +0 -1
  206. package/esm/registry/render-template.d.ts +0 -91
  207. package/esm/registry/render-template.d.ts.map +0 -1
  208. package/esm/registry/tool-ui.registry.d.ts +0 -294
  209. package/esm/registry/tool-ui.registry.d.ts.map +0 -1
  210. package/esm/registry/uri-utils.d.ts +0 -56
  211. package/esm/registry/uri-utils.d.ts.map +0 -1
  212. package/esm/renderers/cache.d.ts +0 -145
  213. package/esm/renderers/cache.d.ts.map +0 -1
  214. package/esm/renderers/html.renderer.d.ts +0 -123
  215. package/esm/renderers/html.renderer.d.ts.map +0 -1
  216. package/esm/renderers/index.d.ts +0 -36
  217. package/esm/renderers/index.d.ts.map +0 -1
  218. package/esm/renderers/mdx.renderer.d.ts +0 -120
  219. package/esm/renderers/mdx.renderer.d.ts.map +0 -1
  220. package/esm/renderers/registry.d.ts +0 -133
  221. package/esm/renderers/registry.d.ts.map +0 -1
  222. package/esm/renderers/types.d.ts +0 -342
  223. package/esm/renderers/types.d.ts.map +0 -1
  224. package/esm/renderers/utils/detect.d.ts +0 -107
  225. package/esm/renderers/utils/detect.d.ts.map +0 -1
  226. package/esm/renderers/utils/hash.d.ts +0 -40
  227. package/esm/renderers/utils/hash.d.ts.map +0 -1
  228. package/esm/renderers/utils/index.d.ts +0 -9
  229. package/esm/renderers/utils/index.d.ts.map +0 -1
  230. package/esm/renderers/utils/transpiler.d.ts +0 -89
  231. package/esm/renderers/utils/transpiler.d.ts.map +0 -1
  232. package/esm/runtime/adapters/html.adapter.d.ts +0 -59
  233. package/esm/runtime/adapters/html.adapter.d.ts.map +0 -1
  234. package/esm/runtime/adapters/index.d.ts +0 -26
  235. package/esm/runtime/adapters/index.d.ts.map +0 -1
  236. package/esm/runtime/adapters/mdx.adapter.d.ts +0 -73
  237. package/esm/runtime/adapters/mdx.adapter.d.ts.map +0 -1
  238. package/esm/runtime/adapters/types.d.ts +0 -95
  239. package/esm/runtime/adapters/types.d.ts.map +0 -1
  240. package/esm/runtime/csp.d.ts +0 -48
  241. package/esm/runtime/csp.d.ts.map +0 -1
  242. package/esm/runtime/index.d.ts +0 -17
  243. package/esm/runtime/index.d.ts.map +0 -1
  244. package/esm/runtime/mcp-bridge.d.ts +0 -101
  245. package/esm/runtime/mcp-bridge.d.ts.map +0 -1
  246. package/esm/runtime/renderer-runtime.d.ts +0 -133
  247. package/esm/runtime/renderer-runtime.d.ts.map +0 -1
  248. package/esm/runtime/sanitizer.d.ts +0 -172
  249. package/esm/runtime/sanitizer.d.ts.map +0 -1
  250. package/esm/runtime/types.d.ts +0 -415
  251. package/esm/runtime/types.d.ts.map +0 -1
  252. package/esm/runtime/wrapper.d.ts +0 -421
  253. package/esm/runtime/wrapper.d.ts.map +0 -1
  254. package/esm/styles/index.d.ts +0 -8
  255. package/esm/styles/index.d.ts.map +0 -1
  256. package/esm/styles/variants.d.ts +0 -51
  257. package/esm/styles/variants.d.ts.map +0 -1
  258. package/esm/theme/cdn.d.ts +0 -195
  259. package/esm/theme/cdn.d.ts.map +0 -1
  260. package/esm/theme/index.d.ts +0 -18
  261. package/esm/theme/index.d.ts.map +0 -1
  262. package/esm/theme/platforms.d.ts +0 -107
  263. package/esm/theme/platforms.d.ts.map +0 -1
  264. package/esm/theme/presets/github-openai.d.ts +0 -50
  265. package/esm/theme/presets/github-openai.d.ts.map +0 -1
  266. package/esm/theme/presets/index.d.ts +0 -11
  267. package/esm/theme/presets/index.d.ts.map +0 -1
  268. package/esm/theme/theme.d.ts +0 -396
  269. package/esm/theme/theme.d.ts.map +0 -1
  270. package/esm/tool-template/builder.d.ts +0 -213
  271. package/esm/tool-template/builder.d.ts.map +0 -1
  272. package/esm/tool-template/index.d.ts +0 -16
  273. package/esm/tool-template/index.d.ts.map +0 -1
  274. package/esm/types/index.d.ts +0 -14
  275. package/esm/types/index.d.ts.map +0 -1
  276. package/esm/types/ui-config.d.ts +0 -641
  277. package/esm/types/ui-config.d.ts.map +0 -1
  278. package/esm/types/ui-runtime.d.ts +0 -1008
  279. package/esm/types/ui-runtime.d.ts.map +0 -1
  280. package/esm/typings/cache/cache-adapter.d.ts +0 -125
  281. package/esm/typings/cache/cache-adapter.d.ts.map +0 -1
  282. package/esm/typings/cache/index.d.ts +0 -10
  283. package/esm/typings/cache/index.d.ts.map +0 -1
  284. package/esm/typings/cache/memory-cache.d.ts +0 -92
  285. package/esm/typings/cache/memory-cache.d.ts.map +0 -1
  286. package/esm/typings/dts-parser.d.ts +0 -90
  287. package/esm/typings/dts-parser.d.ts.map +0 -1
  288. package/esm/typings/index.d.ts +0 -48
  289. package/esm/typings/index.d.ts.map +0 -1
  290. package/esm/typings/schemas.d.ts +0 -232
  291. package/esm/typings/schemas.d.ts.map +0 -1
  292. package/esm/typings/type-fetcher.d.ts +0 -89
  293. package/esm/typings/type-fetcher.d.ts.map +0 -1
  294. package/esm/typings/types.d.ts +0 -320
  295. package/esm/typings/types.d.ts.map +0 -1
  296. package/esm/utils/escape-html.d.ts +0 -58
  297. package/esm/utils/escape-html.d.ts.map +0 -1
  298. package/esm/utils/index.d.ts +0 -10
  299. package/esm/utils/index.d.ts.map +0 -1
  300. package/esm/utils/safe-stringify.d.ts +0 -30
  301. package/esm/utils/safe-stringify.d.ts.map +0 -1
  302. package/esm/validation/error-box.d.ts +0 -56
  303. package/esm/validation/error-box.d.ts.map +0 -1
  304. package/esm/validation/index.d.ts +0 -13
  305. package/esm/validation/index.d.ts.map +0 -1
  306. package/esm/validation/schema-paths.d.ts +0 -118
  307. package/esm/validation/schema-paths.d.ts.map +0 -1
  308. package/esm/validation/template-validator.d.ts +0 -143
  309. package/esm/validation/template-validator.d.ts.map +0 -1
  310. package/esm/validation/wrapper.d.ts +0 -97
  311. package/esm/validation/wrapper.d.ts.map +0 -1
  312. package/renderers/mdx.renderer.d.ts +0 -120
  313. package/renderers/mdx.renderer.d.ts.map +0 -1
  314. /package/esm/bridge-runtime/{index.js → index.mjs} +0 -0
  315. /package/esm/types/{index.js → index.mjs} +0 -0
@@ -0,0 +1,341 @@
1
+ /**
2
+ * Builder Types
3
+ *
4
+ * Type definitions for the Static, Hybrid, and Inline builders.
5
+ * These builders create universal HTML documents for MCP clients.
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ import type { UITemplateConfig } from '../../types';
10
+ import type { ThemeConfig, DeepPartial } from '../../theme';
11
+ /**
12
+ * Build mode for widget generation.
13
+ *
14
+ * - `'static'`: Full HTML with placeholders. Data injected at preview time.
15
+ * Best for production - widget is cached, only data changes per request.
16
+ *
17
+ * - `'hybrid'`: Vendor shell (cached) + component chunks (per-tool).
18
+ * Shell delivered via resource URI, component via tool response.
19
+ * Optimal for OpenAI where shell is fetched once and cached.
20
+ *
21
+ * - `'inline'`: Minimal loader at discovery, full HTML per request.
22
+ * Best for development/review. Each request gets complete widget.
23
+ */
24
+ export type BuildMode = 'static' | 'hybrid' | 'inline';
25
+ /**
26
+ * CDN loading mode for dependencies.
27
+ *
28
+ * - `'cdn'`: Load React/deps from CDN (smaller HTML, requires network)
29
+ * - `'inline'`: Bundle all deps inline (larger HTML, works offline)
30
+ */
31
+ export type CdnMode = 'cdn' | 'inline';
32
+ /**
33
+ * Common options for all builders.
34
+ */
35
+ export interface BuilderOptions {
36
+ /**
37
+ * CDN loading mode for dependencies.
38
+ * @default 'cdn'
39
+ */
40
+ cdnMode?: CdnMode;
41
+ /**
42
+ * Whether to minify the output HTML.
43
+ * @default false
44
+ */
45
+ minify?: boolean;
46
+ /**
47
+ * Theme configuration override.
48
+ */
49
+ theme?: DeepPartial<ThemeConfig>;
50
+ /**
51
+ * Whether to include source maps.
52
+ * @default false
53
+ */
54
+ sourceMaps?: boolean;
55
+ }
56
+ /**
57
+ * Options for building a specific tool's UI.
58
+ */
59
+ export interface BuildToolOptions<In = unknown, Out = unknown> {
60
+ /**
61
+ * UI template configuration.
62
+ */
63
+ template: UITemplateConfig<In, Out>;
64
+ /**
65
+ * Name of the tool this UI is for.
66
+ */
67
+ toolName: string;
68
+ /**
69
+ * Optional title for the HTML document.
70
+ */
71
+ title?: string;
72
+ /**
73
+ * Sample input for preview/development.
74
+ */
75
+ sampleInput?: In;
76
+ /**
77
+ * Sample output for preview/development.
78
+ */
79
+ sampleOutput?: Out;
80
+ }
81
+ /**
82
+ * Result from a static build.
83
+ *
84
+ * Static builds produce a complete HTML document with placeholders
85
+ * that are replaced with actual data at preview time.
86
+ */
87
+ export interface StaticBuildResult {
88
+ /**
89
+ * Build mode identifier.
90
+ */
91
+ mode: 'static';
92
+ /**
93
+ * Complete HTML document with placeholders.
94
+ */
95
+ html: string;
96
+ /**
97
+ * Content hash for caching.
98
+ */
99
+ hash: string;
100
+ /**
101
+ * Size in bytes.
102
+ */
103
+ size: number;
104
+ /**
105
+ * Estimated gzipped size in bytes.
106
+ */
107
+ gzipSize: number;
108
+ /**
109
+ * Placeholders present in the HTML.
110
+ */
111
+ placeholders: {
112
+ hasOutput: boolean;
113
+ hasInput: boolean;
114
+ };
115
+ /**
116
+ * Renderer type used (html, react, mdx).
117
+ */
118
+ rendererType: string;
119
+ /**
120
+ * Build timestamp (ISO 8601).
121
+ */
122
+ buildTime: string;
123
+ }
124
+ /**
125
+ * Result from a hybrid build.
126
+ *
127
+ * Hybrid builds produce a vendor shell (cached, shared across tools)
128
+ * and component chunks (per-tool, externalized dependencies).
129
+ */
130
+ export interface HybridBuildResult {
131
+ /**
132
+ * Build mode identifier.
133
+ */
134
+ mode: 'hybrid';
135
+ /**
136
+ * Vendor shell HTML (shared across all tools).
137
+ * Contains React, Bridge, UI components from CDN.
138
+ */
139
+ vendorShell: string;
140
+ /**
141
+ * Transpiled component code (externalized).
142
+ * Imports React/deps from shell's globals.
143
+ */
144
+ componentChunk: string;
145
+ /**
146
+ * Resource URI for the vendor shell.
147
+ * Used in _meta['openai/outputTemplate'].
148
+ */
149
+ shellResourceUri: string;
150
+ /**
151
+ * Content hash for caching.
152
+ */
153
+ hash: string;
154
+ /**
155
+ * Size of vendor shell in bytes.
156
+ */
157
+ shellSize: number;
158
+ /**
159
+ * Size of component chunk in bytes.
160
+ */
161
+ componentSize: number;
162
+ /**
163
+ * Renderer type used (html, react, mdx).
164
+ */
165
+ rendererType: string;
166
+ /**
167
+ * Build timestamp (ISO 8601).
168
+ */
169
+ buildTime: string;
170
+ }
171
+ /**
172
+ * Result from an inline build.
173
+ *
174
+ * Inline builds produce a minimal loader shell (for discovery)
175
+ * and full widget HTML (for each tool execution).
176
+ */
177
+ export interface InlineBuildResult {
178
+ /**
179
+ * Build mode identifier.
180
+ */
181
+ mode: 'inline';
182
+ /**
183
+ * Minimal loader HTML (returned at tools/list).
184
+ * Contains bridge + loading indicator + injector script.
185
+ */
186
+ loaderShell: string;
187
+ /**
188
+ * Full widget HTML generator.
189
+ * Called with input/output to produce complete HTML.
190
+ */
191
+ buildFullWidget: (input: unknown, output: unknown) => Promise<string>;
192
+ /**
193
+ * Content hash for the loader.
194
+ */
195
+ hash: string;
196
+ /**
197
+ * Size of loader in bytes.
198
+ */
199
+ loaderSize: number;
200
+ /**
201
+ * Renderer type used (html, react, mdx).
202
+ */
203
+ rendererType: string;
204
+ /**
205
+ * Build timestamp (ISO 8601).
206
+ */
207
+ buildTime: string;
208
+ }
209
+ /**
210
+ * Union type for all build results.
211
+ * Named BuilderResult to avoid conflict with the existing BuildResult type in build/index.ts.
212
+ */
213
+ export type BuilderResult = StaticBuildResult | HybridBuildResult | InlineBuildResult;
214
+ /**
215
+ * Interface for all builders.
216
+ */
217
+ export interface Builder<TResult extends BuilderResult> {
218
+ /**
219
+ * Build mode this builder produces.
220
+ */
221
+ readonly mode: BuildMode;
222
+ /**
223
+ * Build a tool UI.
224
+ */
225
+ build<In = unknown, Out = unknown>(options: BuildToolOptions<In, Out>): Promise<TResult>;
226
+ }
227
+ /**
228
+ * Interface for the static builder.
229
+ */
230
+ export interface IStaticBuilder extends Builder<StaticBuildResult> {
231
+ readonly mode: 'static';
232
+ /**
233
+ * Inject data into a pre-built shell.
234
+ */
235
+ injectData(shell: string, input: unknown, output: unknown): string;
236
+ }
237
+ /**
238
+ * Interface for the hybrid builder.
239
+ */
240
+ export interface IHybridBuilder extends Builder<HybridBuildResult> {
241
+ readonly mode: 'hybrid';
242
+ /**
243
+ * Build just the vendor shell (cached, shared).
244
+ */
245
+ buildVendorShell(): Promise<string>;
246
+ /**
247
+ * Build a component chunk for a specific template.
248
+ */
249
+ buildComponentChunk<In = unknown, Out = unknown>(template: UITemplateConfig<In, Out>['template']): Promise<string>;
250
+ /**
251
+ * Combine shell and component for Claude/inline delivery.
252
+ */
253
+ combineForInline(shell: string, component: string, input: unknown, output: unknown): string;
254
+ }
255
+ /**
256
+ * Interface for the inline builder.
257
+ */
258
+ export interface IInlineBuilder extends Builder<InlineBuildResult> {
259
+ readonly mode: 'inline';
260
+ /**
261
+ * Build the minimal loader shell.
262
+ */
263
+ buildLoader(toolName: string): string;
264
+ /**
265
+ * Build full widget HTML with embedded data.
266
+ */
267
+ buildFullWidget<In = unknown, Out = unknown>(template: UITemplateConfig<In, Out>['template'], input: In, output: Out): Promise<string>;
268
+ }
269
+ /**
270
+ * Detected template type.
271
+ */
272
+ export type TemplateType = 'html-string' | 'html-function' | 'react-component' | 'react-element' | 'mdx';
273
+ /**
274
+ * Template detection result.
275
+ */
276
+ export interface TemplateDetection {
277
+ /**
278
+ * Detected template type.
279
+ */
280
+ type: TemplateType;
281
+ /**
282
+ * Renderer to use for this template.
283
+ */
284
+ renderer: 'html' | 'react' | 'mdx';
285
+ /**
286
+ * Whether the template needs transpilation.
287
+ */
288
+ needsTranspilation: boolean;
289
+ }
290
+ /**
291
+ * Options for transpiling component code.
292
+ */
293
+ export interface TranspileOptions {
294
+ /**
295
+ * External dependencies to exclude from bundle.
296
+ * These will be loaded from the shell's globals.
297
+ */
298
+ externals?: string[];
299
+ /**
300
+ * Output format.
301
+ * @default 'esm'
302
+ */
303
+ format?: 'esm' | 'iife';
304
+ /**
305
+ * Target ES version.
306
+ * @default 'es2020'
307
+ */
308
+ target?: string;
309
+ /**
310
+ * Whether to minify output.
311
+ * @default false
312
+ */
313
+ minify?: boolean;
314
+ /**
315
+ * JSX import source.
316
+ * @default 'react'
317
+ */
318
+ jsxImportSource?: string;
319
+ }
320
+ /**
321
+ * Result of transpilation.
322
+ */
323
+ export interface TranspileResult {
324
+ /**
325
+ * Transpiled JavaScript code.
326
+ */
327
+ code: string;
328
+ /**
329
+ * Source map (if requested).
330
+ */
331
+ map?: string;
332
+ /**
333
+ * Size in bytes.
334
+ */
335
+ size: number;
336
+ /**
337
+ * Detected imports that were externalized.
338
+ */
339
+ externalizedImports: string[];
340
+ }
341
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/build/builders/types.ts"],"names":[],"mappings":"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"}
@@ -62,8 +62,9 @@ export declare const CLOUDFLARE_CDN: {
62
62
  * Use this instead of TAILWIND_CDN for Claude Artifacts.
63
63
  */
64
64
  readonly tailwindCss: {
65
- readonly url: "https://cdnjs.cloudflare.com/ajax/libs/tailwindcss/2.2.19/tailwind.min.css";
66
- readonly type: "stylesheet";
65
+ readonly url: "https://cdnjs.cloudflare.com/ajax/libs/tailwindcss-browser/4.1.13/index.global.min.js";
66
+ readonly integrity: "sha512-TscjjxDy2iXx5s55Ar78c01JDHUug0K5aw4YKId9Yuocjx3ueX/X9PFyH5XNRVWqagx3TtcQWQVBaHAIPFjiFA==";
67
+ readonly crossorigin: "anonymous";
67
68
  };
68
69
  /**
69
70
  * HTMX for dynamic interactions.
@@ -1 +1 @@
1
- {"version":3,"file":"cdn-resources.d.ts","sourceRoot":"","sources":["../../src/build/cdn-resources.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAMlF;;;;;GAKG;AACH,eAAO,MAAM,SAAS,EAAE,WAGvB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,WAG3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,WAGxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,WAG5B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,WAG7B,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,EAAE,WAG1B,CAAC;AAMF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE1D;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc;IACzB;;;OAGG;;;;;IAMH;;OAEG;;;;;;IAOH;;OAEG;;;;;;;IAQH;;OAEG;;;;;;IAOH;;OAEG;;;;;;CAMK,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,CAQpE;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GAAG,MAAM,CAgBT;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,YAAoB,GACzB,cAAc,CAiDhB;AAMD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,WAAW,EACrB,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GACA,MAAM,CAwBR;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,YAAoB,GACzB,MAAM,EAAE,CAkCV;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAW9D;AAMD;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAG1C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAW1D;AAMD;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAyC7D"}
1
+ {"version":3,"file":"cdn-resources.d.ts","sourceRoot":"","sources":["../../src/build/cdn-resources.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAMlF;;;;;GAKG;AACH,eAAO,MAAM,SAAS,EAAE,WAGvB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,WAG3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,WAGxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,WAG5B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,WAG7B,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,EAAE,WAG1B,CAAC;AAMF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE1D;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc;IACzB;;;OAGG;;;;;;IAOH;;OAEG;;;;;;IAOH;;OAEG;;;;;;;IAQH;;OAEG;;;;;;IAOH;;OAEG;;;;;;CAMK,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,CAQpE;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GAAG,MAAM,CAgBT;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,YAAoB,GACzB,cAAc,CAiDhB;AAMD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,WAAW,EACrB,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GACA,MAAM,CAwBR;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,YAAoB,GACzB,MAAM,EAAE,CAkCV;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAW9D;AAMD;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAG1C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAW1D;AAMD;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAyC7D"}
@@ -0,0 +1,127 @@
1
+ /**
2
+ * Hybrid Mode Data Injection Utilities
3
+ *
4
+ * Provides utilities for injecting data into pre-built HTML shells
5
+ * without requiring re-transpilation of the component code.
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ /**
10
+ * Placeholder marker for hybrid mode.
11
+ * Used as a string that callers can replace with actual JSON data.
12
+ */
13
+ export declare const HYBRID_DATA_PLACEHOLDER = "__FRONTMCP_OUTPUT_PLACEHOLDER__";
14
+ /**
15
+ * Placeholder for tool input injection.
16
+ */
17
+ export declare const HYBRID_INPUT_PLACEHOLDER = "__FRONTMCP_INPUT_PLACEHOLDER__";
18
+ /**
19
+ * Inject data into a hybrid mode HTML shell.
20
+ * Replaces the placeholder with actual JSON data.
21
+ *
22
+ * This function is designed for high performance - it only does a string
23
+ * replacement, avoiding any re-transpilation of component code.
24
+ *
25
+ * @param shell - HTML shell from bundleToStaticHTML with buildMode='hybrid'
26
+ * @param data - Data to inject (will be JSON.stringify'd)
27
+ * @param placeholder - Placeholder to replace (default: HYBRID_DATA_PLACEHOLDER)
28
+ * @returns HTML with data injected
29
+ *
30
+ * @example
31
+ * ```typescript
32
+ * import { injectHybridData } from '@frontmcp/uipack/build';
33
+ *
34
+ * // Build shell once (cached)
35
+ * const result = await bundler.bundleToStaticHTML({
36
+ * source: myComponent,
37
+ * toolName: 'my_tool',
38
+ * buildMode: 'hybrid',
39
+ * });
40
+ *
41
+ * // Store the shell for reuse
42
+ * const cachedShell = result.html;
43
+ *
44
+ * // On each tool call, just inject data (no re-transpiling!)
45
+ * const html1 = injectHybridData(cachedShell, { temperature: 72 });
46
+ * const html2 = injectHybridData(cachedShell, { temperature: 85 });
47
+ * ```
48
+ */
49
+ export declare function injectHybridData(shell: string, data: unknown, placeholder?: string): string;
50
+ /**
51
+ * Inject both input and output data into a hybrid mode HTML shell.
52
+ * Replaces both input and output placeholders.
53
+ *
54
+ * @param shell - HTML shell with both placeholders
55
+ * @param input - Input data to inject
56
+ * @param output - Output data to inject
57
+ * @returns HTML with both input and output injected
58
+ *
59
+ * @example
60
+ * ```typescript
61
+ * const html = injectHybridDataFull(cachedShell, { query: 'NYC' }, { temperature: 72 });
62
+ * ```
63
+ */
64
+ export declare function injectHybridDataFull(shell: string, input: unknown, output: unknown): string;
65
+ /**
66
+ * Check if an HTML string is a hybrid mode shell (contains output placeholder).
67
+ *
68
+ * @param html - HTML string to check
69
+ * @param placeholder - Placeholder to look for (default: HYBRID_DATA_PLACEHOLDER)
70
+ * @returns true if the HTML contains the placeholder
71
+ *
72
+ * @example
73
+ * ```typescript
74
+ * import { isHybridShell } from '@frontmcp/uipack/build';
75
+ *
76
+ * if (isHybridShell(cachedHtml)) {
77
+ * // Need to inject data before serving
78
+ * const html = injectHybridData(cachedHtml, toolOutput);
79
+ * }
80
+ * ```
81
+ */
82
+ export declare function isHybridShell(html: string, placeholder?: string): boolean;
83
+ /**
84
+ * Check if an HTML string needs input injection.
85
+ *
86
+ * @param html - HTML string to check
87
+ * @returns true if the HTML contains the input placeholder
88
+ */
89
+ export declare function needsInputInjection(html: string): boolean;
90
+ /**
91
+ * Get placeholders present in an HTML shell.
92
+ *
93
+ * @param html - HTML string to check
94
+ * @returns Object indicating which placeholders are present
95
+ */
96
+ export declare function getHybridPlaceholders(html: string): {
97
+ hasOutput: boolean;
98
+ hasInput: boolean;
99
+ };
100
+ /**
101
+ * Inject data into a dynamic/OpenAI shell with a trigger script for preview mode.
102
+ *
103
+ * This function:
104
+ * 1. Replaces data placeholders (like injectHybridDataFull)
105
+ * 2. Injects a script that calls window.__frontmcp.updateOutput(data) to trigger React re-renders
106
+ *
107
+ * Use this for preview mode when there's no actual OpenAI Canvas environment.
108
+ * In production OpenAI environments, use injectHybridDataFull instead and let
109
+ * the OpenAI Canvas trigger onToolResult.
110
+ *
111
+ * @param shell - HTML shell from bundleToStaticHTML with buildMode='dynamic'
112
+ * @param input - Input data to inject
113
+ * @param output - Output data to inject
114
+ * @returns HTML with data injected and trigger script added
115
+ *
116
+ * @example
117
+ * ```typescript
118
+ * import { injectHybridDataWithTrigger } from '@frontmcp/uipack/build';
119
+ *
120
+ * // For preview mode with dynamic/OpenAI shells
121
+ * const html = injectHybridDataWithTrigger(shell.html, inputData, outputData);
122
+ * // The trigger script will call window.__frontmcp.updateOutput(outputData)
123
+ * // which updates the store and triggers React re-renders
124
+ * ```
125
+ */
126
+ export declare function injectHybridDataWithTrigger(shell: string, input: unknown, output: unknown): string;
127
+ //# sourceMappingURL=hybrid-data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hybrid-data.d.ts","sourceRoot":"","sources":["../../src/build/hybrid-data.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH;;;GAGG;AACH,eAAO,MAAM,uBAAuB,oCAAoC,CAAC;AAEzE;;GAEG;AACH,eAAO,MAAM,wBAAwB,mCAAmC,CAAC;AAMzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,OAAO,EACb,WAAW,GAAE,MAAgC,GAC5C,MAAM,CAaR;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,OAAO,GACd,MAAM,CAKR;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,WAAW,GAAE,MAAgC,GAC5C,OAAO,CAET;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG;IACnD,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAKA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,OAAO,GACd,MAAM,CAwCR"}
package/build/index.d.ts CHANGED
@@ -292,4 +292,8 @@ export { DEFAULT_CSP_BY_TYPE, DEFAULT_RENDERER_ASSETS, isUIType, isBundlingMode,
292
292
  export type { ResourceMode, CDNResource } from '../types/ui-runtime';
293
293
  export { REACT_CDN, REACT_DOM_CDN, MARKED_CDN, HANDLEBARS_CDN, MDX_RUNTIME_CDN, TAILWIND_CDN, CLOUDFLARE_CDN, getDefaultAssets, buildCDNScriptTag, buildScriptsForUIType, buildTailwindScriptTag, hasInlineScripts, getURLsToPreFetch, getTailwindForPlatform, buildCloudflareStylesheetTag, buildCloudflareScriptTag, buildCDNInfoForUIType, } from './cdn-resources';
294
294
  export type { CDNInfo, CDNPlatform } from './cdn-resources';
295
+ export { HYBRID_DATA_PLACEHOLDER, HYBRID_INPUT_PLACEHOLDER, injectHybridData, injectHybridDataFull, injectHybridDataWithTrigger, isHybridShell, needsInputInjection, getHybridPlaceholders, } from './hybrid-data';
296
+ export { buildUIComponentsRuntime, buildStyleConstants, buildCardComponent, buildButtonComponent, buildBadgeComponent, buildAlertComponent, buildNamespaceExport, } from './ui-components-browser';
297
+ export type { BrowserUIComponentsOptions } from './ui-components-browser';
298
+ export { type BuildMode, type CdnMode, type BuilderOptions, type BuildToolOptions, type StaticBuildResult, type HybridBuildResult, type InlineBuildResult, type BuilderResult, type Builder, type IStaticBuilder, type IHybridBuilder, type IInlineBuilder, type TemplateType, type TemplateDetection, type TranspileOptions, type TranspileResult, BaseBuilder, StaticBuilder, HybridBuilder, InlineBuilder, DEFAULT_EXTERNALS, EXTERNAL_GLOBALS, CDN_URLS, CLOUDFLARE_CDN_URLS, createTransformConfig, createExternalizedConfig, createInlineConfig, createExternalsBanner, generateCdnScriptTags, generateGlobalsSetupScript, } from './builders';
295
299
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/build/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAmB,MAAM,UAAU,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAUzD;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;AAE7C;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEvD;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB;;;OAGG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IAEzB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,YAAY,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,OAAO;IACvD;;OAEG;IACH,QAAQ,EAAE,gBAAgB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAEpC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,KAAK,CAAC,EAAE,EAAE,CAAC;IAEX;;OAEG;IACH,MAAM,CAAC,EAAE,GAAG,CAAC;IAEb;;OAEG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IAEjC;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,sCAAsC;IACtC,WAAW,CAAC,EAAE,EAAE,CAAC;IACjB,uCAAuC;IACvC,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,qDAAqD;IACrD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,kCAAkC;IAClC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,mDAAmD;IACnD,GAAG,EAAE,eAAe,CAAC;IACrB,8BAA8B;IAC9B,IAAI,EAAE,WAAW,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,SAAS,EAAE,SAAS,CAAC;IAErB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;CAC/B;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,wBAAsB,WAAW,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,OAAO,EAC3D,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE,GAAG,CAAC,GAC7B,OAAO,CAAC,WAAW,CAAC,CAyEtB;AA0HD;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,OAAO;IAC9D;;OAEG;IACH,QAAQ,EAAE,gBAAgB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAEpC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IAEjC;;OAEG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,iBAAiB,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,OAAO,EACjE,OAAO,EAAE,mBAAmB,CAAC,EAAE,EAAE,GAAG,CAAC,GACpC,OAAO,CAAC,WAAW,CAAC,CAatB;AAMD;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,WAAW,CAAC;AAElF;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,OAAO,CAC5D,SAAQ,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,UAAU,CAAC;IAC/C,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,OAAO,EAChE,OAAO,EAAE,iBAAiB,CAAC,EAAE,EAAE,GAAG,CAAC,GAClC,OAAO,CAAC,gBAAgB,CAAC,CAoB3B;AAMD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EACV,gBAAgB,EAChB,UAAU,EACV,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,UAAU,CAAC;AAClB,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAM3E,OAAO,EAEL,uBAAuB,EACvB,iBAAiB,EAEjB,YAAY,EACZ,kBAAkB,EAElB,eAAe,EACf,mBAAmB,EAEnB,iBAAiB,EAEjB,qBAAqB,EACrB,sBAAsB,EAEtB,kBAAkB,EAClB,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAEhB,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EACV,MAAM,EACN,YAAY,EACZ,WAAW,EACX,UAAU,EACV,aAAa,EACb,cAAc,EACd,cAAc,EACd,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EAEpB,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAEhB,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,QAAQ,EACR,cAAc,EACd,aAAa,EACb,cAAc,EACd,YAAY,GACb,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAMrE,OAAO,EAEL,SAAS,EACT,aAAa,EACb,UAAU,EACV,cAAc,EACd,eAAe,EACf,YAAY,EAEZ,cAAc,EAEd,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EAEjB,sBAAsB,EACtB,4BAA4B,EAC5B,wBAAwB,EAExB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/build/index.ts"],"names":[],"mappings":"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"}