poe-code 3.0.372 → 3.0.374

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.
@@ -15478,6 +15478,37 @@ function resolveOutput(resolvedFlags) {
15478
15478
  }
15479
15479
  return "rich";
15480
15480
  }
15481
+ function resolveOutputFromArgv(argv) {
15482
+ for (let index = 0; index < argv.length; index += 1) {
15483
+ const token = argv[index] ?? "";
15484
+ if (token === "--json") {
15485
+ return "json";
15486
+ }
15487
+ if (token === "--md" || token === "--markdown") {
15488
+ return "md";
15489
+ }
15490
+ if (token === "--output") {
15491
+ const value = argv[index + 1];
15492
+ if (value === "rich" || value === "md" || value === "json") {
15493
+ return value;
15494
+ }
15495
+ if (value === "markdown") {
15496
+ return "md";
15497
+ }
15498
+ continue;
15499
+ }
15500
+ if (token.startsWith("--output=")) {
15501
+ const value = token.slice("--output=".length);
15502
+ if (value === "rich" || value === "md" || value === "json") {
15503
+ return value;
15504
+ }
15505
+ if (value === "markdown") {
15506
+ return "md";
15507
+ }
15508
+ }
15509
+ }
15510
+ return "rich";
15511
+ }
15481
15512
  var DESIGN_SYSTEM_OUTPUT_BY_MODE = {
15482
15513
  rich: "terminal",
15483
15514
  md: "markdown",
@@ -15999,6 +16030,44 @@ function renderApprovalDeclined(error3) {
15999
16030
  logger2.error(error3.message);
16000
16031
  process.exitCode = 1;
16001
16032
  }
16033
+ function renderCliErrorPattern(pattern) {
16034
+ const logger2 = createLogger();
16035
+ if (pattern.kind === "usage") {
16036
+ logger2.error(
16037
+ appendUsagePointer(pattern.message, {
16038
+ rootUsageName: pattern.rootUsageName,
16039
+ commandPath: pattern.commandPath
16040
+ })
16041
+ );
16042
+ process.exitCode = 1;
16043
+ return;
16044
+ }
16045
+ if (pattern.kind === "runtime-user") {
16046
+ logger2.error(pattern.message);
16047
+ process.exitCode = 1;
16048
+ return;
16049
+ }
16050
+ if (pattern.kind === "toolcraft-bug") {
16051
+ logger2.error(
16052
+ `toolcraft hit an internal invariant: ${pattern.error.message}
16053
+ This is a bug in toolcraft or in the command definition; it cannot be worked around by changing argv. Re-run with --debug for a stack trace and file an issue.`
16054
+ );
16055
+ if (pattern.debugStackMode !== void 0 && pattern.error.stack) {
16056
+ process.stderr.write(`${formatDebugStack(pattern.error.stack, pattern.debugStackMode)}
16057
+ `);
16058
+ }
16059
+ process.exitCode = 1;
16060
+ return;
16061
+ }
16062
+ logger2.error(
16063
+ pattern.debugStackMode !== void 0 ? pattern.message : `${pattern.message} Use --debug for a stack trace.`
16064
+ );
16065
+ if (pattern.debugStackMode !== void 0 && pattern.stack !== void 0) {
16066
+ process.stderr.write(`${formatDebugStack(pattern.stack, pattern.debugStackMode)}
16067
+ `);
16068
+ }
16069
+ process.exitCode = 1;
16070
+ }
16002
16071
  function validateServices(services) {
16003
16072
  for (const name of Object.keys(services)) {
16004
16073
  if (RESERVED_SERVICE_NAMES.has(name)) {
@@ -16919,79 +16988,79 @@ function renderHttpError(error3, options) {
16919
16988
  `);
16920
16989
  }
16921
16990
  }
16922
- function handleRunError(error3, options) {
16991
+ async function handleRunError(error3, options) {
16923
16992
  const logger2 = createLogger();
16924
- if (error3 instanceof UserError) {
16925
- logger2.error(
16926
- appendUsagePointer(error3.message, {
16927
- rootUsageName: options.rootUsageName,
16928
- commandPath: options.commandPath
16929
- })
16930
- );
16931
- process.exitCode = 1;
16932
- return;
16933
- }
16934
- if (error3 instanceof Error && error3.name === "ToolcraftBugError") {
16935
- logger2.error(
16936
- `toolcraft hit an internal invariant: ${error3.message}
16937
- This is a bug in toolcraft or in the command definition; it cannot be worked around by changing argv. Re-run with --debug for a stack trace and file an issue.`
16938
- );
16939
- if (options.debugStackMode !== void 0 && error3.stack) {
16940
- process.stderr.write(`${formatDebugStack(error3.stack, options.debugStackMode)}
16941
- `);
16942
- }
16943
- process.exitCode = 1;
16944
- return;
16945
- }
16946
- if (error3 instanceof CommanderError2) {
16947
- process.exitCode = error3.exitCode;
16948
- if (error3.code === "commander.helpDisplayed" || error3.code === "commander.version") {
16993
+ await withOutputFormat2(options.output, async () => {
16994
+ if (error3 instanceof UserError) {
16995
+ renderCliErrorPattern(
16996
+ options.userErrorPattern === "usage" ? {
16997
+ kind: "usage",
16998
+ message: error3.message,
16999
+ rootUsageName: options.rootUsageName,
17000
+ commandPath: options.commandPath
17001
+ } : {
17002
+ kind: "runtime-user",
17003
+ message: error3.message
17004
+ }
17005
+ );
16949
17006
  return;
16950
17007
  }
16951
- if (error3.code === "commander.unknownCommand") {
16952
- logger2.error(
16953
- appendUsagePointer(
16954
- formatUnknownCommandError(error3, options.program, options.argv ?? process.argv),
16955
- {
16956
- rootUsageName: options.rootUsageName,
16957
- commandPath: options.commandPath
16958
- }
16959
- )
16960
- );
17008
+ if (error3 instanceof Error && error3.name === "ToolcraftBugError") {
17009
+ renderCliErrorPattern({
17010
+ kind: "toolcraft-bug",
17011
+ error: error3,
17012
+ debugStackMode: options.debugStackMode
17013
+ });
16961
17014
  return;
16962
17015
  }
16963
- if (error3.code === "commander.unknownOption") {
16964
- const argv = options.argv ?? process.argv;
17016
+ if (error3 instanceof CommanderError2) {
17017
+ process.exitCode = error3.exitCode;
17018
+ if (error3.code === "commander.helpDisplayed" || error3.code === "commander.version") {
17019
+ return;
17020
+ }
17021
+ if (error3.code === "commander.unknownCommand") {
17022
+ logger2.error(
17023
+ appendUsagePointer(
17024
+ formatUnknownCommandError(error3, options.program, options.argv ?? process.argv),
17025
+ {
17026
+ rootUsageName: options.rootUsageName,
17027
+ commandPath: options.commandPath
17028
+ }
17029
+ )
17030
+ );
17031
+ return;
17032
+ }
17033
+ if (error3.code === "commander.unknownOption") {
17034
+ const argv = options.argv ?? process.argv;
17035
+ logger2.error(
17036
+ appendUsagePointer(formatUnknownOptionError(error3, options.program, argv), {
17037
+ rootUsageName: options.rootUsageName,
17038
+ commandPath: options.commandPath.length > 0 ? options.commandPath : findCurrentCommanderCommandPath(options.program, argv)
17039
+ })
17040
+ );
17041
+ return;
17042
+ }
16965
17043
  logger2.error(
16966
- appendUsagePointer(formatUnknownOptionError(error3, options.program, argv), {
17044
+ appendUsagePointer(formatCommanderErrorMessage(error3), {
16967
17045
  rootUsageName: options.rootUsageName,
16968
- commandPath: options.commandPath.length > 0 ? options.commandPath : findCurrentCommanderCommandPath(options.program, argv)
17046
+ commandPath: options.commandPath.length > 0 ? options.commandPath : findCurrentCommanderCommandPath(options.program, options.argv ?? process.argv)
16969
17047
  })
16970
17048
  );
16971
17049
  return;
16972
17050
  }
16973
- logger2.error(
16974
- appendUsagePointer(formatCommanderErrorMessage(error3), {
16975
- rootUsageName: options.rootUsageName,
16976
- commandPath: options.commandPath.length > 0 ? options.commandPath : findCurrentCommanderCommandPath(options.program, options.argv ?? process.argv)
16977
- })
16978
- );
16979
- return;
16980
- }
16981
- if (isHttpErrorLike(error3)) {
16982
- renderHttpError(error3, options);
16983
- process.exitCode = 1;
16984
- return;
16985
- }
16986
- const message2 = error3 instanceof Error ? error3.message : String(error3);
16987
- logger2.error(
16988
- options.debugStackMode !== void 0 ? message2 : `${message2} Use --debug for a stack trace.`
16989
- );
16990
- if (options.debugStackMode !== void 0 && error3 instanceof Error && error3.stack) {
16991
- process.stderr.write(`${formatDebugStack(error3.stack, options.debugStackMode)}
16992
- `);
16993
- }
16994
- process.exitCode = 1;
17051
+ if (isHttpErrorLike(error3)) {
17052
+ renderHttpError(error3, options);
17053
+ process.exitCode = 1;
17054
+ return;
17055
+ }
17056
+ const message2 = error3 instanceof Error ? error3.message : String(error3);
17057
+ renderCliErrorPattern({
17058
+ kind: "unexpected",
17059
+ message: message2,
17060
+ stack: error3 instanceof Error ? error3.stack : void 0,
17061
+ debugStackMode: options.debugStackMode
17062
+ });
17063
+ });
16995
17064
  }
16996
17065
  function formatCommanderErrorMessage(error3) {
16997
17066
  return error3.message.startsWith("error:") ? error3.message : `error: ${error3.message}`;
@@ -17315,13 +17384,15 @@ async function runCLI(roots, options = {}) {
17315
17384
  process.stderr.write(`Saved error report to ${report.displayPath}
17316
17385
  `);
17317
17386
  }
17318
- handleRunError(error3, {
17387
+ await handleRunError(error3, {
17319
17388
  debugStackMode: resolvedFlags !== void 0 ? resolveDebugStackMode(resolvedFlags.debug) : getDebugStackModeFromArgv(process.argv),
17389
+ output: resolvedFlags !== void 0 ? resolveOutput(resolvedFlags) : resolveOutputFromArgv(process.argv),
17320
17390
  verbose: resolvedFlags ? Boolean(resolvedFlags.verbose) : process.argv.includes("--verbose"),
17321
17391
  program,
17322
17392
  argv: process.argv,
17323
17393
  rootUsageName,
17324
- commandPath: resolvedCommandPath
17394
+ commandPath: resolvedCommandPath,
17395
+ userErrorPattern: errorReportContext?.params === void 0 ? "usage" : "runtime-user"
17325
17396
  });
17326
17397
  }
17327
17398
  }