@appland/appmap 3.29.4 → 3.32.0
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/CHANGELOG.md +31 -0
- package/built/appmap.html +1 -1
- package/built/cli.js +17 -121
- package/built/cli.js.map +1 -1
- package/built/cmds/inspect/inspect.js +55 -0
- package/built/cmds/inspect/inspect.js.map +1 -0
- package/built/fingerprint/fingerprintWatchCommand.js +39 -16
- package/built/fingerprint/fingerprintWatchCommand.js.map +1 -1
- package/built/functionStats.js +9 -0
- package/built/functionStats.js.map +1 -1
- package/built/inspect/context.js +66 -0
- package/built/inspect/context.js.map +1 -0
- package/built/inspect/filter.js +8 -5
- package/built/inspect/filter.js.map +1 -1
- package/built/inspect/home.js +14 -9
- package/built/inspect/home.js.map +1 -1
- package/built/inspect/navigate.js +15 -0
- package/built/inspect/navigate.js.map +1 -0
- package/built/inspect/reset.js +5 -5
- package/built/inspect/reset.js.map +1 -1
- package/built/inspect/ui.js +121 -0
- package/built/inspect/ui.js.map +1 -0
- package/built/inspect/undoFilter.js +5 -5
- package/built/inspect/undoFilter.js.map +1 -1
- package/built/lib/appmapDirFromConfig.js +27 -0
- package/built/lib/appmapDirFromConfig.js.map +1 -0
- package/built/lib/handleWorkingDirectory.js +10 -0
- package/built/lib/handleWorkingDirectory.js.map +1 -0
- package/built/lib/locateAppMapDir.js +14 -0
- package/built/lib/locateAppMapDir.js.map +1 -0
- package/built/main.js.map +1 -1
- package/built/search/{codeObjectMatcher.js → descentCodeObjectMatcher.js} +50 -17
- package/built/search/descentCodeObjectMatcher.js.map +1 -0
- package/built/search/findCodeObjects.js +96 -126
- package/built/search/findCodeObjects.js.map +1 -1
- package/built/search/findEvents.js +1 -1
- package/built/search/findEvents.js.map +1 -1
- package/built/search/iterateCodeObjectMatcher.js +37 -0
- package/built/search/iterateCodeObjectMatcher.js.map +1 -0
- package/built/search/matchSpec.js +11 -3
- package/built/search/matchSpec.js.map +1 -1
- package/built/utils.js +5 -1
- package/built/utils.js.map +1 -1
- package/package.json +3 -3
- package/built/inspect.js +0 -8
- package/built/inspect.js.map +0 -1
- package/built/search/codeObjectMatcher.js.map +0 -1
package/built/cli.js
CHANGED
|
@@ -36,24 +36,22 @@ const { promises: fsp, readFileSync } = require('fs');
|
|
|
36
36
|
const { queue } = require('async');
|
|
37
37
|
const readline = require('readline');
|
|
38
38
|
const { join } = require('path');
|
|
39
|
-
const cliProgress = require('cli-progress');
|
|
40
39
|
const { algorithms, canonicalize } = require('./fingerprint');
|
|
41
40
|
const { verbose, loadAppMap } = require('./utils');
|
|
42
41
|
const appMapCatalog = require('./appMapCatalog');
|
|
43
42
|
const FingerprintDirectoryCommand = require('./fingerprint/fingerprintDirectoryCommand');
|
|
44
43
|
const FingerprintWatchCommand = require('./fingerprint/fingerprintWatchCommand');
|
|
45
44
|
const Depends = require('./depends');
|
|
46
|
-
const FindCodeObjects = require('./search/findCodeObjects');
|
|
47
|
-
const FindEvents = require('./search/findEvents');
|
|
48
|
-
const FunctionStats = require('./functionStats');
|
|
49
|
-
const Inspect = require('./inspect');
|
|
50
45
|
const OpenAPICommand = __importStar(require("./cmds/openapi"));
|
|
51
46
|
const InventoryCommand = require('./inventoryCommand');
|
|
52
47
|
const OpenCommand = require('./cmds/open/open');
|
|
48
|
+
const InspectCommand = require('./cmds/inspect/inspect');
|
|
53
49
|
const RecordCommand = require('./cmds/record/record');
|
|
54
50
|
const install_agent_1 = __importDefault(require("./cmds/agentInstaller/install-agent"));
|
|
55
51
|
const status_1 = __importDefault(require("./cmds/agentInstaller/status"));
|
|
56
52
|
const prune_1 = __importDefault(require("./cmds/prune/prune"));
|
|
53
|
+
const handleWorkingDirectory_1 = require("./lib/handleWorkingDirectory");
|
|
54
|
+
const locateAppMapDir_1 = require("./lib/locateAppMapDir");
|
|
57
55
|
class DiffCommand {
|
|
58
56
|
setBaseDir(dir) {
|
|
59
57
|
this.baseDir = dir;
|
|
@@ -157,6 +155,11 @@ class DetailedDiff {
|
|
|
157
155
|
// eslint-disable-next-line no-unused-expressions
|
|
158
156
|
yargs(process.argv.slice(2))
|
|
159
157
|
.command('diff', 'Compute the difference between two mapsets', (args) => {
|
|
158
|
+
args.option('directory', {
|
|
159
|
+
describe: 'program working directory',
|
|
160
|
+
type: 'string',
|
|
161
|
+
alias: 'd',
|
|
162
|
+
});
|
|
160
163
|
args.option('name', {
|
|
161
164
|
describe: 'indicate a specific AppMap to of compare',
|
|
162
165
|
});
|
|
@@ -172,6 +175,7 @@ yargs(process.argv.slice(2))
|
|
|
172
175
|
});
|
|
173
176
|
}, async function (argv) {
|
|
174
177
|
verbose(argv.verbose);
|
|
178
|
+
(0, handleWorkingDirectory_1.handleWorkingDirectory)(argv.directory);
|
|
175
179
|
let baseDir;
|
|
176
180
|
let workingDir;
|
|
177
181
|
const { showDiff } = argv;
|
|
@@ -296,122 +300,6 @@ yargs(process.argv.slice(2))
|
|
|
296
300
|
appMapNames.forEach((name) => values.push(name));
|
|
297
301
|
}
|
|
298
302
|
console.log(Array.from(new Set(values)).sort().join('\n'));
|
|
299
|
-
})
|
|
300
|
-
.command('inspect <code-object>', 'Search AppMaps for references to a code object (package, function, class, query, route, etc) and print available event info', (args) => {
|
|
301
|
-
args.positional('code-object', {
|
|
302
|
-
describe: 'identifies the code-object to inspect',
|
|
303
|
-
});
|
|
304
|
-
args.option('appmap-dir', {
|
|
305
|
-
describe: 'directory to recursively inspect for AppMaps',
|
|
306
|
-
default: 'tmp/appmap',
|
|
307
|
-
});
|
|
308
|
-
args.option('interactive', {
|
|
309
|
-
describe: 'interact with the output via CLI',
|
|
310
|
-
alias: 'i',
|
|
311
|
-
boolean: true,
|
|
312
|
-
});
|
|
313
|
-
return args.strict();
|
|
314
|
-
}, async (argv) => {
|
|
315
|
-
verbose(argv.verbose);
|
|
316
|
-
const newProgress = () => {
|
|
317
|
-
if (argv.interactive) {
|
|
318
|
-
return new cliProgress.SingleBar({}, cliProgress.Presets.shades_classic);
|
|
319
|
-
}
|
|
320
|
-
return {
|
|
321
|
-
increment: () => { },
|
|
322
|
-
start: () => { },
|
|
323
|
-
stop: () => { },
|
|
324
|
-
};
|
|
325
|
-
};
|
|
326
|
-
console.warn('Indexing the AppMap database');
|
|
327
|
-
await new FingerprintDirectoryCommand(argv.appmapDir).execute();
|
|
328
|
-
console.warn('Finding matching AppMaps');
|
|
329
|
-
let progress = newProgress();
|
|
330
|
-
const codeObjectId = argv.codeObject;
|
|
331
|
-
const finder = new FindCodeObjects(argv.appmapDir, codeObjectId);
|
|
332
|
-
const codeObjectMatches = await finder.find((count) => progress.start(count, 0), progress.increment.bind(progress));
|
|
333
|
-
progress.stop();
|
|
334
|
-
if (!codeObjectMatches) {
|
|
335
|
-
return;
|
|
336
|
-
}
|
|
337
|
-
const filters = [];
|
|
338
|
-
let stats = null;
|
|
339
|
-
const buildStats = async () => {
|
|
340
|
-
const result = [];
|
|
341
|
-
console.warn('Finding matching Events');
|
|
342
|
-
progress = newProgress();
|
|
343
|
-
progress.start(codeObjectMatches.length, 0);
|
|
344
|
-
await Promise.all(codeObjectMatches.map(async (codeObjectMatch) => {
|
|
345
|
-
const findEvents = new FindEvents(codeObjectMatch.appmap, codeObjectMatch.codeObject);
|
|
346
|
-
findEvents.filter(filters);
|
|
347
|
-
const events = await findEvents.matches();
|
|
348
|
-
result.push(...events);
|
|
349
|
-
progress.increment();
|
|
350
|
-
}));
|
|
351
|
-
progress.stop();
|
|
352
|
-
console.warn('Collating results...');
|
|
353
|
-
stats = new FunctionStats(result);
|
|
354
|
-
};
|
|
355
|
-
await buildStats();
|
|
356
|
-
const interactive = () => {
|
|
357
|
-
const rl = readline.createInterface({
|
|
358
|
-
input: process.stdin,
|
|
359
|
-
output: process.stdout,
|
|
360
|
-
});
|
|
361
|
-
rl.on('close', function () {
|
|
362
|
-
yargs.exit(0, new Error());
|
|
363
|
-
});
|
|
364
|
-
const home = () => {
|
|
365
|
-
Inspect.home(codeObjectId, filters, stats, getCommand);
|
|
366
|
-
};
|
|
367
|
-
const filter = () => {
|
|
368
|
-
Inspect.filter(rl, filters, stats, buildStats, home);
|
|
369
|
-
};
|
|
370
|
-
const undoFilter = async () => {
|
|
371
|
-
await Inspect.undoFilter(filters, buildStats, home);
|
|
372
|
-
};
|
|
373
|
-
const reset = async () => {
|
|
374
|
-
await Inspect.reset(filters, buildStats, home);
|
|
375
|
-
};
|
|
376
|
-
const print = () => {
|
|
377
|
-
Inspect.print(stats, rl, getCommand, home);
|
|
378
|
-
};
|
|
379
|
-
const getCommand = () => {
|
|
380
|
-
console.log();
|
|
381
|
-
rl.question('Command (h)ome, (p)rint, (f)ilter, (u)ndo filter, (r)eset filters, (q)uit: ', function (command) {
|
|
382
|
-
// eslint-disable-next-line default-case
|
|
383
|
-
switch (command) {
|
|
384
|
-
case 'h':
|
|
385
|
-
home();
|
|
386
|
-
break;
|
|
387
|
-
case 'p':
|
|
388
|
-
print();
|
|
389
|
-
break;
|
|
390
|
-
case 'f':
|
|
391
|
-
filter();
|
|
392
|
-
break;
|
|
393
|
-
case 'u':
|
|
394
|
-
undoFilter();
|
|
395
|
-
break;
|
|
396
|
-
case 'r':
|
|
397
|
-
reset();
|
|
398
|
-
break;
|
|
399
|
-
case 'q':
|
|
400
|
-
rl.close();
|
|
401
|
-
break;
|
|
402
|
-
default:
|
|
403
|
-
getCommand();
|
|
404
|
-
}
|
|
405
|
-
});
|
|
406
|
-
};
|
|
407
|
-
home();
|
|
408
|
-
};
|
|
409
|
-
if (argv.interactive) {
|
|
410
|
-
interactive();
|
|
411
|
-
}
|
|
412
|
-
else {
|
|
413
|
-
console.log(JSON.stringify(stats, null, 2));
|
|
414
|
-
}
|
|
415
303
|
})
|
|
416
304
|
.command('index', 'Compute fingerprints and update index files for all appmaps in a directory', (args) => {
|
|
417
305
|
args.option('watch', {
|
|
@@ -447,6 +335,11 @@ yargs(process.argv.slice(2))
|
|
|
447
335
|
}
|
|
448
336
|
})
|
|
449
337
|
.command('inventory', 'Generate canonical lists of the application code object inventory', (args) => {
|
|
338
|
+
args.option('directory', {
|
|
339
|
+
describe: 'program working directory',
|
|
340
|
+
type: 'string',
|
|
341
|
+
alias: 'd',
|
|
342
|
+
});
|
|
450
343
|
args.option('appmap-dir', {
|
|
451
344
|
describe: 'directory to recursively inspect for AppMaps',
|
|
452
345
|
default: 'tmp/appmap',
|
|
@@ -454,6 +347,8 @@ yargs(process.argv.slice(2))
|
|
|
454
347
|
return args.strict();
|
|
455
348
|
}, async (argv) => {
|
|
456
349
|
verbose(argv.verbose);
|
|
350
|
+
(0, handleWorkingDirectory_1.handleWorkingDirectory)(argv.directory);
|
|
351
|
+
const appmapDir = await (0, locateAppMapDir_1.locateAppMapDir)(argv.appmapDir);
|
|
457
352
|
await new FingerprintDirectoryCommand(argv.appmapDir).execute();
|
|
458
353
|
const inventory = await new InventoryCommand(argv.appmapDir).execute();
|
|
459
354
|
console.log(yaml.dump(inventory));
|
|
@@ -484,6 +379,7 @@ yargs(process.argv.slice(2))
|
|
|
484
379
|
.command(OpenCommand)
|
|
485
380
|
.command(RecordCommand)
|
|
486
381
|
.command(status_1.default)
|
|
382
|
+
.command(InspectCommand)
|
|
487
383
|
.command(prune_1.default)
|
|
488
384
|
.strict()
|
|
489
385
|
.demandCommand()
|
package/built/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;AACA,yCAAyC;AACzC,qCAAqC;AACrC,yCAAyC;AACzC,0CAA0C;AAC1C,+BAA+B;AAC/B,yCAAyC;;;;;;;;;;;;;;;;;;;;;;;;AAEzC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAC/B,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AACtC,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AAChC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AACtD,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACrC,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AACjC,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAC5C,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAC9D,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AACnD,MAAM,aAAa,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACjD,MAAM,2BAA2B,GAAG,OAAO,CAAC,2CAA2C,CAAC,CAAC;AACzF,MAAM,uBAAuB,GAAG,OAAO,CAAC,uCAAuC,CAAC,CAAC;AACjF,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;AACrC,MAAM,eAAe,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;AAC5D,MAAM,UAAU,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAClD,MAAM,aAAa,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACjD,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;AACrC,+DAAiD;AACjD,MAAM,gBAAgB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AACvD,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAChD,MAAM,aAAa,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;AACtD,wFAAiE;AACjE,0EAAyD;AACzD,+DAA8C;AAE9C,MAAM,WAAW;IASf,UAAU,CAAC,GAAG;QACZ,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,GAAG;QACf,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,KAAK;QAClB,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAE3B,OAAO,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CACxC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CACpC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAE3B,OAAO,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CACrC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CACvC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,aAAa;QACzB,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAE3B,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;aAC7B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;aACxC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACvC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE;gBACjE,OAAO,CAAC,IAAI,CAAC,4CAA4C,IAAI,EAAE,CAAC,CAAC;gBACjE,OAAO;aACR;YAED,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CACrD,CAAC,WAAW,EAAE,EAAE,CACd,WAAW,CAAC,0BAA0B,KAAK,aAAa,CAC3D,CAAC;YACF,MAAM,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAC3D,CAAC,WAAW,EAAE,EAAE,CACd,WAAW,CAAC,0BAA0B,KAAK,aAAa,CAC3D,CAAC;YACF,IAAI,CAAC,eAAe,IAAI,CAAC,kBAAkB,EAAE;gBAC3C,OAAO,CAAC,IAAI,CACV,MAAM,aAAa,gCAAgC,IAAI,EAAE,CAC1D,CAAC;gBACF,OAAO;aACR;YAED,IAAI,eAAe,CAAC,MAAM,KAAK,kBAAkB,CAAC,MAAM,EAAE;gBACxD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACnB;QACH,CAAC,CAAC,CAAC;QACL,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,eAAe,CAAC,IAAI;QAClB,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,gDAAgD;IAChD,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SACxD;QACD,6FAA6F;QAC7F,iBAAiB;QACjB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;SACrD;QAED,IAAI,CAAC,cAAc,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3D,IAAI,CAAC,WAAW,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,CAC/B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACzE,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,CAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACtE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,YAAY;IAKhB,YAAY,SAAS,EAAE,UAAU,EAAE,aAAa;QAC9C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,EAAE;YACpC,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAClC,CAAC,CAAC;QACF,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1D,OAAO,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACxC,CAAC;CACF;AAED,iDAAiD;AACjD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACzB,OAAO,CACN,MAAM,EACN,4CAA4C,EAC5C,CAAC,IAAI,EAAE,EAAE;IACP,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,0CAA0C;KACrD,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QACvB,QAAQ,EACN,oEAAoE;QACtE,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;QACtB,QAAQ,EAAE,2CAA2C;KACtD,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;QACzB,QAAQ,EAAE,+CAA+C;KAC1D,CAAC,CAAC;AACL,CAAC,EACD,KAAK,WAAW,IAAI;IAClB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEtB,IAAI,OAAO,CAAC;IACZ,IAAI,UAAU,CAAC;IACf,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAE1B,wCAAwC;IACxC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IACvB,wCAAwC;IACxC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IAE7B,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;KACjE;IACD,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;KACrE;IAED,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE;SAC3B,UAAU,CAAC,OAAO,CAAC;SACnB,aAAa,CAAC,UAAU,CAAC,CAAC;IAE7B,IAAI,IAAI,CAAC,IAAI,EAAE;QACb,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KAClC;IAED,MAAM,UAAU,GAAG;QACjB,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE;QACvC,OAAO,EAAS,EAAE;QAClB,OAAO,EAAO,SAAS;KACxB,CAAC;IAEF,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;SACpB,GAAG,CAAC,UAAU,SAAS;QACtB,OAAO,KAAK;YACV,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC9C,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CACnC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,CAC9C,CAAC;YACF,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAC9B,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,CACnC,CAAC;YACF,MAAM,YAAY,GAAG;gBACnB,SAAS;gBACT,OAAO,EAAS,EAAE;aACnB,CAAC;YACF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7B,IAAI,QAAQ,EAAE;oBACZ,YAAY,CAAC,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CACtC,cAAc,CAAC,GAAG;oBAChB,6CAA6C;oBAC7C,KAAK,WAAW,IAAI;wBAClB,OAAO;4BACL,IAAI;4BACJ,IAAI,EAAE,MAAM,IAAI,YAAY,CAC1B,SAAS,EACT,MAAM,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EACjD,MAAM,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CACrD,CAAC,IAAI,EAAE;yBACT,CAAC;oBACJ,CAAC,CACF,CACF,CAAC;iBACH;qBAAM;oBACL,YAAY,CAAC,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBACnD,IAAI;qBACL,CAAC,CAAC,CAAC;iBACL;aACF;YACD,OAAO,YAAY,CAAC;QACtB,CAAC,CAAC;IACJ,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CACzB,CAAC;IACF,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;IAC7B,UAAU,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAExD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;AACrC,CAAC,CACF;KACA,OAAO,CACN,iBAAiB,EACjB,gDAAgD,EAChD,CAAC,IAAI,EAAE,EAAE;IACP,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;QACvB,QAAQ,EAAE,8CAA8C;KACzD,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACxB,QAAQ,EAAE,8CAA8C;QACxD,OAAO,EAAE,YAAY;KACtB,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;QACtB,QAAQ,EAAE,qDAAqD;QAC/D,OAAO,EAAE,GAAG;KACb,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;QACnB,QAAQ,EAAE,yCAAyC;KACpD,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;QACzB,QAAQ,EACN,8DAA8D;QAChE,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;AACvB,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEtB,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACrB,IAAI,IAAI,CAAC,UAAU,EAAE;QACnB,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAChD,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACzC,IAAI,OAAO,EAAE,EAAE;YACb,OAAO,CAAC,IAAI,CAAC,wBAAwB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC1D;KACF;IAED,IAAI,OAAO,EAAE,EAAE;QACb,OAAO,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;KACtD;IAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,IAAI,IAAI,CAAC,OAAO,EAAE;QAChB,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;KAChC;IACD,IAAI,KAAK,EAAE;QACT,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;KACvB;IAED,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAU,EAAE,CAAC;IACzB,IAAI,IAAI,CAAC,KAAK,EAAE;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,cAAsB,EAAE,EAAE;YAC/C,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,QAAQ,CAC7B,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,CACtC,CAAC;YACF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,KAAK,EAAE;gBACT,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAChC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;aACxB;iBAAM;gBACL,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,OAAO,cAAc,EAAE,CAAC,CAAC;aAClD;QACH,CAAC,EAAE,CAAC,CAAC,CAAC;QACN,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5C,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;KACjB;SAAM;QACL,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KAClD;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D,CAAC,CACF;KACA,OAAO,CACN,uBAAuB,EACvB,6HAA6H,EAC7H,CAAC,IAAI,EAAE,EAAE;IACP,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;QAC7B,QAAQ,EAAE,uCAAuC;KAClD,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACxB,QAAQ,EAAE,8CAA8C;QACxD,OAAO,EAAE,YAAY;KACtB,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;QACzB,QAAQ,EAAE,kCAAkC;QAC5C,KAAK,EAAE,GAAG;QACV,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;AACvB,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEtB,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,OAAO,IAAI,WAAW,CAAC,SAAS,CAC9B,EAAE,EACF,WAAW,CAAC,OAAO,CAAC,cAAc,CACnC,CAAC;SACH;QAED,OAAO;YACL,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;YACnB,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;YACf,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;SACf,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC7C,MAAM,IAAI,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;IAEhE,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IACzC,IAAI,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IACjE,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,IAAI,CACzC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EACnC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAClC,CAAC;IACF,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEhB,IAAI,CAAC,iBAAiB,EAAE;QACtB,OAAO;KACR;IAED,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,IAAI,KAAK,GAAG,IAAI,CAAC;IAEjB,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE;QAC5B,MAAM,MAAM,GAAU,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACxC,QAAQ,GAAG,WAAW,EAAE,CAAC;QACzB,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC5C,MAAM,OAAO,CAAC,GAAG,CACf,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE,eAAe,EAAE,EAAE;YAC9C,MAAM,UAAU,GAAG,IAAI,UAAU,CAC/B,eAAe,CAAC,MAAM,EACtB,eAAe,CAAC,UAAU,CAC3B,CAAC;YACF,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;YAC1C,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;YACvB,QAAQ,CAAC,SAAS,EAAE,CAAC;QACvB,CAAC,CAAC,CACH,CAAC;QACF,QAAQ,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACrC,KAAK,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,MAAM,UAAU,EAAE,CAAC;IAEnB,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;YAClC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;QACH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE;YACb,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,KAAK,EAAE,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,GAAG,EAAE;YAChB,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QACzD,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,GAAG,EAAE;YAClB,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACvD,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE;YAC5B,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,KAAK,IAAI,EAAE;YACvB,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACjD,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,GAAG,EAAE;YACjB,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,GAAG,EAAE;YACtB,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,EAAE,CAAC,QAAQ,CACT,6EAA6E,EAC7E,UAAU,OAAO;gBACf,wCAAwC;gBACxC,QAAQ,OAAO,EAAE;oBACf,KAAK,GAAG;wBACN,IAAI,EAAE,CAAC;wBACP,MAAM;oBACR,KAAK,GAAG;wBACN,KAAK,EAAE,CAAC;wBACR,MAAM;oBACR,KAAK,GAAG;wBACN,MAAM,EAAE,CAAC;wBACT,MAAM;oBACR,KAAK,GAAG;wBACN,UAAU,EAAE,CAAC;wBACb,MAAM;oBACR,KAAK,GAAG;wBACN,KAAK,EAAE,CAAC;wBACR,MAAM;oBACR,KAAK,GAAG;wBACN,EAAE,CAAC,KAAK,EAAE,CAAC;wBACX,MAAM;oBACR;wBACE,UAAU,EAAE,CAAC;iBAChB;YACH,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;QAEF,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;IACF,IAAI,IAAI,CAAC,WAAW,EAAE;QACpB,WAAW,EAAE,CAAC;KACf;SAAM;QACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;KAC7C;AACH,CAAC,CACF;KACA,OAAO,CACN,OAAO,EACP,4EAA4E,EAC5E,CAAC,IAAI,EAAE,EAAE;IACP,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;QACnB,QAAQ,EAAE,4CAA4C;QACtD,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACxB,QAAQ,EAAE,8CAA8C;QACxD,OAAO,EAAE,YAAY;KACtB,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;AACvB,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEtB,IAAI,IAAI,CAAC,KAAK,EAAE;QACd,MAAM,GAAG,GAAG,IAAI,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxD,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;QAEpB,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE;YACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAClC,MAAM,YAAY,GAAG,sBAAsB,CAAC;YAC5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACnC,WAAW,CAAC,GAAG,EAAE;gBACf,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;YAC9C,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,EAAC,WAAW,EAAE,EAAE;gBACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;SACJ;KACF;SAAM;QACL,MAAM,GAAG,GAAG,IAAI,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5D,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;KACrB;AACH,CAAC,CACF;KACA,OAAO,CACN,WAAW,EACX,mEAAmE,EACnE,CAAC,IAAI,EAAE,EAAE;IACP,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACxB,QAAQ,EAAE,8CAA8C;QACxD,OAAO,EAAE,YAAY;KACtB,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;AACvB,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEtB,MAAM,IAAI,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;IAEhE,MAAM,SAAS,GAAG,MAAM,IAAI,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AACpC,CAAC,CACF;KACA,MAAM,CAAC,SAAS,EAAE;IACjB,KAAK,EAAE,GAAG;IACV,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,0BAA0B;CACxC,CAAC;KACD,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;IACxB,IAAI,GAAG,EAAE;QACP,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;KAClB;SAAM,IAAI,GAAG,EAAE;QACd,IAAI,GAAG,CAAC,KAAK,EAAE;YACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SAC1B;aAAM;YACL,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACpB;KACF;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC;KACD,OAAO,CAAC,cAAc,CAAC;KACvB,OAAO,CAAC,uBAAc,CAAC;KACvB,OAAO,CAAC,WAAW,CAAC;KACpB,OAAO,CAAC,aAAa,CAAC;KACtB,OAAO,CAAC,gBAAa,CAAC;KACtB,OAAO,CAAC,eAAY,CAAC;KACrB,MAAM,EAAE;KACR,aAAa,EAAE;KACf,IAAI,EAAE,CAAC,IAAI,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;AACA,yCAAyC;AACzC,qCAAqC;AACrC,yCAAyC;AACzC,0CAA0C;AAC1C,+BAA+B;AAC/B,yCAAyC;;;;;;;;;;;;;;;;;;;;;;;;AAEzC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAC/B,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AACtC,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AAChC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AACtD,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACrC,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AACjC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAC9D,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AACnD,MAAM,aAAa,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACjD,MAAM,2BAA2B,GAAG,OAAO,CAAC,2CAA2C,CAAC,CAAC;AACzF,MAAM,uBAAuB,GAAG,OAAO,CAAC,uCAAuC,CAAC,CAAC;AACjF,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;AACrC,+DAAiD;AACjD,MAAM,gBAAgB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AACvD,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAChD,MAAM,cAAc,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;AACzD,MAAM,aAAa,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;AACtD,wFAAiE;AACjE,0EAAyD;AACzD,+DAA8C;AAC9C,yEAAsE;AACtE,2DAAwD;AAExD,MAAM,WAAW;IASf,UAAU,CAAC,GAAG;QACZ,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,GAAG;QACf,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,KAAK;QAClB,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAE3B,OAAO,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CACxC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CACpC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAE3B,OAAO,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CACrC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CACvC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,aAAa;QACzB,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAE3B,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;aAC7B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;aACxC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACvC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE;gBACjE,OAAO,CAAC,IAAI,CAAC,4CAA4C,IAAI,EAAE,CAAC,CAAC;gBACjE,OAAO;aACR;YAED,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CACrD,CAAC,WAAW,EAAE,EAAE,CACd,WAAW,CAAC,0BAA0B,KAAK,aAAa,CAC3D,CAAC;YACF,MAAM,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAC3D,CAAC,WAAW,EAAE,EAAE,CACd,WAAW,CAAC,0BAA0B,KAAK,aAAa,CAC3D,CAAC;YACF,IAAI,CAAC,eAAe,IAAI,CAAC,kBAAkB,EAAE;gBAC3C,OAAO,CAAC,IAAI,CACV,MAAM,aAAa,gCAAgC,IAAI,EAAE,CAC1D,CAAC;gBACF,OAAO;aACR;YAED,IAAI,eAAe,CAAC,MAAM,KAAK,kBAAkB,CAAC,MAAM,EAAE;gBACxD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACnB;QACH,CAAC,CAAC,CAAC;QACL,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,eAAe,CAAC,IAAI;QAClB,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,gDAAgD;IAChD,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SACxD;QACD,6FAA6F;QAC7F,iBAAiB;QACjB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;SACrD;QAED,IAAI,CAAC,cAAc,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3D,IAAI,CAAC,WAAW,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,CAC/B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACzE,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,CAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACtE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,YAAY;IAKhB,YAAY,SAAS,EAAE,UAAU,EAAE,aAAa;QAC9C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,EAAE;YACpC,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAClC,CAAC,CAAC;QACF,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1D,OAAO,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACxC,CAAC;CACF;AAED,iDAAiD;AACjD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACzB,OAAO,CACN,MAAM,EACN,4CAA4C,EAC5C,CAAC,IAAI,EAAE,EAAE;IACP,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QACvB,QAAQ,EAAE,2BAA2B;QACrC,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,GAAG;KACX,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,0CAA0C;KACrD,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QACvB,QAAQ,EACN,oEAAoE;QACtE,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;QACtB,QAAQ,EAAE,2CAA2C;KACtD,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;QACzB,QAAQ,EAAE,+CAA+C;KAC1D,CAAC,CAAC;AACL,CAAC,EACD,KAAK,WAAW,IAAI;IAClB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,IAAA,+CAAsB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAEvC,IAAI,OAAO,CAAC;IACZ,IAAI,UAAU,CAAC;IACf,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAE1B,wCAAwC;IACxC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IACvB,wCAAwC;IACxC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IAE7B,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;KACjE;IACD,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;KACrE;IAED,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE;SAC3B,UAAU,CAAC,OAAO,CAAC;SACnB,aAAa,CAAC,UAAU,CAAC,CAAC;IAE7B,IAAI,IAAI,CAAC,IAAI,EAAE;QACb,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KAClC;IAED,MAAM,UAAU,GAAG;QACjB,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE;QACvC,OAAO,EAAS,EAAE;QAClB,OAAO,EAAO,SAAS;KACxB,CAAC;IAEF,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;SACpB,GAAG,CAAC,UAAU,SAAS;QACtB,OAAO,KAAK;YACV,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC9C,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CACnC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,CAC9C,CAAC;YACF,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAC9B,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,CACnC,CAAC;YACF,MAAM,YAAY,GAAG;gBACnB,SAAS;gBACT,OAAO,EAAS,EAAE;aACnB,CAAC;YACF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7B,IAAI,QAAQ,EAAE;oBACZ,YAAY,CAAC,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CACtC,cAAc,CAAC,GAAG;oBAChB,6CAA6C;oBAC7C,KAAK,WAAW,IAAI;wBAClB,OAAO;4BACL,IAAI;4BACJ,IAAI,EAAE,MAAM,IAAI,YAAY,CAC1B,SAAS,EACT,MAAM,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EACjD,MAAM,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CACrD,CAAC,IAAI,EAAE;yBACT,CAAC;oBACJ,CAAC,CACF,CACF,CAAC;iBACH;qBAAM;oBACL,YAAY,CAAC,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBACnD,IAAI;qBACL,CAAC,CAAC,CAAC;iBACL;aACF;YACD,OAAO,YAAY,CAAC;QACtB,CAAC,CAAC;IACJ,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CACzB,CAAC;IACF,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;IAC7B,UAAU,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAExD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;AACrC,CAAC,CACF;KACA,OAAO,CACN,iBAAiB,EACjB,gDAAgD,EAChD,CAAC,IAAI,EAAE,EAAE;IACP,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;QACvB,QAAQ,EAAE,8CAA8C;KACzD,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACxB,QAAQ,EAAE,8CAA8C;QACxD,OAAO,EAAE,YAAY;KACtB,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;QACtB,QAAQ,EAAE,qDAAqD;QAC/D,OAAO,EAAE,GAAG;KACb,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;QACnB,QAAQ,EAAE,yCAAyC;KACpD,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;QACzB,QAAQ,EACN,8DAA8D;QAChE,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;AACvB,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEtB,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACrB,IAAI,IAAI,CAAC,UAAU,EAAE;QACnB,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAChD,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACzC,IAAI,OAAO,EAAE,EAAE;YACb,OAAO,CAAC,IAAI,CAAC,wBAAwB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC1D;KACF;IAED,IAAI,OAAO,EAAE,EAAE;QACb,OAAO,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;KACtD;IAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,IAAI,IAAI,CAAC,OAAO,EAAE;QAChB,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;KAChC;IACD,IAAI,KAAK,EAAE;QACT,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;KACvB;IAED,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAU,EAAE,CAAC;IACzB,IAAI,IAAI,CAAC,KAAK,EAAE;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,cAAsB,EAAE,EAAE;YAC/C,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,QAAQ,CAC7B,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,CACtC,CAAC;YACF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,KAAK,EAAE;gBACT,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAChC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;aACxB;iBAAM;gBACL,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,OAAO,cAAc,EAAE,CAAC,CAAC;aAClD;QACH,CAAC,EAAE,CAAC,CAAC,CAAC;QACN,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5C,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;KACjB;SAAM;QACL,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KAClD;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D,CAAC,CACF;KACA,OAAO,CACN,OAAO,EACP,4EAA4E,EAC5E,CAAC,IAAI,EAAE,EAAE;IACP,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;QACnB,QAAQ,EAAE,4CAA4C;QACtD,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACxB,QAAQ,EAAE,8CAA8C;QACxD,OAAO,EAAE,YAAY;KACtB,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;AACvB,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEtB,IAAI,IAAI,CAAC,KAAK,EAAE;QACd,MAAM,GAAG,GAAG,IAAI,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxD,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;QAEpB,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE;YACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAClC,MAAM,YAAY,GAAG,sBAAsB,CAAC;YAC5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACnC,WAAW,CAAC,GAAG,EAAE;gBACf,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;YAC9C,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,EAAC,WAAW,EAAE,EAAE;gBACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;SACJ;KACF;SAAM;QACL,MAAM,GAAG,GAAG,IAAI,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5D,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;KACrB;AACH,CAAC,CACF;KACA,OAAO,CACN,WAAW,EACX,mEAAmE,EACnE,CAAC,IAAI,EAAE,EAAE;IACP,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QACvB,QAAQ,EAAE,2BAA2B;QACrC,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,GAAG;KACX,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACxB,QAAQ,EAAE,8CAA8C;QACxD,OAAO,EAAE,YAAY;KACtB,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;AACvB,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,IAAA,+CAAsB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,MAAM,IAAA,iCAAe,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAExD,MAAM,IAAI,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;IAEhE,MAAM,SAAS,GAAG,MAAM,IAAI,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AACpC,CAAC,CACF;KACA,MAAM,CAAC,SAAS,EAAE;IACjB,KAAK,EAAE,GAAG;IACV,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,0BAA0B;CACxC,CAAC;KACD,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;IACxB,IAAI,GAAG,EAAE;QACP,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;KAClB;SAAM,IAAI,GAAG,EAAE;QACd,IAAI,GAAG,CAAC,KAAK,EAAE;YACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SAC1B;aAAM;YACL,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACpB;KACF;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC;KACD,OAAO,CAAC,cAAc,CAAC;KACvB,OAAO,CAAC,uBAAc,CAAC;KACvB,OAAO,CAAC,WAAW,CAAC;KACpB,OAAO,CAAC,aAAa,CAAC;KACtB,OAAO,CAAC,gBAAa,CAAC;KACtB,OAAO,CAAC,cAAc,CAAC;KACvB,OAAO,CAAC,eAAY,CAAC;KACrB,MAAM,EAAE;KACR,aAAa,EAAE;KACf,IAAI,EAAE,CAAC,IAAI,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.handler = exports.builder = exports.describe = exports.command = void 0;
|
|
7
|
+
const yargs_1 = __importDefault(require("yargs"));
|
|
8
|
+
const context_1 = __importDefault(require("../../inspect/context"));
|
|
9
|
+
const ui_1 = __importDefault(require("../../inspect/ui"));
|
|
10
|
+
const handleWorkingDirectory_1 = require("../../lib/handleWorkingDirectory");
|
|
11
|
+
const locateAppMapDir_1 = require("../../lib/locateAppMapDir");
|
|
12
|
+
const utils_1 = require("../../utils");
|
|
13
|
+
exports.command = 'inspect <code-object>';
|
|
14
|
+
exports.describe = 'Search AppMaps for references to a code object (package, function, class, query, route, etc) and print available event info';
|
|
15
|
+
const builder = (args) => {
|
|
16
|
+
args.positional('code-object', {
|
|
17
|
+
describe: 'identifies the code-object to inspect',
|
|
18
|
+
});
|
|
19
|
+
args.option('directory', {
|
|
20
|
+
describe: 'program working directory',
|
|
21
|
+
type: 'string',
|
|
22
|
+
alias: 'd',
|
|
23
|
+
});
|
|
24
|
+
args.option('appmap-dir', {
|
|
25
|
+
describe: 'directory to recursively inspect for AppMaps',
|
|
26
|
+
});
|
|
27
|
+
args.option('interactive', {
|
|
28
|
+
describe: 'interact with the output via CLI',
|
|
29
|
+
alias: 'i',
|
|
30
|
+
boolean: true,
|
|
31
|
+
});
|
|
32
|
+
return args.strict();
|
|
33
|
+
};
|
|
34
|
+
exports.builder = builder;
|
|
35
|
+
const handler = async (argv) => {
|
|
36
|
+
var _a;
|
|
37
|
+
(0, utils_1.verbose)(argv.verbose);
|
|
38
|
+
(0, handleWorkingDirectory_1.handleWorkingDirectory)(argv.directory);
|
|
39
|
+
const appmapDir = await (0, locateAppMapDir_1.locateAppMapDir)(argv.appmapDir);
|
|
40
|
+
const codeObjectId = argv.codeObject;
|
|
41
|
+
if (argv.interactive) {
|
|
42
|
+
new ui_1.default(appmapDir, codeObjectId).start();
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
const context = new context_1.default(appmapDir, codeObjectId);
|
|
46
|
+
await context.findCodeObjects();
|
|
47
|
+
if (((_a = context.codeObjectMatches) === null || _a === void 0 ? void 0 : _a.length) === 0) {
|
|
48
|
+
return yargs_1.default.exit(1, new Error(`Code object '${context.codeObjectId}' not found`));
|
|
49
|
+
}
|
|
50
|
+
await context.buildStats();
|
|
51
|
+
console.log(JSON.stringify(context.stats, null, 2));
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
exports.handler = handler;
|
|
55
|
+
//# sourceMappingURL=inspect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../../src/cmds/inspect/inspect.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,oEAA4C;AAC5C,0DAAkC;AAClC,6EAA0E;AAC1E,+DAA4D;AAC5D,uCAAsC;AAEzB,QAAA,OAAO,GAAG,uBAAuB,CAAC;AAClC,QAAA,QAAQ,GACnB,6HAA6H,CAAC;AAEzH,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,EAAE;IAC9B,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;QAC7B,QAAQ,EAAE,uCAAuC;KAClD,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QACvB,QAAQ,EAAE,2BAA2B;QACrC,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,GAAG;KACX,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACxB,QAAQ,EAAE,8CAA8C;KACzD,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;QACzB,QAAQ,EAAE,kCAAkC;QAC5C,KAAK,EAAE,GAAG;QACV,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;AACvB,CAAC,CAAC;AAlBW,QAAA,OAAO,WAkBlB;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,IAAI,EAAE,EAAE;;IACpC,IAAA,eAAO,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,IAAA,+CAAsB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,MAAM,IAAA,iCAAe,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC;IAErC,IAAI,IAAI,CAAC,WAAW,EAAE;QACpB,IAAI,YAAE,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC;KACzC;SAAM;QACL,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACrD,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC;QAChC,IAAI,CAAA,MAAA,OAAO,CAAC,iBAAiB,0CAAE,MAAM,MAAK,CAAC,EAAE;YAC3C,OAAO,eAAK,CAAC,IAAI,CACf,CAAC,EACD,IAAI,KAAK,CAAC,gBAAgB,OAAO,CAAC,YAAY,aAAa,CAAC,CAC7D,CAAC;SACH;QACD,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;KACrD;AACH,CAAC,CAAC;AApBW,QAAA,OAAO,WAoBlB"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const chokidar = require('chokidar');
|
|
3
|
+
const fs = require('fs-extra');
|
|
4
|
+
const path = require('path');
|
|
3
5
|
const { verbose } = require('../utils');
|
|
4
6
|
const FingerprintQueue = require('./fingerprintQueue');
|
|
5
7
|
class FingerprintWatchCommand {
|
|
@@ -7,26 +9,37 @@ class FingerprintWatchCommand {
|
|
|
7
9
|
this.directory = directory;
|
|
8
10
|
this.print = true;
|
|
9
11
|
this.numProcessed = 0;
|
|
12
|
+
this.pidfilePath =
|
|
13
|
+
process.env.APPMAP_WRITE_PIDFILE &&
|
|
14
|
+
path.join(this.directory, 'index.pid');
|
|
10
15
|
}
|
|
11
|
-
|
|
12
|
-
if (
|
|
13
|
-
console.
|
|
16
|
+
removePidfile() {
|
|
17
|
+
if (this.pidfilePath) {
|
|
18
|
+
console.log(`Removing ${this.pidfilePath}`);
|
|
19
|
+
fs.removeSync(this.pidfilePath);
|
|
20
|
+
this.pidfilePath = null;
|
|
14
21
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
+
}
|
|
23
|
+
execute() {
|
|
24
|
+
return new Promise((resolve) => {
|
|
25
|
+
this.fpQueue = new FingerprintQueue();
|
|
26
|
+
this.fpQueue.setCounterFn(() => {
|
|
27
|
+
this.numProcessed += 1;
|
|
28
|
+
});
|
|
29
|
+
this.fpQueue.process();
|
|
30
|
+
this.watcher = chokidar.watch(`${this.directory}/**/*.appmap.json`, {
|
|
31
|
+
ignoreInitial: true,
|
|
32
|
+
});
|
|
33
|
+
this.watcher
|
|
34
|
+
.on('add', this.added.bind(this))
|
|
35
|
+
.on('change', this.changed.bind(this))
|
|
36
|
+
.on('unlink', this.removed.bind(this))
|
|
37
|
+
.on('ready', this.ready.bind(this, resolve));
|
|
22
38
|
});
|
|
23
|
-
this.watcher
|
|
24
|
-
.on('add', this.added.bind(this))
|
|
25
|
-
.on('change', this.changed.bind(this))
|
|
26
|
-
.on('unlink', this.removed.bind(this));
|
|
27
39
|
}
|
|
28
|
-
close() {
|
|
29
|
-
this.watcher.close();
|
|
40
|
+
async close() {
|
|
41
|
+
await this.watcher.close();
|
|
42
|
+
this.removePidfile();
|
|
30
43
|
this.watcher = null;
|
|
31
44
|
}
|
|
32
45
|
added(file) {
|
|
@@ -45,6 +58,16 @@ class FingerprintWatchCommand {
|
|
|
45
58
|
removed(file) {
|
|
46
59
|
console.warn(`TODO: AppMap removed: ${file}`);
|
|
47
60
|
}
|
|
61
|
+
ready(resolve) {
|
|
62
|
+
if (this.pidfilePath) {
|
|
63
|
+
fs.outputFileSync(this.pidfilePath, `${process.pid}`);
|
|
64
|
+
process.on('exit', this.removePidfile.bind(this));
|
|
65
|
+
}
|
|
66
|
+
if (verbose()) {
|
|
67
|
+
console.warn(`Watching appmaps in ${path.resolve(process.cwd(), this.directory)}`);
|
|
68
|
+
}
|
|
69
|
+
resolve();
|
|
70
|
+
}
|
|
48
71
|
enqueue(file) {
|
|
49
72
|
// This shouldn't be necessary, but it's passing through the wrong file names.
|
|
50
73
|
if (!file.includes('.appmap.json')) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fingerprintWatchCommand.js","sourceRoot":"","sources":["../../src/fingerprint/fingerprintWatchCommand.js"],"names":[],"mappings":";AAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACrC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACxC,MAAM,gBAAgB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAEvD,MAAM,uBAAuB;IAC3B,YAAY,SAAS;QACnB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"fingerprintWatchCommand.js","sourceRoot":"","sources":["../../src/fingerprint/fingerprintWatchCommand.js"],"names":[],"mappings":"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"}
|
package/built/functionStats.js
CHANGED
|
@@ -85,6 +85,9 @@ class FunctionStats {
|
|
|
85
85
|
.flat()),
|
|
86
86
|
].sort();
|
|
87
87
|
}
|
|
88
|
+
/**
|
|
89
|
+
* @returns {string[]}
|
|
90
|
+
*/
|
|
88
91
|
get callers() {
|
|
89
92
|
return [
|
|
90
93
|
...new Set(this.eventMatches
|
|
@@ -94,6 +97,9 @@ class FunctionStats {
|
|
|
94
97
|
.filter((e) => e)),
|
|
95
98
|
];
|
|
96
99
|
}
|
|
100
|
+
/**
|
|
101
|
+
* @returns {string[]}
|
|
102
|
+
*/
|
|
97
103
|
get ancestors() {
|
|
98
104
|
return [
|
|
99
105
|
...new Set(this.eventMatches
|
|
@@ -104,6 +110,9 @@ class FunctionStats {
|
|
|
104
110
|
.filter((e) => e)),
|
|
105
111
|
];
|
|
106
112
|
}
|
|
113
|
+
/**
|
|
114
|
+
* @returns {string[]}
|
|
115
|
+
*/
|
|
107
116
|
get descendants() {
|
|
108
117
|
return [
|
|
109
118
|
...new Set(this.eventMatches
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"functionStats.js","sourceRoot":"","sources":["../src/functionStats.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"functionStats.js","sourceRoot":"","sources":["../src/functionStats.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const assert_1 = __importDefault(require("assert"));
|
|
7
|
+
const events_1 = __importDefault(require("events"));
|
|
8
|
+
const functionStats_1 = __importDefault(require("../functionStats"));
|
|
9
|
+
const findCodeObjects_1 = __importDefault(require("../search/findCodeObjects"));
|
|
10
|
+
const findEvents_1 = __importDefault(require("../search/findEvents"));
|
|
11
|
+
class Context extends events_1.default {
|
|
12
|
+
constructor(appmapDir, codeObjectId) {
|
|
13
|
+
super();
|
|
14
|
+
this.appmapDir = appmapDir;
|
|
15
|
+
this.filters = [];
|
|
16
|
+
this.saves = [];
|
|
17
|
+
this._codeObjectId = codeObjectId;
|
|
18
|
+
}
|
|
19
|
+
get codeObjectId() {
|
|
20
|
+
return this._codeObjectId;
|
|
21
|
+
}
|
|
22
|
+
set codeObjectId(codeObjectId) {
|
|
23
|
+
this._codeObjectId = codeObjectId;
|
|
24
|
+
this.codeObjectMatches = undefined;
|
|
25
|
+
this.stats = undefined;
|
|
26
|
+
}
|
|
27
|
+
async findCodeObjects() {
|
|
28
|
+
const finder = new findCodeObjects_1.default(this.appmapDir, this.codeObjectId);
|
|
29
|
+
this.codeObjectMatches = await finder.find((count) => this.emit('start', count), () => this.emit('increment'));
|
|
30
|
+
this.emit('stop');
|
|
31
|
+
}
|
|
32
|
+
async buildStats() {
|
|
33
|
+
(0, assert_1.default)(this.codeObjectMatches, `codeObjectMatches is not yet computed`);
|
|
34
|
+
this.emit('start', this.codeObjectMatches.length);
|
|
35
|
+
const result = [];
|
|
36
|
+
await Promise.all(this.codeObjectMatches.map(async (codeObjectMatch) => {
|
|
37
|
+
const findEvents = new findEvents_1.default(codeObjectMatch.appmap, codeObjectMatch.codeObject);
|
|
38
|
+
findEvents.filter(this.filters);
|
|
39
|
+
const events = await findEvents.matches();
|
|
40
|
+
result.push(...events);
|
|
41
|
+
this.emit('increment');
|
|
42
|
+
}));
|
|
43
|
+
this.emit('stop');
|
|
44
|
+
this.emit('collate');
|
|
45
|
+
this.stats = new functionStats_1.default(result);
|
|
46
|
+
}
|
|
47
|
+
save() {
|
|
48
|
+
this.saves.push(this.codeObjectId);
|
|
49
|
+
}
|
|
50
|
+
async filter(filter) {
|
|
51
|
+
this.filters.push(filter);
|
|
52
|
+
await this.buildStats();
|
|
53
|
+
}
|
|
54
|
+
async clearFilters() {
|
|
55
|
+
this.filters = [];
|
|
56
|
+
await this.buildStats();
|
|
57
|
+
}
|
|
58
|
+
async undoFilter() {
|
|
59
|
+
if (this.filters.length > 0) {
|
|
60
|
+
this.filters.pop();
|
|
61
|
+
}
|
|
62
|
+
await this.buildStats();
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
exports.default = Context;
|
|
66
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/inspect/context.ts"],"names":[],"mappings":"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"}
|
package/built/inspect/filter.js
CHANGED
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
const { Table } = require('console-table-printer');
|
|
3
3
|
const Fields = require('./fields');
|
|
4
4
|
const filterFields = Fields.fields.filter((f) => f.filterName);
|
|
5
|
-
|
|
5
|
+
/** @typedef {import('./context').default} Context */
|
|
6
|
+
/**
|
|
7
|
+
* @param {Context} context
|
|
8
|
+
*/
|
|
9
|
+
const filter = (rl, context, home) => {
|
|
6
10
|
const filterFieldIndexes = Fields.selectIndexes(filterFields.map((f) => f.name));
|
|
7
11
|
const dsTable = new Table({
|
|
8
12
|
title: 'Filter data set',
|
|
@@ -30,12 +34,12 @@ const filter = (rl, filters, stats, buildStats, home) => {
|
|
|
30
34
|
}
|
|
31
35
|
const filterField = Fields.fieldFromIndex(parseInt(num, 10) - 1);
|
|
32
36
|
function retry() {
|
|
33
|
-
filter(rl,
|
|
37
|
+
filter(rl, context, home);
|
|
34
38
|
}
|
|
35
39
|
if (!filterField || !filterField.filterName) {
|
|
36
40
|
return retry();
|
|
37
41
|
}
|
|
38
|
-
const statsValues = stats[filterField.name];
|
|
42
|
+
const statsValues = context.stats[filterField.name];
|
|
39
43
|
if (!statsValues) {
|
|
40
44
|
return retry();
|
|
41
45
|
}
|
|
@@ -70,8 +74,7 @@ const filter = (rl, filters, stats, buildStats, home) => {
|
|
|
70
74
|
const value = statsValues[parseInt(index, 10) - 1];
|
|
71
75
|
if (value) {
|
|
72
76
|
const newFilter = { name: filterField.filterName, value };
|
|
73
|
-
|
|
74
|
-
await buildStats();
|
|
77
|
+
await context.filter(newFilter);
|
|
75
78
|
console.log();
|
|
76
79
|
home();
|
|
77
80
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/inspect/filter.js"],"names":[],"mappings":";AAAA,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACnD,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEnC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;AAE/D,MAAM,MAAM,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/inspect/filter.js"],"names":[],"mappings":"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"}
|
package/built/inspect/home.js
CHANGED
|
@@ -4,22 +4,27 @@ const { Table } = require('console-table-printer');
|
|
|
4
4
|
const Fields = require('./fields');
|
|
5
5
|
/** @typedef {import('../search/types').FunctionStats} FunctionStats */
|
|
6
6
|
/** @typedef {import('./types').Filter} Filter */
|
|
7
|
+
/** @typedef {import('./context').default} Context */
|
|
7
8
|
const MAX_VALUE_LENGTH = 60;
|
|
8
9
|
/**
|
|
9
|
-
*
|
|
10
|
-
* @param {string} codeObjectId
|
|
11
|
-
* @param {Filter[]} filters
|
|
12
|
-
* @param {FunctionStats} stats
|
|
10
|
+
* @param {Context} context
|
|
13
11
|
* @param {function(): void} getCommand
|
|
14
12
|
*/
|
|
15
|
-
const home = (
|
|
16
|
-
if (filters.length > 0) {
|
|
13
|
+
const home = (context, getCommand) => {
|
|
14
|
+
if (context.filters.length > 0) {
|
|
17
15
|
console.log('Filters:');
|
|
18
|
-
console.log(filters
|
|
16
|
+
console.log(context.filters
|
|
17
|
+
.map((filter) => `${filter.name} = ${filter.value}`)
|
|
18
|
+
.join('\n'));
|
|
19
|
+
console.log();
|
|
20
|
+
}
|
|
21
|
+
if (context.saves.length > 0) {
|
|
22
|
+
console.log('Saved ids:');
|
|
23
|
+
console.log(context.saves.join('\n'));
|
|
19
24
|
console.log();
|
|
20
25
|
}
|
|
21
26
|
const table = new Table({
|
|
22
|
-
title: codeObjectId,
|
|
27
|
+
title: context.codeObjectId,
|
|
23
28
|
columns: [
|
|
24
29
|
{ name: 'index', alignment: 'left', title: 'Index' },
|
|
25
30
|
{ name: 'name', alignment: 'left', title: 'Name' },
|
|
@@ -27,7 +32,7 @@ const home = (codeObjectId, filters, stats, getCommand) => {
|
|
|
27
32
|
],
|
|
28
33
|
});
|
|
29
34
|
Fields.fields.forEach((field, index) => {
|
|
30
|
-
const values = stats[field.name];
|
|
35
|
+
const values = context.stats[field.name];
|
|
31
36
|
let printValue = null;
|
|
32
37
|
if (values) {
|
|
33
38
|
printValue = values.length;
|