diff options
Diffstat (limited to 'sandbox/testAppNevena/Front/node_modules/err-code/index.js')
-rw-r--r-- | sandbox/testAppNevena/Front/node_modules/err-code/index.js | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/sandbox/testAppNevena/Front/node_modules/err-code/index.js b/sandbox/testAppNevena/Front/node_modules/err-code/index.js new file mode 100644 index 00000000..9ff3e9c5 --- /dev/null +++ b/sandbox/testAppNevena/Front/node_modules/err-code/index.js @@ -0,0 +1,47 @@ +'use strict'; + +function assign(obj, props) { + for (const key in props) { + Object.defineProperty(obj, key, { + value: props[key], + enumerable: true, + configurable: true, + }); + } + + return obj; +} + +function createError(err, code, props) { + if (!err || typeof err === 'string') { + throw new TypeError('Please pass an Error to err-code'); + } + + if (!props) { + props = {}; + } + + if (typeof code === 'object') { + props = code; + code = undefined; + } + + if (code != null) { + props.code = code; + } + + try { + return assign(err, props); + } catch (_) { + props.message = err.message; + props.stack = err.stack; + + const ErrClass = function () {}; + + ErrClass.prototype = Object.create(Object.getPrototypeOf(err)); + + return assign(new ErrClass(), props); + } +} + +module.exports = createError; |