| ; | |
| Object.defineProperty(exports, "__esModule", { value: true }); | |
| exports.printCodeFrameAndStack = void 0; | |
| const renderer_1 = require("@remotion/renderer"); | |
| const chalk_1 = require("./chalk"); | |
| const log_1 = require("./log"); | |
| const printCodeFrame = (frame, logLevel) => { | |
| const codeFrame = renderer_1.RenderInternals.formatStackFrameCodeFrame(frame); | |
| if (codeFrame === null) { | |
| return; | |
| } | |
| log_1.Log.info({ indent: false, logLevel }); | |
| log_1.Log.info({ indent: false, logLevel }, 'at', chalk_1.chalk.underline(renderer_1.RenderInternals.makeStackFrameFileName(frame))); | |
| log_1.Log.info({ indent: false, logLevel }, codeFrame); | |
| }; | |
| const logLine = (frame, logLevel) => { | |
| const line = renderer_1.RenderInternals.formatStackFrameLocationLine(frame); | |
| if (line === null) { | |
| return; | |
| } | |
| log_1.Log.info({ indent: false, logLevel }, line); | |
| }; | |
| const printCodeFrameAndStack = ({ symbolicated, logLevel, }) => { | |
| var _a, _b, _c, _d, _e; | |
| if (!symbolicated.symbolicatedStackFrames || | |
| symbolicated.symbolicatedStackFrames.length === 0) { | |
| log_1.Log.error({ indent: false, logLevel }, symbolicated.stack); | |
| return; | |
| } | |
| const firstFrame = symbolicated.symbolicatedStackFrames[0]; | |
| log_1.Log.error({ indent: false, logLevel }, chalk_1.chalk.bgRed(chalk_1.chalk.white(` ${symbolicated.name} `)), symbolicated.message); | |
| printCodeFrame(firstFrame, logLevel); | |
| log_1.Log.info({ indent: false, logLevel }); | |
| for (const frame of symbolicated.symbolicatedStackFrames) { | |
| if (frame === firstFrame) { | |
| continue; | |
| } | |
| const isUserCode = !((_a = frame.originalFileName) === null || _a === void 0 ? void 0 : _a.includes('node_modules')) && | |
| !((_b = frame.originalFileName) === null || _b === void 0 ? void 0 : _b.startsWith('webpack/')); | |
| if (isUserCode) { | |
| printCodeFrame(frame, logLevel); | |
| } | |
| else { | |
| logLine(frame, logLevel); | |
| } | |
| } | |
| if (symbolicated.delayRenderCall) { | |
| log_1.Log.error({ indent: false, logLevel }); | |
| log_1.Log.error({ indent: false, logLevel }, '🕧 The delayRender() call is located at:'); | |
| for (const frame of symbolicated.delayRenderCall) { | |
| const showCodeFrame = (!((_c = frame.originalFileName) === null || _c === void 0 ? void 0 : _c.includes('node_modules')) && | |
| !((_d = frame.originalFileName) === null || _d === void 0 ? void 0 : _d.startsWith('webpack/'))) || | |
| frame === symbolicated.delayRenderCall[0] || | |
| ((_e = frame.originalScriptCode) === null || _e === void 0 ? void 0 : _e.map((c) => c.content).join('').includes('delayRender')); | |
| if (showCodeFrame) { | |
| printCodeFrame(frame, logLevel); | |
| } | |
| else { | |
| logLine(frame, logLevel); | |
| } | |
| } | |
| } | |
| }; | |
| exports.printCodeFrameAndStack = printCodeFrameAndStack; | |
Xet Storage Details
- Size:
- 2.97 kB
- Xet hash:
- 7b4077ef8969cde62e0b53e97cee87fcbfb9ba40b25ccd5bf9a1f2ae3031e524
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.