@stdlib/esm
Version:
ES module distribution for Stdlib, a standard library for JavaScript and Node.js.
3 lines • 1.12 kB
JavaScript
// This file is a part of stdlib. License is Apache-2.0: http://www.apache.org/licenses/LICENSE-2.0
import r from"./../utils/keys.js";import o from"./../utils/copy.js";import e from"./../assert/is-error.js";import t from"./../assert/instance-of.js";import s from"./../utils/constructor-name.js";import a from"./../utils/get-prototype-of.js";var n=[[TypeError,"TypeError"],[SyntaxError,"SyntaxError"],[ReferenceError,"ReferenceError"],[RangeError,"RangeError"],[URIError,"URIError"],[EvalError,"EvalError"],[Error,"Error"]],f=t,i=s,m=a,c=n;function l(r){var o,e;for(e=0;e<c.length;e++)if(f(r,c[e][0]))return c[e][1];for(;r;){for(o=i(r),e=0;e<c.length;e++)if(o===c[e][1])return c[e][1];r=m(r)}}var E=r,p=o,u=e,y=l;function g(r){var o,e,t;if(!u(r))throw new TypeError("invalid argument. Must provide an error object. Value: `"+r+"`.");for((e={}).type=y(r),e.message=r.message,r.name&&(e.name=r.name),r.stack&&(e.stack=r.stack),r.code&&(e.code=r.code),r.errno&&(e.errno=r.errno),r.syscall&&(e.syscall=r.syscall),o=E(r),t=0;t<o.length;t++)e[o[t]]=p(r[o[t]]);return e}var v=g;export default v;
//# sourceMappingURL=to-json.js.map