1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.formatTsLoaderMessages = void 0;
|
4 | const tslib_1 = require("tslib");
|
5 | const code_frame_1 = require("@babel/code-frame");
|
6 | const fs = (0, tslib_1.__importStar)(require("fs"));
|
7 | const os = (0, tslib_1.__importStar)(require("os"));
|
8 | const env_1 = require("../util/env");
|
9 | function formatTsLoaderMessages(error, colors) {
|
10 | const { file } = error;
|
11 | const source = file && fs.existsSync(file) && fs.readFileSync(file, 'utf-8');
|
12 | if (source) {
|
13 | const frame = (0, code_frame_1.codeFrameColumns)(source, {
|
14 | start: {
|
15 | line: error.line,
|
16 | column: error.character,
|
17 | },
|
18 | }, {
|
19 | highlightCode: env_1.IS_INTERACTIVE && !env_1.IS_CI,
|
20 | });
|
21 | return (colors.dim(`${error.line}:${error.character} `) +
|
22 | error.content +
|
23 | colors.cyan(` (TS${error.code})`) +
|
24 | os.EOL +
|
25 | (frame ? os.EOL + frame : ''));
|
26 | }
|
27 | else {
|
28 | return '';
|
29 | }
|
30 | }
|
31 | exports.formatTsLoaderMessages = formatTsLoaderMessages;
|
32 |
|
\ | No newline at end of file |