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.
@@ -15485,6 +15485,37 @@ function resolveOutput(resolvedFlags) {
15485
15485
  }
15486
15486
  return "rich";
15487
15487
  }
15488
+ function resolveOutputFromArgv(argv) {
15489
+ for (let index = 0; index < argv.length; index += 1) {
15490
+ const token = argv[index] ?? "";
15491
+ if (token === "--json") {
15492
+ return "json";
15493
+ }
15494
+ if (token === "--md" || token === "--markdown") {
15495
+ return "md";
15496
+ }
15497
+ if (token === "--output") {
15498
+ const value = argv[index + 1];
15499
+ if (value === "rich" || value === "md" || value === "json") {
15500
+ return value;
15501
+ }
15502
+ if (value === "markdown") {
15503
+ return "md";
15504
+ }
15505
+ continue;
15506
+ }
15507
+ if (token.startsWith("--output=")) {
15508
+ const value = token.slice("--output=".length);
15509
+ if (value === "rich" || value === "md" || value === "json") {
15510
+ return value;
15511
+ }
15512
+ if (value === "markdown") {
15513
+ return "md";
15514
+ }
15515
+ }
15516
+ }
15517
+ return "rich";
15518
+ }
15488
15519
  var DESIGN_SYSTEM_OUTPUT_BY_MODE = {
15489
15520
  rich: "terminal",
15490
15521
  md: "markdown",
@@ -16006,6 +16037,44 @@ function renderApprovalDeclined(error3) {
16006
16037
  logger2.error(error3.message);
16007
16038
  process.exitCode = 1;
16008
16039
  }
16040
+ function renderCliErrorPattern(pattern) {
16041
+ const logger2 = createLogger();
16042
+ if (pattern.kind === "usage") {
16043
+ logger2.error(
16044
+ appendUsagePointer(pattern.message, {
16045
+ rootUsageName: pattern.rootUsageName,
16046
+ commandPath: pattern.commandPath
16047
+ })
16048
+ );
16049
+ process.exitCode = 1;
16050
+ return;
16051
+ }
16052
+ if (pattern.kind === "runtime-user") {
16053
+ logger2.error(pattern.message);
16054
+ process.exitCode = 1;
16055
+ return;
16056
+ }
16057
+ if (pattern.kind === "toolcraft-bug") {
16058
+ logger2.error(
16059
+ `toolcraft hit an internal invariant: ${pattern.error.message}
16060
+ 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.`
16061
+ );
16062
+ if (pattern.debugStackMode !== void 0 && pattern.error.stack) {
16063
+ process.stderr.write(`${formatDebugStack(pattern.error.stack, pattern.debugStackMode)}
16064
+ `);
16065
+ }
16066
+ process.exitCode = 1;
16067
+ return;
16068
+ }
16069
+ logger2.error(
16070
+ pattern.debugStackMode !== void 0 ? pattern.message : `${pattern.message} Use --debug for a stack trace.`
16071
+ );
16072
+ if (pattern.debugStackMode !== void 0 && pattern.stack !== void 0) {
16073
+ process.stderr.write(`${formatDebugStack(pattern.stack, pattern.debugStackMode)}
16074
+ `);
16075
+ }
16076
+ process.exitCode = 1;
16077
+ }
16009
16078
  function validateServices(services) {
16010
16079
  for (const name of Object.keys(services)) {
16011
16080
  if (RESERVED_SERVICE_NAMES.has(name)) {
@@ -16926,79 +16995,79 @@ function renderHttpError(error3, options) {
16926
16995
  `);
16927
16996
  }
16928
16997
  }
16929
- function handleRunError(error3, options) {
16998
+ async function handleRunError(error3, options) {
16930
16999
  const logger2 = createLogger();
16931
- if (error3 instanceof UserError) {
16932
- logger2.error(
16933
- appendUsagePointer(error3.message, {
16934
- rootUsageName: options.rootUsageName,
16935
- commandPath: options.commandPath
16936
- })
16937
- );
16938
- process.exitCode = 1;
16939
- return;
16940
- }
16941
- if (error3 instanceof Error && error3.name === "ToolcraftBugError") {
16942
- logger2.error(
16943
- `toolcraft hit an internal invariant: ${error3.message}
16944
- 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.`
16945
- );
16946
- if (options.debugStackMode !== void 0 && error3.stack) {
16947
- process.stderr.write(`${formatDebugStack(error3.stack, options.debugStackMode)}
16948
- `);
16949
- }
16950
- process.exitCode = 1;
16951
- return;
16952
- }
16953
- if (error3 instanceof CommanderError2) {
16954
- process.exitCode = error3.exitCode;
16955
- if (error3.code === "commander.helpDisplayed" || error3.code === "commander.version") {
17000
+ await withOutputFormat2(options.output, async () => {
17001
+ if (error3 instanceof UserError) {
17002
+ renderCliErrorPattern(
17003
+ options.userErrorPattern === "usage" ? {
17004
+ kind: "usage",
17005
+ message: error3.message,
17006
+ rootUsageName: options.rootUsageName,
17007
+ commandPath: options.commandPath
17008
+ } : {
17009
+ kind: "runtime-user",
17010
+ message: error3.message
17011
+ }
17012
+ );
16956
17013
  return;
16957
17014
  }
16958
- if (error3.code === "commander.unknownCommand") {
16959
- logger2.error(
16960
- appendUsagePointer(
16961
- formatUnknownCommandError(error3, options.program, options.argv ?? process.argv),
16962
- {
16963
- rootUsageName: options.rootUsageName,
16964
- commandPath: options.commandPath
16965
- }
16966
- )
16967
- );
17015
+ if (error3 instanceof Error && error3.name === "ToolcraftBugError") {
17016
+ renderCliErrorPattern({
17017
+ kind: "toolcraft-bug",
17018
+ error: error3,
17019
+ debugStackMode: options.debugStackMode
17020
+ });
16968
17021
  return;
16969
17022
  }
16970
- if (error3.code === "commander.unknownOption") {
16971
- const argv = options.argv ?? process.argv;
17023
+ if (error3 instanceof CommanderError2) {
17024
+ process.exitCode = error3.exitCode;
17025
+ if (error3.code === "commander.helpDisplayed" || error3.code === "commander.version") {
17026
+ return;
17027
+ }
17028
+ if (error3.code === "commander.unknownCommand") {
17029
+ logger2.error(
17030
+ appendUsagePointer(
17031
+ formatUnknownCommandError(error3, options.program, options.argv ?? process.argv),
17032
+ {
17033
+ rootUsageName: options.rootUsageName,
17034
+ commandPath: options.commandPath
17035
+ }
17036
+ )
17037
+ );
17038
+ return;
17039
+ }
17040
+ if (error3.code === "commander.unknownOption") {
17041
+ const argv = options.argv ?? process.argv;
17042
+ logger2.error(
17043
+ appendUsagePointer(formatUnknownOptionError(error3, options.program, argv), {
17044
+ rootUsageName: options.rootUsageName,
17045
+ commandPath: options.commandPath.length > 0 ? options.commandPath : findCurrentCommanderCommandPath(options.program, argv)
17046
+ })
17047
+ );
17048
+ return;
17049
+ }
16972
17050
  logger2.error(
16973
- appendUsagePointer(formatUnknownOptionError(error3, options.program, argv), {
17051
+ appendUsagePointer(formatCommanderErrorMessage(error3), {
16974
17052
  rootUsageName: options.rootUsageName,
16975
- commandPath: options.commandPath.length > 0 ? options.commandPath : findCurrentCommanderCommandPath(options.program, argv)
17053
+ commandPath: options.commandPath.length > 0 ? options.commandPath : findCurrentCommanderCommandPath(options.program, options.argv ?? process.argv)
16976
17054
  })
16977
17055
  );
16978
17056
  return;
16979
17057
  }
16980
- logger2.error(
16981
- appendUsagePointer(formatCommanderErrorMessage(error3), {
16982
- rootUsageName: options.rootUsageName,
16983
- commandPath: options.commandPath.length > 0 ? options.commandPath : findCurrentCommanderCommandPath(options.program, options.argv ?? process.argv)
16984
- })
16985
- );
16986
- return;
16987
- }
16988
- if (isHttpErrorLike(error3)) {
16989
- renderHttpError(error3, options);
16990
- process.exitCode = 1;
16991
- return;
16992
- }
16993
- const message2 = error3 instanceof Error ? error3.message : String(error3);
16994
- logger2.error(
16995
- options.debugStackMode !== void 0 ? message2 : `${message2} Use --debug for a stack trace.`
16996
- );
16997
- if (options.debugStackMode !== void 0 && error3 instanceof Error && error3.stack) {
16998
- process.stderr.write(`${formatDebugStack(error3.stack, options.debugStackMode)}
16999
- `);
17000
- }
17001
- process.exitCode = 1;
17058
+ if (isHttpErrorLike(error3)) {
17059
+ renderHttpError(error3, options);
17060
+ process.exitCode = 1;
17061
+ return;
17062
+ }
17063
+ const message2 = error3 instanceof Error ? error3.message : String(error3);
17064
+ renderCliErrorPattern({
17065
+ kind: "unexpected",
17066
+ message: message2,
17067
+ stack: error3 instanceof Error ? error3.stack : void 0,
17068
+ debugStackMode: options.debugStackMode
17069
+ });
17070
+ });
17002
17071
  }
17003
17072
  function formatCommanderErrorMessage(error3) {
17004
17073
  return error3.message.startsWith("error:") ? error3.message : `error: ${error3.message}`;
@@ -17322,13 +17391,15 @@ async function runCLI(roots, options = {}) {
17322
17391
  process.stderr.write(`Saved error report to ${report.displayPath}
17323
17392
  `);
17324
17393
  }
17325
- handleRunError(error3, {
17394
+ await handleRunError(error3, {
17326
17395
  debugStackMode: resolvedFlags !== void 0 ? resolveDebugStackMode(resolvedFlags.debug) : getDebugStackModeFromArgv(process.argv),
17396
+ output: resolvedFlags !== void 0 ? resolveOutput(resolvedFlags) : resolveOutputFromArgv(process.argv),
17327
17397
  verbose: resolvedFlags ? Boolean(resolvedFlags.verbose) : process.argv.includes("--verbose"),
17328
17398
  program,
17329
17399
  argv: process.argv,
17330
17400
  rootUsageName,
17331
- commandPath: resolvedCommandPath
17401
+ commandPath: resolvedCommandPath,
17402
+ userErrorPattern: errorReportContext?.params === void 0 ? "usage" : "runtime-user"
17332
17403
  });
17333
17404
  }
17334
17405
  }