@pristine-ts/cli 2.0.7 → 2.0.16
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/dist/lib/cjs/bin.js +0 -0
- package/dist/lib/cjs/bootstrap/app-module-cache.js +71 -0
- package/dist/lib/cjs/bootstrap/app-module-cache.js.map +1 -0
- package/dist/lib/cjs/bootstrap/app-module-discoverer.js +119 -0
- package/dist/lib/cjs/bootstrap/app-module-discoverer.js.map +1 -0
- package/dist/lib/cjs/bootstrap/app-module-discovery-candidate.js +21 -0
- package/dist/lib/cjs/bootstrap/app-module-discovery-candidate.js.map +1 -0
- package/dist/lib/cjs/bootstrap/app-module-discovery-reason.enum.js +15 -0
- package/dist/lib/cjs/bootstrap/app-module-discovery-reason.enum.js.map +1 -0
- package/dist/lib/cjs/bootstrap/app-module-prompt.js +78 -0
- package/dist/lib/cjs/bootstrap/app-module-prompt.js.map +1 -0
- package/dist/lib/cjs/bootstrap/build-staleness-prompt.js +12 -13
- package/dist/lib/cjs/bootstrap/build-staleness-prompt.js.map +1 -1
- package/dist/lib/cjs/bootstrap/init-prompt.js +16 -47
- package/dist/lib/cjs/bootstrap/init-prompt.js.map +1 -1
- package/dist/lib/cjs/cli.configuration-keys.js +24 -0
- package/dist/lib/cjs/cli.configuration-keys.js.map +1 -0
- package/dist/lib/cjs/cli.js +23 -10
- package/dist/lib/cjs/cli.js.map +1 -1
- package/dist/lib/cjs/cli.module.js +29 -1
- package/dist/lib/cjs/cli.module.js.map +1 -1
- package/dist/lib/cjs/commands/commands.js +6 -0
- package/dist/lib/cjs/commands/commands.js.map +1 -1
- package/dist/lib/cjs/commands/config-init.command.js +133 -0
- package/dist/lib/cjs/commands/config-init.command.js.map +1 -0
- package/dist/lib/cjs/commands/logs-alias.command.js +49 -0
- package/dist/lib/cjs/commands/logs-alias.command.js.map +1 -0
- package/dist/lib/cjs/commands/logs.command-options.js +72 -0
- package/dist/lib/cjs/commands/logs.command-options.js.map +1 -0
- package/dist/lib/cjs/commands/logs.command.js +102 -0
- package/dist/lib/cjs/commands/logs.command.js.map +1 -0
- package/dist/lib/cjs/commands/requests-alias.command.js +49 -0
- package/dist/lib/cjs/commands/requests-alias.command.js.map +1 -0
- package/dist/lib/cjs/commands/requests.command-options.js +26 -0
- package/dist/lib/cjs/commands/requests.command-options.js.map +1 -0
- package/dist/lib/cjs/commands/requests.command.js +88 -0
- package/dist/lib/cjs/commands/requests.command.js.map +1 -0
- package/dist/lib/cjs/commands/trace-alias.command.js +49 -0
- package/dist/lib/cjs/commands/trace-alias.command.js.map +1 -0
- package/dist/lib/cjs/commands/trace.command-options.js +59 -0
- package/dist/lib/cjs/commands/trace.command-options.js.map +1 -0
- package/dist/lib/cjs/commands/trace.command.js +84 -0
- package/dist/lib/cjs/commands/trace.command.js.map +1 -0
- package/dist/lib/cjs/config/config-loader.js +34 -13
- package/dist/lib/cjs/config/config-loader.js.map +1 -1
- package/dist/lib/cjs/decorators/command-parameter.decorator.js +40 -0
- package/dist/lib/cjs/decorators/command-parameter.decorator.js.map +1 -0
- package/dist/lib/cjs/decorators/decorators.js +18 -0
- package/dist/lib/cjs/decorators/decorators.js.map +1 -0
- package/dist/lib/cjs/enums/cli-decorator-metadata-keyname.enum.js +14 -0
- package/dist/lib/cjs/enums/cli-decorator-metadata-keyname.enum.js.map +1 -0
- package/dist/lib/cjs/enums/enums.js +19 -0
- package/dist/lib/cjs/enums/enums.js.map +1 -0
- package/dist/lib/cjs/enums/exit-code.enum.js +9 -0
- package/dist/lib/cjs/enums/exit-code.enum.js.map +1 -0
- package/dist/lib/cjs/enums/terminal-key-name.enum.js +21 -0
- package/dist/lib/cjs/enums/terminal-key-name.enum.js.map +1 -0
- package/dist/lib/cjs/errors/cli-error-code.enum.js +11 -1
- package/dist/lib/cjs/errors/cli-error-code.enum.js.map +1 -1
- package/dist/lib/cjs/errors/errors.js +1 -0
- package/dist/lib/cjs/errors/errors.js.map +1 -1
- package/dist/lib/cjs/errors/prompt-cancelled.error.js +25 -0
- package/dist/lib/cjs/errors/prompt-cancelled.error.js.map +1 -0
- package/dist/lib/cjs/event-handlers/cli.event-handler.js +21 -65
- package/dist/lib/cjs/event-handlers/cli.event-handler.js.map +1 -1
- package/dist/lib/cjs/event-handlers/event-handlers.js +1 -0
- package/dist/lib/cjs/event-handlers/event-handlers.js.map +1 -1
- package/dist/lib/cjs/event-handlers/repl-start.event-handler.js +280 -0
- package/dist/lib/cjs/event-handlers/repl-start.event-handler.js.map +1 -0
- package/dist/lib/cjs/event-payloads/event-payloads.js +1 -0
- package/dist/lib/cjs/event-payloads/event-payloads.js.map +1 -1
- package/dist/lib/cjs/event-payloads/start-repl.event-payload.js +19 -0
- package/dist/lib/cjs/event-payloads/start-repl.event-payload.js.map +1 -0
- package/dist/lib/cjs/interfaces/interfaces.js +1 -0
- package/dist/lib/cjs/interfaces/interfaces.js.map +1 -1
- package/dist/lib/cjs/interfaces/terminal-key.interface.js +3 -0
- package/dist/lib/cjs/interfaces/terminal-key.interface.js.map +1 -0
- package/dist/lib/cjs/managers/cli-prompt.manager.js +181 -15
- package/dist/lib/cjs/managers/cli-prompt.manager.js.map +1 -1
- package/dist/lib/cjs/managers/console.manager.js +277 -0
- package/dist/lib/cjs/managers/console.manager.js.map +1 -0
- package/dist/lib/cjs/managers/managers.js +1 -0
- package/dist/lib/cjs/managers/managers.js.map +1 -1
- package/dist/lib/cjs/managers/repl-session.js +251 -0
- package/dist/lib/cjs/managers/repl-session.js.map +1 -0
- package/dist/lib/cjs/managers/terminal-key-reader.manager.js +99 -0
- package/dist/lib/cjs/managers/terminal-key-reader.manager.js.map +1 -0
- package/dist/lib/cjs/mappers/command-event.mapper.js +48 -8
- package/dist/lib/cjs/mappers/command-event.mapper.js.map +1 -1
- package/dist/lib/cjs/mappers/mappers.js +1 -0
- package/dist/lib/cjs/mappers/mappers.js.map +1 -1
- package/dist/lib/cjs/mappers/repl-start-event.mapper.js +80 -0
- package/dist/lib/cjs/mappers/repl-start-event.mapper.js.map +1 -0
- package/dist/lib/cjs/options/command-parameter.options.js +3 -0
- package/dist/lib/cjs/options/command-parameter.options.js.map +1 -0
- package/dist/lib/cjs/options/options.js +1 -0
- package/dist/lib/cjs/options/options.js.map +1 -1
- package/dist/lib/cjs/services/command-argument-resolver.js +62 -0
- package/dist/lib/cjs/services/command-argument-resolver.js.map +1 -0
- package/dist/lib/cjs/services/command-options-resolver.js +114 -0
- package/dist/lib/cjs/services/command-options-resolver.js.map +1 -0
- package/dist/lib/cjs/services/command-parameter-prompter.js +311 -0
- package/dist/lib/cjs/services/command-parameter-prompter.js.map +1 -0
- package/dist/lib/cjs/services/services.js +20 -0
- package/dist/lib/cjs/services/services.js.map +1 -0
- package/dist/lib/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/lib/cjs/types/start-repl-event-response.type.js +13 -0
- package/dist/lib/cjs/types/start-repl-event-response.type.js.map +1 -0
- package/dist/lib/cjs/types/types.js +1 -0
- package/dist/lib/cjs/types/types.js.map +1 -1
- package/dist/lib/cjs/utils/boolean-answer-parser.js +25 -0
- package/dist/lib/cjs/utils/boolean-answer-parser.js.map +1 -0
- package/dist/lib/cjs/utils/pristine-argv.js +87 -0
- package/dist/lib/cjs/utils/pristine-argv.js.map +1 -0
- package/dist/lib/cjs/utils/terminal-key-decoder.js +71 -0
- package/dist/lib/cjs/utils/terminal-key-decoder.js.map +1 -0
- package/dist/lib/esm/bootstrap/app-module-cache.js +65 -0
- package/dist/lib/esm/bootstrap/app-module-cache.js.map +1 -0
- package/dist/lib/esm/bootstrap/app-module-discoverer.js +113 -0
- package/dist/lib/esm/bootstrap/app-module-discoverer.js.map +1 -0
- package/dist/lib/esm/bootstrap/app-module-discovery-candidate.js +17 -0
- package/dist/lib/esm/bootstrap/app-module-discovery-candidate.js.map +1 -0
- package/dist/lib/esm/bootstrap/app-module-discovery-reason.enum.js +12 -0
- package/dist/lib/esm/bootstrap/app-module-discovery-reason.enum.js.map +1 -0
- package/dist/lib/esm/bootstrap/app-module-prompt.js +75 -0
- package/dist/lib/esm/bootstrap/app-module-prompt.js.map +1 -0
- package/dist/lib/esm/bootstrap/build-staleness-prompt.js +12 -13
- package/dist/lib/esm/bootstrap/build-staleness-prompt.js.map +1 -1
- package/dist/lib/esm/bootstrap/init-prompt.js +16 -47
- package/dist/lib/esm/bootstrap/init-prompt.js.map +1 -1
- package/dist/lib/esm/cli.configuration-keys.js +21 -0
- package/dist/lib/esm/cli.configuration-keys.js.map +1 -0
- package/dist/lib/esm/cli.js +23 -10
- package/dist/lib/esm/cli.js.map +1 -1
- package/dist/lib/esm/cli.module.js +29 -1
- package/dist/lib/esm/cli.module.js.map +1 -1
- package/dist/lib/esm/commands/commands.js +6 -0
- package/dist/lib/esm/commands/commands.js.map +1 -1
- package/dist/lib/esm/commands/config-init.command.js +127 -0
- package/dist/lib/esm/commands/config-init.command.js.map +1 -0
- package/dist/lib/esm/commands/logs-alias.command.js +46 -0
- package/dist/lib/esm/commands/logs-alias.command.js.map +1 -0
- package/dist/lib/esm/commands/logs.command-options.js +68 -0
- package/dist/lib/esm/commands/logs.command-options.js.map +1 -0
- package/dist/lib/esm/commands/logs.command.js +99 -0
- package/dist/lib/esm/commands/logs.command.js.map +1 -0
- package/dist/lib/esm/commands/requests-alias.command.js +46 -0
- package/dist/lib/esm/commands/requests-alias.command.js.map +1 -0
- package/dist/lib/esm/commands/requests.command-options.js +22 -0
- package/dist/lib/esm/commands/requests.command-options.js.map +1 -0
- package/dist/lib/esm/commands/requests.command.js +85 -0
- package/dist/lib/esm/commands/requests.command.js.map +1 -0
- package/dist/lib/esm/commands/trace-alias.command.js +46 -0
- package/dist/lib/esm/commands/trace-alias.command.js.map +1 -0
- package/dist/lib/esm/commands/trace.command-options.js +55 -0
- package/dist/lib/esm/commands/trace.command-options.js.map +1 -0
- package/dist/lib/esm/commands/trace.command.js +81 -0
- package/dist/lib/esm/commands/trace.command.js.map +1 -0
- package/dist/lib/esm/config/config-loader.js +34 -13
- package/dist/lib/esm/config/config-loader.js.map +1 -1
- package/dist/lib/esm/decorators/command-parameter.decorator.js +36 -0
- package/dist/lib/esm/decorators/command-parameter.decorator.js.map +1 -0
- package/dist/lib/esm/decorators/decorators.js +2 -0
- package/dist/lib/esm/decorators/decorators.js.map +1 -0
- package/dist/lib/esm/enums/cli-decorator-metadata-keyname.enum.js +11 -0
- package/dist/lib/esm/enums/cli-decorator-metadata-keyname.enum.js.map +1 -0
- package/dist/lib/esm/enums/enums.js +3 -0
- package/dist/lib/esm/enums/enums.js.map +1 -0
- package/dist/lib/esm/enums/exit-code.enum.js +6 -0
- package/dist/lib/esm/enums/exit-code.enum.js.map +1 -0
- package/dist/lib/esm/enums/terminal-key-name.enum.js +18 -0
- package/dist/lib/esm/enums/terminal-key-name.enum.js.map +1 -0
- package/dist/lib/esm/errors/cli-error-code.enum.js +11 -1
- package/dist/lib/esm/errors/cli-error-code.enum.js.map +1 -1
- package/dist/lib/esm/errors/errors.js +1 -0
- package/dist/lib/esm/errors/errors.js.map +1 -1
- package/dist/lib/esm/errors/prompt-cancelled.error.js +21 -0
- package/dist/lib/esm/errors/prompt-cancelled.error.js.map +1 -0
- package/dist/lib/esm/event-handlers/cli.event-handler.js +22 -66
- package/dist/lib/esm/event-handlers/cli.event-handler.js.map +1 -1
- package/dist/lib/esm/event-handlers/event-handlers.js +1 -0
- package/dist/lib/esm/event-handlers/event-handlers.js.map +1 -1
- package/dist/lib/esm/event-handlers/repl-start.event-handler.js +244 -0
- package/dist/lib/esm/event-handlers/repl-start.event-handler.js.map +1 -0
- package/dist/lib/esm/event-payloads/event-payloads.js +1 -0
- package/dist/lib/esm/event-payloads/event-payloads.js.map +1 -1
- package/dist/lib/esm/event-payloads/start-repl.event-payload.js +15 -0
- package/dist/lib/esm/event-payloads/start-repl.event-payload.js.map +1 -0
- package/dist/lib/esm/interfaces/interfaces.js +1 -0
- package/dist/lib/esm/interfaces/interfaces.js.map +1 -1
- package/dist/lib/esm/interfaces/terminal-key.interface.js +2 -0
- package/dist/lib/esm/interfaces/terminal-key.interface.js.map +1 -0
- package/dist/lib/esm/managers/cli-prompt.manager.js +182 -16
- package/dist/lib/esm/managers/cli-prompt.manager.js.map +1 -1
- package/dist/lib/esm/managers/console.manager.js +241 -0
- package/dist/lib/esm/managers/console.manager.js.map +1 -0
- package/dist/lib/esm/managers/managers.js +1 -0
- package/dist/lib/esm/managers/managers.js.map +1 -1
- package/dist/lib/esm/managers/repl-session.js +215 -0
- package/dist/lib/esm/managers/repl-session.js.map +1 -0
- package/dist/lib/esm/managers/terminal-key-reader.manager.js +96 -0
- package/dist/lib/esm/managers/terminal-key-reader.manager.js.map +1 -0
- package/dist/lib/esm/mappers/command-event.mapper.js +49 -9
- package/dist/lib/esm/mappers/command-event.mapper.js.map +1 -1
- package/dist/lib/esm/mappers/mappers.js +1 -0
- package/dist/lib/esm/mappers/mappers.js.map +1 -1
- package/dist/lib/esm/mappers/repl-start-event.mapper.js +77 -0
- package/dist/lib/esm/mappers/repl-start-event.mapper.js.map +1 -0
- package/dist/lib/esm/options/command-parameter.options.js +2 -0
- package/dist/lib/esm/options/command-parameter.options.js.map +1 -0
- package/dist/lib/esm/options/options.js +1 -0
- package/dist/lib/esm/options/options.js.map +1 -1
- package/dist/lib/esm/services/command-argument-resolver.js +59 -0
- package/dist/lib/esm/services/command-argument-resolver.js.map +1 -0
- package/dist/lib/esm/services/command-options-resolver.js +111 -0
- package/dist/lib/esm/services/command-options-resolver.js.map +1 -0
- package/dist/lib/esm/services/command-parameter-prompter.js +308 -0
- package/dist/lib/esm/services/command-parameter-prompter.js.map +1 -0
- package/dist/lib/esm/services/services.js +4 -0
- package/dist/lib/esm/services/services.js.map +1 -0
- package/dist/lib/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/lib/esm/types/start-repl-event-response.type.js +9 -0
- package/dist/lib/esm/types/start-repl-event-response.type.js.map +1 -0
- package/dist/lib/esm/types/types.js +1 -0
- package/dist/lib/esm/types/types.js.map +1 -1
- package/dist/lib/esm/utils/boolean-answer-parser.js +21 -0
- package/dist/lib/esm/utils/boolean-answer-parser.js.map +1 -0
- package/dist/lib/esm/utils/pristine-argv.js +50 -0
- package/dist/lib/esm/utils/pristine-argv.js.map +1 -0
- package/dist/lib/esm/utils/terminal-key-decoder.js +67 -0
- package/dist/lib/esm/utils/terminal-key-decoder.js.map +1 -0
- package/dist/types/bootstrap/app-module-cache.d.ts +15 -0
- package/dist/types/bootstrap/app-module-discoverer.d.ts +30 -0
- package/dist/types/bootstrap/app-module-discovery-candidate.d.ts +18 -0
- package/dist/types/bootstrap/app-module-discovery-reason.enum.d.ts +10 -0
- package/dist/types/bootstrap/app-module-prompt.d.ts +20 -0
- package/dist/types/bootstrap/build-staleness-prompt.d.ts +3 -3
- package/dist/types/bootstrap/init-prompt.d.ts +5 -5
- package/dist/types/cli.configuration-keys.d.ts +32 -0
- package/dist/types/cli.d.ts +8 -4
- package/dist/types/cli.module.d.ts +4 -0
- package/dist/types/commands/commands.d.ts +6 -0
- package/dist/types/commands/config-init.command.d.ts +18 -0
- package/dist/types/commands/logs-alias.command.d.ts +14 -0
- package/dist/types/commands/logs.command-options.d.ts +38 -0
- package/dist/types/commands/logs.command.d.ts +31 -0
- package/dist/types/commands/requests-alias.command.d.ts +14 -0
- package/dist/types/commands/requests.command-options.d.ts +8 -0
- package/dist/types/commands/requests.command.d.ts +25 -0
- package/dist/types/commands/trace-alias.command.d.ts +14 -0
- package/dist/types/commands/trace.command-options.d.ts +31 -0
- package/dist/types/commands/trace.command.d.ts +21 -0
- package/dist/types/config/config-loader.d.ts +15 -3
- package/dist/types/decorators/command-parameter.decorator.d.ts +30 -0
- package/dist/types/decorators/decorators.d.ts +1 -0
- package/dist/types/enums/cli-decorator-metadata-keyname.enum.d.ts +9 -0
- package/dist/types/enums/enums.d.ts +2 -0
- package/dist/types/enums/exit-code.enum.d.ts +4 -0
- package/dist/types/enums/terminal-key-name.enum.d.ts +16 -0
- package/dist/types/errors/cli-error-code.enum.d.ts +12 -2
- package/dist/types/errors/errors.d.ts +1 -0
- package/dist/types/errors/prompt-cancelled.error.d.ts +13 -0
- package/dist/types/event-handlers/cli.event-handler.d.ts +16 -13
- package/dist/types/event-handlers/event-handlers.d.ts +1 -0
- package/dist/types/event-handlers/repl-start.event-handler.d.ts +70 -0
- package/dist/types/event-payloads/event-payloads.d.ts +1 -0
- package/dist/types/event-payloads/start-repl.event-payload.d.ts +13 -0
- package/dist/types/interfaces/interfaces.d.ts +1 -0
- package/dist/types/interfaces/terminal-key.interface.d.ts +11 -0
- package/dist/types/managers/cli-prompt.manager.d.ts +63 -6
- package/dist/types/managers/console.manager.d.ts +93 -0
- package/dist/types/managers/managers.d.ts +1 -0
- package/dist/types/managers/repl-session.d.ts +62 -0
- package/dist/types/managers/terminal-key-reader.manager.d.ts +31 -0
- package/dist/types/mappers/command-event.mapper.d.ts +10 -1
- package/dist/types/mappers/mappers.d.ts +1 -0
- package/dist/types/mappers/repl-start-event.mapper.d.ts +28 -0
- package/dist/types/options/command-parameter.options.d.ts +29 -0
- package/dist/types/options/options.d.ts +1 -0
- package/dist/types/services/command-argument-resolver.d.ts +24 -0
- package/dist/types/services/command-options-resolver.d.ts +35 -0
- package/dist/types/services/command-parameter-prompter.d.ts +113 -0
- package/dist/types/services/services.d.ts +3 -0
- package/dist/types/types/start-repl-event-response.type.d.ts +10 -0
- package/dist/types/types/types.d.ts +1 -0
- package/dist/types/utils/boolean-answer-parser.d.ts +11 -0
- package/dist/types/utils/pristine-argv.d.ts +33 -0
- package/dist/types/utils/terminal-key-decoder.d.ts +28 -0
- package/package.json +16 -12
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
12
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
13
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
14
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
15
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
16
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
17
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
var RequestsCommand_1;
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.RequestsCommand = void 0;
|
|
23
|
+
const common_1 = require("@pristine-ts/common");
|
|
24
|
+
const tsyringe_1 = require("tsyringe");
|
|
25
|
+
const observability_1 = require("@pristine-ts/observability");
|
|
26
|
+
const cli_output_manager_1 = require("../managers/cli-output.manager");
|
|
27
|
+
const cli_module_keyname_1 = require("../cli.module.keyname");
|
|
28
|
+
const requests_command_options_1 = require("./requests.command-options");
|
|
29
|
+
/**
|
|
30
|
+
* Lists recent requests captured in the observability store — the entry point for
|
|
31
|
+
* "what just happened, and what's the event id I want to inspect?".
|
|
32
|
+
*
|
|
33
|
+
* Pulls summaries from every captured process newest-first. A pure report command: all
|
|
34
|
+
* output goes through `CliOutput` so it pipes cleanly.
|
|
35
|
+
*
|
|
36
|
+
* Flags: `--limit <n>` (default 20).
|
|
37
|
+
*/
|
|
38
|
+
let RequestsCommand = RequestsCommand_1 = class RequestsCommand {
|
|
39
|
+
constructor(cliOutput, traceStore) {
|
|
40
|
+
this.cliOutput = cliOutput;
|
|
41
|
+
this.traceStore = traceStore;
|
|
42
|
+
this.optionsType = requests_command_options_1.RequestsCommandOptions;
|
|
43
|
+
this.name = "p:requests";
|
|
44
|
+
this.description = "List recent requests captured in the observability store.";
|
|
45
|
+
}
|
|
46
|
+
run(args) {
|
|
47
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
48
|
+
var _a;
|
|
49
|
+
const limit = (_a = args.limit) !== null && _a !== void 0 ? _a : RequestsCommand_1.DEFAULT_LIMIT;
|
|
50
|
+
const summaries = this.traceStore.recentRequests(limit);
|
|
51
|
+
if (summaries.length === 0) {
|
|
52
|
+
this.cliOutput.writeLine("No captured requests yet. Run your app first.");
|
|
53
|
+
return common_1.ExitCode.Success;
|
|
54
|
+
}
|
|
55
|
+
const headers = ["TIME", "METHOD", "PATH", "STATUS", "DURATION", "EVENT"];
|
|
56
|
+
const rows = summaries.map(summary => {
|
|
57
|
+
var _a, _b;
|
|
58
|
+
return [
|
|
59
|
+
new Date(summary.startedAt).toTimeString().slice(0, 8),
|
|
60
|
+
(_a = summary.httpMethod) !== null && _a !== void 0 ? _a : "-",
|
|
61
|
+
(_b = summary.httpPath) !== null && _b !== void 0 ? _b : summary.rootKeyname,
|
|
62
|
+
summary.httpStatus !== undefined ? String(summary.httpStatus) : "-",
|
|
63
|
+
`${summary.durationMs}ms`,
|
|
64
|
+
summary.eventId,
|
|
65
|
+
];
|
|
66
|
+
});
|
|
67
|
+
for (const line of this.renderTable(headers, rows)) {
|
|
68
|
+
this.cliOutput.writeLine(line);
|
|
69
|
+
}
|
|
70
|
+
return common_1.ExitCode.Success;
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
renderTable(headers, rows) {
|
|
74
|
+
const widths = headers.map((header, column) => Math.max(header.length, ...rows.map(row => row[column].length)));
|
|
75
|
+
const formatRow = (cells) => cells.map((cell, column) => cell.padEnd(widths[column])).join(" ").trimEnd();
|
|
76
|
+
return [formatRow(headers), ...rows.map(formatRow)];
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
exports.RequestsCommand = RequestsCommand;
|
|
80
|
+
RequestsCommand.DEFAULT_LIMIT = 20;
|
|
81
|
+
exports.RequestsCommand = RequestsCommand = RequestsCommand_1 = __decorate([
|
|
82
|
+
(0, common_1.tag)(common_1.ServiceDefinitionTagEnum.Command),
|
|
83
|
+
(0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname),
|
|
84
|
+
(0, tsyringe_1.injectable)(),
|
|
85
|
+
__metadata("design:paramtypes", [cli_output_manager_1.CliOutput,
|
|
86
|
+
observability_1.TraceStore])
|
|
87
|
+
], RequestsCommand);
|
|
88
|
+
//# sourceMappingURL=requests.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requests.command.js","sourceRoot":"","sources":["../../../../src/commands/requests.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA0F;AAC1F,uCAAoC;AACpC,8DAAsD;AAEtD,uEAAyD;AACzD,8DAAuD;AACvD,yEAAkE;AAElE;;;;;;;;GAQG;AAII,IAAM,eAAe,uBAArB,MAAM,eAAe;IAO1B,YACmB,SAAoB,EACpB,UAAsB;QADtB,cAAS,GAAT,SAAS,CAAW;QACpB,eAAU,GAAV,UAAU,CAAY;QARzC,gBAAW,GAAG,iDAAsB,CAAC;QACrC,SAAI,GAAG,YAAY,CAAC;QACpB,gBAAW,GAAG,2DAA2D,CAAC;IAQ1E,CAAC;IAEK,GAAG,CAAC,IAA4B;;;YACpC,MAAM,KAAK,GAAG,MAAA,IAAI,CAAC,KAAK,mCAAI,iBAAe,CAAC,aAAa,CAAC;YAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAExD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,+CAA+C,CAAC,CAAC;gBAC1E,OAAO,iBAAQ,CAAC,OAAO,CAAC;YAC1B,CAAC;YAED,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YAC1E,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;;gBAAC,OAAA;oBACpC,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;oBACtD,MAAA,OAAO,CAAC,UAAU,mCAAI,GAAG;oBACzB,MAAA,OAAO,CAAC,QAAQ,mCAAI,OAAO,CAAC,WAAW;oBACvC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG;oBACnE,GAAG,OAAO,CAAC,UAAU,IAAI;oBACzB,OAAO,CAAC,OAAO;iBAChB,CAAA;aAAA,CAAC,CAAC;YAEH,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;gBACnD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC;YAED,OAAO,iBAAQ,CAAC,OAAO,CAAC;QAC1B,CAAC;KAAA;IAEO,WAAW,CAAC,OAAiB,EAAE,IAAgB;QACrD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAC5C,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,CAAC,KAAe,EAAU,EAAE,CAC5C,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;QAChF,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IACtD,CAAC;;AA7CU,0CAAe;AAKF,6BAAa,GAAG,EAAE,AAAL,CAAM;0BALhC,eAAe;IAH3B,IAAA,YAAG,EAAC,iCAAwB,CAAC,OAAO,CAAC;IACrC,IAAA,qBAAY,EAAC,qCAAgB,CAAC;IAC9B,IAAA,qBAAU,GAAE;qCASmB,8BAAS;QACR,0BAAU;GAT9B,eAAe,CA8C3B"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
12
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
13
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
14
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
15
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
16
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
17
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.TraceAliasCommand = void 0;
|
|
22
|
+
const common_1 = require("@pristine-ts/common");
|
|
23
|
+
const tsyringe_1 = require("tsyringe");
|
|
24
|
+
const cli_module_keyname_1 = require("../cli.module.keyname");
|
|
25
|
+
const trace_command_1 = require("./trace.command");
|
|
26
|
+
/**
|
|
27
|
+
* Top-level alias for `p:trace`.
|
|
28
|
+
*/
|
|
29
|
+
let TraceAliasCommand = class TraceAliasCommand {
|
|
30
|
+
constructor(delegate) {
|
|
31
|
+
this.delegate = delegate;
|
|
32
|
+
this.optionsType = null;
|
|
33
|
+
this.name = "trace";
|
|
34
|
+
this.description = "Alias for p:trace.";
|
|
35
|
+
}
|
|
36
|
+
run(args) {
|
|
37
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
38
|
+
return this.delegate.run(args);
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
exports.TraceAliasCommand = TraceAliasCommand;
|
|
43
|
+
exports.TraceAliasCommand = TraceAliasCommand = __decorate([
|
|
44
|
+
(0, common_1.tag)(common_1.ServiceDefinitionTagEnum.Command),
|
|
45
|
+
(0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname),
|
|
46
|
+
(0, tsyringe_1.injectable)(),
|
|
47
|
+
__metadata("design:paramtypes", [trace_command_1.TraceCommand])
|
|
48
|
+
], TraceAliasCommand);
|
|
49
|
+
//# sourceMappingURL=trace-alias.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace-alias.command.js","sourceRoot":"","sources":["../../../../src/commands/trace-alias.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,gDAA0F;AAC1F,uCAAoC;AAEpC,8DAAuD;AACvD,mDAA6C;AAE7C;;GAEG;AAII,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAK5B,YAA6B,QAAsB;QAAtB,aAAQ,GAAR,QAAQ,CAAc;QAJnD,gBAAW,GAAG,IAAI,CAAC;QACnB,SAAI,GAAG,OAAO,CAAC;QACf,gBAAW,GAAG,oBAAoB,CAAC;IAGnC,CAAC;IAEK,GAAG,CAAC,IAAS;;YACjB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;KAAA;CACF,CAAA;AAXY,8CAAiB;4BAAjB,iBAAiB;IAH7B,IAAA,YAAG,EAAC,iCAAwB,CAAC,OAAO,CAAC;IACrC,IAAA,qBAAY,EAAC,qCAAgB,CAAC;IAC9B,IAAA,qBAAU,GAAE;qCAM4B,4BAAY;GALxC,iBAAiB,CAW7B"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.TraceCommandOptions = void 0;
|
|
13
|
+
require("reflect-metadata");
|
|
14
|
+
const class_validator_1 = require("@pristine-ts/class-validator");
|
|
15
|
+
/**
|
|
16
|
+
* Flags + positional for `pristine trace [<id>] [--event-id <x>] [--trace-id <x>] [--request-id <x>] [--format tree|flat|json]`.
|
|
17
|
+
*
|
|
18
|
+
* Look up a trace by any of three correlation ids — `--event-id` is canonical,
|
|
19
|
+
* `--trace-id` covers the distributed-tracing case (a propagated `traceparent`),
|
|
20
|
+
* `--request-id` covers HTTP requests with an `x-pristine-request-id` header. A
|
|
21
|
+
* positional id is tried against all three.
|
|
22
|
+
*/
|
|
23
|
+
class TraceCommandOptions {
|
|
24
|
+
/**
|
|
25
|
+
* Resolves the lookup id: an explicit flag wins over the positional, and explicit
|
|
26
|
+
* flags are preferred in `eventId > traceId > requestId` order.
|
|
27
|
+
*/
|
|
28
|
+
get lookupId() {
|
|
29
|
+
var _a, _b, _c, _d;
|
|
30
|
+
return (_c = (_b = (_a = this["event-id"]) !== null && _a !== void 0 ? _a : this["trace-id"]) !== null && _b !== void 0 ? _b : this["request-id"]) !== null && _c !== void 0 ? _c : (_d = this._) === null || _d === void 0 ? void 0 : _d[0];
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.TraceCommandOptions = TraceCommandOptions;
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, class_validator_1.IsOptional)(),
|
|
36
|
+
(0, class_validator_1.IsString)(),
|
|
37
|
+
__metadata("design:type", String)
|
|
38
|
+
], TraceCommandOptions.prototype, "event-id", void 0);
|
|
39
|
+
__decorate([
|
|
40
|
+
(0, class_validator_1.IsOptional)(),
|
|
41
|
+
(0, class_validator_1.IsString)(),
|
|
42
|
+
__metadata("design:type", String)
|
|
43
|
+
], TraceCommandOptions.prototype, "trace-id", void 0);
|
|
44
|
+
__decorate([
|
|
45
|
+
(0, class_validator_1.IsOptional)(),
|
|
46
|
+
(0, class_validator_1.IsString)(),
|
|
47
|
+
__metadata("design:type", String)
|
|
48
|
+
], TraceCommandOptions.prototype, "request-id", void 0);
|
|
49
|
+
__decorate([
|
|
50
|
+
(0, class_validator_1.IsOptional)(),
|
|
51
|
+
(0, class_validator_1.IsIn)(["tree", "flat", "json"]),
|
|
52
|
+
__metadata("design:type", String)
|
|
53
|
+
], TraceCommandOptions.prototype, "format", void 0);
|
|
54
|
+
__decorate([
|
|
55
|
+
(0, class_validator_1.IsOptional)(),
|
|
56
|
+
(0, class_validator_1.IsArray)(),
|
|
57
|
+
__metadata("design:type", Array)
|
|
58
|
+
], TraceCommandOptions.prototype, "_", void 0);
|
|
59
|
+
//# sourceMappingURL=trace.command-options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace.command-options.js","sourceRoot":"","sources":["../../../../src/commands/trace.command-options.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4BAA0B;AAC1B,kEAAiF;AAIjF;;;;;;;GAOG;AACH,MAAa,mBAAmB;IA8B9B;;;OAGG;IACH,IAAI,QAAQ;;QACV,OAAO,MAAA,MAAA,MAAA,IAAI,CAAC,UAAU,CAAC,mCAAI,IAAI,CAAC,UAAU,CAAC,mCAAI,IAAI,CAAC,YAAY,CAAC,mCAAI,MAAA,IAAI,CAAC,CAAC,0CAAG,CAAC,CAAC,CAAC;IACnF,CAAC;CACF;AArCD,kDAqCC;AAjCC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;qDACS;AAKpB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;qDACS;AAKpB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;uDACW;AAKtB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,sBAAI,EAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;;mDACV;AASrB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,GAAE;;8CACG"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
12
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
13
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
14
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
15
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
16
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
17
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.TraceCommand = void 0;
|
|
22
|
+
const common_1 = require("@pristine-ts/common");
|
|
23
|
+
const tsyringe_1 = require("tsyringe");
|
|
24
|
+
const observability_1 = require("@pristine-ts/observability");
|
|
25
|
+
const telemetry_1 = require("@pristine-ts/telemetry");
|
|
26
|
+
const cli_output_manager_1 = require("../managers/cli-output.manager");
|
|
27
|
+
const cli_module_keyname_1 = require("../cli.module.keyname");
|
|
28
|
+
const trace_command_options_1 = require("./trace.command-options");
|
|
29
|
+
/**
|
|
30
|
+
* Renders the span tree of one captured trace. Look it up by any of event/trace/request
|
|
31
|
+
* id — `pristine trace <id>` tries all three, or use the explicit `--event-id`,
|
|
32
|
+
* `--trace-id`, `--request-id` flags.
|
|
33
|
+
*
|
|
34
|
+
* `--format tree|flat|json` controls the rendering (defaults to `tree`).
|
|
35
|
+
*/
|
|
36
|
+
let TraceCommand = class TraceCommand {
|
|
37
|
+
constructor(cliOutput, traceStore) {
|
|
38
|
+
this.cliOutput = cliOutput;
|
|
39
|
+
this.traceStore = traceStore;
|
|
40
|
+
this.optionsType = trace_command_options_1.TraceCommandOptions;
|
|
41
|
+
this.name = "p:trace";
|
|
42
|
+
this.description = "Render the span tree of a captured trace by event/trace/request id.";
|
|
43
|
+
}
|
|
44
|
+
run(args) {
|
|
45
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
var _a;
|
|
47
|
+
const lookupId = args.lookupId;
|
|
48
|
+
if (lookupId === undefined) {
|
|
49
|
+
this.cliOutput.writeLine("Usage: pristine trace <id> [--format tree|flat|json]");
|
|
50
|
+
this.cliOutput.writeLine(" pristine trace --event-id <id> | --trace-id <id> | --request-id <id>");
|
|
51
|
+
return common_1.ExitCode.Error;
|
|
52
|
+
}
|
|
53
|
+
const format = (_a = args.format) !== null && _a !== void 0 ? _a : "tree";
|
|
54
|
+
if (format === "json") {
|
|
55
|
+
const serialized = this.traceStore.findSerialized(lookupId);
|
|
56
|
+
if (serialized === undefined) {
|
|
57
|
+
this.cliOutput.writeLine(`No trace found matching '${lookupId}'.`);
|
|
58
|
+
return common_1.ExitCode.Error;
|
|
59
|
+
}
|
|
60
|
+
this.cliOutput.writeLine(JSON.stringify(serialized.trace, null, 2));
|
|
61
|
+
return common_1.ExitCode.Success;
|
|
62
|
+
}
|
|
63
|
+
const found = this.traceStore.find(lookupId);
|
|
64
|
+
if (found === undefined) {
|
|
65
|
+
this.cliOutput.writeLine(`No trace found matching '${lookupId}'.`);
|
|
66
|
+
return common_1.ExitCode.Error;
|
|
67
|
+
}
|
|
68
|
+
const rendered = format === "flat"
|
|
69
|
+
? telemetry_1.traceRenderer.renderFlat(found.trace)
|
|
70
|
+
: telemetry_1.traceRenderer.renderTree(found.trace);
|
|
71
|
+
this.cliOutput.writeLine(rendered);
|
|
72
|
+
return common_1.ExitCode.Success;
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
exports.TraceCommand = TraceCommand;
|
|
77
|
+
exports.TraceCommand = TraceCommand = __decorate([
|
|
78
|
+
(0, common_1.tag)(common_1.ServiceDefinitionTagEnum.Command),
|
|
79
|
+
(0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname),
|
|
80
|
+
(0, tsyringe_1.injectable)(),
|
|
81
|
+
__metadata("design:paramtypes", [cli_output_manager_1.CliOutput,
|
|
82
|
+
observability_1.TraceStore])
|
|
83
|
+
], TraceCommand);
|
|
84
|
+
//# sourceMappingURL=trace.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace.command.js","sourceRoot":"","sources":["../../../../src/commands/trace.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,gDAA0F;AAC1F,uCAAoC;AACpC,8DAAsD;AACtD,sDAAqD;AAErD,uEAAyD;AACzD,8DAAuD;AACvD,mEAA4D;AAE5D;;;;;;GAMG;AAII,IAAM,YAAY,GAAlB,MAAM,YAAY;IAKvB,YACmB,SAAoB,EACpB,UAAsB;QADtB,cAAS,GAAT,SAAS,CAAW;QACpB,eAAU,GAAV,UAAU,CAAY;QANzC,gBAAW,GAAG,2CAAmB,CAAC;QAClC,SAAI,GAAG,SAAS,CAAC;QACjB,gBAAW,GAAG,qEAAqE,CAAC;IAMpF,CAAC;IAEK,GAAG,CAAC,IAAyB;;;YACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,sDAAsD,CAAC,CAAC;gBACjF,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,6EAA6E,CAAC,CAAC;gBACxG,OAAO,iBAAQ,CAAC,KAAK,CAAC;YACxB,CAAC;YAED,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,MAAM,CAAC;YAErC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBACtB,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAC5D,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,4BAA4B,QAAQ,IAAI,CAAC,CAAC;oBACnE,OAAO,iBAAQ,CAAC,KAAK,CAAC;gBACxB,CAAC;gBACD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBACpE,OAAO,iBAAQ,CAAC,OAAO,CAAC;YAC1B,CAAC;YAED,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,4BAA4B,QAAQ,IAAI,CAAC,CAAC;gBACnE,OAAO,iBAAQ,CAAC,KAAK,CAAC;YACxB,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,MAAM;gBAChC,CAAC,CAAC,yBAAa,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;gBACvC,CAAC,CAAC,yBAAa,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAEnC,OAAO,iBAAQ,CAAC,OAAO,CAAC;QAC1B,CAAC;KAAA;CACF,CAAA;AA5CY,oCAAY;uBAAZ,YAAY;IAHxB,IAAA,YAAG,EAAC,iCAAwB,CAAC,OAAO,CAAC;IACrC,IAAA,qBAAY,EAAC,qCAAgB,CAAC;IAC9B,IAAA,qBAAU,GAAE;qCAOmB,8BAAS;QACR,0BAAU;GAP9B,YAAY,CA4CxB"}
|
|
@@ -31,7 +31,8 @@ const dynamic_importer_1 = require("../bootstrap/dynamic-importer");
|
|
|
31
31
|
/**
|
|
32
32
|
* Loads `pristine.config.ts` (preferred) or `pristine.config.js` (escape hatch for
|
|
33
33
|
* pure-JS projects). Walks up from `process.cwd()` looking for the file, then loads it
|
|
34
|
-
* through
|
|
34
|
+
* through Node's native dynamic `import()`: TypeScript type-stripping (Node >= 22.18)
|
|
35
|
+
* handles `.ts`, while `.js` loads directly.
|
|
35
36
|
*
|
|
36
37
|
* Returns a `ResolvedPristineConfig` carrying the file path (when found) and per-field
|
|
37
38
|
* provenance, which `pristine p:config:print` uses to render an annotated dump.
|
|
@@ -100,26 +101,23 @@ let ConfigLoader = class ConfigLoader {
|
|
|
100
101
|
}
|
|
101
102
|
}
|
|
102
103
|
/**
|
|
103
|
-
* Loads a config file from `absolutePath
|
|
104
|
-
*
|
|
104
|
+
* Loads a config file from `absolutePath` via Node's native dynamic `import()`. A `.ts`
|
|
105
|
+
* config is handled by Node's built-in TypeScript type-stripping (Node >= 22.18); a `.js`
|
|
106
|
+
* config loads directly. Extracts the default export, falling back to a named
|
|
105
107
|
* `pristineConfig` export for users who prefer not to use `export default`.
|
|
106
108
|
* @private
|
|
107
109
|
*/
|
|
108
110
|
importConfigFile(absolutePath) {
|
|
109
111
|
return __awaiter(this, void 0, void 0, function* () {
|
|
110
|
-
var _a, _b
|
|
111
|
-
const ext = path_1.default.extname(absolutePath).toLowerCase();
|
|
112
|
+
var _a, _b;
|
|
112
113
|
let loaded;
|
|
113
|
-
|
|
114
|
-
const jitiModule = yield this.dynamicImporter.import("jiti");
|
|
115
|
-
const createJiti = (_b = (_a = jitiModule.default) !== null && _a !== void 0 ? _a : jitiModule.createJiti) !== null && _b !== void 0 ? _b : jitiModule;
|
|
116
|
-
const jiti = createJiti(absolutePath, { interopDefault: true });
|
|
117
|
-
loaded = jiti(absolutePath);
|
|
118
|
-
}
|
|
119
|
-
else {
|
|
114
|
+
try {
|
|
120
115
|
loaded = yield this.dynamicImporter.import(`file://${absolutePath}`);
|
|
121
116
|
}
|
|
122
|
-
|
|
117
|
+
catch (error) {
|
|
118
|
+
throw this.describeImportError(error, absolutePath);
|
|
119
|
+
}
|
|
120
|
+
const config = (_b = (_a = loaded === null || loaded === void 0 ? void 0 : loaded.default) !== null && _a !== void 0 ? _a : loaded === null || loaded === void 0 ? void 0 : loaded.pristineConfig) !== null && _b !== void 0 ? _b : loaded;
|
|
123
121
|
if (!config || typeof config !== "object") {
|
|
124
122
|
throw new Error(`[pristine] Config file at '${absolutePath}' did not export a valid configuration. ` +
|
|
125
123
|
`Use \`export default defineConfig({ ... })\` or \`export const pristineConfig = { ... }\`.`);
|
|
@@ -127,6 +125,29 @@ let ConfigLoader = class ConfigLoader {
|
|
|
127
125
|
return config;
|
|
128
126
|
});
|
|
129
127
|
}
|
|
128
|
+
/**
|
|
129
|
+
* Translates Node's low-level module-loading failures for a `.ts` config into an
|
|
130
|
+
* actionable error. Native type-stripping has two distinct failure modes worth telling
|
|
131
|
+
* apart: the running Node is too old (or has stripping disabled) to import `.ts` at all
|
|
132
|
+
* (`ERR_UNKNOWN_FILE_EXTENSION`), versus a config written with non-erasable TypeScript that
|
|
133
|
+
* stripping refuses (`ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX`). Any other error is passed through
|
|
134
|
+
* unchanged so genuine config bugs surface as-is.
|
|
135
|
+
* @private
|
|
136
|
+
*/
|
|
137
|
+
describeImportError(error, absolutePath) {
|
|
138
|
+
var _a;
|
|
139
|
+
if ((error === null || error === void 0 ? void 0 : error.code) === "ERR_UNKNOWN_FILE_EXTENSION") {
|
|
140
|
+
return new Error(`[pristine] Loading '${absolutePath}' requires Node >= 22.18 (native TypeScript ` +
|
|
141
|
+
`type-stripping); you are running ${process.version}. Upgrade Node, or rename the ` +
|
|
142
|
+
`file to 'pristine.config.js'.`);
|
|
143
|
+
}
|
|
144
|
+
if ((error === null || error === void 0 ? void 0 : error.code) === "ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX") {
|
|
145
|
+
return new Error(`[pristine] '${absolutePath}' uses TypeScript that Node cannot type-strip (enum, ` +
|
|
146
|
+
`namespace, parameter properties, ...). Use only erasable TypeScript in your config, ` +
|
|
147
|
+
`or rename the file to 'pristine.config.js'.\nOriginal error: ${(_a = error === null || error === void 0 ? void 0 : error.message) !== null && _a !== void 0 ? _a : error}`);
|
|
148
|
+
}
|
|
149
|
+
return error instanceof Error ? error : new Error(String(error));
|
|
150
|
+
}
|
|
130
151
|
};
|
|
131
152
|
exports.ConfigLoader = ConfigLoader;
|
|
132
153
|
exports.ConfigLoader = ConfigLoader = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../../src/config/config-loader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAoC;AACpC,4CAAoB;AACpB,gDAAwB;AACxB,qEAA8D;AAE9D,yEAAkE;AAClE,oEAA8D;AAE9D
|
|
1
|
+
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../../src/config/config-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.commandParameter = void 0;
|
|
4
|
+
const metadata_1 = require("@pristine-ts/metadata");
|
|
5
|
+
const cli_decorator_metadata_keyname_enum_1 = require("../enums/cli-decorator-metadata-keyname.enum");
|
|
6
|
+
/**
|
|
7
|
+
* Describes a command-line parameter on a command's options class. Stored as property
|
|
8
|
+
* metadata and read by the CLI while resolving a command's arguments — before the arguments
|
|
9
|
+
* are mapped onto the options instance and validated.
|
|
10
|
+
*
|
|
11
|
+
* Two behaviors flow from the options:
|
|
12
|
+
*
|
|
13
|
+
* - `flag` rebinds the property to a differently-named flag (the property name is the
|
|
14
|
+
* default), so the property and the flag no longer have to be spelled identically.
|
|
15
|
+
* - `question` makes the CLI ask for the value interactively when the flag is absent
|
|
16
|
+
* (subject to configuration and an interactive terminal). Omit it to never prompt.
|
|
17
|
+
*
|
|
18
|
+
* ```ts
|
|
19
|
+
* import {IsString, IsOptional} from "@pristine-ts/class-validator";
|
|
20
|
+
* import {commandParameter} from "@pristine-ts/cli";
|
|
21
|
+
*
|
|
22
|
+
* export class MigrateCommandOptions {
|
|
23
|
+
* @commandParameter({flag: "db-url", question: "What is the database URL?"})
|
|
24
|
+
* @IsString()
|
|
25
|
+
* databaseUrl?: string; // bound to --db-url; asked for when missing
|
|
26
|
+
*
|
|
27
|
+
* @commandParameter({flag: "dir"}) // bound to --dir; never asked for
|
|
28
|
+
* @IsOptional()
|
|
29
|
+
* @IsString()
|
|
30
|
+
* migrationsDirectory?: string;
|
|
31
|
+
* }
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
const commandParameter = (options = {}) => {
|
|
35
|
+
return (target, propertyKey) => {
|
|
36
|
+
metadata_1.PropertyMetadata.defineMetadata(target, propertyKey, cli_decorator_metadata_keyname_enum_1.CliDecoratorMetadataKeynameEnum.CommandParameter, options);
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
exports.commandParameter = commandParameter;
|
|
40
|
+
//# sourceMappingURL=command-parameter.decorator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-parameter.decorator.js","sourceRoot":"","sources":["../../../../src/decorators/command-parameter.decorator.ts"],"names":[],"mappings":";;;AAAA,oDAAuD;AACvD,sGAA6F;AAG7F;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACI,MAAM,gBAAgB,GAAG,CAAC,UAAmC,EAAE,EAAE,EAAE;IACxE,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,EAAE;QAC1C,2BAAgB,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,qEAA+B,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAClH,CAAC,CAAC;AACJ,CAAC,CAAC;AAJW,QAAA,gBAAgB,oBAI3B"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./command-parameter.decorator"), exports);
|
|
18
|
+
//# sourceMappingURL=decorators.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../../src/decorators/decorators.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gEAA8C"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CliDecoratorMetadataKeynameEnum = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Metadata keynames written by `@pristine-ts/cli`'s own property/class decorators and read
|
|
6
|
+
* back when resolving a command's options. Namespaced under `cli:` so they never collide
|
|
7
|
+
* with the keys other Pristine decorators (validation, data-mapping, mysql, …) store on the
|
|
8
|
+
* same class.
|
|
9
|
+
*/
|
|
10
|
+
var CliDecoratorMetadataKeynameEnum;
|
|
11
|
+
(function (CliDecoratorMetadataKeynameEnum) {
|
|
12
|
+
CliDecoratorMetadataKeynameEnum["CommandParameter"] = "cli:command-parameter";
|
|
13
|
+
})(CliDecoratorMetadataKeynameEnum || (exports.CliDecoratorMetadataKeynameEnum = CliDecoratorMetadataKeynameEnum = {}));
|
|
14
|
+
//# sourceMappingURL=cli-decorator-metadata-keyname.enum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-decorator-metadata-keyname.enum.js","sourceRoot":"","sources":["../../../../src/enums/cli-decorator-metadata-keyname.enum.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,IAAY,+BAEX;AAFD,WAAY,+BAA+B;IACzC,6EAA0C,CAAA;AAC5C,CAAC,EAFW,+BAA+B,+CAA/B,+BAA+B,QAE1C"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./cli-decorator-metadata-keyname.enum"), exports);
|
|
18
|
+
__exportStar(require("./terminal-key-name.enum"), exports);
|
|
19
|
+
//# sourceMappingURL=enums.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/enums/enums.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wEAAsD;AACtD,2DAAyC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ExitCodeEnum = void 0;
|
|
4
|
+
var ExitCodeEnum;
|
|
5
|
+
(function (ExitCodeEnum) {
|
|
6
|
+
ExitCodeEnum[ExitCodeEnum["Success"] = 0] = "Success";
|
|
7
|
+
ExitCodeEnum[ExitCodeEnum["Error"] = 1] = "Error";
|
|
8
|
+
})(ExitCodeEnum || (exports.ExitCodeEnum = ExitCodeEnum = {}));
|
|
9
|
+
//# sourceMappingURL=exit-code.enum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exit-code.enum.js","sourceRoot":"","sources":["../../../../src/enums/exit-code.enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,qDAAW,CAAA;IACX,iDAAS,CAAA;AACX,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TerminalKeyName = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* The kinds of keypress the CLI's interactive prompts understand. `TerminalKeyDecoder`
|
|
6
|
+
* maps the raw bytes Node delivers from a raw-mode stdin onto one of these; every printable
|
|
7
|
+
* keystroke collapses to `Character` (with the literal character carried separately on
|
|
8
|
+
* {@link TerminalKey}). `Other` covers control/escape sequences the prompts don't act on
|
|
9
|
+
* (function keys, unhandled arrows) so callers can ignore them instead of echoing garbage.
|
|
10
|
+
*/
|
|
11
|
+
var TerminalKeyName;
|
|
12
|
+
(function (TerminalKeyName) {
|
|
13
|
+
TerminalKeyName["Up"] = "up";
|
|
14
|
+
TerminalKeyName["Down"] = "down";
|
|
15
|
+
TerminalKeyName["Enter"] = "enter";
|
|
16
|
+
TerminalKeyName["Backspace"] = "backspace";
|
|
17
|
+
TerminalKeyName["CtrlC"] = "ctrl-c";
|
|
18
|
+
TerminalKeyName["Character"] = "character";
|
|
19
|
+
TerminalKeyName["Other"] = "other";
|
|
20
|
+
})(TerminalKeyName || (exports.TerminalKeyName = TerminalKeyName = {}));
|
|
21
|
+
//# sourceMappingURL=terminal-key-name.enum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"terminal-key-name.enum.js","sourceRoot":"","sources":["../../../../src/enums/terminal-key-name.enum.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACH,IAAY,eAQX;AARD,WAAY,eAAe;IACzB,4BAAS,CAAA;IACT,gCAAa,CAAA;IACb,kCAAe,CAAA;IACf,0CAAuB,CAAA;IACvB,mCAAgB,CAAA;IAChB,0CAAuB,CAAA;IACvB,kCAAe,CAAA;AACjB,CAAC,EARW,eAAe,+BAAf,eAAe,QAQ1B"}
|
|
@@ -6,12 +6,22 @@ exports.CliErrorCode = void 0;
|
|
|
6
6
|
* (typed `PristineErrorCode | string`, so any enum value is accepted).
|
|
7
7
|
*
|
|
8
8
|
* Codes here describe CLI-specific failures — command resolution, argument mapping,
|
|
9
|
-
* and
|
|
9
|
+
* argument validation, and command-parameter binding.
|
|
10
10
|
*/
|
|
11
11
|
var CliErrorCode;
|
|
12
12
|
(function (CliErrorCode) {
|
|
13
13
|
CliErrorCode["CommandNotFound"] = "COMMAND_NOT_FOUND";
|
|
14
14
|
CliErrorCode["ArgumentMappingFailed"] = "ARGUMENT_MAPPING_FAILED";
|
|
15
15
|
CliErrorCode["ArgumentValidationFailed"] = "ARGUMENT_VALIDATION_FAILED";
|
|
16
|
+
/**
|
|
17
|
+
* Two `@commandParameter` properties on the same options class resolve to the same flag.
|
|
18
|
+
* A programming error in the command's options definition, not bad user input.
|
|
19
|
+
*/
|
|
20
|
+
CliErrorCode["CommandParameterFlagConflict"] = "COMMAND_PARAMETER_FLAG_CONFLICT";
|
|
21
|
+
/**
|
|
22
|
+
* The user cancelled an interactive prompt with `Ctrl+C`. Carried by
|
|
23
|
+
* `PromptCancelledError` — a clean, user-initiated cancellation, not a failure.
|
|
24
|
+
*/
|
|
25
|
+
CliErrorCode["PromptCancelled"] = "PROMPT_CANCELLED";
|
|
16
26
|
})(CliErrorCode || (exports.CliErrorCode = CliErrorCode = {}));
|
|
17
27
|
//# sourceMappingURL=cli-error-code.enum.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-error-code.enum.js","sourceRoot":"","sources":["../../../../src/errors/cli-error-code.enum.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACH,IAAY,
|
|
1
|
+
{"version":3,"file":"cli-error-code.enum.js","sourceRoot":"","sources":["../../../../src/errors/cli-error-code.enum.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACH,IAAY,YAgBX;AAhBD,WAAY,YAAY;IACtB,qDAA8C,CAAA;IAC9C,iEAAoD,CAAA;IACpD,uEAAuD,CAAA;IAEvD;;;OAGG;IACH,gFAAgE,CAAA;IAEhE;;;OAGG;IACH,oDAAoC,CAAA;AACtC,CAAC,EAhBW,YAAY,4BAAZ,YAAY,QAgBvB"}
|
|
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./cli-error-code.enum"), exports);
|
|
18
18
|
__exportStar(require("./command-not-found.error"), exports);
|
|
19
|
+
__exportStar(require("./prompt-cancelled.error"), exports);
|
|
19
20
|
//# sourceMappingURL=errors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../src/errors/errors.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,4DAA0C"}
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../src/errors/errors.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,4DAA0C;AAC1C,2DAAyC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PromptCancelledError = void 0;
|
|
4
|
+
const common_1 = require("@pristine-ts/common");
|
|
5
|
+
const cli_error_code_enum_1 = require("./cli-error-code.enum");
|
|
6
|
+
/**
|
|
7
|
+
* Thrown when the user cancels an interactive prompt with `Ctrl+C`. A clean, user-initiated
|
|
8
|
+
* cancellation — not a crash — so it carries `kind: UserError` (the `CliErrorReporter`
|
|
9
|
+
* renders the message verbatim instead of a stack dump) and exit code `130`, following the
|
|
10
|
+
* POSIX `128 + SIGINT(2)` convention so shell pipelines can detect the interrupt.
|
|
11
|
+
*
|
|
12
|
+
* Callers that treat cancellation as a normal branch (e.g. `BuildStalenessPrompt`) catch it
|
|
13
|
+
* via `instanceof`; everywhere else it propagates to the reporter for a tidy exit.
|
|
14
|
+
*/
|
|
15
|
+
class PromptCancelledError extends common_1.PristineError {
|
|
16
|
+
constructor() {
|
|
17
|
+
super("Prompt cancelled.", {
|
|
18
|
+
code: cli_error_code_enum_1.CliErrorCode.PromptCancelled,
|
|
19
|
+
exitCode: 130,
|
|
20
|
+
kind: common_1.PristineErrorKind.UserError,
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.PromptCancelledError = PromptCancelledError;
|
|
25
|
+
//# sourceMappingURL=prompt-cancelled.error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt-cancelled.error.js","sourceRoot":"","sources":["../../../../src/errors/prompt-cancelled.error.ts"],"names":[],"mappings":";;;AAAA,gDAAqE;AACrE,+DAAmD;AAEnD;;;;;;;;GAQG;AACH,MAAa,oBAAqB,SAAQ,sBAAa;IACrD;QACE,KAAK,CAAC,mBAAmB,EAAE;YACzB,IAAI,EAAE,kCAAY,CAAC,eAAe;YAClC,QAAQ,EAAE,GAAG;YACb,IAAI,EAAE,0BAAiB,CAAC,SAAS;SAClC,CAAC,CAAC;IACL,CAAC;CACF;AARD,oDAQC"}
|