glu-cli
Version:
Git stacked branch management with GitHub integration
32 lines ⢠1.03 kB
JavaScript
import { ApplicationError } from "../core/errors/base-error.js";
import { UnexpectedError } from "../core/errors/unexpected-error.js";
export class BaseCommand {
async execute() {
try {
await this.run();
}
catch (error) {
this.handleError(error);
}
}
handleError(error) {
if (error instanceof ApplicationError) {
console.error(error.userMessage);
if (process.env.DEBUG) {
console.error("\nš Debug info:", {
name: error.name,
context: error.context,
stack: error.stack,
});
}
process.exit(error.exitCode);
}
const unexpected = new UnexpectedError(error);
console.error(unexpected.userMessage);
if (process.env.DEBUG) {
console.error("\nš Debug info:", error);
}
process.exit(unexpected.exitCode);
}
}
//# sourceMappingURL=base-command.js.map