UNPKG

946 BJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.errtion = void 0;
4/**
5 * Allow code and level inputs on Errlop.
6 * We do this instead of a class extension, as class extensions do not interop well on node 0.8, which is our target.
7 */
8function errtion(opts, parent) {
9 // extract opts
10 var code = opts.code, level = opts.level;
11 var message = opts.message;
12 if (parent == null)
13 parent = opts.parent;
14 // append message
15 if (code)
16 message = code + ": " + message;
17 if (level)
18 message = level + ": " + message;
19 if (parent)
20 message = message + "\n\u21AA" + (parent.message || parent);
21 // create error
22 var error = new Error(message);
23 // add properties
24 if (code)
25 error.code = code;
26 if (level)
27 error.level = level;
28 if (parent)
29 error.parent = parent;
30 // return
31 return error;
32}
33exports.errtion = errtion;