@idlebox/cli 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 GongT<admin@gongt.me>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,27 @@
1
+ # cli tools
2
+
3
+ 统合包:
4
+ * [@idlebox/args](../args)
5
+ * [@idlebox/cli-help-builder](../builder)
6
+ * [@idlebox/logger](../logger)
7
+ * [@idlebox/source-map-support](../support)
8
+
9
+ ### Usage
10
+
11
+ ### dynamic
12
+
13
+ ```ts
14
+ import { makeApplication, type ArgDefineMap } from '@idlebox/cli';
15
+
16
+ await makeApplication('some-cli', 'a tool for better life')
17
+ .dynamic(import.meta.dirname, 'commands/**/*.command.js');
18
+ ```
19
+
20
+ ### static
21
+
22
+ 1. generate static file:
23
+ ```bash
24
+ pnpx @idlebox/cli-static-generator 'src/commands/*.ts'
25
+ ```
26
+
27
+ @see [example usage](../../@build-script/package-tools/src/main.ts)
@@ -0,0 +1,2 @@
1
+ export * from '@idlebox/cli-static-generator';
2
+ //# sourceMappingURL=builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC"}
package/lib/builder.js ADDED
@@ -0,0 +1,2 @@
1
+ export * from '@idlebox/cli-static-generator';
2
+ //# sourceMappingURL=builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,29 @@
1
+ export declare enum ExitCode {
2
+ /**
3
+ * 运行时发生各种无法预料的错误,例如网络突然断开等
4
+ */
5
+ EXECUTION = 1,
6
+ /**
7
+ * 在不期待SIGINT、SIGTERM的情况下,收到了这些信号进而退出
8
+ */
9
+ INTERRUPT = 2,
10
+ /**
11
+ * 使用方式错误,例如传入了不正确的参数
12
+ */
13
+ USAGE = 3,
14
+ /**
15
+ * 由于程序代码不完善导致的错误
16
+ */
17
+ PROGRAM = 66
18
+ }
19
+ export interface IApp {
20
+ readonly debug: boolean;
21
+ readonly verbose: boolean;
22
+ readonly silent: boolean;
23
+ readonly showHelp: boolean;
24
+ readonly command: string;
25
+ readonly color: boolean;
26
+ }
27
+ export * from './re-export.js';
28
+ export { app, makeApplication } from './startup.js';
29
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,oBAAY,QAAQ;IACnB;;OAEG;IACH,SAAS,IAAI;IAEb;;OAEG;IACH,SAAS,IAAI;IAEb;;OAEG;IACH,KAAK,IAAI;IAET;;OAEG;IACH,OAAO,KAAK;CACZ;AAED,MAAM,WAAW,IAAI;IACpB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACxB;AAED,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
package/lib/index.js ADDED
@@ -0,0 +1,24 @@
1
+ import { install } from '@idlebox/source-map-support';
2
+ install({ environment: 'node', ignore: true });
3
+ export var ExitCode;
4
+ (function (ExitCode) {
5
+ /**
6
+ * 运行时发生各种无法预料的错误,例如网络突然断开等
7
+ */
8
+ ExitCode[ExitCode["EXECUTION"] = 1] = "EXECUTION";
9
+ /**
10
+ * 在不期待SIGINT、SIGTERM的情况下,收到了这些信号进而退出
11
+ */
12
+ ExitCode[ExitCode["INTERRUPT"] = 2] = "INTERRUPT";
13
+ /**
14
+ * 使用方式错误,例如传入了不正确的参数
15
+ */
16
+ ExitCode[ExitCode["USAGE"] = 3] = "USAGE";
17
+ /**
18
+ * 由于程序代码不完善导致的错误
19
+ */
20
+ ExitCode[ExitCode["PROGRAM"] = 66] = "PROGRAM";
21
+ })(ExitCode || (ExitCode = {}));
22
+ export * from './re-export.js';
23
+ export { app, makeApplication } from './startup.js';
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,OAAO,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AAE/C,MAAM,CAAN,IAAY,QAoBX;AApBD,WAAY,QAAQ;IACnB;;OAEG;IACH,iDAAa,CAAA;IAEb;;OAEG;IACH,iDAAa,CAAA;IAEb;;OAEG;IACH,yCAAS,CAAA;IAET;;OAEG;IACH,8CAAY,CAAA;AACb,CAAC,EApBW,QAAQ,KAAR,QAAQ,QAoBnB;AAWD,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { ArgumentError, ArgumentTypings } from '@idlebox/args';
2
+ export { argv } from '@idlebox/args/default';
3
+ export { CliApplicationHelp, CommandDefine, type IArgDefine as ArgDefine, type IArgDefineMap as ArgDefineMap, type ICommandDefine, type ICommandDefineWithCommand } from '@idlebox/cli-help-builder';
4
+ export { createDebug, CSI, EnableLogLevel, logger, LogLevel, type IDebugCommand, type IMyDebug, type IMyDebugWithControl, type IMyLogger } from '@idlebox/logger';
5
+ //# sourceMappingURL=re-export.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"re-export.d.ts","sourceRoot":"","sources":["../src/re-export.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,KAAK,UAAU,IAAI,SAAS,EAAE,KAAK,aAAa,IAAI,YAAY,EAAE,KAAK,cAAc,EAAE,KAAK,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACrM,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,KAAK,QAAQ,EAAE,KAAK,mBAAmB,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { ArgumentError, ArgumentTypings } from '@idlebox/args';
2
+ export { argv } from '@idlebox/args/default';
3
+ export { CliApplicationHelp, CommandDefine } from '@idlebox/cli-help-builder';
4
+ export { createDebug, CSI, EnableLogLevel, logger, LogLevel } from '@idlebox/logger';
5
+ //# sourceMappingURL=re-export.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"re-export.js","sourceRoot":"","sources":["../src/re-export.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAyH,MAAM,2BAA2B,CAAC;AACrM,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAA+E,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { type IArgDefineMap, type ICommandDefine, type ICommandDefineWithCommand } from '@idlebox/cli-help-builder';
2
+ import { type IApp } from './index.js';
3
+ export declare const app: Readonly<IApp>;
4
+ interface IAppBasic {
5
+ readonly name: string;
6
+ readonly description: string;
7
+ }
8
+ export declare function makeApplication({ name: binName, description }?: IAppBasic): {
9
+ getHelper(command?: string): Promise<{
10
+ help(): string;
11
+ legend(): string;
12
+ usage(): string;
13
+ }>;
14
+ withCommon(commonArgs: IArgDefineMap): /*elided*/ any;
15
+ simple(command: ICommandDefine): Promise<never>;
16
+ static(imports: Record<string, string>, helps: readonly ICommandDefineWithCommand[]): Promise<void>;
17
+ dynamic(absRootDir: string, globs?: string | string[]): Promise<void>;
18
+ };
19
+ export {};
20
+ //# sourceMappingURL=startup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"startup.d.ts","sourceRoot":"","sources":["../src/startup.ts"],"names":[],"mappings":"AAEA,OAAO,EAA0C,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,KAAK,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAW5J,OAAO,EAAY,KAAK,IAAI,EAAE,MAAM,YAAY,CAAC;AAoBjD,eAAO,MAAM,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAQ,CAAC;AAQxC,UAAU,SAAS;IAClB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC7B;AAmBD,wBAAgB,eAAe,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,GAAE,SAAsB;wBAwD1D,MAAM;;;;;2BAqCT,aAAa;oBAKd,cAAc;oBASd,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,SAAS,yBAAyB,EAAE;wBA2B/D,MAAM,UAAS,MAAM,GAAG,MAAM,EAAE;EA2C3D"}
package/lib/startup.js ADDED
@@ -0,0 +1,251 @@
1
+ import { argv } from '@idlebox/args/default';
2
+ import { CliApplicationHelp } from '@idlebox/cli-help-builder';
3
+ import { humanDate, NotImplementedError, registerGlobalLifecycle, toDisposable } from '@idlebox/common';
4
+ import { createRootLogger, EnableLogLevel, logger } from '@idlebox/logger';
5
+ import { registerNodejsExitHandler, shutdown } from '@idlebox/node';
6
+ import { mapSourcePosition } from '@idlebox/source-map-support';
7
+ import assert from 'node:assert';
8
+ import { readFileSync } from 'node:fs';
9
+ import { glob } from 'node:fs/promises';
10
+ import { findPackageJSON } from 'node:module';
11
+ import { basename, extname, resolve } from 'node:path';
12
+ import { getCallSites } from 'node:util';
13
+ import { ExitCode } from './index.js';
14
+ class CliApplication {
15
+ debug = false;
16
+ verbose = false;
17
+ silent = false;
18
+ showHelp = false;
19
+ color = false;
20
+ initialized = false;
21
+ _command = '';
22
+ get command() {
23
+ if (!this._command) {
24
+ throw new Error('application sub command is unknown or not exists');
25
+ }
26
+ return this._command;
27
+ }
28
+ }
29
+ const info = new CliApplication();
30
+ export const app = info;
31
+ const fixedCommon = {
32
+ '--debug, -d': { flag: true, description: '增加输出(最多2个)' },
33
+ '--quiet, -s, --silent': { flag: true, description: '减少输出' },
34
+ '--help, -h': { flag: true, description: '显示帮助信息' },
35
+ };
36
+ function autoload() {
37
+ const callSites = getCallSites(3, { sourceMap: false });
38
+ const mainUri = callSites[2].scriptName;
39
+ const pkgPath = findPackageJSON(mainUri);
40
+ if (!pkgPath) {
41
+ throw new Error(`can not determin package.json for ${mainUri}`);
42
+ }
43
+ let { name, description } = JSON.parse(readFileSync(pkgPath, 'utf-8'));
44
+ if (name.startsWith('@')) {
45
+ name = basename(name);
46
+ }
47
+ return { name, description };
48
+ }
49
+ export function makeApplication({ name: binName, description } = autoload()) {
50
+ assert.equal(typeof binName, 'string', 'name must be a string');
51
+ assert.equal(typeof description, 'string', 'description must be a string');
52
+ if (info.initialized) {
53
+ throw new Error(`duplicate call to makeApplication`);
54
+ }
55
+ info.initialized = true;
56
+ process.title = binName;
57
+ const debugLvl = argv.flag(['--debug', '-d']);
58
+ const silent = argv.flag(['--silent', '-s', '--quiet']) > 0;
59
+ info.showHelp = argv.flag(['--help', '-h']) > 0;
60
+ info.verbose = debugLvl > 1;
61
+ info.debug = debugLvl > 0;
62
+ info.silent = silent;
63
+ let level = EnableLogLevel.auto;
64
+ if (info.verbose) {
65
+ level = EnableLogLevel.verbose;
66
+ }
67
+ else if (info.debug) {
68
+ level = EnableLogLevel.debug;
69
+ }
70
+ else if (info.silent) {
71
+ level = EnableLogLevel.error;
72
+ }
73
+ createRootLogger(binName, level);
74
+ info.color = logger.colorEnabled;
75
+ if (!binName || !description) {
76
+ logger.error `missing application name or description`;
77
+ shutdown(ExitCode.PROGRAM);
78
+ }
79
+ registerNodejsExitHandler();
80
+ if (logger.debug.isEnabled) {
81
+ const startTime = Date.now();
82
+ registerGlobalLifecycle(toDisposable(() => {
83
+ logger.debug(`process exit with code ${process.exitCode} | ${humanDate.delta(startTime, Date.now())}`);
84
+ }));
85
+ }
86
+ if (info.debug && info.silent) {
87
+ logger.error `can not use --debug and --silent together`;
88
+ shutdown(ExitCode.USAGE);
89
+ }
90
+ let commons;
91
+ let commands;
92
+ return {
93
+ async getHelper(command) {
94
+ const help = new CliApplicationHelp(binName, description);
95
+ if (!info.color) {
96
+ help.disableColor();
97
+ }
98
+ if (commons) {
99
+ help.registerCommonArgs(commons);
100
+ }
101
+ help.registerCommonArgs(fixedCommon);
102
+ if (command) {
103
+ const cmd = commands.find((item) => item.command === command);
104
+ assert.ok(cmd, `invalid command: ${command}`);
105
+ help.registerCommand(command, cmd);
106
+ }
107
+ else {
108
+ for (const cmd of commands) {
109
+ if (cmd.isHidden) {
110
+ continue;
111
+ }
112
+ help.registerCommand(cmd.command, cmd);
113
+ }
114
+ }
115
+ return {
116
+ help() {
117
+ return help.help(command);
118
+ },
119
+ legend() {
120
+ return help.legend();
121
+ },
122
+ usage() {
123
+ return help.usage(command);
124
+ },
125
+ };
126
+ },
127
+ withCommon(commonArgs) {
128
+ if (commons)
129
+ throw new Error(`duplicate register common arguments`);
130
+ commons = commonArgs;
131
+ return this;
132
+ },
133
+ async simple(command) {
134
+ if (command.commonArgs)
135
+ this.withCommon(command.commonArgs);
136
+ if (info.showHelp) {
137
+ this.getHelper();
138
+ }
139
+ else {
140
+ }
141
+ throw new NotImplementedError('simple');
142
+ },
143
+ async static(imports, helps) {
144
+ commands = helps;
145
+ const known_commands = Array.from(Object.keys(imports));
146
+ const subcmd = argv.command(known_commands);
147
+ if (info.showHelp) {
148
+ const help = await this.getHelper(subcmd?.value);
149
+ console.error(help.help());
150
+ shutdown(0);
151
+ }
152
+ if (!subcmd?.value) {
153
+ logger.error `missing command, use --help/-h to see available commands`;
154
+ shutdown(ExitCode.USAGE);
155
+ }
156
+ const commandName = subcmd.value;
157
+ assert.ok(imports[commandName], `command "${commandName}" not found`);
158
+ const callSites = getCallSites(2, { sourceMap: false });
159
+ const entryFile = new URL(imports[commandName], callSites[1].scriptName).toString();
160
+ if (commons)
161
+ consumeArguments(commons);
162
+ consumeCommandArguments(commands.find((cmd) => cmd.command === commandName));
163
+ await execMain(entryFile, subcmd);
164
+ },
165
+ async dynamic(absRootDir, globs = ['*.js']) {
166
+ if (typeof globs === 'string') {
167
+ globs = [globs];
168
+ }
169
+ logger.verbose `dynamic command\n\troot: ${absRootDir}\n\tglobs: ${globs.join(', ')}`;
170
+ const known_commands = [];
171
+ const importMap = {};
172
+ for await (const fname of glob(globs, { cwd: absRootDir })) {
173
+ const base = basename(fname, extname(fname));
174
+ const path = resolve(absRootDir, fname);
175
+ known_commands.push(base);
176
+ importMap[base] = path;
177
+ }
178
+ const subcmd = argv.command(known_commands);
179
+ if (subcmd?.value) {
180
+ const cmd = await importDefine(importMap[subcmd.value]);
181
+ commands = [cmd];
182
+ }
183
+ else {
184
+ commands = await Promise.all(known_commands.map((cmd) => importDefine(importMap[cmd])));
185
+ }
186
+ if (info.showHelp) {
187
+ const help = await this.getHelper(subcmd?.value);
188
+ console.error(help.help());
189
+ shutdown(0);
190
+ }
191
+ if (!subcmd?.value) {
192
+ logger.error `missing command, use --help/-h to see available commands`;
193
+ shutdown(ExitCode.USAGE);
194
+ }
195
+ const commandName = subcmd.value;
196
+ if (commons)
197
+ consumeArguments(commons);
198
+ consumeCommandArguments(commands.find((cmd) => cmd.command === commandName));
199
+ await execMain(importMap[commandName], subcmd);
200
+ },
201
+ };
202
+ }
203
+ async function execMain(file, subcmd) {
204
+ logger.verbose `executing js file: ${file}`;
205
+ const { main } = await import(file);
206
+ if (typeof main !== 'function') {
207
+ const r = mapSourcePosition({ source: file, column: 0, line: 1 });
208
+ logger.fatal `missing main() function in file long<${r.source}>`;
209
+ }
210
+ const result = await main(subcmd);
211
+ if (result !== undefined) {
212
+ const r = mapSourcePosition({ source: file, column: 0, line: 1 });
213
+ logger.warn `main function retrun type is not void in file long<${r.source}>`;
214
+ }
215
+ }
216
+ async function importDefine(file) {
217
+ const { Command } = await import(file);
218
+ assert.ok(Command, `file not export Command: ${file}`);
219
+ const cmd = new Command();
220
+ return {
221
+ command: basename(file, extname(file)),
222
+ ...cmd.toJSON(),
223
+ };
224
+ }
225
+ const spaces = /\s+/g;
226
+ function consumeArguments(defines) {
227
+ for (const [name, { flag }] of Object.entries(defines)) {
228
+ const names = name.split(spaces);
229
+ if (flag) {
230
+ argv.flag(names);
231
+ }
232
+ else {
233
+ argv.multiple(names);
234
+ }
235
+ }
236
+ }
237
+ function consumeCommandArguments(command) {
238
+ if (!command) {
239
+ throw logger.fatal(`program defect: command must not empty not`);
240
+ }
241
+ if (command.args)
242
+ consumeArguments(command.args);
243
+ if (command.commonArgs)
244
+ consumeArguments(command.commonArgs);
245
+ if (!command.positional) {
246
+ if (argv.unused().length > 0) {
247
+ logger.fatal `unexpected arguments: ${argv.unused().join(', ')}`;
248
+ }
249
+ }
250
+ }
251
+ //# sourceMappingURL=startup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"startup.js","sourceRoot":"","sources":["../src/startup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"fileNames":["../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2023.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2023.array.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2023.intl.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.collection.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.object.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.promise.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.string.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.array.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.collection.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.promise.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.float16.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../cli-help-builder/src/table.ts","../../cli-help-builder/src/types.ts","../../cli-help-builder/src/format.ts","../../cli-help-builder/src/index.ts","../../common/src/array/arrayDiff.ts","../../common/src/array/arraySame.ts","../../common/src/array/arrayUnique.ts","../../common/src/array/normalizeArray.ts","../../common/src/array/sortAlpha.ts","../../common/src/date/consts.ts","../../common/src/date/isInvalid.ts","../../common/src/date/sibling.ts","../../common/src/string/pad2.ts","../../common/src/date/timeString.ts","../../common/src/date/unix.ts","../../common/src/debugging/serializable.ts","../../common/src/debugging/tryInspect.ts","../../common/src/error/stackTrace.ts","../../common/src/error/getFrame.ts","../../common/src/error/convertUnknown.ts","../../common/src/platform/os.ts","../../common/src/error/known.ts","../../common/src/path/isAbsolute.ts","../../common/src/path/normalizePath.ts","../../common/src/platform/globalObject.ts","../../common/src/error/pretty.vscode.ts","../../common/src/error/pretty.ts","../../common/src/error-wellknown/exit.error.ts","../../common/src/function/functionName.ts","../../common/src/function/asyncCallbackList.ts","../../common/src/function/callbackList.ts","../../common/src/function/delayCallbackList.ts","../../common/src/lifecycle/event/event.ts","../../common/src/lifecycle/dispose/lifecycle.ts","../../common/src/lifecycle/dispose/disposableEvent.ts","../../common/src/lifecycle/dispose/disposedError.ts","../../../node_modules/.pnpm/@types+ms@0.7.34/node_modules/@types/ms/index.d.ts","../../../node_modules/.pnpm/@types+debug@4.1.12/node_modules/@types/debug/index.d.ts","../../common/src/lifecycle/dispose/debug.ts","../../common/src/lifecycle/dispose/lifecycle.async.ts","../../common/src/platform/globalSingleton.ts","../../common/src/platform/globalSymbol.ts","../../common/src/lifecycle/dispose/lifecycle.global.ts","../../common/src/lifecycle/dispose/lifecycle.sync.ts","../../common/src/lifecycle/dispose/bridges/rxjs.ts","../../common/src/lifecycle/event/memorized.ts","../../common/src/lifecycle/promise/cancel.ts","../../common/src/lifecycle/promise/deferredPromise.ts","../../common/src/lifecycle/promise/cancellationToken/driver.browser.ts","../../common/src/lifecycle/promise/cancellationToken/driver.common.ts","../../common/src/lifecycle/promise/cancellationToken/source.ts","../../common/src/lifecycle/timeout/interval.ts","../../common/src/lifecycle/timeout/timeoutError.ts","../../common/src/lifecycle/timeout/timeout.ts","../../common/src/log/logger.ts","../../common/src/mapSet/customSet.ts","../../common/src/mapSet/extendMap.ts","../../common/src/misc/assertNotNull.ts","../../common/src/misc/package.json.ts","../../common/src/object/definePublicConstant.ts","../../common/src/object/initOnRead.ts","../../common/src/object/objectPath.ts","../../common/src/object/objectSame.ts","../../common/src/string/castCase.ts","../../common/src/path/pathArray.ts","../../common/src/promise/awaitIterator.ts","../../common/src/promise/finishAllPromise.ts","../../common/src/promise/promiseBool.ts","../../common/src/promise/promiseCollection.ts","../../common/src/promise/timeoutPromiseCollection.ts","../../common/src/reflection/classes/hookClass.ts","../../common/src/reflection/classes/singleton.ts","../../common/src/reflection/methods/bind.ts","../../common/src/reflection/methods/initOnRead.ts","../../common/src/reflection/methods/memorize.ts","../../common/src/state/StateMachine.ts","../../common/src/string/concatType.generated.ts","../../common/src/string/escapeRegexp.ts","../../common/src/string/sizeString.ts","../../common/src/typingHelper/literal.ts","../../common/src/typingHelper/deep.partial.ts","../../common/src/typingHelper/deep.readonly.ts","../../common/src/typingHelper/deep.required.ts","../../common/src/typingHelper/deep.writable.ts","../../common/src/autoindex.ts","../../node/src/asyncLoad.ts","../../node/src/child_process/error.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/utils.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/transform/normalize.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/stdio/type.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/ipc.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/arguments/fd-options.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/arguments/specific.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/return/final-error.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/stdio/array.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/stdio/option.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/transform/object-mode.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/stdio/direction.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/return/ignore.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/arguments/encoding-option.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/return/result-stdout.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/return/result-all.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/return/result-stdio.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/return/result-ipc.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/return/result.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/verbose.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/arguments/options.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/methods/template.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/pipe.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/convert.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/subprocess/stdout.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/subprocess/stdio.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/subprocess/all.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/subprocess/subprocess.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/methods/main-async.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/methods/main-sync.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/methods/command.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/methods/script.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/types/methods/node.d.ts","../../../node_modules/.pnpm/execa@9.6.0/node_modules/execa/index.d.ts","../../node/src/child_process/execa.ts","../../node/src/cli-io/output.ts","../../node/src/child_process/lateError.ts","../../node/src/error/linux.ts","../../node-error-codes/src/nodejs-error-code.generated.ts","../../node/src/error/types.ts","../../node/src/fs/exists.ts","../../node/src/environment/getEnvironment.ts","../../node/src/environment/pathEnvironment.ts","../../node/src/environment/findBinary.ts","../../node/src/child_process/respawn.ts","../../node/src/crypto/md5.ts","../../node/src/crypto/sha256.ts","../../node/src/environment/npmConfig.ts","../../node/src/events/dumpEventEmitter.ts","../../node/src/fs/commandExists.ts","../../node/src/fs/emptyDir.ts","../../node/src/fs/ensureDir.ts","../../node/src/fs/tempFolder.ts","../../node/src/fs/weiteChanged.ts","../../node/src/lifecycle/internal-errors.ts","../../node/src/lifecycle/register.ts","../../node/src/log/terminal.ts","../../node/src/path-resolve/findUp.ts","../../node/src/path-resolve/findPackageRoot.ts","../../node/src/path-resolve/getAllUp.ts","../../node/src/path-resolve/lrelative.ts","../../node/src/path-resolve/nodeResolvePathArray.ts","../../node/src/path-resolve/resolvePath.ts","../../node/src/stream/blackHoleStream.ts","../../node/src/stream/streamPromise.ts","../../node/src/stream/collectingStream.ts","../../node/src/stream/disposableStream.ts","../../node/src/stream/drainStream.ts","../../node/src/stream/loggerStream.ts","../../node/src/autoindex.ts","../../../node_modules/.pnpm/esbuild@0.25.6/node_modules/esbuild/lib/main.d.ts","../../cli-static-generator/src/builder.ts","../src/builder.ts","../../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/source-map.d.ts","../../../node_modules/.pnpm/@types+source-map-support@0.5.10/node_modules/@types/source-map-support/index.d.ts","../../source-map-support/src/check.ts","../../source-map-support/src/index.ts","../../args/src/tools/color.ts","../../args/src/arg-parser/type.ts","../../args/src/tools/assert.ts","../../args/src/library/errors.ts","../../args/src/library/parameter.ts","../../args/src/library/token.ts","../../args/src/types.ts","../../args/src/tools/tokenize.ts","../../args/src/tools/param-desc.ts","../../args/src/library/match.ts","../../args/src/library/parameter.holder.ts","../../args/src/library/reader.cmd.ts","../../args/src/library/reader.app.ts","../../../node_modules/.pnpm/emoji-regex@10.4.0/node_modules/emoji-regex/index.d.ts","../../../standalone/cjke/src/rollup.ts","../../../node_modules/.pnpm/ansi-regex@6.1.0/node_modules/ansi-regex/index.d.ts","../../../node_modules/.pnpm/is-fullwidth-code-point@5.0.0/node_modules/is-fullwidth-code-point/index.d.ts","../../../standalone/cjke/src/shim.lib.ts","../../../standalone/cjke/src/base.ts","../../../standalone/cjke/src/combiningCharacters.ts","../../../standalone/cjke/src/firstCompleteChar.ts","../../../standalone/cjke/src/limitWidth.ts","../../../standalone/cjke/src/escapeUnicode.ts","../../../standalone/cjke/src/stringWidth.ts","../../../standalone/cjke/src/autoindex.ts","../../args/src/tools/table.ts","../../args/src/interface.ts","../../args/src/default.ts","../../logger/src/common/colors.ts","../../logger/src/common/ansi.ts","../../logger/src/common/types.ts","../../logger/src/common/debug.commands.ts","../../logger/src/common/logger.global.ts","../../logger/src/common/helpers.ts","../../logger/src/common/debug-fn.ts","../../logger/src/common/create.ts","../../logger/src/common/logger.create.ts","../../logger/src/printers/file.ts","../../logger/src/index.ts","../src/re-export.ts","../src/startup.ts","../src/index.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/utility.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/h2c-client.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/mock-call-history.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/retry-handler.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/retry-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/cache-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/util.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/eventsource.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@7.8.0/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/dom-events.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/sea.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/sqlite.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@24.0.14/node_modules/@types/node/index.d.ts"],"fileIdsList":[[248,286,330],[268,286,330],[245,248,249,254,267,286,330],[242,244,246,247,248,286,330],[245,247,248,250,286,330],[242,245,246,250,286,330],[242,244,245,247,248,250,286,330,374],[242,245,247,248,249,250,251,252,253,286,330,374],[242,245,246,247,248,250,254,286,330,374],[242,244,246,248,254,286,330,374],[286,330],[248,249,286,330],[266,286,330],[244,247,248,254,286,330],[243,247,286,330],[79,80,286,330],[79,80,81,286,330],[81,286,330],[82,163,234,235,286,330,343,344,352],[236,286,330],[241,281,282,286,330],[82,268,269,280,286,330],[82,163,234,241,268,269,280,283,286,327,330,343,344,349,352,374],[83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,118,119,120,121,122,123,124,125,126,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,286,330],[88,91,286,330],[97,286,330],[96,286,330],[99,286,330],[96,99,101,102,103,104,286,330],[107,286,330],[112,116,286,330],[112,286,330],[95,96,97,105,286,330],[96,98,111,112,114,116,117,286,330],[112,117,118,119,120,286,330],[96,111,112,114,117,286,330],[107,111,286,330],[106,112,163,286,330],[111,112,286,330],[111,129,286,330],[111,112,129,286,330],[103,111,112,122,127,128,286,330],[112,125,286,330],[111,112,122,286,330],[126,131,286,330],[92,286,330],[99,107,286,330],[84,286,330],[99,102,142,286,330],[103,107,286,330],[103,286,330],[125,126,286,330],[131,147,286,330],[149,286,330],[139,286,330],[111,286,330],[158,286,330],[234,270,272,275,276,286,330],[270,271,272,273,275,286,330],[271,272,286,330,352,374],[116,163,272,273,274,286,330,354],[272,274,275,277,286,330,354,362],[272,277,286,330,354,362],[270,271,272,274,275,276,277,278,279,286,330],[286,330,343,352,362],[163,286,330],[164,165,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,286,330],[163,165,198,286,330],[165,198,200,286,330],[199,208,286,330,331,351],[286,330,335],[163,205,207,286,330,352],[163,199,286,330,352],[163,206,286,330],[202,203,286,330],[286,330,342],[163,207,286,330,343],[286,330,344,352],[204,286,330,343,344],[163,205,286,330,343,352],[205,286,330,343,374],[163,219,286,327,330,349,352,354],[222,286,330,349,352],[163,205,286,330,352],[286,330,352],[163,286,330,351,352],[286,330,362],[229,286,330,362],[163,286,330,362],[163,241,286,330,348,354],[239,240,286,330,354],[115,286,330],[286,327,330],[286,329,330],[330],[286,330,335,365],[286,330,331,336,342,343,350,362,373],[286,330,331,332,342,350],[286,330,333,374],[286,330,334,335,343,351],[286,330,335,362,370],[286,330,336,338,342,350],[286,329,330,337],[286,330,338,339],[286,330,340,342],[286,329,330,342],[286,330,342,343,344,362,373],[286,330,342,343,344,357,362,365],[286,325,330],[286,325,330,338,342,345,350,362,373],[286,330,342,343,345,346,350,362,370,373],[286,330,345,347,362,370,373],[284,285,286,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379],[286,330,342,348],[286,330,349,373],[286,330,338,342,350,362],[286,330,351],[286,329,330,353],[286,327,328,329,330,331,332,333,334,335,336,337,338,339,340,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379],[286,330,355],[286,330,356],[286,330,342,357,358],[286,330,357,359,374,376],[286,330,342,362,363,365],[286,330,364,365],[286,330,362,363],[286,330,365],[286,330,366],[286,327,330,362,367],[286,330,342,368,369],[286,330,368,369],[286,330,335,350,362,370],[286,330,371],[286,330,350,372],[286,330,345,356,373],[286,330,335,374],[286,330,362,375],[286,330,349,376],[286,330,377],[286,330,342,344,353,362,365,373,375,376,378],[286,330,362,379],[238,286,330],[168,169,172,183,184,185,186,192,193,194,195,196,197,286,330],[166,168,169,171,178,184,286,330,351,362],[170,286,330],[170,178,185,286,330],[185,286,330],[183,185,186,192,286,330],[185,186,192,286,330],[183,185,186,286,330],[183,286,330],[170,183,185,186,192,286,330],[183,185,286,330],[168,171,174,176,185,286,330],[171,175,177,179,185,286,330],[169,171,185,286,330],[173,179,185,286,330],[171,175,177,178,185,286,330],[166,172,179,180,181,182,185,286,330,351],[168,185,286,330],[166,168,174,185,286,330],[168,173,185,286,330],[166,167,286,330,362,365],[177,185,286,330,362],[173,185,189,286,330],[176,177,185,286,330,362],[169,183,185,187,188,189,190,191,286,330,331,351,362],[166,286,330,362,365],[167,168,174,185,286,330],[171,183,185,286,330],[286,295,299,330,373],[286,295,330,362,373],[286,290,330],[286,292,295,330,373],[286,330,350,370],[286,330,380],[286,290,330,380],[286,292,295,330,350,373],[286,287,288,289,291,294,330,342,362,373],[286,295,303,330],[286,288,293,330],[286,295,319,320,330],[286,288,291,295,330,365,373,380],[286,295,330],[286,287,330],[286,290,291,292,293,294,295,296,297,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,320,321,322,323,324,330],[286,295,312,315,330,338],[286,295,303,304,305,330],[286,293,295,304,306,330],[286,294,330],[286,288,290,295,330],[286,295,299,304,306,330],[286,299,330],[286,293,295,298,330,373],[286,288,292,295,303,330],[286,295,312,330],[286,290,295,319,330,365,378,380],[260,261,262,263,264,265,286,330],[256,259,286,330],[259,260,261,286,330],[260,262,286,330],[255,286,330],[257,258,286,330]],"fileInfos":[{"version":"69684132aeb9b5642cbcd9e22dff7818ff0ee1aa831728af0ecf97d3364d5546","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"8bf8b5e44e3c9c36f98e1007e8b7018c0f38d8adc07aecef42f5200114547c70","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"936e80ad36a2ee83fc3caf008e7c4c5afe45b3cf3d5c24408f039c1d47bdc1df","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"fef8cfad2e2dc5f5b3d97a6f4f2e92848eb1b88e897bb7318cef0e2820bceaab","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"b5ce7a470bc3628408429040c4e3a53a27755022a32fd05e2cb694e7015386c7","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"4245fee526a7d1754529d19227ecbf3be066ff79ebb6a380d78e41648f2f224d","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},"0a429c468c6f27cdd67775b8ce96e64293d68ac3fff09084edef011f66b4b51d","df46880e2f4caa21ed50f21288f1a4d1adb6e3bb0a829d18f8d55586b9814f96","fa6dacc9cec41cb69dbeaf235fcfdf8c413fdbfd62d2f7d5e41ba8f8a8c7074e","292e68d7c4f64a1f9bfbc3fac6d95070254b8c93236773ca484a5ca88c42ca64","f5428bd7675d59a6f11ea2b03e12318e62cdac0815323dbd2294a8315855ce4e","40cfe0a059e731af0865ae0249e4c201666cf561ca80c9e45baa7304f2887c0a","10213a506b2c97a5ccf70c0e71b719d70cdb90ec5b8b56397d55d578382b3faa","b863546f34db4d41099a4135841f9986040f8139d125f2af12376c180bbfa8be","bfeeb25b6aaa6320709e3e04c929f4fa455104973adb2205b9be08e7185a532c","3295fef31e2566bf5370e37b7c161ff71e46553947af4add368d9f9d1154041b","8e2eb0b5ea378976fd0528974ab333587d1deefeb3910b5dc762a9cbaca5abb2","7549793f85b76b21d6209e386daee510cdb465416111a2a727490485b6a16ec2","0b57a60bb35ffa4d370535cc5a89940bd09b14d5341699b83717b4d5eae17744","591b6ce0e7ed4c12725708a499ba92497e07bff2700e3d75e3bcbc2b3fcebb49","5c289f65a31a292201d216d28d4e7b2551deb316f4c8c77a06fc22eda8c43220","f80a4bd8c08aafa7ca09eee252452c153c246d910d518e023ea5752a11d56f3b","c735d6e0639feff91a7a96fa5c8b834ca746c97363b3d0cb730105e56dddef8e","b5dea65420a54a6d56ca87bb238b9fffc4563fad73d11aa86be49b9df00ecb31","cc34fdb851459eefe0cac96c05062d5ccd8ceba51c9e92682d68c6e158652d3d","6d3483ef561cdbdd4c4de53c944868a25a0ce119c33495cfe3409fce4f2adfaf","80d2660df59644c8505bdedd667b4231e04923fe87996391d354afa918c612c1","1ca719f52509c2111c6702ec7b279ac6c5d997c216b8042b43f62ded0faca68e","e5c218911ade23dbf17dd57284b93a463b688f984e2dc0d73359b020951eb762","ae4c68684119eec1ae612970758c4e70a77ac9afbd68ea6a740323e45f4d76fe","7658fff1a0c180823b08d5ba5d0195528ea1dc54f4e9c838e9d33706cdc4d4c2","0cbef23398e80d9642bc1d87cf9e25a329a1ca5947d2e6b04ab714e2e1b133ae","a44da47bfc7299f1e3c44f84b00ee13c8476e0aa1edd945720e717bc3e96b337","eb2ccc04f4d654a7b5b19c65af2bdabca1b3970deb193791a23d6438ae2c26e6","94c543118275c0816e2d52b015e60a5961b43045de724ab039faee8cd20f19c4","71787ab10cf14bd3c810f117d5ece77c3be990e98f7d1f94464fee91fead4312","43d55eaed5c506b3184a56d4a39aac483f897605473c588235605df4baa05f7e","6af193aa61cd219f9f496e7dc6f312e08ae9058f929c71f72e71a04e6eae8745","242483ed2d31a7de60019acf223000c7612f8d0ded3150cd0eee3e01cd6cfe6a","643ed6c5da60323fa354350a43d982422709a74dd01b256087216521af0aa38d","787ea80ffc212a96d2681d28b1eec41027a2fba5f0f2f7ff0d1b495483fed0a9","9163644558baa35a579018333e6ab4214ba0b83509879721167a643088a3dfc1",{"version":"68cc8d6fcc2f270d7108f02f3ebc59480a54615be3e09a47e14527f349e9d53e","impliedFormat":1},{"version":"3eb11dbf3489064a47a2e1cf9d261b1f100ef0b3b50ffca6c44dd99d6dd81ac1","impliedFormat":1},"0fa2f7240f8ec82d29f2e5bf4f20bb04f2b73b89cb6a572a73b82f35915b76ac","c867ab0cdc87bc3b3f0167afa1e6684ac80b37a9113e7cf2186829c486423a3a","ecdf53cb50cae3f049a5da04e556f16c3950d7ba378df1fe9320cb8d21ea7f0c","18c026844461d6280877cb19a1d9b926fc3f48235e42e162fe1f24ac2d475693","b6cb2750fa2dbd76443f05517cbb6c2fbe90dcd602b8135d05f147088f3e6fea","2e9bb093b2840fc11e4872d9e0ab0087bace78d23d3d5982e1a2c36d91eb47a9","46b0e83cfb8a678d9e5155cacabb6bed308e1701a7d74f7bab21714ab38581f6","423a1e12b703a405db08f75779df8165cac89ceaa175adadcb0d795456d1f928","2bf88a0cb29e3524004ad25dfcd119b18470171de25df2fb372ebaa1648f5dfd","a5512e9524a7cfea65ee04bcca477ca9c2bb68ec8c59ddf30c24a9f21a611763","4a9a6face5536ca83bac3a98341986234ea5b17b016d0c660c883493c26b199a","cbe0179efa3b92e7825079cb0b5e2c0edd0047df71dfb785bde5211f5dc524d1","276d83442b69804ee914da67df420fa87c24d1bc5ff698e99bd88008e1275aa2","b6ea8aa66720c93a7a27bee92efe5698d7ebea54a116ca4c4dca57df874c4c76","372bf8f67f2eba718c3d88d6949f5129363236326766e343912571583d02327e","dc9dc1857f9dd6dda702503ab54d786c3bdd4ae796e408e7a6ff155c535cbb42","0cca21fd56b1f34311027207dbad46cd74c105f736d36e821e47c975aab49f2a","df5ae079e693f602231cc0ccc35535bc5077b8e3e2355c7289d76481aa5db3a2","49e22645ef8123a66d9d5d5afc46de2de5afd6d1866c2a342924b6fd2b6ae225","b34c4e3b5d4b707afe82cc5d0808437b263b92637c290240bcce8eed5d86edce","076c943b3e7967c98005ce9c89cd15890a536eefbd7c54a1ef32149681c571a9","f017c235d84f8316bbca91eaffa8fed3638ae9d5d867f58f95a9234f1923f51d","06c003f1654bb8c87258f4991d9d881429a6df3ba21f181907f6cd6b48f3e1c7","6c18ebf93a26070b289e3bae487baf5e7983b3e4ba723bc1dd27a34d9a58785b","b2eab7a68905d52576eaa840e1840589155a77c193de36f9b03f1da975db5f9a","7993cf2f45b56d3e178ff2b52af371b339d1412ade99e93beeb07509239b486b","51142022fd14024c0c4a2c6a49b6d5980801ebace066f602a8d05906c5d096e6","7cb445cc6efd6ed55e823ca23b45914c92c38aa571760d52e528fd7361aa7c92","d8dad1596ffe0215eeda7ed8325eabd70a5abb5f013adafbfee9e6caaedca3d3","980faa9a6303f92daff3ae18c19fefc3a19447fe204d0c9b0d7292ec5e494bb6","210745faa2ec10a62c21241f57103dbeedc7d236c3dab45a838087b4db907c96","29a5f52c3c6710ff7b92d2ec7d213d2ae1d3c35435b249bf735af3b6f0fd6424","86bed3d53b7c1126b5259c8cefcda53173f34302b80f8aede891d0171db686e0","28b4bf218ad51d147b1847076ad36b32ac3b3c16a78876d649cf051686f013c1","453cbcc32afebe49e8756ba16798dbc7b3b64588427a73d0d36c3fde36dc7b52","60924c260abbb9ae9c2789441a5b0c3ad1d76c2aa46ff07fe95d3d4e6dd0ac70","1ca256b84d6cd26d601a6ddde9dcdef83b17464bc75878c5325ca2714cdb07aa","54ee71db5f834e528a22a2213d21ad037810696eeae82f8322fc30bb0af52128","5d1da0c5e949e39ec2e1d22f9213617d48e4a2c1176e350bb9458ba022b7b633","3a5a47113b84958bd33a52726402541558713bda67a222bbf2279f050d3283d2","a583043732c3dd1f4e59382390b10e7d9ab5612720878185ff751b76a41f337d","f0da9c416585c1be6f42cc4d437d8e62fcae4c0b2c7db9c5ddb96d76b1d61cf1","fd7ce5788858b0fb8d7d6fd1c9713b8da6f7f0ff11b4d9657107014b37ae0ee4","e38fb3c5cfd961427d4e1172dc633564dea5f3b4d2fb407bc6584d35d4b7d716","31f5750f8af776723b3a7a7c5df96d3600e5ac38556a7ee035a5a76278d52295","50a56aca6e1b5541d87b203d5deb52dfd00e4abfe3ace1d21763586f09b9a0e5","85846a03954c7ad4aeb0b408e54e9e97a57047a6e9239ae104803ba454d13999","b891755cc2eab9f878513cba32fcedbd2a40874f0f7a55155d7998d09476ba30","d0c22696328e430365d0cff1499843ab280e6ff48c6eb9890ca8125b3453b659",{"version":"6b1d838981b5606f4c958d98800e318314e71f0dd1d087196350d189362b69c9","impliedFormat":99},{"version":"eecab4c87fadc3a8c5fa35f659a4f5c480208ab80f0f36d9761c2bb427908fcb","impliedFormat":99},{"version":"b8dd1d513057d0320e4d5473be58c7161fb50ca2d5ad5c0e6e81b417aad36f61","impliedFormat":99},{"version":"73465f19e61e23f551639909f94147b4211e1331d3699bce6fcc972203423b20","impliedFormat":99},{"version":"929746f886d166cee5d20d109e816f527c709a00cc90c8fd7c52c66e72e31805","impliedFormat":99},{"version":"9ffa740c1a384e68eca1c3e530ee6911ed42fbc0010570d2effb375eaaa4dceb","impliedFormat":99},{"version":"6f2cc41dae1386fc57a4980d3aba6115e879479821ea78a2d4e3a3c2fd5cb786","impliedFormat":99},{"version":"bd236ec30223eaced7fed2c84ffc5933ad23061314c4b9874d4d7c88f2d841f4","impliedFormat":99},{"version":"97adcdc3cd8c7fbcaf7e1f60a4ea05972da21b0e0b1ef71ab96c20c9c65ffe88","impliedFormat":99},{"version":"3dcf393cb7c87561367ae539f1462b15b48af0bac86cb6892bbf6c617e9e1872","impliedFormat":99},{"version":"86413ef25968db827f5d8ca68a3ae8a7fd91f8cbe4f654053ff32454b3f6e2e8","impliedFormat":99},{"version":"3ef8337f4df30d8d6978651ae95632bb7dd229ac4dfa7006c2aa4e2006ea6453","impliedFormat":99},{"version":"09e0d46e3d2fcc6c5d7a2afbd1a22809dafd50f1f3f8b1d2e327ed21c7c6fa5f","impliedFormat":99},{"version":"ac5b06a39925ae9c5344c84e2e24d7b61c22b4176fcbb96de5f8e45986f2331e","impliedFormat":99},{"version":"d829826b1dc3a0d84174e03b009afe4677e36a84904863f6318b7243c3644b44","impliedFormat":99},{"version":"c61e4cede8cf73fb4dbff3cad8fd57902eab1ebc62f20d9aeb105c3257f5a906","impliedFormat":99},{"version":"ebdf90aea74d99b9fc1a639433c3458604b5db3571b7954b8317dd1a1fa71bdd","impliedFormat":99},{"version":"9c1de355ef73132bba24da0e616cb67867e4b7f85689bd95b9638395cbb81a6d","impliedFormat":99},{"version":"46c4ec0878833d2ae63e24e2389a8145babdcab72297e18581af97d7e62c0511","impliedFormat":99},{"version":"df92b0948e17e54e60e2b7bbc525d06b35d404a1a3c1ea48e4071262002f7d3d","impliedFormat":99},{"version":"7c9e187838a0e665cac719dc03b215dfc29da9caa30af79a78531e7256a1d6d2","impliedFormat":99},{"version":"1eb292fabe901c9fa80732c87cf7b42b5f790f5af48bc36d8371272fa80427f2","impliedFormat":99},{"version":"c34decddf18283ad1811981c06a07208aaef29010c55a7b810ba5c96e3d89a6b","impliedFormat":99},{"version":"694adea51eea8d8981ce771b52c5e5a2d524886e6397fc9431424325ecf42eb1","impliedFormat":99},{"version":"15036d0d6ec1d21354542a670696edea4a344baeed6718cb553aa8fe619e8069","impliedFormat":99},{"version":"3c6ce563b69aa0a196f2373c5ee96472ca1aeb232a9611981bdff9b3bc48e02a","impliedFormat":99},{"version":"45a6de331708ab2a4f98fbb5d68d0a91b887802d277b37573a26ecb0036f1e7e","impliedFormat":99},{"version":"8743f6147ba8d5e9cff0076f0a016d183df75a0796c25e096ee3fa19d06acfc5","impliedFormat":99},{"version":"812651dab7b19c7fe9cfea34fdb7a059093aff0c1cfa5dbfe979b57e7d7627ab","impliedFormat":99},{"version":"e329923a93fce350f89d04facf9053fa20b789cae18fe3340527ccd9a61275ed","impliedFormat":99},{"version":"a008ee16379994ecad644e0e543bcd0ec790fc51e9ee2632008f241872cbcfce","impliedFormat":99},{"version":"3cf28c9c5653662986136d2ffb17e5e1ea6d933aaee20ec64de184b19284ffda","impliedFormat":99},{"version":"3d25e4112b03e9a3549ab85ff56e3f2d7264f74dcf5308549c81609c31ab2aa3","impliedFormat":99},"722d17cad827e8194ed49e4820e8a654353334b68367d4bfd69912e465703d48","552028463c88134fe4ad514b260a3ec5cd96f490cc239173fe6eb668cc2dd63b","267c63f29ec39a3ef631d709958e0c854b0fdb203b1c1f6b633ab4a23150bb91","2d1d880fa5ea0398680f8a002232ef43c8ecb3a04892370f8df5a95faf2437b0","9e77c698823ba9be908f616f94820014d6f24ead7f35d7f18eee8913ffa844d0","550ffb5ed3ca0bcb9137e836a18cdc7e050704864ef24dc5c7c6ae4628a44184","006238223a4cc7eb8e32f349639464f2e4b7f3965d11fd2bb85c013a33de4dea","c68f8bb16d3064dcb5e79eb8df7f176744d129761889e4fdef18937ca1af9b0d","a873284b6548d40a62473b6c6ad57a24077d4d4642f06132fcda19c58b29b52d","0d56b1db228949d455cc934cb19e5fd3b251dfa297a15c7ee914167488646199","c9d63c2e31f805caea52d5884048fe52a2a37fe3e45bdd830f49aad9e85fe0e6","5ace58a81e5a620c00a7ec7940f305fd58d9f01095359709d34ae3fd08165f18","83f974e0270636b8fbeb668d52cb987d21975f59f21d399a8d847414e4137ff9","0ceb7f285324cd764ac88510d33e42a2576fd488bfe2acc2728e46de6effb769","628fc0bf3a6dcfdc0ace60decdf17ec179167b17a658fa5ad97e6c57c4663d30","9fd5daea58b21e82973d6d4cda5852eae9ff843f799a8db68a65d139eb46a4fe","73ba86e48859aba33a1f13c154617403484b5b412b5fd66ed224e8739a3d8fb1","4c87a6c0cb4c71e2a5208e5e0d9054bbad8af821054562eca9081591c6680882","36351049bbb1edb84da624b1cc243df9b51ff2403266e3716b906c04080de9b1","f7455c5a0f07164c81a6c27f6f7911d919d0adf9c28e0d2fedc994fd0e39afb0","d2e80b7942fbffc8caf005076aff49e404eb3b0d3de85a021bf23d4a6076461f","b8161eba6bbe1658bcb642c37e1ae85209237e01d8606ca7d7d7978ca061f05c","b023e421a24c679e578ef036d1c2143faec05b0d60b9aabcc57c726bec27a52b","6488745dcde9bc0ea537e43e43c6963f1b5d82e0b97d6e14e58e7d17f8227d53","ca2d9f13277d6a5c34306fb1555d2aae57d0fb1d93a9b7f6acf9501ecac50d43","0a66e78a22eb8e1b50c3b44c2dea6012ccf09545fa523e0bb37bb4413a76553a","6c8edd2ca8c02135c561fff39418227ab71cf63d0884b09b2af6e46c04b03f7a","59c73585773cf81a610916ae3fe5afb8f321a1e983763b7afd72cbe80b70cdc6","1b2b45ca862b74f5a502794636b550f18e3f2ba1e83222cecc483b291d024bca","bc5977014571aaffc0d74da918281340e1c047467f5349f047ba31a99ac0d4e2","d137589d63a4b44787e768f26cfd5ed3849e3f2ec8b7687187d30e1ba5b5005c","fe69c6c11b13fc283463b7cdc173041c87c43986084477c3eba1fe3be8a9da94","53db78721d514977632c2d54043a08500c99cfba2efe1ec2d07814b68497038c","5a075188df9bfd44b3916a55edef1b03bbbe69b3dcf020ed249a378fd601912d","524228796d95a52f6fb04fa8c267693c73020a8834edac5b6ad8cf75d5372669","88e432990a51a195f97c381aca024c07472c0a09c385e38c2df076b82f41a05a",{"version":"0a8c470fb49dd9ed9e858b4cba0eb147bf51410a61b99fa28bbba0691839e317","affectsGlobalScope":true,"impliedFormat":1},"a4514626eed2cd4edfd2dcaa070f6f2453d80474f28a22b2b76084f94bef27fa","ca2a3664738d802184c859d9ddbde6de673383ad49177e52a7f93f7f9af263b8",{"version":"2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579","impliedFormat":1},{"version":"f5858a3e4621139b8a375fb79a482c633d5f31d744f3674e3d51a4ae291c8f2b","impliedFormat":1},"56989bf9d80e2986f1cae352ad5b8be7df3c050463e3115b028fd5dc625b38d8","e654c90c1893d6fe7ad7daebc7c4bd891bd18194474cfba5b31b4a5c3ae71d3e","995ac7b047aba9bd8d03f97bbd1de2eb8df1e691ecc257e56fbea39038cb9dbf","a8b25be9a512fdd2f99fd8a4391ec9522e45770c40c2e8b3e620453f7ce91639","55acaafeda628a856f4f39da1d9b2b063b80c50c6093636286069c2919efbb07","921f7d745f2ca7042fdcd6cba7fb8a25d85344b046f96e76266ac0eaff416557","1ee3a5f420245824aace88f5fcf26a456cdfa9ca29b117c2d3b21ee6ef92799b","32ddf539c5f61ca04e13dd954508e263e13c848d37444a4cc49cf4de05b8b58b","e0a5c918d8dea70a3c984227b38f30250a5110f59d815b07c9d224e7ceae6647","ac34ac6fa17d6582b37d79eb0108227a74452b0df34a7d5b840f3db750b864a2","6e3ecec7f7987b771ef28b70bf212e1250d516c3254a2a2f43042320fe1dde02","aa569b5019f80327faeab79603fd6525a70c4a1ee27dfa5263f3674b84aea9fe","d5af7714649237544cb30e8f0977cb477d916ae4cdc5fd0609c0b45b89006fb1","0ab3a85e26e8ef9f7fdf987e92dd1c4a7321bf9dccc350e94d0f39cace940a99","845c76f3f87604ef57aeb42c502e15f222552c49b88b0c5b52e1fe1c44e50f3f",{"version":"d73a4c0a98afa331568302e1ea8db954b11e9a13fb9d1b74e2a3b131076bee30","impliedFormat":1},"76f6a0e0e15bcd63d424097fbd7137810b7cf4ef5f191e4e599329b9b68c32cc",{"version":"5945276e86aeb3f247c3c19f586f2a7c30ef04f0a53c161c853080157186edb5","impliedFormat":99},{"version":"9a3e6bdffd8335b7d29c1d578ef7411703c57d07aff959bda92b27110f868532","impliedFormat":99},"3d138830576befdd401ad0b61e1d1e53a0cb1c024c7b89bdb49ed5d2d9f46d90","f9447b3266a3dec824df2ddc69a1fff65a410d9f70073aba5341dee47372e3f2","1f478b7ca5f82ce7a010881962664d6fbd30f9ec46e7849ba4b90c4c2dd8ddcd","5e04d975229bd16c8839dfcefae1c50e79f174280e86809c51917e754599dd95","27e775dc3349fd713ca73467db0f9912232a5487c32cdf98884277d63bf38dc0","ec938c3ecbbb66840deb4545dac8aed93798f907ef10261789d372c25a85e783","16fe0a3a16c5c2244bac410ab029520ebd9d87ed9dca213717904c81998b1f0b","3db1d40a13e3a303fbd1bcc5128b6dc844b823084d7ce70b5483725dfc3a8f25","d03f5021b44dd89376db64dd8720cd8c941d230267e1d7db10dc8de1f88a91ea","58630a12d4aa74a3120ca5d79b932d6140a115e22cbce072dc030e0cba7a74e7","6bc21886053c7bbb2f69416c01d31ba022d0316040656d4ce3b01b8bbda8e651","fd1b6609eb3fffb00fa1488435c857314684b2aa7ea0dba4510fe8b1b6b88f7c","15ac2e85f62840b41154d06c048172f7770bdd54bf10e25278ee4108d0bce42c","dcee92fa27e5e6766ea9c0218e87bd085a65d1639446527de2632c355f01e238","55353d1df5ba0cf7be266bd4106048e1081ec12ba74614a9ae92dac09de18aa3","79e2ff8c197747f565c07490ab580cf7194023a47b292b7ab42992bbf9291d24","b10ce47a3ae0aee25da2933a3fcf2a2eab250d697733a288ae5ef1fff1f3fcc0","7c1ee8eca48fc6041a31cf0b156abcae88d249df70194ebdb34a4abe02228665","3e754c6b4e004415b27c4c128e0558b91ed2ce2a2c482614337fc143904c2363","ad8232e3b6971304a82e4f185d329ae176ddf9246030740e98e3ca3505182380","63b3228290785b0823baa8a4a13aca94b7a823310d05834340dca18c37313133","efb1df8b53bd7fd1d2ea7e168348ea5f0b6012e1afa9b93eefdb1e7c121fd110","5099890e3c29a3af9a3668f7801f0cf081159550683b86b6ef654c99620851fb",{"version":"bae85761fd721e1961cd5b6d7f34bec5b4a7f8853f05f84f9a226046c3c6036c","signature":"a5836c71ebe74f9be005efba433bcac25970138be7d7db6b68eed7758ca4c8a7"},{"version":"285472ac6e54e66da359228534f436071e7d6643c9e7219d81bce4291e350aed","signature":"73dec5d6046855138b5cce2e79f385e0a01c1e08d8459ff8c84797dc7018c308"},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"c0671b50bb99cc7ad46e9c68fa0e7f15ba4bc898b59c31a17ea4611fab5095da","affectsGlobalScope":true,"impliedFormat":1},{"version":"d802f0e6b5188646d307f070d83512e8eb94651858de8a82d1e47f60fb6da4e2","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdcf9ea426ad970f96ac930cd176d5c69c6c24eebd9fc580e1572d6c6a88f62c","impliedFormat":1},{"version":"23cd712e2ce083d68afe69224587438e5914b457b8acf87073c22494d706a3d0","impliedFormat":1},{"version":"487b694c3de27ddf4ad107d4007ad304d29effccf9800c8ae23c2093638d906a","impliedFormat":1},{"version":"e525f9e67f5ddba7b5548430211cae2479070b70ef1fd93550c96c10529457bd","impliedFormat":1},{"version":"ccf4552357ce3c159ef75f0f0114e80401702228f1898bdc9402214c9499e8c0","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"17fe9131bec653b07b0a1a8b99a830216e3e43fe0ea2605be318dc31777c8bbf","impliedFormat":1},{"version":"3c8e93af4d6ce21eb4c8d005ad6dc02e7b5e6781f429d52a35290210f495a674","impliedFormat":1},{"version":"2c9875466123715464539bfd69bcaccb8ff6f3e217809428e0d7bd6323416d01","impliedFormat":1},{"version":"ea6bc8de8b59f90a7a3960005fd01988f98fd0784e14bc6922dde2e93305ec7d","impliedFormat":1},{"version":"36107995674b29284a115e21a0618c4c2751b32a8766dd4cb3ba740308b16d59","impliedFormat":1},{"version":"914a0ae30d96d71915fc519ccb4efbf2b62c0ddfb3a3fc6129151076bc01dc60","impliedFormat":1},{"version":"2472ef4c28971272a897fdb85d4155df022e1f5d9a474a526b8fc2ef598af94e","impliedFormat":1},{"version":"6c8e442ba33b07892169a14f7757321e49ab0f1032d676d321a1fdab8a67d40c","impliedFormat":1},{"version":"b41767d372275c154c7ea6c9d5449d9a741b8ce080f640155cc88ba1763e35b3","impliedFormat":1},{"version":"1cd673d367293fc5cb31cd7bf03d598eb368e4f31f39cf2b908abbaf120ab85a","impliedFormat":1},{"version":"19851a6596401ca52d42117108d35e87230fc21593df5c4d3da7108526b6111c","impliedFormat":1},{"version":"3825bf209f1662dfd039010a27747b73d0ef379f79970b1d05601ec8e8a4249f","impliedFormat":1},{"version":"0b6e25234b4eec6ed96ab138d96eb70b135690d7dd01f3dd8a8ab291c35a683a","impliedFormat":1},{"version":"40bfc70953be2617dc71979c14e9e99c5e65c940a4f1c9759ddb90b0f8ff6b1a","impliedFormat":1},{"version":"da52342062e70c77213e45107921100ba9f9b3a30dd019444cf349e5fb3470c4","impliedFormat":1},{"version":"e9ace91946385d29192766bf783b8460c7dbcbfc63284aa3c9cae6de5155c8bc","impliedFormat":1},{"version":"40b463c6766ca1b689bfcc46d26b5e295954f32ad43e37ee6953c0a677e4ae2b","impliedFormat":1},{"version":"561c60d8bfe0fec2c08827d09ff039eca0c1f9b50ef231025e5a549655ed0298","impliedFormat":1},{"version":"1e30c045732e7db8f7a82cf90b516ebe693d2f499ce2250a977ec0d12e44a529","impliedFormat":1},{"version":"84b736594d8760f43400202859cda55607663090a43445a078963031d47e25e7","impliedFormat":1},{"version":"499e5b055a5aba1e1998f7311a6c441a369831c70905cc565ceac93c28083d53","impliedFormat":1},{"version":"54c3e2371e3d016469ad959697fd257e5621e16296fa67082c2575d0bf8eced0","impliedFormat":1},{"version":"beb8233b2c220cfa0feea31fbe9218d89fa02faa81ef744be8dce5acb89bb1fd","impliedFormat":1},{"version":"78b29846349d4dfdd88bd6650cc5d2baaa67f2e89dc8a80c8e26ef7995386583","impliedFormat":1},{"version":"5d0375ca7310efb77e3ef18d068d53784faf62705e0ad04569597ae0e755c401","impliedFormat":1},{"version":"59af37caec41ecf7b2e76059c9672a49e682c1a2aa6f9d7dc78878f53aa284d6","impliedFormat":1},{"version":"addf417b9eb3f938fddf8d81e96393a165e4be0d4a8b6402292f9c634b1cb00d","impliedFormat":1},{"version":"e38d4fdf79e1eadd92ed7844c331dbaa40f29f21541cfee4e1acff4db09cda33","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"7c10a32ae6f3962672e6869ee2c794e8055d8225ef35c91c0228e354b4e5d2d3","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"99f569b42ea7e7c5fe404b2848c0893f3e1a56e0547c1cd0f74d5dbb9a9de27e","impliedFormat":1},{"version":"f4b4faedc57701ae727d78ba4a83e466a6e3bdcbe40efbf913b17e860642897c","affectsGlobalScope":true,"impliedFormat":1},{"version":"bbcfd9cd76d92c3ee70475270156755346c9086391e1b9cb643d072e0cf576b8","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"72c1f5e0a28e473026074817561d1bc9647909cf253c8d56c41d1df8d95b85f7","impliedFormat":1},{"version":"003ec918ec442c3a4db2c36dc0c9c766977ea1c8bcc1ca7c2085868727c3d3f6","affectsGlobalScope":true,"impliedFormat":1},{"version":"938f94db8400d0b479626b9006245a833d50ce8337f391085fad4af540279567","impliedFormat":1},{"version":"c4e8e8031808b158cfb5ac5c4b38d4a26659aec4b57b6a7e2ba0a141439c208c","impliedFormat":1},{"version":"2c91d8366ff2506296191c26fd97cc1990bab3ee22576275d28b654a21261a44","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"12fb9c13f24845000d7bd9660d11587e27ef967cbd64bd9df19ae3e6aa9b52d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"289e9894a4668c61b5ffed09e196c1f0c2f87ca81efcaebdf6357cfb198dac14","impliedFormat":1},{"version":"25a1105595236f09f5bce42398be9f9ededc8d538c258579ab662d509aa3b98e","impliedFormat":1},{"version":"5078cd62dbdf91ae8b1dc90b1384dec71a9c0932d62bdafb1a811d2a8e26bef2","impliedFormat":1},{"version":"a2e2bbde231b65c53c764c12313897ffdfb6c49183dd31823ee2405f2f7b5378","impliedFormat":1},{"version":"ad1cc0ed328f3f708771272021be61ab146b32ecf2b78f3224959ff1e2cd2a5c","impliedFormat":1},{"version":"71450bbc2d82821d24ca05699a533e72758964e9852062c53b30f31c36978ab8","affectsGlobalScope":true,"impliedFormat":1},{"version":"62f572306e0b173cc5dfc4c583471151f16ef3779cf27ab96922c92ec82a3bc8","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f32444438ecb1fa4519f6ec3977d69ce0e3acfa18b803e5cd725c204501f350","impliedFormat":1},{"version":"0ab3c844f1eb5a1d94c90edc346a25eb9d3943af7a7812f061bf2d627d8afac0","impliedFormat":1},{"version":"b0a84d9348601dbc217017c0721d6064c3b1af9b392663348ba146fdae0c7afd","impliedFormat":1},{"version":"161f09445a8b4ba07f62ae54b27054e4234e7957062e34c6362300726dabd315","impliedFormat":1},{"version":"77fced47f495f4ff29bb49c52c605c5e73cd9b47d50080133783032769a9d8a6","impliedFormat":1},{"version":"e6057f9e7b0c64d4527afeeada89f313f96a53291705f069a9193c18880578cb","impliedFormat":1},{"version":"34ecb9596317c44dab586118fb62c1565d3dad98d201cd77f3e6b0dde453339c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0f5cda0282e1d18198e2887387eb2f026372ebc4e11c4e4516fef8a19ee4d514","impliedFormat":1},{"version":"e99b0e71f07128fc32583e88ccd509a1aaa9524c290efb2f48c22f9bf8ba83b1","impliedFormat":1},{"version":"76957a6d92b94b9e2852cf527fea32ad2dc0ef50f67fe2b14bd027c9ceef2d86","impliedFormat":1},{"version":"237581f5ec4620a17e791d3bb79bad3af01e27a274dbee875ac9b0721a4fe97d","affectsGlobalScope":true,"impliedFormat":1},{"version":"a8a99a5e6ed33c4a951b67cc1fd5b64fd6ad719f5747845c165ca12f6c21ba16","affectsGlobalScope":true,"impliedFormat":1},{"version":"a58a15da4c5ba3df60c910a043281256fa52d36a0fcdef9b9100c646282e88dd","impliedFormat":1},{"version":"b36beffbf8acdc3ebc58c8bb4b75574b31a2169869c70fc03f82895b93950a12","impliedFormat":1},{"version":"de263f0089aefbfd73c89562fb7254a7468b1f33b61839aafc3f035d60766cb4","impliedFormat":1},{"version":"70b57b5529051497e9f6482b76d91c0dcbb103d9ead8a0549f5bab8f65e5d031","impliedFormat":1},{"version":"e6d81b1f7ab11dc1b1ad7ad29fcfad6904419b36baf55ed5e80df48d56ac3aff","impliedFormat":1},{"version":"1013eb2e2547ad8c100aca52ef9df8c3f209edee32bb387121bb3227f7c00088","impliedFormat":1},{"version":"b6b8e3736383a1d27e2592c484a940eeb37ec4808ba9e74dd57679b2453b5865","impliedFormat":1},{"version":"d6f36b683c59ac0d68a1d5ee906e578e2f5e9a285bca80ff95ce61cdc9ddcdeb","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"125d792ec6c0c0f657d758055c494301cc5fdb327d9d9d5960b3f129aff76093","impliedFormat":1},{"version":"12aad38de6f0594dc21efa78a2c1f67bf6a7ef5a389e05417fe9945284450908","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea713aa14a670b1ea0fbaaca4fd204e645f71ca7653a834a8ec07ee889c45de6","impliedFormat":1},{"version":"b338a6e6c1d456e65a6ea78da283e3077fe8edf7202ae10490abbba5b952b05e","impliedFormat":1},{"version":"2918b7c516051c30186a1055ebcdb3580522be7190f8a2fff4100ea714c7c366","affectsGlobalScope":true,"impliedFormat":1},{"version":"ae86f30d5d10e4f75ce8dcb6e1bd3a12ecec3d071a21e8f462c5c85c678efb41","impliedFormat":1},{"version":"982efeb2573605d4e6d5df4dc7e40846bda8b9e678e058fc99522ab6165c479e","impliedFormat":1},{"version":"e03460fe72b259f6d25ad029f085e4bedc3f90477da4401d8fbc1efa9793230e","impliedFormat":1},{"version":"4286a3a6619514fca656089aee160bb6f2e77f4dd53dc5a96b26a0b4fc778055","impliedFormat":1},{"version":"d67fc92a91171632fc74f413ce42ff1aa7fbcc5a85b127101f7ec446d2039a1f","affectsGlobalScope":true,"impliedFormat":1},{"version":"d40e4631100dbc067268bce96b07d7aff7f28a541b1bfb7ef791c64a696b3d33","affectsGlobalScope":true,"impliedFormat":1},{"version":"784490137935e1e38c49b9289110e74a1622baf8a8907888dcbe9e476d7c5e44","impliedFormat":1},{"version":"42180b657831d1b8fead051698618b31da623fb71ff37f002cb9d932cfa775f1","impliedFormat":1},{"version":"4f98d6fb4fe7cbeaa04635c6eaa119d966285d4d39f0eb55b2654187b0b27446","impliedFormat":1},{"version":"e4c653466d0497d87fa9ffd00e59a95f33bc1c1722c3f5c84dab2e950c18da70","affectsGlobalScope":true,"impliedFormat":1},{"version":"e6dcc3b933e864e91d4bea94274ad69854d5d2a1311a4b0e20408a57af19e95d","impliedFormat":1},{"version":"a51f786b9f3c297668f8f322a6c58f85d84948ef69ade32069d5d63ec917221c","impliedFormat":1}],"root":[237,[281,283]],"options":{"allowImportingTsExtensions":false,"allowJs":false,"allowSyntheticDefaultImports":true,"allowUmdGlobalAccess":false,"allowUnreachableCode":false,"allowUnusedLabels":false,"alwaysStrict":true,"assumeChangesOnlyAffectDirectDependencies":false,"checkJs":false,"composite":true,"declaration":true,"declarationMap":true,"downlevelIteration":true,"emitBOM":false,"emitDeclarationOnly":false,"emitDecoratorMetadata":false,"esModuleInterop":true,"exactOptionalPropertyTypes":false,"experimentalDecorators":false,"importHelpers":true,"inlineSourceMap":false,"inlineSources":false,"jsx":4,"jsxImportSource":"react","module":99,"newLine":1,"noEmitHelpers":false,"noEmitOnError":false,"noFallthroughCasesInSwitch":true,"noImplicitAny":true,"noImplicitOverride":true,"noImplicitReturns":true,"noImplicitThis":true,"noPropertyAccessFromIndexSignature":false,"noStrictGenericChecks":false,"noUncheckedIndexedAccess":false,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","preserveConstEnums":true,"removeComments":false,"rootDir":"../src","sourceMap":true,"strict":true,"strictBindCallApply":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":true,"stripInternal":false,"target":99,"useDefineForClassFields":true,"useUnknownInCatchVariables":true,"verbatimModuleSyntax":false},"referencedMap":[[243,1],[269,2],[268,3],[245,4],[251,5],[252,6],[246,7],[254,8],[253,9],[247,10],[244,11],[242,11],[250,12],[267,13],[249,14],[248,15],[81,16],[82,17],[79,18],[80,18],[236,19],[237,20],[283,21],[281,22],[282,23],[83,11],[84,11],[85,11],[86,11],[87,11],[163,24],[88,11],[89,11],[90,11],[92,25],[93,11],[94,11],[95,11],[106,11],[98,26],[97,27],[100,28],[105,29],[104,11],[96,11],[108,30],[109,30],[110,30],[107,11],[123,11],[117,31],[113,32],[114,33],[118,34],[121,35],[122,36],[112,37],[111,38],[124,39],[125,11],[127,40],[128,41],[129,42],[126,43],[130,44],[132,45],[131,46],[133,47],[134,11],[135,11],[136,11],[137,11],[138,11],[139,11],[140,11],[141,48],[101,11],[102,11],[143,49],[103,11],[119,50],[120,51],[99,11],[144,11],[145,11],[146,11],[147,52],[148,53],[149,11],[150,54],[151,11],[152,55],[153,11],[154,56],[142,11],[155,11],[156,11],[91,11],[157,11],[159,57],[160,57],[161,57],[162,57],[158,11],[271,11],[270,11],[277,58],[276,59],[273,60],[275,61],[278,62],[274,63],[272,11],[280,64],[279,65],[203,11],[164,66],[234,67],[165,11],[199,68],[201,69],[209,70],[200,11],[210,71],[211,71],[208,72],[206,11],[212,73],[207,74],[202,11],[204,75],[213,76],[214,77],[215,78],[216,78],[205,79],[217,80],[218,81],[219,66],[220,82],[221,66],[223,83],[222,84],[224,11],[225,85],[226,85],[227,86],[228,87],[230,88],[231,89],[232,11],[233,87],[229,11],[240,90],[241,91],[116,92],[115,11],[327,93],[328,93],[329,94],[286,95],[330,96],[331,97],[332,98],[284,11],[333,99],[334,100],[335,101],[336,102],[337,103],[338,104],[339,104],[341,11],[340,105],[342,106],[343,107],[344,108],[326,109],[285,11],[345,110],[346,111],[347,112],[380,113],[348,114],[349,115],[350,116],[351,117],[352,85],[353,118],[354,119],[355,120],[356,121],[357,122],[358,122],[359,123],[360,11],[361,11],[362,124],[364,125],[363,126],[365,127],[366,128],[367,129],[368,130],[369,131],[370,132],[371,133],[372,134],[373,135],[374,136],[375,137],[376,138],[377,139],[378,140],[379,141],[239,142],[257,11],[255,11],[235,11],[198,143],[178,11],[170,11],[185,144],[171,145],[188,146],[169,147],[195,148],[193,149],[194,150],[197,149],[196,148],[186,151],[187,152],[172,153],[177,154],[180,155],[182,156],[181,157],[179,158],[183,159],[173,160],[176,161],[174,162],[168,163],[191,164],[190,165],[189,166],[192,167],[167,168],[175,169],[166,11],[184,170],[258,11],[238,11],[77,11],[78,11],[14,11],[13,11],[2,11],[15,11],[16,11],[17,11],[18,11],[19,11],[20,11],[21,11],[22,11],[3,11],[23,11],[24,11],[4,11],[25,11],[29,11],[26,11],[27,11],[28,11],[30,11],[31,11],[32,11],[5,11],[33,11],[34,11],[35,11],[36,11],[6,11],[40,11],[37,11],[38,11],[39,11],[41,11],[7,11],[42,11],[47,11],[48,11],[43,11],[44,11],[45,11],[46,11],[8,11],[52,11],[49,11],[50,11],[51,11],[53,11],[9,11],[54,11],[55,11],[56,11],[58,11],[57,11],[59,11],[60,11],[10,11],[61,11],[62,11],[63,11],[11,11],[64,11],[65,11],[66,11],[67,11],[68,11],[1,11],[69,11],[70,11],[12,11],[74,11],[72,11],[76,11],[71,11],[75,11],[73,11],[303,171],[314,172],[301,171],[315,87],[324,173],[293,174],[292,175],[323,176],[318,177],[322,178],[295,179],[311,180],[294,181],[321,182],[290,183],[291,177],[296,184],[297,11],[302,174],[300,184],[288,185],[325,186],[316,187],[306,188],[305,184],[307,189],[309,190],[304,191],[308,192],[319,176],[298,193],[299,194],[310,195],[289,87],[313,196],[312,184],[317,11],[287,11],[320,197],[266,198],[260,199],[261,11],[264,11],[262,200],[263,201],[256,202],[259,203],[265,201]],"latestChangedDtsFile":"./index.d.ts","version":"5.8.3"}
package/package.json ADDED
@@ -0,0 +1,43 @@
1
+ {
2
+ "name": "@idlebox/cli",
3
+ "type": "module",
4
+ "version": "0.0.1",
5
+ "exports": {
6
+ ".": {
7
+ "source": "./src/index.ts",
8
+ "default": "./lib/index.js"
9
+ },
10
+ "./builder": {
11
+ "source": "./src/builder.ts",
12
+ "default": "./lib/builder.js"
13
+ },
14
+ "./package.json": "./package.json"
15
+ },
16
+ "sideEffects": false,
17
+ "dependencies": {
18
+ "@idlebox/common": "^1.4.19",
19
+ "@idlebox/args": "^0.0.14",
20
+ "@idlebox/logger": "^0.0.7",
21
+ "@idlebox/cli-help-builder": "^0.0.1",
22
+ "@idlebox/source-map-support": "^0.0.5",
23
+ "@idlebox/node": "^1.4.12"
24
+ },
25
+ "devDependencies": {
26
+ "@types/node": "^24.0.14",
27
+ "@build-script/single-dog-asset": "^1.0.39",
28
+ "@idlebox/source-map-support": "^0.0.5",
29
+ "@internal/local-rig": "^1.0.1",
30
+ "@mpis/run": "^0.0.7",
31
+ "@idlebox/cli-static-generator": "^0.0.1"
32
+ },
33
+ "license": "MIT",
34
+ "author": "GongT <admin@gongt.me>",
35
+ "repository": "https://github.com/GongT/baobao",
36
+ "main": "./lib/index.js",
37
+ "scripts": {
38
+ "build": "mpis-run build",
39
+ "watch": "mpis-run watch",
40
+ "clean": "mpis-run clean",
41
+ "lint": "internal-lint"
42
+ }
43
+ }
package/src/builder.ts ADDED
@@ -0,0 +1 @@
1
+ export * from '@idlebox/cli-static-generator';
package/src/index.ts ADDED
@@ -0,0 +1,37 @@
1
+ import { install } from '@idlebox/source-map-support';
2
+
3
+ install({ environment: 'node', ignore: true });
4
+
5
+ export enum ExitCode {
6
+ /**
7
+ * 运行时发生各种无法预料的错误,例如网络突然断开等
8
+ */
9
+ EXECUTION = 1,
10
+
11
+ /**
12
+ * 在不期待SIGINT、SIGTERM的情况下,收到了这些信号进而退出
13
+ */
14
+ INTERRUPT = 2,
15
+
16
+ /**
17
+ * 使用方式错误,例如传入了不正确的参数
18
+ */
19
+ USAGE = 3,
20
+
21
+ /**
22
+ * 由于程序代码不完善导致的错误
23
+ */
24
+ PROGRAM = 66,
25
+ }
26
+
27
+ export interface IApp {
28
+ readonly debug: boolean;
29
+ readonly verbose: boolean;
30
+ readonly silent: boolean;
31
+ readonly showHelp: boolean;
32
+ readonly command: string;
33
+ readonly color: boolean;
34
+ }
35
+
36
+ export * from './re-export.js';
37
+ export { app, makeApplication } from './startup.js';
@@ -0,0 +1,4 @@
1
+ export { ArgumentError, ArgumentTypings } from '@idlebox/args';
2
+ export { argv } from '@idlebox/args/default';
3
+ export { CliApplicationHelp, CommandDefine, type IArgDefine as ArgDefine, type IArgDefineMap as ArgDefineMap, type ICommandDefine, type ICommandDefineWithCommand } from '@idlebox/cli-help-builder';
4
+ export { createDebug, CSI, EnableLogLevel, logger, LogLevel, type IDebugCommand, type IMyDebug, type IMyDebugWithControl, type IMyLogger } from '@idlebox/logger';
package/src/startup.ts ADDED
@@ -0,0 +1,296 @@
1
+ import type { ArgumentTypings } from '@idlebox/args';
2
+ import { argv } from '@idlebox/args/default';
3
+ import { CliApplicationHelp, type CommandDefine, type IArgDefineMap, type ICommandDefine, type ICommandDefineWithCommand } from '@idlebox/cli-help-builder';
4
+ import { humanDate, NotImplementedError, registerGlobalLifecycle, toDisposable, type IPackageJson } from '@idlebox/common';
5
+ import { createRootLogger, EnableLogLevel, logger } from '@idlebox/logger';
6
+ import { registerNodejsExitHandler, shutdown } from '@idlebox/node';
7
+ import { mapSourcePosition } from '@idlebox/source-map-support';
8
+ import assert from 'node:assert';
9
+ import { readFileSync } from 'node:fs';
10
+ import { glob } from 'node:fs/promises';
11
+ import { findPackageJSON } from 'node:module';
12
+ import { basename, extname, resolve } from 'node:path';
13
+ import { getCallSites } from 'node:util';
14
+ import { ExitCode, type IApp } from './index.js';
15
+
16
+ class CliApplication implements IApp {
17
+ public debug = false;
18
+ public verbose = false;
19
+ public silent = false;
20
+ public showHelp = false;
21
+ public color = false;
22
+ public initialized = false;
23
+
24
+ private _command = '';
25
+ get command() {
26
+ if (!this._command) {
27
+ throw new Error('application sub command is unknown or not exists');
28
+ }
29
+ return this._command;
30
+ }
31
+ }
32
+
33
+ const info = new CliApplication();
34
+ export const app: Readonly<IApp> = info;
35
+
36
+ const fixedCommon = {
37
+ '--debug, -d': { flag: true, description: '增加输出(最多2个)' },
38
+ '--quiet, -s, --silent': { flag: true, description: '减少输出' },
39
+ '--help, -h': { flag: true, description: '显示帮助信息' },
40
+ };
41
+
42
+ interface IAppBasic {
43
+ readonly name: string;
44
+ readonly description: string;
45
+ }
46
+
47
+ function autoload(): IAppBasic {
48
+ const callSites = getCallSites(3, { sourceMap: false });
49
+ const mainUri = callSites[2].scriptName;
50
+ const pkgPath = findPackageJSON(mainUri);
51
+
52
+ if (!pkgPath) {
53
+ throw new Error(`can not determin package.json for ${mainUri}`);
54
+ }
55
+ let { name, description } = JSON.parse(readFileSync(pkgPath, 'utf-8')) as IPackageJson;
56
+
57
+ if (name.startsWith('@')) {
58
+ name = basename(name);
59
+ }
60
+
61
+ return { name, description };
62
+ }
63
+
64
+ export function makeApplication({ name: binName, description }: IAppBasic = autoload()) {
65
+ assert.equal(typeof binName, 'string', 'name must be a string');
66
+ assert.equal(typeof description, 'string', 'description must be a string');
67
+
68
+ if (info.initialized) {
69
+ throw new Error(`duplicate call to makeApplication`);
70
+ }
71
+ info.initialized = true;
72
+
73
+ process.title = binName;
74
+
75
+ const debugLvl = argv.flag(['--debug', '-d']);
76
+ const silent = argv.flag(['--silent', '-s', '--quiet']) > 0;
77
+
78
+ info.showHelp = argv.flag(['--help', '-h']) > 0;
79
+ info.verbose = debugLvl > 1;
80
+ info.debug = debugLvl > 0;
81
+ info.silent = silent;
82
+
83
+ let level = EnableLogLevel.auto;
84
+ if (info.verbose) {
85
+ level = EnableLogLevel.verbose;
86
+ } else if (info.debug) {
87
+ level = EnableLogLevel.debug;
88
+ } else if (info.silent) {
89
+ level = EnableLogLevel.error;
90
+ }
91
+
92
+ createRootLogger(binName, level);
93
+ info.color = logger.colorEnabled;
94
+
95
+ if (!binName || !description) {
96
+ logger.error`missing application name or description`;
97
+ shutdown(ExitCode.PROGRAM);
98
+ }
99
+
100
+ registerNodejsExitHandler();
101
+
102
+ if (logger.debug.isEnabled) {
103
+ const startTime = Date.now();
104
+ registerGlobalLifecycle(
105
+ toDisposable(() => {
106
+ logger.debug(`process exit with code ${process.exitCode} | ${humanDate.delta(startTime, Date.now())}`);
107
+ }),
108
+ );
109
+ }
110
+
111
+ if (info.debug && info.silent) {
112
+ logger.error`can not use --debug and --silent together`;
113
+ shutdown(ExitCode.USAGE);
114
+ }
115
+
116
+ let commons: IArgDefineMap | undefined;
117
+ let commands: readonly ICommandDefineWithCommand[];
118
+
119
+ return {
120
+ async getHelper(command?: string) {
121
+ const help = new CliApplicationHelp(binName, description);
122
+
123
+ if (!info.color) {
124
+ help.disableColor();
125
+ }
126
+
127
+ if (commons) {
128
+ help.registerCommonArgs(commons);
129
+ }
130
+ help.registerCommonArgs(fixedCommon);
131
+
132
+ if (command) {
133
+ const cmd = commands.find((item) => item.command === command);
134
+ assert.ok(cmd, `invalid command: ${command}`);
135
+ help.registerCommand(command, cmd);
136
+ } else {
137
+ for (const cmd of commands) {
138
+ if (cmd.isHidden) {
139
+ continue;
140
+ }
141
+ help.registerCommand(cmd.command, cmd);
142
+ }
143
+ }
144
+
145
+ return {
146
+ help() {
147
+ return help.help(command);
148
+ },
149
+ legend() {
150
+ return help.legend();
151
+ },
152
+ usage() {
153
+ return help.usage(command);
154
+ },
155
+ };
156
+ },
157
+ withCommon(commonArgs: IArgDefineMap) {
158
+ if (commons) throw new Error(`duplicate register common arguments`);
159
+ commons = commonArgs;
160
+ return this;
161
+ },
162
+ async simple(command: ICommandDefine) {
163
+ if (command.commonArgs) this.withCommon(command.commonArgs);
164
+
165
+ if (info.showHelp) {
166
+ this.getHelper();
167
+ } else {
168
+ }
169
+ throw new NotImplementedError('simple');
170
+ },
171
+ async static(imports: Record<string, string>, helps: readonly ICommandDefineWithCommand[]) {
172
+ commands = helps;
173
+
174
+ const known_commands = Array.from(Object.keys(imports));
175
+ const subcmd = argv.command(known_commands);
176
+
177
+ if (info.showHelp) {
178
+ const help = await this.getHelper(subcmd?.value);
179
+ console.error(help.help());
180
+ shutdown(0);
181
+ }
182
+ if (!subcmd?.value) {
183
+ logger.error`missing command, use --help/-h to see available commands`;
184
+ shutdown(ExitCode.USAGE);
185
+ }
186
+ const commandName = subcmd.value;
187
+
188
+ assert.ok(imports[commandName], `command "${commandName}" not found`);
189
+
190
+ const callSites = getCallSites(2, { sourceMap: false });
191
+ const entryFile = new URL(imports[commandName], callSites[1].scriptName).toString();
192
+
193
+ if (commons) consumeArguments(commons);
194
+ consumeCommandArguments(commands.find((cmd) => cmd.command === commandName));
195
+
196
+ await execMain(entryFile, subcmd);
197
+ },
198
+ async dynamic(absRootDir: string, globs: string | string[] = ['*.js']) {
199
+ if (typeof globs === 'string') {
200
+ globs = [globs];
201
+ }
202
+ logger.verbose`dynamic command\n\troot: ${absRootDir}\n\tglobs: ${globs.join(', ')}`;
203
+
204
+ const known_commands: string[] = [];
205
+ const importMap: Record<string, string> = {};
206
+ for await (const fname of glob(globs, { cwd: absRootDir })) {
207
+ const base = basename(fname, extname(fname));
208
+ const path = resolve(absRootDir, fname);
209
+
210
+ known_commands.push(base);
211
+ importMap[base] = path;
212
+ }
213
+
214
+ const subcmd = argv.command(known_commands);
215
+
216
+ if (subcmd?.value) {
217
+ const cmd = await importDefine(importMap[subcmd.value]);
218
+ commands = [cmd];
219
+ } else {
220
+ commands = await Promise.all(known_commands.map((cmd) => importDefine(importMap[cmd])));
221
+ }
222
+
223
+ if (info.showHelp) {
224
+ const help = await this.getHelper(subcmd?.value);
225
+ console.error(help.help());
226
+ shutdown(0);
227
+ }
228
+
229
+ if (!subcmd?.value) {
230
+ logger.error`missing command, use --help/-h to see available commands`;
231
+ shutdown(ExitCode.USAGE);
232
+ }
233
+ const commandName = subcmd.value;
234
+
235
+ if (commons) consumeArguments(commons);
236
+ consumeCommandArguments(commands.find((cmd) => cmd.command === commandName));
237
+
238
+ await execMain(importMap[commandName], subcmd);
239
+ },
240
+ };
241
+ }
242
+
243
+ async function execMain(file: string, subcmd: ArgumentTypings.ISubArgsReaderApi) {
244
+ logger.verbose`executing js file: ${file}`;
245
+ const { main } = await import(file);
246
+ if (typeof main !== 'function') {
247
+ const r = mapSourcePosition({ source: file, column: 0, line: 1 });
248
+ logger.fatal`missing main() function in file long<${r.source}>`;
249
+ }
250
+
251
+ const result = await main(subcmd);
252
+
253
+ if (result !== undefined) {
254
+ const r = mapSourcePosition({ source: file, column: 0, line: 1 });
255
+ logger.warn`main function retrun type is not void in file long<${r.source}>`;
256
+ }
257
+ }
258
+
259
+ async function importDefine(file: string): Promise<ICommandDefineWithCommand> {
260
+ const { Command } = await import(file);
261
+
262
+ assert.ok(Command, `file not export Command: ${file}`);
263
+
264
+ const cmd: CommandDefine = new Command();
265
+ return {
266
+ command: basename(file, extname(file)),
267
+ ...cmd.toJSON(),
268
+ };
269
+ }
270
+
271
+ const spaces = /\s+/g;
272
+
273
+ function consumeArguments(defines: IArgDefineMap) {
274
+ for (const [name, { flag }] of Object.entries(defines)) {
275
+ const names = name.split(spaces);
276
+ if (flag) {
277
+ argv.flag(names);
278
+ } else {
279
+ argv.multiple(names);
280
+ }
281
+ }
282
+ }
283
+
284
+ function consumeCommandArguments(command?: ICommandDefine) {
285
+ if (!command) {
286
+ throw logger.fatal(`program defect: command must not empty not`);
287
+ }
288
+
289
+ if (command.args) consumeArguments(command.args);
290
+ if (command.commonArgs) consumeArguments(command.commonArgs);
291
+ if (!command.positional) {
292
+ if (argv.unused().length > 0) {
293
+ logger.fatal`unexpected arguments: ${argv.unused().join(', ')}`;
294
+ }
295
+ }
296
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "extends": "@internal/local-rig/profiles/default/tsconfig.json",
3
+ "compilerOptions": {
4
+ "typeRoots": ["../node_modules/@types", "../node_modules"],
5
+ "outDir": "../lib",
6
+ "rootDir": "./",
7
+ "types": ["node"],
8
+ "noEmitOnError": false
9
+ },
10
+ "exclude": ["**/*.generator.ts"]
11
+ }