@frontmcp/ui 0.5.1 → 0.6.1

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 (805) hide show
  1. package/README.md +140 -362
  2. package/bridge/adapters/base-adapter.d.ts +104 -0
  3. package/bridge/adapters/base-adapter.d.ts.map +1 -0
  4. package/bridge/adapters/claude.adapter.d.ts +67 -0
  5. package/bridge/adapters/claude.adapter.d.ts.map +1 -0
  6. package/bridge/adapters/ext-apps.adapter.d.ts +143 -0
  7. package/bridge/adapters/ext-apps.adapter.d.ts.map +1 -0
  8. package/bridge/adapters/gemini.adapter.d.ts +64 -0
  9. package/bridge/adapters/gemini.adapter.d.ts.map +1 -0
  10. package/bridge/adapters/generic.adapter.d.ts +56 -0
  11. package/bridge/adapters/generic.adapter.d.ts.map +1 -0
  12. package/bridge/adapters/index.d.ts +26 -0
  13. package/bridge/adapters/index.d.ts.map +1 -0
  14. package/bridge/adapters/openai.adapter.d.ts +65 -0
  15. package/bridge/adapters/openai.adapter.d.ts.map +1 -0
  16. package/bridge/core/adapter-registry.d.ts +122 -0
  17. package/bridge/core/adapter-registry.d.ts.map +1 -0
  18. package/bridge/core/bridge-factory.d.ts +199 -0
  19. package/bridge/core/bridge-factory.d.ts.map +1 -0
  20. package/bridge/core/index.d.ts +10 -0
  21. package/bridge/core/index.d.ts.map +1 -0
  22. package/bridge/index.d.ts +62 -0
  23. package/bridge/index.d.ts.map +1 -0
  24. package/bridge/index.js +2540 -0
  25. package/bridge/runtime/iife-generator.d.ts +62 -0
  26. package/bridge/runtime/iife-generator.d.ts.map +1 -0
  27. package/bridge/runtime/index.d.ts +10 -0
  28. package/bridge/runtime/index.d.ts.map +1 -0
  29. package/bridge/types.d.ts +386 -0
  30. package/bridge/types.d.ts.map +1 -0
  31. package/bundler/bundler.d.ts +208 -0
  32. package/bundler/bundler.d.ts.map +1 -0
  33. package/bundler/cache.d.ts +173 -0
  34. package/bundler/cache.d.ts.map +1 -0
  35. package/bundler/file-cache/component-builder.d.ts +167 -0
  36. package/bundler/file-cache/component-builder.d.ts.map +1 -0
  37. package/bundler/file-cache/hash-calculator.d.ts +155 -0
  38. package/bundler/file-cache/hash-calculator.d.ts.map +1 -0
  39. package/bundler/file-cache/index.d.ts +12 -0
  40. package/bundler/file-cache/index.d.ts.map +1 -0
  41. package/bundler/file-cache/storage/filesystem.d.ts +149 -0
  42. package/bundler/file-cache/storage/filesystem.d.ts.map +1 -0
  43. package/bundler/file-cache/storage/index.d.ts +11 -0
  44. package/bundler/file-cache/storage/index.d.ts.map +1 -0
  45. package/bundler/file-cache/storage/interface.d.ts +152 -0
  46. package/bundler/file-cache/storage/interface.d.ts.map +1 -0
  47. package/bundler/file-cache/storage/redis.d.ts +139 -0
  48. package/bundler/file-cache/storage/redis.d.ts.map +1 -0
  49. package/bundler/index.d.ts +43 -0
  50. package/bundler/index.d.ts.map +1 -0
  51. package/bundler/index.js +3707 -0
  52. package/bundler/sandbox/enclave-adapter.d.ts +121 -0
  53. package/bundler/sandbox/enclave-adapter.d.ts.map +1 -0
  54. package/bundler/sandbox/executor.d.ts +14 -0
  55. package/bundler/sandbox/executor.d.ts.map +1 -0
  56. package/bundler/sandbox/policy.d.ts +62 -0
  57. package/bundler/sandbox/policy.d.ts.map +1 -0
  58. package/bundler/types.d.ts +702 -0
  59. package/bundler/types.d.ts.map +1 -0
  60. package/components/alert.d.ts +66 -0
  61. package/components/alert.d.ts.map +1 -0
  62. package/components/alert.schema.d.ts +98 -0
  63. package/components/alert.schema.d.ts.map +1 -0
  64. package/components/avatar.d.ts +77 -0
  65. package/components/avatar.d.ts.map +1 -0
  66. package/components/avatar.schema.d.ts +170 -0
  67. package/components/avatar.schema.d.ts.map +1 -0
  68. package/components/badge.d.ts +64 -0
  69. package/components/badge.d.ts.map +1 -0
  70. package/components/badge.schema.d.ts +91 -0
  71. package/components/badge.schema.d.ts.map +1 -0
  72. package/components/button.d.ts +100 -0
  73. package/components/button.d.ts.map +1 -0
  74. package/components/button.schema.d.ts +120 -0
  75. package/components/button.schema.d.ts.map +1 -0
  76. package/components/card.d.ts +53 -0
  77. package/components/card.d.ts.map +1 -0
  78. package/components/card.schema.d.ts +93 -0
  79. package/components/card.schema.d.ts.map +1 -0
  80. package/components/form.d.ts +212 -0
  81. package/components/form.d.ts.map +1 -0
  82. package/components/form.schema.d.ts +365 -0
  83. package/components/form.schema.d.ts.map +1 -0
  84. package/components/index.d.ts +29 -0
  85. package/components/index.d.ts.map +1 -0
  86. package/components/index.js +2525 -0
  87. package/components/list.d.ts +121 -0
  88. package/components/list.d.ts.map +1 -0
  89. package/components/list.schema.d.ts +129 -0
  90. package/components/list.schema.d.ts.map +1 -0
  91. package/components/modal.d.ts +100 -0
  92. package/components/modal.d.ts.map +1 -0
  93. package/components/modal.schema.d.ts +151 -0
  94. package/components/modal.schema.d.ts.map +1 -0
  95. package/components/table.d.ts +91 -0
  96. package/components/table.d.ts.map +1 -0
  97. package/components/table.schema.d.ts +123 -0
  98. package/components/table.schema.d.ts.map +1 -0
  99. package/esm/bridge/adapters/base-adapter.d.ts +104 -0
  100. package/esm/bridge/adapters/base-adapter.d.ts.map +1 -0
  101. package/esm/bridge/adapters/claude.adapter.d.ts +67 -0
  102. package/esm/bridge/adapters/claude.adapter.d.ts.map +1 -0
  103. package/esm/bridge/adapters/ext-apps.adapter.d.ts +143 -0
  104. package/esm/bridge/adapters/ext-apps.adapter.d.ts.map +1 -0
  105. package/esm/bridge/adapters/gemini.adapter.d.ts +64 -0
  106. package/esm/bridge/adapters/gemini.adapter.d.ts.map +1 -0
  107. package/esm/bridge/adapters/generic.adapter.d.ts +56 -0
  108. package/esm/bridge/adapters/generic.adapter.d.ts.map +1 -0
  109. package/esm/bridge/adapters/index.d.ts +26 -0
  110. package/esm/bridge/adapters/index.d.ts.map +1 -0
  111. package/esm/bridge/adapters/openai.adapter.d.ts +65 -0
  112. package/esm/bridge/adapters/openai.adapter.d.ts.map +1 -0
  113. package/esm/bridge/core/adapter-registry.d.ts +122 -0
  114. package/esm/bridge/core/adapter-registry.d.ts.map +1 -0
  115. package/esm/bridge/core/bridge-factory.d.ts +199 -0
  116. package/esm/bridge/core/bridge-factory.d.ts.map +1 -0
  117. package/esm/bridge/core/index.d.ts +10 -0
  118. package/esm/bridge/core/index.d.ts.map +1 -0
  119. package/esm/bridge/index.d.ts +62 -0
  120. package/esm/bridge/index.d.ts.map +1 -0
  121. package/esm/bridge/index.js +2487 -0
  122. package/esm/bridge/runtime/iife-generator.d.ts +62 -0
  123. package/esm/bridge/runtime/iife-generator.d.ts.map +1 -0
  124. package/esm/bridge/runtime/index.d.ts +10 -0
  125. package/esm/bridge/runtime/index.d.ts.map +1 -0
  126. package/esm/bridge/types.d.ts +386 -0
  127. package/esm/bridge/types.d.ts.map +1 -0
  128. package/esm/bundler/bundler.d.ts +208 -0
  129. package/esm/bundler/bundler.d.ts.map +1 -0
  130. package/esm/bundler/cache.d.ts +173 -0
  131. package/esm/bundler/cache.d.ts.map +1 -0
  132. package/esm/bundler/file-cache/component-builder.d.ts +167 -0
  133. package/esm/bundler/file-cache/component-builder.d.ts.map +1 -0
  134. package/esm/bundler/file-cache/hash-calculator.d.ts +155 -0
  135. package/esm/bundler/file-cache/hash-calculator.d.ts.map +1 -0
  136. package/esm/bundler/file-cache/index.d.ts +12 -0
  137. package/esm/bundler/file-cache/index.d.ts.map +1 -0
  138. package/esm/bundler/file-cache/storage/filesystem.d.ts +149 -0
  139. package/esm/bundler/file-cache/storage/filesystem.d.ts.map +1 -0
  140. package/esm/bundler/file-cache/storage/index.d.ts +11 -0
  141. package/esm/bundler/file-cache/storage/index.d.ts.map +1 -0
  142. package/esm/bundler/file-cache/storage/interface.d.ts +152 -0
  143. package/esm/bundler/file-cache/storage/interface.d.ts.map +1 -0
  144. package/esm/bundler/file-cache/storage/redis.d.ts +139 -0
  145. package/esm/bundler/file-cache/storage/redis.d.ts.map +1 -0
  146. package/esm/bundler/index.d.ts +43 -0
  147. package/esm/bundler/index.d.ts.map +1 -0
  148. package/esm/bundler/index.js +3640 -0
  149. package/esm/bundler/sandbox/enclave-adapter.d.ts +121 -0
  150. package/esm/bundler/sandbox/enclave-adapter.d.ts.map +1 -0
  151. package/esm/bundler/sandbox/executor.d.ts +14 -0
  152. package/esm/bundler/sandbox/executor.d.ts.map +1 -0
  153. package/esm/bundler/sandbox/policy.d.ts +62 -0
  154. package/esm/bundler/sandbox/policy.d.ts.map +1 -0
  155. package/esm/bundler/types.d.ts +702 -0
  156. package/esm/bundler/types.d.ts.map +1 -0
  157. package/esm/components/alert.d.ts +66 -0
  158. package/esm/components/alert.d.ts.map +1 -0
  159. package/esm/components/alert.schema.d.ts +98 -0
  160. package/esm/components/alert.schema.d.ts.map +1 -0
  161. package/esm/components/avatar.d.ts +77 -0
  162. package/esm/components/avatar.d.ts.map +1 -0
  163. package/esm/components/avatar.schema.d.ts +170 -0
  164. package/esm/components/avatar.schema.d.ts.map +1 -0
  165. package/esm/components/badge.d.ts +64 -0
  166. package/esm/components/badge.d.ts.map +1 -0
  167. package/esm/components/badge.schema.d.ts +91 -0
  168. package/esm/components/badge.schema.d.ts.map +1 -0
  169. package/esm/components/button.d.ts +100 -0
  170. package/esm/components/button.d.ts.map +1 -0
  171. package/esm/components/button.schema.d.ts +120 -0
  172. package/esm/components/button.schema.d.ts.map +1 -0
  173. package/esm/components/card.d.ts +53 -0
  174. package/esm/components/card.d.ts.map +1 -0
  175. package/esm/components/card.schema.d.ts +93 -0
  176. package/esm/components/card.schema.d.ts.map +1 -0
  177. package/esm/components/form.d.ts +212 -0
  178. package/esm/components/form.d.ts.map +1 -0
  179. package/esm/components/form.schema.d.ts +365 -0
  180. package/esm/components/form.schema.d.ts.map +1 -0
  181. package/esm/components/index.d.ts +29 -0
  182. package/esm/components/index.d.ts.map +1 -0
  183. package/esm/components/index.js +2396 -0
  184. package/esm/components/list.d.ts +121 -0
  185. package/esm/components/list.d.ts.map +1 -0
  186. package/esm/components/list.schema.d.ts +129 -0
  187. package/esm/components/list.schema.d.ts.map +1 -0
  188. package/esm/components/modal.d.ts +100 -0
  189. package/esm/components/modal.d.ts.map +1 -0
  190. package/esm/components/modal.schema.d.ts +151 -0
  191. package/esm/components/modal.schema.d.ts.map +1 -0
  192. package/esm/components/table.d.ts +91 -0
  193. package/esm/components/table.d.ts.map +1 -0
  194. package/esm/components/table.schema.d.ts +123 -0
  195. package/esm/components/table.schema.d.ts.map +1 -0
  196. package/esm/index.d.ts +40 -0
  197. package/esm/index.d.ts.map +1 -0
  198. package/esm/index.js +8326 -0
  199. package/esm/layouts/base.d.ts +86 -0
  200. package/esm/layouts/base.d.ts.map +1 -0
  201. package/esm/layouts/index.d.ts +8 -0
  202. package/esm/layouts/index.d.ts.map +1 -0
  203. package/esm/layouts/index.js +409 -0
  204. package/esm/layouts/presets.d.ts +134 -0
  205. package/esm/layouts/presets.d.ts.map +1 -0
  206. package/esm/package.json +72 -0
  207. package/esm/pages/consent.d.ts +117 -0
  208. package/esm/pages/consent.d.ts.map +1 -0
  209. package/esm/pages/error.d.ts +101 -0
  210. package/esm/pages/error.d.ts.map +1 -0
  211. package/esm/pages/index.d.ts +9 -0
  212. package/esm/pages/index.d.ts.map +1 -0
  213. package/esm/pages/index.js +1036 -0
  214. package/esm/react/Alert.d.ts +101 -0
  215. package/esm/react/Alert.d.ts.map +1 -0
  216. package/esm/react/Badge.d.ts +100 -0
  217. package/esm/react/Badge.d.ts.map +1 -0
  218. package/esm/react/Button.d.ts +108 -0
  219. package/esm/react/Button.d.ts.map +1 -0
  220. package/esm/react/Card.d.ts +103 -0
  221. package/esm/react/Card.d.ts.map +1 -0
  222. package/esm/react/hooks/context.d.ts +179 -0
  223. package/esm/react/hooks/context.d.ts.map +1 -0
  224. package/esm/react/hooks/index.d.ts +42 -0
  225. package/esm/react/hooks/index.d.ts.map +1 -0
  226. package/esm/react/hooks/tools.d.ts +284 -0
  227. package/esm/react/hooks/tools.d.ts.map +1 -0
  228. package/esm/react/index.d.ts +80 -0
  229. package/esm/react/index.d.ts.map +1 -0
  230. package/esm/react/index.js +3124 -0
  231. package/esm/react/types.d.ts +105 -0
  232. package/esm/react/types.d.ts.map +1 -0
  233. package/esm/react/utils.d.ts +43 -0
  234. package/esm/react/utils.d.ts.map +1 -0
  235. package/esm/render/index.d.ts +8 -0
  236. package/esm/render/index.d.ts.map +1 -0
  237. package/esm/render/index.js +45 -0
  238. package/esm/render/prerender.d.ts +57 -0
  239. package/esm/render/prerender.d.ts.map +1 -0
  240. package/esm/renderers/index.d.ts +21 -0
  241. package/esm/renderers/index.d.ts.map +1 -0
  242. package/esm/renderers/index.js +381 -0
  243. package/esm/renderers/react.adapter.d.ts +70 -0
  244. package/esm/renderers/react.adapter.d.ts.map +1 -0
  245. package/esm/renderers/react.renderer.d.ts +96 -0
  246. package/esm/renderers/react.renderer.d.ts.map +1 -0
  247. package/esm/universal/UniversalApp.d.ts +108 -0
  248. package/esm/universal/UniversalApp.d.ts.map +1 -0
  249. package/esm/universal/cached-runtime.d.ts +115 -0
  250. package/esm/universal/cached-runtime.d.ts.map +1 -0
  251. package/esm/universal/context.d.ts +122 -0
  252. package/esm/universal/context.d.ts.map +1 -0
  253. package/esm/universal/index.d.ts +57 -0
  254. package/esm/universal/index.d.ts.map +1 -0
  255. package/esm/universal/index.js +1755 -0
  256. package/esm/universal/renderers/html.renderer.d.ts +37 -0
  257. package/esm/universal/renderers/html.renderer.d.ts.map +1 -0
  258. package/esm/universal/renderers/index.d.ts +112 -0
  259. package/esm/universal/renderers/index.d.ts.map +1 -0
  260. package/esm/universal/renderers/markdown.renderer.d.ts +33 -0
  261. package/esm/universal/renderers/markdown.renderer.d.ts.map +1 -0
  262. package/esm/universal/renderers/mdx.renderer.d.ts +38 -0
  263. package/esm/universal/renderers/mdx.renderer.d.ts.map +1 -0
  264. package/esm/universal/renderers/react.renderer.d.ts +46 -0
  265. package/esm/universal/renderers/react.renderer.d.ts.map +1 -0
  266. package/esm/universal/runtime-builder.d.ts +33 -0
  267. package/esm/universal/runtime-builder.d.ts.map +1 -0
  268. package/esm/universal/store.d.ts +135 -0
  269. package/esm/universal/store.d.ts.map +1 -0
  270. package/esm/universal/types.d.ts +199 -0
  271. package/esm/universal/types.d.ts.map +1 -0
  272. package/esm/web-components/core/attribute-parser.d.ts +82 -0
  273. package/esm/web-components/core/attribute-parser.d.ts.map +1 -0
  274. package/esm/web-components/core/base-element.d.ts +197 -0
  275. package/esm/web-components/core/base-element.d.ts.map +1 -0
  276. package/esm/web-components/core/index.d.ts +9 -0
  277. package/esm/web-components/core/index.d.ts.map +1 -0
  278. package/esm/web-components/elements/fmcp-alert.d.ts +46 -0
  279. package/esm/web-components/elements/fmcp-alert.d.ts.map +1 -0
  280. package/esm/web-components/elements/fmcp-badge.d.ts +47 -0
  281. package/esm/web-components/elements/fmcp-badge.d.ts.map +1 -0
  282. package/esm/web-components/elements/fmcp-button.d.ts +117 -0
  283. package/esm/web-components/elements/fmcp-button.d.ts.map +1 -0
  284. package/esm/web-components/elements/fmcp-card.d.ts +53 -0
  285. package/esm/web-components/elements/fmcp-card.d.ts.map +1 -0
  286. package/esm/web-components/elements/fmcp-input.d.ts +96 -0
  287. package/esm/web-components/elements/fmcp-input.d.ts.map +1 -0
  288. package/esm/web-components/elements/fmcp-select.d.ts +100 -0
  289. package/esm/web-components/elements/fmcp-select.d.ts.map +1 -0
  290. package/esm/web-components/elements/index.d.ts +13 -0
  291. package/esm/web-components/elements/index.d.ts.map +1 -0
  292. package/esm/web-components/index.d.ts +50 -0
  293. package/esm/web-components/index.d.ts.map +1 -0
  294. package/esm/web-components/index.js +1993 -0
  295. package/esm/web-components/register.d.ts +57 -0
  296. package/esm/web-components/register.d.ts.map +1 -0
  297. package/esm/web-components/types.d.ts +122 -0
  298. package/esm/web-components/types.d.ts.map +1 -0
  299. package/esm/widgets/index.d.ts +8 -0
  300. package/esm/widgets/index.d.ts.map +1 -0
  301. package/esm/widgets/index.js +883 -0
  302. package/esm/widgets/progress.d.ts +133 -0
  303. package/esm/widgets/progress.d.ts.map +1 -0
  304. package/esm/widgets/resource.d.ts +163 -0
  305. package/esm/widgets/resource.d.ts.map +1 -0
  306. package/index.d.ts +40 -0
  307. package/index.d.ts.map +1 -0
  308. package/index.js +8526 -0
  309. package/layouts/base.d.ts +86 -0
  310. package/layouts/base.d.ts.map +1 -0
  311. package/layouts/index.d.ts +8 -0
  312. package/layouts/index.d.ts.map +1 -0
  313. package/layouts/index.js +437 -0
  314. package/layouts/presets.d.ts +134 -0
  315. package/layouts/presets.d.ts.map +1 -0
  316. package/package.json +33 -110
  317. package/pages/consent.d.ts +117 -0
  318. package/pages/consent.d.ts.map +1 -0
  319. package/pages/error.d.ts +101 -0
  320. package/pages/error.d.ts.map +1 -0
  321. package/pages/index.d.ts +9 -0
  322. package/pages/index.d.ts.map +1 -0
  323. package/pages/index.js +1065 -0
  324. package/react/Alert.d.ts +101 -0
  325. package/react/Alert.d.ts.map +1 -0
  326. package/react/Badge.d.ts +100 -0
  327. package/react/Badge.d.ts.map +1 -0
  328. package/react/Button.d.ts +108 -0
  329. package/react/Button.d.ts.map +1 -0
  330. package/react/Card.d.ts +103 -0
  331. package/react/Card.d.ts.map +1 -0
  332. package/react/hooks/context.d.ts +179 -0
  333. package/react/hooks/context.d.ts.map +1 -0
  334. package/react/hooks/index.d.ts +42 -0
  335. package/react/hooks/index.d.ts.map +1 -0
  336. package/react/hooks/tools.d.ts +284 -0
  337. package/react/hooks/tools.d.ts.map +1 -0
  338. package/react/index.d.ts +80 -0
  339. package/react/index.d.ts.map +1 -0
  340. package/react/index.js +3160 -0
  341. package/react/types.d.ts +105 -0
  342. package/react/types.d.ts.map +1 -0
  343. package/react/utils.d.ts +43 -0
  344. package/react/utils.d.ts.map +1 -0
  345. package/render/index.d.ts +8 -0
  346. package/render/index.d.ts.map +1 -0
  347. package/render/index.js +77 -0
  348. package/render/prerender.d.ts +57 -0
  349. package/render/prerender.d.ts.map +1 -0
  350. package/renderers/index.d.ts +21 -0
  351. package/renderers/index.d.ts.map +1 -0
  352. package/renderers/index.js +416 -0
  353. package/renderers/react.adapter.d.ts +70 -0
  354. package/renderers/react.adapter.d.ts.map +1 -0
  355. package/renderers/react.renderer.d.ts +96 -0
  356. package/renderers/react.renderer.d.ts.map +1 -0
  357. package/universal/UniversalApp.d.ts +108 -0
  358. package/universal/UniversalApp.d.ts.map +1 -0
  359. package/universal/cached-runtime.d.ts +115 -0
  360. package/universal/cached-runtime.d.ts.map +1 -0
  361. package/universal/context.d.ts +122 -0
  362. package/universal/context.d.ts.map +1 -0
  363. package/universal/index.d.ts +57 -0
  364. package/universal/index.d.ts.map +1 -0
  365. package/universal/index.js +1841 -0
  366. package/universal/renderers/html.renderer.d.ts +37 -0
  367. package/universal/renderers/html.renderer.d.ts.map +1 -0
  368. package/universal/renderers/index.d.ts +112 -0
  369. package/universal/renderers/index.d.ts.map +1 -0
  370. package/universal/renderers/markdown.renderer.d.ts +33 -0
  371. package/universal/renderers/markdown.renderer.d.ts.map +1 -0
  372. package/universal/renderers/mdx.renderer.d.ts +38 -0
  373. package/universal/renderers/mdx.renderer.d.ts.map +1 -0
  374. package/universal/renderers/react.renderer.d.ts +46 -0
  375. package/universal/renderers/react.renderer.d.ts.map +1 -0
  376. package/universal/runtime-builder.d.ts +33 -0
  377. package/universal/runtime-builder.d.ts.map +1 -0
  378. package/universal/store.d.ts +135 -0
  379. package/universal/store.d.ts.map +1 -0
  380. package/universal/types.d.ts +199 -0
  381. package/universal/types.d.ts.map +1 -0
  382. package/web-components/core/attribute-parser.d.ts +82 -0
  383. package/web-components/core/attribute-parser.d.ts.map +1 -0
  384. package/web-components/core/base-element.d.ts +197 -0
  385. package/web-components/core/base-element.d.ts.map +1 -0
  386. package/web-components/core/index.d.ts +9 -0
  387. package/web-components/core/index.d.ts.map +1 -0
  388. package/web-components/elements/fmcp-alert.d.ts +46 -0
  389. package/web-components/elements/fmcp-alert.d.ts.map +1 -0
  390. package/web-components/elements/fmcp-badge.d.ts +47 -0
  391. package/web-components/elements/fmcp-badge.d.ts.map +1 -0
  392. package/web-components/elements/fmcp-button.d.ts +117 -0
  393. package/web-components/elements/fmcp-button.d.ts.map +1 -0
  394. package/web-components/elements/fmcp-card.d.ts +53 -0
  395. package/web-components/elements/fmcp-card.d.ts.map +1 -0
  396. package/web-components/elements/fmcp-input.d.ts +96 -0
  397. package/web-components/elements/fmcp-input.d.ts.map +1 -0
  398. package/web-components/elements/fmcp-select.d.ts +100 -0
  399. package/web-components/elements/fmcp-select.d.ts.map +1 -0
  400. package/web-components/elements/index.d.ts +13 -0
  401. package/web-components/elements/index.d.ts.map +1 -0
  402. package/web-components/index.d.ts +50 -0
  403. package/web-components/index.d.ts.map +1 -0
  404. package/web-components/index.js +2028 -0
  405. package/web-components/register.d.ts +57 -0
  406. package/web-components/register.d.ts.map +1 -0
  407. package/web-components/types.d.ts +122 -0
  408. package/web-components/types.d.ts.map +1 -0
  409. package/widgets/index.d.ts +8 -0
  410. package/widgets/index.d.ts.map +1 -0
  411. package/widgets/index.js +910 -0
  412. package/widgets/progress.d.ts +133 -0
  413. package/widgets/progress.d.ts.map +1 -0
  414. package/widgets/resource.d.ts +163 -0
  415. package/widgets/resource.d.ts.map +1 -0
  416. package/src/adapters/index.d.ts +0 -10
  417. package/src/adapters/index.js +0 -18
  418. package/src/adapters/index.js.map +0 -1
  419. package/src/adapters/platform-meta.d.ts +0 -165
  420. package/src/adapters/platform-meta.js +0 -310
  421. package/src/adapters/platform-meta.js.map +0 -1
  422. package/src/base-template/bridge.d.ts +0 -89
  423. package/src/base-template/bridge.js +0 -452
  424. package/src/base-template/bridge.js.map +0 -1
  425. package/src/base-template/default-base-template.d.ts +0 -91
  426. package/src/base-template/default-base-template.js +0 -435
  427. package/src/base-template/default-base-template.js.map +0 -1
  428. package/src/base-template/index.d.ts +0 -14
  429. package/src/base-template/index.js +0 -30
  430. package/src/base-template/index.js.map +0 -1
  431. package/src/base-template/polyfills.d.ts +0 -30
  432. package/src/base-template/polyfills.js +0 -190
  433. package/src/base-template/polyfills.js.map +0 -1
  434. package/src/base-template/theme-styles.d.ts +0 -73
  435. package/src/base-template/theme-styles.js +0 -95
  436. package/src/base-template/theme-styles.js.map +0 -1
  437. package/src/bridge/adapters/base-adapter.d.ts +0 -103
  438. package/src/bridge/adapters/base-adapter.js +0 -314
  439. package/src/bridge/adapters/base-adapter.js.map +0 -1
  440. package/src/bridge/adapters/claude.adapter.d.ts +0 -66
  441. package/src/bridge/adapters/claude.adapter.js +0 -145
  442. package/src/bridge/adapters/claude.adapter.js.map +0 -1
  443. package/src/bridge/adapters/ext-apps.adapter.d.ts +0 -142
  444. package/src/bridge/adapters/ext-apps.adapter.js +0 -416
  445. package/src/bridge/adapters/ext-apps.adapter.js.map +0 -1
  446. package/src/bridge/adapters/gemini.adapter.d.ts +0 -63
  447. package/src/bridge/adapters/gemini.adapter.js +0 -160
  448. package/src/bridge/adapters/gemini.adapter.js.map +0 -1
  449. package/src/bridge/adapters/generic.adapter.d.ts +0 -55
  450. package/src/bridge/adapters/generic.adapter.js +0 -108
  451. package/src/bridge/adapters/generic.adapter.js.map +0 -1
  452. package/src/bridge/adapters/index.d.ts +0 -25
  453. package/src/bridge/adapters/index.js +0 -65
  454. package/src/bridge/adapters/index.js.map +0 -1
  455. package/src/bridge/adapters/openai.adapter.d.ts +0 -64
  456. package/src/bridge/adapters/openai.adapter.js +0 -194
  457. package/src/bridge/adapters/openai.adapter.js.map +0 -1
  458. package/src/bridge/core/adapter-registry.d.ts +0 -121
  459. package/src/bridge/core/adapter-registry.js +0 -271
  460. package/src/bridge/core/adapter-registry.js.map +0 -1
  461. package/src/bridge/core/bridge-factory.d.ts +0 -198
  462. package/src/bridge/core/bridge-factory.js +0 -428
  463. package/src/bridge/core/bridge-factory.js.map +0 -1
  464. package/src/bridge/core/index.d.ts +0 -9
  465. package/src/bridge/core/index.js +0 -22
  466. package/src/bridge/core/index.js.map +0 -1
  467. package/src/bridge/index.d.ts +0 -61
  468. package/src/bridge/index.js +0 -94
  469. package/src/bridge/index.js.map +0 -1
  470. package/src/bridge/runtime/iife-generator.d.ts +0 -61
  471. package/src/bridge/runtime/iife-generator.js +0 -940
  472. package/src/bridge/runtime/iife-generator.js.map +0 -1
  473. package/src/bridge/runtime/index.d.ts +0 -8
  474. package/src/bridge/runtime/index.js +0 -16
  475. package/src/bridge/runtime/index.js.map +0 -1
  476. package/src/bridge/types.d.ts +0 -385
  477. package/src/bridge/types.js +0 -11
  478. package/src/bridge/types.js.map +0 -1
  479. package/src/build/cdn-resources.d.ts +0 -140
  480. package/src/build/cdn-resources.js +0 -314
  481. package/src/build/cdn-resources.js.map +0 -1
  482. package/src/build/index.d.ts +0 -294
  483. package/src/build/index.js +0 -325
  484. package/src/build/index.js.map +0 -1
  485. package/src/build/widget-manifest.d.ts +0 -212
  486. package/src/build/widget-manifest.js +0 -652
  487. package/src/build/widget-manifest.js.map +0 -1
  488. package/src/bundler/bundler.d.ts +0 -110
  489. package/src/bundler/bundler.js +0 -432
  490. package/src/bundler/bundler.js.map +0 -1
  491. package/src/bundler/cache.d.ts +0 -172
  492. package/src/bundler/cache.js +0 -250
  493. package/src/bundler/cache.js.map +0 -1
  494. package/src/bundler/index.d.ts +0 -41
  495. package/src/bundler/index.js +0 -73
  496. package/src/bundler/index.js.map +0 -1
  497. package/src/bundler/sandbox/enclave-adapter.d.ts +0 -120
  498. package/src/bundler/sandbox/enclave-adapter.js +0 -339
  499. package/src/bundler/sandbox/enclave-adapter.js.map +0 -1
  500. package/src/bundler/sandbox/executor.d.ts +0 -13
  501. package/src/bundler/sandbox/executor.js +0 -22
  502. package/src/bundler/sandbox/executor.js.map +0 -1
  503. package/src/bundler/sandbox/policy.d.ts +0 -61
  504. package/src/bundler/sandbox/policy.js +0 -238
  505. package/src/bundler/sandbox/policy.js.map +0 -1
  506. package/src/bundler/types.d.ts +0 -347
  507. package/src/bundler/types.js +0 -132
  508. package/src/bundler/types.js.map +0 -1
  509. package/src/components/alert.d.ts +0 -71
  510. package/src/components/alert.js +0 -189
  511. package/src/components/alert.js.map +0 -1
  512. package/src/components/alert.schema.d.ts +0 -114
  513. package/src/components/alert.schema.js +0 -105
  514. package/src/components/alert.schema.js.map +0 -1
  515. package/src/components/avatar.d.ts +0 -76
  516. package/src/components/avatar.js +0 -176
  517. package/src/components/avatar.js.map +0 -1
  518. package/src/components/avatar.schema.d.ts +0 -169
  519. package/src/components/avatar.schema.js +0 -103
  520. package/src/components/avatar.schema.js.map +0 -1
  521. package/src/components/badge.d.ts +0 -70
  522. package/src/components/badge.js +0 -149
  523. package/src/components/badge.js.map +0 -1
  524. package/src/components/badge.schema.d.ts +0 -109
  525. package/src/components/badge.schema.js +0 -96
  526. package/src/components/badge.schema.js.map +0 -1
  527. package/src/components/button.d.ts +0 -111
  528. package/src/components/button.js +0 -336
  529. package/src/components/button.js.map +0 -1
  530. package/src/components/button.schema.d.ts +0 -148
  531. package/src/components/button.schema.js +0 -121
  532. package/src/components/button.schema.js.map +0 -1
  533. package/src/components/card.d.ts +0 -60
  534. package/src/components/card.js +0 -117
  535. package/src/components/card.js.map +0 -1
  536. package/src/components/card.schema.d.ts +0 -113
  537. package/src/components/card.schema.js +0 -98
  538. package/src/components/card.schema.js.map +0 -1
  539. package/src/components/form.d.ts +0 -239
  540. package/src/components/form.js +0 -420
  541. package/src/components/form.js.map +0 -1
  542. package/src/components/form.schema.d.ts +0 -441
  543. package/src/components/form.schema.js +0 -406
  544. package/src/components/form.schema.js.map +0 -1
  545. package/src/components/index.d.ts +0 -29
  546. package/src/components/index.js +0 -98
  547. package/src/components/index.js.map +0 -1
  548. package/src/components/list.d.ts +0 -127
  549. package/src/components/list.js +0 -279
  550. package/src/components/list.js.map +0 -1
  551. package/src/components/list.schema.d.ts +0 -134
  552. package/src/components/list.schema.js +0 -168
  553. package/src/components/list.schema.js.map +0 -1
  554. package/src/components/modal.d.ts +0 -111
  555. package/src/components/modal.js +0 -260
  556. package/src/components/modal.js.map +0 -1
  557. package/src/components/modal.schema.d.ts +0 -186
  558. package/src/components/modal.schema.js +0 -167
  559. package/src/components/modal.schema.js.map +0 -1
  560. package/src/components/table.d.ts +0 -105
  561. package/src/components/table.js +0 -283
  562. package/src/components/table.js.map +0 -1
  563. package/src/components/table.schema.d.ts +0 -159
  564. package/src/components/table.schema.js +0 -173
  565. package/src/components/table.schema.js.map +0 -1
  566. package/src/handlebars/helpers.d.ts +0 -348
  567. package/src/handlebars/helpers.js +0 -605
  568. package/src/handlebars/helpers.js.map +0 -1
  569. package/src/handlebars/index.d.ts +0 -193
  570. package/src/handlebars/index.js +0 -350
  571. package/src/handlebars/index.js.map +0 -1
  572. package/src/index.d.ts +0 -50
  573. package/src/index.js +0 -192
  574. package/src/index.js.map +0 -1
  575. package/src/layouts/base.d.ts +0 -88
  576. package/src/layouts/base.js +0 -227
  577. package/src/layouts/base.js.map +0 -1
  578. package/src/layouts/index.d.ts +0 -7
  579. package/src/layouts/index.js +0 -25
  580. package/src/layouts/index.js.map +0 -1
  581. package/src/layouts/presets.d.ts +0 -133
  582. package/src/layouts/presets.js +0 -277
  583. package/src/layouts/presets.js.map +0 -1
  584. package/src/pages/consent.d.ts +0 -116
  585. package/src/pages/consent.js +0 -218
  586. package/src/pages/consent.js.map +0 -1
  587. package/src/pages/error.d.ts +0 -100
  588. package/src/pages/error.js +0 -263
  589. package/src/pages/error.js.map +0 -1
  590. package/src/pages/index.d.ts +0 -8
  591. package/src/pages/index.js +0 -27
  592. package/src/pages/index.js.map +0 -1
  593. package/src/react/Alert.d.ts +0 -101
  594. package/src/react/Alert.js +0 -51
  595. package/src/react/Alert.js.map +0 -1
  596. package/src/react/Badge.d.ts +0 -100
  597. package/src/react/Badge.js +0 -55
  598. package/src/react/Badge.js.map +0 -1
  599. package/src/react/Button.d.ts +0 -108
  600. package/src/react/Button.js +0 -52
  601. package/src/react/Button.js.map +0 -1
  602. package/src/react/Card.d.ts +0 -103
  603. package/src/react/Card.js +0 -55
  604. package/src/react/Card.js.map +0 -1
  605. package/src/react/hooks/context.d.ts +0 -178
  606. package/src/react/hooks/context.js +0 -287
  607. package/src/react/hooks/context.js.map +0 -1
  608. package/src/react/hooks/index.d.ts +0 -41
  609. package/src/react/hooks/index.js +0 -61
  610. package/src/react/hooks/index.js.map +0 -1
  611. package/src/react/hooks/tools.d.ts +0 -283
  612. package/src/react/hooks/tools.js +0 -465
  613. package/src/react/hooks/tools.js.map +0 -1
  614. package/src/react/index.d.ts +0 -80
  615. package/src/react/index.js +0 -113
  616. package/src/react/index.js.map +0 -1
  617. package/src/react/types.d.ts +0 -105
  618. package/src/react/types.js +0 -12
  619. package/src/react/types.js.map +0 -1
  620. package/src/react/utils.d.ts +0 -42
  621. package/src/react/utils.js +0 -99
  622. package/src/react/utils.js.map +0 -1
  623. package/src/registry/index.d.ts +0 -45
  624. package/src/registry/index.js +0 -67
  625. package/src/registry/index.js.map +0 -1
  626. package/src/registry/render-template.d.ts +0 -86
  627. package/src/registry/render-template.js +0 -239
  628. package/src/registry/render-template.js.map +0 -1
  629. package/src/registry/tool-ui.registry.d.ts +0 -260
  630. package/src/registry/tool-ui.registry.js +0 -438
  631. package/src/registry/tool-ui.registry.js.map +0 -1
  632. package/src/registry/uri-utils.d.ts +0 -55
  633. package/src/registry/uri-utils.js +0 -97
  634. package/src/registry/uri-utils.js.map +0 -1
  635. package/src/render/index.d.ts +0 -7
  636. package/src/render/index.js +0 -14
  637. package/src/render/index.js.map +0 -1
  638. package/src/render/prerender.d.ts +0 -56
  639. package/src/render/prerender.js +0 -98
  640. package/src/render/prerender.js.map +0 -1
  641. package/src/renderers/cache.d.ts +0 -144
  642. package/src/renderers/cache.js +0 -240
  643. package/src/renderers/cache.js.map +0 -1
  644. package/src/renderers/html.renderer.d.ts +0 -122
  645. package/src/renderers/html.renderer.js +0 -204
  646. package/src/renderers/html.renderer.js.map +0 -1
  647. package/src/renderers/index.d.ts +0 -35
  648. package/src/renderers/index.js +0 -70
  649. package/src/renderers/index.js.map +0 -1
  650. package/src/renderers/mdx.renderer.d.ts +0 -119
  651. package/src/renderers/mdx.renderer.js +0 -305
  652. package/src/renderers/mdx.renderer.js.map +0 -1
  653. package/src/renderers/react.renderer.d.ts +0 -95
  654. package/src/renderers/react.renderer.js +0 -260
  655. package/src/renderers/react.renderer.js.map +0 -1
  656. package/src/renderers/registry.d.ts +0 -133
  657. package/src/renderers/registry.js +0 -232
  658. package/src/renderers/registry.js.map +0 -1
  659. package/src/renderers/types.d.ts +0 -341
  660. package/src/renderers/types.js +0 -9
  661. package/src/renderers/types.js.map +0 -1
  662. package/src/renderers/utils/detect.d.ts +0 -106
  663. package/src/renderers/utils/detect.js +0 -267
  664. package/src/renderers/utils/detect.js.map +0 -1
  665. package/src/renderers/utils/hash.d.ts +0 -39
  666. package/src/renderers/utils/hash.js +0 -75
  667. package/src/renderers/utils/hash.js.map +0 -1
  668. package/src/renderers/utils/index.d.ts +0 -8
  669. package/src/renderers/utils/index.js +0 -28
  670. package/src/renderers/utils/index.js.map +0 -1
  671. package/src/renderers/utils/transpiler.d.ts +0 -88
  672. package/src/renderers/utils/transpiler.js +0 -215
  673. package/src/renderers/utils/transpiler.js.map +0 -1
  674. package/src/runtime/adapters/html.adapter.d.ts +0 -58
  675. package/src/runtime/adapters/html.adapter.js +0 -131
  676. package/src/runtime/adapters/html.adapter.js.map +0 -1
  677. package/src/runtime/adapters/index.d.ts +0 -25
  678. package/src/runtime/adapters/index.js +0 -54
  679. package/src/runtime/adapters/index.js.map +0 -1
  680. package/src/runtime/adapters/mdx.adapter.d.ts +0 -72
  681. package/src/runtime/adapters/mdx.adapter.js +0 -241
  682. package/src/runtime/adapters/mdx.adapter.js.map +0 -1
  683. package/src/runtime/adapters/react.adapter.d.ts +0 -69
  684. package/src/runtime/adapters/react.adapter.js +0 -245
  685. package/src/runtime/adapters/react.adapter.js.map +0 -1
  686. package/src/runtime/adapters/types.d.ts +0 -94
  687. package/src/runtime/adapters/types.js +0 -11
  688. package/src/runtime/adapters/types.js.map +0 -1
  689. package/src/runtime/csp.d.ts +0 -37
  690. package/src/runtime/csp.js +0 -140
  691. package/src/runtime/csp.js.map +0 -1
  692. package/src/runtime/index.d.ts +0 -16
  693. package/src/runtime/index.js +0 -72
  694. package/src/runtime/index.js.map +0 -1
  695. package/src/runtime/mcp-bridge.d.ts +0 -100
  696. package/src/runtime/mcp-bridge.js +0 -581
  697. package/src/runtime/mcp-bridge.js.map +0 -1
  698. package/src/runtime/renderer-runtime.d.ts +0 -132
  699. package/src/runtime/renderer-runtime.js +0 -389
  700. package/src/runtime/renderer-runtime.js.map +0 -1
  701. package/src/runtime/sanitizer.d.ts +0 -171
  702. package/src/runtime/sanitizer.js +0 -318
  703. package/src/runtime/sanitizer.js.map +0 -1
  704. package/src/runtime/types.d.ts +0 -414
  705. package/src/runtime/types.js +0 -12
  706. package/src/runtime/types.js.map +0 -1
  707. package/src/runtime/wrapper.d.ts +0 -375
  708. package/src/runtime/wrapper.js +0 -1793
  709. package/src/runtime/wrapper.js.map +0 -1
  710. package/src/styles/index.d.ts +0 -7
  711. package/src/styles/index.js +0 -11
  712. package/src/styles/index.js.map +0 -1
  713. package/src/styles/variants.d.ts +0 -50
  714. package/src/styles/variants.js +0 -175
  715. package/src/styles/variants.js.map +0 -1
  716. package/src/theme/cdn.d.ts +0 -194
  717. package/src/theme/cdn.js +0 -375
  718. package/src/theme/cdn.js.map +0 -1
  719. package/src/theme/index.d.ts +0 -17
  720. package/src/theme/index.js +0 -57
  721. package/src/theme/index.js.map +0 -1
  722. package/src/theme/platforms.d.ts +0 -106
  723. package/src/theme/platforms.js +0 -161
  724. package/src/theme/platforms.js.map +0 -1
  725. package/src/theme/presets/github-openai.d.ts +0 -49
  726. package/src/theme/presets/github-openai.js +0 -189
  727. package/src/theme/presets/github-openai.js.map +0 -1
  728. package/src/theme/presets/index.d.ts +0 -10
  729. package/src/theme/presets/index.js +0 -17
  730. package/src/theme/presets/index.js.map +0 -1
  731. package/src/theme/theme.d.ts +0 -395
  732. package/src/theme/theme.js +0 -332
  733. package/src/theme/theme.js.map +0 -1
  734. package/src/tool-template/builder.d.ts +0 -212
  735. package/src/tool-template/builder.js +0 -397
  736. package/src/tool-template/builder.js.map +0 -1
  737. package/src/tool-template/index.d.ts +0 -15
  738. package/src/tool-template/index.js +0 -38
  739. package/src/tool-template/index.js.map +0 -1
  740. package/src/types/index.d.ts +0 -13
  741. package/src/types/index.js +0 -26
  742. package/src/types/index.js.map +0 -1
  743. package/src/types/ui-config.d.ts +0 -357
  744. package/src/types/ui-config.js +0 -12
  745. package/src/types/ui-config.js.map +0 -1
  746. package/src/types/ui-runtime.d.ts +0 -965
  747. package/src/types/ui-runtime.js +0 -117
  748. package/src/types/ui-runtime.js.map +0 -1
  749. package/src/validation/error-box.d.ts +0 -55
  750. package/src/validation/error-box.js +0 -75
  751. package/src/validation/error-box.js.map +0 -1
  752. package/src/validation/index.d.ts +0 -12
  753. package/src/validation/index.js +0 -21
  754. package/src/validation/index.js.map +0 -1
  755. package/src/validation/wrapper.d.ts +0 -96
  756. package/src/validation/wrapper.js +0 -117
  757. package/src/validation/wrapper.js.map +0 -1
  758. package/src/web-components/core/attribute-parser.d.ts +0 -85
  759. package/src/web-components/core/attribute-parser.js +0 -189
  760. package/src/web-components/core/attribute-parser.js.map +0 -1
  761. package/src/web-components/core/base-element.d.ts +0 -197
  762. package/src/web-components/core/base-element.js +0 -289
  763. package/src/web-components/core/base-element.js.map +0 -1
  764. package/src/web-components/core/index.d.ts +0 -8
  765. package/src/web-components/core/index.js +0 -18
  766. package/src/web-components/core/index.js.map +0 -1
  767. package/src/web-components/elements/fmcp-alert.d.ts +0 -45
  768. package/src/web-components/elements/fmcp-alert.js +0 -93
  769. package/src/web-components/elements/fmcp-alert.js.map +0 -1
  770. package/src/web-components/elements/fmcp-badge.d.ts +0 -46
  771. package/src/web-components/elements/fmcp-badge.js +0 -99
  772. package/src/web-components/elements/fmcp-badge.js.map +0 -1
  773. package/src/web-components/elements/fmcp-button.d.ts +0 -124
  774. package/src/web-components/elements/fmcp-button.js +0 -233
  775. package/src/web-components/elements/fmcp-button.js.map +0 -1
  776. package/src/web-components/elements/fmcp-card.d.ts +0 -52
  777. package/src/web-components/elements/fmcp-card.js +0 -115
  778. package/src/web-components/elements/fmcp-card.js.map +0 -1
  779. package/src/web-components/elements/fmcp-input.d.ts +0 -95
  780. package/src/web-components/elements/fmcp-input.js +0 -248
  781. package/src/web-components/elements/fmcp-input.js.map +0 -1
  782. package/src/web-components/elements/fmcp-select.d.ts +0 -99
  783. package/src/web-components/elements/fmcp-select.js +0 -243
  784. package/src/web-components/elements/fmcp-select.js.map +0 -1
  785. package/src/web-components/elements/index.d.ts +0 -12
  786. package/src/web-components/elements/index.js +0 -34
  787. package/src/web-components/elements/index.js.map +0 -1
  788. package/src/web-components/index.d.ts +0 -49
  789. package/src/web-components/index.js +0 -75
  790. package/src/web-components/index.js.map +0 -1
  791. package/src/web-components/register.d.ts +0 -56
  792. package/src/web-components/register.js +0 -80
  793. package/src/web-components/register.js.map +0 -1
  794. package/src/web-components/types.d.ts +0 -121
  795. package/src/web-components/types.js +0 -25
  796. package/src/web-components/types.js.map +0 -1
  797. package/src/widgets/index.d.ts +0 -7
  798. package/src/widgets/index.js +0 -24
  799. package/src/widgets/index.js.map +0 -1
  800. package/src/widgets/progress.d.ts +0 -132
  801. package/src/widgets/progress.js +0 -303
  802. package/src/widgets/progress.js.map +0 -1
  803. package/src/widgets/resource.d.ts +0 -162
  804. package/src/widgets/resource.js +0 -340
  805. package/src/widgets/resource.js.map +0 -1
