@pristine-ts/cli 2.0.6 → 2.0.7

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.
Files changed (85) hide show
  1. package/dist/lib/cjs/bootstrap/build-runner.js +1 -1
  2. package/dist/lib/cjs/cli.module.js +12 -7
  3. package/dist/lib/cjs/cli.module.js.map +1 -1
  4. package/dist/lib/cjs/commands/build.command.js +15 -14
  5. package/dist/lib/cjs/commands/build.command.js.map +1 -1
  6. package/dist/lib/cjs/commands/config-print.command.js +16 -11
  7. package/dist/lib/cjs/commands/config-print.command.js.map +1 -1
  8. package/dist/lib/cjs/commands/help.command.js +17 -17
  9. package/dist/lib/cjs/commands/help.command.js.map +1 -1
  10. package/dist/lib/cjs/commands/info.command.js +26 -21
  11. package/dist/lib/cjs/commands/info.command.js.map +1 -1
  12. package/dist/lib/cjs/commands/init.command.js +22 -21
  13. package/dist/lib/cjs/commands/init.command.js.map +1 -1
  14. package/dist/lib/cjs/commands/list.command.js +6 -6
  15. package/dist/lib/cjs/commands/list.command.js.map +1 -1
  16. package/dist/lib/cjs/commands/start.command.js +12 -13
  17. package/dist/lib/cjs/commands/start.command.js.map +1 -1
  18. package/dist/lib/cjs/event-handlers/cli.event-handler.js +9 -7
  19. package/dist/lib/cjs/event-handlers/cli.event-handler.js.map +1 -1
  20. package/dist/lib/cjs/managers/cli-output.manager.js +45 -0
  21. package/dist/lib/cjs/managers/cli-output.manager.js.map +1 -0
  22. package/dist/lib/cjs/managers/cli-progress-bar.manager.js +49 -0
  23. package/dist/lib/cjs/managers/cli-progress-bar.manager.js.map +1 -0
  24. package/dist/lib/cjs/managers/cli-prompt.manager.js +99 -0
  25. package/dist/lib/cjs/managers/cli-prompt.manager.js.map +1 -0
  26. package/dist/lib/cjs/managers/cli-spinner.manager.js +93 -0
  27. package/dist/lib/cjs/managers/cli-spinner.manager.js.map +1 -0
  28. package/dist/lib/cjs/managers/managers.js +4 -1
  29. package/dist/lib/cjs/managers/managers.js.map +1 -1
  30. package/dist/lib/cjs/managers/shell.manager.js +25 -20
  31. package/dist/lib/cjs/managers/shell.manager.js.map +1 -1
  32. package/dist/lib/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  33. package/dist/lib/esm/bootstrap/build-runner.js +1 -1
  34. package/dist/lib/esm/cli.module.js +12 -7
  35. package/dist/lib/esm/cli.module.js.map +1 -1
  36. package/dist/lib/esm/commands/build.command.js +16 -15
  37. package/dist/lib/esm/commands/build.command.js.map +1 -1
  38. package/dist/lib/esm/commands/config-print.command.js +16 -11
  39. package/dist/lib/esm/commands/config-print.command.js.map +1 -1
  40. package/dist/lib/esm/commands/help.command.js +17 -17
  41. package/dist/lib/esm/commands/help.command.js.map +1 -1
  42. package/dist/lib/esm/commands/info.command.js +27 -22
  43. package/dist/lib/esm/commands/info.command.js.map +1 -1
  44. package/dist/lib/esm/commands/init.command.js +23 -22
  45. package/dist/lib/esm/commands/init.command.js.map +1 -1
  46. package/dist/lib/esm/commands/list.command.js +6 -6
  47. package/dist/lib/esm/commands/list.command.js.map +1 -1
  48. package/dist/lib/esm/commands/start.command.js +13 -14
  49. package/dist/lib/esm/commands/start.command.js.map +1 -1
  50. package/dist/lib/esm/event-handlers/cli.event-handler.js +9 -7
  51. package/dist/lib/esm/event-handlers/cli.event-handler.js.map +1 -1
  52. package/dist/lib/esm/managers/cli-output.manager.js +42 -0
  53. package/dist/lib/esm/managers/cli-output.manager.js.map +1 -0
  54. package/dist/lib/esm/managers/cli-progress-bar.manager.js +46 -0
  55. package/dist/lib/esm/managers/cli-progress-bar.manager.js.map +1 -0
  56. package/dist/lib/esm/managers/cli-prompt.manager.js +63 -0
  57. package/dist/lib/esm/managers/cli-prompt.manager.js.map +1 -0
  58. package/dist/lib/esm/managers/cli-spinner.manager.js +90 -0
  59. package/dist/lib/esm/managers/cli-spinner.manager.js.map +1 -0
  60. package/dist/lib/esm/managers/managers.js +4 -1
  61. package/dist/lib/esm/managers/managers.js.map +1 -1
  62. package/dist/lib/esm/managers/shell.manager.js +26 -21
  63. package/dist/lib/esm/managers/shell.manager.js.map +1 -1
  64. package/dist/lib/esm/tsconfig.tsbuildinfo +1 -1
  65. package/dist/types/bootstrap/build-runner.d.ts +1 -1
  66. package/dist/types/commands/build.command.d.ts +3 -3
  67. package/dist/types/commands/config-print.command.d.ts +8 -3
  68. package/dist/types/commands/help.command.d.ts +3 -3
  69. package/dist/types/commands/info.command.d.ts +5 -3
  70. package/dist/types/commands/init.command.d.ts +3 -3
  71. package/dist/types/commands/list.command.d.ts +3 -3
  72. package/dist/types/commands/start.command.d.ts +3 -3
  73. package/dist/types/event-handlers/cli.event-handler.d.ts +1 -3
  74. package/dist/types/managers/cli-output.manager.d.ts +21 -0
  75. package/dist/types/managers/cli-progress-bar.manager.d.ts +17 -0
  76. package/dist/types/managers/cli-prompt.manager.d.ts +22 -0
  77. package/dist/types/managers/cli-spinner.manager.d.ts +34 -0
  78. package/dist/types/managers/managers.d.ts +4 -1
  79. package/dist/types/managers/shell.manager.d.ts +3 -3
  80. package/package.json +9 -9
  81. package/dist/lib/cjs/managers/console.manager.js +0 -277
  82. package/dist/lib/cjs/managers/console.manager.js.map +0 -1
  83. package/dist/lib/esm/managers/console.manager.js +0 -241
  84. package/dist/lib/esm/managers/console.manager.js.map +0 -1
  85. package/dist/types/managers/console.manager.d.ts +0 -93
