@util.js/errors 0.41.4 → 0.41.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/doc/README-examples.js +2 -2
- package/lib/AsyncError.js +2 -2
- package/lib/FalsyError.js +1 -1
- package/lib/MissingError.js +1 -1
- package/lib/RethrownError.js +1 -1
- package/package.json +1 -2
- package/test/ErrorsTest.js +9 -9
- package/test/Errors_FalsyError_check_Test.js +4 -4
- package/dist/AsyncError.js +0 -49
- package/dist/Errors.js +0 -165
- package/dist/FalsyError.js +0 -30
- package/dist/MissingError.js +0 -30
- package/dist/RethrownError.js +0 -44
package/README.md
CHANGED
|
@@ -153,7 +153,7 @@ errors
|
|
|
153
153
|
// at Function.Module.runMain (internal/modules/cjs/loader.js:744:10)
|
|
154
154
|
|
|
155
155
|
rejectAPromise().catch((error) =>
|
|
156
|
-
console.log("\n\nWithout Caller Stack Trace\n" + error.stack)
|
|
156
|
+
console.log("\n\nWithout Caller Stack Trace\n" + error.stack),
|
|
157
157
|
);
|
|
158
158
|
// Without Caller Stack Trace
|
|
159
159
|
// TypeError: Fail!
|
package/doc/README-examples.js
CHANGED
|
@@ -23,7 +23,7 @@ function runExample0() {
|
|
|
23
23
|
errors
|
|
24
24
|
.catch(rejectAPromise())
|
|
25
25
|
.catch((error) =>
|
|
26
|
-
console.log("\n\nWith Caller Stack Trace\n" + error.stack)
|
|
26
|
+
console.log("\n\nWith Caller Stack Trace\n" + error.stack),
|
|
27
27
|
);
|
|
28
28
|
// With Caller Stack Trace
|
|
29
29
|
// AsyncError: Fail!
|
|
@@ -54,7 +54,7 @@ function runExample0() {
|
|
|
54
54
|
// at Function.Module.runMain (internal/modules/cjs/loader.js:744:10)
|
|
55
55
|
|
|
56
56
|
rejectAPromise().catch((error) =>
|
|
57
|
-
console.log("\n\nWithout Caller Stack Trace\n" + error.stack)
|
|
57
|
+
console.log("\n\nWithout Caller Stack Trace\n" + error.stack),
|
|
58
58
|
);
|
|
59
59
|
// Without Caller Stack Trace
|
|
60
60
|
// TypeError: Fail!
|
package/lib/AsyncError.js
CHANGED
|
@@ -8,11 +8,11 @@ module.exports = class AsyncError extends Error {
|
|
|
8
8
|
super(message != null ? message : getErrorProperty(asyncError, "message"));
|
|
9
9
|
if (!callerError)
|
|
10
10
|
throw new TypeError(
|
|
11
|
-
`${this.constructor.name}'s constructor expects a defined callerError, but it was ${callerError}
|
|
11
|
+
`${this.constructor.name}'s constructor expects a defined callerError, but it was ${callerError}.`,
|
|
12
12
|
);
|
|
13
13
|
if (!asyncError)
|
|
14
14
|
throw new TypeError(
|
|
15
|
-
`${this.constructor.name}'s constructor expects a defined asyncError, but it was ${asyncError}
|
|
15
|
+
`${this.constructor.name}'s constructor expects a defined asyncError, but it was ${asyncError}.`,
|
|
16
16
|
);
|
|
17
17
|
this.name = this.constructor.name;
|
|
18
18
|
this.original = asyncError;
|
package/lib/FalsyError.js
CHANGED
|
@@ -19,7 +19,7 @@ module.exports = class FalsyError extends TypeError {
|
|
|
19
19
|
(argumentName ? "`" + argumentName + "`" : "It") +
|
|
20
20
|
" is the falsy value " +
|
|
21
21
|
(argumentValue === "" ? "''" : argumentValue) +
|
|
22
|
-
"."
|
|
22
|
+
".",
|
|
23
23
|
);
|
|
24
24
|
this.name = this.constructor.name;
|
|
25
25
|
this.argumentName = argumentName;
|
package/lib/MissingError.js
CHANGED
package/lib/RethrownError.js
CHANGED
|
@@ -8,7 +8,7 @@ module.exports = class RethrownError extends Error {
|
|
|
8
8
|
super(message != null ? message : getErrorProperty(error, "message"));
|
|
9
9
|
if (!error)
|
|
10
10
|
throw new TypeError(
|
|
11
|
-
`RethrownError's constructor expects a defined error, but it was ${error}
|
|
11
|
+
`RethrownError's constructor expects a defined error, but it was ${error}.`,
|
|
12
12
|
);
|
|
13
13
|
this.name = this.constructor.name;
|
|
14
14
|
this.original = error;
|
package/package.json
CHANGED
package/test/ErrorsTest.js
CHANGED
|
@@ -83,10 +83,10 @@ describe("new Errors#RethrownError(message, error)", () => {
|
|
|
83
83
|
throwATypeError();
|
|
84
84
|
} catch (error) {
|
|
85
85
|
expect(new RethrownError(error).stack).to.include(
|
|
86
|
-
"RethrownError: Invalid Argument\n"
|
|
86
|
+
"RethrownError: Invalid Argument\n",
|
|
87
87
|
);
|
|
88
88
|
expect(new RethrownError(error, "").stack).to.include(
|
|
89
|
-
"RethrownError\n"
|
|
89
|
+
"RethrownError\n",
|
|
90
90
|
);
|
|
91
91
|
throw new RethrownError(error, "Lorem Ipsum");
|
|
92
92
|
}
|
|
@@ -114,18 +114,18 @@ describe("new Errors#RethrownError(message, error)", () => {
|
|
|
114
114
|
throwAString();
|
|
115
115
|
} catch (error) {
|
|
116
116
|
expect(new RethrownError(error).stack).to.include(
|
|
117
|
-
'RethrownError: "ENTITY_NOT_FOUND"\n'
|
|
117
|
+
'RethrownError: "ENTITY_NOT_FOUND"\n',
|
|
118
118
|
);
|
|
119
119
|
expect(new RethrownError(error).stack.endsWith('"ENTITY_NOT_FOUND"')).to
|
|
120
120
|
.be.true;
|
|
121
121
|
expect(new RethrownError(error, "").stack).to.include(
|
|
122
|
-
"RethrownError\n"
|
|
122
|
+
"RethrownError\n",
|
|
123
123
|
);
|
|
124
124
|
expect(new RethrownError(error, 0).stack).to.include(
|
|
125
|
-
"RethrownError: 0\n"
|
|
125
|
+
"RethrownError: 0\n",
|
|
126
126
|
);
|
|
127
127
|
expect(new RethrownError(error, "").stack).to.include(
|
|
128
|
-
"ENTITY_NOT_FOUND"
|
|
128
|
+
"ENTITY_NOT_FOUND",
|
|
129
129
|
);
|
|
130
130
|
throw new RethrownError(error, "Lorem Ipsum");
|
|
131
131
|
}
|
|
@@ -152,15 +152,15 @@ describe("new Errors#RethrownError(message, error)", () => {
|
|
|
152
152
|
throwAnArray();
|
|
153
153
|
} catch (error) {
|
|
154
154
|
expect(new RethrownError(error).stack).to.include(
|
|
155
|
-
'RethrownError: [{"code":"1234"}]\n'
|
|
155
|
+
'RethrownError: [{"code":"1234"}]\n',
|
|
156
156
|
);
|
|
157
157
|
expect(new RethrownError(error).stack.endsWith('[{"code":"1234"}]')).to
|
|
158
158
|
.be.true;
|
|
159
159
|
expect(new RethrownError(error, "").stack).to.include(
|
|
160
|
-
"RethrownError\n"
|
|
160
|
+
"RethrownError\n",
|
|
161
161
|
);
|
|
162
162
|
expect(new RethrownError(error, "").stack).to.include(
|
|
163
|
-
'[{"code":"1234"}]'
|
|
163
|
+
'[{"code":"1234"}]',
|
|
164
164
|
);
|
|
165
165
|
throw new RethrownError(error, "Lorem Ipsum");
|
|
166
166
|
}
|
|
@@ -11,7 +11,7 @@ describe("FalsyError#check", () => {
|
|
|
11
11
|
} catch (e) {
|
|
12
12
|
expect(e).to.be.an.instanceof(FalsyError);
|
|
13
13
|
expect(e.message).to.equal(
|
|
14
|
-
"Lawyer#argue expected `argument` to be truthy. `argument` is the falsy value NaN."
|
|
14
|
+
"Lawyer#argue expected `argument` to be truthy. `argument` is the falsy value NaN.",
|
|
15
15
|
);
|
|
16
16
|
expect(e.argumentName).to.equal("argument");
|
|
17
17
|
}
|
|
@@ -24,7 +24,7 @@ describe("FalsyError#check", () => {
|
|
|
24
24
|
} catch (e) {
|
|
25
25
|
expect(e).to.be.an.instanceof(FalsyError);
|
|
26
26
|
expect(e.message).to.equal(
|
|
27
|
-
"We expected `argument` to be truthy. `argument` is the falsy value false."
|
|
27
|
+
"We expected `argument` to be truthy. `argument` is the falsy value false.",
|
|
28
28
|
);
|
|
29
29
|
expect(e.argumentName).to.equal("argument");
|
|
30
30
|
}
|
|
@@ -37,7 +37,7 @@ describe("FalsyError#check", () => {
|
|
|
37
37
|
} catch (e) {
|
|
38
38
|
expect(e).to.be.an.instanceof(FalsyError);
|
|
39
39
|
expect(e.message).to.equal(
|
|
40
|
-
"Lawyer#argue expected an argument to be truthy. It is the falsy value undefined."
|
|
40
|
+
"Lawyer#argue expected an argument to be truthy. It is the falsy value undefined.",
|
|
41
41
|
);
|
|
42
42
|
expect(e.argumentName).to.be.null;
|
|
43
43
|
}
|
|
@@ -50,7 +50,7 @@ describe("FalsyError#check", () => {
|
|
|
50
50
|
} catch (e) {
|
|
51
51
|
expect(e).to.be.an.instanceof(FalsyError);
|
|
52
52
|
expect(e.message).to.equal(
|
|
53
|
-
"We expected an argument to be truthy. It is the falsy value null."
|
|
53
|
+
"We expected an argument to be truthy. It is the falsy value null.",
|
|
54
54
|
);
|
|
55
55
|
expect(e.argumentName).to.be.undefined;
|
|
56
56
|
}
|
package/dist/AsyncError.js
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
/*
|
|
4
|
-
* See {@link Errors#AsyncError}.
|
|
5
|
-
*/
|
|
6
|
-
var _Reflect$construct = require("@babel/runtime-corejs3/core-js-stable/reflect/construct");
|
|
7
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
8
|
-
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
9
|
-
var _splice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/splice"));
|
|
10
|
-
var _stringify = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/json/stringify"));
|
|
11
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/createClass"));
|
|
12
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/classCallCheck"));
|
|
13
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/possibleConstructorReturn"));
|
|
14
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/getPrototypeOf"));
|
|
15
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/inherits"));
|
|
16
|
-
var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/wrapNativeSuper"));
|
|
17
|
-
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? _Reflect$construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
18
|
-
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
19
|
-
module.exports = /*#__PURE__*/function (_Error) {
|
|
20
|
-
function AsyncError(callerError, asyncError, message) {
|
|
21
|
-
var _context, _context2, _context3, _context4, _context5;
|
|
22
|
-
var _this;
|
|
23
|
-
(0, _classCallCheck2["default"])(this, AsyncError);
|
|
24
|
-
_this = _callSuper(this, AsyncError, [message != null ? message : getErrorProperty(asyncError, "message")]);
|
|
25
|
-
if (!callerError) throw new TypeError((0, _concat["default"])(_context = "".concat(_this.constructor.name, "'s constructor expects a defined callerError, but it was ")).call(_context, callerError, "."));
|
|
26
|
-
if (!asyncError) throw new TypeError((0, _concat["default"])(_context2 = "".concat(_this.constructor.name, "'s constructor expects a defined asyncError, but it was ")).call(_context2, asyncError, "."));
|
|
27
|
-
_this.name = _this.constructor.name;
|
|
28
|
-
_this.original = asyncError;
|
|
29
|
-
_this.newStack = _this.stack;
|
|
30
|
-
var callerStack = " at " + (0, _splice["default"])(_context3 = callerError.stack.split(" at ")).call(_context3, 2).join(" at ");
|
|
31
|
-
// If asyncError.stack is falsy, then let us just try asyncError;
|
|
32
|
-
// asyncError may be a string.
|
|
33
|
-
var asyncErrorStack = getErrorProperty(asyncError, "stack");
|
|
34
|
-
_this.stack = (0, _concat["default"])(_context4 = (0, _concat["default"])(_context5 = "".concat(_this.stack, "\n")).call(_context5, callerStack, "\n")).call(_context4, asyncErrorStack);
|
|
35
|
-
return _this;
|
|
36
|
-
}
|
|
37
|
-
(0, _inherits2["default"])(AsyncError, _Error);
|
|
38
|
-
return (0, _createClass2["default"])(AsyncError);
|
|
39
|
-
}(/*#__PURE__*/(0, _wrapNativeSuper2["default"])(Error));
|
|
40
|
-
function getErrorProperty(error, property) {
|
|
41
|
-
if (error[property]) return error[property];
|
|
42
|
-
try {
|
|
43
|
-
return (0, _stringify["default"])(error);
|
|
44
|
-
} catch (e) {
|
|
45
|
-
// JSON.stringify might throw the following, "TypeError: Converting circular
|
|
46
|
-
// structure to JSON."
|
|
47
|
-
return error;
|
|
48
|
-
}
|
|
49
|
-
}
|
package/dist/Errors.js
DELETED
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* JavaScript utility methods for [errors]{@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error}
|
|
5
|
-
*
|
|
6
|
-
* @public
|
|
7
|
-
* @class Errors
|
|
8
|
-
*/
|
|
9
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/classCallCheck"));
|
|
11
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/createClass"));
|
|
12
|
-
module.exports = /*#__PURE__*/function () {
|
|
13
|
-
function Errors() {
|
|
14
|
-
(0, _classCallCheck2["default"])(this, Errors);
|
|
15
|
-
}
|
|
16
|
-
return (0, _createClass2["default"])(Errors, [{
|
|
17
|
-
key: "catch",
|
|
18
|
-
value:
|
|
19
|
-
/**
|
|
20
|
-
* Wraps the given promise so that errors caught preserve the stack trace of the calling thread.
|
|
21
|
-
*
|
|
22
|
-
* The example compares the stack trace of a rejected promise using this method and the stack trace of a rejected promise that does not use this method.
|
|
23
|
-
*
|
|
24
|
-
* @example
|
|
25
|
-
* const errors = require("@util.js/errors");
|
|
26
|
-
* function rejectAPromise() {
|
|
27
|
-
* return Promise.reject(new TypeError("Fail!"));
|
|
28
|
-
* }
|
|
29
|
-
*
|
|
30
|
-
* errors
|
|
31
|
-
* .catch(rejectAPromise())
|
|
32
|
-
* .catch(error => console.log("\n\nWith Caller Stack Trace\n" + error.stack));
|
|
33
|
-
* // With Caller Stack Trace
|
|
34
|
-
* // AsyncError: Fail!
|
|
35
|
-
* // at promise.catch.error (/root/utiljs/packages/utiljs-errors/lib/Errors.js:28:13)
|
|
36
|
-
* // at process._tickCallback (internal/process/next_tick.js:68:7)
|
|
37
|
-
* // at Function.Module.runMain (internal/modules/cjs/loader.js:746:11)
|
|
38
|
-
* // at startup (internal/bootstrap/node.js:240:19)
|
|
39
|
-
* // at bootstrapNodeJSCore (internal/bootstrap/node.js:564:3)
|
|
40
|
-
* // at runExample0 (/root/utiljs/packages/utiljs-errors/doc/README-examples.js:23:11)
|
|
41
|
-
* // at runExample (/root/utiljs/packages/utiljs-errors/doc/README-examples.js:12:7)
|
|
42
|
-
* // at Object.<anonymous> (/root/utiljs/packages/utiljs-errors/doc/README-examples.js:4:31)
|
|
43
|
-
* // at Module._compile (internal/modules/cjs/loader.js:702:30)
|
|
44
|
-
* // at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)
|
|
45
|
-
* // at Module.load (internal/modules/cjs/loader.js:612:32)
|
|
46
|
-
* // at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
|
|
47
|
-
* // at Function.Module._load (internal/modules/cjs/loader.js:543:3)
|
|
48
|
-
* // at Function.Module.runMain (internal/modules/cjs/loader.js:744:10)
|
|
49
|
-
* // TypeError: Fail!
|
|
50
|
-
* // at rejectAPromise (/root/utiljs/packages/utiljs-errors/doc/README-examples.js:20:27)
|
|
51
|
-
* // at runExample0 (/root/utiljs/packages/utiljs-errors/doc/README-examples.js:23:12)
|
|
52
|
-
* // at runExample (/root/utiljs/packages/utiljs-errors/doc/README-examples.js:12:7)
|
|
53
|
-
* // at Object.<anonymous> (/root/utiljs/packages/utiljs-errors/doc/README-examples.js:4:31)
|
|
54
|
-
* // at Module._compile (internal/modules/cjs/loader.js:702:30)
|
|
55
|
-
* // at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)
|
|
56
|
-
* // at Module.load (internal/modules/cjs/loader.js:612:32)
|
|
57
|
-
* // at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
|
|
58
|
-
* // at Function.Module._load (internal/modules/cjs/loader.js:543:3)
|
|
59
|
-
* // at Function.Module.runMain (internal/modules/cjs/loader.js:744:10)
|
|
60
|
-
*
|
|
61
|
-
* rejectAPromise().catch(error =>
|
|
62
|
-
* console.log("\n\nWithout Caller Stack Trace\n" + error.stack)
|
|
63
|
-
* );
|
|
64
|
-
* // Without Caller Stack Trace
|
|
65
|
-
* // TypeError: Fail!
|
|
66
|
-
* // at rejectAPromise (/root/utiljs/packages/utiljs-errors/doc/README-examples.js:20:27)
|
|
67
|
-
* // at runExample0 (/root/utiljs/packages/utiljs-errors/doc/README-examples.js:53:3)
|
|
68
|
-
* // at runExample (/root/utiljs/packages/utiljs-errors/doc/README-examples.js:12:7)
|
|
69
|
-
* // at Object.<anonymous> (/root/utiljs/packages/utiljs-errors/doc/README-examples.js:4:31)
|
|
70
|
-
* // at Module._compile (internal/modules/cjs/loader.js:702:30)
|
|
71
|
-
* // at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)
|
|
72
|
-
* // at Module.load (internal/modules/cjs/loader.js:612:32)
|
|
73
|
-
* // at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
|
|
74
|
-
* // at Function.Module._load (internal/modules/cjs/loader.js:543:3)
|
|
75
|
-
* // at Function.Module.runMain (internal/modules/cjs/loader.js:744:10)
|
|
76
|
-
*
|
|
77
|
-
* @param {Promise} promise The promise to wrap
|
|
78
|
-
* @param {String} [message] A human-readable description of the error
|
|
79
|
-
* @return {Promise} A promise that upon rejection wraps the error in an AsyncError and rethrows
|
|
80
|
-
* @throws {TypeError} If the given promise is not an instance of Promise
|
|
81
|
-
*
|
|
82
|
-
* @public
|
|
83
|
-
* @function Errors#catch
|
|
84
|
-
*/
|
|
85
|
-
function _catch(promise, message) {
|
|
86
|
-
var _this = this;
|
|
87
|
-
var callerError = new Error();
|
|
88
|
-
return promise["catch"](function (error) {
|
|
89
|
-
throw new _this.AsyncError(callerError, error, message);
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
/**
|
|
94
|
-
* An error that preserves the stack trace of the thread that calls an asynchronous function.
|
|
95
|
-
*
|
|
96
|
-
* Use {@link Errors#catch} to use this class. Use this class directly for instanceof checks.
|
|
97
|
-
*
|
|
98
|
-
* @public
|
|
99
|
-
* @class Errors#AsyncError
|
|
100
|
-
*/
|
|
101
|
-
}, {
|
|
102
|
-
key: "AsyncError",
|
|
103
|
-
get: function get() {
|
|
104
|
-
return require("./AsyncError");
|
|
105
|
-
}
|
|
106
|
-
}, {
|
|
107
|
-
key: "FalsyError",
|
|
108
|
-
get: function get() {
|
|
109
|
-
return require("./FalsyError");
|
|
110
|
-
}
|
|
111
|
-
}, {
|
|
112
|
-
key: "MissingError",
|
|
113
|
-
get: function get() {
|
|
114
|
-
return require("./MissingError");
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
/**
|
|
118
|
-
* A wrapper of another error used for rethrowing.
|
|
119
|
-
*
|
|
120
|
-
* This error preserves information about the original error and its stack trace.
|
|
121
|
-
*
|
|
122
|
-
* A [Stack Overflow]{@link https://stackoverflow.com/questions/42754270/re-throwing-exception-in-nodejs-and-not-losing-stack-trace} article inspired this class.
|
|
123
|
-
*
|
|
124
|
-
* @example
|
|
125
|
-
* function throwATypeError() {
|
|
126
|
-
* throw new TypeError("Invalid Argument");
|
|
127
|
-
* }
|
|
128
|
-
*
|
|
129
|
-
* function rethrowTheTypeError() {
|
|
130
|
-
* try {
|
|
131
|
-
* throwATypeError();
|
|
132
|
-
* } catch (error) {
|
|
133
|
-
* throw new RethrownError(error, "Lorem Ipsum");
|
|
134
|
-
* }
|
|
135
|
-
* }
|
|
136
|
-
*
|
|
137
|
-
* try {
|
|
138
|
-
* rethrowTheTypeError();
|
|
139
|
-
* } catch (error) {
|
|
140
|
-
* console.log(error.stack);
|
|
141
|
-
* // This outputs a stack trace like the following:
|
|
142
|
-
* //
|
|
143
|
-
* // RethrownError: Lorem Ipsum
|
|
144
|
-
* // at rethrowTheTypeError (/root/utiljs/packages/utiljs-errors/test/ErrorsTest.js:16:15)
|
|
145
|
-
* // TypeError: Invalid Argument
|
|
146
|
-
* // at throwATypeError (/root/utiljs/packages/utiljs-errors/test/ErrorsTest.js:10:13)
|
|
147
|
-
* // at rethrowTheTypeError (/root/utiljs/packages/utiljs-errors/test/ErrorsTest.js:14:9)
|
|
148
|
-
* // at Context.it (/root/utiljs/packages/utiljs-errors/test/ErrorsTest.js:20:7)
|
|
149
|
-
* // ...
|
|
150
|
-
* }
|
|
151
|
-
*
|
|
152
|
-
* @param {Error} error The error to rethrow
|
|
153
|
-
* @param {String} [message] A human-readable description of the error
|
|
154
|
-
* @throws {TypeError} if the given error is not defined
|
|
155
|
-
*
|
|
156
|
-
* @public
|
|
157
|
-
* @class Errors#RethrownError
|
|
158
|
-
*/
|
|
159
|
-
}, {
|
|
160
|
-
key: "RethrownError",
|
|
161
|
-
get: function get() {
|
|
162
|
-
return require("./RethrownError");
|
|
163
|
-
}
|
|
164
|
-
}]);
|
|
165
|
-
}();
|
package/dist/FalsyError.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _Reflect$construct = require("@babel/runtime-corejs3/core-js-stable/reflect/construct");
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
5
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/classCallCheck"));
|
|
6
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/createClass"));
|
|
7
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/possibleConstructorReturn"));
|
|
8
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/getPrototypeOf"));
|
|
9
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/inherits"));
|
|
10
|
-
var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/wrapNativeSuper"));
|
|
11
|
-
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? _Reflect$construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
12
|
-
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
13
|
-
module.exports = /*#__PURE__*/function (_TypeError) {
|
|
14
|
-
function FalsyError(argumentValue, argumentName, functionName) {
|
|
15
|
-
var _this;
|
|
16
|
-
(0, _classCallCheck2["default"])(this, FalsyError);
|
|
17
|
-
_this = _callSuper(this, FalsyError, [argumentValue ? "Why are you creating a FalsyError with a truthy `argumentValue`: '" + argumentValue + "'?" : (functionName || "We") + " expected " + (argumentName ? "`" + argumentName + "`" : "an argument") + " to be truthy. " + (argumentName ? "`" + argumentName + "`" : "It") + " is the falsy value " + (argumentValue === "" ? "''" : argumentValue) + "."]);
|
|
18
|
-
_this.name = _this.constructor.name;
|
|
19
|
-
_this.argumentName = argumentName;
|
|
20
|
-
return _this;
|
|
21
|
-
}
|
|
22
|
-
(0, _inherits2["default"])(FalsyError, _TypeError);
|
|
23
|
-
return (0, _createClass2["default"])(FalsyError, null, [{
|
|
24
|
-
key: "check",
|
|
25
|
-
value: function check(argumentValue, argumentName, functionName) {
|
|
26
|
-
if (argumentValue) return;
|
|
27
|
-
throw new FalsyError(argumentValue, argumentName, functionName);
|
|
28
|
-
}
|
|
29
|
-
}]);
|
|
30
|
-
}(/*#__PURE__*/(0, _wrapNativeSuper2["default"])(TypeError));
|
package/dist/MissingError.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _Reflect$construct = require("@babel/runtime-corejs3/core-js-stable/reflect/construct");
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
5
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/classCallCheck"));
|
|
6
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/createClass"));
|
|
7
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/possibleConstructorReturn"));
|
|
8
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/getPrototypeOf"));
|
|
9
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/inherits"));
|
|
10
|
-
var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/wrapNativeSuper"));
|
|
11
|
-
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? _Reflect$construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
12
|
-
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
13
|
-
module.exports = /*#__PURE__*/function (_TypeError) {
|
|
14
|
-
function MissingError(argumentValue, argumentName, functionName) {
|
|
15
|
-
var _this;
|
|
16
|
-
(0, _classCallCheck2["default"])(this, MissingError);
|
|
17
|
-
_this = _callSuper(this, MissingError, [argumentValue != null ? "Why are you creating a MissingError with a defined `argumentValue`: '" + argumentValue + "'?" : (functionName || "We") + " expected " + (argumentName ? "`" + argumentName + "`" : "an argument") + " to be defined. " + (argumentName ? "`" + argumentName + "`" : "It") + " is '" + argumentValue + "'."]);
|
|
18
|
-
_this.name = _this.constructor.name;
|
|
19
|
-
_this.argumentName = argumentName;
|
|
20
|
-
return _this;
|
|
21
|
-
}
|
|
22
|
-
(0, _inherits2["default"])(MissingError, _TypeError);
|
|
23
|
-
return (0, _createClass2["default"])(MissingError, null, [{
|
|
24
|
-
key: "check",
|
|
25
|
-
value: function check(argumentValue, argumentName, functionName) {
|
|
26
|
-
if (argumentValue != null) return;
|
|
27
|
-
throw new MissingError(argumentValue, argumentName, functionName);
|
|
28
|
-
}
|
|
29
|
-
}]);
|
|
30
|
-
}(/*#__PURE__*/(0, _wrapNativeSuper2["default"])(TypeError));
|
package/dist/RethrownError.js
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
/*
|
|
4
|
-
* See {@link Errors#RethrownError}.
|
|
5
|
-
*/
|
|
6
|
-
var _Reflect$construct = require("@babel/runtime-corejs3/core-js-stable/reflect/construct");
|
|
7
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
8
|
-
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
9
|
-
var _stringify = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/json/stringify"));
|
|
10
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/createClass"));
|
|
11
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/classCallCheck"));
|
|
12
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/possibleConstructorReturn"));
|
|
13
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/getPrototypeOf"));
|
|
14
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/inherits"));
|
|
15
|
-
var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/wrapNativeSuper"));
|
|
16
|
-
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? _Reflect$construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
17
|
-
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
18
|
-
module.exports = /*#__PURE__*/function (_Error) {
|
|
19
|
-
function RethrownError(error, message) {
|
|
20
|
-
var _context;
|
|
21
|
-
var _this;
|
|
22
|
-
(0, _classCallCheck2["default"])(this, RethrownError);
|
|
23
|
-
_this = _callSuper(this, RethrownError, [message != null ? message : getErrorProperty(error, "message")]);
|
|
24
|
-
if (!error) throw new TypeError("RethrownError's constructor expects a defined error, but it was ".concat(error, "."));
|
|
25
|
-
_this.name = _this.constructor.name;
|
|
26
|
-
_this.original = error;
|
|
27
|
-
_this.newStack = _this.stack;
|
|
28
|
-
var errorStack = getErrorProperty(error, "stack");
|
|
29
|
-
_this.stack = (0, _concat["default"])(_context = "".concat(_this.stack, "\n")).call(_context, errorStack);
|
|
30
|
-
return _this;
|
|
31
|
-
}
|
|
32
|
-
(0, _inherits2["default"])(RethrownError, _Error);
|
|
33
|
-
return (0, _createClass2["default"])(RethrownError);
|
|
34
|
-
}(/*#__PURE__*/(0, _wrapNativeSuper2["default"])(Error));
|
|
35
|
-
function getErrorProperty(error, property) {
|
|
36
|
-
if (error[property]) return error[property];
|
|
37
|
-
try {
|
|
38
|
-
return (0, _stringify["default"])(error);
|
|
39
|
-
} catch (e) {
|
|
40
|
-
// JSON.stringify might throw the following, "TypeError: Converting circular
|
|
41
|
-
// structure to JSON."
|
|
42
|
-
return error;
|
|
43
|
-
}
|
|
44
|
-
}
|