@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,303 +0,0 @@
1
- "use strict";
2
- /**
3
- * Progress and Status Widgets
4
- *
5
- * Components for displaying progress, loading states, and status information.
6
- */
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.progressBar = progressBar;
9
- exports.stepProgress = stepProgress;
10
- exports.circularProgress = circularProgress;
11
- exports.statusIndicator = statusIndicator;
12
- exports.skeleton = skeleton;
13
- exports.contentSkeleton = contentSkeleton;
14
- const base_1 = require("../layouts/base");
15
- /**
16
- * Build a progress bar
17
- */
18
- function progressBar(options) {
19
- const { value, showLabel = true, labelPosition = 'outside', size = 'md', variant = 'primary', animated = false, className = '', label, } = options;
20
- const clampedValue = Math.min(100, Math.max(0, value));
21
- const sizeClasses = {
22
- sm: 'h-1.5',
23
- md: 'h-2.5',
24
- lg: 'h-4',
25
- };
26
- const variantClasses = {
27
- primary: 'bg-primary',
28
- success: 'bg-success',
29
- warning: 'bg-warning',
30
- danger: 'bg-danger',
31
- info: 'bg-blue-500',
32
- };
33
- const animatedClass = animated ? 'bg-stripes animate-stripes' : '';
34
- const displayLabel = label || `${Math.round(clampedValue)}%`;
35
- const insideLabel = labelPosition === 'inside' && size === 'lg' && clampedValue > 10
36
- ? `<span class="absolute inset-0 flex items-center justify-center text-xs font-medium text-white">${(0, base_1.escapeHtml)(displayLabel)}</span>`
37
- : '';
38
- const outsideLabel = showLabel && labelPosition === 'outside'
39
- ? `<div class="flex justify-between mb-1">
40
- <span class="text-sm font-medium text-text-primary">${label ? (0, base_1.escapeHtml)(label) : 'Progress'}</span>
41
- <span class="text-sm text-text-secondary">${Math.round(clampedValue)}%</span>
42
- </div>`
43
- : '';
44
- return `<div class="progress-bar ${className}">
45
- ${outsideLabel}
46
- <div class="relative w-full ${sizeClasses[size]} bg-gray-200 rounded-full overflow-hidden">
47
- <div
48
- class="${variantClasses[variant]} ${sizeClasses[size]} ${animatedClass} rounded-full transition-all duration-300"
49
- style="width: ${clampedValue}%"
50
- role="progressbar"
51
- aria-valuenow="${clampedValue}"
52
- aria-valuemin="0"
53
- aria-valuemax="100"
54
- ></div>
55
- ${insideLabel}
56
- </div>
57
- </div>
58
- ${animated
59
- ? `<style>
60
- .bg-stripes {
61
- background-image: linear-gradient(
62
- 45deg,
63
- rgba(255,255,255,0.15) 25%,
64
- transparent 25%,
65
- transparent 50%,
66
- rgba(255,255,255,0.15) 50%,
67
- rgba(255,255,255,0.15) 75%,
68
- transparent 75%,
69
- transparent
70
- );
71
- background-size: 1rem 1rem;
72
- }
73
- @keyframes stripes {
74
- from { background-position: 1rem 0; }
75
- to { background-position: 0 0; }
76
- }
77
- .animate-stripes {
78
- animation: stripes 1s linear infinite;
79
- }
80
- </style>`
81
- : ''}`;
82
- }
83
- /**
84
- * Build a multi-step progress indicator
85
- */
86
- function stepProgress(options) {
87
- const { steps, orientation = 'horizontal', connector = 'line', className = '' } = options;
88
- const getStepIcon = (step, index) => {
89
- if (step.icon)
90
- return step.icon;
91
- if (step.status === 'completed') {
92
- return `<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
93
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 13l4 4L19 7"/>
94
- </svg>`;
95
- }
96
- return `<span class="font-medium">${index + 1}</span>`;
97
- };
98
- const getStepClasses = (status) => {
99
- switch (status) {
100
- case 'completed':
101
- return {
102
- circle: 'bg-success text-white',
103
- text: 'text-text-primary',
104
- };
105
- case 'current':
106
- return {
107
- circle: 'bg-primary text-white ring-4 ring-primary/20',
108
- text: 'text-primary font-medium',
109
- };
110
- case 'upcoming':
111
- default:
112
- return {
113
- circle: 'bg-gray-200 text-gray-500',
114
- text: 'text-text-secondary',
115
- };
116
- }
117
- };
118
- if (orientation === 'vertical') {
119
- const stepsHtml = steps
120
- .map((step, index) => {
121
- const classes = getStepClasses(step.status);
122
- const isLast = index === steps.length - 1;
123
- const connectorHtml = !isLast && connector !== 'none'
124
- ? `<div class="ml-5 w-0.5 h-8 ${connector === 'dashed' ? 'border-l-2 border-dashed border-gray-300' : 'bg-gray-200'} ${step.status === 'completed' ? 'bg-success' : ''}"></div>`
125
- : '';
126
- const stepContent = `
127
- <div class="flex items-start gap-4">
128
- <div class="w-10 h-10 rounded-full ${classes.circle} flex items-center justify-center flex-shrink-0">
129
- ${getStepIcon(step, index)}
130
- </div>
131
- <div class="pt-2">
132
- <div class="${classes.text}">${(0, base_1.escapeHtml)(step.label)}</div>
133
- ${step.description
134
- ? `<p class="text-sm text-text-secondary mt-0.5">${(0, base_1.escapeHtml)(step.description)}</p>`
135
- : ''}
136
- </div>
137
- </div>
138
- ${connectorHtml}
139
- `;
140
- return step.href && step.status === 'completed'
141
- ? `<a href="${(0, base_1.escapeHtml)(step.href)}" class="block hover:opacity-80">${stepContent}</a>`
142
- : `<div>${stepContent}</div>`;
143
- })
144
- .join('\n');
145
- return `<div class="step-progress ${className}">${stepsHtml}</div>`;
146
- }
147
- // Horizontal orientation
148
- const stepsHtml = steps
149
- .map((step, index) => {
150
- const classes = getStepClasses(step.status);
151
- const isLast = index === steps.length - 1;
152
- const connectorHtml = !isLast && connector !== 'none'
153
- ? `<div class="flex-1 h-0.5 mx-2 ${connector === 'dashed' ? 'border-t-2 border-dashed border-gray-300' : 'bg-gray-200'} ${step.status === 'completed' ? 'bg-success' : ''}"></div>`
154
- : '';
155
- const stepHtml = `
156
- <div class="flex flex-col items-center">
157
- <div class="w-10 h-10 rounded-full ${classes.circle} flex items-center justify-center">
158
- ${getStepIcon(step, index)}
159
- </div>
160
- <div class="mt-2 text-center">
161
- <div class="${classes.text} text-sm">${(0, base_1.escapeHtml)(step.label)}</div>
162
- ${step.description
163
- ? `<p class="text-xs text-text-secondary mt-0.5 max-w-[120px]">${(0, base_1.escapeHtml)(step.description)}</p>`
164
- : ''}
165
- </div>
166
- </div>
167
- `;
168
- const clickableStep = step.href && step.status === 'completed'
169
- ? `<a href="${(0, base_1.escapeHtml)(step.href)}" class="hover:opacity-80">${stepHtml}</a>`
170
- : stepHtml;
171
- return `${clickableStep}${connectorHtml}`;
172
- })
173
- .join('\n');
174
- return `<div class="step-progress flex items-start ${className}">${stepsHtml}</div>`;
175
- }
176
- /**
177
- * Build a circular progress indicator
178
- */
179
- function circularProgress(options) {
180
- const { value, size = 80, strokeWidth = 8, variant = 'primary', showLabel = true, label, className = '' } = options;
181
- const clampedValue = Math.min(100, Math.max(0, value));
182
- const radius = (size - strokeWidth) / 2;
183
- const circumference = radius * 2 * Math.PI;
184
- const offset = circumference - (clampedValue / 100) * circumference;
185
- const variantColors = {
186
- primary: 'text-primary',
187
- success: 'text-success',
188
- warning: 'text-warning',
189
- danger: 'text-danger',
190
- };
191
- const displayLabel = label || `${Math.round(clampedValue)}%`;
192
- return `<div class="circular-progress inline-flex items-center justify-center ${className}" style="width: ${size}px; height: ${size}px;">
193
- <svg class="transform -rotate-90" width="${size}" height="${size}">
194
- <!-- Background circle -->
195
- <circle
196
- cx="${size / 2}"
197
- cy="${size / 2}"
198
- r="${radius}"
199
- fill="none"
200
- stroke="currentColor"
201
- stroke-width="${strokeWidth}"
202
- class="text-gray-200"
203
- />
204
- <!-- Progress circle -->
205
- <circle
206
- cx="${size / 2}"
207
- cy="${size / 2}"
208
- r="${radius}"
209
- fill="none"
210
- stroke="currentColor"
211
- stroke-width="${strokeWidth}"
212
- stroke-linecap="round"
213
- class="${variantColors[variant]}"
214
- style="stroke-dasharray: ${circumference}; stroke-dashoffset: ${offset}; transition: stroke-dashoffset 0.3s ease;"
215
- />
216
- </svg>
217
- ${showLabel
218
- ? `<span class="absolute text-sm font-semibold text-text-primary">${(0, base_1.escapeHtml)(displayLabel)}</span>`
219
- : ''}
220
- </div>`;
221
- }
222
- /**
223
- * Build a status indicator
224
- */
225
- function statusIndicator(options) {
226
- const { status, label, size = 'md', pulse = false, className = '' } = options;
227
- const sizeClasses = {
228
- sm: { dot: 'w-2 h-2', text: 'text-xs' },
229
- md: { dot: 'w-2.5 h-2.5', text: 'text-sm' },
230
- lg: { dot: 'w-3 h-3', text: 'text-base' },
231
- };
232
- const statusClasses = {
233
- online: { color: 'bg-success', label: 'Online' },
234
- offline: { color: 'bg-gray-400', label: 'Offline' },
235
- busy: { color: 'bg-danger', label: 'Busy' },
236
- away: { color: 'bg-warning', label: 'Away' },
237
- loading: { color: 'bg-blue-500', label: 'Loading' },
238
- error: { color: 'bg-danger', label: 'Error' },
239
- success: { color: 'bg-success', label: 'Success' },
240
- };
241
- const statusInfo = statusClasses[status];
242
- const sizeInfo = sizeClasses[size];
243
- const displayLabel = label || statusInfo.label;
244
- const pulseHtml = pulse || status === 'loading'
245
- ? `<span class="absolute ${sizeInfo.dot} ${statusInfo.color} rounded-full animate-ping opacity-75"></span>`
246
- : '';
247
- return `<div class="status-indicator inline-flex items-center gap-2 ${className}">
248
- <span class="relative flex">
249
- ${pulseHtml}
250
- <span class="relative ${sizeInfo.dot} ${statusInfo.color} rounded-full"></span>
251
- </span>
252
- ${displayLabel ? `<span class="${sizeInfo.text} text-text-secondary">${(0, base_1.escapeHtml)(displayLabel)}</span>` : ''}
253
- </div>`;
254
- }
255
- /**
256
- * Build a skeleton loader
257
- */
258
- function skeleton(options = {}) {
259
- const { type = 'text', width, height, lines = 3, animated = true, className = '' } = options;
260
- const animateClass = animated ? 'animate-pulse' : '';
261
- const baseClass = `bg-gray-200 ${animateClass}`;
262
- switch (type) {
263
- case 'circle':
264
- return `<div class="${baseClass} rounded-full ${className}" style="width: ${width || '40px'}; height: ${height || '40px'}"></div>`;
265
- case 'rect':
266
- return `<div class="${baseClass} rounded ${className}" style="width: ${width || '100%'}; height: ${height || '100px'}"></div>`;
267
- case 'card':
268
- return `<div class="${animateClass} space-y-4 ${className}">
269
- <div class="bg-gray-200 rounded h-40"></div>
270
- <div class="space-y-2">
271
- <div class="bg-gray-200 h-4 rounded w-3/4"></div>
272
- <div class="bg-gray-200 h-4 rounded w-1/2"></div>
273
- </div>
274
- </div>`;
275
- case 'text':
276
- default:
277
- const linesHtml = Array(lines)
278
- .fill(0)
279
- .map((_, i) => {
280
- const lineWidth = i === lines - 1 ? '60%' : i === 0 ? '90%' : '80%';
281
- return `<div class="bg-gray-200 h-4 rounded" style="width: ${lineWidth}"></div>`;
282
- })
283
- .join('\n');
284
- return `<div class="${animateClass} space-y-2 ${className}" style="width: ${width || '100%'}">
285
- ${linesHtml}
286
- </div>`;
287
- }
288
- }
289
- /**
290
- * Build a content skeleton with avatar and text
291
- */
292
- function contentSkeleton(options = {}) {
293
- const { animated = true, className = '' } = options;
294
- const animateClass = animated ? 'animate-pulse' : '';
295
- return `<div class="${animateClass} flex gap-4 ${className}">
296
- <div class="bg-gray-200 rounded-full w-12 h-12 flex-shrink-0"></div>
297
- <div class="flex-1 space-y-2 py-1">
298
- <div class="bg-gray-200 h-4 rounded w-3/4"></div>
299
- <div class="bg-gray-200 h-4 rounded w-1/2"></div>
300
- </div>
301
- </div>`;
302
- }
303
- //# sourceMappingURL=progress.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"progress.js","sourceRoot":"","sources":["../../../src/widgets/progress.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Progress and Status Widgets\n *\n * Components for displaying progress, loading states, and status information.\n */\n\nimport { escapeHtml } from '../layouts/base';\n\n// ============================================\n// Progress Bar\n// ============================================\n\n/**\n * Progress bar options\n */\nexport interface ProgressBarOptions {\n /** Progress value (0-100) */\n value: number;\n /** Show percentage text */\n showLabel?: boolean;\n /** Label position */\n labelPosition?: 'inside' | 'outside' | 'none';\n /** Size */\n size?: 'sm' | 'md' | 'lg';\n /** Color variant */\n variant?: 'primary' | 'success' | 'warning' | 'danger' | 'info';\n /** Animated (striped) */\n animated?: boolean;\n /** Additional CSS classes */\n className?: string;\n /** Custom label */\n label?: string;\n}\n\n/**\n * Build a progress bar\n */\nexport function progressBar(options: ProgressBarOptions): string {\n const {\n value,\n showLabel = true,\n labelPosition = 'outside',\n size = 'md',\n variant = 'primary',\n animated = false,\n className = '',\n label,\n } = options;\n\n const clampedValue = Math.min(100, Math.max(0, value));\n\n const sizeClasses: Record<string, string> = {\n sm: 'h-1.5',\n md: 'h-2.5',\n lg: 'h-4',\n };\n\n const variantClasses: Record<string, string> = {\n primary: 'bg-primary',\n success: 'bg-success',\n warning: 'bg-warning',\n danger: 'bg-danger',\n info: 'bg-blue-500',\n };\n\n const animatedClass = animated ? 'bg-stripes animate-stripes' : '';\n\n const displayLabel = label || `${Math.round(clampedValue)}%`;\n\n const insideLabel =\n labelPosition === 'inside' && size === 'lg' && clampedValue > 10\n ? `<span class=\"absolute inset-0 flex items-center justify-center text-xs font-medium text-white\">${escapeHtml(\n displayLabel,\n )}</span>`\n : '';\n\n const outsideLabel =\n showLabel && labelPosition === 'outside'\n ? `<div class=\"flex justify-between mb-1\">\n <span class=\"text-sm font-medium text-text-primary\">${label ? escapeHtml(label) : 'Progress'}</span>\n <span class=\"text-sm text-text-secondary\">${Math.round(clampedValue)}%</span>\n </div>`\n : '';\n\n return `<div class=\"progress-bar ${className}\">\n ${outsideLabel}\n <div class=\"relative w-full ${sizeClasses[size]} bg-gray-200 rounded-full overflow-hidden\">\n <div\n class=\"${variantClasses[variant]} ${\n sizeClasses[size]\n } ${animatedClass} rounded-full transition-all duration-300\"\n style=\"width: ${clampedValue}%\"\n role=\"progressbar\"\n aria-valuenow=\"${clampedValue}\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n ></div>\n ${insideLabel}\n </div>\n </div>\n ${\n animated\n ? `<style>\n .bg-stripes {\n background-image: linear-gradient(\n 45deg,\n rgba(255,255,255,0.15) 25%,\n transparent 25%,\n transparent 50%,\n rgba(255,255,255,0.15) 50%,\n rgba(255,255,255,0.15) 75%,\n transparent 75%,\n transparent\n );\n background-size: 1rem 1rem;\n }\n @keyframes stripes {\n from { background-position: 1rem 0; }\n to { background-position: 0 0; }\n }\n .animate-stripes {\n animation: stripes 1s linear infinite;\n }\n </style>`\n : ''\n }`;\n}\n\n// ============================================\n// Multi-Step Progress\n// ============================================\n\n/**\n * Step definition\n */\nexport interface Step {\n /** Step label */\n label: string;\n /** Step description */\n description?: string;\n /** Step status */\n status: 'completed' | 'current' | 'upcoming';\n /** Icon (optional) */\n icon?: string;\n /** URL for clickable steps */\n href?: string;\n}\n\n/**\n * Multi-step progress options\n */\nexport interface StepProgressOptions {\n /** Steps */\n steps: Step[];\n /** Orientation */\n orientation?: 'horizontal' | 'vertical';\n /** Connector style */\n connector?: 'line' | 'dashed' | 'none';\n /** Additional CSS classes */\n className?: string;\n}\n\n/**\n * Build a multi-step progress indicator\n */\nexport function stepProgress(options: StepProgressOptions): string {\n const { steps, orientation = 'horizontal', connector = 'line', className = '' } = options;\n\n const getStepIcon = (step: Step, index: number): string => {\n if (step.icon) return step.icon;\n\n if (step.status === 'completed') {\n return `<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=\"M5 13l4 4L19 7\"/>\n </svg>`;\n }\n\n return `<span class=\"font-medium\">${index + 1}</span>`;\n };\n\n const getStepClasses = (status: Step['status']): { circle: string; text: string } => {\n switch (status) {\n case 'completed':\n return {\n circle: 'bg-success text-white',\n text: 'text-text-primary',\n };\n case 'current':\n return {\n circle: 'bg-primary text-white ring-4 ring-primary/20',\n text: 'text-primary font-medium',\n };\n case 'upcoming':\n default:\n return {\n circle: 'bg-gray-200 text-gray-500',\n text: 'text-text-secondary',\n };\n }\n };\n\n if (orientation === 'vertical') {\n const stepsHtml = steps\n .map((step, index) => {\n const classes = getStepClasses(step.status);\n const isLast = index === steps.length - 1;\n\n const connectorHtml =\n !isLast && connector !== 'none'\n ? `<div class=\"ml-5 w-0.5 h-8 ${\n connector === 'dashed' ? 'border-l-2 border-dashed border-gray-300' : 'bg-gray-200'\n } ${step.status === 'completed' ? 'bg-success' : ''}\"></div>`\n : '';\n\n const stepContent = `\n <div class=\"flex items-start gap-4\">\n <div class=\"w-10 h-10 rounded-full ${classes.circle} flex items-center justify-center flex-shrink-0\">\n ${getStepIcon(step, index)}\n </div>\n <div class=\"pt-2\">\n <div class=\"${classes.text}\">${escapeHtml(step.label)}</div>\n ${\n step.description\n ? `<p class=\"text-sm text-text-secondary mt-0.5\">${escapeHtml(step.description)}</p>`\n : ''\n }\n </div>\n </div>\n ${connectorHtml}\n `;\n\n return step.href && step.status === 'completed'\n ? `<a href=\"${escapeHtml(step.href)}\" class=\"block hover:opacity-80\">${stepContent}</a>`\n : `<div>${stepContent}</div>`;\n })\n .join('\\n');\n\n return `<div class=\"step-progress ${className}\">${stepsHtml}</div>`;\n }\n\n // Horizontal orientation\n const stepsHtml = steps\n .map((step, index) => {\n const classes = getStepClasses(step.status);\n const isLast = index === steps.length - 1;\n\n const connectorHtml =\n !isLast && connector !== 'none'\n ? `<div class=\"flex-1 h-0.5 mx-2 ${\n connector === 'dashed' ? 'border-t-2 border-dashed border-gray-300' : 'bg-gray-200'\n } ${step.status === 'completed' ? 'bg-success' : ''}\"></div>`\n : '';\n\n const stepHtml = `\n <div class=\"flex flex-col items-center\">\n <div class=\"w-10 h-10 rounded-full ${classes.circle} flex items-center justify-center\">\n ${getStepIcon(step, index)}\n </div>\n <div class=\"mt-2 text-center\">\n <div class=\"${classes.text} text-sm\">${escapeHtml(step.label)}</div>\n ${\n step.description\n ? `<p class=\"text-xs text-text-secondary mt-0.5 max-w-[120px]\">${escapeHtml(step.description)}</p>`\n : ''\n }\n </div>\n </div>\n `;\n\n const clickableStep =\n step.href && step.status === 'completed'\n ? `<a href=\"${escapeHtml(step.href)}\" class=\"hover:opacity-80\">${stepHtml}</a>`\n : stepHtml;\n\n return `${clickableStep}${connectorHtml}`;\n })\n .join('\\n');\n\n return `<div class=\"step-progress flex items-start ${className}\">${stepsHtml}</div>`;\n}\n\n// ============================================\n// Circular Progress\n// ============================================\n\n/**\n * Circular progress options\n */\nexport interface CircularProgressOptions {\n /** Progress value (0-100) */\n value: number;\n /** Size in pixels */\n size?: number;\n /** Stroke width */\n strokeWidth?: number;\n /** Color variant */\n variant?: 'primary' | 'success' | 'warning' | 'danger';\n /** Show percentage */\n showLabel?: boolean;\n /** Custom label */\n label?: string;\n /** Additional CSS classes */\n className?: string;\n}\n\n/**\n * Build a circular progress indicator\n */\nexport function circularProgress(options: CircularProgressOptions): string {\n const { value, size = 80, strokeWidth = 8, variant = 'primary', showLabel = true, label, className = '' } = options;\n\n const clampedValue = Math.min(100, Math.max(0, value));\n const radius = (size - strokeWidth) / 2;\n const circumference = radius * 2 * Math.PI;\n const offset = circumference - (clampedValue / 100) * circumference;\n\n const variantColors: Record<string, string> = {\n primary: 'text-primary',\n success: 'text-success',\n warning: 'text-warning',\n danger: 'text-danger',\n };\n\n const displayLabel = label || `${Math.round(clampedValue)}%`;\n\n return `<div class=\"circular-progress inline-flex items-center justify-center ${className}\" style=\"width: ${size}px; height: ${size}px;\">\n <svg class=\"transform -rotate-90\" width=\"${size}\" height=\"${size}\">\n <!-- Background circle -->\n <circle\n cx=\"${size / 2}\"\n cy=\"${size / 2}\"\n r=\"${radius}\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"${strokeWidth}\"\n class=\"text-gray-200\"\n />\n <!-- Progress circle -->\n <circle\n cx=\"${size / 2}\"\n cy=\"${size / 2}\"\n r=\"${radius}\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"${strokeWidth}\"\n stroke-linecap=\"round\"\n class=\"${variantColors[variant]}\"\n style=\"stroke-dasharray: ${circumference}; stroke-dashoffset: ${offset}; transition: stroke-dashoffset 0.3s ease;\"\n />\n </svg>\n ${\n showLabel\n ? `<span class=\"absolute text-sm font-semibold text-text-primary\">${escapeHtml(displayLabel)}</span>`\n : ''\n }\n </div>`;\n}\n\n// ============================================\n// Status Indicator\n// ============================================\n\n/**\n * Status indicator options\n */\nexport interface StatusIndicatorOptions {\n /** Status state */\n status: 'online' | 'offline' | 'busy' | 'away' | 'loading' | 'error' | 'success';\n /** Status label */\n label?: string;\n /** Size */\n size?: 'sm' | 'md' | 'lg';\n /** Show pulse animation */\n pulse?: boolean;\n /** Additional CSS classes */\n className?: string;\n}\n\n/**\n * Build a status indicator\n */\nexport function statusIndicator(options: StatusIndicatorOptions): string {\n const { status, label, size = 'md', pulse = false, className = '' } = options;\n\n const sizeClasses: Record<string, { dot: string; text: string }> = {\n sm: { dot: 'w-2 h-2', text: 'text-xs' },\n md: { dot: 'w-2.5 h-2.5', text: 'text-sm' },\n lg: { dot: 'w-3 h-3', text: 'text-base' },\n };\n\n const statusClasses: Record<string, { color: string; label: string }> = {\n online: { color: 'bg-success', label: 'Online' },\n offline: { color: 'bg-gray-400', label: 'Offline' },\n busy: { color: 'bg-danger', label: 'Busy' },\n away: { color: 'bg-warning', label: 'Away' },\n loading: { color: 'bg-blue-500', label: 'Loading' },\n error: { color: 'bg-danger', label: 'Error' },\n success: { color: 'bg-success', label: 'Success' },\n };\n\n const statusInfo = statusClasses[status];\n const sizeInfo = sizeClasses[size];\n const displayLabel = label || statusInfo.label;\n\n const pulseHtml =\n pulse || status === 'loading'\n ? `<span class=\"absolute ${sizeInfo.dot} ${statusInfo.color} rounded-full animate-ping opacity-75\"></span>`\n : '';\n\n return `<div class=\"status-indicator inline-flex items-center gap-2 ${className}\">\n <span class=\"relative flex\">\n ${pulseHtml}\n <span class=\"relative ${sizeInfo.dot} ${statusInfo.color} rounded-full\"></span>\n </span>\n ${displayLabel ? `<span class=\"${sizeInfo.text} text-text-secondary\">${escapeHtml(displayLabel)}</span>` : ''}\n </div>`;\n}\n\n// ============================================\n// Skeleton Loader\n// ============================================\n\n/**\n * Skeleton loader options\n */\nexport interface SkeletonOptions {\n /** Skeleton type */\n type?: 'text' | 'circle' | 'rect' | 'card';\n /** Width (CSS value) */\n width?: string;\n /** Height (CSS value) */\n height?: string;\n /** Number of text lines */\n lines?: number;\n /** Animated */\n animated?: boolean;\n /** Additional CSS classes */\n className?: string;\n}\n\n/**\n * Build a skeleton loader\n */\nexport function skeleton(options: SkeletonOptions = {}): string {\n const { type = 'text', width, height, lines = 3, animated = true, className = '' } = options;\n\n const animateClass = animated ? 'animate-pulse' : '';\n const baseClass = `bg-gray-200 ${animateClass}`;\n\n switch (type) {\n case 'circle':\n return `<div class=\"${baseClass} rounded-full ${className}\" style=\"width: ${width || '40px'}; height: ${\n height || '40px'\n }\"></div>`;\n\n case 'rect':\n return `<div class=\"${baseClass} rounded ${className}\" style=\"width: ${width || '100%'}; height: ${\n height || '100px'\n }\"></div>`;\n\n case 'card':\n return `<div class=\"${animateClass} space-y-4 ${className}\">\n <div class=\"bg-gray-200 rounded h-40\"></div>\n <div class=\"space-y-2\">\n <div class=\"bg-gray-200 h-4 rounded w-3/4\"></div>\n <div class=\"bg-gray-200 h-4 rounded w-1/2\"></div>\n </div>\n </div>`;\n\n case 'text':\n default:\n const linesHtml = Array(lines)\n .fill(0)\n .map((_, i) => {\n const lineWidth = i === lines - 1 ? '60%' : i === 0 ? '90%' : '80%';\n return `<div class=\"bg-gray-200 h-4 rounded\" style=\"width: ${lineWidth}\"></div>`;\n })\n .join('\\n');\n\n return `<div class=\"${animateClass} space-y-2 ${className}\" style=\"width: ${width || '100%'}\">\n ${linesHtml}\n </div>`;\n }\n}\n\n/**\n * Build a content skeleton with avatar and text\n */\nexport function contentSkeleton(options: { animated?: boolean; className?: string } = {}): string {\n const { animated = true, className = '' } = options;\n const animateClass = animated ? 'animate-pulse' : '';\n\n return `<div class=\"${animateClass} flex gap-4 ${className}\">\n <div class=\"bg-gray-200 rounded-full w-12 h-12 flex-shrink-0\"></div>\n <div class=\"flex-1 space-y-2 py-1\">\n <div class=\"bg-gray-200 h-4 rounded w-3/4\"></div>\n <div class=\"bg-gray-200 h-4 rounded w-1/2\"></div>\n </div>\n </div>`;\n}\n"]}
@@ -1,162 +0,0 @@
1
- /**
2
- * OpenAI App SDK Resource Widgets
3
- *
4
- * Components for displaying resources in OpenAI's App SDK format.
5
- * These widgets are designed to work with OpenAI Canvas and similar interfaces.
6
- */
7
- import { type CardOptions } from '../components/card';
8
- import { type BadgeVariant } from '../components/badge';
9
- /**
10
- * Resource type identifiers
11
- */
12
- export type ResourceType = 'document' | 'image' | 'code' | 'data' | 'file' | 'link' | 'user' | 'event' | 'message' | 'task' | 'custom';
13
- /**
14
- * Resource metadata
15
- */
16
- export interface ResourceMeta {
17
- /** Creation timestamp */
18
- createdAt?: string | Date;
19
- /** Last modified timestamp */
20
- updatedAt?: string | Date;
21
- /** Author/creator */
22
- author?: string;
23
- /** File size (bytes) */
24
- size?: number;
25
- /** MIME type */
26
- mimeType?: string;
27
- /** Tags */
28
- tags?: string[];
29
- /** Custom metadata */
30
- [key: string]: unknown;
31
- }
32
- /**
33
- * Resource action
34
- */
35
- export interface ResourceAction {
36
- /** Action label */
37
- label: string;
38
- /** Action icon */
39
- icon?: string;
40
- /** Action URL */
41
- href?: string;
42
- /** HTMX attributes */
43
- htmx?: {
44
- get?: string;
45
- post?: string;
46
- delete?: string;
47
- target?: string;
48
- swap?: string;
49
- confirm?: string;
50
- };
51
- /** Variant */
52
- variant?: 'primary' | 'secondary' | 'danger' | 'ghost';
53
- /** Disabled */
54
- disabled?: boolean;
55
- }
56
- /**
57
- * Base resource options
58
- */
59
- export interface ResourceOptions {
60
- /** Resource type */
61
- type: ResourceType;
62
- /** Resource title */
63
- title: string;
64
- /** Resource description */
65
- description?: string;
66
- /** Resource icon */
67
- icon?: string;
68
- /** Resource thumbnail URL */
69
- thumbnail?: string;
70
- /** Resource URL */
71
- url?: string;
72
- /** Resource metadata */
73
- meta?: ResourceMeta;
74
- /** Resource status */
75
- status?: {
76
- label: string;
77
- variant: BadgeVariant;
78
- };
79
- /** Available actions */
80
- actions?: ResourceAction[];
81
- /** Additional CSS classes */
82
- className?: string;
83
- /** Card options */
84
- cardOptions?: Partial<CardOptions>;
85
- }
86
- /**
87
- * Build a resource widget
88
- */
89
- export declare function resourceWidget(options: ResourceOptions): string;
90
- /**
91
- * Resource list options
92
- */
93
- export interface ResourceListOptions {
94
- /** Resources to display */
95
- resources: ResourceOptions[];
96
- /** List title */
97
- title?: string;
98
- /** Empty state message */
99
- emptyMessage?: string;
100
- /** Grid or list layout */
101
- layout?: 'list' | 'grid';
102
- /** Grid columns */
103
- columns?: 1 | 2 | 3 | 4;
104
- /** Additional CSS classes */
105
- className?: string;
106
- /** Show load more button */
107
- showLoadMore?: boolean;
108
- /** Load more URL */
109
- loadMoreUrl?: string;
110
- }
111
- /**
112
- * Build a resource list widget
113
- */
114
- export declare function resourceList(options: ResourceListOptions): string;
115
- /**
116
- * Build a compact resource item (for inline display)
117
- */
118
- export declare function resourceItem(options: Omit<ResourceOptions, 'cardOptions'>): string;
119
- /**
120
- * Code preview options
121
- */
122
- export interface CodePreviewOptions {
123
- /** Code content */
124
- code: string;
125
- /** Language */
126
- language?: string;
127
- /** Filename */
128
- filename?: string;
129
- /** Show line numbers */
130
- lineNumbers?: boolean;
131
- /** Max height */
132
- maxHeight?: string;
133
- /** Copy button */
134
- showCopy?: boolean;
135
- /** Additional CSS classes */
136
- className?: string;
137
- }
138
- /**
139
- * Build a code preview widget
140
- */
141
- export declare function codePreview(options: CodePreviewOptions): string;
142
- /**
143
- * Image preview options
144
- */
145
- export interface ImagePreviewOptions {
146
- /** Image URL */
147
- src: string;
148
- /** Alt text */
149
- alt: string;
150
- /** Caption */
151
- caption?: string;
152
- /** Max height */
153
- maxHeight?: string;
154
- /** Clickable (opens in new tab) */
155
- clickable?: boolean;
156
- /** Additional CSS classes */
157
- className?: string;
158
- }
159
- /**
160
- * Build an image preview widget
161
- */
162
- export declare function imagePreview(options: ImagePreviewOptions): string;