@@ -15,7 +15,7 @@ const child_process_1 = require("child_process");
15
15
  * inline avoids the awkward "exit, ask the user to type a command, re-enter" loop.
16
16
  *
17
17
  * Spawning rather than dispatching to `BuildCommand` directly keeps `AppModuleLoader` free
18
- * of the build pipeline's dependency graph (ConsoleManager, ShellManager, etc.) which only
18
+ * of the build pipeline's dependency graph (LogHandler, ShellManager, CliOutput, etc.) which only
19
19
  * exists in the kernel container — and the kernel hasn't booted yet at the point this is
20
20
  * called. The subprocess re-bootstraps the kernel cleanly with all of those services.
21
21
  *
@@ -48,11 +48,16 @@ exports.CliModule = {
48
48
  validation_1.ValidationModule,
49
49
  ],
50
50
  /**
51
- * When running through the CLI, logs share stderr with our own CLI output. We layer a
52
- * tighter set of defaults than `LoggingModule` ships with so the terminal stays
53
- * readable: Simple line-oriented format and `Error`-only severity threshold. Users can
54
- * override both in `pristine.config.ts:config` or via env-var resolvers — `configDefaults`
55
- * sits below the file and overrides in the resolution chain.
51
+ * When running through the CLI, logs are the user-facing channel there is no separate
52
+ * "structured output" surface that competes with them. We layer a CLI-friendly set of
53
+ * defaults on top of LoggingModule's: the `Pretty` output mode (colored, icon-prefixed
54
+ * single-line rendering) and the `Info` severity threshold so command narration
55
+ * (`Compiling`, `Build complete`, `Server listening`) is visible by default — matching
56
+ * the pre-LogHandler-consolidation behavior of `ConsoleManager.writeInfo/Success`.
57
+ * Users who want a quieter CLI (or a different output mode) can override either key in
58
+ * `pristine.config.ts:config` — the file beats `configDefaults` in the resolution chain.
59
+ * Env vars are checked LAST in the resolver chain, after configDefaults, so they cannot
60
+ * override these CLI defaults; use the config file for that.
56
61
  *
57
62
  * No `isLoggingModulePresent` check needed — `LoggingModule` is a hard import above, so
58
63
  * these keys are always registered when CliModule is in the graph. (And if a future
@@ -60,8 +65,8 @@ exports.CliModule = {
60
65
  * with an actionable "unknown key" error — the right failure mode for that case.)
61
66
  */
