@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,105 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file alert.schema.ts
4
- * @description Zod schemas for Alert and Toast component options validation.
5
- *
6
- * Provides strict validation schemas for alert options including variants,
7
- * dismissible alerts, and toast notifications with positioning.
8
- *
9
- * @example
10
- * ```typescript
11
- * import { AlertOptionsSchema, ToastOptionsSchema } from '@frontmcp/ui';
12
- *
13
- * const alertResult = AlertOptionsSchema.safeParse({ variant: 'success' });
14
- * const toastResult = ToastOptionsSchema.safeParse({ position: 'top-right' });
15
- * ```
16
- *
17
- * @module @frontmcp/ui/components/alert.schema
18
- */
19
- Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.ToastOptionsSchema = exports.ToastPositionSchema = exports.AlertOptionsSchema = exports.AlertOnDismissSchema = exports.AlertVariantSchema = void 0;
21
- const zod_1 = require("zod");
22
- // ============================================
23
- // Variant Schema
24
- // ============================================
25
- /**
26
- * Alert variant enum schema
27
- */
28
- exports.AlertVariantSchema = zod_1.z.enum(['info', 'success', 'warning', 'danger', 'neutral']);
29
- // ============================================
30
- // OnDismiss Schema
31
- // ============================================
32
- /**
33
- * Dismiss button HTMX options schema
34
- */
35
- exports.AlertOnDismissSchema = zod_1.z
36
- .object({
37
- delete: zod_1.z.string().optional(),
38
- target: zod_1.z.string().optional(),
39
- swap: zod_1.z.string().optional(),
40
- })
41
- .strict()
42
- .optional();
43
- // ============================================
44
- // Alert Options Schema
45
- // ============================================
46
- /**
47
- * Complete alert options schema
48
- */
49
- exports.AlertOptionsSchema = zod_1.z
50
- .object({
51
- /** Alert variant */
52
- variant: exports.AlertVariantSchema.optional(),
53
- /** Alert title */
54
- title: zod_1.z.string().optional(),
55
- /** Show icon */
56
- showIcon: zod_1.z.boolean().optional(),
57
- /** Custom icon (HTML string, overrides default) */
58
- icon: zod_1.z.string().optional(),
59
- /** Dismissible alert */
60
- dismissible: zod_1.z.boolean().optional(),
61
- /** Additional CSS classes */
62
- className: zod_1.z.string().optional(),
63
- /** Alert ID */
64
- id: zod_1.z.string().optional(),
65
- /** Actions (HTML string for buttons) */
66
- actions: zod_1.z.string().optional(),
67
- /** HTMX for dismiss */
68
- onDismiss: exports.AlertOnDismissSchema,
69
- })
70
- .strict();
71
- // ============================================
72
- // Toast Position Schema
73
- // ============================================
74
- /**
75
- * Toast position enum schema
76
- */
77
- exports.ToastPositionSchema = zod_1.z.enum([
78
- 'top-right',
79
- 'top-left',
80
- 'bottom-right',
81
- 'bottom-left',
82
- 'top-center',
83
- 'bottom-center',
84
- ]);
85
- // ============================================
86
- // Toast Options Schema
87
- // ============================================
88
- /**
89
- * Complete toast options schema
90
- */
91
- exports.ToastOptionsSchema = zod_1.z
92
- .object({
93
- /** Toast variant */
94
- variant: exports.AlertVariantSchema.optional(),
95
- /** Toast title */
96
- title: zod_1.z.string().optional(),
97
- /** Duration in ms (0 = no auto-dismiss) */
98
- duration: zod_1.z.number().min(0).optional(),
99
- /** Position */
100
- position: exports.ToastPositionSchema.optional(),
101
- /** Toast ID */
102
- id: zod_1.z.string().optional(),
103
- })
104
- .strict();
105
- //# sourceMappingURL=alert.schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"alert.schema.js","sourceRoot":"","sources":["../../../src/components/alert.schema.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAEH,6BAAwB;AAExB,+CAA+C;AAC/C,iBAAiB;AACjB,+CAA+C;AAE/C;;GAEG;AACU,QAAA,kBAAkB,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;AAO9F,+CAA+C;AAC/C,mBAAmB;AACnB,+CAA+C;AAE/C;;GAEG;AACU,QAAA,oBAAoB,GAAG,OAAC;KAClC,MAAM,CAAC;IACN,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC5B,CAAC;KACD,MAAM,EAAE;KACR,QAAQ,EAAE,CAAC;AAOd,+CAA+C;AAC/C,uBAAuB;AACvB,+CAA+C;AAE/C;;GAEG;AACU,QAAA,kBAAkB,GAAG,OAAC;KAChC,MAAM,CAAC;IACN,oBAAoB;IACpB,OAAO,EAAE,0BAAkB,CAAC,QAAQ,EAAE;IACtC,kBAAkB;IAClB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,gBAAgB;IAChB,QAAQ,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAChC,mDAAmD;IACnD,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,wBAAwB;IACxB,WAAW,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,6BAA6B;IAC7B,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,eAAe;IACf,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,wCAAwC;IACxC,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,uBAAuB;IACvB,SAAS,EAAE,4BAAoB;CAChC,CAAC;KACD,MAAM,EAAE,CAAC;AAOZ,+CAA+C;AAC/C,wBAAwB;AACxB,+CAA+C;AAE/C;;GAEG;AACU,QAAA,mBAAmB,GAAG,OAAC,CAAC,IAAI,CAAC;IACxC,WAAW;IACX,UAAU;IACV,cAAc;IACd,aAAa;IACb,YAAY;IACZ,eAAe;CAChB,CAAC,CAAC;AAOH,+CAA+C;AAC/C,uBAAuB;AACvB,+CAA+C;AAE/C;;GAEG;AACU,QAAA,kBAAkB,GAAG,OAAC;KAChC,MAAM,CAAC;IACN,oBAAoB;IACpB,OAAO,EAAE,0BAAkB,CAAC,QAAQ,EAAE;IACtC,kBAAkB;IAClB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,2CAA2C;IAC3C,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACtC,eAAe;IACf,QAAQ,EAAE,2BAAmB,CAAC,QAAQ,EAAE;IACxC,eAAe;IACf,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC1B,CAAC;KACD,MAAM,EAAE,CAAC","sourcesContent":["/**\n * @file alert.schema.ts\n * @description Zod schemas for Alert and Toast component options validation.\n *\n * Provides strict validation schemas for alert options including variants,\n * dismissible alerts, and toast notifications with positioning.\n *\n * @example\n * ```typescript\n * import { AlertOptionsSchema, ToastOptionsSchema } from '@frontmcp/ui';\n *\n * const alertResult = AlertOptionsSchema.safeParse({ variant: 'success' });\n * const toastResult = ToastOptionsSchema.safeParse({ position: 'top-right' });\n * ```\n *\n * @module @frontmcp/ui/components/alert.schema\n */\n\nimport { z } from 'zod';\n\n// ============================================\n// Variant Schema\n// ============================================\n\n/**\n * Alert variant enum schema\n */\nexport const AlertVariantSchema = z.enum(['info', 'success', 'warning', 'danger', 'neutral']);\n\n/**\n * Alert variant type\n */\nexport type AlertVariant = z.infer<typeof AlertVariantSchema>;\n\n// ============================================\n// OnDismiss Schema\n// ============================================\n\n/**\n * Dismiss button HTMX options schema\n */\nexport const AlertOnDismissSchema = z\n .object({\n delete: z.string().optional(),\n target: z.string().optional(),\n swap: z.string().optional(),\n })\n .strict()\n .optional();\n\n/**\n * Alert onDismiss type\n */\nexport type AlertOnDismiss = z.infer<typeof AlertOnDismissSchema>;\n\n// ============================================\n// Alert Options Schema\n// ============================================\n\n/**\n * Complete alert options schema\n */\nexport const AlertOptionsSchema = z\n .object({\n /** Alert variant */\n variant: AlertVariantSchema.optional(),\n /** Alert title */\n title: z.string().optional(),\n /** Show icon */\n showIcon: z.boolean().optional(),\n /** Custom icon (HTML string, overrides default) */\n icon: z.string().optional(),\n /** Dismissible alert */\n dismissible: z.boolean().optional(),\n /** Additional CSS classes */\n className: z.string().optional(),\n /** Alert ID */\n id: z.string().optional(),\n /** Actions (HTML string for buttons) */\n actions: z.string().optional(),\n /** HTMX for dismiss */\n onDismiss: AlertOnDismissSchema,\n })\n .strict();\n\n/**\n * Alert options type (derived from schema)\n */\nexport type AlertOptions = z.infer<typeof AlertOptionsSchema>;\n\n// ============================================\n// Toast Position Schema\n// ============================================\n\n/**\n * Toast position enum schema\n */\nexport const ToastPositionSchema = z.enum([\n 'top-right',\n 'top-left',\n 'bottom-right',\n 'bottom-left',\n 'top-center',\n 'bottom-center',\n]);\n\n/**\n * Toast position type\n */\nexport type ToastPosition = z.infer<typeof ToastPositionSchema>;\n\n// ============================================\n// Toast Options Schema\n// ============================================\n\n/**\n * Complete toast options schema\n */\nexport const ToastOptionsSchema = z\n .object({\n /** Toast variant */\n variant: AlertVariantSchema.optional(),\n /** Toast title */\n title: z.string().optional(),\n /** Duration in ms (0 = no auto-dismiss) */\n duration: z.number().min(0).optional(),\n /** Position */\n position: ToastPositionSchema.optional(),\n /** Toast ID */\n id: z.string().optional(),\n })\n .strict();\n\n/**\n * Toast options type (derived from schema)\n */\nexport type ToastOptions = z.infer<typeof ToastOptionsSchema>;\n"]}
@@ -1,76 +0,0 @@
1
- /**
2
- * Avatar Component
3
- *
4
- * User avatars and avatar groups.
5
- */
6
- /**
7
- * Avatar size options
8
- */
9
- export type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';
10
- /**
11
- * Avatar shape options
12
- */
13
- export type AvatarShape = 'circle' | 'square' | 'rounded';
14
- /**
15
- * Avatar status options
16
- */
17
- export type AvatarStatus = 'online' | 'offline' | 'busy' | 'away' | 'none';
18
- /**
19
- * Avatar component options
20
- */
21
- export interface AvatarOptions {
22
- /** Image source URL */
23
- src?: string;
24
- /** Alt text / name */
25
- alt: string;
26
- /** Avatar size */
27
- size?: AvatarSize;
28
- /** Avatar shape */
29
- shape?: AvatarShape;
30
- /** Status indicator */
31
- status?: AvatarStatus;
32
- /** Additional CSS classes */
33
- className?: string;
34
- /** Click handler URL */
35
- href?: string;
36
- /** Custom initials (overrides auto-generation) */
37
- initials?: string;
38
- /** Background color for initials (CSS color) */
39
- bgColor?: string;
40
- }
41
- /**
42
- * Build an avatar component
43
- */
44
- export declare function avatar(options: AvatarOptions): string;
45
- /**
46
- * Avatar group options
47
- */
48
- export interface AvatarGroupOptions {
49
- /** Maximum visible avatars */
50
- max?: number;
51
- /** Avatar size */
52
- size?: AvatarSize;
53
- /** Overlap amount */
54
- spacing?: 'tight' | 'normal' | 'loose';
55
- /** Additional CSS classes */
56
- className?: string;
57
- }
58
- /**
59
- * Build an avatar group
60
- */
61
- export declare function avatarGroup(avatars: AvatarOptions[], options?: AvatarGroupOptions): string;
62
- /**
63
- * Avatar with name/details options
64
- */
65
- export interface AvatarWithTextOptions extends AvatarOptions {
66
- /** Primary text (name) */
67
- name: string;
68
- /** Secondary text (email, role, etc.) */
69
- subtitle?: string;
70
- /** Text alignment */
71
- align?: 'left' | 'right';
72
- }
73
- /**
74
- * Build avatar with name and details
75
- */
76
- export declare function avatarWithText(options: AvatarWithTextOptions): string;
@@ -1,176 +0,0 @@
1
- "use strict";
2
- /**
3
- * Avatar Component
4
- *
5
- * User avatars and avatar groups.
6
- */
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.avatar = avatar;
9
- exports.avatarGroup = avatarGroup;
10
- exports.avatarWithText = avatarWithText;
11
- const base_1 = require("../layouts/base");
12
- // ============================================
13
- // Avatar Helpers
14
- // ============================================
15
- /**
16
- * Get size CSS classes
17
- */
18
- function getSizeClasses(size) {
19
- const sizes = {
20
- xs: { container: 'w-6 h-6', text: 'text-xs', status: 'w-2 h-2 border' },
21
- sm: { container: 'w-8 h-8', text: 'text-xs', status: 'w-2.5 h-2.5 border' },
22
- md: { container: 'w-10 h-10', text: 'text-sm', status: 'w-3 h-3 border-2' },
23
- lg: { container: 'w-12 h-12', text: 'text-base', status: 'w-3.5 h-3.5 border-2' },
24
- xl: { container: 'w-16 h-16', text: 'text-lg', status: 'w-4 h-4 border-2' },
25
- '2xl': { container: 'w-24 h-24', text: 'text-2xl', status: 'w-5 h-5 border-2' },
26
- };
27
- return sizes[size];
28
- }
29
- /**
30
- * Get shape CSS classes
31
- */
32
- function getShapeClasses(shape) {
33
- const shapes = {
34
- circle: 'rounded-full',
35
- square: 'rounded-none',
36
- rounded: 'rounded-lg',
37
- };
38
- return shapes[shape];
39
- }
40
- /**
41
- * Get status CSS classes
42
- */
43
- function getStatusClasses(status) {
44
- const statuses = {
45
- online: 'bg-success',
46
- offline: 'bg-gray-400',
47
- busy: 'bg-danger',
48
- away: 'bg-warning',
49
- none: '',
50
- };
51
- return statuses[status];
52
- }
53
- /**
54
- * Generate initials from name
55
- */
56
- function generateInitials(name) {
57
- const parts = name.trim().split(/\s+/);
58
- if (parts.length === 1) {
59
- return parts[0].charAt(0).toUpperCase();
60
- }
61
- return (parts[0].charAt(0) + parts[parts.length - 1].charAt(0)).toUpperCase();
62
- }
63
- /**
64
- * Generate background color from name (deterministic)
65
- */
66
- function generateBgColor(name) {
67
- const colors = [
68
- 'bg-blue-500',
69
- 'bg-green-500',
70
- 'bg-yellow-500',
71
- 'bg-purple-500',
72
- 'bg-pink-500',
73
- 'bg-indigo-500',
74
- 'bg-red-500',
75
- 'bg-orange-500',
76
- 'bg-teal-500',
77
- 'bg-cyan-500',
78
- ];
79
- let hash = 0;
80
- for (let i = 0; i < name.length; i++) {
81
- hash = name.charCodeAt(i) + ((hash << 5) - hash);
82
- }
83
- return colors[Math.abs(hash) % colors.length];
84
- }
85
- // ============================================
86
- // Avatar Builder
87
- // ============================================
88
- /**
89
- * Build an avatar component
90
- */
91
- function avatar(options) {
92
- const { src, alt, size = 'md', shape = 'circle', status = 'none', className = '', href, initials, bgColor } = options;
93
- const sizeClasses = getSizeClasses(size);
94
- const shapeClasses = getShapeClasses(shape);
95
- const statusColor = getStatusClasses(status);
96
- const displayInitials = initials || generateInitials(alt);
97
- const displayBgColor = bgColor || generateBgColor(alt);
98
- const containerClasses = [
99
- 'relative inline-flex items-center justify-center',
100
- 'overflow-hidden',
101
- sizeClasses.container,
102
- shapeClasses,
103
- className,
104
- ]
105
- .filter(Boolean)
106
- .join(' ');
107
- const contentHtml = src
108
- ? `<img src="${(0, base_1.escapeHtml)(src)}" alt="${(0, base_1.escapeHtml)(alt)}" class="w-full h-full object-cover">`
109
- : `<span class="font-medium text-white ${sizeClasses.text}">${(0, base_1.escapeHtml)(displayInitials)}</span>`;
110
- const bgClasses = src ? 'bg-gray-200' : displayBgColor;
111
- const statusHtml = status !== 'none'
112
- ? `<span class="absolute bottom-0 right-0 block ${sizeClasses.status} ${shapeClasses} ${statusColor} border-white"></span>`
113
- : '';
114
- const innerHtml = `
115
- <div class="${containerClasses} ${bgClasses}">
116
- ${contentHtml}
117
- ${statusHtml}
118
- </div>
119
- `;
120
- if (href) {
121
- return `<a href="${(0, base_1.escapeHtml)(href)}" class="inline-block">${innerHtml}</a>`;
122
- }
123
- return innerHtml;
124
- }
125
- /**
126
- * Build an avatar group
127
- */
128
- function avatarGroup(avatars, options = {}) {
129
- const { max = 5, size = 'md', spacing = 'normal', className = '' } = options;
130
- const spacingClasses = {
131
- tight: '-space-x-3',
132
- normal: '-space-x-2',
133
- loose: '-space-x-1',
134
- };
135
- const visibleAvatars = avatars.slice(0, max);
136
- const remainingCount = avatars.length - max;
137
- const avatarsHtml = visibleAvatars
138
- .map((opts, index) => {
139
- const avatarHtml = avatar({ ...opts, size });
140
- return `<div class="relative ring-2 ring-white rounded-full" style="z-index: ${visibleAvatars.length - index}">
141
- ${avatarHtml}
142
- </div>`;
143
- })
144
- .join('\n');
145
- const sizeClasses = getSizeClasses(size);
146
- const overflowHtml = remainingCount > 0
147
- ? `<div class="relative ring-2 ring-white rounded-full" style="z-index: 0">
148
- <div class="${sizeClasses.container} rounded-full bg-gray-200 flex items-center justify-center">
149
- <span class="${sizeClasses.text} font-medium text-gray-600">+${remainingCount}</span>
150
- </div>
151
- </div>`
152
- : '';
153
- return `<div class="flex ${spacingClasses[spacing]} ${className}">
154
- ${avatarsHtml}
155
- ${overflowHtml}
156
- </div>`;
157
- }
158
- /**
159
- * Build avatar with name and details
160
- */
161
- function avatarWithText(options) {
162
- const { name, subtitle, align = 'left', ...avatarOptions } = options;
163
- const avatarHtml = avatar({ ...avatarOptions, alt: avatarOptions.alt || name });
164
- const textHtml = `
165
- <div class="${align === 'right' ? 'text-right' : ''}">
166
- <div class="font-medium text-text-primary">${(0, base_1.escapeHtml)(name)}</div>
167
- ${subtitle ? `<div class="text-sm text-text-secondary">${(0, base_1.escapeHtml)(subtitle)}</div>` : ''}
168
- </div>
169
- `;
170
- const flexDirection = align === 'right' ? 'flex-row-reverse' : 'flex-row';
171
- return `<div class="flex items-center gap-3 ${flexDirection}">
172
- ${avatarHtml}
173
- ${textHtml}
174
- </div>`;
175
- }
176
- //# sourceMappingURL=avatar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"avatar.js","sourceRoot":"","sources":["../../../src/components/avatar.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Avatar Component\n *\n * User avatars and avatar groups.\n */\n\nimport { escapeHtml } from '../layouts/base';\n\n// ============================================\n// Avatar Types\n// ============================================\n\n/**\n * Avatar size options\n */\nexport type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';\n\n/**\n * Avatar shape options\n */\nexport type AvatarShape = 'circle' | 'square' | 'rounded';\n\n/**\n * Avatar status options\n */\nexport type AvatarStatus = 'online' | 'offline' | 'busy' | 'away' | 'none';\n\n/**\n * Avatar component options\n */\nexport interface AvatarOptions {\n /** Image source URL */\n src?: string;\n /** Alt text / name */\n alt: string;\n /** Avatar size */\n size?: AvatarSize;\n /** Avatar shape */\n shape?: AvatarShape;\n /** Status indicator */\n status?: AvatarStatus;\n /** Additional CSS classes */\n className?: string;\n /** Click handler URL */\n href?: string;\n /** Custom initials (overrides auto-generation) */\n initials?: string;\n /** Background color for initials (CSS color) */\n bgColor?: string;\n}\n\n// ============================================\n// Avatar Helpers\n// ============================================\n\n/**\n * Get size CSS classes\n */\nfunction getSizeClasses(size: AvatarSize): { container: string; text: string; status: string } {\n const sizes: Record<AvatarSize, { container: string; text: string; status: string }> = {\n xs: { container: 'w-6 h-6', text: 'text-xs', status: 'w-2 h-2 border' },\n sm: { container: 'w-8 h-8', text: 'text-xs', status: 'w-2.5 h-2.5 border' },\n md: { container: 'w-10 h-10', text: 'text-sm', status: 'w-3 h-3 border-2' },\n lg: { container: 'w-12 h-12', text: 'text-base', status: 'w-3.5 h-3.5 border-2' },\n xl: { container: 'w-16 h-16', text: 'text-lg', status: 'w-4 h-4 border-2' },\n '2xl': { container: 'w-24 h-24', text: 'text-2xl', status: 'w-5 h-5 border-2' },\n };\n return sizes[size];\n}\n\n/**\n * Get shape CSS classes\n */\nfunction getShapeClasses(shape: AvatarShape): string {\n const shapes: Record<AvatarShape, string> = {\n circle: 'rounded-full',\n square: 'rounded-none',\n rounded: 'rounded-lg',\n };\n return shapes[shape];\n}\n\n/**\n * Get status CSS classes\n */\nfunction getStatusClasses(status: AvatarStatus): string {\n const statuses: Record<AvatarStatus, string> = {\n online: 'bg-success',\n offline: 'bg-gray-400',\n busy: 'bg-danger',\n away: 'bg-warning',\n none: '',\n };\n return statuses[status];\n}\n\n/**\n * Generate initials from name\n */\nfunction generateInitials(name: string): string {\n const parts = name.trim().split(/\\s+/);\n if (parts.length === 1) {\n return parts[0].charAt(0).toUpperCase();\n }\n return (parts[0].charAt(0) + parts[parts.length - 1].charAt(0)).toUpperCase();\n}\n\n/**\n * Generate background color from name (deterministic)\n */\nfunction generateBgColor(name: string): string {\n const colors = [\n 'bg-blue-500',\n 'bg-green-500',\n 'bg-yellow-500',\n 'bg-purple-500',\n 'bg-pink-500',\n 'bg-indigo-500',\n 'bg-red-500',\n 'bg-orange-500',\n 'bg-teal-500',\n 'bg-cyan-500',\n ];\n let hash = 0;\n for (let i = 0; i < name.length; i++) {\n hash = name.charCodeAt(i) + ((hash << 5) - hash);\n }\n return colors[Math.abs(hash) % colors.length];\n}\n\n// ============================================\n// Avatar Builder\n// ============================================\n\n/**\n * Build an avatar component\n */\nexport function avatar(options: AvatarOptions): string {\n const { src, alt, size = 'md', shape = 'circle', status = 'none', className = '', href, initials, bgColor } = options;\n\n const sizeClasses = getSizeClasses(size);\n const shapeClasses = getShapeClasses(shape);\n const statusColor = getStatusClasses(status);\n\n const displayInitials = initials || generateInitials(alt);\n const displayBgColor = bgColor || generateBgColor(alt);\n\n const containerClasses = [\n 'relative inline-flex items-center justify-center',\n 'overflow-hidden',\n sizeClasses.container,\n shapeClasses,\n className,\n ]\n .filter(Boolean)\n .join(' ');\n\n const contentHtml = src\n ? `<img src=\"${escapeHtml(src)}\" alt=\"${escapeHtml(alt)}\" class=\"w-full h-full object-cover\">`\n : `<span class=\"font-medium text-white ${sizeClasses.text}\">${escapeHtml(displayInitials)}</span>`;\n\n const bgClasses = src ? 'bg-gray-200' : displayBgColor;\n\n const statusHtml =\n status !== 'none'\n ? `<span class=\"absolute bottom-0 right-0 block ${sizeClasses.status} ${shapeClasses} ${statusColor} border-white\"></span>`\n : '';\n\n const innerHtml = `\n <div class=\"${containerClasses} ${bgClasses}\">\n ${contentHtml}\n ${statusHtml}\n </div>\n `;\n\n if (href) {\n return `<a href=\"${escapeHtml(href)}\" class=\"inline-block\">${innerHtml}</a>`;\n }\n\n return innerHtml;\n}\n\n// ============================================\n// Avatar Group\n// ============================================\n\n/**\n * Avatar group options\n */\nexport interface AvatarGroupOptions {\n /** Maximum visible avatars */\n max?: number;\n /** Avatar size */\n size?: AvatarSize;\n /** Overlap amount */\n spacing?: 'tight' | 'normal' | 'loose';\n /** Additional CSS classes */\n className?: string;\n}\n\n/**\n * Build an avatar group\n */\nexport function avatarGroup(avatars: AvatarOptions[], options: AvatarGroupOptions = {}): string {\n const { max = 5, size = 'md', spacing = 'normal', className = '' } = options;\n\n const spacingClasses: Record<string, string> = {\n tight: '-space-x-3',\n normal: '-space-x-2',\n loose: '-space-x-1',\n };\n\n const visibleAvatars = avatars.slice(0, max);\n const remainingCount = avatars.length - max;\n\n const avatarsHtml = visibleAvatars\n .map((opts, index) => {\n const avatarHtml = avatar({ ...opts, size });\n return `<div class=\"relative ring-2 ring-white rounded-full\" style=\"z-index: ${visibleAvatars.length - index}\">\n ${avatarHtml}\n </div>`;\n })\n .join('\\n');\n\n const sizeClasses = getSizeClasses(size);\n const overflowHtml =\n remainingCount > 0\n ? `<div class=\"relative ring-2 ring-white rounded-full\" style=\"z-index: 0\">\n <div class=\"${sizeClasses.container} rounded-full bg-gray-200 flex items-center justify-center\">\n <span class=\"${sizeClasses.text} font-medium text-gray-600\">+${remainingCount}</span>\n </div>\n </div>`\n : '';\n\n return `<div class=\"flex ${spacingClasses[spacing]} ${className}\">\n ${avatarsHtml}\n ${overflowHtml}\n </div>`;\n}\n\n// ============================================\n// Avatar with Text\n// ============================================\n\n/**\n * Avatar with name/details options\n */\nexport interface AvatarWithTextOptions extends AvatarOptions {\n /** Primary text (name) */\n name: string;\n /** Secondary text (email, role, etc.) */\n subtitle?: string;\n /** Text alignment */\n align?: 'left' | 'right';\n}\n\n/**\n * Build avatar with name and details\n */\nexport function avatarWithText(options: AvatarWithTextOptions): string {\n const { name, subtitle, align = 'left', ...avatarOptions } = options;\n\n const avatarHtml = avatar({ ...avatarOptions, alt: avatarOptions.alt || name });\n\n const textHtml = `\n <div class=\"${align === 'right' ? 'text-right' : ''}\">\n <div class=\"font-medium text-text-primary\">${escapeHtml(name)}</div>\n ${subtitle ? `<div class=\"text-sm text-text-secondary\">${escapeHtml(subtitle)}</div>` : ''}\n </div>\n `;\n\n const flexDirection = align === 'right' ? 'flex-row-reverse' : 'flex-row';\n\n return `<div class=\"flex items-center gap-3 ${flexDirection}\">\n ${avatarHtml}\n ${textHtml}\n </div>`;\n}\n"]}
@@ -1,169 +0,0 @@
1
- /**
2
- * @file avatar.schema.ts
3
- * @description Zod schemas for Avatar component options validation.
4
- *
5
- * Provides strict validation schemas for avatar options including sizes,
6
- * shapes, status indicators, and avatar groups with text.
7
- *
8
- * @example
9
- * ```typescript
10
- * import { AvatarOptionsSchema } from '@frontmcp/ui';
11
- *
12
- * const result = AvatarOptionsSchema.safeParse({
13
- * alt: 'John Doe',
14
- * size: 'lg',
15
- * });
16
- * ```
17
- *
18
- * @module @frontmcp/ui/components/avatar.schema
19
- */
20
- import { z } from 'zod';
21
- /**
22
- * Avatar size enum schema
23
- */
24
- export declare const AvatarSizeSchema: z.ZodEnum<{
25
- xs: "xs";
26
- sm: "sm";
27
- lg: "lg";
28
- xl: "xl";
29
- "2xl": "2xl";
30
- md: "md";
31
- }>;
32
- /**
33
- * Avatar size type
34
- */
35
- export type AvatarSize = z.infer<typeof AvatarSizeSchema>;
36
- /**
37
- * Avatar shape enum schema
38
- */
39
- export declare const AvatarShapeSchema: z.ZodEnum<{
40
- circle: "circle";
41
- square: "square";
42
- rounded: "rounded";
43
- }>;
44
- /**
45
- * Avatar shape type
46
- */
47
- export type AvatarShape = z.infer<typeof AvatarShapeSchema>;
48
- /**
49
- * Avatar status enum schema
50
- */
51
- export declare const AvatarStatusSchema: z.ZodEnum<{
52
- none: "none";
53
- online: "online";
54
- offline: "offline";
55
- busy: "busy";
56
- away: "away";
57
- }>;
58
- /**
59
- * Avatar status type
60
- */
61
- export type AvatarStatus = z.infer<typeof AvatarStatusSchema>;
62
- /**
63
- * Complete avatar options schema
64
- */
65
- export declare const AvatarOptionsSchema: z.ZodObject<{
66
- src: z.ZodOptional<z.ZodString>;
67
- alt: z.ZodString;
68
- size: z.ZodOptional<z.ZodEnum<{
69
- xs: "xs";
70
- sm: "sm";
71
- lg: "lg";
72
- xl: "xl";
73
- "2xl": "2xl";
74
- md: "md";
75
- }>>;
76
- shape: z.ZodOptional<z.ZodEnum<{
77
- circle: "circle";
78
- square: "square";
79
- rounded: "rounded";
80
- }>>;
81
- status: z.ZodOptional<z.ZodEnum<{
82
- none: "none";
83
- online: "online";
84
- offline: "offline";
85
- busy: "busy";
86
- away: "away";
87
- }>>;
88
- className: z.ZodOptional<z.ZodString>;
89
- href: z.ZodOptional<z.ZodString>;
90
- initials: z.ZodOptional<z.ZodString>;
91
- bgColor: z.ZodOptional<z.ZodString>;
92
- }, z.core.$strict>;
93
- /**
94
- * Avatar options type (derived from schema)
95
- */
96
- export type AvatarOptions = z.infer<typeof AvatarOptionsSchema>;
97
- /**
98
- * Avatar group spacing schema
99
- */
100
- export declare const AvatarSpacingSchema: z.ZodEnum<{
101
- normal: "normal";
102
- tight: "tight";
103
- loose: "loose";
104
- }>;
105
- /**
106
- * Avatar group options schema
107
- */
108
- export declare const AvatarGroupOptionsSchema: z.ZodObject<{
109
- max: z.ZodOptional<z.ZodNumber>;
110
- size: z.ZodOptional<z.ZodEnum<{
111
- xs: "xs";
112
- sm: "sm";
113
- lg: "lg";
114
- xl: "xl";
115
- "2xl": "2xl";
116
- md: "md";
117
- }>>;
118
- spacing: z.ZodOptional<z.ZodEnum<{
119
- normal: "normal";
120
- tight: "tight";
121
- loose: "loose";
122
- }>>;
123
- className: z.ZodOptional<z.ZodString>;
124
- }, z.core.$strict>;
125
- /**
126
- * Avatar group options type
127
- */
128
- export type AvatarGroupOptions = z.infer<typeof AvatarGroupOptionsSchema>;
129
- /**
130
- * Avatar with text options schema
131
- */
132
- export declare const AvatarWithTextOptionsSchema: z.ZodObject<{
133
- src: z.ZodOptional<z.ZodString>;
134
- alt: z.ZodString;
135
- size: z.ZodOptional<z.ZodEnum<{
136
- xs: "xs";
137
- sm: "sm";
138
- lg: "lg";
139
- xl: "xl";
140
- "2xl": "2xl";
141
- md: "md";
142
- }>>;
143
- shape: z.ZodOptional<z.ZodEnum<{
144
- circle: "circle";
145
- square: "square";
146
- rounded: "rounded";
147
- }>>;
148
- status: z.ZodOptional<z.ZodEnum<{
149
- none: "none";
150
- online: "online";
151
- offline: "offline";
152
- busy: "busy";
153
- away: "away";
154
- }>>;
155
- className: z.ZodOptional<z.ZodString>;
156
- href: z.ZodOptional<z.ZodString>;
157
- initials: z.ZodOptional<z.ZodString>;
158
- bgColor: z.ZodOptional<z.ZodString>;
159
- name: z.ZodString;
160
- subtitle: z.ZodOptional<z.ZodString>;
161
- align: z.ZodOptional<z.ZodEnum<{
162
- left: "left";
163
- right: "right";
164
- }>>;
165
- }, z.core.$strict>;
166
- /**
167
- * Avatar with text options type
168
- */
169
- export type AvatarWithTextOptions = z.infer<typeof AvatarWithTextOptionsSchema>;
@@ -1,103 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file avatar.schema.ts
4
- * @description Zod schemas for Avatar component options validation.
5
- *
6
- * Provides strict validation schemas for avatar options including sizes,
7
- * shapes, status indicators, and avatar groups with text.
8
- *
9
- * @example
10
- * ```typescript
11
- * import { AvatarOptionsSchema } from '@frontmcp/ui';
12
- *
13
- * const result = AvatarOptionsSchema.safeParse({
14
- * alt: 'John Doe',
15
- * size: 'lg',
16
- * });
17
- * ```
18
- *
19
- * @module @frontmcp/ui/components/avatar.schema
20
- */
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.AvatarWithTextOptionsSchema = exports.AvatarGroupOptionsSchema = exports.AvatarSpacingSchema = exports.AvatarOptionsSchema = exports.AvatarStatusSchema = exports.AvatarShapeSchema = exports.AvatarSizeSchema = void 0;
23
- const zod_1 = require("zod");
24
- // ============================================
25
- // Size, Shape, and Status Schemas
26
- // ============================================
27
- /**
28
- * Avatar size enum schema
29
- */
30
- exports.AvatarSizeSchema = zod_1.z.enum(['xs', 'sm', 'md', 'lg', 'xl', '2xl']);
31
- /**
32
- * Avatar shape enum schema
33
- */
34
- exports.AvatarShapeSchema = zod_1.z.enum(['circle', 'square', 'rounded']);
35
- /**
36
- * Avatar status enum schema
37
- */
38
- exports.AvatarStatusSchema = zod_1.z.enum(['online', 'offline', 'busy', 'away', 'none']);
39
- // ============================================
40
- // Avatar Options Schema
41
- // ============================================
42
- /**
43
- * Complete avatar options schema
44
- */
45
- exports.AvatarOptionsSchema = zod_1.z
46
- .object({
47
- /** Image source URL */
48
- src: zod_1.z.string().optional(),
49
- /** Alt text / name (required) */
50
- alt: zod_1.z.string(),
51
- /** Avatar size */
52
- size: exports.AvatarSizeSchema.optional(),
53
- /** Avatar shape */
54
- shape: exports.AvatarShapeSchema.optional(),
55
- /** Status indicator */
56
- status: exports.AvatarStatusSchema.optional(),
57
- /** Additional CSS classes */
58
- className: zod_1.z.string().optional(),
59
- /** Click handler URL */
60
- href: zod_1.z.string().optional(),
61
- /** Custom initials (overrides auto-generation) */
62
- initials: zod_1.z.string().optional(),
63
- /** Background color for initials (CSS color) */
64
- bgColor: zod_1.z.string().optional(),
65
- })
66
- .strict();
67
- // ============================================
68
- // Avatar Group Schema
69
- // ============================================
70
- /**
71
- * Avatar group spacing schema
72
- */
73
- exports.AvatarSpacingSchema = zod_1.z.enum(['tight', 'normal', 'loose']);
74
- /**
75
- * Avatar group options schema
76
- */
77
- exports.AvatarGroupOptionsSchema = zod_1.z
78
- .object({
79
- /** Maximum visible avatars */
80
- max: zod_1.z.number().min(1).optional(),
81
- /** Avatar size */
82
- size: exports.AvatarSizeSchema.optional(),
83
- /** Overlap amount */
84
- spacing: exports.AvatarSpacingSchema.optional(),
85
- /** Additional CSS classes */
86
- className: zod_1.z.string().optional(),
87
- })
88
- .strict();
89
- // ============================================
90
- // Avatar with Text Schema
91
- // ============================================
92
- /**
93
- * Avatar with text options schema
94
- */
95
- exports.AvatarWithTextOptionsSchema = exports.AvatarOptionsSchema.extend({
96
- /** Primary text (name) */
97
- name: zod_1.z.string(),
98
- /** Secondary text (email, role, etc.) */
99
- subtitle: zod_1.z.string().optional(),
100
- /** Text alignment */
101
- align: zod_1.z.enum(['left', 'right']).optional(),
102
- }).strict();
103
- //# sourceMappingURL=avatar.schema.js.map