@farming-labs/nuxt 0.0.38 → 0.0.44

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 (65) hide show
  1. package/dist/api-reference.d.ts +3 -0
  2. package/dist/api-reference.d.ts.map +1 -0
  3. package/dist/api-reference.js +21 -0
  4. package/dist/api-reference.js.map +1 -0
  5. package/dist/docs/src/api-reference.d.ts +27 -0
  6. package/dist/docs/src/api-reference.d.ts.map +1 -0
  7. package/dist/docs/src/api-reference.js +594 -0
  8. package/dist/docs/src/api-reference.js.map +1 -0
  9. package/dist/docs/src/create-theme.d.ts +74 -0
  10. package/dist/docs/src/create-theme.d.ts.map +1 -0
  11. package/dist/docs/src/create-theme.js +86 -0
  12. package/dist/docs/src/create-theme.js.map +1 -0
  13. package/dist/docs/src/define-docs.d.ts +6 -0
  14. package/dist/docs/src/define-docs.d.ts.map +1 -0
  15. package/dist/docs/src/define-docs.js +27 -0
  16. package/dist/docs/src/define-docs.js.map +1 -0
  17. package/dist/docs/src/i18n.d.ts +15 -0
  18. package/dist/docs/src/i18n.d.ts.map +1 -0
  19. package/dist/docs/src/i18n.js +48 -0
  20. package/dist/docs/src/i18n.js.map +1 -0
  21. package/dist/docs/src/index.d.ts +16 -0
  22. package/dist/docs/src/index.d.ts.map +1 -0
  23. package/dist/docs/src/index.js +14 -0
  24. package/dist/docs/src/index.js.map +1 -0
  25. package/dist/docs/src/metadata.d.ts +24 -0
  26. package/dist/docs/src/metadata.d.ts.map +1 -0
  27. package/dist/docs/src/metadata.js +90 -0
  28. package/dist/docs/src/metadata.js.map +1 -0
  29. package/dist/docs/src/server.d.ts +3 -0
  30. package/dist/docs/src/server.d.ts.map +1 -0
  31. package/dist/docs/src/server.js +2 -0
  32. package/dist/docs/src/server.js.map +1 -0
  33. package/dist/docs/src/types.d.ts +1344 -0
  34. package/dist/docs/src/types.d.ts.map +1 -0
  35. package/dist/docs/src/types.js +6 -0
  36. package/dist/docs/src/types.js.map +1 -0
  37. package/dist/docs/src/utils.d.ts +6 -0
  38. package/dist/docs/src/utils.d.ts.map +1 -0
  39. package/dist/docs/src/utils.js +32 -0
  40. package/dist/docs/src/utils.js.map +1 -0
  41. package/dist/nuxt/src/api-reference.d.ts +3 -0
  42. package/dist/nuxt/src/api-reference.d.ts.map +1 -0
  43. package/dist/nuxt/src/api-reference.js +20 -0
  44. package/dist/nuxt/src/api-reference.js.map +1 -0
  45. package/dist/nuxt/src/content.d.ts +54 -0
  46. package/dist/nuxt/src/content.d.ts.map +1 -0
  47. package/dist/nuxt/src/content.js +202 -0
  48. package/dist/nuxt/src/content.js.map +1 -0
  49. package/dist/nuxt/src/index.d.ts +11 -0
  50. package/dist/nuxt/src/index.d.ts.map +1 -0
  51. package/dist/nuxt/src/index.js +11 -0
  52. package/dist/nuxt/src/index.js.map +1 -0
  53. package/dist/nuxt/src/markdown.d.ts +18 -0
  54. package/dist/nuxt/src/markdown.d.ts.map +1 -0
  55. package/dist/nuxt/src/markdown.js +277 -0
  56. package/dist/nuxt/src/markdown.js.map +1 -0
  57. package/dist/nuxt/src/server.d.ts +87 -0
  58. package/dist/nuxt/src/server.d.ts.map +1 -0
  59. package/dist/nuxt/src/server.js +726 -0
  60. package/dist/nuxt/src/server.js.map +1 -0
  61. package/dist/server.d.ts +3 -2
  62. package/dist/server.d.ts.map +1 -1
  63. package/dist/server.js +4 -2
  64. package/dist/server.js.map +1 -1
  65. package/package.json +9 -2
