@frontmcp/ui 0.12.2 → 1.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (310) hide show
  1. package/README.md +279 -72
  2. package/bridge/adapters/claude.adapter.d.ts.map +1 -1
  3. package/bridge/adapters/gemini.adapter.d.ts.map +1 -1
  4. package/bridge/index.js +2 -36
  5. package/components/Alert/Alert.d.ts +11 -0
  6. package/components/Alert/Alert.d.ts.map +1 -0
  7. package/components/Alert/index.d.ts +4 -0
  8. package/components/Alert/index.d.ts.map +1 -0
  9. package/components/Alert/index.js +61 -0
  10. package/components/Avatar/Avatar.d.ts +10 -0
  11. package/components/Avatar/Avatar.d.ts.map +1 -0
  12. package/components/Avatar/index.d.ts +4 -0
  13. package/components/Avatar/index.d.ts.map +1 -0
  14. package/components/Avatar/index.js +43 -0
  15. package/components/Badge/Badge.d.ts +13 -0
  16. package/components/Badge/Badge.d.ts.map +1 -0
  17. package/components/Badge/index.d.ts +4 -0
  18. package/components/Badge/index.d.ts.map +1 -0
  19. package/{render → components/Badge}/index.js +54 -42
  20. package/components/Button/Button.d.ts +16 -0
  21. package/components/Button/Button.d.ts.map +1 -0
  22. package/components/Button/index.d.ts +4 -0
  23. package/components/Button/index.d.ts.map +1 -0
  24. package/components/Button/index.js +91 -0
  25. package/components/Card/Card.d.ts +25 -0
  26. package/components/Card/Card.d.ts.map +1 -0
  27. package/components/Card/index.d.ts +4 -0
  28. package/components/Card/index.d.ts.map +1 -0
  29. package/components/Card/index.js +110 -0
  30. package/components/List/List.d.ts +15 -0
  31. package/components/List/List.d.ts.map +1 -0
  32. package/components/List/index.d.ts +4 -0
  33. package/components/List/index.d.ts.map +1 -0
  34. package/components/List/index.js +58 -0
  35. package/components/Loader/Loader.d.ts +28 -0
  36. package/components/Loader/Loader.d.ts.map +1 -0
  37. package/components/Loader/LoaderContext.d.ts +20 -0
  38. package/components/Loader/LoaderContext.d.ts.map +1 -0
  39. package/components/Loader/index.d.ts +6 -0
  40. package/components/Loader/index.d.ts.map +1 -0
  41. package/components/Loader/index.js +174 -0
  42. package/components/Modal/Modal.d.ts +22 -0
  43. package/components/Modal/Modal.d.ts.map +1 -0
  44. package/components/Modal/index.d.ts +4 -0
  45. package/components/Modal/index.d.ts.map +1 -0
  46. package/components/Modal/index.js +80 -0
  47. package/components/Select/Select.d.ts +21 -0
  48. package/components/Select/Select.d.ts.map +1 -0
  49. package/components/Select/index.d.ts +4 -0
  50. package/components/Select/index.d.ts.map +1 -0
  51. package/components/Select/index.js +78 -0
  52. package/components/Table/Table.d.ts +15 -0
  53. package/components/Table/Table.d.ts.map +1 -0
  54. package/components/Table/index.d.ts +4 -0
  55. package/components/Table/index.d.ts.map +1 -0
  56. package/components/Table/index.js +70 -0
  57. package/components/TextField/TextField.d.ts +19 -0
  58. package/components/TextField/TextField.d.ts.map +1 -0
  59. package/components/TextField/index.d.ts +4 -0
  60. package/components/TextField/index.d.ts.map +1 -0
  61. package/components/TextField/index.js +77 -0
  62. package/components/index.d.ts +22 -28
  63. package/components/index.d.ts.map +1 -1
  64. package/components/index.js +523 -2521
  65. package/esm/bridge/index.mjs +2 -6
  66. package/esm/components/Alert/index.mjs +28 -0
  67. package/esm/components/Avatar/index.mjs +10 -0
  68. package/esm/components/Badge/index.mjs +56 -0
  69. package/esm/components/Button/index.mjs +58 -0
  70. package/esm/components/Card/index.mjs +77 -0
  71. package/esm/components/List/index.mjs +25 -0
  72. package/esm/components/Loader/index.mjs +141 -0
  73. package/esm/components/Modal/index.mjs +47 -0
  74. package/esm/components/Select/index.mjs +45 -0
  75. package/esm/components/Table/index.mjs +37 -0
  76. package/esm/components/TextField/index.mjs +44 -0
  77. package/esm/components/index.mjs +513 -2415
  78. package/esm/index.mjs +62 -4652
  79. package/esm/package.json +372 -16
  80. package/esm/react/index.mjs +2 -285
  81. package/esm/renderer/charts/index.mjs +336 -0
  82. package/esm/renderer/common/index.mjs +135 -0
  83. package/esm/renderer/csv/index.mjs +193 -0
  84. package/esm/renderer/flow/index.mjs +259 -0
  85. package/esm/renderer/html/index.mjs +99 -0
  86. package/esm/renderer/image/index.mjs +125 -0
  87. package/esm/renderer/index.mjs +2173 -0
  88. package/esm/renderer/maps/index.mjs +217 -0
  89. package/esm/renderer/math/index.mjs +229 -0
  90. package/esm/renderer/mdx/index.mjs +261 -0
  91. package/esm/renderer/media/index.mjs +235 -0
  92. package/esm/renderer/mermaid/index.mjs +220 -0
  93. package/esm/renderer/pdf/index.mjs +229 -0
  94. package/esm/renderer/react/index.mjs +230 -0
  95. package/esm/runtime/index.mjs +194 -0
  96. package/esm/theme/index.mjs +93 -0
  97. package/index.d.ts +10 -18
  98. package/index.d.ts.map +1 -1
  99. package/index.js +63 -4806
  100. package/package.json +372 -16
  101. package/react/index.d.ts +8 -54
  102. package/react/index.d.ts.map +1 -1
  103. package/react/index.js +2 -295
  104. package/renderer/auto-detect.d.ts +39 -0
  105. package/renderer/auto-detect.d.ts.map +1 -0
  106. package/renderer/charts/index.d.ts +22 -0
  107. package/renderer/charts/index.d.ts.map +1 -0
  108. package/renderer/charts/index.js +367 -0
  109. package/renderer/common/index.d.ts +5 -0
  110. package/renderer/common/index.d.ts.map +1 -0
  111. package/renderer/common/index.js +158 -0
  112. package/renderer/common/inject-stylesheet.d.ts +9 -0
  113. package/renderer/common/inject-stylesheet.d.ts.map +1 -0
  114. package/renderer/common/lazy-import.d.ts +85 -0
  115. package/renderer/common/lazy-import.d.ts.map +1 -0
  116. package/renderer/common/use-lazy-module.d.ts +13 -0
  117. package/renderer/common/use-lazy-module.d.ts.map +1 -0
  118. package/renderer/common/use-renderer-theme.d.ts +35 -0
  119. package/renderer/common/use-renderer-theme.d.ts.map +1 -0
  120. package/renderer/csv/index.d.ts +12 -0
  121. package/renderer/csv/index.d.ts.map +1 -0
  122. package/renderer/csv/index.js +224 -0
  123. package/renderer/flow/index.d.ts +40 -0
  124. package/renderer/flow/index.d.ts.map +1 -0
  125. package/renderer/flow/index.js +290 -0
  126. package/renderer/html/index.d.ts +12 -0
  127. package/renderer/html/index.d.ts.map +1 -0
  128. package/renderer/html/index.js +130 -0
  129. package/renderer/image/index.d.ts +11 -0
  130. package/renderer/image/index.d.ts.map +1 -0
  131. package/renderer/image/index.js +156 -0
  132. package/renderer/index.d.ts +32 -0
  133. package/renderer/index.d.ts.map +1 -0
  134. package/renderer/index.js +2206 -0
  135. package/renderer/maps/index.d.ts +27 -0
  136. package/renderer/maps/index.d.ts.map +1 -0
  137. package/renderer/maps/index.js +248 -0
  138. package/renderer/math/index.d.ts +11 -0
  139. package/renderer/math/index.d.ts.map +1 -0
  140. package/renderer/math/index.js +260 -0
  141. package/renderer/mdx/index.d.ts +10 -0
  142. package/renderer/mdx/index.d.ts.map +1 -0
  143. package/renderer/mdx/index.js +292 -0
  144. package/renderer/media/index.d.ts +20 -0
  145. package/renderer/media/index.d.ts.map +1 -0
  146. package/renderer/media/index.js +266 -0
  147. package/renderer/mermaid/index.d.ts +11 -0
  148. package/renderer/mermaid/index.d.ts.map +1 -0
  149. package/renderer/mermaid/index.js +251 -0
  150. package/renderer/pdf/index.d.ts +10 -0
  151. package/renderer/pdf/index.d.ts.map +1 -0
  152. package/renderer/pdf/index.js +260 -0
  153. package/renderer/react/index.d.ts +45 -0
  154. package/renderer/react/index.d.ts.map +1 -0
  155. package/renderer/react/index.js +261 -0
  156. package/renderer/types.d.ts +24 -0
  157. package/renderer/types.d.ts.map +1 -0
  158. package/runtime/babel-runtime.d.ts +70 -0
  159. package/runtime/babel-runtime.d.ts.map +1 -0
  160. package/runtime/content-detector.d.ts +43 -0
  161. package/runtime/content-detector.d.ts.map +1 -0
  162. package/runtime/index.d.ts +10 -0
  163. package/runtime/index.d.ts.map +1 -0
  164. package/runtime/index.js +217 -0
  165. package/theme/FrontMcpThemeProvider.d.ts +4 -0
  166. package/theme/FrontMcpThemeProvider.d.ts.map +1 -0
  167. package/theme/create-theme.d.ts +9 -0
  168. package/theme/create-theme.d.ts.map +1 -0
  169. package/theme/index.d.ts +5 -0
  170. package/theme/index.d.ts.map +1 -0
  171. package/theme/index.js +126 -0
  172. package/theme/types.d.ts +28 -0
  173. package/theme/types.d.ts.map +1 -0
  174. package/theme/use-theme.d.ts +3 -0
  175. package/theme/use-theme.d.ts.map +1 -0
  176. package/bundler/browser-components.d.ts +0 -42
  177. package/bundler/browser-components.d.ts.map +0 -1
  178. package/bundler/bundler.d.ts +0 -282
  179. package/bundler/bundler.d.ts.map +0 -1
  180. package/bundler/index.d.ts +0 -43
  181. package/bundler/index.d.ts.map +0 -1
  182. package/bundler/index.js +0 -3168
  183. package/bundler/types.d.ts +0 -883
  184. package/bundler/types.d.ts.map +0 -1
  185. package/components/alert.d.ts +0 -83
  186. package/components/alert.d.ts.map +0 -1
  187. package/components/alert.schema.d.ts +0 -98
  188. package/components/alert.schema.d.ts.map +0 -1
  189. package/components/avatar.d.ts +0 -77
  190. package/components/avatar.d.ts.map +0 -1
  191. package/components/avatar.schema.d.ts +0 -170
  192. package/components/avatar.schema.d.ts.map +0 -1
  193. package/components/badge.d.ts +0 -78
  194. package/components/badge.d.ts.map +0 -1
  195. package/components/badge.schema.d.ts +0 -91
  196. package/components/badge.schema.d.ts.map +0 -1
  197. package/components/button.d.ts +0 -100
  198. package/components/button.d.ts.map +0 -1
  199. package/components/button.schema.d.ts +0 -120
  200. package/components/button.schema.d.ts.map +0 -1
  201. package/components/card.d.ts +0 -76
  202. package/components/card.d.ts.map +0 -1
  203. package/components/card.schema.d.ts +0 -93
  204. package/components/card.schema.d.ts.map +0 -1
  205. package/components/form.d.ts +0 -227
  206. package/components/form.d.ts.map +0 -1
  207. package/components/form.schema.d.ts +0 -365
  208. package/components/form.schema.d.ts.map +0 -1
  209. package/components/list.d.ts +0 -121
  210. package/components/list.d.ts.map +0 -1
  211. package/components/list.schema.d.ts +0 -129
  212. package/components/list.schema.d.ts.map +0 -1
  213. package/components/modal.d.ts +0 -100
  214. package/components/modal.d.ts.map +0 -1
  215. package/components/modal.schema.d.ts +0 -151
  216. package/components/modal.schema.d.ts.map +0 -1
  217. package/components/table.d.ts +0 -91
  218. package/components/table.d.ts.map +0 -1
  219. package/components/table.schema.d.ts +0 -123
  220. package/components/table.schema.d.ts.map +0 -1
  221. package/esm/bundler/index.mjs +0 -3136
  222. package/esm/layouts/index.mjs +0 -409
  223. package/esm/render/index.mjs +0 -45
  224. package/esm/renderers/index.mjs +0 -621
  225. package/esm/universal/index.mjs +0 -1946
  226. package/esm/web-components/index.mjs +0 -2023
  227. package/layouts/base.d.ts +0 -86
  228. package/layouts/base.d.ts.map +0 -1
  229. package/layouts/index.d.ts +0 -8
  230. package/layouts/index.d.ts.map +0 -1
  231. package/layouts/index.js +0 -437
  232. package/layouts/presets.d.ts +0 -134
  233. package/layouts/presets.d.ts.map +0 -1
  234. package/react/Alert.d.ts +0 -101
  235. package/react/Alert.d.ts.map +0 -1
  236. package/react/Badge.d.ts +0 -100
  237. package/react/Badge.d.ts.map +0 -1
  238. package/react/Button.d.ts +0 -108
  239. package/react/Button.d.ts.map +0 -1
  240. package/react/Card.d.ts +0 -103
  241. package/react/Card.d.ts.map +0 -1
  242. package/react/types.d.ts +0 -105
  243. package/react/types.d.ts.map +0 -1
  244. package/render/index.d.ts +0 -8
  245. package/render/index.d.ts.map +0 -1
  246. package/render/prerender.d.ts +0 -57
  247. package/render/prerender.d.ts.map +0 -1
  248. package/renderers/index.d.ts +0 -26
  249. package/renderers/index.d.ts.map +0 -1
  250. package/renderers/index.js +0 -666
  251. package/renderers/mdx.renderer.d.ts +0 -99
  252. package/renderers/mdx.renderer.d.ts.map +0 -1
  253. package/renderers/react.adapter.d.ts +0 -70
  254. package/renderers/react.adapter.d.ts.map +0 -1
  255. package/renderers/react.renderer.d.ts +0 -105
  256. package/renderers/react.renderer.d.ts.map +0 -1
  257. package/renderers/transpiler.d.ts +0 -49
  258. package/renderers/transpiler.d.ts.map +0 -1
  259. package/universal/UniversalApp.d.ts +0 -108
  260. package/universal/UniversalApp.d.ts.map +0 -1
  261. package/universal/cached-runtime.d.ts +0 -139
  262. package/universal/cached-runtime.d.ts.map +0 -1
  263. package/universal/context.d.ts +0 -122
  264. package/universal/context.d.ts.map +0 -1
  265. package/universal/index.d.ts +0 -57
  266. package/universal/index.d.ts.map +0 -1
  267. package/universal/index.js +0 -2032
  268. package/universal/renderers/html.renderer.d.ts +0 -36
  269. package/universal/renderers/html.renderer.d.ts.map +0 -1
  270. package/universal/renderers/index.d.ts +0 -112
  271. package/universal/renderers/index.d.ts.map +0 -1
  272. package/universal/renderers/markdown.renderer.d.ts +0 -33
  273. package/universal/renderers/markdown.renderer.d.ts.map +0 -1
  274. package/universal/renderers/mdx.renderer.d.ts +0 -38
  275. package/universal/renderers/mdx.renderer.d.ts.map +0 -1
  276. package/universal/renderers/react.renderer.d.ts +0 -46
  277. package/universal/renderers/react.renderer.d.ts.map +0 -1
  278. package/universal/runtime-builder.d.ts +0 -33
  279. package/universal/runtime-builder.d.ts.map +0 -1
  280. package/universal/store.d.ts +0 -135
  281. package/universal/store.d.ts.map +0 -1
  282. package/universal/types.d.ts +0 -199
  283. package/universal/types.d.ts.map +0 -1
  284. package/web-components/core/attribute-parser.d.ts +0 -82
  285. package/web-components/core/attribute-parser.d.ts.map +0 -1
  286. package/web-components/core/base-element.d.ts +0 -197
  287. package/web-components/core/base-element.d.ts.map +0 -1
  288. package/web-components/core/index.d.ts +0 -9
  289. package/web-components/core/index.d.ts.map +0 -1
  290. package/web-components/elements/fmcp-alert.d.ts +0 -46
  291. package/web-components/elements/fmcp-alert.d.ts.map +0 -1
  292. package/web-components/elements/fmcp-badge.d.ts +0 -47
  293. package/web-components/elements/fmcp-badge.d.ts.map +0 -1
  294. package/web-components/elements/fmcp-button.d.ts +0 -117
  295. package/web-components/elements/fmcp-button.d.ts.map +0 -1
  296. package/web-components/elements/fmcp-card.d.ts +0 -53
  297. package/web-components/elements/fmcp-card.d.ts.map +0 -1
  298. package/web-components/elements/fmcp-input.d.ts +0 -96
  299. package/web-components/elements/fmcp-input.d.ts.map +0 -1
  300. package/web-components/elements/fmcp-select.d.ts +0 -100
  301. package/web-components/elements/fmcp-select.d.ts.map +0 -1
  302. package/web-components/elements/index.d.ts +0 -13
  303. package/web-components/elements/index.d.ts.map +0 -1
  304. package/web-components/index.d.ts +0 -49
  305. package/web-components/index.d.ts.map +0 -1
  306. package/web-components/index.js +0 -2058
  307. package/web-components/register.d.ts +0 -57
  308. package/web-components/register.d.ts.map +0 -1
  309. package/web-components/types.d.ts +0 -122
  310. package/web-components/types.d.ts.map +0 -1