@@ -1,132 +0,0 @@
1
- "use strict";
2
- /**
3
- * Bundler Types
4
- *
5
- * Type definitions for the in-memory bundler system.
6
- *
7
- * @packageDocumentation
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.DEFAULT_BUNDLER_OPTIONS = exports.DEFAULT_BUNDLE_OPTIONS = exports.DEFAULT_SECURITY_POLICY = void 0;
11
- // ============================================
12
- // Default Values
13
- // ============================================
14
- /**
15
- * Default security policy.
16
- */
17
- exports.DEFAULT_SECURITY_POLICY = {
18
- allowedImports: [/^react$/, /^react-dom$/, /^react\/jsx-runtime$/, /^react\/jsx-dev-runtime$/, /^@frontmcp\/ui/],
19
- blockedImports: [
20
- /^fs$/,
21
- /^fs\//,
22
- /^net$/,
23
- /^child_process$/,
24
- /^os$/,
25
- /^path$/,
26
- /^crypto$/,
27
- /^http$/,
28
- /^https$/,
29
- /^dgram$/,
30
- /^dns$/,
31
- /^cluster$/,
32
- /^readline$/,
33
- /^repl$/,
34
- /^tls$/,
35
- /^vm$/,
36
- /^worker_threads$/,
37
- ],
38
- maxBundleSize: 512000, // 500KB
39
- maxTransformTime: 5000, // 5s
40
- noEval: true,
41
- noDynamicImports: true,
42
- noRequire: true,
43
- allowedGlobals: [
44
- 'console',
45
- 'Math',
46
- 'JSON',
47
- 'Date',
48
- 'Array',
49
- 'Object',
50
- 'String',
51
- 'Number',
52
- 'Boolean',
53
- 'Promise',
54
- 'Map',
55
- 'Set',
56
- 'WeakMap',
57
- 'WeakSet',
58
- 'Symbol',
59
- 'Reflect',
60
- 'Proxy',
61
- 'Error',
62
- 'TypeError',
63
- 'RangeError',
64
- 'SyntaxError',
65
- 'ReferenceError',
66
- 'parseInt',
67
- 'parseFloat',
68
- 'isNaN',
69
- 'isFinite',
70
- 'encodeURI',
71
- 'encodeURIComponent',
72
- 'decodeURI',
73
- 'decodeURIComponent',
74
- 'setTimeout',
75
- 'clearTimeout',
76
- 'setInterval',
77
- 'clearInterval',
78
- 'atob',
79
- 'btoa',
80
- 'Intl',
81
- 'TextEncoder',
82
- 'TextDecoder',
83
- 'URL',
84
- 'URLSearchParams',
85
- 'Uint8Array',
86
- 'Int8Array',
87
- 'Uint16Array',
88
- 'Int16Array',
89
- 'Uint32Array',
90
- 'Int32Array',
91
- 'Float32Array',
92
- 'Float64Array',
93
- 'BigInt',
94
- 'BigInt64Array',
95
- 'BigUint64Array',
96
- 'ArrayBuffer',
97
- 'SharedArrayBuffer',
98
- 'DataView',
99
- 'queueMicrotask',
100
- ],
101
- };
102
- /**
103
- * Default bundle options.
104
- */
105
- exports.DEFAULT_BUNDLE_OPTIONS = {
106
- sourceType: 'auto',
107
- format: 'iife',
108
- minify: false,
109
- sourceMaps: false,
110
- externals: ['react', 'react-dom'],
111
- jsx: {
112
- runtime: 'automatic',
113
- importSource: 'react',
114
- },
115
- target: 'es2020',
116
- globalName: 'Widget',
117
- skipCache: false,
118
- };
119
- /**
120
- * Default bundler options.
121
- */
122
- exports.DEFAULT_BUNDLER_OPTIONS = {
123
- defaultSecurity: exports.DEFAULT_SECURITY_POLICY,
124
- cache: {
125
- maxSize: 100,
126
- ttl: 300000, // 5 minutes
127
- disabled: false,
128
- },
129
- verbose: false,
130
- esbuildOptions: {},
131
- };
132
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/bundler/types.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAibH,+CAA+C;AAC/C,iBAAiB;AACjB,+CAA+C;AAE/C;;GAEG;AACU,QAAA,uBAAuB,GAAmB;IACrD,cAAc,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,gBAAgB,CAAC;IAChH,cAAc,EAAE;QACd,MAAM;QACN,OAAO;QACP,OAAO;QACP,iBAAiB;QACjB,MAAM;QACN,QAAQ;QACR,UAAU;QACV,QAAQ;QACR,SAAS;QACT,SAAS;QACT,OAAO;QACP,WAAW;QACX,YAAY;QACZ,QAAQ;QACR,OAAO;QACP,MAAM;QACN,kBAAkB;KACnB;IACD,aAAa,EAAE,MAAM,EAAE,QAAQ;IAC/B,gBAAgB,EAAE,IAAI,EAAE,KAAK;IAC7B,MAAM,EAAE,IAAI;IACZ,gBAAgB,EAAE,IAAI;IACtB,SAAS,EAAE,IAAI;IACf,cAAc,EAAE;QACd,SAAS;QACT,MAAM;QACN,MAAM;QACN,MAAM;QACN,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,SAAS;QACT,KAAK;QACL,KAAK;QACL,SAAS;QACT,SAAS;QACT,QAAQ;QACR,SAAS;QACT,OAAO;QACP,OAAO;QACP,WAAW;QACX,YAAY;QACZ,aAAa;QACb,gBAAgB;QAChB,UAAU;QACV,YAAY;QACZ,OAAO;QACP,UAAU;QACV,WAAW;QACX,oBAAoB;QACpB,WAAW;QACX,oBAAoB;QACpB,YAAY;QACZ,cAAc;QACd,aAAa;QACb,eAAe;QACf,MAAM;QACN,MAAM;QACN,MAAM;QACN,aAAa;QACb,aAAa;QACb,KAAK;QACL,iBAAiB;QACjB,YAAY;QACZ,WAAW;QACX,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,cAAc;QACd,cAAc;QACd,QAAQ;QACR,eAAe;QACf,gBAAgB;QAChB,aAAa;QACb,mBAAmB;QACnB,UAAU;QACV,gBAAgB;KACjB;CACF,CAAC;AAEF;;GAEG;AACU,QAAA,sBAAsB,GAK/B;IACF,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,KAAK;IACb,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC;IACjC,GAAG,EAAE;QACH,OAAO,EAAE,WAAW;QACpB,YAAY,EAAE,OAAO;KACtB;IACD,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE,KAAK;CACjB,CAAC;AAEF;;GAEG;AACU,QAAA,uBAAuB,GAA6B;IAC/D,eAAe,EAAE,+BAAuB;IACxC,KAAK,EAAE;QACL,OAAO,EAAE,GAAG;QACZ,GAAG,EAAE,MAAM,EAAE,YAAY;QACzB,QAAQ,EAAE,KAAK;KAChB;IACD,OAAO,EAAE,KAAK;IACd,cAAc,EAAE,EAAE;CACnB,CAAC","sourcesContent":["/**\n * Bundler Types\n *\n * Type definitions for the in-memory bundler system.\n *\n * @packageDocumentation\n */\n\n// ============================================\n// Source Types\n// ============================================\n\n/**\n * Source type for bundler input.\n */\nexport type SourceType = 'jsx' | 'tsx' | 'mdx' | 'html' | 'auto';\n\n/**\n * Output format for bundles.\n */\nexport type OutputFormat = 'iife' | 'esm' | 'cjs';\n\n// ============================================\n// Bundle Options\n// ============================================\n\n/**\n * Options for bundling source code.\n */\nexport interface BundleOptions {\n /**\n * Source code to bundle.\n */\n source: string;\n\n /**\n * Source type (jsx, tsx, mdx, html, or auto).\n * @default 'auto'\n */\n sourceType?: SourceType;\n\n /**\n * Output format.\n * @default 'iife'\n */\n format?: OutputFormat;\n\n /**\n * Minify output code.\n * @default false\n */\n minify?: boolean;\n\n /**\n * Generate source maps.\n * @default false\n */\n sourceMaps?: boolean | 'inline';\n\n /**\n * External modules (not bundled).\n * @default ['react', 'react-dom']\n */\n externals?: string[];\n\n /**\n * JSX configuration.\n */\n jsx?: {\n /**\n * JSX runtime mode.\n * @default 'automatic'\n */\n runtime?: 'automatic' | 'classic';\n\n /**\n * Import source for automatic runtime.\n * @default 'react'\n */\n importSource?: string;\n };\n\n /**\n * Security policy for bundling.\n */\n security?: SecurityPolicy;\n\n /**\n * Target environment.\n * @default 'es2020'\n */\n target?: string;\n\n /**\n * Global variable name for IIFE format.\n * @default 'Widget'\n */\n globalName?: string;\n\n /**\n * Cache key override. If not provided, computed from source hash.\n */\n cacheKey?: string;\n\n /**\n * Skip cache lookup.\n * @default false\n */\n skipCache?: boolean;\n}\n\n/**\n * Options specifically for SSR bundling.\n */\nexport interface SSRBundleOptions extends BundleOptions {\n /**\n * Context data to inject during SSR.\n */\n context?: Record<string, unknown>;\n\n /**\n * Component export name to render.\n * @default 'default'\n */\n componentExport?: string;\n\n /**\n * Whether to include hydration script.\n * @default false\n */\n includeHydration?: boolean;\n}\n\n// ============================================\n// Bundle Result\n// ============================================\n\n/**\n * Result of a bundle operation.\n */\nexport interface BundleResult {\n /**\n * Bundled/transformed code.\n */\n code: string;\n\n /**\n * Content hash of the bundle.\n */\n hash: string;\n\n /**\n * Whether result was served from cache.\n */\n cached: boolean;\n\n /**\n * Bundle size in bytes.\n */\n size: number;\n\n /**\n * Source map (if generated).\n */\n map?: string;\n\n /**\n * Performance metrics.\n */\n metrics: BundleMetrics;\n\n /**\n * Detected or specified source type.\n */\n sourceType: SourceType;\n\n /**\n * Output format used.\n */\n format: OutputFormat;\n}\n\n/**\n * Performance metrics for bundling.\n */\nexport interface BundleMetrics {\n /**\n * Time to transform source (ms).\n */\n transformTime: number;\n\n /**\n * Time to bundle (ms).\n */\n bundleTime: number;\n\n /**\n * Total processing time (ms).\n */\n totalTime: number;\n\n /**\n * Cache lookup time (ms).\n */\n cacheTime?: number;\n}\n\n// ============================================\n// SSR Result\n// ============================================\n\n/**\n * Result of SSR rendering.\n */\nexport interface SSRResult extends BundleResult {\n /**\n * Rendered HTML output.\n */\n html: string;\n\n /**\n * Hydration script (if included).\n */\n hydrationScript?: string;\n\n /**\n * SSR-specific metrics.\n */\n ssrMetrics: {\n /**\n * Time to render component (ms).\n */\n renderTime: number;\n };\n}\n\n// ============================================\n// Security Policy\n// ============================================\n\n/**\n * Security policy for bundler execution.\n */\nexport interface SecurityPolicy {\n /**\n * Allowed import patterns (regex).\n * @default [/^react/, /^@frontmcp\\/ui/]\n */\n allowedImports?: RegExp[];\n\n /**\n * Blocked import patterns (regex).\n * @default [/^fs/, /^net/, /^child_process/, /^os/, /^path/]\n */\n blockedImports?: RegExp[];\n\n /**\n * Maximum bundle size in bytes.\n * @default 512000 (500KB)\n */\n maxBundleSize?: number;\n\n /**\n * Maximum transform time in ms.\n * @default 5000 (5s)\n */\n maxTransformTime?: number;\n\n /**\n * Block eval() and Function() usage.\n * @default true\n */\n noEval?: boolean;\n\n /**\n * Block dynamic imports.\n * @default true\n */\n noDynamicImports?: boolean;\n\n /**\n * Block require() usage.\n * @default true\n */\n noRequire?: boolean;\n\n /**\n * Allowed global variables.\n * @default ['console', 'Math', 'JSON', 'Date', 'Array', 'Object', 'String', 'Number', 'Boolean', 'Promise', 'Map', 'Set', 'WeakMap', 'WeakSet', 'Symbol', 'Reflect', 'Proxy', 'Error', 'TypeError', 'RangeError', 'parseInt', 'parseFloat', 'isNaN', 'isFinite', 'encodeURI', 'encodeURIComponent', 'decodeURI', 'decodeURIComponent', 'setTimeout', 'clearTimeout', 'setInterval', 'clearInterval']\n */\n allowedGlobals?: string[];\n}\n\n// ============================================\n// Security Violation\n// ============================================\n\n/**\n * Security violation details.\n */\nexport interface SecurityViolation {\n /**\n * Type of violation.\n */\n type:\n | 'blocked-import'\n | 'disallowed-import'\n | 'eval-usage'\n | 'dynamic-import'\n | 'require-usage'\n | 'size-exceeded'\n | 'timeout'\n | 'blocked-global';\n\n /**\n * Human-readable message.\n */\n message: string;\n\n /**\n * Location in source (if available).\n */\n location?: {\n line: number;\n column: number;\n };\n\n /**\n * Offending pattern/value.\n */\n value?: string;\n}\n\n// ============================================\n// Bundler Options\n// ============================================\n\n/**\n * Configuration options for creating a bundler instance.\n */\nexport interface BundlerOptions {\n /**\n * Default security policy.\n */\n defaultSecurity?: SecurityPolicy;\n\n /**\n * Cache configuration.\n */\n cache?: {\n /**\n * Maximum number of cached entries.\n * @default 100\n */\n maxSize?: number;\n\n /**\n * TTL for cache entries in ms.\n * @default 300000 (5 minutes)\n */\n ttl?: number;\n\n /**\n * Disable caching entirely.\n * @default false\n */\n disabled?: boolean;\n };\n\n /**\n * Enable verbose logging.\n * @default false\n */\n verbose?: boolean;\n\n /**\n * Custom esbuild options.\n */\n esbuildOptions?: Record<string, unknown>;\n}\n\n// ============================================\n// Cache Entry\n// ============================================\n\n/**\n * Cache entry for bundled results.\n */\nexport interface CacheEntry {\n /**\n * Bundle result.\n */\n result: BundleResult;\n\n /**\n * Creation timestamp.\n */\n createdAt: number;\n\n /**\n * Last access timestamp.\n */\n lastAccessedAt: number;\n\n /**\n * Access count.\n */\n accessCount: number;\n}\n\n// ============================================\n// Transform Context\n// ============================================\n\n/**\n * Context for transform operations.\n */\nexport interface TransformContext {\n /**\n * Source type being transformed.\n */\n sourceType: SourceType;\n\n /**\n * File path (for source maps).\n */\n filename?: string;\n\n /**\n * Source code.\n */\n source: string;\n\n /**\n * Active security policy.\n */\n security: SecurityPolicy;\n}\n\n// ============================================\n// Default Values\n// ============================================\n\n/**\n * Default security policy.\n */\nexport const DEFAULT_SECURITY_POLICY: SecurityPolicy = {\n allowedImports: [/^react$/, /^react-dom$/, /^react\\/jsx-runtime$/, /^react\\/jsx-dev-runtime$/, /^@frontmcp\\/ui/],\n blockedImports: [\n /^fs$/,\n /^fs\\//,\n /^net$/,\n /^child_process$/,\n /^os$/,\n /^path$/,\n /^crypto$/,\n /^http$/,\n /^https$/,\n /^dgram$/,\n /^dns$/,\n /^cluster$/,\n /^readline$/,\n /^repl$/,\n /^tls$/,\n /^vm$/,\n /^worker_threads$/,\n ],\n maxBundleSize: 512000, // 500KB\n maxTransformTime: 5000, // 5s\n noEval: true,\n noDynamicImports: true,\n noRequire: true,\n allowedGlobals: [\n 'console',\n 'Math',\n 'JSON',\n 'Date',\n 'Array',\n 'Object',\n 'String',\n 'Number',\n 'Boolean',\n 'Promise',\n 'Map',\n 'Set',\n 'WeakMap',\n 'WeakSet',\n 'Symbol',\n 'Reflect',\n 'Proxy',\n 'Error',\n 'TypeError',\n 'RangeError',\n 'SyntaxError',\n 'ReferenceError',\n 'parseInt',\n 'parseFloat',\n 'isNaN',\n 'isFinite',\n 'encodeURI',\n 'encodeURIComponent',\n 'decodeURI',\n 'decodeURIComponent',\n 'setTimeout',\n 'clearTimeout',\n 'setInterval',\n 'clearInterval',\n 'atob',\n 'btoa',\n 'Intl',\n 'TextEncoder',\n 'TextDecoder',\n 'URL',\n 'URLSearchParams',\n 'Uint8Array',\n 'Int8Array',\n 'Uint16Array',\n 'Int16Array',\n 'Uint32Array',\n 'Int32Array',\n 'Float32Array',\n 'Float64Array',\n 'BigInt',\n 'BigInt64Array',\n 'BigUint64Array',\n 'ArrayBuffer',\n 'SharedArrayBuffer',\n 'DataView',\n 'queueMicrotask',\n ],\n};\n\n/**\n * Default bundle options.\n */\nexport const DEFAULT_BUNDLE_OPTIONS: Required<\n Pick<\n BundleOptions,\n 'sourceType' | 'format' | 'minify' | 'sourceMaps' | 'externals' | 'jsx' | 'target' | 'globalName' | 'skipCache'\n >\n> = {\n sourceType: 'auto',\n format: 'iife',\n minify: false,\n sourceMaps: false,\n externals: ['react', 'react-dom'],\n jsx: {\n runtime: 'automatic',\n importSource: 'react',\n },\n target: 'es2020',\n globalName: 'Widget',\n skipCache: false,\n};\n\n/**\n * Default bundler options.\n */\nexport const DEFAULT_BUNDLER_OPTIONS: Required<BundlerOptions> = {\n defaultSecurity: DEFAULT_SECURITY_POLICY,\n cache: {\n maxSize: 100,\n ttl: 300000, // 5 minutes\n disabled: false,\n },\n verbose: false,\n esbuildOptions: {},\n};\n"]}
@@ -1,71 +0,0 @@
1
- /**
2
- * Alert Component
3
- *
4
- * Notification and message display components.
5
- */
6
- /**
7
- * Alert variant styles
8
- */
9
- export type AlertVariant = 'info' | 'success' | 'warning' | 'danger' | 'neutral';
10
- /**
11
- * Alert component options
12
- */
13
- export interface AlertOptions {
14
- /** Alert variant */
15
- variant?: AlertVariant;
16
- /** Alert title */
17
- title?: string;
18
- /** Show icon */
19
- showIcon?: boolean;
20
- /** Custom icon (overrides default) */
21
- icon?: string;
22
- /** Dismissible alert */
23
- dismissible?: boolean;
24
- /** Additional CSS classes */
25
- className?: string;
26
- /** Alert ID */
27
- id?: string;
28
- /** Actions (buttons) */
29
- actions?: string;
30
- /** HTMX for dismiss */
31
- onDismiss?: {
32
- delete?: string;
33
- target?: string;
34
- swap?: string;
35
- };
36
- }
37
- /**
38
- * Build an alert component
39
- */
40
- export declare function alert(message: string, options?: AlertOptions): string;
41
- /** Info alert shorthand */
42
- export declare const infoAlert: (message: string, opts?: Omit<AlertOptions, "variant">) => string;
43
- /** Success alert shorthand */
44
- export declare const successAlert: (message: string, opts?: Omit<AlertOptions, "variant">) => string;
45
- /** Warning alert shorthand */
46
- export declare const warningAlert: (message: string, opts?: Omit<AlertOptions, "variant">) => string;
47
- /** Danger/error alert shorthand */
48
- export declare const dangerAlert: (message: string, opts?: Omit<AlertOptions, "variant">) => string;
49
- /**
50
- * Toast notification options
51
- */
52
- export interface ToastOptions {
53
- /** Toast variant */
54
- variant?: AlertVariant;
55
- /** Toast title */
56
- title?: string;
57
- /** Duration in ms (0 = no auto-dismiss) */
58
- duration?: number;
59
- /** Position */
60
- position?: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' | 'top-center' | 'bottom-center';
61
- /** Toast ID */
62
- id?: string;
63
- }
64
- /**
65
- * Build a toast notification
66
- */
67
- export declare function toast(message: string, options?: ToastOptions): string;
68
- /**
69
- * Build a toast container (for multiple toasts)
70
- */
71
- export declare function toastContainer(position?: ToastOptions['position'], id?: string): string;
@@ -1,189 +0,0 @@
1
- "use strict";
2
- /**
3
- * Alert Component
4
- *
5
- * Notification and message display components.
6
- */
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.dangerAlert = exports.warningAlert = exports.successAlert = exports.infoAlert = void 0;
9
- exports.alert = alert;
10
- exports.toast = toast;
11
- exports.toastContainer = toastContainer;
12
- const base_1 = require("../layouts/base");
13
- // ============================================
14
- // Alert Icons
15
- // ============================================
16
- const alertIcons = {
17
- info: `<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
18
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/>
19
- </svg>`,
20
- success: `<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
21
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"/>
22
- </svg>`,
23
- warning: `<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
24
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"/>
25
- </svg>`,
26
- danger: `<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
27
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z"/>
28
- </svg>`,
29
- neutral: `<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
30
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/>
31
- </svg>`,
32
- };
33
- // ============================================
34
- // Alert Builder
35
- // ============================================
36
- /**
37
- * Get variant CSS classes
38
- */
39
- function getVariantClasses(variant) {
40
- const variants = {
41
- info: {
42
- container: 'bg-blue-50 border-blue-200 text-blue-800',
43
- icon: 'text-blue-500',
44
- },
45
- success: {
46
- container: 'bg-success/10 border-success/30 text-success',
47
- icon: 'text-success',
48
- },
49
- warning: {
50
- container: 'bg-warning/10 border-warning/30 text-warning',
51
- icon: 'text-warning',
52
- },
53
- danger: {
54
- container: 'bg-danger/10 border-danger/30 text-danger',
55
- icon: 'text-danger',
56
- },
57
- neutral: {
58
- container: 'bg-gray-50 border-gray-200 text-gray-800',
59
- icon: 'text-gray-500',
60
- },
61
- };
62
- return variants[variant];
63
- }
64
- /**
65
- * Build an alert component
66
- */
67
- function alert(message, options = {}) {
68
- const { variant = 'info', title, showIcon = true, icon, dismissible = false, className = '', id, actions, onDismiss, } = options;
69
- const variantClasses = getVariantClasses(variant);
70
- const baseClasses = ['rounded-lg border p-4', variantClasses.container, className].filter(Boolean).join(' ');
71
- const iconHtml = showIcon
72
- ? `<div class="flex-shrink-0 ${variantClasses.icon}">
73
- ${icon || alertIcons[variant]}
74
- </div>`
75
- : '';
76
- const titleHtml = title ? `<h3 class="font-semibold">${(0, base_1.escapeHtml)(title)}</h3>` : '';
77
- const dismissHtml = dismissible
78
- ? `<button
79
- type="button"
80
- class="flex-shrink-0 ml-auto -mr-1 -mt-1 p-1 rounded hover:bg-black/5 transition-colors"
81
- ${onDismiss?.delete
82
- ? `hx-delete="${(0, base_1.escapeHtml)(onDismiss.delete)}"`
83
- : `onclick="this.closest('.alert').remove()"`}
84
- ${onDismiss?.target ? `hx-target="${(0, base_1.escapeHtml)(onDismiss.target)}"` : ''}
85
- ${onDismiss?.swap ? `hx-swap="${(0, base_1.escapeHtml)(onDismiss.swap)}"` : ''}
86
- aria-label="Dismiss"
87
- >
88
- <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
89
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"/>
90
- </svg>
91
- </button>`
92
- : '';
93
- const actionsHtml = actions ? `<div class="mt-3">${actions}</div>` : '';
94
- const idAttr = id ? `id="${(0, base_1.escapeHtml)(id)}"` : '';
95
- return `<div class="alert ${baseClasses}" role="alert" ${idAttr}>
96
- <div class="flex gap-3">
97
- ${iconHtml}
98
- <div class="flex-1">
99
- ${titleHtml}
100
- <div class="${title ? 'mt-1' : ''}">${(0, base_1.escapeHtml)(message)}</div>
101
- ${actionsHtml}
102
- </div>
103
- ${dismissHtml}
104
- </div>
105
- </div>`;
106
- }
107
- // ============================================
108
- // Alert Presets
109
- // ============================================
110
- /** Info alert shorthand */
111
- const infoAlert = (message, opts) => alert(message, { ...opts, variant: 'info' });
112
- exports.infoAlert = infoAlert;
113
- /** Success alert shorthand */
114
- const successAlert = (message, opts) => alert(message, { ...opts, variant: 'success' });
115
- exports.successAlert = successAlert;
116
- /** Warning alert shorthand */
117
- const warningAlert = (message, opts) => alert(message, { ...opts, variant: 'warning' });
118
- exports.warningAlert = warningAlert;
119
- /** Danger/error alert shorthand */
120
- const dangerAlert = (message, opts) => alert(message, { ...opts, variant: 'danger' });
121
- exports.dangerAlert = dangerAlert;
122
- /**
123
- * Build a toast notification
124
- */
125
- function toast(message, options = {}) {
126
- const { variant = 'info', title, duration = 5000, position = 'top-right', id = `toast-${Date.now()}` } = options;
127
- const variantClasses = getVariantClasses(variant);
128
- const positionClasses = {
129
- 'top-right': 'top-4 right-4',
130
- 'top-left': 'top-4 left-4',
131
- 'bottom-right': 'bottom-4 right-4',
132
- 'bottom-left': 'bottom-4 left-4',
133
- 'top-center': 'top-4 left-1/2 -translate-x-1/2',
134
- 'bottom-center': 'bottom-4 left-1/2 -translate-x-1/2',
135
- };
136
- const titleHtml = title ? `<h4 class="font-semibold">${(0, base_1.escapeHtml)(title)}</h4>` : '';
137
- const autoDismissScript = duration > 0
138
- ? `<script>
139
- setTimeout(() => {
140
- const toast = document.getElementById('${id}');
141
- if (toast) {
142
- toast.classList.add('opacity-0', 'translate-x-2');
143
- setTimeout(() => toast.remove(), 300);
144
- }
145
- }, ${duration});
146
- </script>`
147
- : '';
148
- return `<div
149
- id="${(0, base_1.escapeHtml)(id)}"
150
- class="fixed ${positionClasses[position]} z-50 min-w-[300px] max-w-md rounded-lg border shadow-lg ${variantClasses.container} transition-all duration-300 transform"
151
- role="alert"
152
- >
153
- <div class="flex gap-3 p-4">
154
- <div class="flex-shrink-0 ${variantClasses.icon}">
155
- ${alertIcons[variant]}
156
- </div>
157
- <div class="flex-1">
158
- ${titleHtml}
159
- <p class="${title ? 'mt-1 text-sm opacity-90' : ''}">${(0, base_1.escapeHtml)(message)}</p>
160
- </div>
161
- <button
162
- type="button"
163
- class="flex-shrink-0 p-1 rounded hover:bg-black/5 transition-colors"
164
- onclick="this.closest('#${id}').remove()"
165
- aria-label="Close"
166
- >
167
- <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
168
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"/>
169
- </svg>
170
- </button>
171
- </div>
172
- </div>
173
- ${autoDismissScript}`;
174
- }
175
- /**
176
- * Build a toast container (for multiple toasts)
177
- */
178
- function toastContainer(position = 'top-right', id = 'toast-container') {
179
- const positionClasses = {
180
- 'top-right': 'top-4 right-4',
181
- 'top-left': 'top-4 left-4',
182
- 'bottom-right': 'bottom-4 right-4',
183
- 'bottom-left': 'bottom-4 left-4',
184
- 'top-center': 'top-4 left-1/2 -translate-x-1/2',
185
- 'bottom-center': 'bottom-4 left-1/2 -translate-x-1/2',
186
- };
187
- return `<div id="${(0, base_1.escapeHtml)(id)}" class="fixed ${positionClasses[position]} z-50 flex flex-col gap-2"></div>`;
188
- }
189
- //# sourceMappingURL=alert.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"alert.js","sourceRoot":"","sources":["../../../src/components/alert.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Alert Component\n *\n * Notification and message display components.\n */\n\nimport { escapeHtml } from '../layouts/base';\n\n// ============================================\n// Alert Types\n// ============================================\n\n/**\n * Alert variant styles\n */\nexport type AlertVariant = 'info' | 'success' | 'warning' | 'danger' | 'neutral';\n\n/**\n * Alert component options\n */\nexport interface AlertOptions {\n /** Alert variant */\n variant?: AlertVariant;\n /** Alert title */\n title?: string;\n /** Show icon */\n showIcon?: boolean;\n /** Custom icon (overrides default) */\n icon?: string;\n /** Dismissible alert */\n dismissible?: boolean;\n /** Additional CSS classes */\n className?: string;\n /** Alert ID */\n id?: string;\n /** Actions (buttons) */\n actions?: string;\n /** HTMX for dismiss */\n onDismiss?: {\n delete?: string;\n target?: string;\n swap?: string;\n };\n}\n\n// ============================================\n// Alert Icons\n// ============================================\n\nconst alertIcons: Record<AlertVariant, string> = {\n info: `<svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z\"/>\n </svg>`,\n success: `<svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z\"/>\n </svg>`,\n warning: `<svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z\"/>\n </svg>`,\n danger: `<svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z\"/>\n </svg>`,\n neutral: `<svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z\"/>\n </svg>`,\n};\n\n// ============================================\n// Alert Builder\n// ============================================\n\n/**\n * Get variant CSS classes\n */\nfunction getVariantClasses(variant: AlertVariant): { container: string; icon: string } {\n const variants: Record<AlertVariant, { container: string; icon: string }> = {\n info: {\n container: 'bg-blue-50 border-blue-200 text-blue-800',\n icon: 'text-blue-500',\n },\n success: {\n container: 'bg-success/10 border-success/30 text-success',\n icon: 'text-success',\n },\n warning: {\n container: 'bg-warning/10 border-warning/30 text-warning',\n icon: 'text-warning',\n },\n danger: {\n container: 'bg-danger/10 border-danger/30 text-danger',\n icon: 'text-danger',\n },\n neutral: {\n container: 'bg-gray-50 border-gray-200 text-gray-800',\n icon: 'text-gray-500',\n },\n };\n return variants[variant];\n}\n\n/**\n * Build an alert component\n */\nexport function alert(message: string, options: AlertOptions = {}): string {\n const {\n variant = 'info',\n title,\n showIcon = true,\n icon,\n dismissible = false,\n className = '',\n id,\n actions,\n onDismiss,\n } = options;\n\n const variantClasses = getVariantClasses(variant);\n\n const baseClasses = ['rounded-lg border p-4', variantClasses.container, className].filter(Boolean).join(' ');\n\n const iconHtml = showIcon\n ? `<div class=\"flex-shrink-0 ${variantClasses.icon}\">\n ${icon || alertIcons[variant]}\n </div>`\n : '';\n\n const titleHtml = title ? `<h3 class=\"font-semibold\">${escapeHtml(title)}</h3>` : '';\n\n const dismissHtml = dismissible\n ? `<button\n type=\"button\"\n class=\"flex-shrink-0 ml-auto -mr-1 -mt-1 p-1 rounded hover:bg-black/5 transition-colors\"\n ${\n onDismiss?.delete\n ? `hx-delete=\"${escapeHtml(onDismiss.delete)}\"`\n : `onclick=\"this.closest('.alert').remove()\"`\n }\n ${onDismiss?.target ? `hx-target=\"${escapeHtml(onDismiss.target)}\"` : ''}\n ${onDismiss?.swap ? `hx-swap=\"${escapeHtml(onDismiss.swap)}\"` : ''}\n aria-label=\"Dismiss\"\n >\n <svg class=\"w-4 h-4\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M6 18L18 6M6 6l12 12\"/>\n </svg>\n </button>`\n : '';\n\n const actionsHtml = actions ? `<div class=\"mt-3\">${actions}</div>` : '';\n\n const idAttr = id ? `id=\"${escapeHtml(id)}\"` : '';\n\n return `<div class=\"alert ${baseClasses}\" role=\"alert\" ${idAttr}>\n <div class=\"flex gap-3\">\n ${iconHtml}\n <div class=\"flex-1\">\n ${titleHtml}\n <div class=\"${title ? 'mt-1' : ''}\">${escapeHtml(message)}</div>\n ${actionsHtml}\n </div>\n ${dismissHtml}\n </div>\n </div>`;\n}\n\n// ============================================\n// Alert Presets\n// ============================================\n\n/** Info alert shorthand */\nexport const infoAlert = (message: string, opts?: Omit<AlertOptions, 'variant'>) =>\n alert(message, { ...opts, variant: 'info' });\n\n/** Success alert shorthand */\nexport const successAlert = (message: string, opts?: Omit<AlertOptions, 'variant'>) =>\n alert(message, { ...opts, variant: 'success' });\n\n/** Warning alert shorthand */\nexport const warningAlert = (message: string, opts?: Omit<AlertOptions, 'variant'>) =>\n alert(message, { ...opts, variant: 'warning' });\n\n/** Danger/error alert shorthand */\nexport const dangerAlert = (message: string, opts?: Omit<AlertOptions, 'variant'>) =>\n alert(message, { ...opts, variant: 'danger' });\n\n// ============================================\n// Toast Component\n// ============================================\n\n/**\n * Toast notification options\n */\nexport interface ToastOptions {\n /** Toast variant */\n variant?: AlertVariant;\n /** Toast title */\n title?: string;\n /** Duration in ms (0 = no auto-dismiss) */\n duration?: number;\n /** Position */\n position?: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' | 'top-center' | 'bottom-center';\n /** Toast ID */\n id?: string;\n}\n\n/**\n * Build a toast notification\n */\nexport function toast(message: string, options: ToastOptions = {}): string {\n const { variant = 'info', title, duration = 5000, position = 'top-right', id = `toast-${Date.now()}` } = options;\n\n const variantClasses = getVariantClasses(variant);\n\n const positionClasses: Record<string, string> = {\n 'top-right': 'top-4 right-4',\n 'top-left': 'top-4 left-4',\n 'bottom-right': 'bottom-4 right-4',\n 'bottom-left': 'bottom-4 left-4',\n 'top-center': 'top-4 left-1/2 -translate-x-1/2',\n 'bottom-center': 'bottom-4 left-1/2 -translate-x-1/2',\n };\n\n const titleHtml = title ? `<h4 class=\"font-semibold\">${escapeHtml(title)}</h4>` : '';\n\n const autoDismissScript =\n duration > 0\n ? `<script>\n setTimeout(() => {\n const toast = document.getElementById('${id}');\n if (toast) {\n toast.classList.add('opacity-0', 'translate-x-2');\n setTimeout(() => toast.remove(), 300);\n }\n }, ${duration});\n </script>`\n : '';\n\n return `<div\n id=\"${escapeHtml(id)}\"\n class=\"fixed ${positionClasses[position]} z-50 min-w-[300px] max-w-md rounded-lg border shadow-lg ${\n variantClasses.container\n } transition-all duration-300 transform\"\n role=\"alert\"\n >\n <div class=\"flex gap-3 p-4\">\n <div class=\"flex-shrink-0 ${variantClasses.icon}\">\n ${alertIcons[variant]}\n </div>\n <div class=\"flex-1\">\n ${titleHtml}\n <p class=\"${title ? 'mt-1 text-sm opacity-90' : ''}\">${escapeHtml(message)}</p>\n </div>\n <button\n type=\"button\"\n class=\"flex-shrink-0 p-1 rounded hover:bg-black/5 transition-colors\"\n onclick=\"this.closest('#${id}').remove()\"\n aria-label=\"Close\"\n >\n <svg class=\"w-4 h-4\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M6 18L18 6M6 6l12 12\"/>\n </svg>\n </button>\n </div>\n </div>\n ${autoDismissScript}`;\n}\n\n/**\n * Build a toast container (for multiple toasts)\n */\nexport function toastContainer(position: ToastOptions['position'] = 'top-right', id = 'toast-container'): string {\n const positionClasses: Record<string, string> = {\n 'top-right': 'top-4 right-4',\n 'top-left': 'top-4 left-4',\n 'bottom-right': 'bottom-4 right-4',\n 'bottom-left': 'bottom-4 left-4',\n 'top-center': 'top-4 left-1/2 -translate-x-1/2',\n 'bottom-center': 'bottom-4 left-1/2 -translate-x-1/2',\n };\n\n return `<div id=\"${escapeHtml(id)}\" class=\"fixed ${positionClasses[position]} z-50 flex flex-col gap-2\"></div>`;\n}\n"]}
@@ -1,114 +0,0 @@
1
- /**
2
- * @file alert.schema.ts
3
- * @description Zod schemas for Alert and Toast component options validation.
4
- *
5
- * Provides strict validation schemas for alert options including variants,
6
- * dismissible alerts, and toast notifications with positioning.
7
- *
8
- * @example
9
- * ```typescript
10
- * import { AlertOptionsSchema, ToastOptionsSchema } from '@frontmcp/ui';
11
- *
12
- * const alertResult = AlertOptionsSchema.safeParse({ variant: 'success' });
13
- * const toastResult = ToastOptionsSchema.safeParse({ position: 'top-right' });
14
- * ```
15
- *
16
- * @module @frontmcp/ui/components/alert.schema
17
- */
18
- import { z } from 'zod';
19
- /**
20
- * Alert variant enum schema
21
- */
22
- export declare const AlertVariantSchema: z.ZodEnum<{
23
- neutral: "neutral";
24
- success: "success";
25
- warning: "warning";
26
- danger: "danger";
27
- info: "info";
28
- }>;
29
- /**
30
- * Alert variant type
31
- */
32
- export type AlertVariant = z.infer<typeof AlertVariantSchema>;
33
- /**
34
- * Dismiss button HTMX options schema
35
- */
36
- export declare const AlertOnDismissSchema: z.ZodOptional<z.ZodObject<{
37
- delete: z.ZodOptional<z.ZodString>;
38
- target: z.ZodOptional<z.ZodString>;
39
- swap: z.ZodOptional<z.ZodString>;
40
- }, z.core.$strict>>;
41
- /**
42
- * Alert onDismiss type
43
- */
44
- export type AlertOnDismiss = z.infer<typeof AlertOnDismissSchema>;
45
- /**
46
- * Complete alert options schema
47
- */
48
- export declare const AlertOptionsSchema: z.ZodObject<{
49
- variant: z.ZodOptional<z.ZodEnum<{
50
- neutral: "neutral";
51
- success: "success";
52
- warning: "warning";
53
- danger: "danger";
54
- info: "info";
55
- }>>;
56
- title: z.ZodOptional<z.ZodString>;
57
- showIcon: z.ZodOptional<z.ZodBoolean>;
58
- icon: z.ZodOptional<z.ZodString>;
59
- dismissible: z.ZodOptional<z.ZodBoolean>;
60
- className: z.ZodOptional<z.ZodString>;
61
- id: z.ZodOptional<z.ZodString>;
62
- actions: z.ZodOptional<z.ZodString>;
63
- onDismiss: z.ZodOptional<z.ZodObject<{
64
- delete: z.ZodOptional<z.ZodString>;
65
- target: z.ZodOptional<z.ZodString>;
66
- swap: z.ZodOptional<z.ZodString>;
67
- }, z.core.$strict>>;
68
- }, z.core.$strict>;
69
- /**
70
- * Alert options type (derived from schema)
71
- */
72
- export type AlertOptions = z.infer<typeof AlertOptionsSchema>;
73
- /**
74
- * Toast position enum schema
75
- */
76
- export declare const ToastPositionSchema: z.ZodEnum<{
77
- "top-right": "top-right";
78
- "top-left": "top-left";
79
- "bottom-right": "bottom-right";
80
- "bottom-left": "bottom-left";
81
- "top-center": "top-center";
82
- "bottom-center": "bottom-center";
83
- }>;
84
- /**
85
- * Toast position type
86
- */
87
- export type ToastPosition = z.infer<typeof ToastPositionSchema>;
88
- /**
89
- * Complete toast options schema
90
- */
91
- export declare const ToastOptionsSchema: z.ZodObject<{
92
- variant: z.ZodOptional<z.ZodEnum<{
93
- neutral: "neutral";
94
- success: "success";
95
- warning: "warning";
96
- danger: "danger";
97
- info: "info";
98
- }>>;
99
- title: z.ZodOptional<z.ZodString>;
100
- duration: z.ZodOptional<z.ZodNumber>;
101
- position: z.ZodOptional<z.ZodEnum<{
102
- "top-right": "top-right";
103
- "top-left": "top-left";
104
- "bottom-right": "bottom-right";
105
- "bottom-left": "bottom-left";
106
- "top-center": "top-center";
107
- "bottom-center": "bottom-center";
108
- }>>;
109
- id: z.ZodOptional<z.ZodString>;
110
- }, z.core.$strict>;
111
- /**
112
- * Toast options type (derived from schema)
113
- */
114
- export type ToastOptions = z.infer<typeof ToastOptionsSchema>;