@@ -0,0 +1,277 @@
1
+ /**
2
+ * Server-side markdown rendering with Shiki syntax highlighting.
3
+ *
4
+ * Converts raw markdown content to HTML, supporting:
5
+ * - Fenced code blocks with dual-theme syntax highlighting
6
+ * - Copy-to-clipboard buttons on code blocks
7
+ * - Tabbed code blocks (`<Tabs>` / `<Tab>` syntax)
8
+ * - Callouts / admonitions (GitHub `[!NOTE]` and `**Note:**` styles)
9
+ * - Tables, lists, inline formatting, headings with anchor IDs
10
+ */
11
+ import { createHighlighter } from "shiki";
12
+ let highlighterPromise = null;
13
+ function getHighlighter() {
14
+ if (!highlighterPromise) {
15
+ highlighterPromise = createHighlighter({
16
+ themes: ["github-light", "github-dark"],
17
+ langs: [
18
+ "javascript",
19
+ "typescript",
20
+ "jsx",
21
+ "tsx",
22
+ "json",
23
+ "bash",
24
+ "shellscript",
25
+ "html",
26
+ "css",
27
+ "markdown",
28
+ "yaml",
29
+ "sql",
30
+ "python",
31
+ "dotenv",
32
+ ],
33
+ });
34
+ }
35
+ return highlighterPromise;
36
+ }
37
+ function slugify(text) {
38
+ return text
39
+ .toLowerCase()
40
+ .replace(/<[^>]+>/g, "")
41
+ .replace(/[^\w\s-]/g, "")
42
+ .replace(/\s+/g, "-")
43
+ .replace(/-+/g, "-")
44
+ .trim();
45
+ }
46
+ const calloutIcons = {
47
+ note: '<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><line x1="12" y1="16" x2="12" y2="12"/><line x1="12" y1="8" x2="12.01" y2="8"/></svg>',
48
+ warning: '<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10.29 3.86L1.82 18a2 2 0 001.71 3h16.94a2 2 0 001.71-3L13.71 3.86a2 2 0 00-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg>',
49
+ tip: '<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 18h6"/><path d="M10 22h4"/><path d="M15.09 14c.18-.98.65-1.74 1.41-2.5A4.65 4.65 0 0018 8 6 6 0 006 8c0 1 .23 2.23 1.5 3.5A4.61 4.61 0 019 14"/></svg>',
50
+ important: '<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 01-2 2H7l-4 4V5a2 2 0 012-2h14a2 2 0 012 2z"/></svg>',
51
+ caution: '<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><line x1="15" y1="9" x2="9" y2="15"/><line x1="9" y1="9" x2="15" y2="15"/></svg>',
52
+ };
53
+ function renderCallout(type, content) {
54
+ const icon = calloutIcons[type] || calloutIcons.note;
55
+ const label = type.charAt(0).toUpperCase() + type.slice(1);
56
+ return `<div class="fd-callout fd-callout-${type}" role="note"><div class="fd-callout-indicator" role="none"></div><div class="fd-callout-icon">${icon}</div><div class="fd-callout-content"><p class="fd-callout-title">${label}</p><p>${content}</p></div></div>`;
57
+ }
58
+ function highlightCode(hl, code, lang) {
59
+ if (lang === "sh" || lang === "shell")
60
+ lang = "bash";
61
+ if (lang === "env")
62
+ lang = "dotenv";
63
+ const supported = hl.getLoadedLanguages();
64
+ if (!supported.includes(lang))
65
+ lang = "text";
66
+ const trimmedCode = code.replace(/\n$/, "");
67
+ try {
68
+ return {
69
+ html: hl.codeToHtml(trimmedCode, {
70
+ lang,
71
+ themes: { light: "github-light", dark: "github-dark" },
72
+ }),
73
+ raw: trimmedCode,
74
+ };
75
+ }
76
+ catch {
77
+ const escaped = trimmedCode.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
78
+ return {
79
+ html: `<pre class="shiki"><code>${escaped}</code></pre>`,
80
+ raw: trimmedCode,
81
+ };
82
+ }
83
+ }
84
+ function parseMeta(meta) {
85
+ const lang = (meta.split(/\s/)[0] || "text").toLowerCase();
86
+ const titleMatch = meta.match(/title=["']([^"']+)["']/);
87
+ return { lang, title: titleMatch ? titleMatch[1] : null };
88
+ }
89
+ function wrapCodeWithCopy(html, rawCode, title, language) {
90
+ const escapedRaw = rawCode
91
+ .replace(/&/g, "&amp;")
92
+ .replace(/"/g, "&quot;")
93
+ .replace(/</g, "&lt;")
94
+ .replace(/>/g, "&gt;");
95
+ const dataLang = language ? ` data-language="${String(language).replace(/"/g, "&quot;")}"` : "";
96
+ const copyBtn = `<button class="fd-copy-btn" data-code="${escapedRaw}" title="Copy code"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2" ry="2"/><path d="M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1"/></svg></button>`;
97
+ if (title) {
98
+ return `<div class="fd-codeblock fd-codeblock--titled"${dataLang}><div class="fd-codeblock-title"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/><path d="M14 2v4a2 2 0 0 0 2 2h4"/></svg><span class="fd-codeblock-title-text">${title}</span>${copyBtn}</div><div class="fd-codeblock-content">${html}</div></div>`;
99
+ }
100
+ return `<div class="fd-codeblock"${dataLang}>${copyBtn}<div class="fd-codeblock-content">${html}</div></div>`;
101
+ }
102
+ function dedentCode(raw) {
103
+ const lines = raw.replace(/\n$/, "").split("\n");
104
+ const indent = lines.reduce((min, l) => {
105
+ if (!l.trim())
106
+ return min;
107
+ const spaces = l.match(/^(\s*)/)?.[1].length ?? 0;
108
+ return Math.min(min, spaces);
109
+ }, Infinity);
110
+ if (indent > 0 && indent < Infinity) {
111
+ return lines.map((l) => l.slice(indent)).join("\n");
112
+ }
113
+ return raw;
114
+ }
115
+ /**
116
+ * Render a markdown string to HTML with full syntax highlighting,
117
+ * callouts, tables, tabs, and copy-to-clipboard support.
118
+ *
119
+ * Designed for server-side use in Astro page loaders.
120
+ */
121
+ export async function renderMarkdown(content) {
122
+ if (!content)
123
+ return "";
124
+ const hl = await getHighlighter();
125
+ let result = content;
126
+ // ── Tabs blocks: <Tabs items={[...]}> ... </Tabs> ──
127
+ const tabsBlocks = [];
128
+ result = result.replace(/<Tabs\s+items=\{?\[([^\]]+)\]\}?>([\s\S]*?)<\/Tabs>/g, (_, itemsStr, body) => {
129
+ const items = itemsStr.split(",").map((s) => s.trim().replace(/^["']|["']$/g, ""));
130
+ const panels = [];
131
+ const tabRegex = /<Tab\s+value=["']([^"']+)["']>([\s\S]*?)<\/Tab>/g;
132
+ let tabMatch;
133
+ while ((tabMatch = tabRegex.exec(body)) !== null) {
134
+ const tabValue = tabMatch[1];
135
+ const tabContent = tabMatch[2].trim();
136
+ const codeMatch = tabContent.match(/```([^\n]*)\n([\s\S]*?)```/);
137
+ if (codeMatch) {
138
+ const { lang, title } = parseMeta(codeMatch[1]);
139
+ const dedented = dedentCode(codeMatch[2]);
140
+ const { html, raw } = highlightCode(hl, dedented, lang);
141
+ panels.push({ value: tabValue, html: wrapCodeWithCopy(html, raw, title, lang) });
142
+ }
143
+ else {
144
+ panels.push({ value: tabValue, html: `<p>${tabContent}</p>` });
145
+ }
146
+ }
147
+ let tabsHtml = `<div class="fd-tabs" data-tabs>`;
148
+ tabsHtml += `<div class="fd-tabs-list" role="tablist">`;
149
+ for (let i = 0; i < items.length; i++) {
150
+ tabsHtml += `<button role="tab" class="fd-tab-trigger${i === 0 ? " fd-tab-active" : ""}" data-tab-value="${items[i]}" aria-selected="${i === 0}">${items[i]}</button>`;
151
+ }
152
+ tabsHtml += `</div>`;
153
+ for (let i = 0; i < panels.length; i++) {
154
+ tabsHtml += `<div class="fd-tab-panel${i === 0 ? " fd-tab-panel-active" : ""}" data-tab-panel="${panels[i].value}" role="tabpanel">${panels[i].html}</div>`;
155
+ }
156
+ tabsHtml += `</div>`;
157
+ const placeholder = `%%TABS_${tabsBlocks.length}%%`;
158
+ tabsBlocks.push(tabsHtml);
159
+ return placeholder;
160
+ });
161
+ // ── Fenced code blocks ──
162
+ const codeBlocks = [];
163
+ result = result.replace(/```([^\n]*)\n([\s\S]*?)```/g, (_, meta, code) => {
164
+ const { lang, title } = parseMeta(meta);
165
+ const { html, raw } = highlightCode(hl, code, lang);
166
+ const placeholder = `%%CODEBLOCK_${codeBlocks.length}%%`;
167
+ codeBlocks.push(wrapCodeWithCopy(html, raw, title, lang));
168
+ return placeholder;
169
+ });
170
+ // Inline code
171
+ result = result.replace(/`([^`]+)`/g, "<code>$1</code>");
172
+ // Headings (h4 → h1 order to avoid prefix collisions)
173
+ result = result.replace(/^#### (.+)$/gm, (_, text) => {
174
+ return `<h4 id="${slugify(text)}">${text}</h4>`;
175
+ });
176
+ result = result.replace(/^### (.+)$/gm, (_, text) => {
177
+ return `<h3 id="${slugify(text)}">${text}</h3>`;
178
+ });
179
+ result = result.replace(/^## (.+)$/gm, (_, text) => {
180
+ return `<h2 id="${slugify(text)}">${text}</h2>`;
181
+ });
182
+ result = result.replace(/^# (.+)$/gm, "<h1>$1</h1>");
183
+ // ── Callouts / blockquotes (before inline formatting) ──
184
+ const calloutBlocks = [];
185
+ result = result.replace(/(?:^>\s*.+\n?)+/gm, (block) => {
186
+ const lines = block.split("\n").filter(Boolean);
187
+ const inner = lines.map((l) => l.replace(/^>\s?/, "")).join("\n");
188
+ const ghMatch = inner.match(/^\[!(NOTE|WARNING|TIP|IMPORTANT|CAUTION)\]\s*\n?([\s\S]*)/i);
189
+ if (ghMatch) {
190
+ const type = ghMatch[1].toLowerCase();
191
+ const calloutContent = ghMatch[2].trim();
192
+ const placeholder = `%%CALLOUT_${calloutBlocks.length}%%`;
193
+ calloutBlocks.push(renderCallout(type, calloutContent));
194
+ return placeholder;
195
+ }
196
+ const boldMatch = inner.match(/^\*\*(Note|Warning|Tip|Important|Caution):\*\*\s*([\s\S]*)/i);
197
+ if (boldMatch) {
198
+ const type = boldMatch[1].toLowerCase();
199
+ const calloutContent = boldMatch[2].trim();
200
+ const placeholder = `%%CALLOUT_${calloutBlocks.length}%%`;
201
+ calloutBlocks.push(renderCallout(type, calloutContent));
202
+ return placeholder;
203
+ }
204
+ return `<blockquote><p>${inner}</p></blockquote>`;
205
+ });
206
+ // Inline formatting
207
+ result = result.replace(/\*\*\*(.+?)\*\*\*/g, "<strong><em>$1</em></strong>");
208
+ result = result.replace(/\*\*(.+?)\*\*/g, "<strong>$1</strong>");
209
+ result = result.replace(/\*(.+?)\*/g, "<em>$1</em>");
210
+ // Links
211
+ result = result.replace(/\[([^\]]+)\]\(([^)]+)\)/g, '<a href="$2">$1</a>');
212
+ // Horizontal rules
213
+ result = result.replace(/^---$/gm, "<hr />");
214
+ // Tables
215
+ result = result.replace(/^\|(.+)\|\n\|[-| ]+\|\n((?:\|.+\|\n?)+)/gm, (_, headerRow, bodyRows) => {
216
+ const headers = headerRow
217
+ .split("|")
218
+ .map((h) => h.trim())
219
+ .filter(Boolean);
220
+ const rows = bodyRows
221
+ .trim()
222
+ .split("\n")
223
+ .map((row) => row
224
+ .split("|")
225
+ .map((c) => c.trim())
226
+ .filter(Boolean));
227
+ const headerHtml = headers.map((h) => `<th>${h}</th>`).join("");
228
+ const rowsHtml = rows
229
+ .map((row) => `<tr>${row.map((c) => `<td>${c}</td>`).join("")}</tr>`)
230
+ .join("");
231
+ return `<div class="fd-table-wrapper"><table><thead><tr>${headerHtml}</tr></thead><tbody>${rowsHtml}</tbody></table></div>`;
232
+ });
233
+ // Unordered lists
234
+ result = result.replace(/(?:^- .+\n?)+/gm, (block) => {
235
+ const items = block
236
+ .split("\n")
237
+ .filter((l) => l.startsWith("- "))
238
+ .map((l) => `<li>${l.slice(2)}</li>`)
239
+ .join("");
240
+ return `<ul>${items}</ul>`;
241
+ });
242
+ // Ordered lists
243
+ result = result.replace(/(?:^\d+\. .+\n?)+/gm, (block) => {
244
+ const items = block
245
+ .split("\n")
246
+ .filter((l) => /^\d+\. /.test(l))
247
+ .map((l) => `<li>${l.replace(/^\d+\. /, "")}</li>`)
248
+ .join("");
249
+ return `<ol>${items}</ol>`;
250
+ });
251
+ // Wrap remaining bare text in <p> tags
252
+ result = result
253
+ .split("\n\n")
254
+ .map((block) => {
255
+ block = block.trim();
256
+ if (!block)
257
+ return "";
258
+ if (/^<(h[1-6]|pre|ul|ol|blockquote|hr|table|div)/.test(block))
259
+ return block;
260
+ if (/^%%(CODEBLOCK|CALLOUT|TABS)_\d+%%$/.test(block))
261
+ return block;
262
+ return `<p>${block}</p>`;
263
+ })
264
+ .join("\n");
265
+ // Restore placeholders
266
+ for (let i = 0; i < codeBlocks.length; i++) {
267
+ result = result.replace(`%%CODEBLOCK_${i}%%`, codeBlocks[i]);
268
+ }
269
+ for (let i = 0; i < calloutBlocks.length; i++) {
270
+ result = result.replace(`%%CALLOUT_${i}%%`, calloutBlocks[i]);
271
+ }
272
+ for (let i = 0; i < tabsBlocks.length; i++) {
273
+ result = result.replace(`%%TABS_${i}%%`, tabsBlocks[i]);
274
+ }
275
+ return result;
276
+ }
277
+ //# sourceMappingURL=markdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../../src/markdown.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Server-side helpers for Nuxt docs routes.
3
+ *
4
+ * The simplest setup is a single file:
5
+ *
6
+ * @example
7
+ * ```ts
8
+ * // server/api/docs.ts
9
+ * import { defineDocsHandler } from "@farming-labs/nuxt/server";
10
+ * import config from "../../docs.config";
11
+ * export default defineDocsHandler(config);
12
+ * ```
13
+ *
14
+ * That one handler serves page loads, search, and AI chat.
15
+ */
16
+ import { loadDocsNavTree } from "./content.js";
17
+ import type { PageNode } from "./content.js";
18
+ export { defineApiReferenceHandler } from "./api-reference.js";
19
+ export interface DocsServer {
20
+ load: (pathname: string) => Promise<{
21
+ tree: ReturnType<typeof loadDocsNavTree>;
22
+ flatPages: PageNode[];
23
+ title: string;
24
+ description?: string;
25
+ html: string;
26
+ entry?: string;
27
+ locale?: string;
28
+ slug?: string;
29
+ previousPage: PageNode | null;
30
+ nextPage: PageNode | null;
31
+ editOnGithub?: string;
32
+ lastModified: string;
33
+ }>;
34
+ GET: (context: {
35
+ request: Request;
36
+ }) => Response;
37
+ POST: (context: {
38
+ request: Request;
39
+ }) => Promise<Response>;
40
+ }
41
+ /**
42
+ * Create all server-side functions needed for a Nuxt docs site.
43
+ *
44
+ * @param config - The `DocsConfig` object (from `defineDocs()` in `docs.config.ts`).
45
+ *
46
+ * Pass `_preloadedContent` (from `import.meta.glob`) to bundle markdown files
47
+ * at build time — required for serverless deployments (Vercel, Netlify, etc.)
48
+ * where the filesystem is not available at runtime.
49
+ */
50
+ export declare function createDocsServer(config?: Record<string, any>): DocsServer;
51
+ /**
52
+ * Create a single Nuxt event handler that serves docs pages, search, and AI chat.
53
+ *
54
+ * Pass `useStorage` from the Nitro auto-import so the handler can read
55
+ * docs bundled via `serverAssets`.
56
+ *
57
+ * @example
58
+ * ```ts
59
+ * // server/api/docs.ts
60
+ * import { defineDocsHandler } from "@farming-labs/nuxt/server";
61
+ * import config from "../../docs.config";
62
+ * export default defineDocsHandler(config, useStorage);
63
+ * ```
64
+ *
65
+ * The handler responds to:
66
+ * - `GET /api/docs?pathname=/docs/page` → page load
67
+ * - `GET /api/docs?query=search+term` → search
68
+ * - `POST /api/docs` → AI chat
69
+ */
70
+ export declare function defineDocsHandler(config: Record<string, any>, storage: (base: string) => {
71
+ getKeys(): Promise<string[]>;
72
+ getItem(key: string): Promise<unknown>;
73
+ }): (event: any) => Promise<Response | {
74
+ tree: ReturnType<typeof loadDocsNavTree>;
75
+ flatPages: PageNode[];
76
+ title: string;
77
+ description?: string;
78
+ html: string;
79
+ entry?: string;
80
+ locale?: string;
81
+ slug?: string;
82
+ previousPage: PageNode | null;
83
+ nextPage: PageNode | null;
84
+ editOnGithub?: string;
85
+ lastModified: string;
86
+ }>;
87
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,OAAO,EAAE,eAAe,EAAmC,MAAM,cAAc,CAAC;AAEhF,OAAO,KAAK,EAAE,QAAQ,EAAiC,MAAM,cAAc,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAiE/D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;QAClC,IAAI,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;QACzC,SAAS,EAAE,QAAQ,EAAE,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,QAAQ,GAAG,IAAI,CAAC;QAC9B,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;QAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC,CAAC;IACH,GAAG,EAAE,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,QAAQ,CAAC;IACjD,IAAI,EAAE,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC5D;AA8QD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAAG,UAAU,CAuc7E;AAID;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK;IACzB,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7B,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACxC,IAoCa,OAAO,GAAG;UA7yBhB,UAAU,CAAC,OAAO,eAAe,CAAC;eAC7B,QAAQ,EAAE;WACd,MAAM;kBACC,MAAM;UACd,MAAM;YACJ,MAAM;aACL,MAAM;WACR,MAAM;kBACC,QAAQ,GAAG,IAAI;cACnB,QAAQ,GAAG,IAAI;mBACV,MAAM;kBACP,MAAM;GAo0BvB"}