@analogjs/vite-plugin-nitro 2.5.0-beta.2 → 2.5.0-beta.21
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.
- package/package.json +1 -1
- package/src/index.d.ts +1 -1
- package/src/index.js.map +1 -1
- package/src/lib/build-sitemap.d.ts +16 -2
- package/src/lib/build-sitemap.js +65 -6
- package/src/lib/build-sitemap.js.map +1 -1
- package/src/lib/options.d.ts +17 -0
- package/src/lib/plugins/dev-server-plugin.js +12 -1
- package/src/lib/plugins/dev-server-plugin.js.map +1 -1
- package/src/lib/utils/i18n-prerender.d.ts +36 -0
- package/src/lib/utils/i18n-prerender.js +80 -0
- package/src/lib/utils/i18n-prerender.js.map +1 -0
- package/src/lib/utils/register-i18n-watcher.d.ts +15 -0
- package/src/lib/utils/register-i18n-watcher.js +25 -0
- package/src/lib/utils/register-i18n-watcher.js.map +1 -0
- package/src/lib/vite-plugin-nitro.js +21 -2
- package/src/lib/vite-plugin-nitro.js.map +1 -1
package/package.json
CHANGED
package/src/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { nitro } from './lib/vite-plugin-nitro.js';
|
|
2
|
-
export { Options, SitemapConfig, PrerenderRouteConfig, PrerenderContentDir, PrerenderContentFile, } from './lib/options.js';
|
|
2
|
+
export { Options, SitemapConfig, PrerenderRouteConfig, PrerenderContentDir, PrerenderContentFile, I18nPrerenderOptions, } from './lib/options.js';
|
|
3
3
|
declare module 'nitropack' {
|
|
4
4
|
interface NitroRouteConfig {
|
|
5
5
|
ssr?: boolean;
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/vite-plugin-nitro/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/vite-plugin-nitro/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAoBnD,eAAe,KAAK,CAAC"}
|
|
@@ -1,9 +1,23 @@
|
|
|
1
1
|
import { UserConfig } from 'vite';
|
|
2
|
-
import { PrerenderSitemapConfig, SitemapConfig } from './options';
|
|
2
|
+
import { I18nPrerenderOptions, PrerenderSitemapConfig, SitemapConfig } from './options';
|
|
3
3
|
export type PagesJson = {
|
|
4
4
|
page: string;
|
|
5
5
|
lastMod: string;
|
|
6
6
|
changefreq?: string;
|
|
7
7
|
priority?: string;
|
|
8
8
|
};
|
|
9
|
-
export declare function buildSitemap(config: UserConfig, sitemapConfig: SitemapConfig, routes: (string | undefined)[] | (() => Promise<(string | undefined)[]>), outputDir: string, routeSitemaps: Record<string, PrerenderSitemapConfig | (() => PrerenderSitemapConfig) | undefined
|
|
9
|
+
export declare function buildSitemap(config: UserConfig, sitemapConfig: SitemapConfig, routes: (string | undefined)[] | (() => Promise<(string | undefined)[]>), outputDir: string, routeSitemaps: Record<string, PrerenderSitemapConfig | (() => PrerenderSitemapConfig) | undefined>, i18nOptions?: I18nPrerenderOptions): Promise<void>;
|
|
10
|
+
/**
|
|
11
|
+
* Generates hreflang alternate URLs for a given page URL.
|
|
12
|
+
* For a URL like `https://example.com/fr/about`, it produces alternates
|
|
13
|
+
* for all configured locales.
|
|
14
|
+
*/
|
|
15
|
+
export declare function getHreflangAlternates(pageUrl: string, host: string, i18n: I18nPrerenderOptions): {
|
|
16
|
+
locale: string;
|
|
17
|
+
href: string;
|
|
18
|
+
}[];
|
|
19
|
+
/**
|
|
20
|
+
* Strips a locale prefix from a URL path.
|
|
21
|
+
* E.g., '/fr/about' -> '/about', '/en' -> '/'
|
|
22
|
+
*/
|
|
23
|
+
export declare function stripLocalePrefix(path: string, locales: string[]): string;
|
package/src/lib/build-sitemap.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { writeFileSync } from 'node:fs';
|
|
2
2
|
import { create } from 'xmlbuilder2';
|
|
3
3
|
import { resolve } from 'node:path';
|
|
4
|
-
export async function buildSitemap(config, sitemapConfig, routes, outputDir, routeSitemaps) {
|
|
4
|
+
export async function buildSitemap(config, sitemapConfig, routes, outputDir, routeSitemaps, i18nOptions) {
|
|
5
5
|
const routeList = await optionHasRoutes(routes);
|
|
6
6
|
if (routeList.length) {
|
|
7
7
|
const slash = checkSlash(sitemapConfig.host || '');
|
|
@@ -16,7 +16,8 @@ export async function buildSitemap(config, sitemapConfig, routes, outputDir, rou
|
|
|
16
16
|
priority: props?.priority,
|
|
17
17
|
};
|
|
18
18
|
});
|
|
19
|
-
const
|
|
19
|
+
const hasI18n = i18nOptions && i18nOptions.locales.length > 1;
|
|
20
|
+
const sitemap = createXml('urlset', hasI18n);
|
|
20
21
|
for (const item of sitemapData) {
|
|
21
22
|
const page = sitemap.ele('url');
|
|
22
23
|
page.ele('loc').txt(item.page);
|
|
@@ -27,6 +28,17 @@ export async function buildSitemap(config, sitemapConfig, routes, outputDir, rou
|
|
|
27
28
|
if (item.priority) {
|
|
28
29
|
page.ele('priority').txt(item.priority);
|
|
29
30
|
}
|
|
31
|
+
// Add hreflang alternate links for each locale
|
|
32
|
+
if (hasI18n) {
|
|
33
|
+
const alternates = getHreflangAlternates(item.page, sitemapConfig.host, i18nOptions);
|
|
34
|
+
for (const alt of alternates) {
|
|
35
|
+
page
|
|
36
|
+
.ele('xhtml:link')
|
|
37
|
+
.att('rel', 'alternate')
|
|
38
|
+
.att('hreflang', alt.locale)
|
|
39
|
+
.att('href', alt.href);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
30
42
|
}
|
|
31
43
|
const mapPath = `${resolve(outputDir)}/sitemap.xml`;
|
|
32
44
|
try {
|
|
@@ -38,11 +50,58 @@ export async function buildSitemap(config, sitemapConfig, routes, outputDir, rou
|
|
|
38
50
|
}
|
|
39
51
|
}
|
|
40
52
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
53
|
+
/**
|
|
54
|
+
* Generates hreflang alternate URLs for a given page URL.
|
|
55
|
+
* For a URL like `https://example.com/fr/about`, it produces alternates
|
|
56
|
+
* for all configured locales.
|
|
57
|
+
*/
|
|
58
|
+
export function getHreflangAlternates(pageUrl, host, i18n) {
|
|
59
|
+
const alternates = [];
|
|
60
|
+
const normalizedHost = host.replace(/\/+$/, '');
|
|
61
|
+
// Extract the path portion after the host
|
|
62
|
+
const path = pageUrl.replace(normalizedHost, '');
|
|
63
|
+
// Strip locale prefix to get the base path
|
|
64
|
+
const basePath = stripLocalePrefix(path, i18n.locales);
|
|
65
|
+
for (const locale of i18n.locales) {
|
|
66
|
+
const localizedPath = basePath === '/' || basePath === ''
|
|
67
|
+
? `/${locale}`
|
|
68
|
+
: `/${locale}${basePath}`;
|
|
69
|
+
alternates.push({
|
|
70
|
+
locale,
|
|
71
|
+
href: `${normalizedHost}${localizedPath}`,
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
// Add x-default pointing to the default locale variant
|
|
75
|
+
const defaultPath = basePath === '/' || basePath === ''
|
|
76
|
+
? `/${i18n.defaultLocale}`
|
|
77
|
+
: `/${i18n.defaultLocale}${basePath}`;
|
|
78
|
+
alternates.push({
|
|
79
|
+
locale: 'x-default',
|
|
80
|
+
href: `${normalizedHost}${defaultPath}`,
|
|
81
|
+
});
|
|
82
|
+
return alternates;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Strips a locale prefix from a URL path.
|
|
86
|
+
* E.g., '/fr/about' -> '/about', '/en' -> '/'
|
|
87
|
+
*/
|
|
88
|
+
export function stripLocalePrefix(path, locales) {
|
|
89
|
+
const segments = path.split('/').filter(Boolean);
|
|
90
|
+
if (segments.length > 0 && locales.includes(segments[0])) {
|
|
91
|
+
const rest = segments.slice(1).join('/');
|
|
92
|
+
return rest ? `/${rest}` : '/';
|
|
93
|
+
}
|
|
94
|
+
return path || '/';
|
|
95
|
+
}
|
|
96
|
+
function createXml(elementName, includeXhtml = false) {
|
|
97
|
+
const attrs = {
|
|
44
98
|
xmlns: 'https://www.sitemaps.org/schemas/sitemap/0.9',
|
|
45
|
-
}
|
|
99
|
+
};
|
|
100
|
+
if (includeXhtml) {
|
|
101
|
+
attrs['xmlns:xhtml'] = 'https://www.w3.org/1999/xhtml';
|
|
102
|
+
}
|
|
103
|
+
return create({ version: '1.0', encoding: 'UTF-8' })
|
|
104
|
+
.ele(elementName, attrs)
|
|
46
105
|
.com(`This file was automatically generated by Analog.`);
|
|
47
106
|
}
|
|
48
107
|
function checkSlash(host) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-sitemap.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-nitro/src/lib/build-sitemap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"build-sitemap.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-nitro/src/lib/build-sitemap.ts"],"names":[],"mappings":"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"}
|
package/src/lib/options.d.ts
CHANGED
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
import { PrerenderRoute } from 'nitropack';
|
|
2
|
+
export interface I18nPrerenderOptions {
|
|
3
|
+
/**
|
|
4
|
+
* The default/source locale for the application.
|
|
5
|
+
*/
|
|
6
|
+
defaultLocale: string;
|
|
7
|
+
/**
|
|
8
|
+
* List of supported locale identifiers.
|
|
9
|
+
* Each route will be prerendered once per locale with a locale prefix.
|
|
10
|
+
*/
|
|
11
|
+
locales: string[];
|
|
12
|
+
}
|
|
2
13
|
export interface Options {
|
|
3
14
|
ssr?: boolean;
|
|
4
15
|
ssrBuildDir?: string;
|
|
@@ -36,6 +47,12 @@ export interface Options {
|
|
|
36
47
|
* for API routes.
|
|
37
48
|
*/
|
|
38
49
|
useAPIMiddleware?: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* i18n configuration for locale-aware prerendering.
|
|
52
|
+
* When set, routes are expanded with locale prefixes and
|
|
53
|
+
* prerendered HTML receives the appropriate `lang` attribute.
|
|
54
|
+
*/
|
|
55
|
+
i18n?: I18nPrerenderOptions;
|
|
39
56
|
}
|
|
40
57
|
export interface PrerenderOptions {
|
|
41
58
|
/**
|
|
@@ -7,6 +7,8 @@ import { createEvent, sendWebResponse } from 'h3';
|
|
|
7
7
|
import { createRouter as createRadixRouter, toRouteMatcher } from 'radix3';
|
|
8
8
|
import { defu } from 'defu';
|
|
9
9
|
import { registerDevServerMiddleware } from '../utils/register-dev-middleware.js';
|
|
10
|
+
import { registerI18nWatcher } from '../utils/register-i18n-watcher.js';
|
|
11
|
+
import { detectLocaleFromRoute, setHtmlLang } from '../utils/i18n-prerender.js';
|
|
10
12
|
export function devServerPlugin(options) {
|
|
11
13
|
const workspaceRoot = options?.workspaceRoot || process.cwd();
|
|
12
14
|
const sourceRoot = options?.sourceRoot ?? 'src';
|
|
@@ -35,6 +37,9 @@ export function devServerPlugin(options) {
|
|
|
35
37
|
return async () => {
|
|
36
38
|
remove_html_middlewares(viteServer.middlewares);
|
|
37
39
|
registerDevServerMiddleware(root, sourceRoot, viteServer);
|
|
40
|
+
if (options.i18n) {
|
|
41
|
+
registerI18nWatcher(viteServer);
|
|
42
|
+
}
|
|
38
43
|
viteServer.middlewares.use(async (req, res) => {
|
|
39
44
|
let template = readFileSync(resolve(viteServer.config.root, index), 'utf-8');
|
|
40
45
|
template = await viteServer.transformIndexHtml(req.originalUrl, template);
|
|
@@ -57,8 +62,14 @@ export function devServerPlugin(options) {
|
|
|
57
62
|
sendWebResponse(createEvent(req, res), result);
|
|
58
63
|
return;
|
|
59
64
|
}
|
|
65
|
+
// Inject lang attribute when i18n is configured
|
|
66
|
+
let html = typeof result === 'string' ? result : template;
|
|
67
|
+
if (options.i18n) {
|
|
68
|
+
const locale = detectLocaleFromRoute(req.originalUrl, options.i18n);
|
|
69
|
+
html = setHtmlLang(html, locale);
|
|
70
|
+
}
|
|
60
71
|
res.setHeader('Content-Type', 'text/html');
|
|
61
|
-
res.end(
|
|
72
|
+
res.end(html);
|
|
62
73
|
}
|
|
63
74
|
catch (e) {
|
|
64
75
|
viteServer.ssrFixStacktrace(e);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev-server-plugin.js","sourceRoot":"","sources":["../../../../../../packages/vite-plugin-nitro/src/lib/plugins/dev-server-plugin.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,gFAAgF;AAEhF,OAAO,EAKL,aAAa,GACd,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AAClD,OAAO,EAAE,YAAY,IAAI,iBAAiB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"dev-server-plugin.js","sourceRoot":"","sources":["../../../../../../packages/vite-plugin-nitro/src/lib/plugins/dev-server-plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { PrerenderRoute } from 'nitropack';
|
|
2
|
+
import { I18nPrerenderOptions } from '../options.js';
|
|
3
|
+
/**
|
|
4
|
+
* Expands a list of routes to include locale-prefixed variants.
|
|
5
|
+
*
|
|
6
|
+
* For each route and each locale, generates a prefixed route:
|
|
7
|
+
* '/' + locale + route
|
|
8
|
+
*
|
|
9
|
+
* The default locale's routes are included both with and without the prefix
|
|
10
|
+
* so that `/about` and `/en/about` both render.
|
|
11
|
+
*
|
|
12
|
+
* @param routes - The original routes to expand
|
|
13
|
+
* @param i18n - The i18n prerender configuration
|
|
14
|
+
* @returns Expanded routes with locale prefixes
|
|
15
|
+
*/
|
|
16
|
+
export declare function expandRoutesWithLocales(routes: string[], i18n: I18nPrerenderOptions): string[];
|
|
17
|
+
/**
|
|
18
|
+
* Creates a post-rendering hook that injects the `lang` attribute
|
|
19
|
+
* into the `<html>` tag of prerendered pages based on the route's
|
|
20
|
+
* locale prefix.
|
|
21
|
+
*
|
|
22
|
+
* @param i18n - The i18n prerender configuration
|
|
23
|
+
* @returns A post-rendering hook function
|
|
24
|
+
*/
|
|
25
|
+
export declare function createI18nPostRenderingHook(i18n: I18nPrerenderOptions): (route: PrerenderRoute) => Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Detects the locale from a prerendered route path by checking
|
|
28
|
+
* the first path segment against the configured locales.
|
|
29
|
+
*/
|
|
30
|
+
export declare function detectLocaleFromRoute(route: string, i18n: I18nPrerenderOptions): string;
|
|
31
|
+
/**
|
|
32
|
+
* Sets the `lang` attribute on the `<html>` tag in an HTML string.
|
|
33
|
+
* If a `lang` attribute already exists, it is replaced.
|
|
34
|
+
* If no `lang` attribute exists, it is added.
|
|
35
|
+
*/
|
|
36
|
+
export declare function setHtmlLang(html: string, locale: string): string;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Expands a list of routes to include locale-prefixed variants.
|
|
3
|
+
*
|
|
4
|
+
* For each route and each locale, generates a prefixed route:
|
|
5
|
+
* '/' + locale + route
|
|
6
|
+
*
|
|
7
|
+
* The default locale's routes are included both with and without the prefix
|
|
8
|
+
* so that `/about` and `/en/about` both render.
|
|
9
|
+
*
|
|
10
|
+
* @param routes - The original routes to expand
|
|
11
|
+
* @param i18n - The i18n prerender configuration
|
|
12
|
+
* @returns Expanded routes with locale prefixes
|
|
13
|
+
*/
|
|
14
|
+
export function expandRoutesWithLocales(routes, i18n) {
|
|
15
|
+
const expanded = [];
|
|
16
|
+
for (const route of routes) {
|
|
17
|
+
// Skip API routes — they don't need locale prefixes
|
|
18
|
+
if (route.includes('/_analog/') || route.startsWith('/api/')) {
|
|
19
|
+
expanded.push(route);
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
for (const locale of i18n.locales) {
|
|
23
|
+
const prefix = `/${locale}`;
|
|
24
|
+
const localizedRoute = route === '/' ? prefix : `${prefix}${route}`;
|
|
25
|
+
expanded.push(localizedRoute);
|
|
26
|
+
}
|
|
27
|
+
// Keep the unprefixed route for the default locale
|
|
28
|
+
if (!expanded.includes(route)) {
|
|
29
|
+
expanded.push(route);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return expanded;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Creates a post-rendering hook that injects the `lang` attribute
|
|
36
|
+
* into the `<html>` tag of prerendered pages based on the route's
|
|
37
|
+
* locale prefix.
|
|
38
|
+
*
|
|
39
|
+
* @param i18n - The i18n prerender configuration
|
|
40
|
+
* @returns A post-rendering hook function
|
|
41
|
+
*/
|
|
42
|
+
export function createI18nPostRenderingHook(i18n) {
|
|
43
|
+
return async (route) => {
|
|
44
|
+
if (!route.contents || typeof route.contents !== 'string') {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
const locale = detectLocaleFromRoute(route.route, i18n);
|
|
48
|
+
if (!locale) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
// Inject or replace the lang attribute on <html>
|
|
52
|
+
route.contents = setHtmlLang(route.contents, locale);
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Detects the locale from a prerendered route path by checking
|
|
57
|
+
* the first path segment against the configured locales.
|
|
58
|
+
*/
|
|
59
|
+
export function detectLocaleFromRoute(route, i18n) {
|
|
60
|
+
const segments = route.split('/').filter(Boolean);
|
|
61
|
+
const firstSegment = segments[0];
|
|
62
|
+
if (firstSegment && i18n.locales.includes(firstSegment)) {
|
|
63
|
+
return firstSegment;
|
|
64
|
+
}
|
|
65
|
+
return i18n.defaultLocale;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Sets the `lang` attribute on the `<html>` tag in an HTML string.
|
|
69
|
+
* If a `lang` attribute already exists, it is replaced.
|
|
70
|
+
* If no `lang` attribute exists, it is added.
|
|
71
|
+
*/
|
|
72
|
+
export function setHtmlLang(html, locale) {
|
|
73
|
+
// Replace existing lang attribute
|
|
74
|
+
if (/<html[^>]*\slang\s*=\s*["'][^"']*["']/i.test(html)) {
|
|
75
|
+
return html.replace(/(<html[^>]*\s)lang\s*=\s*["'][^"']*["']/i, `$1lang="${locale}"`);
|
|
76
|
+
}
|
|
77
|
+
// Add lang attribute to <html> tag
|
|
78
|
+
return html.replace(/<html/i, `<html lang="${locale}"`);
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=i18n-prerender.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n-prerender.js","sourceRoot":"","sources":["../../../../../../packages/vite-plugin-nitro/src/lib/utils/i18n-prerender.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CACrC,MAAgB,EAChB,IAA0B;IAE1B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,oDAAoD;QACpD,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7D,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,SAAS;QACX,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YAC5B,MAAM,cAAc,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,KAAK,EAAE,CAAC;YACpE,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAChC,CAAC;QAED,mDAAmD;QACnD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,2BAA2B,CACzC,IAA0B;IAE1B,OAAO,KAAK,EAAE,KAAqB,EAAE,EAAE;QACrC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1D,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QAED,iDAAiD;QACjD,KAAK,CAAC,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAa,EACb,IAA0B;IAE1B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEjC,IAAI,YAAY,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QACxD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,OAAO,IAAI,CAAC,aAAa,CAAC;AAC5B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,MAAc;IACtD,kCAAkC;IAClC,IAAI,wCAAwC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACxD,OAAO,IAAI,CAAC,OAAO,CACjB,0CAA0C,EAC1C,WAAW,MAAM,GAAG,CACrB,CAAC;IACJ,CAAC;IAED,mCAAmC;IACnC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,eAAe,MAAM,GAAG,CAAC,CAAC;AAC1D,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ViteDevServer } from 'vite';
|
|
2
|
+
/**
|
|
3
|
+
* Registers a file watcher that triggers a full page reload
|
|
4
|
+
* when translation files are added or modified.
|
|
5
|
+
*
|
|
6
|
+
* Matches files in i18n directories with .json, .xlf, .xmb, or .arb extensions.
|
|
7
|
+
*
|
|
8
|
+
* @param viteServer The Vite development server instance
|
|
9
|
+
*/
|
|
10
|
+
export declare function registerI18nWatcher(viteServer: ViteDevServer): void;
|
|
11
|
+
/**
|
|
12
|
+
* Checks whether a file path looks like a translation file
|
|
13
|
+
* based on its location in an i18n directory and its extension.
|
|
14
|
+
*/
|
|
15
|
+
export declare function isTranslationFile(path: string): boolean;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Registers a file watcher that triggers a full page reload
|
|
3
|
+
* when translation files are added or modified.
|
|
4
|
+
*
|
|
5
|
+
* Matches files in i18n directories with .json, .xlf, .xmb, or .arb extensions.
|
|
6
|
+
*
|
|
7
|
+
* @param viteServer The Vite development server instance
|
|
8
|
+
*/
|
|
9
|
+
export function registerI18nWatcher(viteServer) {
|
|
10
|
+
const triggerReload = (path) => {
|
|
11
|
+
if (isTranslationFile(path)) {
|
|
12
|
+
viteServer.ws.send({ type: 'full-reload' });
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
viteServer.watcher.on('change', triggerReload);
|
|
16
|
+
viteServer.watcher.on('add', triggerReload);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Checks whether a file path looks like a translation file
|
|
20
|
+
* based on its location in an i18n directory and its extension.
|
|
21
|
+
*/
|
|
22
|
+
export function isTranslationFile(path) {
|
|
23
|
+
return /i18n.*\.(json|xlf|xmb|arb)$/.test(path);
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=register-i18n-watcher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register-i18n-watcher.js","sourceRoot":"","sources":["../../../../../../packages/vite-plugin-nitro/src/lib/utils/register-i18n-watcher.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAAyB;IAC3D,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,EAAE;QACrC,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC,CAAC;IAEF,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC/C,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AAC9C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAClD,CAAC"}
|
|
@@ -13,6 +13,7 @@ import { buildSitemap } from './build-sitemap.js';
|
|
|
13
13
|
import { devServerPlugin } from './plugins/dev-server-plugin.js';
|
|
14
14
|
import { getMatchingContentFilesWithFrontMatter } from './utils/get-content-files.js';
|
|
15
15
|
import { ssrRenderer, clientRenderer, apiMiddleware, } from './utils/renderers.js';
|
|
16
|
+
import { expandRoutesWithLocales, createI18nPostRenderingHook, } from './utils/i18n-prerender.js';
|
|
16
17
|
const isWindows = platform() === 'win32';
|
|
17
18
|
const filePrefix = isWindows ? 'file:///' : '';
|
|
18
19
|
let clientOutputPath = '';
|
|
@@ -44,6 +45,7 @@ export function nitro(options, nitroOptions) {
|
|
|
44
45
|
entryServer: options?.entryServer,
|
|
45
46
|
index: options?.index,
|
|
46
47
|
routeRules: nitroOptions?.routeRules,
|
|
48
|
+
i18n: options?.i18n,
|
|
47
49
|
})
|
|
48
50
|
: false),
|
|
49
51
|
{
|
|
@@ -218,6 +220,17 @@ export function nitro(options, nitroOptions) {
|
|
|
218
220
|
});
|
|
219
221
|
return prev;
|
|
220
222
|
}, []);
|
|
223
|
+
// Expand routes with locale prefixes when i18n is configured
|
|
224
|
+
if (options?.i18n && nitroConfig.prerender?.routes) {
|
|
225
|
+
nitroConfig.prerender.routes = expandRoutesWithLocales(nitroConfig.prerender.routes.filter(Boolean), options.i18n);
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
// Register i18n post-rendering hook for lang attribute injection
|
|
229
|
+
if (options?.i18n) {
|
|
230
|
+
options.prerender = options.prerender ?? {};
|
|
231
|
+
options.prerender.postRenderingHooks =
|
|
232
|
+
options.prerender.postRenderingHooks ?? [];
|
|
233
|
+
options.prerender.postRenderingHooks.push(createI18nPostRenderingHook(options.i18n));
|
|
221
234
|
}
|
|
222
235
|
if (ssrBuild) {
|
|
223
236
|
if (isWindows) {
|
|
@@ -298,7 +311,7 @@ export function nitro(options, nitroOptions) {
|
|
|
298
311
|
}
|
|
299
312
|
console.log('Building Sitemap...');
|
|
300
313
|
// sitemap needs to be built after all directories are built
|
|
301
|
-
await buildSitemap(config, options.prerender.sitemap, nitroConfig.prerender.routes, publicDir, routeSitemaps);
|
|
314
|
+
await buildSitemap(config, options.prerender.sitemap, nitroConfig.prerender.routes, publicDir, routeSitemaps, options.i18n);
|
|
302
315
|
}
|
|
303
316
|
console.log(`\n\nThe '@analogjs/platform' server has been successfully built.`);
|
|
304
317
|
},
|
|
@@ -356,7 +369,7 @@ export function nitro(options, nitroOptions) {
|
|
|
356
369
|
options?.prerender?.sitemap) {
|
|
357
370
|
console.log('Building Sitemap...');
|
|
358
371
|
// sitemap needs to be built after all directories are built
|
|
359
|
-
await buildSitemap(config, options.prerender.sitemap, nitroConfig.prerender.routes, clientOutputPath, routeSitemaps);
|
|
372
|
+
await buildSitemap(config, options.prerender.sitemap, nitroConfig.prerender.routes, clientOutputPath, routeSitemaps, options.i18n);
|
|
360
373
|
}
|
|
361
374
|
let ssrEntryPath = resolve(options?.ssrBuildDir ||
|
|
362
375
|
resolve(workspaceRoot, 'dist', rootDir, `ssr`), `main.server${filePrefix ? '.js' : ''}`);
|
|
@@ -380,6 +393,12 @@ export function nitro(options, nitroOptions) {
|
|
|
380
393
|
return {
|
|
381
394
|
define: {
|
|
382
395
|
ANALOG_API_PREFIX: `"${baseURL.substring(1)}${apiPrefix.substring(1)}"`,
|
|
396
|
+
...(options?.i18n
|
|
397
|
+
? {
|
|
398
|
+
ANALOG_I18N_DEFAULT_LOCALE: JSON.stringify(options.i18n.defaultLocale),
|
|
399
|
+
ANALOG_I18N_LOCALES: JSON.stringify(options.i18n.locales),
|
|
400
|
+
}
|
|
401
|
+
: {}),
|
|
383
402
|
},
|
|
384
403
|
};
|
|
385
404
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-plugin-nitro.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-nitro/src/lib/vite-plugin-nitro.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7E,OAAO,EAAO,cAAc,EAAE,MAAM,IAAI,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,EAAE,OAAO,EAAQ,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAQ7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,sCAAsC,EAAE,MAAM,8BAA8B,CAAC;AAEtF,OAAO,EACL,WAAW,EACX,cAAc,EACd,aAAa,GACd,MAAM,sBAAsB,CAAC;AAE9B,MAAM,SAAS,GAAG,QAAQ,EAAE,KAAK,OAAO,CAAC;AACzC,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/C,IAAI,gBAAgB,GAAG,EAAE,CAAC;AAE1B,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,MAAM,UAAU,KAAK,CAAC,OAAiB,EAAE,YAA0B;IACjE,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC9D,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,KAAK,CAAC;IAChD,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC;IACxD,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,MAAM,SAAS,GAAG,IAAI,OAAO,EAAE,SAAS,IAAI,KAAK,EAAE,CAAC;IACpD,MAAM,gBAAgB,GACpB,OAAO,OAAO,EAAE,gBAAgB,KAAK,WAAW;QAC9C,CAAC,CAAC,OAAO,EAAE,gBAAgB;QAC3B,CAAC,CAAC,IAAI,CAAC;IAEX,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,MAAkB,CAAC;IACvB,IAAI,WAAwB,CAAC;IAC7B,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,MAAM,aAAa,GAGf,EAAE,CAAC;IACP,MAAM,gBAAgB,GAA2B,EAAE,CAAC;IACpD,IAAI,OAAO,GAAG,aAAa,CAAC;IAE5B,OAAO;QACL,CAAC,OAAO,EAAE,GAAG;YACX,CAAC,CAAC,eAAe,CAAC;gBACd,WAAW,EAAE,OAAO,EAAE,WAAW;gBACjC,KAAK,EAAE,OAAO,EAAE,KAAK;gBACrB,UAAU,EAAE,YAAY,EAAE,UAAU;aACrC,CAAC;YACJ,CAAC,CAAC,KAAK,CAAW;QACpB;YACE,IAAI,EAAE,6BAA6B;YACnC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;gBACxC,OAAO,GAAG,OAAO,KAAK,OAAO,CAAC;gBAC9B,OAAO,GAAG,OAAO,KAAK,OAAO,CAAC;gBAC9B,QAAQ,GAAG,UAAU,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;gBAC1C,MAAM,GAAG,UAAU,CAAC;gBACpB,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;gBAE3C,OAAO,GAAG,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC;gBAC7D,SAAS,GAAG,UAAU,CACpB,OAAO,CACL,aAAa,EACb,OAAO,EACP,GAAG,UAAU,kBAAkB,OAAO,EAAE,SAAS,IAAI,KAAK,EAAE,CAC7D,CACF,CAAC;gBACF,MAAM,WAAW,GACf,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;oBAC1B,YAAY,EAAE,MAA6B,CAAC;gBAE/C,MAAM,YAAY,GAAG,eAAe,CAAC;oBACnC,aAAa;oBACb,UAAU;oBACV,OAAO;oBACP,mBAAmB,EAAE,OAAO,EAAE,mBAAmB;oBACjD,SAAS;iBACV,CAAC,CAAC;gBAEH,WAAW,GAAG;oBACZ,OAAO;oBACP,MAAM,EAAE,WAAW;oBACnB,iBAAiB,EAAE,YAAY;oBAC/B,QAAQ,EAAE,YAAY,EAAE,QAAQ,IAAI,CAAC;oBACrC,MAAM,EAAE,aAAa,CAAC,GAAG,UAAU,SAAS,CAAC;oBAC7C,QAAQ,EAAE;wBACR,aAAa,CAAC,GAAG,OAAO,IAAI,UAAU,SAAS,CAAC;wBAChD,GAAG,CAAC,OAAO,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAChD,aAAa,CAAC,GAAG,aAAa,GAAG,GAAG,EAAE,CAAC,CACxC;qBACF;oBACD,MAAM,EAAE;wBACN,GAAG,EAAE,aAAa,CAChB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAClD;wBACD,SAAS,EAAE,aAAa,CACtB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,CACzD;qBACF;oBACD,QAAQ,EAAE,aAAa,CACrB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAClD;oBACD,UAAU,EAAE;wBACV,gBAAgB,EAAE,KAAK;qBACxB;oBACD,aAAa,EAAE;wBACb,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;wBACjC,MAAM;qBACP;oBACD,6BAA6B;oBAC7B,OAAO,EAAE;wBACP,UAAU,EAAE,KAAK;qBAClB;oBACD,YAAY,EAAE;wBACZ,MAAM,CAAC,OAAO;4BACZ,IACE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;gCACvC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EACnC,CAAC;gCACD,OAAO;4BACT,CAAC;wBACH,CAAC;wBACD,OAAO,EAAE,CAAC,mBAAmB,EAAE,CAAC;qBACjC;oBACD,QAAQ,EAAE;wBACR,GAAG,CAAC,SAAS;4BACX,CAAC,CAAC,EAAE;4BACJ,CAAC,CAAC,gBAAgB;gCAChB,CAAC,CAAC;oCACE;wCACE,OAAO,EAAE,wBAAwB;wCACjC,UAAU,EAAE,IAAI;qCACjB;iCACF;gCACH,CAAC,CAAC,EAAE,CAAC;wBACT,GAAG,YAAY;qBAChB;oBACD,UAAU,EAAE,SAAS;wBACnB,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,gBAAgB;4BAChB,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC;gCACE,CAAC,GAAG,MAAM,GAAG,SAAS,KAAK,CAAC,EAAE;oCAC5B,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE;iCACrB;6BACF;oBACP,OAAO,EAAE;wBACP,sBAAsB,EAAE,WAAW;wBACnC,yBAAyB,EAAE,cAAc;wBACzC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,wBAAwB,EAAE,aAAa,EAAE,CAAC;qBAClE;iBACF,CAAC;gBAEF,IAAI,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;oBAChC,WAAW,GAAG,mBAAmB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;gBAChE,CAAC;gBAED,IAAI,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC;oBACpC,WAAW,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;gBAClD,CAAC;gBAED,IACE,eAAe,CAAC,WAAW,CAAC;oBAC5B,OAAO,KAAK,GAAG;oBACf,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,EACnD,CAAC;oBACD,WAAW,GAAG,oBAAoB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;gBACjE,CAAC;gBAED,IAAI,oBAAoB,EAAE,EAAE,CAAC;oBAC3B,WAAW,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;gBAClD,CAAC;gBAED,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;oBACzB,wDAAwD;oBACxD,gBAAgB,GAAG,OAAO,CACxB,aAAa,EACb,OAAO,EACP,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,aAAa,CACtC,CAAC;gBACJ,CAAC;gBAED,MAAM,UAAU,GAAG,aAAa,CAC9B,OAAO,CAAC,gBAAgB,EAAE,YAAY,CAAC,CACxC,CAAC;gBACF,WAAW,CAAC,KAAK,GAAG;oBAClB,eAAe,EAAE,UAAU;iBAC5B,CAAC;gBAEF,IAAI,OAAO,EAAE,CAAC;oBACZ,WAAW,CAAC,YAAY,GAAG,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC;oBACvD,WAAW,CAAC,QAAQ,GAAG,OAAO,EAAE,GAAG;wBACjC,CAAC,CAAC,sBAAsB;wBACxB,CAAC,CAAC,yBAAyB,CAAC;oBAE9B,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;wBACpC,WAAW,CAAC,SAAS,GAAG,EAAE,CAAC;wBAC3B,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;oBACvC,CAAC;oBAED,IAAI,OAAO,EAAE,SAAS,EAAE,CAAC;wBACvB,WAAW,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,IAAI,EAAE,CAAC;wBACpD,WAAW,CAAC,SAAS,CAAC,UAAU,GAAG,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC;wBAEhE,IAAI,MAAM,GAKJ,EAAE,CAAC;wBAET,MAAM,eAAe,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC;wBACnD,IACE,mBAAmB,CAA+B,eAAe,CAAC,EAClE,CAAC;4BACD,MAAM,GAAG,eAAe,CAAC;wBAC3B,CAAC;6BAAM,IAAI,OAAO,eAAe,KAAK,UAAU,EAAE,CAAC;4BACjD,MAAM,GAAG,MAAM,eAAe,EAAE,CAAC;wBACnC,CAAC;wBAED,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAC1C,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;4BAChB,IAAI,CAAC,OAAO,EAAE,CAAC;gCACb,OAAO,IAAI,CAAC;4BACd,CAAC;4BACD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gCAChC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gCACnB,OAAO,IAAI,CAAC;4BACd,CAAC;4BAED,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;gCACvB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oCACpB,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;gCACjD,CAAC;gCAED,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;oCAC7B,MAAM,UAAU,GAAG,OAAO,CACxB,aAAa,EACb,OAAO,EACP,OAAO,CAAC,gBAAgB,CACzB,CAAC;oCACF,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,CAC5C,UAAU,EACV,MAAM,CACP,CAAC;gCACJ,CAAC;gCAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gCAEzB,iDAAiD;gCACjD,IAAI,YAAY,IAAI,OAAO,EAAE,CAAC;oCAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,SAAS,kBAAkB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;gCAC3D,CAAC;gCAED,OAAO,IAAI,CAAC;4BACd,CAAC;4BAED,MAAM,aAAa,GACjB,sCAAsC,CACpC,aAAa,EACb,OAAO,EACP,OAAO,CAAC,UAAU,CACnB,CAAC;4BAEJ,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gCAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gCAEpC,IAAI,MAAM,EAAE,CAAC;oCACX,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;wCACpB,aAAa,CAAC,MAAM,CAAC;4CACnB,OAAO,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,UAAU;gDACtD,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gDACtB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;oCACxB,CAAC;oCAED,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;wCAC7B,MAAM,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;wCAClD,IAAI,aAAa,EAAE,CAAC;4CAClB,gBAAgB,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC;wCAC3C,CAAC;oCACH,CAAC;oCAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oCAElB,iDAAiD;oCACjD,IAAI,YAAY,IAAI,OAAO,EAAE,CAAC;wCAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,SAAS,kBAAkB,MAAM,EAAE,CAAC,CAAC;oCACpD,CAAC;gCACH,CAAC;4BACH,CAAC,CAAC,CAAC;4BAEH,OAAO,IAAI,CAAC;wBACd,CAAC,EACD,EAAE,CACH,CAAC;oBACJ,CAAC;oBAED,IAAI,QAAQ,EAAE,CAAC;wBACb,IAAI,SAAS,EAAE,CAAC;4BACd,WAAW,CAAC,SAAS,GAAG;gCACtB,MAAM,EAAE,CAAC,SAAS,CAAC;6BACpB,CAAC;wBACJ,CAAC;wBAED,WAAW,GAAG;4BACZ,GAAG,WAAW;4BACd,SAAS,EAAE;gCACT,GAAG,WAAW,CAAC,SAAS;gCACxB,QAAQ,EAAE,CAAC,MAAM,EAAE,iCAAiC,CAAC;6BACtD;4BACD,iBAAiB,EAAE,CAAC,cAAc,EAAE,4BAA4B,CAAC;4BACjE,QAAQ,EAAE;gCACR,GAAG,CAAC,SAAS;oCACX,CAAC,CAAC,EAAE;oCACJ,CAAC,CAAC,gBAAgB;wCAChB,CAAC,CAAC;4CACE;gDACE,OAAO,EAAE,wBAAwB;gDACjC,UAAU,EAAE,IAAI;6CACjB;yCACF;wCACH,CAAC,CAAC,EAAE,CAAC;gCACT,GAAG,YAAY;6BAChB;yBACF,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,WAAW,GAAG,WAAW,CACvB,WAAW,EACX,YAAmC,CACpC,CAAC;gBAEF,OAAO;oBACL,YAAY,EAAE;wBACZ,MAAM,EAAE;4BACN,KAAK,EAAE;gCACL,MAAM,EACJ,MAAM,EAAE,KAAK,EAAE,MAAM;oCACrB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;6BACpD;yBACF;wBACD,GAAG,EAAE;4BACH,KAAK,EAAE;gCACL,GAAG,EAAE,IAAI;gCACT,aAAa,EAAE;oCACb,KAAK,EACH,OAAO,EAAE,WAAW;wCACpB,OAAO,CACL,aAAa,EACb,OAAO,EACP,GAAG,UAAU,iBAAiB,CAC/B;iCACJ;gCACD,MAAM,EACJ,OAAO,EAAE,WAAW;oCACpB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;6BACjD;yBACF;qBACF;oBACD,OAAO,EAAE;wBACP,aAAa,EAAE,IAAI;wBACnB,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;4BAC1B,gBAAgB,GAAG,IAAI,CAAC;4BACxB,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;4BAE/D,IAAI,OAAO,EAAE,GAAG,IAAI,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;gCAC1D,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;4BAC1D,CAAC;4BAED,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;4BAE1B,IAAI,YAAY,GAAG,OAAO,CACxB,OAAO,EAAE,WAAW;gCAClB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAChD,cAAc,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CACxC,CAAC;4BAEF,oDAAoD;4BACpD,IAAI,SAAS,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gCAC3C,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;4BACrD,CAAC;4BAED,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,GAAG,YAAY,CAAC,CAAC;4BAE1D,WAAW,CAAC,KAAK,GAAG;gCAClB,GAAG,WAAW,CAAC,KAAK;gCACpB,aAAa,EAAE,QAAQ;6BACxB,CAAC;4BAEF,MAAM,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC;4BAE1D,IACE,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM;gCACrC,OAAO,EAAE,SAAS,EAAE,OAAO,EAC3B,CAAC;gCACD,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC;gCAChD,IAAI,CAAC,SAAS,EAAE,CAAC;oCACf,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;gCACJ,CAAC;gCAED,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;gCACnC,4DAA4D;gCAC5D,MAAM,YAAY,CAChB,MAAM,EACN,OAAO,CAAC,SAAS,CAAC,OAAO,EACzB,WAAW,CAAC,SAAS,CAAC,MAAM,EAC5B,SAAS,EACT,aAAa,CACd,CAAC;4BACJ,CAAC;4BAED,OAAO,CAAC,GAAG,CACT,kEAAkE,CACnE,CAAC;wBACJ,CAAC;qBACF;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,CAAC,eAAe,CAAC,UAAyB;gBAC7C,IAAI,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;oBACvB,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC;wBAC9B,GAAG,EAAE,IAAI;wBACT,GAAG,WAAW;qBACf,CAAC,CAAC;oBACH,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;oBACtC,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;oBACnB,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,GAAqB,CAAC,CAAC;oBAEhE,IAAI,SAAS,EAAE,CAAC;wBACd,UAAU,CAAC,WAAW,CAAC,GAAG,CACxB,CACE,GAAoB,EACpB,GAAmB,EACnB,IAA+B,EAC/B,EAAE;4BACF,IAAI,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,GAAG,MAAM,GAAG,SAAS,EAAE,CAAC,EAAE,CAAC;gCACjD,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gCACrB,OAAO;4BACT,CAAC;4BAED,IAAI,EAAE,CAAC;wBACT,CAAC,CACF,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;oBACpD,CAAC;oBAED,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;wBAC5C,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;4BACzD,CAAC,CAAC,WAAW;4BACb,CAAC,CAAE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAe,CAAC;wBAC9C,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBAClE,CAAC,CAAC,CAAC;oBAEH,4CAA4C;oBAC5C,IAAI,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;wBAC1C,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;oBACvD,CAAC;oBAED,OAAO,CAAC,GAAG,CACT,sDAAsD,MAAM,GAAG,SAAS,SAAS,CAClF,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,KAAK,CAAC,WAAW;gBACf,sDAAsD;gBACtD,IAAI,gBAAgB,EAAE,CAAC;oBACrB,OAAO;gBACT,CAAC;gBAED,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO;gBACT,CAAC;gBAED,IAAI,OAAO,EAAE,CAAC;oBACZ,IAAI,OAAO,EAAE,GAAG,EAAE,CAAC;wBACjB,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;wBAC3C,MAAM,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;oBACrC,CAAC;oBAED,IACE,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM;wBACrC,OAAO,EAAE,SAAS,EAAE,OAAO,EAC3B,CAAC;wBACD,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;wBACnC,4DAA4D;wBAC5D,MAAM,YAAY,CAChB,MAAM,EACN,OAAO,CAAC,SAAS,CAAC,OAAO,EACzB,WAAW,CAAC,SAAS,CAAC,MAAM,EAC5B,gBAAgB,EAChB,aAAa,CACd,CAAC;oBACJ,CAAC;oBAED,IAAI,YAAY,GAAG,OAAO,CACxB,OAAO,EAAE,WAAW;wBAClB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAChD,cAAc,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CACxC,CAAC;oBAEF,oDAAoD;oBACpD,IAAI,SAAS,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;wBAC3C,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;oBACrD,CAAC;oBAED,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,GAAG,YAAY,CAAC,CAAC;oBAE1D,WAAW,CAAC,KAAK,GAAG;wBAClB,GAAG,WAAW,CAAC,KAAK;wBACpB,aAAa,EAAE,QAAQ;qBACxB,CAAC;oBAEF,MAAM,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC;oBAE1D,OAAO,CAAC,GAAG,CACT,kEAAkE,CACnE,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QACD;YACE,IAAI,EAAE,wCAAwC;YAC9C,MAAM;gBACJ,OAAO;oBACL,MAAM,EAAE;wBACN,iBAAiB,EAAE,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG;qBACxE;iBACF,CAAC;YACJ,CAAC;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAiB;IAC/C,IAAI,CAAC,OAAO,IAAI,mBAAmB,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;AACpC,CAAC;AAED,SAAS,mBAAmB,CAAI,GAAY;IAC1C,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,cAAc,GAAG,CAAC,WAA+B,EAAE,EAAE,CACzD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACrB,CAAC,WAAW,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AAEhE,MAAM,mBAAmB,GAAG,CAC1B,WAAoC,EACpC,aAAqB,EACrB,EAAE,CAAC,CAAC;IACJ,GAAG,WAAW;IACd,MAAM,EAAE;QACN,GAAG,WAAW,EAAE,MAAM;QACtB,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC/D,SAAS,EAAE,aAAa,CACtB,OAAO,CAAC,aAAa,EAAE,SAAS,EAAE,eAAe,CAAC,CACnD;KACF;CACF,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,CAAC,WAA+B,EAAE,EAAE,CAC7D,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;IACvB,CAAC,WAAW,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAE1E,MAAM,oBAAoB,GAAG,CAAC,WAAoC,EAAE,EAAE,CAAC,CAAC;IACtE,GAAG,WAAW;IACd,MAAM,EAAE;QACN,GAAG,WAAW,EAAE,MAAM;QACtB,SAAS,EAAE,mCAAmC;KAC/C;CACF,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AACvE,MAAM,oBAAoB,GAAG,CAAC,WAAwB,EAAE,EAAE;IACxD,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,OAAoB;QAClB,GAAG,WAAW;QACd,WAAW,EAAE,IAAI;QACjB,YAAY,EAAE;YACZ,GAAG,WAAW,CAAC,YAAY;YAC3B,MAAM,EAAE;gBACN,GAAG,WAAW,CAAC,YAAY,EAAE,MAAM;gBACnC,cAAc,EAAE,YAAY;aAC7B;SACF;QACD,KAAK,EAAE;YACL,GAAG,WAAW,CAAC,KAAK;YACpB,QAAQ,EAAE,GAAG,EAAE;gBACb,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,WAAW,GAAG;wBAClB,MAAM,EAAE,EAAE;wBACV,QAAQ,EAAE,EAAE;wBACZ,WAAW,EAAE;4BACX,IAAI,EAAE,aAAa,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC;4BACjD,OAAO,EAAE,aAAa,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;4BAC1D,MAAM,EAAE,aAAa,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC;yBAC3D;qBACF,CAAC;oBAEF,2DAA2D;oBAC3D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;oBAClD,SAAS,GAAG,IAAI,CAAC;gBACnB,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,WAA+B,EAAE,EAAE,CAC1D,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;IACtB,CAAC,WAAW,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AAEjE,MAAM,oBAAoB,GAAG,CAC3B,WAAoC,EACpC,aAAqB,EACrB,EAAE,CAAC,CAAC;IACJ,GAAG,WAAW;IACd,MAAM,EAAE;QACN,GAAG,WAAW,EAAE,MAAM;QACtB,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;KAChE;CACF,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"vite-plugin-nitro.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-nitro/src/lib/vite-plugin-nitro.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7E,OAAO,EAAO,cAAc,EAAE,MAAM,IAAI,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,EAAE,OAAO,EAAQ,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAQ7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,sCAAsC,EAAE,MAAM,8BAA8B,CAAC;AAEtF,OAAO,EACL,WAAW,EACX,cAAc,EACd,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,2BAA2B,CAAC;AAEnC,MAAM,SAAS,GAAG,QAAQ,EAAE,KAAK,OAAO,CAAC;AACzC,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/C,IAAI,gBAAgB,GAAG,EAAE,CAAC;AAE1B,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,MAAM,UAAU,KAAK,CAAC,OAAiB,EAAE,YAA0B;IACjE,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC9D,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,KAAK,CAAC;IAChD,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC;IACxD,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,MAAM,SAAS,GAAG,IAAI,OAAO,EAAE,SAAS,IAAI,KAAK,EAAE,CAAC;IACpD,MAAM,gBAAgB,GACpB,OAAO,OAAO,EAAE,gBAAgB,KAAK,WAAW;QAC9C,CAAC,CAAC,OAAO,EAAE,gBAAgB;QAC3B,CAAC,CAAC,IAAI,CAAC;IAEX,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,MAAkB,CAAC;IACvB,IAAI,WAAwB,CAAC;IAC7B,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,MAAM,aAAa,GAGf,EAAE,CAAC;IACP,MAAM,gBAAgB,GAA2B,EAAE,CAAC;IACpD,IAAI,OAAO,GAAG,aAAa,CAAC;IAE5B,OAAO;QACL,CAAC,OAAO,EAAE,GAAG;YACX,CAAC,CAAC,eAAe,CAAC;gBACd,WAAW,EAAE,OAAO,EAAE,WAAW;gBACjC,KAAK,EAAE,OAAO,EAAE,KAAK;gBACrB,UAAU,EAAE,YAAY,EAAE,UAAU;gBACpC,IAAI,EAAE,OAAO,EAAE,IAAI;aACpB,CAAC;YACJ,CAAC,CAAC,KAAK,CAAW;QACpB;YACE,IAAI,EAAE,6BAA6B;YACnC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;gBACxC,OAAO,GAAG,OAAO,KAAK,OAAO,CAAC;gBAC9B,OAAO,GAAG,OAAO,KAAK,OAAO,CAAC;gBAC9B,QAAQ,GAAG,UAAU,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;gBAC1C,MAAM,GAAG,UAAU,CAAC;gBACpB,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;gBAE3C,OAAO,GAAG,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC;gBAC7D,SAAS,GAAG,UAAU,CACpB,OAAO,CACL,aAAa,EACb,OAAO,EACP,GAAG,UAAU,kBAAkB,OAAO,EAAE,SAAS,IAAI,KAAK,EAAE,CAC7D,CACF,CAAC;gBACF,MAAM,WAAW,GACf,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;oBAC1B,YAAY,EAAE,MAA6B,CAAC;gBAE/C,MAAM,YAAY,GAAG,eAAe,CAAC;oBACnC,aAAa;oBACb,UAAU;oBACV,OAAO;oBACP,mBAAmB,EAAE,OAAO,EAAE,mBAAmB;oBACjD,SAAS;iBACV,CAAC,CAAC;gBAEH,WAAW,GAAG;oBACZ,OAAO;oBACP,MAAM,EAAE,WAAW;oBACnB,iBAAiB,EAAE,YAAY;oBAC/B,QAAQ,EAAE,YAAY,EAAE,QAAQ,IAAI,CAAC;oBACrC,MAAM,EAAE,aAAa,CAAC,GAAG,UAAU,SAAS,CAAC;oBAC7C,QAAQ,EAAE;wBACR,aAAa,CAAC,GAAG,OAAO,IAAI,UAAU,SAAS,CAAC;wBAChD,GAAG,CAAC,OAAO,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAChD,aAAa,CAAC,GAAG,aAAa,GAAG,GAAG,EAAE,CAAC,CACxC;qBACF;oBACD,MAAM,EAAE;wBACN,GAAG,EAAE,aAAa,CAChB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAClD;wBACD,SAAS,EAAE,aAAa,CACtB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,CACzD;qBACF;oBACD,QAAQ,EAAE,aAAa,CACrB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAClD;oBACD,UAAU,EAAE;wBACV,gBAAgB,EAAE,KAAK;qBACxB;oBACD,aAAa,EAAE;wBACb,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;wBACjC,MAAM;qBACP;oBACD,6BAA6B;oBAC7B,OAAO,EAAE;wBACP,UAAU,EAAE,KAAK;qBAClB;oBACD,YAAY,EAAE;wBACZ,MAAM,CAAC,OAAO;4BACZ,IACE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;gCACvC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EACnC,CAAC;gCACD,OAAO;4BACT,CAAC;wBACH,CAAC;wBACD,OAAO,EAAE,CAAC,mBAAmB,EAAE,CAAC;qBACjC;oBACD,QAAQ,EAAE;wBACR,GAAG,CAAC,SAAS;4BACX,CAAC,CAAC,EAAE;4BACJ,CAAC,CAAC,gBAAgB;gCAChB,CAAC,CAAC;oCACE;wCACE,OAAO,EAAE,wBAAwB;wCACjC,UAAU,EAAE,IAAI;qCACjB;iCACF;gCACH,CAAC,CAAC,EAAE,CAAC;wBACT,GAAG,YAAY;qBAChB;oBACD,UAAU,EAAE,SAAS;wBACnB,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,gBAAgB;4BAChB,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC;gCACE,CAAC,GAAG,MAAM,GAAG,SAAS,KAAK,CAAC,EAAE;oCAC5B,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE;iCACrB;6BACF;oBACP,OAAO,EAAE;wBACP,sBAAsB,EAAE,WAAW;wBACnC,yBAAyB,EAAE,cAAc;wBACzC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,wBAAwB,EAAE,aAAa,EAAE,CAAC;qBAClE;iBACF,CAAC;gBAEF,IAAI,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;oBAChC,WAAW,GAAG,mBAAmB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;gBAChE,CAAC;gBAED,IAAI,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC;oBACpC,WAAW,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;gBAClD,CAAC;gBAED,IACE,eAAe,CAAC,WAAW,CAAC;oBAC5B,OAAO,KAAK,GAAG;oBACf,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,EACnD,CAAC;oBACD,WAAW,GAAG,oBAAoB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;gBACjE,CAAC;gBAED,IAAI,oBAAoB,EAAE,EAAE,CAAC;oBAC3B,WAAW,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;gBAClD,CAAC;gBAED,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;oBACzB,wDAAwD;oBACxD,gBAAgB,GAAG,OAAO,CACxB,aAAa,EACb,OAAO,EACP,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,aAAa,CACtC,CAAC;gBACJ,CAAC;gBAED,MAAM,UAAU,GAAG,aAAa,CAC9B,OAAO,CAAC,gBAAgB,EAAE,YAAY,CAAC,CACxC,CAAC;gBACF,WAAW,CAAC,KAAK,GAAG;oBAClB,eAAe,EAAE,UAAU;iBAC5B,CAAC;gBAEF,IAAI,OAAO,EAAE,CAAC;oBACZ,WAAW,CAAC,YAAY,GAAG,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC;oBACvD,WAAW,CAAC,QAAQ,GAAG,OAAO,EAAE,GAAG;wBACjC,CAAC,CAAC,sBAAsB;wBACxB,CAAC,CAAC,yBAAyB,CAAC;oBAE9B,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;wBACpC,WAAW,CAAC,SAAS,GAAG,EAAE,CAAC;wBAC3B,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;oBACvC,CAAC;oBAED,IAAI,OAAO,EAAE,SAAS,EAAE,CAAC;wBACvB,WAAW,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,IAAI,EAAE,CAAC;wBACpD,WAAW,CAAC,SAAS,CAAC,UAAU,GAAG,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC;wBAEhE,IAAI,MAAM,GAKJ,EAAE,CAAC;wBAET,MAAM,eAAe,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC;wBACnD,IACE,mBAAmB,CAA+B,eAAe,CAAC,EAClE,CAAC;4BACD,MAAM,GAAG,eAAe,CAAC;wBAC3B,CAAC;6BAAM,IAAI,OAAO,eAAe,KAAK,UAAU,EAAE,CAAC;4BACjD,MAAM,GAAG,MAAM,eAAe,EAAE,CAAC;wBACnC,CAAC;wBAED,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAC1C,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;4BAChB,IAAI,CAAC,OAAO,EAAE,CAAC;gCACb,OAAO,IAAI,CAAC;4BACd,CAAC;4BACD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gCAChC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gCACnB,OAAO,IAAI,CAAC;4BACd,CAAC;4BAED,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;gCACvB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oCACpB,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;gCACjD,CAAC;gCAED,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;oCAC7B,MAAM,UAAU,GAAG,OAAO,CACxB,aAAa,EACb,OAAO,EACP,OAAO,CAAC,gBAAgB,CACzB,CAAC;oCACF,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,CAC5C,UAAU,EACV,MAAM,CACP,CAAC;gCACJ,CAAC;gCAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gCAEzB,iDAAiD;gCACjD,IAAI,YAAY,IAAI,OAAO,EAAE,CAAC;oCAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,SAAS,kBAAkB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;gCAC3D,CAAC;gCAED,OAAO,IAAI,CAAC;4BACd,CAAC;4BAED,MAAM,aAAa,GACjB,sCAAsC,CACpC,aAAa,EACb,OAAO,EACP,OAAO,CAAC,UAAU,CACnB,CAAC;4BAEJ,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gCAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gCAEpC,IAAI,MAAM,EAAE,CAAC;oCACX,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;wCACpB,aAAa,CAAC,MAAM,CAAC;4CACnB,OAAO,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,UAAU;gDACtD,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gDACtB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;oCACxB,CAAC;oCAED,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;wCAC7B,MAAM,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;wCAClD,IAAI,aAAa,EAAE,CAAC;4CAClB,gBAAgB,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC;wCAC3C,CAAC;oCACH,CAAC;oCAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oCAElB,iDAAiD;oCACjD,IAAI,YAAY,IAAI,OAAO,EAAE,CAAC;wCAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,SAAS,kBAAkB,MAAM,EAAE,CAAC,CAAC;oCACpD,CAAC;gCACH,CAAC;4BACH,CAAC,CAAC,CAAC;4BAEH,OAAO,IAAI,CAAC;wBACd,CAAC,EACD,EAAE,CACH,CAAC;wBAEF,6DAA6D;wBAC7D,IAAI,OAAO,EAAE,IAAI,IAAI,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;4BACnD,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,uBAAuB,CACpD,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAa,EACxD,OAAO,CAAC,IAAI,CACb,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAED,iEAAiE;oBACjE,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;wBAClB,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;wBAC5C,OAAO,CAAC,SAAS,CAAC,kBAAkB;4BAClC,OAAO,CAAC,SAAS,CAAC,kBAAkB,IAAI,EAAE,CAAC;wBAC7C,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,IAAI,CACvC,2BAA2B,CAAC,OAAO,CAAC,IAAI,CAAC,CAC1C,CAAC;oBACJ,CAAC;oBAED,IAAI,QAAQ,EAAE,CAAC;wBACb,IAAI,SAAS,EAAE,CAAC;4BACd,WAAW,CAAC,SAAS,GAAG;gCACtB,MAAM,EAAE,CAAC,SAAS,CAAC;6BACpB,CAAC;wBACJ,CAAC;wBAED,WAAW,GAAG;4BACZ,GAAG,WAAW;4BACd,SAAS,EAAE;gCACT,GAAG,WAAW,CAAC,SAAS;gCACxB,QAAQ,EAAE,CAAC,MAAM,EAAE,iCAAiC,CAAC;6BACtD;4BACD,iBAAiB,EAAE,CAAC,cAAc,EAAE,4BAA4B,CAAC;4BACjE,QAAQ,EAAE;gCACR,GAAG,CAAC,SAAS;oCACX,CAAC,CAAC,EAAE;oCACJ,CAAC,CAAC,gBAAgB;wCAChB,CAAC,CAAC;4CACE;gDACE,OAAO,EAAE,wBAAwB;gDACjC,UAAU,EAAE,IAAI;6CACjB;yCACF;wCACH,CAAC,CAAC,EAAE,CAAC;gCACT,GAAG,YAAY;6BAChB;yBACF,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,WAAW,GAAG,WAAW,CACvB,WAAW,EACX,YAAmC,CACpC,CAAC;gBAEF,OAAO;oBACL,YAAY,EAAE;wBACZ,MAAM,EAAE;4BACN,KAAK,EAAE;gCACL,MAAM,EACJ,MAAM,EAAE,KAAK,EAAE,MAAM;oCACrB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;6BACpD;yBACF;wBACD,GAAG,EAAE;4BACH,KAAK,EAAE;gCACL,GAAG,EAAE,IAAI;gCACT,aAAa,EAAE;oCACb,KAAK,EACH,OAAO,EAAE,WAAW;wCACpB,OAAO,CACL,aAAa,EACb,OAAO,EACP,GAAG,UAAU,iBAAiB,CAC/B;iCACJ;gCACD,MAAM,EACJ,OAAO,EAAE,WAAW;oCACpB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;6BACjD;yBACF;qBACF;oBACD,OAAO,EAAE;wBACP,aAAa,EAAE,IAAI;wBACnB,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;4BAC1B,gBAAgB,GAAG,IAAI,CAAC;4BACxB,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;4BAE/D,IAAI,OAAO,EAAE,GAAG,IAAI,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;gCAC1D,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;4BAC1D,CAAC;4BAED,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;4BAE1B,IAAI,YAAY,GAAG,OAAO,CACxB,OAAO,EAAE,WAAW;gCAClB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAChD,cAAc,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CACxC,CAAC;4BAEF,oDAAoD;4BACpD,IAAI,SAAS,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gCAC3C,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;4BACrD,CAAC;4BAED,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,GAAG,YAAY,CAAC,CAAC;4BAE1D,WAAW,CAAC,KAAK,GAAG;gCAClB,GAAG,WAAW,CAAC,KAAK;gCACpB,aAAa,EAAE,QAAQ;6BACxB,CAAC;4BAEF,MAAM,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC;4BAE1D,IACE,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM;gCACrC,OAAO,EAAE,SAAS,EAAE,OAAO,EAC3B,CAAC;gCACD,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC;gCAChD,IAAI,CAAC,SAAS,EAAE,CAAC;oCACf,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;gCACJ,CAAC;gCAED,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;gCACnC,4DAA4D;gCAC5D,MAAM,YAAY,CAChB,MAAM,EACN,OAAO,CAAC,SAAS,CAAC,OAAO,EACzB,WAAW,CAAC,SAAS,CAAC,MAAM,EAC5B,SAAS,EACT,aAAa,EACb,OAAO,CAAC,IAAI,CACb,CAAC;4BACJ,CAAC;4BAED,OAAO,CAAC,GAAG,CACT,kEAAkE,CACnE,CAAC;wBACJ,CAAC;qBACF;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,CAAC,eAAe,CAAC,UAAyB;gBAC7C,IAAI,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;oBACvB,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC;wBAC9B,GAAG,EAAE,IAAI;wBACT,GAAG,WAAW;qBACf,CAAC,CAAC;oBACH,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;oBACtC,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;oBACnB,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,GAAqB,CAAC,CAAC;oBAEhE,IAAI,SAAS,EAAE,CAAC;wBACd,UAAU,CAAC,WAAW,CAAC,GAAG,CACxB,CACE,GAAoB,EACpB,GAAmB,EACnB,IAA+B,EAC/B,EAAE;4BACF,IAAI,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,GAAG,MAAM,GAAG,SAAS,EAAE,CAAC,EAAE,CAAC;gCACjD,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gCACrB,OAAO;4BACT,CAAC;4BAED,IAAI,EAAE,CAAC;wBACT,CAAC,CACF,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;oBACpD,CAAC;oBAED,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;wBAC5C,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;4BACzD,CAAC,CAAC,WAAW;4BACb,CAAC,CAAE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAe,CAAC;wBAC9C,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBAClE,CAAC,CAAC,CAAC;oBAEH,4CAA4C;oBAC5C,IAAI,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;wBAC1C,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;oBACvD,CAAC;oBAED,OAAO,CAAC,GAAG,CACT,sDAAsD,MAAM,GAAG,SAAS,SAAS,CAClF,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,KAAK,CAAC,WAAW;gBACf,sDAAsD;gBACtD,IAAI,gBAAgB,EAAE,CAAC;oBACrB,OAAO;gBACT,CAAC;gBAED,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO;gBACT,CAAC;gBAED,IAAI,OAAO,EAAE,CAAC;oBACZ,IAAI,OAAO,EAAE,GAAG,EAAE,CAAC;wBACjB,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;wBAC3C,MAAM,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;oBACrC,CAAC;oBAED,IACE,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM;wBACrC,OAAO,EAAE,SAAS,EAAE,OAAO,EAC3B,CAAC;wBACD,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;wBACnC,4DAA4D;wBAC5D,MAAM,YAAY,CAChB,MAAM,EACN,OAAO,CAAC,SAAS,CAAC,OAAO,EACzB,WAAW,CAAC,SAAS,CAAC,MAAM,EAC5B,gBAAgB,EAChB,aAAa,EACb,OAAO,CAAC,IAAI,CACb,CAAC;oBACJ,CAAC;oBAED,IAAI,YAAY,GAAG,OAAO,CACxB,OAAO,EAAE,WAAW;wBAClB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAChD,cAAc,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CACxC,CAAC;oBAEF,oDAAoD;oBACpD,IAAI,SAAS,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;wBAC3C,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;oBACrD,CAAC;oBAED,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,GAAG,YAAY,CAAC,CAAC;oBAE1D,WAAW,CAAC,KAAK,GAAG;wBAClB,GAAG,WAAW,CAAC,KAAK;wBACpB,aAAa,EAAE,QAAQ;qBACxB,CAAC;oBAEF,MAAM,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC;oBAE1D,OAAO,CAAC,GAAG,CACT,kEAAkE,CACnE,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QACD;YACE,IAAI,EAAE,wCAAwC;YAC9C,MAAM;gBACJ,OAAO;oBACL,MAAM,EAAE;wBACN,iBAAiB,EAAE,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG;wBACvE,GAAG,CAAC,OAAO,EAAE,IAAI;4BACf,CAAC,CAAC;gCACE,0BAA0B,EAAE,IAAI,CAAC,SAAS,CACxC,OAAO,CAAC,IAAI,CAAC,aAAa,CAC3B;gCACD,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;6BAC1D;4BACH,CAAC,CAAC,EAAE,CAAC;qBACR;iBACF,CAAC;YACJ,CAAC;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAiB;IAC/C,IAAI,CAAC,OAAO,IAAI,mBAAmB,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;AACpC,CAAC;AAED,SAAS,mBAAmB,CAAI,GAAY;IAC1C,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,cAAc,GAAG,CAAC,WAA+B,EAAE,EAAE,CACzD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACrB,CAAC,WAAW,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AAEhE,MAAM,mBAAmB,GAAG,CAC1B,WAAoC,EACpC,aAAqB,EACrB,EAAE,CAAC,CAAC;IACJ,GAAG,WAAW;IACd,MAAM,EAAE;QACN,GAAG,WAAW,EAAE,MAAM;QACtB,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC/D,SAAS,EAAE,aAAa,CACtB,OAAO,CAAC,aAAa,EAAE,SAAS,EAAE,eAAe,CAAC,CACnD;KACF;CACF,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,CAAC,WAA+B,EAAE,EAAE,CAC7D,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;IACvB,CAAC,WAAW,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAE1E,MAAM,oBAAoB,GAAG,CAAC,WAAoC,EAAE,EAAE,CAAC,CAAC;IACtE,GAAG,WAAW;IACd,MAAM,EAAE;QACN,GAAG,WAAW,EAAE,MAAM;QACtB,SAAS,EAAE,mCAAmC;KAC/C;CACF,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AACvE,MAAM,oBAAoB,GAAG,CAAC,WAAwB,EAAE,EAAE;IACxD,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,OAAoB;QAClB,GAAG,WAAW;QACd,WAAW,EAAE,IAAI;QACjB,YAAY,EAAE;YACZ,GAAG,WAAW,CAAC,YAAY;YAC3B,MAAM,EAAE;gBACN,GAAG,WAAW,CAAC,YAAY,EAAE,MAAM;gBACnC,cAAc,EAAE,YAAY;aAC7B;SACF;QACD,KAAK,EAAE;YACL,GAAG,WAAW,CAAC,KAAK;YACpB,QAAQ,EAAE,GAAG,EAAE;gBACb,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,WAAW,GAAG;wBAClB,MAAM,EAAE,EAAE;wBACV,QAAQ,EAAE,EAAE;wBACZ,WAAW,EAAE;4BACX,IAAI,EAAE,aAAa,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC;4BACjD,OAAO,EAAE,aAAa,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;4BAC1D,MAAM,EAAE,aAAa,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC;yBAC3D;qBACF,CAAC;oBAEF,2DAA2D;oBAC3D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;oBAClD,SAAS,GAAG,IAAI,CAAC;gBACnB,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,WAA+B,EAAE,EAAE,CAC1D,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;IACtB,CAAC,WAAW,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AAEjE,MAAM,oBAAoB,GAAG,CAC3B,WAAoC,EACpC,aAAqB,EACrB,EAAE,CAAC,CAAC;IACJ,GAAG,WAAW;IACd,MAAM,EAAE;QACN,GAAG,WAAW,EAAE,MAAM;QACtB,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;KAChE;CACF,CAAC,CAAC"}
|