reroute-js 0.3.1 → 0.3.3
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/cli/bin.d.ts +1 -1
- package/cli/bin.js +61 -30
- package/cli/bin.js.map +6 -6
- package/cli/index.d.ts +1 -1
- package/cli/index.js +2 -2
- package/cli/index.js.map +1 -1
- package/cli/src/cli.d.ts +1 -1
- package/cli/src/commands/dev.d.ts +1 -1
- package/cli/src/commands/gen.d.ts +1 -1
- package/cli/src/commands/init.d.ts +1 -1
- package/cli/src/commands/init.d.ts.map +1 -1
- package/cli/src/libs/index.d.ts +1 -1
- package/cli/src/libs/tailwind.d.ts +1 -1
- package/cli/src/libs/version.d.ts +11 -0
- package/cli/src/libs/version.d.ts.map +1 -0
- package/core/index.d.ts +1 -1
- package/core/index.js +2 -2
- package/core/index.js.map +1 -1
- package/core/src/bundler/hash.d.ts +1 -1
- package/core/src/bundler/index.d.ts +1 -1
- package/core/src/bundler/transpile.d.ts +1 -1
- package/core/src/content/discovery.d.ts +1 -1
- package/core/src/content/index.d.ts +1 -1
- package/core/src/content/metadata.d.ts +1 -1
- package/core/src/content/registry.d.ts +1 -1
- package/core/src/index.d.ts +1 -1
- package/core/src/ssr/data.d.ts +1 -1
- package/core/src/ssr/index.d.ts +1 -1
- package/core/src/ssr/modules.d.ts +1 -1
- package/core/src/ssr/render.d.ts +1 -1
- package/core/src/ssr/seed.d.ts +1 -1
- package/core/src/template/html.d.ts +1 -1
- package/core/src/template/index.d.ts +1 -1
- package/core/src/types.d.ts +1 -1
- package/core/src/utils/cache.d.ts +1 -1
- package/core/src/utils/compression.d.ts +1 -1
- package/core/src/utils/index.d.ts +1 -1
- package/core/src/utils/mime.d.ts +1 -1
- package/core/src/utils/path.d.ts +1 -1
- package/elysia/index.d.ts +1 -1
- package/elysia/index.js +2 -2
- package/elysia/index.js.map +1 -1
- package/elysia/src/index.d.ts +1 -1
- package/elysia/src/libs/http.d.ts +1 -1
- package/elysia/src/libs/image.d.ts +1 -1
- package/elysia/src/plugin.d.ts +1 -1
- package/elysia/src/routes/artifacts.d.ts +1 -1
- package/elysia/src/routes/content.d.ts +1 -1
- package/elysia/src/routes/dev.d.ts +1 -1
- package/elysia/src/routes/image.d.ts +1 -1
- package/elysia/src/routes/ssr.d.ts +1 -1
- package/elysia/src/routes/static.d.ts +1 -1
- package/elysia/src/types.d.ts +1 -1
- package/package.json +2 -1
- package/react/index.d.ts +1 -1
- package/react/index.js +2 -2
- package/react/index.js.map +1 -1
- package/react/src/components/ContentRoute.d.ts +1 -1
- package/react/src/components/Image.d.ts +1 -1
- package/react/src/components/Link.d.ts +1 -1
- package/react/src/components/Outlet.d.ts +1 -1
- package/react/src/components/index.d.ts +1 -1
- package/react/src/hooks/index.d.ts +1 -1
- package/react/src/hooks/useContent.d.ts +1 -1
- package/react/src/hooks/useData.d.ts +1 -1
- package/react/src/hooks/useNavigate.d.ts +1 -1
- package/react/src/hooks/useParams.d.ts +1 -1
- package/react/src/hooks/useRouter.d.ts +1 -1
- package/react/src/hooks/useSearchParams.d.ts +1 -1
- package/react/src/index.d.ts +1 -1
- package/react/src/providers/ContentProvider.d.ts +1 -1
- package/react/src/providers/RerouteProvider.d.ts +1 -1
- package/react/src/providers/RouterProvider.d.ts +1 -1
- package/react/src/providers/index.d.ts +1 -1
- package/react/src/types/any.d.ts +1 -1
- package/react/src/types/index.d.ts +1 -1
- package/react/src/types/router.d.ts +1 -1
- package/react/src/utils/content.d.ts +1 -1
- package/react/src/utils/head.d.ts +1 -1
- package/react/src/utils/index.d.ts +1 -1
- package/cli/src/commands/build.d.ts +0 -16
- package/cli/src/commands/build.d.ts.map +0 -1
package/cli/bin.d.ts
CHANGED
package/cli/bin.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
2
|
// @bun
|
|
3
3
|
/**
|
|
4
|
-
* reroute-js v0.
|
|
4
|
+
* reroute-js v0.3.2
|
|
5
5
|
*
|
|
6
6
|
* @license MIT
|
|
7
7
|
* @copyright 2025 stewones <hi@stewan.io>
|
|
@@ -21,6 +21,39 @@ var __export = (target, all) => {
|
|
|
21
21
|
};
|
|
22
22
|
var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
|
|
23
23
|
|
|
24
|
+
// packages/cli/src/libs/version.ts
|
|
25
|
+
import path from "node:path";
|
|
26
|
+
async function getVersionString() {
|
|
27
|
+
const version = await getVersion();
|
|
28
|
+
const commit = await getCommit();
|
|
29
|
+
return `Reroute v${version} ${commit}`;
|
|
30
|
+
}
|
|
31
|
+
async function getVersion() {
|
|
32
|
+
if (true) {
|
|
33
|
+
return "0.3.2";
|
|
34
|
+
}
|
|
35
|
+
const possiblePaths = [
|
|
36
|
+
path.join(import.meta.dir, "../../../../package.json"),
|
|
37
|
+
path.join(import.meta.dir, "../../../package.json"),
|
|
38
|
+
path.join(import.meta.dir, "../../package.json"),
|
|
39
|
+
path.join(import.meta.dir, "../package.json")
|
|
40
|
+
];
|
|
41
|
+
for (const pkgPath of possiblePaths) {
|
|
42
|
+
try {
|
|
43
|
+
const pkg = await Bun.file(pkgPath).json();
|
|
44
|
+
return pkg.version;
|
|
45
|
+
} catch {}
|
|
46
|
+
}
|
|
47
|
+
return "unknown";
|
|
48
|
+
}
|
|
49
|
+
async function getCommit() {
|
|
50
|
+
if (true) {
|
|
51
|
+
return "dev";
|
|
52
|
+
}
|
|
53
|
+
return "dev";
|
|
54
|
+
}
|
|
55
|
+
var init_version = () => {};
|
|
56
|
+
|
|
24
57
|
// packages/cli/src/commands/init.ts
|
|
25
58
|
var exports_init = {};
|
|
26
59
|
__export(exports_init, {
|
|
@@ -32,7 +65,7 @@ import { join } from "node:path";
|
|
|
32
65
|
async function init(args) {
|
|
33
66
|
const options = parseArgs(args);
|
|
34
67
|
if (!options) {
|
|
35
|
-
printHelp();
|
|
68
|
+
await printHelp();
|
|
36
69
|
process.exit(1);
|
|
37
70
|
}
|
|
38
71
|
try {
|
|
@@ -156,8 +189,8 @@ function printSuccess(projectName, template) {
|
|
|
156
189
|
`);
|
|
157
190
|
console.log("Learn more at https://github.com/stewones/reroute");
|
|
158
191
|
}
|
|
159
|
-
function printHelp() {
|
|
160
|
-
console.log(
|
|
192
|
+
async function printHelp() {
|
|
193
|
+
console.log(await getVersionString());
|
|
161
194
|
console.log("");
|
|
162
195
|
console.log("Usage:");
|
|
163
196
|
console.log(" reroute init <project-name> [options]");
|
|
@@ -171,25 +204,9 @@ function printHelp() {
|
|
|
171
204
|
console.log(" reroute init my-blog --template blog");
|
|
172
205
|
console.log(" reroute init my-store --template store");
|
|
173
206
|
}
|
|
174
|
-
var init_init = () => {
|
|
175
|
-
|
|
176
|
-
// packages/cli/src/commands/build.ts
|
|
177
|
-
var exports_build = {};
|
|
178
|
-
__export(exports_build, {
|
|
179
|
-
default: () => build
|
|
207
|
+
var init_init = __esm(() => {
|
|
208
|
+
init_version();
|
|
180
209
|
});
|
|
181
|
-
async function build(_args) {
|
|
182
|
-
console.log("reroute build - Coming Soon");
|
|
183
|
-
console.log("");
|
|
184
|
-
console.log("This command will build your Reroute application for production.");
|
|
185
|
-
console.log("");
|
|
186
|
-
console.log("Planned usage:");
|
|
187
|
-
console.log(" reroute build");
|
|
188
|
-
console.log(" reroute build --minify");
|
|
189
|
-
console.log(" reroute build --analyze");
|
|
190
|
-
console.log("");
|
|
191
|
-
console.log("For now, please use your own build setup or check the examples.");
|
|
192
|
-
}
|
|
193
210
|
|
|
194
211
|
// packages/cli/src/commands/dev.ts
|
|
195
212
|
var exports_dev = {};
|
|
@@ -809,17 +826,16 @@ var init_gen = __esm(() => {
|
|
|
809
826
|
});
|
|
810
827
|
|
|
811
828
|
// packages/cli/src/cli.ts
|
|
812
|
-
import
|
|
829
|
+
import path2 from "node:path";
|
|
813
830
|
var commands = {
|
|
814
831
|
init: () => Promise.resolve().then(() => (init_init(), exports_init)),
|
|
815
|
-
build: () => Promise.resolve().then(() => exports_build),
|
|
816
832
|
dev: () => Promise.resolve().then(() => exports_dev),
|
|
817
833
|
gen: () => Promise.resolve().then(() => (init_gen(), exports_gen))
|
|
818
834
|
};
|
|
819
835
|
async function main() {
|
|
820
836
|
const args = process.argv.slice(2);
|
|
821
837
|
if (args[0] === "--version" || args[0] === "-v") {
|
|
822
|
-
const version = await
|
|
838
|
+
const version = await getVersionString2();
|
|
823
839
|
console.log(version);
|
|
824
840
|
process.exit(0);
|
|
825
841
|
}
|
|
@@ -843,7 +859,7 @@ async function main() {
|
|
|
843
859
|
}
|
|
844
860
|
}
|
|
845
861
|
async function printHelp2() {
|
|
846
|
-
console.log(
|
|
862
|
+
console.log(await getVersionString2());
|
|
847
863
|
console.log("");
|
|
848
864
|
console.log("Usage:");
|
|
849
865
|
console.log(" reroute <command> [options]");
|
|
@@ -865,10 +881,19 @@ async function printHelp2() {
|
|
|
865
881
|
console.log(" reroute build --minify");
|
|
866
882
|
console.log(" reroute dev --port 3000");
|
|
867
883
|
}
|
|
868
|
-
async function
|
|
884
|
+
async function getVersionString2() {
|
|
885
|
+
const version = await getVersion2();
|
|
886
|
+
const commit = await getCommit2();
|
|
887
|
+
return `Reroute v${version} ${commit}`;
|
|
888
|
+
}
|
|
889
|
+
async function getVersion2() {
|
|
890
|
+
if (true) {
|
|
891
|
+
return "0.3.2";
|
|
892
|
+
}
|
|
869
893
|
const possiblePaths = [
|
|
870
|
-
|
|
871
|
-
|
|
894
|
+
path2.join(import.meta.dir, "../../../package.json"),
|
|
895
|
+
path2.join(import.meta.dir, "../../package.json"),
|
|
896
|
+
path2.join(import.meta.dir, "../package.json")
|
|
872
897
|
];
|
|
873
898
|
for (const pkgPath of possiblePaths) {
|
|
874
899
|
try {
|
|
@@ -878,6 +903,12 @@ async function getVersion() {
|
|
|
878
903
|
}
|
|
879
904
|
return "unknown";
|
|
880
905
|
}
|
|
906
|
+
async function getCommit2() {
|
|
907
|
+
if (true) {
|
|
908
|
+
return "dev";
|
|
909
|
+
}
|
|
910
|
+
return "dev";
|
|
911
|
+
}
|
|
881
912
|
main();
|
|
882
913
|
|
|
883
|
-
//# debugId=
|
|
914
|
+
//# debugId=17CDCC0716BA537B64756E2164756E21
|
package/cli/bin.js.map
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../packages/cli/src/
|
|
3
|
+
"sources": ["../../packages/cli/src/libs/version.ts", "../../packages/cli/src/commands/init.ts", "../../packages/cli/src/commands/dev.ts", "../../packages/cli/src/libs/tailwind.ts", "../../packages/cli/src/commands/gen.ts", "../../packages/cli/src/cli.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
|
-
"
|
|
6
|
-
"#!/usr/bin/env bun\n\n/**\n * Reroute
|
|
5
|
+
"import path from 'node:path';\n\n// Version and commit injected at build time\ndeclare const __REROUTE_VERSION__: string;\ndeclare const __REROUTE_COMMIT__: string;\n\nexport async function getVersionString(): Promise<string> {\n\tconst version = await getVersion();\n\tconst commit = await getCommit();\n\treturn `Reroute v${version} ${commit}`;\n}\n\nasync function getVersion(): Promise<string> {\n\t// Use version injected at build time\n\tif (typeof __REROUTE_VERSION__ !== 'undefined') {\n\t\treturn __REROUTE_VERSION__;\n\t}\n\n\t// Fallback for development: try to find package.json\n\tconst possiblePaths = [\n\t\tpath.join(import.meta.dir, '../../../../package.json'),\n\t\tpath.join(import.meta.dir, '../../../package.json'),\n\t\tpath.join(import.meta.dir, '../../package.json'),\n\t\tpath.join(import.meta.dir, '../package.json'),\n\t];\n\n\tfor (const pkgPath of possiblePaths) {\n\t\ttry {\n\t\t\tconst pkg = await Bun.file(pkgPath).json();\n\t\t\treturn pkg.version;\n\t\t} catch {}\n\t}\n\n\treturn 'unknown';\n}\n\nasync function getCommit(): Promise<string> {\n\t// Use commit injected at build time\n\tif (typeof __REROUTE_COMMIT__ !== 'undefined') {\n\t\treturn __REROUTE_COMMIT__;\n\t}\n\n\t// Fallback for development\n\treturn 'dev';\n}\n",
|
|
6
|
+
"#!/usr/bin/env bun\n\n/**\n * Reroute init command\n *\n * Scaffold a new Reroute project with templates\n */\n\nimport { existsSync } from 'node:fs';\nimport { mkdir, readdir, readFile, writeFile } from 'node:fs/promises';\nimport { join } from 'node:path';\nimport { getVersionString } from '../libs/version';\n\ninterface InitOptions {\n\tprojectName: string;\n\ttemplate: 'basic' | 'blog' | 'store';\n}\n\nexport default async function init(args: string[]) {\n\tconst options = parseArgs(args);\n\n\tif (!options) {\n\t\tawait printHelp();\n\t\tprocess.exit(1);\n\t}\n\n\ttry {\n\t\tawait scaffoldProject(options);\n\t} catch (error) {\n\t\tconsole.error('Error scaffolding project:', error);\n\t\tprocess.exit(1);\n\t}\n}\n\nfunction parseArgs(args: string[]): InitOptions | null {\n\tif (args.length === 0 || args[0] === '--help' || args[0] === '-h') {\n\t\treturn null;\n\t}\n\n\tconst projectName = args[0];\n\n\tif (!projectName || projectName.startsWith('-')) {\n\t\tconsole.error('Error: Project name is required');\n\t\treturn null;\n\t}\n\n\t// Validate project name\n\tif (!/^[a-z0-9-_]+$/i.test(projectName)) {\n\t\tconsole.error(\n\t\t\t'Error: Project name can only contain letters, numbers, hyphens, and underscores',\n\t\t);\n\t\treturn null;\n\t}\n\n\tlet template: 'basic' | 'blog' | 'store' = 'basic';\n\n\t// Parse template flag\n\tconst templateIndex = args.indexOf('--template');\n\tif (templateIndex !== -1 && args[templateIndex + 1]) {\n\t\tconst templateArg = args[templateIndex + 1];\n\t\tif (['basic', 'blog', 'store'].includes(templateArg)) {\n\t\t\ttemplate = templateArg as 'basic' | 'blog' | 'store';\n\t\t} else {\n\t\t\tconsole.error(\n\t\t\t\t`Error: Unknown template \"${templateArg}\". Available templates: basic, blog, store`,\n\t\t\t);\n\t\t\treturn null;\n\t\t}\n\t}\n\n\treturn { projectName, template };\n}\n\nasync function scaffoldProject(options: InitOptions) {\n\tconst { projectName, template } = options;\n\tconst projectPath = join(process.cwd(), projectName);\n\n\t// Check if directory already exists\n\tif (existsSync(projectPath)) {\n\t\tconsole.error(`Error: Directory \"${projectName}\" already exists`);\n\t\tprocess.exit(1);\n\t}\n\n\tconsole.log(`\\n🏗️ Creating project: ${projectName}`);\n\tconsole.log(`\\n📦 Template: ${template}\\n`);\n\n\t// Get template directory path\n\tconst templatePath = join(import.meta.dir, '..', '_', template);\n\n\tif (!existsSync(templatePath)) {\n\t\tconsole.error(`Error: Template directory not found at ${templatePath}`);\n\t\tprocess.exit(1);\n\t}\n\n\t// Create project directory\n\tawait mkdir(projectPath, { recursive: true });\n\n\t// Copy template files\n\tawait copyTemplateFiles(templatePath, projectPath, {\n\t\tPROJECT_NAME: projectName,\n\t});\n\n\t// Run bun install\n\tconsole.log('📥 Installing dependencies...\\n');\n\tconst proc = Bun.spawn(['bun', 'install'], {\n\t\tcwd: projectPath,\n\t\tstdout: 'inherit',\n\t\tstderr: 'inherit',\n\t});\n\n\tawait proc.exited;\n\n\t// Print success message\n\tprintSuccess(projectName, template);\n}\n\nasync function copyTemplateFiles(\n\ttemplatePath: string,\n\ttargetPath: string,\n\tvariables: Record<string, string>,\n) {\n\tconst entries = await readdir(templatePath, { withFileTypes: true });\n\n\tfor (const entry of entries) {\n\t\tconst sourcePath = join(templatePath, entry.name);\n\t\tconst destPath = join(targetPath, entry.name);\n\n\t\tif (entry.isDirectory()) {\n\t\t\t// Create directory and recurse\n\t\t\tawait mkdir(destPath, { recursive: true });\n\t\t\tawait copyTemplateFiles(sourcePath, destPath, variables);\n\t\t} else if (entry.isFile()) {\n\t\t\t// Read file content\n\t\t\tconst content = await readFile(sourcePath, 'utf-8');\n\n\t\t\t// Replace variables in content\n\t\t\tlet processedContent = content;\n\t\t\tfor (const [key, value] of Object.entries(variables)) {\n\t\t\t\tconst placeholder = `{{${key}}}`;\n\t\t\t\tprocessedContent = processedContent.split(placeholder).join(value);\n\t\t\t}\n\n\t\t\t// Write file\n\t\t\tawait writeFile(destPath, processedContent);\n\t\t}\n\t}\n}\n\nfunction printSuccess(projectName: string, template: string) {\n\tconsole.log('\\n🏎️ Project created successfully!\\n');\n\tconsole.log('Next steps:\\n');\n\tconsole.log(` cd ${projectName}`);\n\tconsole.log(' bunx reroute-js gen # Required on first run');\n\tconsole.log(' bun dev\\n');\n\tconsole.log('Your app will be running at http://localhost:3000\\n');\n\tconsole.log('Project structure:');\n\tconsole.log(' src/');\n\tconsole.log(' |-- index.ts # Server entry point');\n\tconsole.log(' +-- client/');\n\tconsole.log(' |-- App.tsx # Root React component');\n\tconsole.log(' |-- index.tsx # Client entry point');\n\tconsole.log(' |-- index.html # HTML template');\n\tconsole.log(' |-- routes/ # File-based routes');\n\tif (template === 'blog') {\n\t\tconsole.log(' | |-- blog/');\n\t\tconsole.log(' | | |-- content/ # Blog posts');\n\t\tconsole.log(' | | |-- [slug].tsx');\n\t\tconsole.log(' | | +-- index.tsx');\n\t}\n\tif (template === 'store') {\n\t\tconsole.log(' | |-- products/');\n\t\tconsole.log(' | |-- categories/');\n\t\tconsole.log(' |-- lib/ # API client & utilities');\n\t\tconsole.log(' +-- theme.css # Tailwind CSS v4');\n\t}\n\tconsole.log(' | |-- index.tsx');\n\tconsole.log(' | +-- about.tsx');\n\tconsole.log(' +-- components/ # React components\\n');\n\tconsole.log('Learn more at https://github.com/stewones/reroute');\n}\n\nasync function printHelp() {\n\tconsole.log(await getVersionString());\n\tconsole.log('');\n\tconsole.log('Usage:');\n\tconsole.log(' reroute init <project-name> [options]');\n\tconsole.log('');\n\tconsole.log('Options:');\n\tconsole.log(' --template <name> Template to use (basic, blog, store)');\n\tconsole.log(' -h, --help Show help');\n\tconsole.log('');\n\tconsole.log('Examples:');\n\tconsole.log(' reroute init my-app');\n\tconsole.log(' reroute init my-blog --template blog');\n\tconsole.log(' reroute init my-store --template store');\n}\n",
|
|
7
7
|
"#!/usr/bin/env bun\n\n/**\n * Reroute dev command\n *\n * Start a development server with live reload\n */\n\nexport default async function dev(_args: string[]) {\n\tconsole.log('reroute dev - Coming Soon');\n\tconsole.log('');\n\tconsole.log('This command will start a development server with live reload.');\n\tconsole.log('');\n\tconsole.log('Planned usage:');\n\tconsole.log(' reroute dev');\n\tconsole.log(' reroute dev --port 3000');\n\tconsole.log(' reroute dev --host 0.0.0.0');\n\tconsole.log('');\n\tconsole.log('Note: dev already generates content registry and static assets');\n\tconsole.log('');\n\tconsole.log(\n\t\t'For now, please use your own dev server setup or check the examples.',\n\t);\n}\n",
|
|
8
8
|
"/**\n * Tailwind CSS v4 integration utility\n *\n * Manages Tailwind CLI integration for the Reroute framework\n */\n\nimport { spawn } from 'node:child_process';\nimport { existsSync, readFileSync } from 'node:fs';\nimport { join } from 'node:path';\n\n/**\n * Check if Tailwind CSS v4 is available in the project\n */\nfunction isTailwindAvailable(cwd: string): boolean {\n\tconst packageJsonPath = join(cwd, 'package.json');\n\n\tif (!existsSync(packageJsonPath)) {\n\t\treturn false;\n\t}\n\n\ttry {\n\t\tconst packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));\n\t\tconst deps = {\n\t\t\t...packageJson.dependencies,\n\t\t\t...packageJson.devDependencies,\n\t\t};\n\n\t\treturn '@tailwindcss/cli' in deps;\n\t} catch {\n\t\treturn false;\n\t}\n}\n\n/**\n * Get the default paths for Tailwind CSS\n */\nfunction getTailwindPaths(cwd: string) {\n\tconst input = join(cwd, 'src/client/theme.css');\n\tconst output = join(cwd, '.reroute/theme.css');\n\n\treturn { input, output };\n}\n\n/**\n * Check if Tailwind input file exists and uses v4 format\n */\nfunction hasTailwindInput(cwd: string): boolean {\n\tconst { input } = getTailwindPaths(cwd);\n\n\tif (!existsSync(input)) {\n\t\treturn false;\n\t}\n\n\ttry {\n\t\tconst content = readFileSync(input, 'utf-8');\n\t\t// v4 uses @import \"tailwindcss\"\n\t\treturn content.includes('@import \"tailwindcss\"');\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nfunction resolveTailwindBin(cwd: string): string {\n\t// Try to find tailwindcss binary, checking up to 3 levels up\n\tconst pathsToTry = [\n\t\tjoin(cwd, 'node_modules/.bin/tailwindcss'),\n\t\tjoin(cwd, '../node_modules/.bin/tailwindcss'),\n\t\tjoin(cwd, '../../node_modules/.bin/tailwindcss'),\n\t\tjoin(cwd, '../../../node_modules/.bin/tailwindcss'),\n\t];\n\n\tfor (const binPath of pathsToTry) {\n\t\tif (existsSync(binPath)) {\n\t\t\treturn binPath;\n\t\t}\n\t}\n\n\t// Fallback to the default location if none found\n\treturn join(cwd, 'node_modules/.bin/tailwindcss');\n}\n\n/**\n * Build Tailwind CSS using the Tailwind CLI\n */\nasync function buildTailwind(cwd: string): Promise<void> {\n\tconst { input, output } = getTailwindPaths(cwd);\n\n\treturn new Promise((resolve, reject) => {\n\t\tconst tailwindBin = resolveTailwindBin(cwd);\n\t\tconst args = ['-i', input, '-o', output];\n\n\t\tconsole.log(`[reroute/tailwind] build start: -i ${input} -o ${output}`);\n\n\t\tconst tailwind = spawn(tailwindBin, args, {\n\t\t\tcwd,\n\t\t\tstdio: 'pipe',\n\t\t});\n\n\t\ttailwind.stdout?.on('data', (data) => {\n\t\t\tconst line = data.toString().trim();\n\t\t\tif (line) {\n\t\t\t\tconsole.log(`[reroute/tailwind] ${line}`);\n\t\t\t}\n\t\t});\n\n\t\ttailwind.stderr?.on('data', (data) => {\n\t\t\tconst line = data.toString().trim();\n\t\t\tif (line) {\n\t\t\t\tconsole.log(`[reroute/tailwind] ${line}`);\n\t\t\t}\n\t\t});\n\n\t\ttailwind.on('close', (code) => {\n\t\t\tif (code === 0) {\n\t\t\t\tconsole.log('[reroute/tailwind] build done');\n\t\t\t\tresolve();\n\t\t\t} else {\n\t\t\t\treject(new Error(`Tailwind CSS build failed with code ${code}`));\n\t\t\t}\n\t\t});\n\n\t\ttailwind.on('error', (error) => {\n\t\t\treject(error);\n\t\t});\n\t});\n}\n\n/**\n * Build Tailwind once if installed and input exists.\n * Returns true if a build was attempted (success or failure), false if skipped.\n */\nexport async function buildTailwindIfConfigured(cwd: string): Promise<boolean> {\n\ttry {\n\t\tif (isTailwindAvailable(cwd) && hasTailwindInput(cwd)) {\n\t\t\tawait buildTailwind(cwd);\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t} catch (e) {\n\t\tconsole.warn('[reroute/tailwind] build failed:', e);\n\t\treturn true;\n\t}\n}\n",
|
|
9
9
|
"#!/usr/bin/env bun\nimport { watch } from 'node:fs';\nimport { mkdir, readdir, rm, writeFile } from 'node:fs/promises';\nimport { join } from 'node:path';\nimport { pathToFileURL } from 'node:url';\nimport { buildTailwindIfConfigured } from '../libs/tailwind';\n\n// biome-ignore lint/suspicious/noExplicitAny: flexible content meta type\ntype Doc = any;\n\ninterface RouteFile {\n\tpath: string;\n\tpattern: string;\n\tfilePath: string;\n\tisLayout: boolean;\n\tisDynamic: boolean;\n\tparams: string[];\n\t/** special case for [404].tsx */\n\tisNotFound?: boolean;\n\t/** when isNotFound, this is the base pattern to match as a prefix */\n\tnotFoundBasePattern?: string;\n}\n\ninterface RouteTree {\n\troutes: RouteFile[];\n\tlayouts: RouteFile[];\n\tnotFoundRoutes: RouteFile[];\n}\n\nconst ROUTES_DIR = 'src/client/routes';\nconst OUTPUT_DIR = '.reroute';\nconst OUTPUT_ROUTES = '.reroute/routes.ts';\nconst OUTPUT_CONTENT_TS = '.reroute/content.ts';\nconst OUTPUT_COLLECTIONS_DIR = '.reroute/collections';\nconst OUTPUT_INDEX = '.reroute/index.ts';\n\nasync function cleanupOutputDir(cwd: string) {\n\ttry {\n\t\t// Remove generated files\n\t\tawait rm(join(cwd, OUTPUT_DIR), { force: true });\n\t\t// Ensure .reroute exists for subsequent writes\n\t\tawait mkdir(join(cwd, OUTPUT_DIR), { recursive: true });\n\t\tconsole.log('[reroute/gen] Cleaned up generated artifacts in .reroute');\n\t} catch {\n\t\t// Ignore cleanup errors\n\t}\n}\n\nasync function scanDirectory(dir: string, base = ''): Promise<string[]> {\n\tconst files: string[] = [];\n\tconst entries = await readdir(dir, { withFileTypes: true });\n\n\tfor (const entry of entries) {\n\t\tconst fullPath = join(dir, entry.name);\n\t\tconst relativePath = join(base, entry.name);\n\n\t\tif (entry.isDirectory()) {\n\t\t\t// Skip content directories; those are not routes\n\t\t\tif (entry.name === 'content') continue;\n\t\t\tconst nested = await scanDirectory(fullPath, relativePath);\n\t\t\tfiles.push(...nested);\n\t\t} else if (\n\t\t\tentry.isFile() &&\n\t\t\t(entry.name.endsWith('.tsx') || entry.name.endsWith('.ts'))\n\t\t) {\n\t\t\t// Skip non-route files and any files under a content/ segment\n\t\t\tif (\n\t\t\t\trelativePath.includes('/content/') ||\n\t\t\t\trelativePath.startsWith('content/')\n\t\t\t) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (!entry.name.startsWith('_') || entry.name === '[layout].tsx') {\n\t\t\t\tfiles.push(relativePath);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn files;\n}\n\n// Recursively scan for [404].tsx or [404].ts anywhere under routes, including content dirs\nasync function scan404Files(dir: string, base = ''): Promise<string[]> {\n\tconst files: string[] = [];\n\tconst entries = await readdir(dir, { withFileTypes: true });\n\tfor (const entry of entries) {\n\t\tconst fullPath = join(dir, entry.name);\n\t\tconst relativePath = join(base, entry.name);\n\t\tif (entry.isDirectory()) {\n\t\t\tconst nested = await scan404Files(fullPath, relativePath);\n\t\t\tfiles.push(...nested);\n\t\t} else if (entry.isFile()) {\n\t\t\tif (/^\\[404]\\.(tsx|ts)$/.test(entry.name)) files.push(relativePath);\n\t\t}\n\t}\n\treturn files;\n}\n\nfunction fileToRoute(filePath: string): RouteFile {\n\tconst isLayout =\n\t\tfilePath.endsWith('[layout].tsx') || filePath.endsWith('[layout].ts');\n\n\t// Remove extension\n\tlet routePath = filePath.replace(/\\.(tsx|ts)$/, '');\n\n\t// Handle layouts\n\tif (isLayout) {\n\t\troutePath = routePath.replace(/[layout]$/, '').replace(/\\/$/, '');\n\t}\n\n\t// Convert index to /\n\troutePath = routePath.replace(/\\/index$/, '').replace(/^index$/, '');\n\n\t// Extract params from [param] syntax\n\tconst params: string[] = [];\n\tconst pattern = routePath.replace(/\\[([^\\]]+)\\]/g, (_, param) => {\n\t\tparams.push(param);\n\t\treturn `:${param}`;\n\t});\n\n\t// Ensure leading slash\n\tconst normalizedPattern = pattern === '' ? '/' : `/${pattern}`;\n\n\t// Special case: [404].tsx files act as NotFound entries for their directory\n\tconst isNotFound = /(^|\\/)\\[404\\]$/.test(routePath);\n\tlet notFoundBasePattern: string | undefined;\n\tif (isNotFound) {\n\t\tconst base = routePath.replace(/(^|\\/)\\[404\\]$/, '').replace(/\\/$/, '');\n\t\tnotFoundBasePattern = base ? `/${base}` : '/';\n\t}\n\n\treturn {\n\t\tpath: routePath,\n\t\tpattern: normalizedPattern,\n\t\tfilePath,\n\t\tisLayout,\n\t\tisDynamic: params.length > 0,\n\t\tparams,\n\t\tisNotFound,\n\t\tnotFoundBasePattern,\n\t};\n}\n\nfunction sortRoutes(routes: RouteFile[]): RouteFile[] {\n\t// Sort by specificity: static routes first, then dynamic, then catch-all\n\treturn routes.sort((a, b) => {\n\t\tconst aDepth = a.pattern.split('/').length;\n\t\tconst bDepth = b.pattern.split('/').length;\n\n\t\t// Deeper routes first\n\t\tif (aDepth !== bDepth) return bDepth - aDepth;\n\n\t\t// Static before dynamic\n\t\tif (!a.isDynamic && b.isDynamic) return -1;\n\t\tif (a.isDynamic && !b.isDynamic) return 1;\n\n\t\t// Alphabetical\n\t\treturn a.pattern.localeCompare(b.pattern);\n\t});\n}\n\nfunction generateRouteTree(files: string[]): RouteTree {\n\tconst routes: RouteFile[] = [];\n\tconst layouts: RouteFile[] = [];\n\tconst notFoundRoutes: RouteFile[] = [];\n\n\tfor (const file of files) {\n\t\tconst route = fileToRoute(file);\n\t\tif (route.isLayout) {\n\t\t\tlayouts.push(route);\n\t\t} else if (route.isNotFound) {\n\t\t\t// Do not include [404] as a normal route; store separately\n\t\t\tnotFoundRoutes.push(route);\n\t\t} else {\n\t\t\troutes.push(route);\n\t\t}\n\t}\n\n\treturn {\n\t\troutes: sortRoutes(routes),\n\t\tlayouts,\n\t\tnotFoundRoutes: notFoundRoutes,\n\t};\n}\n\nfunction generateTypeScript(tree: RouteTree): string {\n\t// Import only default exports so optional named exports like\n\t// `ssr` and `meta` can be tree-shaken from the client bundle.\n\tconst imports = [\n\t\t...tree.routes.map(\n\t\t\t(r, i) =>\n\t\t\t\t`import Route${i} from '../src/client/routes/${r.filePath.replace(/\\.(tsx|ts)$/, '')}';`,\n\t\t),\n\t\t...tree.layouts.map(\n\t\t\t(l, i) =>\n\t\t\t\t`import Layout${i} from '../src/client/routes/${l.filePath.replace(/\\.(tsx|ts)$/, '')}';`,\n\t\t),\n\t\t...tree.notFoundRoutes.map(\n\t\t\t(nf, i) =>\n\t\t\t\t`import NotFound${i} from '../src/client/routes/${nf.filePath.replace(/\\.(tsx|ts)$/, '')}';`,\n\t\t),\n\t].join('\\n');\n\n\tconst routesArray = tree.routes\n\t\t.map((r, i) => {\n\t\t\treturn ` {\n pattern: \"${r.pattern}\",\n path: \"${r.path}\",\n component: Route${i},\n params: ${JSON.stringify(r.params)},\n isDynamic: ${r.isDynamic},\n } as const`;\n\t\t})\n\t\t.join(',\\n');\n\n\tconst routePatterns = tree.routes.map((r) => ` | \"${r.pattern}\"`).join('\\n');\n\n\tconst routeParamsUnion = tree.routes\n\t\t.filter((r) => r.isDynamic)\n\t\t.map((r) => {\n\t\t\tconst params = r.params.map((p) => `${p}: string`).join('; ');\n\t\t\treturn ` T extends \"${r.pattern}\" ? { ${params} } :`;\n\t\t})\n\t\t.join('\\n');\n\n\tconst layoutsArray = tree.layouts\n\t\t.map((l, i) => {\n\t\t\treturn ` {\n pattern: \"${l.pattern}\",\n path: \"${l.path}\",\n component: Layout${i},\n } as const`;\n\t\t})\n\t\t.join(',\\n');\n\n\tconst notFoundRoutesArray = tree.notFoundRoutes\n\t\t.map((nf, i) => {\n\t\t\treturn ` {\n pattern: \"${nf.notFoundBasePattern || '/'}\",\n path: \"${nf.path}\",\n component: NotFound${i},\n } as const`;\n\t\t})\n\t\t.join(',\\n');\n\n\treturn `// 🚨 Auto-generated by Reroute - DO NOT EDIT 🚨\n/* eslint-disable */\n// @ts-nocheck\n\n${imports}\n\nexport const routes: RouteInfo = [\n${routesArray}\n] as const;\n\nexport const layouts = [\n${layoutsArray || ''}\n] as const;\n\nexport const notFoundRoutes = [\n${notFoundRoutesArray || ''}\n] as const;\n\nexport type RoutePath =\n${routePatterns || ' | \"/\"'};\n\nexport type RouteParams<T extends RoutePath> = ${\n\t\trouteParamsUnion\n\t\t\t? `\\n${routeParamsUnion}\\n Record<string, never>;`\n\t\t\t: 'Record<string, never>;'\n\t}\n\nexport interface Route {\n pattern: string;\n path: string;\n component: any;\n params: string[];\n isDynamic: boolean;\n}\n\nexport function matchRoute(pathname: string): { route: Route; params: Record<string, string> } | null {\n for (const route of routes) {\n const match = matchPattern(route.pattern, pathname);\n if (match) {\n return { route, params: match };\n }\n }\n return null;\n}\n\nfunction matchPattern(pattern: string, pathname: string): Record<string, string> | null {\n const patternParts = pattern.split('/').filter(Boolean);\n const pathnameParts = pathname.split('/').filter(Boolean);\n\n if (patternParts.length !== pathnameParts.length) {\n return null;\n }\n\n const params: Record<string, string> = {};\n\n for (let i = 0; i < patternParts.length; i++) {\n const patternPart = patternParts[i];\n const pathnamePart = pathnameParts[i];\n\n if (patternPart.startsWith(':')) {\n params[patternPart.slice(1)] = pathnamePart;\n } else if (patternPart !== pathnamePart) {\n return null;\n }\n }\n\n return params;\n}\n`;\n}\n\nasync function listContentFiles(collectionDir: string): Promise<string[]> {\n\ttry {\n\t\tconst entries = await readdir(collectionDir, { withFileTypes: true });\n\t\treturn entries\n\t\t\t.filter(\n\t\t\t\t(e) =>\n\t\t\t\t\te.isFile() && /\\.(tsx|ts)$/.test(e.name) && !e.name.startsWith('_'),\n\t\t\t)\n\t\t\t.map((e) => e.name);\n\t} catch {\n\t\treturn [];\n\t}\n}\n\nasync function sha8(text: string): Promise<string> {\n\tconst data = new TextEncoder().encode(text);\n\tconst buf = await crypto.subtle.digest('SHA-256', data);\n\tlet hex = '';\n\tfor (const b of new Uint8Array(buf)) hex += b.toString(16).padStart(2, '0');\n\treturn hex.slice(0, 8);\n}\n\nasync function buildContentChunks(cwd: string) {\n\tconst routesRoot = join(cwd, ROUTES_DIR);\n\tconsole.log(`[reroute/content] scan ${routesRoot}`);\n\t// Find any '<collection>/content/*.(ts|tsx)'\n\tconst collections = await readdir(routesRoot, { withFileTypes: true });\n\tconst results: Array<{\n\t\tcollection: string;\n\t\tname: string;\n\t\tslug: string;\n\t\thref: string;\n\t\tmoduleUrl: string;\n\t\tmeta: Doc;\n\t}> = [];\n\n\tfor (const c of collections) {\n\t\tif (!c.isDirectory()) continue;\n\t\tconst collection = c.name;\n\t\tconst contentDir = join(routesRoot, collection, 'content');\n\t\tconsole.log(`[reroute/content] collection ${collection} dir ${contentDir}`);\n\t\tconst files = await listContentFiles(contentDir);\n\t\tconsole.log(`[reroute/content] files ${files.join(',')}`);\n\t\tif (!files.length) continue;\n\n\t\tfor (const file of files) {\n\t\t\tconst name = file.replace(/\\.(tsx|ts)$/, '');\n\t\t\tconst absSrc = join(contentDir, file);\n\t\t\t// Build to JS once (no minify) for dev reliability\n\t\t\tlet code = '';\n\t\t\ttry {\n\t\t\t\tconsole.log(`[reroute/content] build ${absSrc}`);\n\t\t\t\tconst result = await Bun.build({\n\t\t\t\t\tentrypoints: [absSrc],\n\t\t\t\t\ttarget: 'browser',\n\t\t\t\t\tformat: 'esm',\n\t\t\t\t\tsplitting: false,\n\t\t\t\t\tsourcemap: Bun.env.NODE_ENV === 'production' ? 'linked' : 'none',\n\t\t\t\t\tminify: Bun.env.NODE_ENV === 'production',\n\t\t\t\t\tdefine: {\n\t\t\t\t\t\t'process.env.NODE_ENV':\n\t\t\t\t\t\t\tBun.env.NODE_ENV === 'production'\n\t\t\t\t\t\t\t\t? '\"production\"'\n\t\t\t\t\t\t\t\t: '\"development\"',\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t\tif (!result.success) throw new Error('build failed');\n\t\t\t\tcode = await result.outputs[0].text();\n\t\t\t} catch (e) {\n\t\t\t\tconsole.error(\n\t\t\t\t\t'[reroute/gen] Failed to build content chunk:',\n\t\t\t\t\tabsSrc,\n\t\t\t\t\te,\n\t\t\t\t);\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tconst hash = await sha8(code);\n\t\t\tconst chunkRelDir = join('.reroute', 'chunks', collection);\n\t\t\tconst chunkAbsDir = join(cwd, chunkRelDir);\n\t\t\tconst outFile = `${name}.${hash}.js`;\n\t\t\tconst absOut = join(chunkAbsDir, outFile);\n\t\t\tawait mkdir(chunkAbsDir, { recursive: true });\n\t\t\ttry {\n\t\t\t\tconst exists = await Bun.file(absOut).exists();\n\t\t\t\tif (!exists) await writeFile(absOut, code, 'utf-8');\n\t\t\t} catch {}\n\n\t\t\t// Meta via source import (not bundled)\n\t\t\tlet meta: Doc = {};\n\t\t\ttry {\n\t\t\t\tconsole.log(`[reroute/content] meta ${absSrc}`);\n\t\t\t\tconst url = `${pathToFileURL(absSrc).href}?t=${Date.now()}`;\n\t\t\t\tconst m = await import(url);\n\t\t\t\tmeta = (m as Doc).meta || {};\n\t\t\t} catch {}\n\n\t\t\tresults.push({\n\t\t\t\tcollection,\n\t\t\t\tname,\n\t\t\t\tslug: name,\n\t\t\t\thref: `/${collection}/${name}`,\n\t\t\t\tmoduleUrl: (\n\t\t\t\t\t'/' +\n\t\t\t\t\tchunkRelDir.replace(/\\\\/g, '/') +\n\t\t\t\t\t'/' +\n\t\t\t\t\toutFile\n\t\t\t\t).replace(/\\\\+/g, '/'),\n\t\t\t\tmeta,\n\t\t\t});\n\t\t}\n\t}\n\n\t// Write .reroute/content.ts (types for tooling only)\n\tconst lines: string[] = [];\n\tlines.push('// 🚨 Auto-generated by Reroute - DO NOT EDIT 🚨');\n\tlines.push('/* eslint-disable */');\n\tlines.push('// @ts-nocheck');\n\tlines.push('');\n\tlines.push('export const contents = [');\n\tfor (const e of results) {\n\t\tlines.push(\n\t\t\t\" { collection: '\" +\n\t\t\t\te.collection +\n\t\t\t\t\"', slug: '\" +\n\t\t\t\te.slug +\n\t\t\t\t\"', name: '\" +\n\t\t\t\te.name +\n\t\t\t\t\"', href: '\" +\n\t\t\t\te.href +\n\t\t\t\t\"', module: '\" +\n\t\t\t\te.moduleUrl +\n\t\t\t\t\"', meta: \" +\n\t\t\t\tJSON.stringify(e.meta || {}) +\n\t\t\t\t' },',\n\t\t);\n\t}\n\tlines.push('] as const;');\n\tlines.push('');\n\tlines.push('export const byCollection: Record<string, any[]> = {};');\n\tlines.push(\n\t\t'for (const c of contents) { (byCollection[c.collection] ||= []).push(c as any); }',\n\t);\n\tlines.push('');\n\tlines.push(\n\t\t'export const byCollectionAndName: Record<string, Record<string, any>> = {};',\n\t);\n\tlines.push(\n\t\t'for (const c of contents) { ((byCollectionAndName[c.collection] ||= {})[c.name] = c as any); }',\n\t);\n\tlines.push('');\n\tlines.push('export type Collections = keyof typeof byCollection;');\n\tlines.push(\n\t\t'export type Names<C extends Collections> = keyof (typeof byCollectionAndName)[C];',\n\t);\n\tlines.push('export type ContentEntry = (typeof contents)[number];');\n\tlines.push('');\n\tlines.push(\n\t\t'export function getContentEntry<C extends string, N extends string>(collection: C, name: N) {',\n\t);\n\tlines.push(' const m = (byCollectionAndName as any)[collection];');\n\tlines.push(' return m ? (m as Record<string, any>)[name] : undefined;');\n\tlines.push('}');\n\tlines.push('');\n\n\tawait mkdir(join(cwd, '.reroute'), { recursive: true });\n\tawait writeFile(join(cwd, OUTPUT_CONTENT_TS), lines.join('\\n'), 'utf-8');\n\tconsole.log(`[reroute/content] wrote ${join(cwd, OUTPUT_CONTENT_TS)}`);\n\n\t// Write per-collection runtime ESM files under .reroute/collections/<collection>.js\n\tconst collectionsSet = new Set(results.map((r) => r.collection));\n\tawait mkdir(join(cwd, OUTPUT_COLLECTIONS_DIR), { recursive: true });\n\tfor (const collection of collectionsSet) {\n\t\tconst items = results.filter((r) => r.collection === collection);\n\t\tconst js: string[] = [];\n\t\tjs.push('// 🚨 Auto-generated by Reroute - DO NOT EDIT 🚨');\n\t\tjs.push('');\n\t\tjs.push('export const items = [');\n\t\tfor (const e of items) {\n\t\t\tjs.push(\n\t\t\t\t` { collection: '${e.collection}', slug: '${e.slug}', name: '${e.name}', href: '${e.href}', module: '${e.moduleUrl}', meta: ${JSON.stringify(e.meta || {})} },`,\n\t\t\t);\n\t\t}\n\t\tjs.push('];');\n\t\tjs.push('');\n\t\tjs.push('export const byName = {};');\n\t\tjs.push('for (const it of items) { byName[it.name] = it; }');\n\t\tjs.push('');\n\t\tjs.push('export function get(collectionName, name) {');\n\t\tjs.push(` if (collectionName !== '${collection}') return undefined;`);\n\t\tjs.push(' return byName[name];');\n\t\tjs.push('}');\n\t\tjs.push('');\n\n\t\tawait writeFile(\n\t\t\tjoin(cwd, OUTPUT_COLLECTIONS_DIR, `${collection}.js`),\n\t\t\tjs.join('\\n'),\n\t\t\t'utf-8',\n\t\t);\n\t\tconsole.log(\n\t\t\t`[reroute/content] wrote ${join(cwd, OUTPUT_COLLECTIONS_DIR, `${collection}.js`)}`,\n\t\t);\n\t}\n}\n\nasync function generate(cwd: string) {\n\tconsole.log('[reroute/gen] Starting generation...');\n\n\t// Cleanup old generated files due to SSR issues\n\tawait cleanupOutputDir(cwd);\n\n\t// Routes\n\tconst routesPath = join(cwd, ROUTES_DIR);\n\ttry {\n\t\tconst files = await scanDirectory(routesPath);\n\t\tconst nfFiles = await scan404Files(routesPath);\n\t\tconst all = Array.from(new Set([...files, ...nfFiles]));\n\t\tconst tree = generateRouteTree(all.map((f) => f.replace(/\\\\/g, '/')));\n\t\tconst ts = generateTypeScript(tree);\n\t\tawait mkdir(join(cwd, '.reroute'), { recursive: true });\n\t\tawait writeFile(join(cwd, OUTPUT_ROUTES), ts, 'utf-8');\n\t\tconsole.log(`[reroute/gen] Generated routes: ${join(cwd, OUTPUT_ROUTES)}`);\n\t} catch (error) {\n\t\tconsole.error('[reroute/gen] Failed to generate routes:', error);\n\t\tthrow error;\n\t}\n\n\t// Content\n\ttry {\n\t\tawait buildContentChunks(cwd);\n\t\tconsole.log(\n\t\t\t`[reroute/gen] Generated content: ${join(cwd, OUTPUT_CONTENT_TS)} + collections/*.js`,\n\t\t);\n\t} catch (error) {\n\t\tconsole.error('[reroute/gen] Failed to generate content:', error);\n\t\tthrow error;\n\t}\n\n\t// Write .reroute/index.ts aggregator\n\tconst indexLines: string[] = [];\n\tindexLines.push('// 🚨 Auto-generated by Reroute - DO NOT EDIT 🚨');\n\tindexLines.push('/* eslint-disable */');\n\tindexLines.push('// @ts-nocheck');\n\tindexLines.push('');\n\tindexLines.push(\n\t\t\"import { layouts, matchRoute, notFoundRoutes } from './routes';\",\n\t);\n\tindexLines.push('');\n\tindexLines.push('export const artifacts = {');\n\tindexLines.push(' layouts,');\n\tindexLines.push(' matchRoute,');\n\tindexLines.push(' notFoundRoutes,');\n\tindexLines.push(\" contentBaseUrl: '/.reroute/collections'\");\n\tindexLines.push('} as const;');\n\tindexLines.push('');\n\tindexLines.push('export type RerouteArtifacts = typeof artifacts;');\n\n\tawait writeFile(join(cwd, OUTPUT_INDEX), indexLines.join('\\n'), 'utf-8');\n\n\tconsole.log(`[reroute/gen] Generated index: ${join(cwd, OUTPUT_INDEX)}`);\n\tconsole.log('[reroute/gen] ✅ Generation complete!');\n}\n\nexport default async function gen(args: string[]) {\n\tconst cwd = process.cwd();\n\tconst watchMode = args.includes('--watch') || args.includes('-w');\n\n\tif (!watchMode) {\n\t\tawait generate(cwd);\n\t\tawait buildTailwindIfConfigured(cwd);\n\t\treturn;\n\t}\n\n\tconsole.log('[reroute/gen] Watch mode enabled');\n\tconsole.log('[reroute/gen] Initial generation...');\n\tawait generate(cwd);\n\n\ttry {\n\t\tawait buildTailwindIfConfigured(cwd);\n\t} catch {}\n\n\t// Helper: notify server to reload connected browsers (best-effort)\n\tconst notifyReload = async (reason: string) => {\n\t\tconst ports = [\n\t\t\tNumber(process.env.PORT || '0') || 0,\n\t\t\tNumber(process.env.REROUTE_PORT || '0') || 0,\n\t\t\t3001,\n\t\t\t3000,\n\t\t].filter(Boolean) as number[];\n\t\tfor (const p of ports) {\n\t\t\ttry {\n\t\t\t\tawait fetch(`http://localhost:${p}/__reroute_reload`, {\n\t\t\t\t\tmethod: 'POST',\n\t\t\t\t});\n\t\t\t\tconsole.log(\n\t\t\t\t\t`[reroute/gen] reload notified (port ${p})${reason ? `: ${reason}` : ''}`,\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t\t} catch {}\n\t\t}\n\t};\n\n\t// Watch routes for generation + Tailwind rebuild\n\tconst routesPath = join(cwd, ROUTES_DIR);\n\tconsole.log(`[reroute/gen] Watching ${routesPath} for changes...`);\n\tlet debounce: NodeJS.Timeout | null = null;\n\tconst routesWatcher = watch(\n\t\troutesPath,\n\t\t{ recursive: true },\n\t\t(_ev, filename) => {\n\t\t\tif (!filename) return;\n\t\t\tif (debounce) clearTimeout(debounce);\n\t\t\tdebounce = setTimeout(async () => {\n\t\t\t\tconsole.log('[reroute/gen] Change detected, regenerating...');\n\t\t\t\ttry {\n\t\t\t\t\tawait generate(cwd);\n\t\t\t\t\tawait buildTailwindIfConfigured(cwd);\n\t\t\t\t\tawait notifyReload('routes change');\n\t\t\t\t} catch (e) {\n\t\t\t\t\tconsole.error('[reroute/gen] Error during regeneration:', e);\n\t\t\t\t}\n\t\t\t}, 120);\n\t\t},\n\t);\n\n\t// Watch src/client for Tailwind-related changes\n\tconst clientPath = join(cwd, 'src', 'client');\n\tconsole.log(\n\t\t`[reroute/gen] Watching ${clientPath} for Tailwind class changes...`,\n\t);\n\tlet twDebounce: NodeJS.Timeout | null = null;\n\tconst twWatcher = watch(clientPath, { recursive: true }, (_ev, filename) => {\n\t\tif (!filename) return;\n\t\tconst name = String(filename);\n\t\tif (name.includes('.reroute') || name.includes('node_modules')) return;\n\t\tif (name.includes('routes/') || name.includes('routes\\\\')) return;\n\t\tif (!/\\.(tsx|ts|jsx|js|html|md|mdx|css)$/.test(name)) return;\n\t\tif (twDebounce) clearTimeout(twDebounce);\n\t\ttwDebounce = setTimeout(async () => {\n\t\t\ttry {\n\t\t\t\tawait buildTailwindIfConfigured(cwd);\n\t\t\t\tawait notifyReload('client change');\n\t\t\t} catch {}\n\t\t}, 150);\n\t});\n\n\t// Keep process running until SIGINT\n\tprocess.on('SIGINT', () => {\n\t\tconsole.log('\\n[reroute/gen] Stopping watch mode...');\n\t\ttry {\n\t\t\troutesWatcher.close();\n\t\t} catch {}\n\t\ttry {\n\t\t\ttwWatcher.close();\n\t\t} catch {}\n\t\tprocess.exit(0);\n\t});\n}\n",
|
|
10
|
-
"#!/usr/bin/env bun\n\n/**\n * Reroute CLI\n *\n * Command-line interface for Reroute framework operations.\n */\n\nimport path from 'node:path';\n\nconst commands = {\n\tinit: () => import('./commands/init'),\n\
|
|
10
|
+
"#!/usr/bin/env bun\n\n/**\n * Reroute CLI\n *\n * Command-line interface for Reroute framework operations.\n */\n\nimport path from 'node:path';\n\n// Version and commit injected at build time\ndeclare const __REROUTE_VERSION__: string;\ndeclare const __REROUTE_COMMIT__: string;\n\nconst commands = {\n\tinit: () => import('./commands/init'),\n\tdev: () => import('./commands/dev'),\n\tgen: () => import('./commands/gen'),\n};\n\ntype Command = keyof typeof commands;\n\nasync function main() {\n\tconst args = process.argv.slice(2);\n\n\tif (args[0] === '--version' || args[0] === '-v') {\n\t\tconst version = await getVersionString();\n\t\tconsole.log(version);\n\t\tprocess.exit(0);\n\t}\n\n\tif (args.length === 0 || args[0] === '--help' || args[0] === '-h') {\n\t\tawait printHelp();\n\t\tprocess.exit(0);\n\t}\n\n\tconst command = args[0] as Command;\n\n\tif (!commands[command]) {\n\t\tconsole.error(`Unknown command: ${command}`);\n\t\tconsole.error('');\n\t\tawait printHelp();\n\t\tprocess.exit(1);\n\t}\n\n\ttry {\n\t\tconst module = await commands[command]();\n\t\tawait module.default(args.slice(1));\n\t} catch (error) {\n\t\tconsole.error('Error executing command:', error);\n\t\tprocess.exit(1);\n\t}\n}\n\nasync function printHelp() {\n\tconsole.log(await getVersionString());\n\tconsole.log('');\n\tconsole.log('Usage:');\n\tconsole.log(' reroute <command> [options]');\n\tconsole.log('');\n\tconsole.log('Commands:');\n\tconsole.log(' gen Generate content registry and static assets');\n\tconsole.log(' init Scaffold a new Reroute project');\n\tconsole.log(' build Build for production');\n\tconsole.log(' dev Start development server');\n\tconsole.log('');\n\tconsole.log('Options:');\n\tconsole.log(' -h, --help Show help');\n\tconsole.log(' -v, --version Show version');\n\tconsole.log('');\n\tconsole.log('Examples:');\n\tconsole.log(' reroute gen');\n\tconsole.log(' reroute gen --watch');\n\tconsole.log(' reroute init my-app');\n\tconsole.log(' reroute build --minify');\n\tconsole.log(' reroute dev --port 3000');\n}\n\nasync function getVersionString(): Promise<string> {\n\tconst version = await getVersion();\n\tconst commit = await getCommit();\n\treturn `Reroute v${version} ${commit}`;\n}\n\nasync function getVersion(): Promise<string> {\n\t// Use version injected at build time\n\tif (typeof __REROUTE_VERSION__ !== 'undefined') {\n\t\treturn __REROUTE_VERSION__;\n\t}\n\n\t// Fallback for development: try to find package.json\n\tconst possiblePaths = [\n\t\tpath.join(import.meta.dir, '../../../package.json'),\n\t\tpath.join(import.meta.dir, '../../package.json'),\n\t\tpath.join(import.meta.dir, '../package.json'),\n\t];\n\n\tfor (const pkgPath of possiblePaths) {\n\t\ttry {\n\t\t\tconst pkg = await Bun.file(pkgPath).json();\n\t\t\treturn pkg.version;\n\t\t} catch {}\n\t}\n\n\treturn 'unknown';\n}\n\nasync function getCommit(): Promise<string> {\n\t// Use commit injected at build time\n\tif (typeof __REROUTE_COMMIT__ !== 'undefined') {\n\t\treturn __REROUTE_COMMIT__;\n\t}\n\n\t// Fallback for development\n\treturn 'dev';\n}\n\nmain();\n"
|
|
11
11
|
],
|
|
12
|
-
"mappings": "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",
|
|
13
|
-
"debugId": "
|
|
12
|
+
"mappings": "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",
|
|
13
|
+
"debugId": "17CDCC0716BA537B64756E2164756E21",
|
|
14
14
|
"names": []
|
|
15
15
|
}
|
package/cli/index.d.ts
CHANGED
package/cli/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* reroute-js v0.
|
|
2
|
+
* reroute-js v0.3.2
|
|
3
3
|
*
|
|
4
4
|
* @license MIT
|
|
5
5
|
* @copyright 2025 stewones <hi@stewan.io>
|
|
@@ -110,4 +110,4 @@ export {
|
|
|
110
110
|
buildTailwindIfConfigured
|
|
111
111
|
};
|
|
112
112
|
|
|
113
|
-
//# debugId=
|
|
113
|
+
//# debugId=94E52E1D8B9EF30264756E2164756E21
|
package/cli/index.js.map
CHANGED
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
"/**\n * Tailwind CSS v4 integration utility\n *\n * Manages Tailwind CLI integration for the Reroute framework\n */\n\nimport { spawn } from 'node:child_process';\nimport { existsSync, readFileSync } from 'node:fs';\nimport { join } from 'node:path';\n\n/**\n * Check if Tailwind CSS v4 is available in the project\n */\nfunction isTailwindAvailable(cwd: string): boolean {\n\tconst packageJsonPath = join(cwd, 'package.json');\n\n\tif (!existsSync(packageJsonPath)) {\n\t\treturn false;\n\t}\n\n\ttry {\n\t\tconst packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));\n\t\tconst deps = {\n\t\t\t...packageJson.dependencies,\n\t\t\t...packageJson.devDependencies,\n\t\t};\n\n\t\treturn '@tailwindcss/cli' in deps;\n\t} catch {\n\t\treturn false;\n\t}\n}\n\n/**\n * Get the default paths for Tailwind CSS\n */\nfunction getTailwindPaths(cwd: string) {\n\tconst input = join(cwd, 'src/client/theme.css');\n\tconst output = join(cwd, '.reroute/theme.css');\n\n\treturn { input, output };\n}\n\n/**\n * Check if Tailwind input file exists and uses v4 format\n */\nfunction hasTailwindInput(cwd: string): boolean {\n\tconst { input } = getTailwindPaths(cwd);\n\n\tif (!existsSync(input)) {\n\t\treturn false;\n\t}\n\n\ttry {\n\t\tconst content = readFileSync(input, 'utf-8');\n\t\t// v4 uses @import \"tailwindcss\"\n\t\treturn content.includes('@import \"tailwindcss\"');\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nfunction resolveTailwindBin(cwd: string): string {\n\t// Try to find tailwindcss binary, checking up to 3 levels up\n\tconst pathsToTry = [\n\t\tjoin(cwd, 'node_modules/.bin/tailwindcss'),\n\t\tjoin(cwd, '../node_modules/.bin/tailwindcss'),\n\t\tjoin(cwd, '../../node_modules/.bin/tailwindcss'),\n\t\tjoin(cwd, '../../../node_modules/.bin/tailwindcss'),\n\t];\n\n\tfor (const binPath of pathsToTry) {\n\t\tif (existsSync(binPath)) {\n\t\t\treturn binPath;\n\t\t}\n\t}\n\n\t// Fallback to the default location if none found\n\treturn join(cwd, 'node_modules/.bin/tailwindcss');\n}\n\n/**\n * Build Tailwind CSS using the Tailwind CLI\n */\nasync function buildTailwind(cwd: string): Promise<void> {\n\tconst { input, output } = getTailwindPaths(cwd);\n\n\treturn new Promise((resolve, reject) => {\n\t\tconst tailwindBin = resolveTailwindBin(cwd);\n\t\tconst args = ['-i', input, '-o', output];\n\n\t\tconsole.log(`[reroute/tailwind] build start: -i ${input} -o ${output}`);\n\n\t\tconst tailwind = spawn(tailwindBin, args, {\n\t\t\tcwd,\n\t\t\tstdio: 'pipe',\n\t\t});\n\n\t\ttailwind.stdout?.on('data', (data) => {\n\t\t\tconst line = data.toString().trim();\n\t\t\tif (line) {\n\t\t\t\tconsole.log(`[reroute/tailwind] ${line}`);\n\t\t\t}\n\t\t});\n\n\t\ttailwind.stderr?.on('data', (data) => {\n\t\t\tconst line = data.toString().trim();\n\t\t\tif (line) {\n\t\t\t\tconsole.log(`[reroute/tailwind] ${line}`);\n\t\t\t}\n\t\t});\n\n\t\ttailwind.on('close', (code) => {\n\t\t\tif (code === 0) {\n\t\t\t\tconsole.log('[reroute/tailwind] build done');\n\t\t\t\tresolve();\n\t\t\t} else {\n\t\t\t\treject(new Error(`Tailwind CSS build failed with code ${code}`));\n\t\t\t}\n\t\t});\n\n\t\ttailwind.on('error', (error) => {\n\t\t\treject(error);\n\t\t});\n\t});\n}\n\n/**\n * Build Tailwind once if installed and input exists.\n * Returns true if a build was attempted (success or failure), false if skipped.\n */\nexport async function buildTailwindIfConfigured(cwd: string): Promise<boolean> {\n\ttry {\n\t\tif (isTailwindAvailable(cwd) && hasTailwindInput(cwd)) {\n\t\t\tawait buildTailwind(cwd);\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t} catch (e) {\n\t\tconsole.warn('[reroute/tailwind] build failed:', e);\n\t\treturn true;\n\t}\n}\n"
|
|
6
6
|
],
|
|
7
7
|
"mappings": "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",
|
|
8
|
-
"debugId": "
|
|
8
|
+
"debugId": "94E52E1D8B9EF30264756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|
package/cli/src/cli.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../../../packages/cli/src/commands/init.ts"],"names":[],"mappings":";AAEA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../../../packages/cli/src/commands/init.ts"],"names":[],"mappings":";AAEA;;;;GAIG;AAYH,wBAA8B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,iBAchD"}
|
package/cli/src/libs/index.d.ts
CHANGED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* reroute-js v0.3.2
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright 2025 stewones <hi@stewan.io>
|
|
6
|
+
* @see https://github.com/stewones/reroute
|
|
7
|
+
*
|
|
8
|
+
* Built with Bun <3
|
|
9
|
+
*/
|
|
10
|
+
export declare function getVersionString(): Promise<string>;
|
|
11
|
+
//# sourceMappingURL=version.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../../../../packages/cli/src/libs/version.ts"],"names":[],"mappings":"AAMA,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAIxD"}
|
package/core/index.d.ts
CHANGED
package/core/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* reroute-js v0.
|
|
2
|
+
* reroute-js v0.3.2
|
|
3
3
|
*
|
|
4
4
|
* @license MIT
|
|
5
5
|
* @copyright 2025 stewones <hi@stewan.io>
|
|
@@ -1135,4 +1135,4 @@ export {
|
|
|
1135
1135
|
LRUCache
|
|
1136
1136
|
};
|
|
1137
1137
|
|
|
1138
|
-
//# debugId=
|
|
1138
|
+
//# debugId=813D9893BA24C15A64756E2164756E21
|
package/core/index.js.map
CHANGED
|
@@ -20,6 +20,6 @@
|
|
|
20
20
|
"import type { CompressionResult } from '../types';\nimport { isCompressible } from './mime';\n\nexport function acceptsGzip(acceptEncoding?: string): boolean {\n\treturn Boolean(acceptEncoding && /gzip/i.test(acceptEncoding));\n}\n\nexport function toBytes(\n\tinput: string | Uint8Array,\n): Uint8Array<ArrayBuffer> | string {\n\treturn typeof input === 'string'\n\t\t? new TextEncoder().encode(input)\n\t\t: (input as Uint8Array<ArrayBuffer>);\n}\n\nexport function gzipIfAccepted(\n\tbody: string | Uint8Array,\n\tcontentType: string,\n\tacceptEncoding?: string,\n): CompressionResult {\n\tconst extraHeaders: Record<string, string> = {};\n\tif (acceptsGzip(acceptEncoding) && isCompressible(contentType)) {\n\t\ttry {\n\t\t\tconst compressed = Bun.gzipSync(toBytes(body));\n\t\t\textraHeaders['Content-Encoding'] = 'gzip';\n\t\t\textraHeaders.Vary = 'Accept-Encoding';\n\t\t\treturn { body: compressed, extraHeaders };\n\t\t} catch {\n\t\t\t// ignore and fallthrough\n\t\t}\n\t}\n\treturn { body, extraHeaders };\n}\n"
|
|
21
21
|
],
|
|
22
22
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,SAAS,KAAI,IAAI,OAAyB;AAAA,EAChD,OAAO,MAAM,KAAK,GAAG,EAAE,QAAQ,QAAQ,GAAG;AAAA;AAGpC,SAAS,OAAO,CAAC,GAAmB;AAAA,EAC1C,MAAM,IAAI,EAAE,YAAY,GAAG;AAAA,EAC3B,OAAO,KAAK,IAAI,EAAE,MAAM,CAAC,IAAI;AAAA;AAGvB,SAAS,QAAQ,CAAC,GAAW,KAAsB;AAAA,EACzD,MAAM,OAAO,EAAE,QAAQ,OAAO,GAAG,EAAE,MAAM,GAAG,EAAE,IAAI,KAAK;AAAA,EACvD,OAAO,OAAO,KAAK,SAAS,GAAG,IAAI,KAAK,MAAM,GAAG,CAAC,IAAI,MAAM,IAAI;AAAA;AAG1D,SAAS,UAAU,CAAC,GAAW,IAAoB;AAAA,EACzD,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,IAAI;AAAA;AAGzC,SAAS,QAAQ,CAAC,GAAW,IAAoB;AAAA,EACvD,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,MAAM,IAAI;AAAA;;;ACnBlD,eAAsB,mBAAmB,CAAC,SAAkC;AAAA,EAC3E,MAAM,OAAO,IAAI,YAAY,EAAE,OAAO,OAAO;AAAA,EAC7C,MAAM,MAAM,MAAM,OAAO,OAAO,OAAO,WAAW,IAAI;AAAA,EACtD,IAAI,MAAM;AAAA,EACV,WAAW,KAAK,IAAI,WAAW,GAAG;AAAA,IAAG,OAAO,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG;AAAA,EAC1E,OAAO,IAAI,MAAM,GAAG,CAAC;AAAA;;ACCtB;AACA;AACA;AAKA,SAAS,mBAAmB,CAAC,KAAsB;AAAA,EAClD,MAAM,kBAAkB,KAAK,KAAK,cAAc;AAAA,EAEhD,IAAI,CAAC,WAAW,eAAe,GAAG;AAAA,IACjC,OAAO;AAAA,EACR;AAAA,EAEA,IAAI;AAAA,IACH,MAAM,cAAc,KAAK,MAAM,aAAa,iBAAiB,OAAO,CAAC;AAAA,IACrE,MAAM,OAAO;AAAA,SACT,YAAY;AAAA,SACZ,YAAY;AAAA,IAChB;AAAA,IAEA,OAAO,sBAAsB;AAAA,IAC5B,MAAM;AAAA,IACP,OAAO;AAAA;AAAA;AAOT,SAAS,gBAAgB,CAAC,KAAa;AAAA,EACtC,MAAM,QAAQ,KAAK,KAAK,sBAAsB;AAAA,EAC9C,MAAM,SAAS,KAAK,KAAK,oBAAoB;AAAA,EAE7C,OAAO,EAAE,OAAO,OAAO;AAAA;AAMxB,SAAS,gBAAgB,CAAC,KAAsB;AAAA,EAC/C,QAAQ,UAAU,iBAAiB,GAAG;AAAA,EAEtC,IAAI,CAAC,WAAW,KAAK,GAAG;AAAA,IACvB,OAAO;AAAA,EACR;AAAA,EAEA,IAAI;AAAA,IACH,MAAM,UAAU,aAAa,OAAO,OAAO;AAAA,IAE3C,OAAO,QAAQ,SAAS,uBAAuB;AAAA,IAC9C,MAAM;AAAA,IACP,OAAO;AAAA;AAAA;AAIT,SAAS,kBAAkB,CAAC,KAAqB;AAAA,EAEhD,MAAM,aAAa;AAAA,IAClB,KAAK,KAAK,+BAA+B;AAAA,IACzC,KAAK,KAAK,kCAAkC;AAAA,IAC5C,KAAK,KAAK,qCAAqC;AAAA,IAC/C,KAAK,KAAK,wCAAwC;AAAA,EACnD;AAAA,EAEA,WAAW,WAAW,YAAY;AAAA,IACjC,IAAI,WAAW,OAAO,GAAG;AAAA,MACxB,OAAO;AAAA,IACR;AAAA,EACD;AAAA,EAGA,OAAO,KAAK,KAAK,+BAA+B;AAAA;AAMjD,eAAe,aAAa,CAAC,KAA4B;AAAA,EACxD,QAAQ,OAAO,WAAW,iBAAiB,GAAG;AAAA,EAE9C,OAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AAAA,IACvC,MAAM,cAAc,mBAAmB,GAAG;AAAA,IAC1C,MAAM,OAAO,CAAC,MAAM,OAAO,MAAM,MAAM;AAAA,IAEvC,QAAQ,IAAI,sCAAsC,YAAY,QAAQ;AAAA,IAEtE,MAAM,WAAW,MAAM,aAAa,MAAM;AAAA,MACzC;AAAA,MACA,OAAO;AAAA,IACR,CAAC;AAAA,IAED,SAAS,QAAQ,GAAG,QAAQ,CAAC,SAAS;AAAA,MACrC,MAAM,OAAO,KAAK,SAAS,EAAE,KAAK;AAAA,MAClC,IAAI,MAAM;AAAA,QACT,QAAQ,IAAI,sBAAsB,MAAM;AAAA,MACzC;AAAA,KACA;AAAA,IAED,SAAS,QAAQ,GAAG,QAAQ,CAAC,SAAS;AAAA,MACrC,MAAM,OAAO,KAAK,SAAS,EAAE,KAAK;AAAA,MAClC,IAAI,MAAM;AAAA,QACT,QAAQ,IAAI,sBAAsB,MAAM;AAAA,MACzC;AAAA,KACA;AAAA,IAED,SAAS,GAAG,SAAS,CAAC,SAAS;AAAA,MAC9B,IAAI,SAAS,GAAG;AAAA,QACf,QAAQ,IAAI,+BAA+B;AAAA,QAC3C,QAAQ;AAAA,MACT,EAAO;AAAA,QACN,OAAO,IAAI,MAAM,uCAAuC,MAAM,CAAC;AAAA;AAAA,KAEhE;AAAA,IAED,SAAS,GAAG,SAAS,CAAC,UAAU;AAAA,MAC/B,OAAO,KAAK;AAAA,KACZ;AAAA,GACD;AAAA;AAOF,eAAsB,yBAAyB,CAAC,KAA+B;AAAA,EAC9E,IAAI;AAAA,IACH,IAAI,oBAAoB,GAAG,KAAK,iBAAiB,GAAG,GAAG;AAAA,MACtD,MAAM,cAAc,GAAG;AAAA,MACvB,OAAO;AAAA,IACR;AAAA,IACA,OAAO;AAAA,IACN,OAAO,GAAG;AAAA,IACX,QAAQ,KAAK,oCAAoC,CAAC;AAAA,IAClD,OAAO;AAAA;AAAA;;ACtIT,SAAS,WAAW,GAAG;AAAA,EACtB,IAAI;AAAA,IACH,OACE,MAAM,QAAQ,QAAQ,QAAQ,KAC9B,QAAQ,SAAS,SAAS,SAAS,KACnC,MAAM,QAAQ,QAAQ,IAAI,KAAK,QAAQ,KAAK,SAAS,SAAS;AAAA,IAE/D,MAAM;AAAA,IACP,OAAO;AAAA;AAAA;AAIT,eAAsB,aAAa,CAClC,UACA,cACA,SACA,aACsB;AAAA,EACtB,MAAM,MAAM,MAAM,IAAI,KAAK,QAAQ,EAAE,KAAK;AAAA,EAC1C,MAAM,WAAW,GAAG,YAAY,MAAM,oBAAoB,GAAG;AAAA,EAE7D,IAAI,YAAY,IAAI,QAAQ,GAAG;AAAA,IAE9B,OAAO,YAAY,IAAI,QAAQ;AAAA,EAChC;AAAA,EAEA,QAAQ,IACP,sBAAsB,eAAe,QAAQ,SAAS,gBAAgB,OACvE;AAAA,EAGA,IAAI;AAAA,IACH,IAAI,YAAY,GAAG;AAAA,MAClB,MAAM,MACL,OAAO,YAAY,eAAe,QAAQ,MAAM,QAAQ,IAAI,IAAI;AAAA,MACjE,IAAI,KAAK;AAAA,QACR,MAAM,0BAA0B,GAAG;AAAA,MACpC;AAAA,IACD;AAAA,IACC,OAAO,GAAG;AAAA,IACX,QAAQ,KAAK,sCAAsC,CAAC;AAAA;AAAA,EAGrD,eAAe,OAAO,CAAC,IAAyB;AAAA,IAC/C,OAAO,MAAM,IAAI,MAAM;AAAA,MACtB,aAAa,CAAC,QAAQ;AAAA,MACtB,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,QAAQ,QAAQ;AAAA,MAChB,WAAW;AAAA,MACX,WAAW;AAAA,MACX,QAAQ;AAAA,QACP,wBAAwB,QAAQ,SAC7B,iBACA;AAAA,MACJ;AAAA,IACD,CAAC;AAAA;AAAA,EAGF,IAAI;AAAA,EACJ,IAAI;AAAA,IACH,SAAS,MAAM,QAAQ,QAAQ,YAAY,aAAa,MAAM;AAAA,IAC7D,OAAO,OAAO;AAAA,IAEf,QAAQ,KACP,+BAA+B,oEAC/B,KACD;AAAA,IACA,SAAS,MAAM,QAAQ,MAAM;AAAA;AAAA,EAG9B,IAAI,CAAC,OAAO,SAAS;AAAA,IACpB,QAAQ,MAAM,6BAA6B,UAAU;AAAA,IACrD,WAAW,OAAO,OAAO;AAAA,MAAM,QAAQ,MAAM,GAAG;AAAA,IAChD,MAAM,IAAI,MAAM,uBAAuB,UAAU;AAAA,EAClD;AAAA,EAEA,MAAM,SAAS,OAAO,QAAQ;AAAA,EAC9B,MAAM,OAAO,MAAM,OAAO,KAAK;AAAA,EAE/B,IAAI;AAAA,EACJ,IAAI,QAAQ,aAAa,OAAO,QAAQ,SAAS,GAAG;AAAA,IACnD,MAAM,YAAY,OAAO,QAAQ,KAAK,CAAC,MAAM,EAAE,KAAK,SAAS,MAAM,CAAC;AAAA,IACpE,IAAI,WAAW;AAAA,MACd,YAAY,MAAM,UAAU,KAAK;AAAA,IAClC;AAAA,EACD;AAAA,EAEA,MAAM,cAAc,MAAM,oBAAoB,IAAI;AAAA,EAElD,MAAM,aAAyB;AAAA,IAC9B,MAAM;AAAA,IACN;AAAA,IACA;AAAA,EACD;AAAA,EAEA,YAAY,IAAI,UAAU,UAAU;AAAA,EAEpC,MAAM,UAAU,KAAK,SAAS,MAAM,QAAQ,CAAC;AAAA,EAC7C,MAAM,cAAc,IAAI,SAAS,IAAI,YAAY,EAAE,OAAO,IAAI,CAAC,EAAE;AAAA,EACjE,MAAM,aAAa,cAAc,MAAM,QAAQ,CAAC;AAAA,EAChD,QAAQ,IACP,mBAAmB,mBAAmB,cAAc,uBACrD;AAAA,EAEA,OAAO;AAAA;AAKR,eAAsB,gBAAgB,CACrC,SACA,WACA,QACA,SACA,aACoB;AAAA,EACpB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI,UAAU,CAAC,OAAO;AAAA,EACxD,MAAM,OAAiB,CAAC;AAAA,EACxB,QAAQ,gBAAS;AAAA,EAEjB,WAAW,OAAO,MAAM;AAAA,IACvB,MAAM,MAAM,IAAI,QAAQ,SAAS,EAAE;AAAA,IACnC,MAAM,WAAW,MAAK,WAAW,GAAG;AAAA,IACpC,IAAI;AAAA,MACH,MAAM,aAAa,MAAM,cACxB,UACA,KACA,SACA,WACD;AAAA,MACA,MAAM,OAAO,SAAS,KAAK,QAAQ,GAAG,CAAC;AAAA,MACvC,KAAK,KAAK,GAAG,UAAU,QAAQ,WAAW,SAAS;AAAA,MAClD,OAAO,OAAO;AAAA,MACf,QAAQ,MAAM,0CAA0C,QAAQ,KAAK;AAAA,MACrE,KAAK,KAAK,GAAG,UAAU,KAAK;AAAA;AAAA,EAE9B;AAAA,EACA,OAAO;AAAA;;AChJR,0BAAkB;;;ACAlB;AACA;AAGA,eAAsB,cAAc,CACnC,SACA,cACuB;AAAA,EACvB,IAAI;AAAA,IACH,MAAM,MAAM,cAAc,OAAO,EAAE;AAAA,IACnC,MAAM,MAAM,MAAa,UAAG,MAAM,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,IACrE,MAAM,OAAiB,IAAY,QAAS,IAAY,eAAe,CAAC;AAAA,IACxE,IAAI,QAAQ,OAAO,SAAS;AAAA,MAAU,OAAO;AAAA,IAC7C,OAAO,CAAC;AAAA,IACP,MAAM;AAAA,IACP,IAAI;AAAA,MACH,MAAM,IAAI,MAAM,KAAK,OAAO;AAAA,MAC5B,OAAO,EAAE,MAAM,IAAI,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE;AAAA,MAChD,MAAM;AAAA,MACP,OAAO,CAAC;AAAA;AAAA;AAAA;AAUJ,SAAS,iBAAiB,CAChC,MACS;AAAA,EACT,IAAI,CAAC,QAAQ,OAAO,SAAS;AAAA,IAAU,OAAO;AAAA,EAC9C,MAAM,QAAkB,CAAC;AAAA,EACzB,MAAM,QAAQ,OAAO,KAAK,UAAU,WAAW,KAAK,QAAQ;AAAA,EAC5D,MAAM,cACL,OAAO,KAAK,gBAAgB,WACzB,KAAK,cACL,OAAO,KAAK,YAAY,WACvB,KAAK,UACL;AAAA,EACL,IAAI;AAAA,IAAO,MAAM,KAAK,UAAU,WAAW,KAAK,WAAW;AAAA,EAC3D,IAAI;AAAA,IACH,MAAM,KACL,qCAAqC,WAAW,WAAW,OAC5D;AAAA,EACD,OAAO,MAAM,SAAS;AAAA,EAAK,MAAM,KAAK;AAAA,CAAI,MAAM;AAAA;AAGjD,SAAS,UAAU,CAAC,OAAuB;AAAA,EAC1C,OAAO,MACL,QAAQ,MAAM,OAAO,EACrB,QAAQ,MAAM,MAAM,EACpB,QAAQ,MAAM,MAAM,EACpB,QAAQ,MAAM,QAAQ,EACtB,QAAQ,MAAM,OAAO;AAAA;;;ADlDxB,eAAsB,gBAAgB,CACrC,KACA,SACoB;AAAA,EACpB,MAAM,MAAgB,CAAC;AAAA,EACvB,IAAI;AAAA,IACH,MAAM,UAAU,MAAM,QAAQ,KAAK,EAAE,eAAe,KAAK,CAAC;AAAA,IAC1D,WAAW,SAAS,SAAS;AAAA,MAC5B,MAAM,OAAO,MAAK,KAAK,MAAM,IAAI;AAAA,MACjC,MAAM,MAAM,MAAK,SAAS,MAAM,IAAI;AAAA,MACpC,IAAI,MAAM,YAAY,GAAG;AAAA,QACxB,MAAM,SAAS,MAAM,iBAAiB,MAAM,GAAG;AAAA,QAC/C,IAAI,KAAK,GAAG,MAAM;AAAA,MACnB,EAAO,SAAI,MAAM,OAAO,GAAG;AAAA,QAC1B,IAAI,cAAc,KAAK,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,GAAG,GAAG;AAAA,UAClE,IAAI,KAAK,GAAG;AAAA,QACb;AAAA,MACD;AAAA,IACD;AAAA,IACC,MAAM;AAAA,EAGR,OAAO;AAAA;AAGR,eAAsB,gBAAgB,CACrC,gBACA,WACA,QACA,cAC4B;AAAA,EAC5B,MAAM,aAAa,WAAW,SAAS,gBAAgB,GAAG,GAAG,GAAG;AAAA,EAChE,MAAM,gBAAgB,MAAK,UAAU,YAAY,SAAS;AAAA,EAC1D,MAAM,gBAAgB,MAAK,WAAW,aAAa;AAAA,EAEnD,MAAM,QAAQ,MAAM,iBAAiB,eAAe,EAAE;AAAA,EACtD,MAAM,QAA0B,CAAC;AAAA,EACjC,WAAW,OAAO,OAAO;AAAA,IACxB,MAAM,cAAc,MAAK,eAAe,GAAG;AAAA,IAC3C,MAAM,UAAU,MAAK,WAAW,WAAW;AAAA,IAC3C,MAAM,QAAQ,IAAI,QAAQ,eAAe,EAAE;AAAA,IAC3C,MAAM,OAAO,SAAS,KAAK;AAAA,IAG3B,MAAM,YAAY,GAAG,UAAU,cAAc,QAAQ,QAAQ,GAAG;AAAA,IAChE,MAAM,OAAO,MAAM,eAAe,SAAS,YAAW;AAAA,IAEtD,MAAM,OAAO,IAAI,cAAc,OAAO,QAAQ,QAAQ,GAAG;AAAA,IAEzD,MAAM,KAAK;AAAA,MACV,MAAM;AAAA,MACN;AAAA,MACA,MAAM;AAAA,MACN,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,IACD,CAAC;AAAA,EACF;AAAA,EACA,OAAO;AAAA;AAGR,eAAsB,mBAAmB,CACxC,WACoB;AAAA,EACpB,MAAM,OAAO,MAAK,WAAW,QAAQ;AAAA,EACrC,MAAM,cAAc,IAAI;AAAA,EACxB,IAAI;AAAA,IACH,MAAM,UAAU,MAAM,QAAQ,MAAM,EAAE,eAAe,KAAK,CAAC;AAAA,IAC3D,WAAW,SAAS,SAAS;AAAA,MAC5B,IAAI,MAAM,YAAY,GAAG;AAAA,QACxB,MAAM,aAAa,MAAK,MAAM,MAAM,MAAM,SAAS;AAAA,QACnD,IAAI;AAAA,UACH,MAAM,MAAK,UAAU;AAAA,UACrB,YAAY,IAAI,MAAM,IAAI;AAAA,UACzB,MAAM;AAAA,MAGT;AAAA,IACD;AAAA,IACC,MAAM;AAAA,EAGR,OAAO,MAAM,KAAK,WAAW;AAAA;;AErF9B,eAAsB,uBAAuB,CAAC,KAA4B;AAAA,EAGzE,IAAI;AAAA,IACH,MAAM,IAAI,MAAK,KAAK,YAAY,YAAY;AAAA,IAC5C,MAAM,SAAS,MAAM,IAAI,KAAK,CAAC,EAAE,OAAO;AAAA,IACxC,QAAQ,IACP,SACG,0CACA,kDACJ;AAAA,IACC,MAAM;AAAA;;ACbT,0BAAS;;;ACAT,oBAAS,kBAAS;AAClB,0BAAS;AAST,eAAsB,0BAA0B,CAC/C,UACA,WACA,KACA,cACsB;AAAA,EACtB,IAAI;AAAA,IACH,MAAM,QAAQ,SAAS,MAAM,GAAG,EAAE,OAAO,OAAO;AAAA,IAChD,IAAI,MAAM,SAAS;AAAA,MAAG,OAAO;AAAA,IAC7B,MAAM,aAAa,MAAM;AAAA,IACzB,MAAM,OAAO,MAAM;AAAA,IAGnB,IAAI;AAAA,MACH,MAAM,eAAe,MAAK,KAAK,YAAY,YAAY;AAAA,MACvD,MAAM,MAAO,MACZ,sBAAc,YAAY,EAAE,QAC1B,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,MAEtC,MAAM,MAAO,KAAa;AAAA,MAG1B,MAAM,QACL,OAAO,QAAQ,aAAa,IAAI,YAAY,IAAI,IAAI;AAAA,MACrD,MAAM,YAAa,OAAe;AAAA,MAClC,IAAI,WAAW,SAAS,KAAK,GAAG;AAAA,QAC/B,MAAM,MAAM,MAAK,KAAK,UAAU,QAAQ,OAAO,EAAE,CAAC;AAAA,QAClD,MAAM,OACL,eAAc,GAAG,EAAE,QAAQ,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,QAC/D,MAAM,MAAM,MAAa;AAAA,QACzB,OAAO;AAAA,MACR;AAAA,MACC,MAAM;AAAA,IAGR,IAAI;AAAA,MACH,MAAM,WAAW,MAAK,KAAK,YAAY,UAAU,UAAU;AAAA,MAC3D,MAAM,QAAQ,MAAM,SAAQ,QAAQ;AAAA,MACpC,MAAM,UAAU,MAAM,OACrB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,KAAK,EAAE,SAAS,KAAK,CACpD;AAAA,MACA,IAAI,QAAQ,QAAQ;AAAA,QACnB,IAAI,SAAS,QAAQ;AAAA,QACrB,IAAI,UAAU;AAAA,QACd,WAAW,KAAK,SAAS;AAAA,UACxB,IAAI;AAAA,YACH,MAAM,IAAI,MAAM,MAAK,MAAK,UAAU,CAAC,CAAC;AAAA,YACtC,IAAI,EAAE,WAAW,SAAS;AAAA,cACzB,UAAU,EAAE;AAAA,cACZ,SAAS;AAAA,YACV;AAAA,YACC,MAAM;AAAA,QACT;AAAA,QACA,MAAM,WAAW,MAAK,UAAU,MAAM;AAAA,QACtC,MAAM,OACL,eAAc,QAAQ,EAAE,QACvB,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,QACrC,MAAM,MAAM,MAAa;AAAA,QACzB,OAAO;AAAA,MACR;AAAA,MACC,MAAM;AAAA,IAGR,IAAI;AAAA,MACH,MAAM,SAAS,MACd,WACA,UACA,YACA,WACA,GAAG,UACJ;AAAA,MACA,MAAM,QAAQ,MACb,WACA,UACA,YACA,WACA,GAAG,SACJ;AAAA,MACA,IAAI,SAAwB;AAAA,MAC5B,IAAI,MAAM,IAAI,KAAK,MAAM,EAAE,OAAO;AAAA,QAAG,SAAS;AAAA,MACzC,SAAI,MAAM,IAAI,KAAK,KAAK,EAAE,OAAO;AAAA,QAAG,SAAS;AAAA,MAClD,IAAI,QAAQ;AAAA,QACX,MAAM,OAAO,eAAc,MAAM,EAAE;AAAA,QACnC,MAAM,MAAM,OACX,sBAAc,GAAG,UAAU,KAAK,IAAI,OAApC,OAA0C;AAAA,QAE3C,OAAO;AAAA,MACR;AAAA,MACC,MAAM;AAAA,IACP,MAAM;AAAA,EACR,OAAO;AAAA;;;ACjGR,eAAsB,oBAAoB,CACzC,UACA,WACA,KACA,cACgB;AAAA,EAChB,IAAI;AAAA,IACH,MAAM,QAAQ,SAAS,MAAM,GAAG,EAAE,OAAO,OAAO;AAAA,IAChD,IAAI,MAAM,SAAS;AAAA,MAAG;AAAA,IACtB,MAAM,aAAa,MAAM;AAAA,IACzB,MAAM,OAAO,MAAM;AAAA,IACnB,MAAM,MAAM,GAAG,cAAc;AAAA,IAE7B,MAAM,MAAM,MAAM,2BACjB,UACA,WACA,KACA,YACD;AAAA,IAEA,IAAI,CAAC;AAAA,MAAK;AAAA,IAEV,MAAM,IAAK,IAAY,WAAY;AAAA,IAClC,WAAmB,0BAClB,WAAmB,2BAA2B,CAAC;AAAA,IAChD,WAAmB,wBAAwB,OAAO;AAAA,IAGnD,IAAI;AAAA,MACH,MAAM,WAAY,IAAY,QAAS,IAAY,eAAe,CAAC;AAAA,MACnE,MAAM,UAAW,IAAY,OAAO,CAAC;AAAA,MACpC,WAAmB,0BAClB,WAAmB,2BAA2B,CAAC;AAAA,MAChD,WAAmB,wBAAwB,OAAO;AAAA,QAClD,MAAM;AAAA,QACN,KAAK;AAAA,MACN;AAAA,MACC,MAAM;AAAA,IACP,MAAM;AAAA;;;AF7BT,eAAsB,qBAAqB,CAC1C,QACmB;AAAA,EACnB,QAAQ,UAAU,WAAW,KAAK,8BAAgB;AAAA,EAGlD,IAAI;AAAA,IACH,MAAM,qBAAqB,UAAU,WAAW,KAAK,YAAW;AAAA,IAC/D,MAAM;AAAA,EAGR,IAAI;AAAA,IACH,MAAM,QAAQ,SAAS,MAAM,GAAG,EAAE,OAAO,OAAO;AAAA,IAChD,IAAI,MAAM,UAAU,GAAG;AAAA,MACtB,MAAM,MAAM,GAAG,MAAM,MAAM,MAAM;AAAA,MACjC,MAAM,IAAI;AAAA,MACV,MAAM,MAAM,EAAE,0BAA0B;AAAA,MAGxC,MAAM,SAAU,KAAa,KAAK;AAAA,MAGlC,IAAI,OAAO,WAAW,YAAY;AAAA,QACjC,OAAO,MAAM,OAAO,EAAE,UAAU,QAAQ,EAAE,MAAM,MAAM,GAAG,EAAE,CAAQ;AAAA,MACpE;AAAA,IACD;AAAA,IACC,MAAM;AAAA,EAGR,IAAI;AAAA,IACH,MAAM,aAAa,MAAK,KAAK,YAAY,WAAW;AAAA,IACpD,MAAM,IAAI,MACT,sBAAc,UAAU,EAAE,QAAQ,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,IAEtE,MAAM,QACL,OAAQ,EAAU,eAAe,aAC7B,EAAU,WAAW,QAAQ,IAC9B;AAAA,IACJ,MAAM,IAAK,OAAkC;AAAA,IAC7C,MAAM,cAAgB,OAAkC,UACvD,CAAC;AAAA,IACF,IAAI,KAAK,OAAQ,EAAU,SAAS,UAAU;AAAA,MAC7C,IAAI;AAAA,QACH,MAAM,MAAM,MAAK,WAAW,UAAU,OAAQ,EAAU,IAAI,CAAC;AAAA,QAC7D,MAAM,MAAO,MACZ,sBAAc,GAAG,EAAE,QAAQ,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,QAE/D,MAAM,MAAO,KAAa;AAAA,QAC1B,MAAM,SAAU,KAAa;AAAA,QAG7B,IAAI,OAAO,WAAW,YAAY;AAAA,UACjC,OAAO,MAAM,OAAO,EAAE,UAAU,QAAQ,YAAY,CAAQ;AAAA,QAC7D;AAAA,QACC,MAAM;AAAA,IACT;AAAA,IACC,MAAM;AAAA,EAER,OAAO;AAAA;;AGtER,oBAAS,kBAAS;AAClB,0BAAS;;;ACDT,SAAS,OAAO,CAAC,QAAQ,gBAAgB;AAAA,EAAE,IAAI,OAAO,OAAO,KAAK,MAAM;AAAA,EAAG,IAAI,OAAO,uBAAuB;AAAA,IAAE,IAAI,UAAU,OAAO,sBAAsB,MAAM;AAAA,IAAG,mBAAmB,UAAU,QAAQ,OAAO,QAAS,CAAC,KAAK;AAAA,MAAE,OAAO,OAAO,yBAAyB,QAAQ,GAAG,EAAE;AAAA,KAAa,IAAI,KAAK,KAAK,MAAM,MAAM,OAAO;AAAA,EAAG;AAAA,EAAE,OAAO;AAAA;AAC9U,SAAS,aAAa,CAAC,QAAQ;AAAA,EAAE,SAAS,IAAI,EAAG,IAAI,UAAU,QAAQ,KAAK;AAAA,IAAE,IAAI,SAAiB,UAAU,MAAlB,OAAuB,UAAU,KAAK,CAAC;AAAA,IAAG,IAAI,IAAI,QAAQ,OAAO,MAAM,GAAG,IAAE,EAAE,QAAQ,QAAS,CAAC,KAAK;AAAA,MAAE,gBAAgB,QAAQ,KAAK,OAAO,IAAI;AAAA,KAAI,IAAI,OAAO,4BAA4B,OAAO,iBAAiB,QAAQ,OAAO,0BAA0B,MAAM,CAAC,IAAI,QAAQ,OAAO,MAAM,CAAC,EAAE,QAAQ,QAAS,CAAC,KAAK;AAAA,MAAE,OAAO,eAAe,QAAQ,KAAK,OAAO,yBAAyB,QAAQ,GAAG,CAAC;AAAA,KAAI;AAAA,EAAG;AAAA,EAAE,OAAO;AAAA;AACjf,SAAS,eAAe,CAAC,KAAK,KAAK,OAAO;AAAA,EAAE,MAAM,eAAe,GAAG;AAAA,EAAG,IAAI,OAAO,KAAK;AAAA,IAAE,OAAO,eAAe,KAAK,KAAK,EAAE,OAAc,YAAY,MAAM,cAAc,MAAM,UAAU,KAAK,CAAC;AAAA,EAAG,EAAO;AAAA,IAAE,IAAI,OAAO;AAAA;AAAA,EAAS,OAAO;AAAA;AACtO,SAAS,cAAc,CAAC,KAAK;AAAA,EAAE,IAAI,MAAM,aAAa,KAAK,QAAQ;AAAA,EAAG,OAAO,OAAO,QAAQ,WAAW,MAAM,OAAO,GAAG;AAAA;AACvH,SAAS,YAAY,CAAC,OAAO,MAAM;AAAA,EAAE,IAAI,OAAO,UAAU,YAAY,UAAU;AAAA,IAAM,OAAO;AAAA,EAAO,IAAI,OAAO,MAAM,OAAO;AAAA,EAAc,IAAI,SAAS,WAAW;AAAA,IAAE,IAAI,MAAM,KAAK,KAAK,OAAO,QAAQ,SAAS;AAAA,IAAG,IAAI,OAAO,QAAQ;AAAA,MAAU,OAAO;AAAA,IAAK,MAAM,IAAI,UAAU,8CAA8C;AAAA,EAAG;AAAA,EAAE,QAAQ,SAAS,WAAW,SAAS,QAAQ,KAAK;AAAA;AACrX,IAAM,SAAS,aAAa,CAAC,CAAC;AAC9B,IAAe;AACf,SAAS,YAAY,CAAC,SAAS;AAAA,EAC7B,QAAO,cAAc,gBAAc,aAAa,cAAc,cAAc,CAAC,GAAG,OAAO,GAAG,UAAU,CAAC;AAAA,EACrG,OAAO;AAAA,EACP,SAAS,OAAM,CAAC,YAAY,QAAQ;AAAA,IAClC,MAAM,MAAM,OAAO,YAAY,WAAW,CAAC,OAAO,IAAI,QAAQ;AAAA,IAC9D;AAAA,MACE,cAAc;AAAA,MACd,0BAA0B,MAAM,QAAQ,OAAO;AAAA,MAC/C,iBAAiB;AAAA,QACf;AAAA,IAGJ,IAAI,SAAS;AAAA,IACb,SAAS,IAAI,EAAG,IAAI,IAAI,QAAQ,KAAK;AAAA,MACnC,IAAI,OAAO,IAAI;AAAA,MACf,IAAI,yBAAyB;AAAA,QAE3B,OAAO,KAAK,QAAQ,eAAe,EAAE,EAAE,QAAQ,QAAQ,GAAG,EAAE,QAAQ,SAAS,GAAG,EAAE,QAAQ,SAAS,GAAG;AAAA,MACxG;AAAA,MACA,UAAU;AAAA,MACV,IAAI,IAAI,OAAO,QAAQ;AAAA,QACrB,MAAM,QAAQ,cAAc,WAAW,OAAO,IAAI,MAAM,IAAI,OAAO;AAAA,QAGnE,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IAGA,MAAM,QAAQ,OAAO,MAAM;AAAA,CAAI;AAAA,IAC/B,IAAI,UAAU;AAAA,IACd,WAAW,KAAK,OAAO;AAAA,MACrB,MAAM,IAAI,EAAE,MAAM,WAAW;AAAA,MAC7B,IAAI,GAAG;AAAA,QACL,MAAM,SAAS,EAAE,GAAG;AAAA,QACpB,IAAI,CAAC,SAAS;AAAA,UAEZ,UAAU;AAAA,QACZ,EAAO;AAAA,UACL,UAAU,KAAK,IAAI,SAAS,MAAM;AAAA;AAAA,MAEtC;AAAA,IACF;AAAA,IACA,IAAI,YAAY,MAAM;AAAA,MACpB,MAAM,IAAI;AAAA,MACV,SAAS,MAGR,IAAI,OAAK,EAAE,OAAO,OAAO,EAAE,OAAO,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK;AAAA,CAAI;AAAA,IACrE;AAAA,IAGA,IAAI,gBAAgB;AAAA,MAClB,SAAS,OAAO,KAAK;AAAA,IACvB;AAAA,IAGA,IAAI,yBAAyB;AAAA,MAC3B,SAAS,OAAO,QAAQ,QAAQ;AAAA,CAAI;AAAA,IACtC;AAAA,IACA,OAAO;AAAA;AAAA;AAOX,SAAS,UAAU,CAAC,OAAO,eAAe;AAAA,EACxC,IAAI,OAAO,UAAU,YAAY,CAAC,MAAM,SAAS;AAAA,CAAI,GAAG;AAAA,IACtD,OAAO;AAAA,EACT;AAAA,EACA,MAAM,cAAc,cAAc,MAAM,cAAc,YAAY;AAAA,CAAI,IAAI,CAAC;AAAA,EAC3E,MAAM,cAAc,YAAY,MAAM,QAAQ;AAAA,EAC9C,IAAI,aAAa;AAAA,IACf,MAAM,SAAS,YAAY;AAAA,IAC3B,OAAO,MAAM,QAAQ,OAAO;AAAA,EAAK,QAAQ;AAAA,EAC3C;AAAA,EACA,OAAO;AAAA;;;ADjFT;AACA;;;AEDA,eAAsB,aAAa,CAAC,WAAoC;AAAA,EACvE,MAAM,eAAe,MAAK,WAAW,YAAY;AAAA,EACjD,IAAI;AAAA,IACH,MAAM,UAAU,MAAM,IAAI,KAAK,YAAY,EAAE,KAAK;AAAA,IAClD,OAAO;AAAA,IACN,OAAO,OAAO;AAAA,IACf,QAAQ,MACP,0CAA0C,iBAC1C,KACD;AAAA,IAEA,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIF,SAAS,kBAAkB,CACjC,cACA;AAAA,EAEC,OAAO;AAAA,EACP,kBAAkB;AAAA,EAClB,OAAO;AAAA,EACP,QAAQ;AAAA,GAEA;AAAA,EACT,IAAI,OAAO;AAAA,EAGX,OAAO,KAAK,QAAQ,kBAAkB,CAAC,IAAI,UAAkB;AAAA,IAC5D,MAAM,UAAU,iBAAiB,KAAK,KAAK;AAAA,IAC3C,MAAM,WAAW,UACd,MAAM,QAAQ,yCAAyC,SAAS,OAAO,IACvE,GAAG,eAAe;AAAA,IACrB,OAAO,QAAQ;AAAA,GACf;AAAA,EAID,IAAI,eAAe,QAAQ;AAAA,EAC3B,IAAI;AAAA,IACH,MAAM,aAAa,aAAa,MAAM,0BAA0B;AAAA,IAChE,IAAI,YAAY;AAAA,MACf,MAAM,WAAW,WAAW;AAAA,MAC5B,IAAI,2BAA2B,KAAK,IAAI,GAAG;AAAA,QAC1C,OAAO,KAAK,QAAQ,4BAA4B,QAAQ;AAAA,MACzD,EAAO;AAAA,MAKP,eAAe,aAAa,QAAQ,UAAU,EAAE;AAAA,IACjD;AAAA,IAEA,MAAM,SAAS;AAAA,IACf,MAAM,YAAY,aAAa,MAAM,MAAM;AAAA,IAC3C,IAAI,WAAW;AAAA,MACd,MAAM,UAAU,UAAU;AAAA,MAC1B,IAAI,OAAO,KAAK,IAAI,GAAG;AAAA,QACtB,OAAO,KAAK,QAAQ,QAAQ,OAAO;AAAA,MACpC;AAAA,MACA,eAAe,aAAa,QAAQ,SAAS,EAAE;AAAA,IAChD;AAAA,IACC,MAAM;AAAA,EAGR,IAAI,cAAc;AAAA,IACjB,OAAO,KAAK,QAAQ,aAAa,GAAG;AAAA,SAAyB;AAAA,EAC9D;AAAA,EAGA,OAAO,KAAK,QACX,wFACA,EACD;AAAA,EAGA,MAAM,eAAe,MAAM,QAAQ,uBAAuB,MAAM;AAAA,EAChE,MAAM,eAAe,IAAI,OACxB,0BAA0B,gDAC1B,GACD;AAAA,EACA,IAAI,aAAa,KAAK,IAAI,GAAG;AAAA,IAC5B,OAAO,KAAK,QAAQ,cAAc,KAAK,WAAW;AAAA,EACnD,EAAO;AAAA,IAEN,OAAO,KAAK,QACX,aACA,cAAgB,UAAU;AAAA,SAC3B;AAAA;AAAA,EAID,IAAI,iBAAiB;AAAA,IACpB,OAAO,KAAK,QAAQ,aAAa,KAAO;AAAA,SAA4B;AAAA,EACrE;AAAA,EAEA,OAAO;AAAA;;AFrER,eAAe,iBAAiB,CAC/B,SAC2B;AAAA,EAC3B;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,OAAO;AAAA,IACP,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,SAAS;AAAA,MACN;AAAA,EAEJ,MAAM,UAAU,CAAC,SAAS;AAAA,EAC1B,IAAI,kBAAkB;AAAA,EACtB,IAAI,YAAY;AAAA,EAGhB,IAAI;AAAA,EAIJ,IAAI;AAAA,IACF,WAAmB,2BAA2B,CAAC;AAAA,IAC/C,MAAM;AAAA,EAKR,IAAI;AAAA,IACH,MAAM,QAAQ,SAAS,MAAM,GAAG,EAAE,OAAO,OAAO;AAAA,IAChD,IAAI,MAAM,UAAU,GAAG;AAAA,MACtB,MAAM,aAAa,MAAM;AAAA,MACzB,MAAM,OAAO,MAAM;AAAA,MACnB,IAAI,aAAa;AAAA,MAGjB,IAAI,sBAAsB;AAAA,MAC1B,IAAI;AAAA,QACH,MAAM,WAAW,MAAK,WAAW,UAAU,YAAY,SAAS;AAAA,QAChE,MAAM,IAAI,MAAM,MAAK,QAAQ;AAAA,QAC7B,sBACC,OAAO,GAAG,gBAAgB,aAAa,EAAE,YAAY,IAAI;AAAA,QACzD,MAAM;AAAA,QACP,sBAAsB;AAAA;AAAA,MAGvB,IAAI,CAAC,qBAAqB;AAAA,QAGzB,MAAM,IAAI,MAAM,sBAAsB;AAAA,MACvC;AAAA,MAGA,IAAI;AAAA,QACH,MAAM,eAAe,MAAK,KAAK,YAAY,YAAY;AAAA,QACvD,MAAM,MAAO,MACZ,sBAAc,YAAY,EAAE,QAC1B,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,QAEtC,MAAM,MAAO,KAAa;AAAA,QAG1B,MAAM,QACL,OAAO,QAAQ,aAAa,IAAI,YAAY,IAAI,IAAI;AAAA,QACrD,MAAM,YAAa,OAAe;AAAA,QAClC,IAAI,WAAW,SAAS,KAAK,GAAG;AAAA,UAC/B,aAAa;AAAA,QACd;AAAA,QACC,MAAM;AAAA,MAGR,IAAI,CAAC,YAAY;AAAA,QAChB,IAAI;AAAA,UACH,MAAM,WAAW,MAAK,KAAK,YAAY,UAAU,UAAU;AAAA,UAC3D,MAAM,QAAQ,MAAM,SAAQ,QAAQ;AAAA,UACpC,MAAM,aAAa,MAAM,OACxB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,KAAK,EAAE,SAAS,KAAK,CACpD;AAAA,UACA,IAAI,WAAW,QAAQ;AAAA,YACtB,IAAI,SAAS,WAAW;AAAA,YACxB,IAAI,UAAU;AAAA,YACd,WAAW,iBAAiB,YAAY;AAAA,cACvC,IAAI;AAAA,gBACH,MAAM,IAAI,MAAM,MAAK,MAAK,UAAU,aAAa,CAAC;AAAA,gBAClD,IAAI,EAAE,WAAW,SAAS;AAAA,kBACzB,UAAU,EAAE;AAAA,kBACZ,SAAS;AAAA,gBACV;AAAA,gBACC,MAAM;AAAA,YACT;AAAA,YACA,aAAa,IAAI,MAAK,YAAY,UAAU,YAAY,MAAM,EAAE,QAAQ,QAAQ,GAAG;AAAA,UACpF;AAAA,UACC,MAAM;AAAA,MACT;AAAA,MAGA,IAAI,CAAC,YAAY;AAAA,QAChB,MAAM,MAAM,MACX,WACA,UACA,YACA,WACA,GAAG,UACJ;AAAA,QACA,MAAM,KAAK,MACV,WACA,UACA,YACA,WACA,GAAG,SACJ;AAAA,QACA,IAAI,SAAS;AAAA,QACb,IAAI,MAAM,IAAI,KAAK,GAAG,EAAE,OAAO,GAAG;AAAA,UACjC,SAAS,IAAI,MAAK,UAAU,YAAY,WAAW,GAAG,UAAU,EAAE,QAAQ,QAAQ,GAAG;AAAA,QACtF,EAAO,SAAI,MAAM,IAAI,KAAK,EAAE,EAAE,OAAO,GAAG;AAAA,UACvC,SAAS,IAAI,MAAK,UAAU,YAAY,WAAW,GAAG,SAAS,EAAE,QAAQ,QAAQ,GAAG;AAAA,QACrF;AAAA,QACA,IAAI,QAAQ;AAAA,UACX,aAAa;AAAA,QACd;AAAA,MACD;AAAA,MAEA,IAAI,CAAC,YAAY;AAAA,QAChB,iBAAiB;AAAA,MAClB;AAAA,MAEA,IAAI,YAAY;AAAA,QACf,MAAM,MAAM,GAAG,cAAc;AAAA,QAE7B,aAAa;AAAA,kCAAqC;AAAA,QAElD,MAAM,KAAK,OAAO,mBAAmB,UAAU,SAAS,mBAAmB,GAAG;AAAA,QAC9E,mBAAmB,iDAAiD;AAAA,MACrE;AAAA,IACD;AAAA,IACC,MAAM;AAAA,EAGR,MAAM,qBAAqB,UAAU,WAAW,KAAK,YAAW;AAAA,EAKhE,MAAM,eAAwC,CAAC;AAAA,EAC/C,IAAI;AAAA,IAEH,IAAI;AAAA,MACH,MAAM,QAAQ,SAAS,MAAM,GAAG,EAAE,OAAO,OAAO;AAAA,MAChD,IAAI,MAAM,UAAU,GAAG;AAAA,QACtB,MAAM,IAAI;AAAA,QACV,MAAM,MAAM,GAAG,MAAM,MAAM,MAAM;AAAA,QACjC,MAAM,MAAM,EAAE,0BAA0B;AAAA,QAGxC,MAAM,SAAU,KAAa,KAAK;AAAA,QAGlC,IAAI,OAAO,WAAW,YAAY;AAAA,UACjC,MAAM,MAAM,MAAM,OAAO;AAAA,YACxB;AAAA,YACA,QAAQ,EAAE,MAAM,MAAM,GAAG;AAAA,UAC1B,CAAQ;AAAA,UACR,aAAa,YAAY;AAAA,QAC1B;AAAA,MACD;AAAA,MACC,MAAM;AAAA,IAGR,IAAI;AAAA,MACH,MAAM,aAAa,MAAK,KAAK,YAAY,WAAW;AAAA,MACpD,MAAM,IAAI,MACT,sBAAc,UAAU,EAAE,QAAQ,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,MAEtE,MAAM,QACL,OAAO,EAAE,eAAe,aAAa,EAAE,WAAW,QAAQ,IAAI;AAAA,MAC/D,MAAM,IAAI,OAAO;AAAA,MACjB,MAAM,SAAU,OAAO,UAAU,CAAC;AAAA,MAElC,IAAI,KAAK,OAAO,EAAE,SAAS,UAAU;AAAA,QACpC,IAAI;AAAA,UACH,MAAM,MAAM,MAAK,WAAW,UAAU,OAAO,EAAE,IAAI,CAAC;AAAA,UACpD,MAAM,MAAO,MACZ,sBAAc,GAAG,EAAE,QAAQ,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,UAE/D,MAAM,MAAO,KAAa;AAAA,UAC1B,MAAM,SAAU,KAAa;AAAA,UAG7B,IAAI,OAAO,WAAW,YAAY;AAAA,YACjC,MAAM,MAAM,MAAM,OAAO,EAAE,UAAU,OAAO,CAAQ;AAAA,YACpD,aAAa,YAAY;AAAA,UAC1B;AAAA,UACC,MAAM;AAAA,MACT;AAAA,MACC,MAAM;AAAA,IACP,MAAM;AAAA,EAER,IAAI;AAAA,IACF,WAAmB,mBAAmB;AAAA,IACtC,MAAM;AAAA,EAKR,IAAI,uBAAkD,CAAC;AAAA,EACvD,IAAI;AAAA,IACH,MAAM,IAAI,MAAK,KAAK,YAAY,YAAY;AAAA,IAC5C,MAAM,MAAM,MACX,sBAAc,CAAC,EAAE,QAAQ,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,IAE7D,uBAAyB,KAAa,gBAAgB,CAAC;AAAA,IAIvD,IAAI;AAAA,MACF,WAAmB,0BAA0B;AAAA,MAC7C,MAAM;AAAA,IACP,MAAM;AAAA,EAKR,MAAM,wBAAwB,aAAkB,eAAe;AAAA,IAC9D;AAAA,EACD,CAAC;AAAA,EACD,MAAM,UAAU,eAAe,qBAAqB;AAAA,EACpD,MAAM,eAAe,MAAM,cAAc,SAAS;AAAA,EAIlD,IAAI,iBAAiB;AAAA,EACrB,IAAI;AAAA,IACH,MAAM,aAAa;AAAA,MAClB,MAAK,WAAW,MAAM,YAAY,WAAW;AAAA,MAC7C,MAAK,WAAW,MAAM,MAAM,YAAY,WAAW;AAAA,MACnD,MAAK,WAAW,MAAM,MAAM,MAAM,YAAY,WAAW;AAAA,MACzD,MAAK,WAAW,MAAM,MAAM,MAAM,MAAM,YAAY,WAAW;AAAA,IAChE;AAAA,IACA,IAAI,UAAU;AAAA,IACd,WAAW,KAAK,YAAY;AAAA,MAC3B,IAAI,MAAM,IAAI,KAAK,CAAC,EAAE,OAAO,GAAG;AAAA,QAC/B,UAAU;AAAA,QACV;AAAA,MACD;AAAA,IACD;AAAA,IACA,IAAI,SAAS;AAAA,MACZ,IAAI,MAAM,MAAM,IAAI,KAAK,OAAO,EAAE,KAAK;AAAA,MACvC,IAAI,QAAQ;AAAA,QAEX,MAAM,IAEJ,QAAQ,qBAAqB,EAAE,EAE/B,QAAQ,QAAQ,GAAG,EAEnB,QAAQ,uBAAuB,IAAI,EAEnC,QAAQ,OAAO,GAAG,EAElB,KAAK;AAAA,MACR;AAAA,MACA,iBAAiB,kCAAkC;AAAA,IACpD;AAAA,IACC,MAAM;AAAA,EAMR,IAAI;AAAA,IACH,MAAM,IAAI;AAAA,IACV,MAAM,MAAM,EAAE;AAAA,IAGd,MAAM,aAAa,CAAC,UAA0B,CAAC,GAAQ,MAAW;AAAA,MACjE,MAAM,KAAK,GAAG,MAAM,OAAO,KAAK,MAAM,OAAO,EAAE,KAAK,IAAI,CAAC,IAAI;AAAA,MAC7D,MAAM,KAAK,GAAG,MAAM,OAAO,KAAK,MAAM,OAAO,EAAE,KAAK,IAAI,CAAC,IAAI;AAAA,MAC7D,OAAO,UAAU,QAAQ,KAAK,KAAK,KAAK;AAAA;AAAA,IAIzC,MAAM,QAAyD,CAAC;AAAA,IAChE,IAAI,OAAO,OAAO,IAAI,YAAY,YAAY;AAAA,MAE5C,IAAoB,QAAQ,CAAC,MAAM;AAAA,QACnC,IAAI,OAAO,MAAM;AAAA,UAChB,MAAM,KAAK,EAAE,OAAO,OAAO,mBAAmB,MAAM,SAAS;AAAA,OAC9D;AAAA,IACF,EAAO,SAAI,OAAO,OAAO,QAAQ,UAAU;AAAA,MAC1C,YAAY,GAAG,MAAM,OAAO,QAAQ,GAA0B,GAAG;AAAA,QAChE,MAAM,MACL,OAAO,GAAG,UAAU,WAAW,EAAE,QAAQ,OAAO;AAAA,QACjD,MAAM,IAAI,OAAO,GAAG,SAAS,WAAW,EAAE,OAAO;AAAA,QACjD,MAAM,KAAK,EAAE,OAAO,KAAK,MAAM,EAAE;AAAA,MAClC;AAAA,IACD;AAAA,IAEA,MAAM,cAAc,OAAO,KAAK,KAAK;AAAA,IACrC,IAAI,YAAY,QAAQ;AAAA,MACvB,MAAM,SAAoC,CAAC;AAAA,MAC3C,MAAM,UAAmC,CAAC;AAAA,MAC1C,WAAW,KAAK,aAAa;AAAA,QAC5B,MAAM,OAAO,MAAM;AAAA,QACnB,MAAM,OAAO,uBAAuB,MAAM,CAAC;AAAA,QAC3C,IAAI,MAAiB;AAAA,QACrB,IACC,OAAO,SAAS,KAAK,KAAK,KAC1B,KAAK,QAAQ,KACb,KAAK,SAAS,UACb;AAAA,UACD,IAAI,KAAK,SAAS,aAAa;AAAA,YAC9B,MAAM,CAAC,GAAG,IAAI,EAAE,KAAK,WAAW,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,KAAK;AAAA,UAC7D,EAAO,SAAI,KAAK,SAAS,YAAY;AAAA,YACpC,MAAM,CAAC,GAAG,IAAI,EAAE,KAAK,WAAW,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,KAAK;AAAA,UAC5D,EAAO,SAAI,KAAK,SAAS,QAAQ;AAAA,YAChC,MAAM,KAAK,MAAM,GAAG,KAAK,KAAK;AAAA,UAC/B;AAAA,QACD;AAAA,QACA,OAAO,KAAK;AAAA,QACZ,QAAQ,KACP,MAAM,QAAQ,GAAG,KAAK,MAAM,QAAQ,IAAI,IACrC,IAAI,SAAS,KAAK,SAClB;AAAA,MACL;AAAA,MACA,MAAM,aAAa,KAAK,UAAU,MAAM;AAAA,MACxC,MAAM,cAAc,KAAK,UAAU,OAAO;AAAA,MAC1C,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA,+CAAsN;AAAA;AAAA,uDAAwJ;AAAA;AAAA;AAAA,IAClY;AAAA,IACC,MAAM;AAAA,EAGR,IAAI;AAAA,IACH,MAAM,aAAa,KAAK,UAAU,YAAY;AAAA,IAC9C,mBAAmB;AAAA;AAAA;AAAA;AAAA,uEAA4K;AAAA;AAAA;AAAA,IAC9L,MAAM;AAAA,EAGR,mBAAmB,QACjB,IAAI,CAAC,QAAQ,8BAA8B,gBAAgB,EAC3D,KAAK,EAAE;AAAA,EAGT,IAAI,cAAa;AAAA,IAChB,mBAAmB;AAAA,EACpB;AAAA,EAGA,IAAI,cAAc;AAAA,EAClB,IAAI;AAAA,EACJ,IAAI;AAAA,IACH,MAAM,QAAQ,SAAS,MAAM,GAAG,EAAE,OAAO,OAAO;AAAA,IAChD,IAAI,MAAM,UAAU,GAAG;AAAA,MACtB,MAAM,MAAM,GAAG,MAAM,MAAM,MAAM;AAAA,MACjC,MAAM,IAAI;AAAA,MACV,MAAM,MAAM,EAAE,0BAA0B;AAAA,MAGxC,MAAM,OAAQ,KAAa;AAAA,MAC3B,MAAM,MAAO,KAAa;AAAA,MAC1B,eAAe,kBAAkB,IAAI;AAAA,MACrC,MAAM,UACL,OAAO,KAAK,SAAS,WAClB,IAAI,OACJ,MAAM,QAAQ,KAAK,IAAI,IACtB,OAAO,IAAI,KAAK,KAAK;AAAA,CAAI,CAAC,IAC1B;AAAA,MACL,IAAI;AAAA,QAAS,eAAe;AAAA,EAAK;AAAA,MACjC,IAAI,OAAO,KAAK,SAAS,YAAY,IAAI,KAAK,KAAK,GAAG;AAAA,QACrD,WAAW,IAAI,KAAK,KAAK;AAAA,MAC1B;AAAA,IACD;AAAA,IACC,MAAM;AAAA,EAGR,IAAI;AAAA,IACH,MAAM,aAAa,MAAK,KAAK,YAAY,WAAW;AAAA,IACpD,MAAM,IAAI,MACT,sBAAc,UAAU,EAAE,QAAQ,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,IAEtE,MAAM,QACL,OAAO,EAAE,eAAe,aAAa,EAAE,WAAW,QAAQ,IAAI;AAAA,IAC/D,MAAM,IAAI,OAAO;AAAA,IACjB,IAAI,CAAC,GAAG;AAAA,MAEP,iBAAiB,kBAAkB;AAAA,IACpC;AAAA,IACA,IAAI,KAAK,OAAO,EAAE,SAAS,UAAU;AAAA,MACpC,IAAI;AAAA,QACH,MAAM,MAAM,MAAK,WAAW,UAAU,OAAO,EAAE,IAAI,CAAC;AAAA,QACpD,MAAM,MAAO,MACZ,sBAAc,GAAG,EAAE,QAAQ,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,QAE/D,MAAM,OAAQ,KAAa;AAAA,QAC3B,MAAM,MAAO,KAAa;AAAA,QAC1B,IAAI;AAAA,UAAM,eAAe,kBAAkB,IAAI;AAAA,QAC/C,IAAI,KAAK;AAAA,UACR,MAAM,UACL,OAAO,IAAI,SAAS,WACjB,IAAI,OACJ,MAAM,QAAQ,IAAI,IAAI,IACrB,OAAQ,IAAI,KAAmB,KAAK;AAAA,CAAI,CAAC,IACzC;AAAA,UACL,IAAI;AAAA,YAAS,eAAe;AAAA,EAAK;AAAA,UACjC,IAAI,OAAO,IAAI,SAAS,YAAY,IAAI,KAAK,KAAK,GAAG;AAAA,YACpD,WAAW,IAAI,KAAK,KAAK;AAAA,UAC1B;AAAA,QACD;AAAA,QACC,MAAM;AAAA,IAGT,EAAO;AAAA,MACN,IAAI;AAAA,QACH,MAAM,OAAQ,GAAW;AAAA,QACzB,IAAI,MAAM,QAAQ,IAAI,GAAG;AAAA,UAExB,IAAI;AAAA,UACJ,IAAI,UAAU;AAAA,UACd,WAAW,MAAM,MAAM;AAAA,YACtB,MAAM,MAAM,OAAQ,IAAY,WAAW,GAAG;AAAA,YAC9C,IAAI,CAAC,SAAS,WAAW,GAAG;AAAA,cAAG;AAAA,YAC/B,MAAM,MAAM,IAAI,MAAM,GAAG,EAAE,OAAO,OAAO,EAAE;AAAA,YAC3C,IAAI,OAAO,SAAS;AAAA,cACnB,UAAU;AAAA,cACV,SAAS;AAAA,YACV;AAAA,UACD;AAAA,UACA,IAAI,UAAU,OAAQ,OAAe,SAAS,UAAU;AAAA,YACvD,IAAI;AAAA,cACH,MAAM,MAAM,MACX,WACA,UACA,OAAQ,OAAe,IAAI,CAC5B;AAAA,cACA,MAAM,MAAO,MACZ,sBAAc,GAAG,EAAE,QACjB,eAAc,MAAM,KAAK,IAAI,MAAM;AAAA,cAEtC,MAAM,OAAQ,KAAa;AAAA,cAC3B,MAAM,MAAO,KAAa;AAAA,cAC1B,IAAI;AAAA,gBAAM,eAAe,kBAAkB,IAAI;AAAA,cAC/C,MAAM,UACL,OAAO,KAAK,SAAS,WAClB,IAAI,OACJ,MAAM,QAAQ,KAAK,IAAI,IACtB,OAAQ,IAAI,KAAmB,KAAK;AAAA,CAAI,CAAC,IACzC;AAAA,cACL,IAAI;AAAA,gBAAS,eAAe;AAAA,EAAK;AAAA,cACjC,IAAI,OAAO,KAAK,SAAS,YAAY,IAAI,MAAM,KAAK,GAAG;AAAA,gBACtD,WAAW,OAAO,IAAI,IAAI,EAAE,KAAK;AAAA,cAClC;AAAA,cACC,MAAM;AAAA,UACT;AAAA,QACD;AAAA,QACC,MAAM;AAAA;AAAA,IAER,MAAM;AAAA,EAER,MAAM,eAAe,eACpB,CAAC,eAAO,IAAI,KAAK,IAAI,eAAO,SAAS,GAAG,eAAO,WAAW,CAAC,EACzD,OAAO,OAAO,EACd,KAAK;AAAA,CAAI,CACZ;AAAA,EACA,MAAM,QAAO,mBAAmB,cAAc,SAAS;AAAA,IACtD,MAAM,CAAC,gBAAgB,YAAY,EAAE,OAAO,OAAO,EAAE,KAAK;AAAA,CAAI;AAAA,IAC9D;AAAA,IACA,MAAM,YAAY;AAAA,IAClB;AAAA,EACD,CAAC;AAAA,EAED,OAAO;AAAA,IACN;AAAA,IACA,QAAQ,kBAAkB;AAAA,EAC3B;AAAA;;AG1fD,MAAM,SAAe;AAAA,EACZ;AAAA,EACA;AAAA,EAER,WAAW,CAAC,UAAkB,KAAK;AAAA,IAClC,KAAK,QAAQ,IAAI;AAAA,IACjB,KAAK,UAAU;AAAA;AAAA,EAGhB,GAAG,CAAC,KAAuB;AAAA,IAC1B,IAAI,CAAC,KAAK,MAAM,IAAI,GAAG,GAAG;AAAA,MACzB;AAAA,IACD;AAAA,IAIA,MAAM,QAAQ,KAAK,MAAM,IAAI,GAAG;AAAA,IAChC,KAAK,MAAM,OAAO,GAAG;AAAA,IACrB,KAAK,MAAM,IAAI,KAAK,KAAK;AAAA,IAEzB,OAAO;AAAA;AAAA,EAGR,GAAG,CAAC,KAAQ,OAAgB;AAAA,IAE3B,IAAI,KAAK,MAAM,IAAI,GAAG,GAAG;AAAA,MACxB,KAAK,MAAM,OAAO,GAAG;AAAA,IACtB;AAAA,IAEA,KAAK,MAAM,IAAI,KAAK,KAAK;AAAA,IAGzB,IAAI,KAAK,MAAM,OAAO,KAAK,SAAS;AAAA,MACnC,MAAM,WAAW,KAAK,MAAM,KAAK,EAAE,KAAK,EAAE;AAAA,MAC1C,KAAK,MAAM,OAAO,QAAa;AAAA,IAChC;AAAA;AAAA,EAGD,GAAG,CAAC,KAAiB;AAAA,IACpB,OAAO,KAAK,MAAM,IAAI,GAAG;AAAA;AAAA,EAG1B,KAAK,GAAS;AAAA,IACb,KAAK,MAAM,MAAM;AAAA;AAAA,MAGd,IAAI,GAAW;AAAA,IAClB,OAAO,KAAK,MAAM;AAAA;AAEpB;;ACjDO,SAAS,WAAW,CAAC,UAA0B;AAAA,EACrD,MAAM,MAAM,SAAS,MAAM,GAAG,EAAE,IAAI,GAAG,YAAY;AAAA,EACnD,MAAM,YAAoC;AAAA,IACzC,MAAM;AAAA,IACN,KAAK;AAAA,IACL,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,MAAM;AAAA,IACN,KAAK;AAAA,IACL,KAAK;AAAA,IACL,MAAM;AAAA,IACN,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,MAAM;AAAA,IACN,OAAO;AAAA,IACP,KAAK;AAAA,EACN;AAAA,EACA,OAAO,UAAU,OAAO,OAAO;AAAA;AAGzB,SAAS,cAAc,CAAC,aAA8B;AAAA,EAC5D,IAAI,CAAC;AAAA,IAAa,OAAO;AAAA,EACzB,MAAM,KAAK,YAAY,MAAM,GAAG,EAAE,GAAG,KAAK;AAAA,EAC1C,OACC,GAAG,WAAW,OAAO,KACrB,OAAO,4BACP,OAAO,sBACP,OAAO,qBACP,OAAO;AAAA;;;AC1BF,SAAS,WAAW,CAAC,gBAAkC;AAAA,EAC7D,OAAO,QAAQ,kBAAkB,QAAQ,KAAK,cAAc,CAAC;AAAA;AAGvD,SAAS,OAAO,CACtB,OACmC;AAAA,EACnC,OAAO,OAAO,UAAU,WACrB,IAAI,YAAY,EAAE,OAAO,KAAK,IAC7B;AAAA;AAGE,SAAS,cAAc,CAC7B,MACA,aACA,gBACoB;AAAA,EACpB,MAAM,eAAuC,CAAC;AAAA,EAC9C,IAAI,YAAY,cAAc,KAAK,eAAe,WAAW,GAAG;AAAA,IAC/D,IAAI;AAAA,MACH,MAAM,aAAa,IAAI,SAAS,QAAQ,IAAI,CAAC;AAAA,MAC7C,aAAa,sBAAsB;AAAA,MACnC,aAAa,OAAO;AAAA,MACpB,OAAO,EAAE,MAAM,YAAY,aAAa;AAAA,MACvC,MAAM;AAAA,EAGT;AAAA,EACA,OAAO,EAAE,MAAM,aAAa;AAAA;",
|
|
23
|
-
"debugId": "
|
|
23
|
+
"debugId": "813D9893BA24C15A64756E2164756E21",
|
|
24
24
|
"names": []
|
|
25
25
|
}
|