UNPKG

aws-cdk

Version:

AWS CDK CLI, the command line tool for CDK apps

45 lines 5.42 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.prettyPrintError = prettyPrintError; /* eslint-disable no-console */ const chalk_1 = __importDefault(require("chalk")); /* c8 ignore start */ function prettyPrintError(error, options = {}) { const err = ensureError(error); const debug = options.debug ?? false; const soft = options.soft ?? false; // A soft error (for example a user-declined confirmation) is an expected outcome, not a crash. // Present the message less scary. const errorPaint = soft ? chalk_1.default.yellow : chalk_1.default.red; console.error(errorPaint(err.message)); if (err.cause && !soft) { const cause = ensureError(err.cause); console.error(chalk_1.default.yellow(cause.message)); printTrace(cause, debug); } printTrace(err, debug); } function printTrace(err, debug = false) { // Log the stack trace if we're on a developer workstation. Otherwise this will be into a minified // file and the printed code line and stack trace are huge and useless. if (err.stack && debug) { console.debug(chalk_1.default.gray(err.stack)); } } function ensureError(value) { if (value instanceof Error) return value; let stringified = '[Unable to stringify the thrown value]'; try { stringified = JSON.stringify(value); } catch { } const error = new Error(`An unexpected error was thrown: ${stringified}`); return error; } /* c8 ignore stop */ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldHR5LXByaW50LWVycm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicHJldHR5LXByaW50LWVycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBSUEsNENBaUJDO0FBckJELCtCQUErQjtBQUMvQixrREFBMEI7QUFFMUIscUJBQXFCO0FBQ3JCLFNBQWdCLGdCQUFnQixDQUFDLEtBQWMsRUFBRSxVQUErQyxFQUFFO0lBQ2hHLE1BQU0sR0FBRyxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQztJQUNyQyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLEtBQUssQ0FBQztJQUVuQywrRkFBK0Y7SUFDL0Ysa0NBQWtDO0lBQ2xDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQztJQUVuRCxPQUFPLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUN2QyxJQUFJLEdBQUcsQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN2QixNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sQ0FBQyxLQUFLLENBQUMsZUFBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUMzQyxVQUFVLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxVQUFVLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQ3pCLENBQUM7QUFFRCxTQUFTLFVBQVUsQ0FBQyxHQUFVLEVBQUUsS0FBSyxHQUFHLEtBQUs7SUFDM0Msa0dBQWtHO0lBQ2xHLHVFQUF1RTtJQUN2RSxJQUFJLEdBQUcsQ0FBQyxLQUFLLElBQUksS0FBSyxFQUFFLENBQUM7UUFDdkIsT0FBTyxDQUFDLEtBQUssQ0FBQyxlQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7QUFDSCxDQUFDO0FBRUQsU0FBUyxXQUFXLENBQUMsS0FBYztJQUNqQyxJQUFJLEtBQUssWUFBWSxLQUFLO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFFekMsSUFBSSxXQUFXLEdBQUcsd0NBQXdDLENBQUM7SUFDM0QsSUFBSSxDQUFDO1FBQ0gsV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUFDLE1BQU0sQ0FBQztJQUNULENBQUM7SUFFRCxNQUFNLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUMxRSxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFDRCxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zb2xlICovXG5pbXBvcnQgY2hhbGsgZnJvbSAnY2hhbGsnO1xuXG4vKiBjOCBpZ25vcmUgc3RhcnQgKi9cbmV4cG9ydCBmdW5jdGlvbiBwcmV0dHlQcmludEVycm9yKGVycm9yOiB1bmtub3duLCBvcHRpb25zOiB7IHNvZnQ/OiBib29sZWFuOyBkZWJ1Zz86IGJvb2xlYW4gfSA9IHt9KSB7XG4gIGNvbnN0IGVyciA9IGVuc3VyZUVycm9yKGVycm9yKTtcbiAgY29uc3QgZGVidWcgPSBvcHRpb25zLmRlYnVnID8/IGZhbHNlO1xuICBjb25zdCBzb2Z0ID0gb3B0aW9ucy5zb2Z0ID8/IGZhbHNlO1xuXG4gIC8vIEEgc29mdCBlcnJvciAoZm9yIGV4YW1wbGUgYSB1c2VyLWRlY2xpbmVkIGNvbmZpcm1hdGlvbikgaXMgYW4gZXhwZWN0ZWQgb3V0Y29tZSwgbm90IGEgY3Jhc2guXG4gIC8vIFByZXNlbnQgdGhlIG1lc3NhZ2UgbGVzcyBzY2FyeS5cbiAgY29uc3QgZXJyb3JQYWludCA9IHNvZnQgPyBjaGFsay55ZWxsb3cgOiBjaGFsay5yZWQ7XG5cbiAgY29uc29sZS5lcnJvcihlcnJvclBhaW50KGVyci5tZXNzYWdlKSk7XG4gIGlmIChlcnIuY2F1c2UgJiYgIXNvZnQpIHtcbiAgICBjb25zdCBjYXVzZSA9IGVuc3VyZUVycm9yKGVyci5jYXVzZSk7XG4gICAgY29uc29sZS5lcnJvcihjaGFsay55ZWxsb3coY2F1c2UubWVzc2FnZSkpO1xuICAgIHByaW50VHJhY2UoY2F1c2UsIGRlYnVnKTtcbiAgfVxuXG4gIHByaW50VHJhY2UoZXJyLCBkZWJ1Zyk7XG59XG5cbmZ1bmN0aW9uIHByaW50VHJhY2UoZXJyOiBFcnJvciwgZGVidWcgPSBmYWxzZSkge1xuICAvLyBMb2cgdGhlIHN0YWNrIHRyYWNlIGlmIHdlJ3JlIG9uIGEgZGV2ZWxvcGVyIHdvcmtzdGF0aW9uLiBPdGhlcndpc2UgdGhpcyB3aWxsIGJlIGludG8gYSBtaW5pZmllZFxuICAvLyBmaWxlIGFuZCB0aGUgcHJpbnRlZCBjb2RlIGxpbmUgYW5kIHN0YWNrIHRyYWNlIGFyZSBodWdlIGFuZCB1c2VsZXNzLlxuICBpZiAoZXJyLnN0YWNrICYmIGRlYnVnKSB7XG4gICAgY29uc29sZS5kZWJ1ZyhjaGFsay5ncmF5KGVyci5zdGFjaykpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGVuc3VyZUVycm9yKHZhbHVlOiB1bmtub3duKTogRXJyb3Ige1xuICBpZiAodmFsdWUgaW5zdGFuY2VvZiBFcnJvcikgcmV0dXJuIHZhbHVlO1xuXG4gIGxldCBzdHJpbmdpZmllZCA9ICdbVW5hYmxlIHRvIHN0cmluZ2lmeSB0aGUgdGhyb3duIHZhbHVlXSc7XG4gIHRyeSB7XG4gICAgc3RyaW5naWZpZWQgPSBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XG4gIH0gY2F0Y2gge1xuICB9XG5cbiAgY29uc3QgZXJyb3IgPSBuZXcgRXJyb3IoYEFuIHVuZXhwZWN0ZWQgZXJyb3Igd2FzIHRocm93bjogJHtzdHJpbmdpZmllZH1gKTtcbiAgcmV0dXJuIGVycm9yO1xufVxuLyogYzggaWdub3JlIHN0b3AgKi9cbiJdfQ==