62
67
  configDefaults: {
63
- [logging_1.LoggingModuleKeyname + ".consoleLoggerOutputMode"]: logging_1.OutputModeEnum.Simple,
64
- [logging_1.LoggingModuleKeyname + ".logSeverityLevelConfiguration"]: logging_1.SeverityEnum.Error,
68
+ [logging_1.LoggingModuleKeyname + ".consoleLoggerOutputMode"]: logging_1.OutputModeEnum.Pretty,
69
+ [logging_1.LoggingModuleKeyname + ".logSeverityLevelConfiguration"]: logging_1.SeverityEnum.Info,
65
70
  },
66
71
  };
67
72
  //# 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;AAE3D,wDAAsC;AACtC,sDAAoC;AACpC,kDAAgC;AAChC,kDAAgC;AAChC,kEAAgD;AAChD,kEAAgD;AAChD,0DAAwC;AACxC,sDAAoC;AACpC,oDAAkC;AAClC,oDAAkC;AAClC,iEAA+C;AAC/C,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,EAAE;IAC5B,aAAa,EAAE;QACb,iBAAU;QACV,gCAAiB;QACjB,uBAAa;QACb,6BAAgB;KACjB;IACD;;;;;;;;;;;OAWG;IACH,cAAc,EAAE;QACd,CAAC,8BAAoB,GAAG,0BAA0B,CAAC,EAAE,wBAAc,CAAC,MAAM;QAC1E,CAAC,8BAAoB,GAAG,gCAAgC,CAAC,EAAE,sBAAY,CAAC,KAAK;KAC9E;CACF,CAAA"}
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;AAE3D,wDAAsC;AACtC,sDAAoC;AACpC,kDAAgC;AAChC,kDAAgC;AAChC,kEAAgD;AAChD,kEAAgD;AAChD,0DAAwC;AACxC,sDAAoC;AACpC,oDAAkC;AAClC,oDAAkC;AAClC,iEAA+C;AAC/C,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,EAAE;IAC5B,aAAa,EAAE;QACb,iBAAU;QACV,gCAAiB;QACjB,uBAAa;QACb,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(consoleManager, shellManager, configLoader, buildManifestWriter) {
55
- this.consoleManager = consoleManager;
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.consoleManager.writeInfo(`Cleaning ${outDir}/`);
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.consoleManager.writeError(`No tsconfig found. Looked for: ${this.expectedTsconfigsForFormat(tsconfig, format).join(", ")}`);
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.consoleManager.writeInfo(`Compiling with ${relTsconfig}`);
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.consoleManager.writeError(`tsc failed for ${relTsconfig}`);
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.consoleManager.writeSuccess(`Build complete (${invocations.length} tsconfig${invocations.length > 1 ? "s" : ""}).`);
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.consoleManager.writeWarning(`Build succeeded but appModule.sourcePath '${appModule.sourcePath}' does not exist; skipping manifest.`);
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.consoleManager.writeWarning(`Build succeeded but appModule.outputPath '${appModule.outputPath}' was not produced; skipping manifest. ` +
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.consoleManager.writeInfo(`Manifest written: .pristine/build-manifest.json (built at ${manifest.builtAt})`);
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
- __metadata("design:paramtypes", [console_manager_1.ConsoleManager,
168
- shell_manager_1.ShellManager,
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":"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"}
1
+ {"version":3,"file":"build.command.js","sourceRoot":"","sources":["../../../../src/commands/build.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 console_manager_1 = require("../managers/console.manager");
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(consoleManager, configLoader) {
38
- this.consoleManager = consoleManager;
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.consoleManager.writeInfo(`Config file: ${path_1.default.relative(process.cwd(), resolved.configFilePath)}`);
53
+ this.cliOutput.writeLine(`Config file: ${path_1.default.relative(process.cwd(), resolved.configFilePath)}`);
49
54
  }
50
55
  else {
51
- this.consoleManager.writeInfo("No config file found — running with defaults.");
56
+ this.cliOutput.writeLine("No config file found — running with defaults.");
52
57
  }
53
- this.consoleManager.writeLine("");
54
- this.consoleManager.writeLine(JSON.stringify(resolved.config, null, 2));
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.consoleManager.writeLine("");
57
- this.consoleManager.writeInfo("Provenance:");
61
+ this.cliOutput.writeLine("");
62
+ this.cliOutput.writeLine("Provenance:");
58
63
  for (const [field, source] of Object.entries(resolved.provenance)) {
59
- this.consoleManager.writeLine(` ${field}: ${source}`);
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", [console_manager_1.ConsoleManager,
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,iEAA2D;AAC3D,8DAAuD;AACvD,2DAAqD;AAErD;;;;GAIG;AAII,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAK7B,YACmB,cAA8B,EAC9B,YAA0B;QAD1B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,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,cAAc,CAAC,SAAS,CAAC,gBAAgB,cAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YACzG,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,+CAA+C,CAAC,CAAC;YACjF,CAAC;YAED,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAExE,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChD,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAClC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;gBAC7C,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBAClE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,KAAK,KAAK,MAAM,EAAE,CAAC,CAAC;gBACzD,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;qCAOwB,gCAAc;QAChB,4BAAY;GAPlC,kBAAkB,CAiC9B"}
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 console_manager_1 = require("../managers/console.manager");
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(consoleManager, container) {
46
- this.consoleManager = consoleManager;
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.consoleManager.writeLine("Pristine CLI");
62
- this.consoleManager.writeLine("");
63
- this.consoleManager.writeLine("Usage:");
64
- this.consoleManager.writeLine(" pristine <command> [--option=value ...]");
65
- this.consoleManager.writeLine("");
66
- this.consoleManager.writeLine("Commands:");
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.consoleManager.writeLine(` ${padded}${description}`);
72
+ this.cliOutput.writeLine(` ${padded}${description}`);
73
73
  }
74
- this.consoleManager.writeLine("");
75
- this.consoleManager.writeLine("Adding your own command:");
76
- this.consoleManager.writeLine(" 1. Implement CommandInterface from '@pristine-ts/cli'");
77
- this.consoleManager.writeLine(" 2. Decorate with @tag(ServiceDefinitionTagEnum.Command) @injectable()");
78
- this.consoleManager.writeLine(" 3. Make sure your AppModule's import graph reaches the file");
79
- this.consoleManager.writeLine(" 4. Invoke as: pristine <your-command-name>");
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", [console_manager_1.ConsoleManager, Object])
90
+ __metadata("design:paramtypes", [cli_output_manager_1.CliOutput, Object])
91
91
  ], HelpCommand);
92
92
  //# sourceMappingURL=help.command.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"help.command.js","sourceRoot":"","sources":["../../../../src/commands/help.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAiE;AACjE,gDAA0F;AAE1F,iEAA2D;AAC3D,8DAAuD;AAEvD;;;;;;;;;;;;;;GAcG;AAII,IAAM,WAAW,GAAjB,MAAM,WAAW;IAKtB,YACmB,cAA8B,EACS,SAA+C;QADtF,mBAAc,GAAd,cAAc,CAAgB;QAC0B,cAAS,GAAT,SAAS,CAAqB;QANzG,gBAAW,GAAG,IAAI,CAAC;QACnB,SAAI,GAAG,QAAQ,CAAC;QAChB,gBAAW,GAAG,0DAA0D,CAAC;IAMzE,CAAC;IAEK,GAAG,CAAC,IAAS;;;YACjB,+EAA+E;YAC/E,6EAA6E;YAC7E,8EAA8E;YAC9E,yEAAyE;YACzE,mDAAmD;YACnD,MAAM,QAAQ,GAA4B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,iCAAwB,CAAC,OAAO,CAAC,CAAC;YAEtG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;YAC9C,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACxC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,2CAA2C,CAAC,CAAC;YAC3E,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAE3C,MAAM,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1E,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAE/E,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;gBACzD,MAAM,WAAW,GAAG,MAAA,OAAO,CAAC,WAAW,mCAAI,EAAE,CAAC;gBAC9C,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,MAAM,GAAG,WAAW,EAAE,CAAC,CAAC;YAC7D,CAAC;YAED,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;YAC1D,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,yDAAyD,CAAC,CAAC;YACzF,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,yEAAyE,CAAC,CAAC;YACzG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,+DAA+D,CAAC,CAAC;YAC/F,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,8CAA8C,CAAC,CAAC;YAE9E,OAAO,iBAAQ,CAAC,OAAO,CAAC;QAC1B,CAAC;KAAA;CACF,CAAA;AA5CY,kCAAW;sBAAX,WAAW;IAHvB,IAAA,YAAG,EAAC,iCAAwB,CAAC,OAAO,CAAC;IACrC,IAAA,qBAAY,EAAC,qCAAgB,CAAC;IAC9B,IAAA,qBAAU,GAAE;IAQR,WAAA,IAAA,iBAAM,EAAC,iCAAwB,CAAC,qBAAqB,CAAC,CAAA;qCADtB,gCAAc;GANtC,WAAW,CA4CvB"}
1
+ {"version":3,"file":"help.command.js","sourceRoot":"","sources":["../../../../src/commands/help.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAiE;AACjE,gDAA0F;AAE1F,uEAAyD;AACzD,8DAAuD;AAEvD;;;;;;;;;;;;;;GAcG;AAII,IAAM,WAAW,GAAjB,MAAM,WAAW;IAKtB,YACmB,SAAoB,EACmB,SAA+C;QADtF,cAAS,GAAT,SAAS,CAAW;QACoC,cAAS,GAAT,SAAS,CAAqB;QANzG,gBAAW,GAAG,IAAI,CAAC;QACnB,SAAI,GAAG,QAAQ,CAAC;QAChB,gBAAW,GAAG,0DAA0D,CAAC;IAMzE,CAAC;IAEK,GAAG,CAAC,IAAS;;;YACjB,+EAA+E;YAC/E,6EAA6E;YAC7E,8EAA8E;YAC9E,yEAAyE;YACzE,mDAAmD;YACnD,MAAM,QAAQ,GAA4B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,iCAAwB,CAAC,OAAO,CAAC,CAAC;YAEtG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;YACzC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACnC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,2CAA2C,CAAC,CAAC;YACtE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAEtC,MAAM,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1E,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAE/E,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;gBACzD,MAAM,WAAW,GAAG,MAAA,OAAO,CAAC,WAAW,mCAAI,EAAE,CAAC;gBAC9C,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,MAAM,GAAG,WAAW,EAAE,CAAC,CAAC;YACxD,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;YACrD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,yDAAyD,CAAC,CAAC;YACpF,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,yEAAyE,CAAC,CAAC;YACpG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,+DAA+D,CAAC,CAAC;YAC1F,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,8CAA8C,CAAC,CAAC;YAEzE,OAAO,iBAAQ,CAAC,OAAO,CAAC;QAC1B,CAAC;KAAA;CACF,CAAA;AA5CY,kCAAW;sBAAX,WAAW;IAHvB,IAAA,YAAG,EAAC,iCAAwB,CAAC,OAAO,CAAC;IACrC,IAAA,qBAAY,EAAC,qCAAgB,CAAC;IAC9B,IAAA,qBAAU,GAAE;IAQR,WAAA,IAAA,iBAAM,EAAC,iCAAwB,CAAC,qBAAqB,CAAC,CAAA;qCAD3B,8BAAS;GAN5B,WAAW,CA4CvB"}
@@ -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) {
@@ -27,7 +30,7 @@ const os_1 = __importDefault(require("os"));
27
30
  const path_1 = __importDefault(require("path"));
28
31
  const common_1 = require("@pristine-ts/common");
29
32
  const tsyringe_1 = require("tsyringe");
30
- const console_manager_1 = require("../managers/console.manager");
33
+ const cli_output_manager_1 = require("../managers/cli-output.manager");
31
34
  const cli_module_keyname_1 = require("../cli.module.keyname");
32
35
  const config_loader_1 = require("../config/config-loader");
33
36
  const app_module_loader_1 = require("../bootstrap/app-module-loader");
@@ -42,8 +45,9 @@ const app_module_loader_1 = require("../bootstrap/app-module-loader");
42
45
  * prevents `kernel.start()`.
43
46
  */
44
47
  let InfoCommand = class InfoCommand {
45
- constructor(consoleManager, configLoader, appModuleLoader) {
46
- this.consoleManager = consoleManager;
48
+ constructor(logHandler, cliOutput, configLoader, appModuleLoader) {
49
+ this.logHandler = logHandler;
50
+ this.cliOutput = cliOutput;
47
51
  this.configLoader = configLoader;
48
52
  this.appModuleLoader = appModuleLoader;
49
53
  this.optionsType = null;
@@ -64,26 +68,26 @@ let InfoCommand = class InfoCommand {
64
68
  });
65
69
  }
66
70
  printRuntimeBanner() {
67
- this.consoleManager.writeLine("Pristine CLI");
68
- this.consoleManager.writeLine(` Version: ${this.readCliVersion()}`);
69
- this.consoleManager.writeLine(` Node: ${process.version}`);
70
- this.consoleManager.writeLine(` Platform: ${os_1.default.platform()} ${os_1.default.arch()} (${os_1.default.release()})`);
71
- this.consoleManager.writeLine(` CWD: ${process.cwd()}`);
72
- this.consoleManager.writeLine("");
71
+ this.cliOutput.writeLine("Pristine CLI");
72
+ this.cliOutput.writeLine(` Version: ${this.readCliVersion()}`);
73
+ this.cliOutput.writeLine(` Node: ${process.version}`);
74
+ this.cliOutput.writeLine(` Platform: ${os_1.default.platform()} ${os_1.default.arch()} (${os_1.default.release()})`);
75
+ this.cliOutput.writeLine(` CWD: ${process.cwd()}`);
76
+ this.cliOutput.writeLine("");
73
77
  }
74
78
  printConfigSection() {
75
79
  return __awaiter(this, void 0, void 0, function* () {
76
80
  var _a, _b, _c, _d, _e;
77
81
  const resolvedConfig = yield this.configLoader.load({ startDir: process.cwd() });
78
- this.consoleManager.writeLine("Configuration");
79
- this.consoleManager.writeLine(` Config file: ${(_a = resolvedConfig.configFilePath) !== null && _a !== void 0 ? _a : "(none — using defaults)"}`);
82
+ this.cliOutput.writeLine("Configuration");
83
+ this.cliOutput.writeLine(` Config file: ${(_a = resolvedConfig.configFilePath) !== null && _a !== void 0 ? _a : "(none — using defaults)"}`);
80
84
  if (((_c = (_b = resolvedConfig.config.cli) === null || _b === void 0 ? void 0 : _b.appModule) === null || _c === void 0 ? void 0 : _c.sourcePath) !== undefined) {
81
- this.consoleManager.writeLine(` AppModule src: ${resolvedConfig.config.cli.appModule.sourcePath} (from config file)`);
85
+ this.cliOutput.writeLine(` AppModule src: ${resolvedConfig.config.cli.appModule.sourcePath} (from config file)`);
82
86
  }
83
87
  if (((_e = (_d = resolvedConfig.config.cli) === null || _d === void 0 ? void 0 : _d.appModule) === null || _e === void 0 ? void 0 : _e.outputPath) !== undefined) {
84
- this.consoleManager.writeLine(` AppModule out: ${resolvedConfig.config.cli.appModule.outputPath} (from config file)`);
88
+ this.cliOutput.writeLine(` AppModule out: ${resolvedConfig.config.cli.appModule.outputPath} (from config file)`);
85
89
  }
86
- this.consoleManager.writeLine("");
90
+ this.cliOutput.writeLine("");
87
91
  });
88
92
  }
89
93
  printAppModuleSection() {
@@ -94,25 +98,25 @@ let InfoCommand = class InfoCommand {
94
98
  const loaded = yield this.appModuleLoader.load();
95
99
  modules = this.collectModules(loaded.appModule);
96
100
  pluginNames = loaded.plugins.map(p => p.name);
97
- this.consoleManager.writeLine(`AppModule: ${loaded.appModule.keyname}`);
101
+ this.cliOutput.writeLine(`AppModule: ${loaded.appModule.keyname}`);
98
102
  }
99
103
  catch (error) {
100
- this.consoleManager.writeError(`Could not load AppModule: ${error.message}`);
104
+ this.logHandler.error("Could not load AppModule", { highlights: { error: error.message } });
101
105
  return common_1.ExitCode.Error;
102
106
  }
103
107
  if (pluginNames.length > 0) {
104
- this.consoleManager.writeLine(`Plugins (${pluginNames.length}):`);
108
+ this.cliOutput.writeLine(`Plugins (${pluginNames.length}):`);
105
109
  for (const name of pluginNames) {
106
- this.consoleManager.writeLine(` - ${name}`);
110
+ this.cliOutput.writeLine(` - ${name}`);
107
111
  }
108
112
  }
109
- this.consoleManager.writeLine(`Imported modules (${modules.length}):`);
113
+ this.cliOutput.writeLine(`Imported modules (${modules.length}):`);
110
114
  const uniqueByKeyname = new Map();
111
115
  for (const m of modules) {
112
116
  uniqueByKeyname.set(m.keyname, m);
113
117
  }
114
118
  for (const m of [...uniqueByKeyname.values()].sort((a, b) => a.keyname.localeCompare(b.keyname))) {
115
- this.consoleManager.writeLine(` - ${m.keyname}`);
119
+ this.cliOutput.writeLine(` - ${m.keyname}`);
116
120
  }
117
121
  return common_1.ExitCode.Success;
118
122
  });
@@ -154,7 +158,8 @@ exports.InfoCommand = InfoCommand = __decorate([
154
158
  (0, common_1.tag)(common_1.ServiceDefinitionTagEnum.Command),
155
159
  (0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname),
156
160
  (0, tsyringe_1.injectable)(),
157
- __metadata("design:paramtypes", [console_manager_1.ConsoleManager,
161
+ __param(0, (0, tsyringe_1.inject)("LogHandlerInterface")),
162
+ __metadata("design:paramtypes", [Object, cli_output_manager_1.CliOutput,
158
163
  config_loader_1.ConfigLoader,
159
164
  app_module_loader_1.AppModuleLoader])
160
165
  ], InfoCommand);
@@ -1 +1 @@
1
- {"version":3,"file":"info.command.js","sourceRoot":"","sources":["../../../../src/commands/info.command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"info.command.js","sourceRoot":"","sources":["../../../../src/commands/info.command.ts"],"names":[],"mappings":"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"}
@@ -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 cli_module_keyname_1 = require("../cli.module.keyname");
31
33
  const init_command_options_1 = require("./init.command-options");
32
34
  const init_prompt_1 = require("../bootstrap/init-prompt");
@@ -46,8 +48,8 @@ const init_prompt_1 = require("../bootstrap/init-prompt");
46
48
  * Refuses to overwrite an existing `pristine.config.ts` so re-running init is safe.
47
49
  */
48
50
  let InitCommand = class InitCommand {
49
- constructor(consoleManager, initPrompt) {
50
- this.consoleManager = consoleManager;
51
+ constructor(logHandler, initPrompt) {
52
+ this.logHandler = logHandler;
51
53
  this.initPrompt = initPrompt;
52
54
  this.optionsType = init_command_options_1.InitCommandOptions;
53
55
  this.name = "p:init";
@@ -60,7 +62,7 @@ let InitCommand = class InitCommand {
60
62
  const projectRoot = process.cwd();
61
63
  const configPath = path_1.default.resolve(projectRoot, this.configFileName);
62
64
  if (fs_1.default.existsSync(configPath)) {
63
- this.consoleManager.writeError(`${this.configFileName} already exists at ${configPath}. Aborting to avoid overwriting.`);
65
+ this.logHandler.error(`${this.configFileName} already exists at ${configPath}. Aborting to avoid overwriting.`);
64
66
  return common_1.ExitCode.Error;
65
67
  }
66
68
  const answers = yield this.gatherAnswers(args);
@@ -69,7 +71,7 @@ let InitCommand = class InitCommand {
69
71
  return common_1.ExitCode.Error;
70
72
  }
71
73
  fs_1.default.writeFileSync(configPath, this.renderConfigTemplate(answers), "utf8");
72
- this.consoleManager.writeSuccess(`Created ${path_1.default.relative(projectRoot, configPath)}`);
74
+ this.logHandler.success(`Created ${path_1.default.relative(projectRoot, configPath)}`);
73
75
  if (answers.scaffoldSource) {
74
76
  this.scaffoldSource(projectRoot, answers.sourcePath);
75
77
  }
@@ -77,10 +79,10 @@ let InitCommand = class InitCommand {
77
79
  this.addPackageScripts(projectRoot);
78
80
  }
79
81
  this.addToGitignore(projectRoot);
80
- this.consoleManager.writeInfo("Next steps:");
81
- this.consoleManager.writeLine(" 1. npm install --save-dev @pristine-ts/cli (if you haven't already)");
82
- this.consoleManager.writeLine(" 2. npm run build # compile your AppModule");
83
- this.consoleManager.writeLine(" 3. npm run start # boot your app");
82
+ this.logHandler.info("Next steps:\n" +
83
+ " 1. npm install --save-dev @pristine-ts/cli (if you haven't already)\n" +
84
+ " 2. npm run build # compile your AppModule\n" +
85
+ " 3. npm run start # boot your app");
84
86
  return common_1.ExitCode.Success;
85
87
  });
86
88
  }
@@ -103,8 +105,7 @@ let InitCommand = class InitCommand {
103
105
  if (outputPath === undefined)
104
106
  missing.push("--output-path");
105
107
  if (missing.length > 0) {
106
- this.consoleManager.writeError(`Non-interactive run is missing required flag(s): ${missing.join(", ")}. ` +
107
- `Either run \`pristine init\` in a terminal or pass the flags explicitly.`);
108
+ this.logHandler.error("Non-interactive run is missing required flag(s). Either run `pristine init` in a terminal or pass the flags explicitly.", { highlights: { missing } });
108
109
  return undefined;
109
110
  }
110
111
  }
@@ -127,12 +128,12 @@ let InitCommand = class InitCommand {
127
128
  scaffoldSource(projectRoot, sourcePath) {
128
129
  const absolutePath = path_1.default.resolve(projectRoot, sourcePath);
129
130
  if (fs_1.default.existsSync(absolutePath)) {
130
- this.consoleManager.writeInfo(`AppModule source already exists at ${sourcePath}; skipping scaffold.`);
131
+ this.logHandler.info("AppModule source already exists; skipping scaffold.", { highlights: { sourcePath } });
131
132
  return;
132
133
  }
133
134
  fs_1.default.mkdirSync(path_1.default.dirname(absolutePath), { recursive: true });
134
135
  fs_1.default.writeFileSync(absolutePath, this.renderAppModuleTemplate(), "utf8");
135
- this.consoleManager.writeSuccess(`Created ${sourcePath}`);
136
+ this.logHandler.success(`Created ${sourcePath}`);
136
137
  }
137
138
  /**
138
139
  * Adds `build`, `start`, `verify` to package.json's scripts. Only adds scripts that
@@ -143,7 +144,7 @@ let InitCommand = class InitCommand {
143
144
  var _a;
144
145
  const packageJsonPath = path_1.default.resolve(projectRoot, "package.json");
145
146
  if (fs_1.default.existsSync(packageJsonPath) === false) {
146
- this.consoleManager.writeWarning("package.json not found; skipping script additions.");
147
+ this.logHandler.warning("package.json not found; skipping script additions.");
147
148
  return;
148
149
  }
149
150
  let parsed;
@@ -151,7 +152,7 @@ let InitCommand = class InitCommand {
151
152
  parsed = JSON.parse(fs_1.default.readFileSync(packageJsonPath, "utf8"));
152
153
  }
153
154
  catch (error) {
154
- this.consoleManager.writeError(`Failed to parse package.json: ${error.message}`);
155
+ this.logHandler.error("Failed to parse package.json", { highlights: { error: error.message } });
155
156
  return;
156
157
  }
157
158
  parsed.scripts = (_a = parsed.scripts) !== null && _a !== void 0 ? _a : {};
@@ -172,13 +173,13 @@ let InitCommand = class InitCommand {
172
173
  }
173
174
  }
174
175
  if (added.length === 0) {
175
- this.consoleManager.writeInfo("All target scripts already exist in package.json; nothing added.");
176
+ this.logHandler.info("All target scripts already exist in package.json; nothing added.");
176
177
  return;
177
178
  }
178
179
  fs_1.default.writeFileSync(packageJsonPath, JSON.stringify(parsed, null, 2) + "\n", "utf8");
179
- this.consoleManager.writeSuccess(`Added ${added.length} script(s) to package.json: ${added.join(", ")}`);
180
+ this.logHandler.success(`Added ${added.length} script(s) to package.json`, { highlights: { added } });
180
181
  if (skipped.length > 0) {
181
- this.consoleManager.writeInfo(`Kept existing script(s): ${skipped.join(", ")}`);
182
+ this.logHandler.info("Kept existing script(s)", { highlights: { skipped } });
182
183
  }
183
184
  }
184
185
  /**
@@ -198,7 +199,7 @@ let InitCommand = class InitCommand {
198
199
  }
199
200
  const separator = current.endsWith("\n") ? "" : "\n";
200
201
  fs_1.default.appendFileSync(gitignorePath, `${separator}${this.gitignoreEntry}\n`, "utf8");
201
- this.consoleManager.writeInfo(`Added '${this.gitignoreEntry}' to .gitignore`);
202
+ this.logHandler.info(`Added '${this.gitignoreEntry}' to .gitignore`);
202
203
  }
203
204
  renderConfigTemplate(answers) {
204
205
  return `import {defineConfig} from "@pristine-ts/cli";
@@ -244,7 +245,7 @@ exports.InitCommand = InitCommand = __decorate([
244
245
  (0, common_1.tag)(common_1.ServiceDefinitionTagEnum.Command),
245
246
  (0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname),
246
247
  (0, tsyringe_1.injectable)(),
247
- __metadata("design:paramtypes", [console_manager_1.ConsoleManager,
248
- init_prompt_1.InitPrompt])
248
+ __param(0, (0, tsyringe_1.inject)("LogHandlerInterface")),
249
+ __metadata("design:paramtypes", [Object, init_prompt_1.InitPrompt])
249
250
  ], InitCommand);
250
251
  //# sourceMappingURL=init.command.js.map