UNPKG

780 BJavaScriptView Raw
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.default = prettyError;
7
8function prettyError(err, opts = {}) {
9 if (typeof err === 'string') {
10 return {
11 message: err
12 };
13 }
14
15 let message = err.message;
16
17 if (!message) {
18 message = 'Unknown error';
19 }
20
21 if (err.fileName != null) {
22 let fileName = err.fileName;
23
24 if (err.loc) {
25 fileName += `:${err.loc.line}:${err.loc.column}`;
26 }
27
28 message = `${fileName}: ${message}`;
29 }
30
31 let stack;
32
33 if (err.codeFrame != null && err.codeFrame !== '') {
34 stack = opts.color === true && err.highlightedCodeFrame || err.codeFrame;
35 } else if (err.stack) {
36 stack = err.stack.slice(err.stack.indexOf('\n') + 1);
37 }
38
39 return {
40 message,
41 stack
42 };
43}
\No newline at end of file