package/theme/index.js ADDED
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // libs/ui/src/theme/index.ts
31
+ var theme_exports = {};
32
+ __export(theme_exports, {
33
+ FrontMcpThemeProvider: () => FrontMcpThemeProvider,
34
+ MONO_FONT_STACK: () => MONO_FONT_STACK,
35
+ SYSTEM_FONT_STACK: () => SYSTEM_FONT_STACK,
36
+ createFrontMcpTheme: () => createFrontMcpTheme,
37
+ darkTheme: () => darkTheme,
38
+ defaultTheme: () => defaultTheme,
39
+ useFrontMcpTheme: () => useFrontMcpTheme
40
+ });
41
+ module.exports = __toCommonJS(theme_exports);
42
+
43
+ // libs/ui/src/theme/create-theme.ts
44
+ var import_styles = require("@mui/material/styles");
45
+ var SYSTEM_FONT_STACK = [
46
+ "-apple-system",
47
+ "BlinkMacSystemFont",
48
+ '"Segoe UI"',
49
+ "Roboto",
50
+ '"Helvetica Neue"',
51
+ "Arial",
52
+ "sans-serif"
53
+ ].join(",");
54
+ var MONO_FONT_STACK = [
55
+ '"SF Mono"',
56
+ '"Fira Code"',
57
+ '"Fira Mono"',
58
+ "Menlo",
59
+ "Consolas",
60
+ '"DejaVu Sans Mono"',
61
+ "monospace"
62
+ ].join(",");
63
+ function createFrontMcpTheme(config) {
64
+ const mode = config?.mode ?? "light";
65
+ const palette = config?.palette;
66
+ const typography = config?.typography;
67
+ const shape = config?.shape;
68
+ return (0, import_styles.createTheme)({
69
+ palette: {
70
+ mode,
71
+ primary: { main: palette?.primary ?? "#0969da" },
72
+ secondary: { main: palette?.secondary ?? "#8250df" },
73
+ success: { main: palette?.success ?? "#1a7f37" },
74
+ warning: { main: palette?.warning ?? "#bf8700" },
75
+ error: { main: palette?.error ?? "#cf222e" },
76
+ info: { main: palette?.info ?? "#0550ae" },
77
+ ...palette?.background ? { background: { default: palette.background, paper: palette.surface ?? palette.background } } : {},
78
+ ...palette?.text ? { text: { primary: palette.text } } : {}
79
+ },
80
+ typography: {
81
+ fontFamily: typography?.fontFamily ?? SYSTEM_FONT_STACK,
82
+ fontSize: typography?.fontSize ?? 14
83
+ },
84
+ shape: {
85
+ borderRadius: shape?.borderRadius ?? 8
86
+ },
87
+ components: {
88
+ MuiButtonBase: {
89
+ defaultProps: {
90
+ disableRipple: false
91
+ }
92
+ },
93
+ MuiButton: {
94
+ styleOverrides: {
95
+ root: {
96
+ textTransform: "none",
97
+ fontWeight: 500
98
+ }
99
+ }
100
+ }
101
+ }
102
+ });
103
+ }
104
+ var defaultTheme = createFrontMcpTheme();
105
+ var darkTheme = createFrontMcpTheme({ mode: "dark" });
106
+
107
+ // libs/ui/src/theme/FrontMcpThemeProvider.tsx
108
+ var import_styles2 = require("@mui/material/styles");
109
+ var import_CssBaseline = __toESM(require("@mui/material/CssBaseline"));
110
+ var import_jsx_runtime = require("react/jsx-runtime");
111
+ function FrontMcpThemeProvider({
112
+ theme: themeConfig,
113
+ children
114
+ }) {
115
+ const muiTheme = themeConfig ? createFrontMcpTheme(themeConfig) : defaultTheme;
116
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_styles2.ThemeProvider, { theme: muiTheme, children: [
117
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_CssBaseline.default, {}),
118
+ children
119
+ ] });
120
+ }
121
+
122
+ // libs/ui/src/theme/use-theme.ts
123
+ var import_styles3 = require("@mui/material/styles");
124
+ function useFrontMcpTheme() {
125
+ return (0, import_styles3.useTheme)();
126
+ }
@@ -0,0 +1,28 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface FrontMcpThemeConfig {
3
+ palette?: {
4
+ primary?: string;
5
+ secondary?: string;
6
+ success?: string;
7
+ warning?: string;
8
+ error?: string;
9
+ info?: string;
10
+ background?: string;
11
+ surface?: string;
12
+ text?: string;
13
+ };
14
+ typography?: {
15
+ fontFamily?: string;
16
+ monoFontFamily?: string;
17
+ fontSize?: number;
18
+ };
19
+ shape?: {
20
+ borderRadius?: number;
21
+ };
22
+ mode?: 'light' | 'dark';
23
+ }
24
+ export interface FrontMcpThemeProviderProps {
25
+ theme?: FrontMcpThemeConfig;
26
+ children: ReactNode;
27
+ }
28
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/theme/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,UAAU,CAAC,EAAE;QACX,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE,SAAS,CAAC;CACrB"}
@@ -0,0 +1,3 @@
1
+ import { type Theme } from '@mui/material/styles';
2
+ export declare function useFrontMcpTheme(): Theme;
3
+ //# sourceMappingURL=use-theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-theme.d.ts","sourceRoot":"","sources":["../../src/theme/use-theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE3E,wBAAgB,gBAAgB,IAAI,KAAK,CAExC"}
@@ -1,42 +0,0 @@
1
- /**
2
- * Browser Components Builder
3
- *
4
- * Lazily transpiles the real React components from @frontmcp/ui/react
5
- * into browser-compatible JavaScript using esbuild at first use.
6
- *
7
- * This ensures 100% parity with the actual React components while
8
- * avoiding the overhead of manual code synchronization.
9
- *
10
- * @packageDocumentation
11
- */
12
- /**
13
- * Get browser-compatible UI components.
14
- *
15
- * On first call, transpiles the real React components using esbuild.
16
- * Subsequent calls return the cached result.
17
- *
18
- * @returns JavaScript code that defines Card, Button, Badge, Alert on window
19
- */
20
- export declare function getBrowserComponents(): Promise<string>;
21
- /**
22
- * Get browser-compatible UI components synchronously.
23
- *
24
- * Returns cached components if available, otherwise returns null.
25
- * Use getBrowserComponents() for async loading with transpilation.
26
- *
27
- * @returns Cached JavaScript code or null if not yet built
28
- */
29
- export declare function getBrowserComponentsSync(): string | null;
30
- /**
31
- * Pre-warm the browser components cache.
32
- *
33
- * Call this at application startup to avoid delay on first bundler call.
34
- */
35
- export declare function warmBrowserComponentsCache(): Promise<void>;
36
- /**
37
- * Clear the browser components cache.
38
- *
39
- * Useful for development when components change.
40
- */
41
- export declare function clearBrowserComponentsCache(): void;
42
- //# sourceMappingURL=browser-components.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-components.d.ts","sourceRoot":"","sources":["../../src/bundler/browser-components.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAwbH;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,CAyB5D;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,GAAG,IAAI,CAExD;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAEhE;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,IAAI,IAAI,CAElD"}
@@ -1,282 +0,0 @@
1
- /**
2
- * In-Memory Bundler
3
- *
4
- * Fast, secure bundler for JSX/TSX/MDX sources using esbuild.
5
- * Provides caching, security validation, and SSR support.
6
- *
7
- * @packageDocumentation
8
- */
9
- import type { BundleOptions, BundleResult, SSRBundleOptions, SSRResult, BundlerOptions, StaticHTMLOptions, StaticHTMLResult, MultiPlatformBuildOptions, MultiPlatformBuildResult } from './types';
10
- /**
11
- * In-memory bundler for JSX/TSX/MDX sources.
12
- *
13
- * Features:
14
- * - Fast transformation using esbuild (fallback to SWC)
15
- * - Content-addressable caching
16
- * - Security validation (blocked imports, eval, etc.)
17
- * - SSR support for React components
18
- *
19
- * @example
20
- * ```typescript
21
- * const bundler = new InMemoryBundler();
22
- *
23
- * // Bundle JSX source
24
- * const result = await bundler.bundle({
25
- * source: 'const App = () => <div>Hello</div>; export default App;',
26
- * sourceType: 'jsx',
27
- * });
28
- *
29
- * console.log(result.code); // Bundled JavaScript
30
- * console.log(result.cached); // Whether from cache
31
- *
32
- * // SSR rendering
33
- * const ssrResult = await bundler.bundleSSR({
34
- * source: 'export default ({ data }) => <div>{data.message}</div>',
35
- * sourceType: 'jsx',
36
- * context: { data: { message: 'Hello' } },
37
- * });
38
- *
39
- * console.log(ssrResult.html); // Rendered HTML
40
- * ```
41
- */
42
- export declare class InMemoryBundler {
43
- private readonly cache;
44
- private readonly options;
45
- private readonly defaultSecurity;
46
- constructor(options?: BundlerOptions);
47
- /**
48
- * Bundle source code.
49
- *
50
- * @param options - Bundle options
51
- * @returns Bundle result
52
- */
53
- bundle(options: BundleOptions): Promise<BundleResult>;
54
- /**
55
- * Bundle and execute for SSR.
56
- *
57
- * @param options - SSR bundle options
58
- * @returns SSR result with rendered HTML
59
- */
60
- bundleSSR(options: SSRBundleOptions): Promise<SSRResult>;
61
- /**
62
- * Bundle and execute code, returning the exports.
63
- *
64
- * @param options - Bundle options
65
- * @param context - Execution context
66
- * @returns Exported value
67
- */
68
- bundleAndExecute<T = unknown>(options: BundleOptions, context?: Record<string, unknown>): Promise<T>;
69
- /**
70
- * Bundle a component to a self-contained static HTML document.
71
- *
72
- * Creates a complete HTML page with:
73
- * - React runtime (CDN or inline based on platform)
74
- * - FrontMCP UI hooks and components (always inline)
75
- * - Tool data injection (input/output)
76
- * - Transpiled component code
77
- * - Client-side rendering via createRoot
78
- *
79
- * @param options - Static HTML options
80
- * @returns Static HTML result with complete document
81
- *
82
- * @example
83
- * ```typescript
84
- * const result = await bundler.bundleToStaticHTML({
85
- * source: `
86
- * import { Card, useToolOutput } from '@frontmcp/ui/react';
87
- * export default function Weather() {
88
- * const output = useToolOutput();
89
- * return <Card title="Weather">{output?.temperature}°F</Card>;
90
- * }
91
- * `,
92
- * toolName: 'get_weather',
93
- * output: { temperature: 72 },
94
- * });
95
- *
96
- * // result.html contains the complete HTML document
97
- * ```
98
- */
99
- bundleToStaticHTML(options: StaticHTMLOptions): Promise<StaticHTMLResult>;
100
- /**
101
- * Bundle a component to static HTML for all target platforms at once.
102
- *
103
- * This method is optimized for efficiency:
104
- * - Transpiles the component source code only once
105
- * - Generates platform-specific HTML variations from the shared transpiled code
106
- * - Returns complete platform metadata ready for MCP responses
107
- *
108
- * @param options - Multi-platform build options
109
- * @returns Multi-platform build result with all platforms
110
- *
111
- * @example
112
- * ```typescript
113
- * const result = await bundler.bundleToStaticHTMLAll({
114
- * source: `
115
- * import { Card, useToolOutput } from '@frontmcp/ui/react';
116
- * export default function Weather() {
117
- * const output = useToolOutput();
118
- * return <Card title="Weather">{output?.temperature}°F</Card>;
119
- * }
120
- * `,
121
- * toolName: 'get_weather',
122
- * output: { temperature: 72 },
123
- * });
124
- *
125
- * // Access platform-specific results
126
- * const openaiHtml = result.platforms.openai.html;
127
- * const claudeHtml = result.platforms.claude.html;
128
- *
129
- * // Get metadata for MCP response
130
- * const openaiMeta = result.platforms.openai.meta;
131
- * ```
132
- */
133
- bundleToStaticHTMLAll(options: MultiPlatformBuildOptions): Promise<MultiPlatformBuildResult>;
134
- /**
135
- * Build for a specific platform with pre-transpiled code.
136
- * Internal helper for bundleToStaticHTMLAll.
137
- */
138
- private buildForPlatform;
139
- /**
140
- * Map TargetPlatform to AIPlatformType for metadata generation.
141
- */
142
- private mapTargetPlatformToAIPlatform;
143
- /**
144
- * Bundle to static HTML with universal rendering mode.
145
- * Uses the universal renderer that can handle multiple content types.
146
- *
147
- * Optimization: Uses cached runtime (vendor chunk) to avoid rebuilding
148
- * static code on every request. Only the user's component is transpiled.
149
- */
150
- private bundleToStaticHTMLUniversal;
151
- /**
152
- * Assemble the complete universal static HTML document using cached runtime.
153
- *
154
- * For ESM mode (OpenAI), scripts must wait for React to load asynchronously.
155
- * For UMD mode (Claude), scripts can execute synchronously.
156
- */
157
- private assembleUniversalStaticHTMLCached;
158
- /**
159
- * Build the component script for transpiled React/MDX content.
160
- * Wraps CommonJS code with module/exports shim to capture the component.
161
- */
162
- private buildUniversalComponentScript;
163
- /**
164
- * Build the universal runtime script section.
165
- */
166
- private buildUniversalRuntimeScript;
167
- /**
168
- * Build data injection script for universal mode.
169
- */
170
- private buildUniversalDataScript;
171
- /**
172
- * Build the universal render script.
173
- */
174
- private buildUniversalRenderScript;
175
- /**
176
- * Assemble the complete universal static HTML document.
177
- */
178
- private assembleUniversalStaticHTML;
179
- /**
180
- * Get cache statistics.
181
- */
182
- getCacheStats(): import("@frontmcp/uipack/bundler").CacheStats;
183
- /**
184
- * Clear the cache.
185
- */
186
- clearCache(): void;
187
- /**
188
- * Clean up expired cache entries.
189
- */
190
- cleanupCache(): number;
191
- /**
192
- * Transform source code using esbuild/SWC.
193
- */
194
- private transform;
195
- /**
196
- * Get esbuild loader for source type.
197
- */
198
- private getLoader;
199
- /**
200
- * Detect source type from content.
201
- */
202
- private detectSourceType;
203
- /**
204
- * Merge bundle options with defaults.
205
- */
206
- private mergeOptions;
207
- /**
208
- * Build hydration script for client-side React.
209
- */
210
- private buildHydrationScript;
211
- /**
212
- * Merge static HTML options with defaults.
213
- */
214
- private mergeStaticHTMLOptions;
215
- /**
216
- * Build the <head> section for static HTML.
217
- */
218
- private buildStaticHTMLHead;
219
- /**
220
- * Build theme CSS variables as a :root style block.
221
- * Uses DEFAULT_THEME if no theme is provided.
222
- */
223
- private buildThemeStyleBlock;
224
- /**
225
- * Build React runtime scripts for static HTML.
226
- */
227
- private buildReactRuntimeScripts;
228
- /**
229
- * Build FrontMCP runtime (hooks and UI components).
230
- * Uses esbuild to transpile real React components at first use, then caches.
231
- * Falls back to manual implementation if esbuild fails.
232
- * Always inlined for reliability across platforms.
233
- */
234
- private buildFrontMCPRuntime;
235
- /**
236
- * Build data injection script for tool input/output.
237
- * Dispatches to mode-specific builders based on buildMode.
238
- */
239
- private buildDataInjectionScript;
240
- /**
241
- * Build static data injection - data baked in at build time (current default).
242
- */
243
- private buildStaticDataScript;
244
- /**
245
- * Build dynamic data injection - platform-aware.
246
- * For OpenAI (ESM): subscribes to platform events for updates.
247
- * For non-OpenAI (UMD/Claude): uses placeholders for data injection.
248
- */
249
- private buildDynamicDataScript;
250
- /**
251
- * Build dynamic data injection for non-OpenAI platforms using placeholders.
252
- * Similar to hybrid mode but with platform-appropriate loading/error states.
253
- */
254
- private buildDynamicWithPlaceholdersScript;
255
- /**
256
- * Build dynamic data injection for OpenAI using subscription pattern.
257
- */
258
- private buildDynamicWithSubscriptionScript;
259
- /**
260
- * Build hybrid data injection - shell with placeholders for runtime injection.
261
- * Use injectHybridData() or injectHybridDataFull() from @frontmcp/uipack to replace the placeholders.
262
- */
263
- private buildHybridDataScript;
264
- /**
265
- * Build component render script.
266
- * Wraps CommonJS code with module/exports shim to capture the component.
267
- */
268
- private buildComponentRenderScript;
269
- /**
270
- * Assemble the complete static HTML document.
271
- */
272
- private assembleStaticHTML;
273
- }
274
- /**
275
- * Create a bundler instance with default options.
276
- *
277
- * @param options - Bundler configuration
278
- * @returns New bundler instance
279
- */
280
- export declare function createBundler(options?: BundlerOptions): InMemoryBundler;
281
- export { SecurityError, ExecutionError } from '@frontmcp/uipack/bundler';
282
- //# sourceMappingURL=bundler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bundler.d.ts","sourceRoot":"","sources":["../../src/bundler/bundler.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,cAAc,EAGd,iBAAiB,EACjB,gBAAgB,EAKhB,yBAAyB,EAEzB,wBAAwB,EAKzB,MAAM,SAAS,CAAC;AAoHjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IACnD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;gBAErC,OAAO,GAAE,cAAmB;IAkBxC;;;;;OAKG;IACG,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;IAmE3D;;;;;OAKG;IACG,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC;IA6D9D;;;;;;OAMG;IACG,gBAAgB,CAAC,CAAC,GAAG,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAuB1G;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACG,kBAAkB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAiF/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACG,qBAAqB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAqElG;;;OAGG;YACW,gBAAgB;IAuJ9B;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAiBrC;;;;;;OAMG;YACW,2BAA2B;IA+GzC;;;;;OAKG;IACH,OAAO,CAAC,iCAAiC;IA+EzC;;;OAGG;IACH,OAAO,CAAC,6BAA6B;IAuCrC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAQnC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IA2DhC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAuClC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAkCnC;;OAEG;IACH,aAAa;IAIb;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;YACW,SAAS;IAoCvB;;OAEG;IACH,OAAO,CAAC,SAAS;IAejB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAsCxB;;OAEG;IACH,OAAO,CAAC,YAAY;IAwBpB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAgC5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAkC9B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA+C3B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAqEhC;;;;;OAKG;YACW,oBAAoB;IAyIlC;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAqBhC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAgC7B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAiB9B;;;OAGG;IACH,OAAO,CAAC,kCAAkC;IA8E1C;;OAEG;IACH,OAAO,CAAC,kCAAkC;IAqG1C;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA+E7B;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IA6ElC;;OAEG;IACH,OAAO,CAAC,kBAAkB;CA4B3B;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,eAAe,CAEvE;AAGD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC"}
@@ -1,43 +0,0 @@
1
- /**
2
- * In-Memory Bundler Module
3
- *
4
- * Provides fast, secure bundling for JSX/TSX/MDX sources.
5
- * Used for building widget templates at both build-time and runtime.
6
- *
7
- * Features:
8
- * - esbuild-based transformation (fallback to SWC)
9
- * - Content-addressable caching
10
- * - Security validation and sandboxing
11
- * - SSR support for React components
12
- *
13
- * @example
14
- * ```typescript
15
- * import { createBundler } from '@frontmcp/ui/bundler';
16
- *
17
- * const bundler = createBundler();
18
- *
19
- * // Bundle JSX source
20
- * const result = await bundler.bundle({
21
- * source: 'const App = () => <div>Hello</div>; export default App;',
22
- * sourceType: 'jsx',
23
- * });
24
- *
25
- * // SSR rendering
26
- * const ssrResult = await bundler.bundleSSR({
27
- * source: 'export default ({ data }) => <div>{data.message}</div>',
28
- * context: { data: { message: 'Hello' } },
29
- * });
30
- * ```
31
- *
32
- * @packageDocumentation
33
- */
34
- export { InMemoryBundler, createBundler, SecurityError, ExecutionError } from './bundler';
35
- export type { SourceType, OutputFormat, BundleOptions, SSRBundleOptions, BundlerOptions, EsbuildTransformOptions, BundleResult, SSRResult, BundleMetrics, SecurityPolicy, SecurityViolation, CacheEntry, TransformContext, TargetPlatform, ConcretePlatform, StaticHTMLExternalConfig, StaticHTMLOptions, StaticHTMLResult, MultiPlatformBuildOptions, PlatformBuildResult, MultiPlatformBuildResult, BuildMode, DynamicModeOptions, HybridModeOptions, } from './types';
36
- export { DEFAULT_SECURITY_POLICY, DEFAULT_BUNDLE_OPTIONS, DEFAULT_BUNDLER_OPTIONS, DEFAULT_STATIC_HTML_OPTIONS, STATIC_HTML_CDN, getCdnTypeForPlatform, ALL_PLATFORMS, HYBRID_DATA_PLACEHOLDER, HYBRID_INPUT_PLACEHOLDER, } from './types';
37
- export { BundlerCache, hashContent, createCacheKey } from '@frontmcp/uipack/bundler';
38
- export type { CacheOptions, CacheStats } from '@frontmcp/uipack/bundler';
39
- export { validateSource, validateImports, validateSize, mergePolicy, throwOnViolations, } from '@frontmcp/uipack/bundler';
40
- export { executeCode, executeDefault, isExecutionError } from '@frontmcp/uipack/bundler';
41
- export type { ExecutionContext, ExecutionResult } from '@frontmcp/uipack/bundler';
42
- export { type BuildCacheStorage, type StorageOptions, type CacheEntry as FileCacheEntry, type CacheEntryMetadata, DEFAULT_STORAGE_OPTIONS, calculateManifestSize, FilesystemStorage, createFilesystemStorage, type FilesystemStorageOptions, RedisStorage, createRedisStorage, type RedisStorageOptions, type RedisClient, sha256, sha256Buffer, hashFile, hashFiles, calculateComponentHash, calculateQuickHash, generateBuildId, buildIdFromHash, type ComponentHashOptions, type ComponentHashResult, ComponentBuilder, createFilesystemBuilder, createRedisBuilder, type ComponentBuildOptions, type ComponentBuildResult, } from '@frontmcp/uipack/bundler';
43
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bundler/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAMH,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAM1F,YAAY,EAEV,UAAU,EACV,YAAY,EAEZ,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,uBAAuB,EAEvB,YAAY,EACZ,SAAS,EACT,aAAa,EAEb,cAAc,EACd,iBAAiB,EAEjB,UAAU,EAEV,gBAAgB,EAEhB,cAAc,EACd,gBAAgB,EAChB,wBAAwB,EACxB,iBAAiB,EACjB,gBAAgB,EAEhB,yBAAyB,EACzB,mBAAmB,EACnB,wBAAwB,EAExB,SAAS,EACT,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAEL,uBAAuB,EACvB,sBAAsB,EACtB,uBAAuB,EAEvB,2BAA2B,EAC3B,eAAe,EACf,qBAAqB,EAErB,aAAa,EAEb,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,SAAS,CAAC;AAMjB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAErF,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAMzE,OAAO,EACL,cAAc,EACd,eAAe,EACf,YAAY,EACZ,WAAW,EACX,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAMlC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEzF,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAMlF,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,UAAU,IAAI,cAAc,EACjC,KAAK,kBAAkB,EACvB,uBAAuB,EACvB,qBAAqB,EAErB,iBAAiB,EACjB,uBAAuB,EACvB,KAAK,wBAAwB,EAE7B,YAAY,EACZ,kBAAkB,EAClB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAEhB,MAAM,EACN,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EAExB,gBAAgB,EAChB,uBAAuB,EACvB,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,GAC1B,MAAM,0BAA0B,CAAC"}