@pristine-ts/cli 2.0.6 → 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-runner.js +1 -1
- 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 +41 -8
- package/dist/lib/cjs/cli.module.js.map +1 -1
- package/dist/lib/cjs/commands/build.command.js +15 -14
- package/dist/lib/cjs/commands/build.command.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/config-print.command.js +16 -11
- package/dist/lib/cjs/commands/config-print.command.js.map +1 -1
- package/dist/lib/cjs/commands/help.command.js +17 -17
- package/dist/lib/cjs/commands/help.command.js.map +1 -1
- package/dist/lib/cjs/commands/info.command.js +26 -21
- package/dist/lib/cjs/commands/info.command.js.map +1 -1
- package/dist/lib/cjs/commands/init.command.js +22 -21
- package/dist/lib/cjs/commands/init.command.js.map +1 -1
- package/dist/lib/cjs/commands/list.command.js +6 -6
- package/dist/lib/cjs/commands/list.command.js.map +1 -1
- 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/start.command.js +12 -13
- package/dist/lib/cjs/commands/start.command.js.map +1 -1
- 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 +28 -70
- 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-output.manager.js +45 -0
- package/dist/lib/cjs/managers/cli-output.manager.js.map +1 -0
- package/dist/lib/cjs/managers/cli-progress-bar.manager.js +49 -0
- package/dist/lib/cjs/managers/cli-progress-bar.manager.js.map +1 -0
- package/dist/lib/cjs/managers/cli-prompt.manager.js +265 -0
- package/dist/lib/cjs/managers/cli-prompt.manager.js.map +1 -0
- package/dist/lib/cjs/managers/cli-spinner.manager.js +93 -0
- package/dist/lib/cjs/managers/cli-spinner.manager.js.map +1 -0
- package/dist/lib/cjs/managers/managers.js +5 -1
- 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/shell.manager.js +25 -20
- package/dist/lib/cjs/managers/shell.manager.js.map +1 -1
- 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-runner.js +1 -1
- 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 +41 -8
- package/dist/lib/esm/cli.module.js.map +1 -1
- package/dist/lib/esm/commands/build.command.js +16 -15
- package/dist/lib/esm/commands/build.command.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/config-print.command.js +16 -11
- package/dist/lib/esm/commands/config-print.command.js.map +1 -1
- package/dist/lib/esm/commands/help.command.js +17 -17
- package/dist/lib/esm/commands/help.command.js.map +1 -1
- package/dist/lib/esm/commands/info.command.js +27 -22
- package/dist/lib/esm/commands/info.command.js.map +1 -1
- package/dist/lib/esm/commands/init.command.js +23 -22
- package/dist/lib/esm/commands/init.command.js.map +1 -1
- package/dist/lib/esm/commands/list.command.js +6 -6
- package/dist/lib/esm/commands/list.command.js.map +1 -1
- 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/start.command.js +13 -14
- package/dist/lib/esm/commands/start.command.js.map +1 -1
- 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 +29 -71
- 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-output.manager.js +42 -0
- package/dist/lib/esm/managers/cli-output.manager.js.map +1 -0
- package/dist/lib/esm/managers/cli-progress-bar.manager.js +46 -0
- package/dist/lib/esm/managers/cli-progress-bar.manager.js.map +1 -0
- package/dist/lib/esm/managers/cli-prompt.manager.js +229 -0
- package/dist/lib/esm/managers/cli-prompt.manager.js.map +1 -0
- package/dist/lib/esm/managers/cli-spinner.manager.js +90 -0
- package/dist/lib/esm/managers/cli-spinner.manager.js.map +1 -0
- package/dist/lib/esm/managers/managers.js +5 -1
- 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/shell.manager.js +26 -21
- package/dist/lib/esm/managers/shell.manager.js.map +1 -1
- 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-runner.d.ts +1 -1
- 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/build.command.d.ts +3 -3
- package/dist/types/commands/commands.d.ts +6 -0
- package/dist/types/commands/config-init.command.d.ts +18 -0
- package/dist/types/commands/config-print.command.d.ts +8 -3
- package/dist/types/commands/help.command.d.ts +3 -3
- package/dist/types/commands/info.command.d.ts +5 -3
- package/dist/types/commands/init.command.d.ts +3 -3
- package/dist/types/commands/list.command.d.ts +3 -3
- 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/start.command.d.ts +3 -3
- 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 -15
- 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-output.manager.d.ts +21 -0
- package/dist/types/managers/cli-progress-bar.manager.d.ts +17 -0
- package/dist/types/managers/cli-prompt.manager.d.ts +79 -0
- package/dist/types/managers/cli-spinner.manager.d.ts +34 -0
- package/dist/types/managers/managers.d.ts +5 -1
- package/dist/types/managers/repl-session.d.ts +62 -0
- package/dist/types/managers/shell.manager.d.ts +3 -3
- 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
package/dist/lib/cjs/cli.js
CHANGED
|
@@ -24,6 +24,8 @@ const source_hasher_1 = require("./bootstrap/source-hasher");
|
|
|
24
24
|
const config_loader_1 = require("./config/config-loader");
|
|
25
25
|
const cli_module_1 = require("./cli.module");
|
|
26
26
|
const cli_error_reporter_1 = require("./reporters/cli-error.reporter");
|
|
27
|
+
const cli_prompt_manager_1 = require("./managers/cli-prompt.manager");
|
|
28
|
+
const terminal_key_reader_manager_1 = require("./managers/terminal-key-reader.manager");
|
|
27
29
|
/**
|
|
28
30
|
* Boots the CLI: discovers the consumer's AppModule, starts the kernel, and dispatches
|
|
29
31
|
* `process.argv` to whichever command matches. Returns the process exit code rather than
|
|
@@ -64,11 +66,17 @@ class Cli {
|
|
|
64
66
|
// and the alias commands can register signal handlers and resolve their delegates.
|
|
65
67
|
this.kernel.container.registerInstance(core_1.Kernel, this.kernel);
|
|
66
68
|
this.warnOnCommandCollisions();
|
|
67
|
-
|
|
68
|
-
// The
|
|
69
|
-
//
|
|
70
|
-
//
|
|
71
|
-
|
|
69
|
+
// Uniform dispatch: every argv shape flows through `kernel.handle(argv, {keyname:
|
|
70
|
+
// Cli})`. The mapping layer picks the right payload:
|
|
71
|
+
// - `[node, pristine, <command>, ...]` → `CommandEventMapper` → `CliEventHandler`
|
|
72
|
+
// runs the command and returns its exit code (no `process.exit`; exiting is
|
|
73
|
+
// `bin.ts`'s job).
|
|
74
|
+
// - `[node, pristine]` or `[node, pristine, repl, ...]` → `ReplStartEventMapper`
|
|
75
|
+
// → `ReplStartEventHandler` runs the interactive session and resolves with the
|
|
76
|
+
// exit code on `/exit` or EOF.
|
|
77
|
+
// No if-REPL branch needed here — the REPL is just another event handler.
|
|
78
|
+
const exitCode = yield this.kernel.handle(process.argv, { keyname: core_1.ExecutionContextKeynameEnum.Cli, context: null });
|
|
79
|
+
return typeof exitCode === "number" ? exitCode : 0;
|
|
72
80
|
}
|
|
73
81
|
catch (error) {
|
|
74
82
|
return yield this.reportFatalError(error);
|
|
@@ -136,11 +144,15 @@ class Cli {
|
|
|
136
144
|
});
|
|
137
145
|
}
|
|
138
146
|
/**
|
|
139
|
-
* Builds a synthetic outer AppModule that imports
|
|
147
|
+
* Builds a synthetic outer AppModule that imports the user's AppModule plus `CliModule`
|
|
148
|
+
* — so the CLI's own commands are always registered when the bin is the entry point.
|
|
149
|
+
* `CliModule` itself imports `ObservabilityModule`, so the logs/traces store travels
|
|
150
|
+
* along without being named here.
|
|
151
|
+
*
|
|
140
152
|
* The wrap is unconditional — the kernel dedupes module imports by keyname, so adding
|
|
141
|
-
* CliModule on top of a graph that already contains it is a no-op rather than an
|
|
142
|
-
* or duplicate registration. Cheaper than walking the user's import tree to
|
|
143
|
-
* already-present case.
|
|
153
|
+
* `CliModule` on top of a graph that already contains it is a no-op rather than an
|
|
154
|
+
* error or duplicate registration. Cheaper than walking the user's import tree to
|
|
155
|
+
* detect the already-present case.
|
|
144
156
|
*/
|
|
145
157
|
wrapWithCliModule(appModule) {
|
|
146
158
|
var _a;
|
|
@@ -163,7 +175,8 @@ class Cli {
|
|
|
163
175
|
const sourceHasher = new source_hasher_1.SourceHasher();
|
|
164
176
|
const buildManifestReader = new build_manifest_reader_1.BuildManifestReader();
|
|
165
177
|
const buildManifestChecker = new build_manifest_checker_1.BuildManifestChecker(sourceHasher);
|
|
166
|
-
const
|
|
178
|
+
const cliPrompt = new cli_prompt_manager_1.CliPrompt(new terminal_key_reader_manager_1.TerminalKeyReader());
|
|
179
|
+
const buildStalenessPrompt = new build_staleness_prompt_1.BuildStalenessPrompt(cliPrompt);
|
|
167
180
|
const buildRunner = new build_runner_1.BuildRunner();
|
|
168
181
|
return new app_module_loader_1.AppModuleLoader(configLoader, pluginLoader, dynamicImporter, buildManifestReader, buildManifestChecker, buildStalenessPrompt, buildRunner);
|
|
169
182
|
}
|
package/dist/lib/cjs/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAAoJ;AACpJ,gDAAiF;AACjF,8DAAoE;AAEpE,qEAA8D;AAC9D,+EAAwE;AACxE,6EAAsE;AACtE,2DAAqD;AACrD,+EAAwE;AACxE,mEAA6D;AAC7D,6DAAuD;AACvD,6DAAuD;AACvD,0DAAoD;AACpD,6CAAuC;AACvC,uEAAgE;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,9 +20,15 @@ const core_1 = require("@pristine-ts/core");
|
|
|
20
20
|
const validation_1 = require("@pristine-ts/validation");
|
|
21
21
|
const logging_1 = require("@pristine-ts/logging");
|
|
22
22
|
const data_mapping_1 = require("@pristine-ts/data-mapping");
|
|
23
|
+
const observability_1 = require("@pristine-ts/observability");
|
|
24
|
+
const configuration_1 = require("@pristine-ts/configuration");
|
|
25
|
+
const cli_configuration_keys_1 = require("./cli.configuration-keys");
|
|
23
26
|
__exportStar(require("./bootstrap/bootstrap"), exports);
|
|
27
|
+
__exportStar(require("./cli.configuration-keys"), exports);
|
|
24
28
|
__exportStar(require("./commands/commands"), exports);
|
|
25
29
|
__exportStar(require("./config/config"), exports);
|
|
30
|
+
__exportStar(require("./decorators/decorators"), exports);
|
|
31
|
+
__exportStar(require("./enums/enums"), exports);
|
|
26
32
|
__exportStar(require("./errors/errors"), exports);
|
|
27
33
|
__exportStar(require("./event-handlers/event-handlers"), exports);
|
|
28
34
|
__exportStar(require("./event-payloads/event-payloads"), exports);
|
|
@@ -31,6 +37,7 @@ __exportStar(require("./managers/managers"), exports);
|
|
|
31
37
|
__exportStar(require("./mappers/mappers"), exports);
|
|
32
38
|
__exportStar(require("./options/options"), exports);
|
|
33
39
|
__exportStar(require("./reporters/cli-error.reporter"), exports);
|
|
40
|
+
__exportStar(require("./services/services"), exports);
|
|
34
41
|
__exportStar(require("./types/types"), exports);
|
|
35
42
|
// Re-export the `Cli` entrypoint so `bin.ts` (and any other downstream entry script) can
|
|
36
43
|
// invoke `new (require('@pristine-ts/cli').Cli)().bootstrap()` to load the same physical
|
|
@@ -40,19 +47,45 @@ var cli_1 = require("./cli");
|
|
|
40
47
|
Object.defineProperty(exports, "Cli", { enumerable: true, get: function () { return cli_1.Cli; } });
|
|
41
48
|
exports.CliModule = {
|
|
42
49
|
keyname: cli_module_keyname_1.CliModuleKeyname,
|
|
43
|
-
configurationDefinitions: [
|
|
50
|
+
configurationDefinitions: [
|
|
51
|
+
/**
|
|
52
|
+
* Whether the CLI may interactively ask for missing command parameters that declare a
|
|
53
|
+
* `question` via `@commandParameter`. Defaults to enabled; turn it off (here, in
|
|
54
|
+
* `pristine.config.ts`, or via the env var below) to keep the CLI non-interactive.
|
|
55
|
+
* Prompting is also skipped automatically whenever stdin is not an interactive terminal.
|
|
56
|
+
*/
|
|
57
|
+
{
|
|
58
|
+
parameterName: cli_configuration_keys_1.CliConfigurationKeys.InteractiveParameters,
|
|
59
|
+
isRequired: false,
|
|
60
|
+
defaultValue: true,
|
|
61
|
+
defaultResolvers: [
|
|
62
|
+
new configuration_1.BooleanResolver(new configuration_1.EnvironmentVariableResolver("PRISTINE_CLI_INTERACTIVE_PARAMETERS")),
|
|
63
|
+
],
|
|
64
|
+
},
|
|
65
|
+
],
|
|
44
66
|
importModules: [
|
|
45
67
|
core_1.CoreModule,
|
|
46
68
|
data_mapping_1.DataMappingModule,
|
|
47
69
|
logging_1.LoggingModule,
|
|
70
|
+
// `ObservabilityModule` travels with the CLI: it backs the `logs`/`trace`/`requests`
|
|
71
|
+
// commands and the `pristine start` capture. Importing it here (rather than only
|
|
72
|
+
// wrapping it in `Cli.bootstrap`) guarantees its configuration keys are registered
|
|
73
|
+
// wherever `CliModule` is loaded — including when another module (e.g. `HttpModule`)
|
|
74
|
+
// pulls `CliModule` in transitively — so observability's `@injectConfig` always resolves.
|
|
75
|
+
observability_1.ObservabilityModule,
|
|
48
76
|
validation_1.ValidationModule,
|
|
49
77
|
],
|
|
50
78
|
/**
|
|
51
|
-
* When running through the CLI, logs
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
79
|
+
* When running through the CLI, logs are the user-facing channel — there is no separate
|
|
80
|
+
* "structured output" surface that competes with them. We layer a CLI-friendly set of
|
|
81
|
+
* defaults on top of LoggingModule's: the `Pretty` output mode (colored, icon-prefixed
|
|
82
|
+
* single-line rendering) and the `Info` severity threshold so command narration
|
|
83
|
+
* (`Compiling`, `Build complete`, `Server listening`) is visible by default — matching
|
|
84
|
+
* the pre-LogHandler-consolidation behavior of `ConsoleManager.writeInfo/Success`.
|
|
85
|
+
* Users who want a quieter CLI (or a different output mode) can override either key in
|
|
86
|
+
* `pristine.config.ts:config` — the file beats `configDefaults` in the resolution chain.
|
|
87
|
+
* Env vars are checked LAST in the resolver chain, after configDefaults, so they cannot
|
|
88
|
+
* override these CLI defaults; use the config file for that.
|
|
56
89
|
*
|
|
57
90
|
* No `isLoggingModulePresent` check needed — `LoggingModule` is a hard import above, so
|
|
58
91
|
* these keys are always registered when CliModule is in the graph. (And if a future
|
|
@@ -60,8 +93,8 @@ exports.CliModule = {
|
|
|
60
93
|
* with an actionable "unknown key" error — the right failure mode for that case.)
|
|
61
94
|
*/
|
|
62
95
|
configDefaults: {
|
|
63
|
-
[logging_1.LoggingModuleKeyname + ".consoleLoggerOutputMode"]: logging_1.OutputModeEnum.
|
|
64
|
-
[logging_1.LoggingModuleKeyname + ".logSeverityLevelConfiguration"]: logging_1.SeverityEnum.
|
|
96
|
+
[logging_1.LoggingModuleKeyname + ".consoleLoggerOutputMode"]: logging_1.OutputModeEnum.Pretty,
|
|
97
|
+
[logging_1.LoggingModuleKeyname + ".logSeverityLevelConfiguration"]: logging_1.SeverityEnum.Info,
|
|
65
98
|
},
|
|
66
99
|
};
|
|
67
100
|
//# sourceMappingURL=cli.module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.module.js","sourceRoot":"","sources":["../../../src/cli.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,6DAAsD;AACtD,4CAA6C;AAC7C,wDAAyD;AACzD,kDAAuG;AACvG,4DAA2D;
|
|
1
|
+
{"version":3,"file":"cli.module.js","sourceRoot":"","sources":["../../../src/cli.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,6DAAsD;AACtD,4CAA6C;AAC7C,wDAAyD;AACzD,kDAAuG;AACvG,4DAA2D;AAC3D,8DAA+D;AAC/D,8DAAwF;AACxF,qEAA8D;AAE9D,wDAAsC;AACtC,2DAAyC;AACzC,sDAAoC;AACpC,kDAAgC;AAChC,0DAAwC;AACxC,gDAA8B;AAC9B,kDAAgC;AAChC,kEAAgD;AAChD,kEAAgD;AAChD,0DAAwC;AACxC,sDAAoC;AACpC,oDAAkC;AAClC,oDAAkC;AAClC,iEAA+C;AAC/C,sDAAoC;AACpC,gDAA8B;AAE9B,yFAAyF;AACzF,yFAAyF;AACzF,mFAAmF;AACnF,oFAAoF;AACpF,6BAA0B;AAAlB,0FAAA,GAAG,OAAA;AAEE,QAAA,SAAS,GAAoB;IACxC,OAAO,EAAE,qCAAgB;IACzB,wBAAwB,EAAE;QACxB;;;;;WAKG;QACH;YACE,aAAa,EAAE,6CAAoB,CAAC,qBAAqB;YACzD,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE;gBAChB,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,qCAAqC,CAAC,CAAC;aAC5F;SACF;KACF;IACD,aAAa,EAAE;QACb,iBAAU;QACV,gCAAiB;QACjB,uBAAa;QACb,qFAAqF;QACrF,iFAAiF;QACjF,mFAAmF;QACnF,qFAAqF;QACrF,0FAA0F;QAC1F,mCAAmB;QACnB,6BAAgB;KACjB;IACD;;;;;;;;;;;;;;;;OAgBG;IACH,cAAc,EAAE;QACd,CAAC,8BAAoB,GAAG,0BAA0B,CAAC,EAAE,wBAAc,CAAC,MAAM;QAC1E,CAAC,8BAAoB,GAAG,gCAAgC,CAAC,EAAE,sBAAY,CAAC,IAAI;KAC7E;CACF,CAAA"}
|
|
@@ -8,6 +8,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
11
14
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
12
15
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
13
16
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -26,7 +29,6 @@ const fs_1 = __importDefault(require("fs"));
|
|
|
26
29
|
const path_1 = __importDefault(require("path"));
|
|
27
30
|
const common_1 = require("@pristine-ts/common");
|
|
28
31
|
const tsyringe_1 = require("tsyringe");
|
|
29
|
-
const console_manager_1 = require("../managers/console.manager");
|
|
30
32
|
const shell_manager_1 = require("../managers/shell.manager");
|
|
31
33
|
const cli_module_keyname_1 = require("../cli.module.keyname");
|
|
32
34
|
const config_loader_1 = require("../config/config-loader");
|
|
@@ -51,8 +53,8 @@ const build_manifest_writer_1 = require("../bootstrap/build-manifest-writer");
|
|
|
51
53
|
* - clean: false (set true to wipe outDir before building)
|
|
52
54
|
*/
|
|
53
55
|
let BuildCommand = class BuildCommand {
|
|
54
|
-
constructor(
|
|
55
|
-
this.
|
|
56
|
+
constructor(logHandler, shellManager, configLoader, buildManifestWriter) {
|
|
57
|
+
this.logHandler = logHandler;
|
|
56
58
|
this.shellManager = shellManager;
|
|
57
59
|
this.configLoader = configLoader;
|
|
58
60
|
this.buildManifestWriter = buildManifestWriter;
|
|
@@ -75,18 +77,18 @@ let BuildCommand = class BuildCommand {
|
|
|
75
77
|
if (clean && outDir !== undefined) {
|
|
76
78
|
const absOut = path_1.default.resolve(projectRoot, outDir);
|
|
77
79
|
if (fs_1.default.existsSync(absOut)) {
|
|
78
|
-
this.
|
|
80
|
+
this.logHandler.info(`Cleaning ${outDir}/`, { highlights: { outDir } });
|
|
79
81
|
fs_1.default.rmSync(absOut, { recursive: true, force: true });
|
|
80
82
|
}
|
|
81
83
|
}
|
|
82
84
|
const invocations = this.resolveTscInvocations(projectRoot, tsconfig, format);
|
|
83
85
|
if (invocations.length === 0) {
|
|
84
|
-
this.
|
|
86
|
+
this.logHandler.error("No tsconfig found.", { highlights: { searched: this.expectedTsconfigsForFormat(tsconfig, format) } });
|
|
85
87
|
return common_1.ExitCode.Error;
|
|
86
88
|
}
|
|
87
89
|
for (const tsconfigPath of invocations) {
|
|
88
90
|
const relTsconfig = path_1.default.relative(projectRoot, tsconfigPath);
|
|
89
|
-
this.
|
|
91
|
+
this.logHandler.info(`Compiling with ${relTsconfig}`, { highlights: { tsconfig: relTsconfig } });
|
|
90
92
|
try {
|
|
91
93
|
// The shell command runs in the current process's CWD, which is already projectRoot.
|
|
92
94
|
// Don't pass `directory` here — ShellManager's PathManager resolution would double
|
|
@@ -98,12 +100,12 @@ let BuildCommand = class BuildCommand {
|
|
|
98
100
|
});
|
|
99
101
|
}
|
|
100
102
|
catch (error) {
|
|
101
|
-
this.
|
|
103
|
+
this.logHandler.error(`tsc failed for ${relTsconfig}`, { highlights: { tsconfig: relTsconfig } });
|
|
102
104
|
return common_1.ExitCode.Error;
|
|
103
105
|
}
|
|
104
106
|
}
|
|
105
107
|
this.writeManifestIfConfigured(projectRoot, (_f = resolvedConfig.config.cli) === null || _f === void 0 ? void 0 : _f.appModule);
|
|
106
|
-
this.
|
|
108
|
+
this.logHandler.success("Build complete.", { highlights: { tsconfigs: invocations.length } });
|
|
107
109
|
return common_1.ExitCode.Success;
|
|
108
110
|
});
|
|
109
111
|
}
|
|
@@ -116,16 +118,15 @@ let BuildCommand = class BuildCommand {
|
|
|
116
118
|
const absoluteSource = path_1.default.resolve(projectRoot, appModule.sourcePath);
|
|
117
119
|
const absoluteOutput = path_1.default.resolve(projectRoot, appModule.outputPath);
|
|
118
120
|
if (fs_1.default.existsSync(absoluteSource) === false) {
|
|
119
|
-
this.
|
|
121
|
+
this.logHandler.warning("Build succeeded but appModule.sourcePath does not exist; skipping manifest.", { highlights: { sourcePath: appModule.sourcePath } });
|
|
120
122
|
return;
|
|
121
123
|
}
|
|
122
124
|
if (fs_1.default.existsSync(absoluteOutput) === false) {
|
|
123
|
-
this.
|
|
124
|
-
`Check your tsconfig outDir / file layout.`);
|
|
125
|
+
this.logHandler.warning("Build succeeded but appModule.outputPath was not produced; skipping manifest. Check your tsconfig outDir / file layout.", { highlights: { outputPath: appModule.outputPath } });
|
|
125
126
|
return;
|
|
126
127
|
}
|
|
127
128
|
const manifest = this.buildManifestWriter.write(projectRoot, appModule.sourcePath, appModule.outputPath);
|
|
128
|
-
this.
|
|
129
|
+
this.logHandler.info("Manifest written: .pristine/build-manifest.json", { highlights: { builtAt: manifest.builtAt } });
|
|
129
130
|
}
|
|
130
131
|
/**
|
|
131
132
|
* For `format: "both"`, we run two passes: the primary tsconfig (assumed ESM-ish), then
|
|
@@ -164,8 +165,8 @@ exports.BuildCommand = BuildCommand = __decorate([
|
|
|
164
165
|
(0, common_1.tag)(common_1.ServiceDefinitionTagEnum.Command),
|
|
165
166
|
(0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname),
|
|
166
167
|
(0, tsyringe_1.injectable)(),
|
|
167
|
-
|
|
168
|
-
|
|
168
|
+
__param(0, (0, tsyringe_1.inject)("LogHandlerInterface")),
|
|
169
|
+
__metadata("design:paramtypes", [Object, shell_manager_1.ShellManager,
|
|
169
170
|
config_loader_1.ConfigLoader,
|
|
170
171
|
build_manifest_writer_1.BuildManifestWriter])
|
|
171
172
|
], BuildCommand);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.command.js","sourceRoot":"","sources":["../../../../src/commands/build.command.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"build.command.js","sourceRoot":"","sources":["../../../../src/commands/build.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,9 +26,15 @@ __exportStar(require("./init.command"), exports);
|
|
|
26
26
|
__exportStar(require("./init.command-options"), exports);
|
|
27
27
|
__exportStar(require("./list-alias.command"), exports);
|
|
28
28
|
__exportStar(require("./list.command"), exports);
|
|
29
|
+
__exportStar(require("./logs-alias.command"), exports);
|
|
30
|
+
__exportStar(require("./logs.command"), exports);
|
|
31
|
+
__exportStar(require("./requests-alias.command"), exports);
|
|
32
|
+
__exportStar(require("./requests.command"), exports);
|
|
29
33
|
__exportStar(require("./start-alias.command"), exports);
|
|
30
34
|
__exportStar(require("./start.command"), exports);
|
|
31
35
|
__exportStar(require("./start.command-options"), exports);
|
|
36
|
+
__exportStar(require("./trace-alias.command"), exports);
|
|
37
|
+
__exportStar(require("./trace.command"), exports);
|
|
32
38
|
__exportStar(require("./verify-alias.command"), exports);
|
|
33
39
|
__exportStar(require("./verify.command"), exports);
|
|
34
40
|
//# sourceMappingURL=commands.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../src/commands/commands.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,kDAAgC;AAChC,yDAAuC;AACvC,uDAAqC;AACrC,iDAA+B;AAC/B,uDAAqC;AACrC,iDAA+B;AAC/B,uDAAqC;AACrC,iDAA+B;AAC/B,yDAAuC;AACvC,uDAAqC;AACrC,iDAA+B;AAC/B,wDAAsC;AACtC,kDAAgC;AAChC,0DAAwC;AACxC,yDAAuC;AACvC,mDAAiC"}
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../src/commands/commands.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,kDAAgC;AAChC,yDAAuC;AACvC,uDAAqC;AACrC,iDAA+B;AAC/B,uDAAqC;AACrC,iDAA+B;AAC/B,uDAAqC;AACrC,iDAA+B;AAC/B,yDAAuC;AACvC,uDAAqC;AACrC,iDAA+B;AAC/B,uDAAqC;AACrC,iDAA+B;AAC/B,2DAAyC;AACzC,qDAAmC;AACnC,wDAAsC;AACtC,kDAAgC;AAChC,0DAAwC;AACxC,wDAAsC;AACtC,kDAAgC;AAChC,yDAAuC;AACvC,mDAAiC"}
|
|
@@ -0,0 +1,133 @@
|
|
|
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 __importDefault = (this && this.__importDefault) || function (mod) {
|
|
21
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.ConfigInitCommand = void 0;
|
|
25
|
+
const fs_1 = __importDefault(require("fs"));
|
|
26
|
+
const path_1 = __importDefault(require("path"));
|
|
27
|
+
const common_1 = require("@pristine-ts/common");
|
|
28
|
+
const tsyringe_1 = require("tsyringe");
|
|
29
|
+
const console_manager_1 = require("../managers/console.manager");
|
|
30
|
+
const exit_code_enum_1 = require("../enums/exit-code.enum");
|
|
31
|
+
const cli_module_keyname_1 = require("../cli.module.keyname");
|
|
32
|
+
/**
|
|
33
|
+
* Generates a starter `pristine.config.ts` in the current directory. If the consumer's
|
|
34
|
+
* `package.json` already declares `pristine.appModule.path` or `pristine.appModule.cjsPath`,
|
|
35
|
+
* the value is migrated into the new config and the user is told to remove the old field.
|
|
36
|
+
*/
|
|
37
|
+
let ConfigInitCommand = class ConfigInitCommand {
|
|
38
|
+
constructor(consoleManager) {
|
|
39
|
+
this.consoleManager = consoleManager;
|
|
40
|
+
this.optionsType = null;
|
|
41
|
+
this.name = "p:config:init";
|
|
42
|
+
this.description = "Generate a starter pristine.config.ts. Migrates from package.json if present.";
|
|
43
|
+
}
|
|
44
|
+
run(args) {
|
|
45
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
const projectRoot = process.cwd();
|
|
47
|
+
const targetPath = path_1.default.resolve(projectRoot, "pristine.config.ts");
|
|
48
|
+
if (fs_1.default.existsSync(targetPath)) {
|
|
49
|
+
this.consoleManager.writeError(`pristine.config.ts already exists at ${targetPath}. Aborting to avoid overwriting.`);
|
|
50
|
+
return exit_code_enum_1.ExitCodeEnum.Error;
|
|
51
|
+
}
|
|
52
|
+
const migratedAppModulePath = this.detectExistingAppModulePath(projectRoot);
|
|
53
|
+
const body = this.renderConfigTemplate(migratedAppModulePath);
|
|
54
|
+
fs_1.default.writeFileSync(targetPath, body, "utf8");
|
|
55
|
+
this.consoleManager.writeSuccess(`Created ${path_1.default.relative(projectRoot, targetPath)}`);
|
|
56
|
+
if (migratedAppModulePath !== undefined) {
|
|
57
|
+
this.consoleManager.writeInfo(`Migrated 'pristine.appModule' from package.json. ` +
|
|
58
|
+
`You can now remove the 'pristine' field from your package.json.`);
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
this.consoleManager.writeInfo("No existing pristine config found in package.json. " +
|
|
62
|
+
"Edit pristine.config.ts to point at your AppModule.");
|
|
63
|
+
}
|
|
64
|
+
return exit_code_enum_1.ExitCodeEnum.Success;
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
detectExistingAppModulePath(projectRoot) {
|
|
68
|
+
var _a;
|
|
69
|
+
const packageJson = path_1.default.resolve(projectRoot, "package.json");
|
|
70
|
+
if (fs_1.default.existsSync(packageJson) === false) {
|
|
71
|
+
return undefined;
|
|
72
|
+
}
|
|
73
|
+
let parsed;
|
|
74
|
+
try {
|
|
75
|
+
parsed = JSON.parse(fs_1.default.readFileSync(packageJson, "utf8"));
|
|
76
|
+
}
|
|
77
|
+
catch (_b) {
|
|
78
|
+
return undefined;
|
|
79
|
+
}
|
|
80
|
+
const appModule = (_a = parsed === null || parsed === void 0 ? void 0 : parsed.pristine) === null || _a === void 0 ? void 0 : _a.appModule;
|
|
81
|
+
if ((appModule === null || appModule === void 0 ? void 0 : appModule.path) !== undefined) {
|
|
82
|
+
return appModule.path;
|
|
83
|
+
}
|
|
84
|
+
if ((appModule === null || appModule === void 0 ? void 0 : appModule.cjsPath) !== undefined) {
|
|
85
|
+
return appModule.cjsPath;
|
|
86
|
+
}
|
|
87
|
+
return undefined;
|
|
88
|
+
}
|
|
89
|
+
renderConfigTemplate(appModulePath) {
|
|
90
|
+
const pathLine = appModulePath !== undefined
|
|
91
|
+
? ` path: "${appModulePath}",`
|
|
92
|
+
: ` // path: "dist/app.module.js", // <-- point this at your AppModule`;
|
|
93
|
+
return `import {defineConfig} from "@pristine-ts/cli";
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Pristine CLI configuration. See https://github.com/magieno/pristine-ts for the full
|
|
97
|
+
* schema reference.
|
|
98
|
+
*/
|
|
99
|
+
export default defineConfig({
|
|
100
|
+
appModule: {
|
|
101
|
+
${pathLine}
|
|
102
|
+
},
|
|
103
|
+
|
|
104
|
+
// build: {
|
|
105
|
+
// outDir: "dist",
|
|
106
|
+
// tsconfig: "tsconfig.json",
|
|
107
|
+
// format: "esm",
|
|
108
|
+
// },
|
|
109
|
+
|
|
110
|
+
// start: {
|
|
111
|
+
// entry: "dist/main.js",
|
|
112
|
+
// nodeArgs: ["--enable-source-maps"],
|
|
113
|
+
// },
|
|
114
|
+
|
|
115
|
+
// plugins: [
|
|
116
|
+
// // "@my-org/pristine-cli-extras",
|
|
117
|
+
// ],
|
|
118
|
+
|
|
119
|
+
// kernelConfiguration: {
|
|
120
|
+
// // "pristine.logging.logSeverityLevelConfiguration": 1,
|
|
121
|
+
// },
|
|
122
|
+
});
|
|
123
|
+
`;
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
exports.ConfigInitCommand = ConfigInitCommand;
|
|
127
|
+
exports.ConfigInitCommand = ConfigInitCommand = __decorate([
|
|
128
|
+
(0, common_1.tag)(common_1.ServiceDefinitionTagEnum.Command),
|
|
129
|
+
(0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname),
|
|
130
|
+
(0, tsyringe_1.injectable)(),
|
|
131
|
+
__metadata("design:paramtypes", [console_manager_1.ConsoleManager])
|
|
132
|
+
], ConfigInitCommand);
|
|
133
|
+
//# sourceMappingURL=config-init.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-init.command.js","sourceRoot":"","sources":["../../../../src/commands/config-init.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,17 +25,22 @@ exports.ConfigPrintCommand = void 0;
|
|
|
25
25
|
const path_1 = __importDefault(require("path"));
|
|
26
26
|
const common_1 = require("@pristine-ts/common");
|
|
27
27
|
const tsyringe_1 = require("tsyringe");
|
|
28
|
-
const
|
|
28
|
+
const cli_output_manager_1 = require("../managers/cli-output.manager");
|
|
29
29
|
const cli_module_keyname_1 = require("../cli.module.keyname");
|
|
30
30
|
const config_loader_1 = require("../config/config-loader");
|
|
31
31
|
/**
|
|
32
32
|
* Prints the resolved Pristine configuration plus where it was loaded from. Useful for
|
|
33
33
|
* debugging discovery — when `pristine` is doing something unexpected, the first question is
|
|
34
34
|
* always "which config file did it actually pick up?"
|
|
35
|
+
*
|
|
36
|
+
* This is a report command: its entire output is the report. It goes through `CliOutput`
|
|
37
|
+
* exclusively (not `LogHandler`) so the dump pipes/redirects cleanly — `pristine
|
|
38
|
+
* p:config:print > config.json` must produce a usable file, with no severity gating, no
|
|
39
|
+
* per-line timestamp/icon decoration, and no fan-out to file/Sentry transports.
|
|
35
40
|
*/
|
|
36
41
|
let ConfigPrintCommand = class ConfigPrintCommand {
|
|
37
|
-
constructor(
|
|
38
|
-
this.
|
|
42
|
+
constructor(cliOutput, configLoader) {
|
|
43
|
+
this.cliOutput = cliOutput;
|
|
39
44
|
this.configLoader = configLoader;
|
|
40
45
|
this.optionsType = null;
|
|
41
46
|
this.name = "p:config:print";
|
|
@@ -45,18 +50,18 @@ let ConfigPrintCommand = class ConfigPrintCommand {
|
|
|
45
50
|
return __awaiter(this, void 0, void 0, function* () {
|
|
46
51
|
const resolved = yield this.configLoader.load({ startDir: process.cwd() });
|
|
47
52
|
if (resolved.configFilePath !== undefined) {
|
|
48
|
-
this.
|
|
53
|
+
this.cliOutput.writeLine(`Config file: ${path_1.default.relative(process.cwd(), resolved.configFilePath)}`);
|
|
49
54
|
}
|
|
50
55
|
else {
|
|
51
|
-
this.
|
|
56
|
+
this.cliOutput.writeLine("No config file found — running with defaults.");
|
|
52
57
|
}
|
|
53
|
-
this.
|
|
54
|
-
this.
|
|
58
|
+
this.cliOutput.writeLine("");
|
|
59
|
+
this.cliOutput.writeLine(JSON.stringify(resolved.config, null, 2));
|
|
55
60
|
if (Object.keys(resolved.provenance).length > 0) {
|
|
56
|
-
this.
|
|
57
|
-
this.
|
|
61
|
+
this.cliOutput.writeLine("");
|
|
62
|
+
this.cliOutput.writeLine("Provenance:");
|
|
58
63
|
for (const [field, source] of Object.entries(resolved.provenance)) {
|
|
59
|
-
this.
|
|
64
|
+
this.cliOutput.writeLine(` ${field}: ${source}`);
|
|
60
65
|
}
|
|
61
66
|
}
|
|
62
67
|
return common_1.ExitCode.Success;
|
|
@@ -68,7 +73,7 @@ exports.ConfigPrintCommand = ConfigPrintCommand = __decorate([
|
|
|
68
73
|
(0, common_1.tag)(common_1.ServiceDefinitionTagEnum.Command),
|
|
69
74
|
(0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname),
|
|
70
75
|
(0, tsyringe_1.injectable)(),
|
|
71
|
-
__metadata("design:paramtypes", [
|
|
76
|
+
__metadata("design:paramtypes", [cli_output_manager_1.CliOutput,
|
|
72
77
|
config_loader_1.ConfigLoader])
|
|
73
78
|
], ConfigPrintCommand);
|
|
74
79
|
//# sourceMappingURL=config-print.command.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-print.command.js","sourceRoot":"","sources":["../../../../src/commands/config-print.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AACxB,gDAA0F;AAC1F,uCAAoC;AAEpC,
|
|
1
|
+
{"version":3,"file":"config-print.command.js","sourceRoot":"","sources":["../../../../src/commands/config-print.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AACxB,gDAA0F;AAC1F,uCAAoC;AAEpC,uEAAyD;AACzD,8DAAuD;AACvD,2DAAqD;AAErD;;;;;;;;;GASG;AAII,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAK7B,YACmB,SAAoB,EACpB,YAA0B;QAD1B,cAAS,GAAT,SAAS,CAAW;QACpB,iBAAY,GAAZ,YAAY,CAAc;QAN7C,gBAAW,GAAG,IAAI,CAAC;QACnB,SAAI,GAAG,gBAAgB,CAAC;QACxB,gBAAW,GAAG,0EAA0E,CAAC;IAMzF,CAAC;IAEK,GAAG,CAAC,IAAS;;YACjB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE,EAAC,CAAC,CAAC;YAEzE,IAAI,QAAQ,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;gBAC1C,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,gBAAgB,cAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YACpG,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,+CAA+C,CAAC,CAAC;YAC5E,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAEnE,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAC7B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;gBACxC,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBAClE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,KAAK,KAAK,MAAM,EAAE,CAAC,CAAC;gBACpD,CAAC;YACH,CAAC;YAED,OAAO,iBAAQ,CAAC,OAAO,CAAC;QAC1B,CAAC;KAAA;CACF,CAAA;AAjCY,gDAAkB;6BAAlB,kBAAkB;IAH9B,IAAA,YAAG,EAAC,iCAAwB,CAAC,OAAO,CAAC;IACrC,IAAA,qBAAY,EAAC,qCAAgB,CAAC;IAC9B,IAAA,qBAAU,GAAE;qCAOmB,8BAAS;QACN,4BAAY;GAPlC,kBAAkB,CAiC9B"}
|
|
@@ -24,7 +24,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
24
24
|
exports.HelpCommand = void 0;
|
|
25
25
|
const tsyringe_1 = require("tsyringe");
|
|
26
26
|
const common_1 = require("@pristine-ts/common");
|
|
27
|
-
const
|
|
27
|
+
const cli_output_manager_1 = require("../managers/cli-output.manager");
|
|
28
28
|
const cli_module_keyname_1 = require("../cli.module.keyname");
|
|
29
29
|
/**
|
|
30
30
|
* Prints a usage banner plus a one-line summary for every registered command. The output is
|
|
@@ -42,8 +42,8 @@ const cli_module_keyname_1 = require("../cli.module.keyname");
|
|
|
42
42
|
* by which point every Command-tagged class is fully constructed and cached.
|
|
43
43
|
*/
|
|
44
44
|
let HelpCommand = class HelpCommand {
|
|
45
|
-
constructor(
|
|
46
|
-
this.
|
|
45
|
+
constructor(cliOutput, container) {
|
|
46
|
+
this.cliOutput = cliOutput;
|
|
47
47
|
this.container = container;
|
|
48
48
|
this.optionsType = null;
|
|
49
49
|
this.name = "p:help";
|
|
@@ -58,25 +58,25 @@ let HelpCommand = class HelpCommand {
|
|
|
58
58
|
// The lazy resolve breaks the cycle. The child container is constructor-
|
|
59
59
|
// injected, so only the enumeration is late-bound.
|
|
60
60
|
const commands = this.container.resolveAll(common_1.ServiceDefinitionTagEnum.Command);
|
|
61
|
-
this.
|
|
62
|
-
this.
|
|
63
|
-
this.
|
|
64
|
-
this.
|
|
65
|
-
this.
|
|
66
|
-
this.
|
|
61
|
+
this.cliOutput.writeLine("Pristine CLI");
|
|
62
|
+
this.cliOutput.writeLine("");
|
|
63
|
+
this.cliOutput.writeLine("Usage:");
|
|
64
|
+
this.cliOutput.writeLine(" pristine <command> [--option=value ...]");
|
|
65
|
+
this.cliOutput.writeLine("");
|
|
66
|
+
this.cliOutput.writeLine("Commands:");
|
|
67
67
|
const sorted = [...commands].sort((a, b) => a.name.localeCompare(b.name));
|
|
68
68
|
const longestName = sorted.reduce((max, c) => Math.max(max, c.name.length), 0);
|
|
69
69
|
for (const command of sorted) {
|
|
70
70
|
const padded = command.name.padEnd(longestName + 2, " ");
|
|
71
71
|
const description = (_a = command.description) !== null && _a !== void 0 ? _a : "";
|
|
72
|
-
this.
|
|
72
|
+
this.cliOutput.writeLine(` ${padded}${description}`);
|
|
73
73
|
}
|
|
74
|
-
this.
|
|
75
|
-
this.
|
|
76
|
-
this.
|
|
77
|
-
this.
|
|
78
|
-
this.
|
|
79
|
-
this.
|
|
74
|
+
this.cliOutput.writeLine("");
|
|
75
|
+
this.cliOutput.writeLine("Adding your own command:");
|
|
76
|
+
this.cliOutput.writeLine(" 1. Implement CommandInterface from '@pristine-ts/cli'");
|
|
77
|
+
this.cliOutput.writeLine(" 2. Decorate with @tag(ServiceDefinitionTagEnum.Command) @injectable()");
|
|
78
|
+
this.cliOutput.writeLine(" 3. Make sure your AppModule's import graph reaches the file");
|
|
79
|
+
this.cliOutput.writeLine(" 4. Invoke as: pristine <your-command-name>");
|
|
80
80
|
return common_1.ExitCode.Success;
|
|
81
81
|
});
|
|
82
82
|
}
|
|
@@ -87,6 +87,6 @@ exports.HelpCommand = HelpCommand = __decorate([
|
|
|
87
87
|
(0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname),
|
|
88
88
|
(0, tsyringe_1.injectable)(),
|
|
89
89
|
__param(1, (0, tsyringe_1.inject)(common_1.ServiceDefinitionTagEnum.CurrentChildContainer)),
|
|
90
|
-
__metadata("design:paramtypes", [
|
|
90
|
+
__metadata("design:paramtypes", [cli_output_manager_1.CliOutput, Object])
|
|
91
91
|
], HelpCommand);
|
|
92
92
|
//# sourceMappingURL=help.command.js.map
|