51 lines
2.4 KiB
JavaScript
51 lines
2.4 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.printError = void 0;
|
|
const renderer_1 = require("@remotion/renderer");
|
|
const chalk_1 = require("./chalk");
|
|
const code_frame_1 = require("./code-frame");
|
|
const log_1 = require("./log");
|
|
const progress_bar_1 = require("./progress-bar");
|
|
const should_use_non_overlaying_logger_1 = require("./should-use-non-overlaying-logger");
|
|
const printError = async (err, logLevel) => {
|
|
if (err instanceof renderer_1.RenderInternals.SymbolicateableError) {
|
|
const updatesDoOverwrite = !(0, should_use_non_overlaying_logger_1.shouldUseNonOverlayingLogger)({ logLevel });
|
|
const output = (0, progress_bar_1.createOverwriteableCliOutput)({
|
|
quiet: false,
|
|
cancelSignal: null,
|
|
updatesDontOverwrite: !updatesDoOverwrite,
|
|
indent: false,
|
|
});
|
|
if (updatesDoOverwrite) {
|
|
output.update(chalk_1.chalk.red('Symbolicating minified error message...\n' + err.message), false);
|
|
}
|
|
try {
|
|
const symbolicated = await renderer_1.RenderInternals.symbolicateError(err);
|
|
if (symbolicated.frame !== null && symbolicated.chunk !== null) {
|
|
output.update(chalk_1.chalk.red(`An error occurred while rendering frame ${err.frame} on chunk ${err.chunk}:`), true);
|
|
}
|
|
else if (symbolicated.frame !== null) {
|
|
output.update(chalk_1.chalk.red(`An error occurred while rendering frame ${err.frame}:`), true);
|
|
}
|
|
else if (symbolicated.chunk !== null) {
|
|
output.update(chalk_1.chalk.red(`An error occurred on chunk ${err.chunk}:`), true);
|
|
}
|
|
else {
|
|
output.update(chalk_1.chalk.red('An error occurred:'), true);
|
|
}
|
|
(0, code_frame_1.printCodeFrameAndStack)({ symbolicated, logLevel });
|
|
renderer_1.RenderInternals.printUsefulErrorMessage(err, logLevel, false);
|
|
}
|
|
catch (e) {
|
|
output.update(chalk_1.chalk.red(''), true);
|
|
log_1.Log.error({ indent: false, logLevel });
|
|
log_1.Log.error({ indent: false, logLevel }, err.stack || err);
|
|
log_1.Log.verbose({ indent: false, logLevel }, 'Error symbolicating error');
|
|
log_1.Log.verbose({ indent: false, logLevel }, e);
|
|
}
|
|
return;
|
|
}
|
|
log_1.Log.error({ indent: false, logLevel }, err.stack || err);
|
|
};
|
|
exports.printError = printError;
|