{"_id":"composite-error","_rev":"9-5ed054ce6407286cd32fcee6796d38b6","name":"composite-error","description":"Error wrapping in Node.js","dist-tags":{"latest":"1.0.2"},"versions":{"0.1.0":{"name":"composite-error","version":"0.1.0","description":"Error wrapping in Node.js","keywords":["error","wrapping","stacktrace","stack","trace"],"bugs":{"url":"https://github.com/nickuraltsev/composite-error/issues"},"license":"MIT","author":{"name":"Nick Uraltsev","email":"nick.uraltsev@gmail.com"},"main":"lib/compositeError.js","repository":{"type":"git","url":"https://github.com/nickuraltsev/composite-error.git"},"devDependencies":{"mocha":"2.2.5","should":"6.0.3"},"scripts":{"test":"mocha --reporter spec test/compositeError.test.js"},"gitHead":"0832d6e790a0eed865eae66aff8f690d2de05cbe","homepage":"https://github.com/nickuraltsev/composite-error","_id":"composite-error@0.1.0","_shasum":"9eef89dba83992b700511d9cbf6b2a14f273d794","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.0","_npmUser":{"name":"nickuraltsev","email":"nick.uraltsev@gmail.com"},"dist":{"shasum":"9eef89dba83992b700511d9cbf6b2a14f273d794","tarball":"https://registry.npmjs.org/composite-error/-/composite-error-0.1.0.tgz","integrity":"sha512-sFXK0gGMKh/X9Dt2yVCEvDe+qEIhDSSZodumv5pdHM9Gz4OmBjgIAppvkcmFKgkspxsEkQPw26i/BF3KGDwMaQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCy8Tv2jpJiyRr89tjC3NMcamfUd5HMXwTLa/d4YoD03wIgaBzvscQfbib+knbkcbqDnZCjTSf0mING+K366bkmBlI="}]},"maintainers":[{"name":"nickuraltsev","email":"nick.uraltsev@gmail.com"}]},"0.1.1":{"name":"composite-error","version":"0.1.1","description":"Error wrapping in Node.js","keywords":["error","wrapping","stacktrace","stack","trace"],"bugs":{"url":"https://github.com/nickuraltsev/composite-error/issues"},"license":"MIT","author":{"name":"Nick Uraltsev","email":"nick.uraltsev@gmail.com"},"main":"lib/compositeError.js","repository":{"type":"git","url":"https://github.com/nickuraltsev/composite-error.git"},"devDependencies":{"mocha":"2.2.5","should":"6.0.3"},"scripts":{"test":"mocha --reporter spec test/compositeError.test.js"},"gitHead":"6055a2394c92e829312b144de8c51300239128c7","homepage":"https://github.com/nickuraltsev/composite-error","_id":"composite-error@0.1.1","_shasum":"a4ec339c3794bc7e356412b915481995fef82727","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.0","_npmUser":{"name":"nickuraltsev","email":"nick.uraltsev@gmail.com"},"dist":{"shasum":"a4ec339c3794bc7e356412b915481995fef82727","tarball":"https://registry.npmjs.org/composite-error/-/composite-error-0.1.1.tgz","integrity":"sha512-uKfFK2AO3V4YrzwnWYs0zO6jhfLScr30RoQ6iqG62iWXkp0G5w/Fx8W3y9ax5nwrlKzvTQzk1K6ODvChkwhCFA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICbGm8o8HtkozM82uNa54+kRX8raYO1Gq+3TBavgEngIAiEAjfJHXVMZlfW7WMJ2kgNw2/7oD3aj2j8TlHYDfIfPhbY="}]},"maintainers":[{"name":"nickuraltsev","email":"nick.uraltsev@gmail.com"}]},"1.0.0":{"name":"composite-error","version":"1.0.0","description":"Error wrapping in Node.js","keywords":["error","wrapping","stacktrace","stack","trace"],"bugs":{"url":"https://github.com/nickuraltsev/composite-error/issues"},"license":"MIT","author":{"name":"Nick Uraltsev","email":"nick.uraltsev@gmail.com"},"main":"lib/compositeError.js","repository":{"type":"git","url":"git+https://github.com/nickuraltsev/composite-error.git"},"devDependencies":{"mocha":"^3.0.2","should":"^11.1.0","eslint":"^3.4.0"},"scripts":{"test":"mocha --reporter spec","lint":"eslint lib test examples"},"gitHead":"a6e16c0e7d4ee39bc84e9802d918c15d65e4015a","homepage":"https://github.com/nickuraltsev/composite-error#readme","_id":"composite-error@1.0.0","_shasum":"1aca01fb2deca899b25fa87cbc134989c4938184","_from":".","_npmVersion":"3.9.5","_nodeVersion":"6.2.2","_npmUser":{"name":"nickuraltsev","email":"nick.uraltsev@gmail.com"},"dist":{"shasum":"1aca01fb2deca899b25fa87cbc134989c4938184","tarball":"https://registry.npmjs.org/composite-error/-/composite-error-1.0.0.tgz","integrity":"sha512-apflLLaJiOgfhzi9kRX6faBrZG/ff6LjRYlS/C/gyeowTo14xlLz/dVHA9j986tiyLsX05YGDIGzU0dNfq7r4Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkqMbeLbGRoLgx+1Ss7q0bTF1A64qnErLTWA9oUXsZtAIgR7d+S3vnQrVwLzkYy9DpcXCAdpwDPpf7KaEkitC3wLc="}]},"maintainers":[{"name":"nickuraltsev","email":"nick.uraltsev@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/composite-error-1.0.0.tgz_1473981881476_0.6520530651323497"}},"1.0.1":{"name":"composite-error","version":"1.0.1","description":"Error wrapping in Node.js","keywords":["error","wrapping","stacktrace","stack","trace"],"bugs":{"url":"https://github.com/nickuraltsev/composite-error/issues"},"license":"MIT","author":{"name":"Nick Uraltsev","email":"nick.uraltsev@gmail.com"},"main":"lib/compositeError.js","repository":{"type":"git","url":"git+https://github.com/nickuraltsev/composite-error.git"},"devDependencies":{"mocha":"^3.0.2","should":"^11.1.0","eslint":"^3.4.0"},"scripts":{"test":"mocha --reporter spec","lint":"eslint lib test examples"},"gitHead":"1e98f66deb26abdf35af360c04daed0ace5fbf52","homepage":"https://github.com/nickuraltsev/composite-error#readme","_id":"composite-error@1.0.1","_shasum":"b6a98af876307f629866e21c2559fdb01d6441a1","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.5.0","_npmUser":{"name":"nickuraltsev","email":"nick.uraltsev@gmail.com"},"dist":{"shasum":"b6a98af876307f629866e21c2559fdb01d6441a1","tarball":"https://registry.npmjs.org/composite-error/-/composite-error-1.0.1.tgz","integrity":"sha512-JlALjHtjVfLvpNdS7V5x0urb0/kFR5PYMnddGFJ4R721AyVIQ2RoKn7PdzbrYuhg7bM5OxjoRjJMEwIQV3th/A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCl1OSlVJelPO87wMMBn5gsUAAkkPrwJL+90JwGrOJn6AIgNIgLk2B8zxuRskGPmqMP7SNww8SEd7WSdP9WlbAgrXg="}]},"maintainers":[{"name":"nickuraltsev","email":"nick.uraltsev@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/composite-error-1.0.1.tgz_1487915521921_0.8570921167265624"}},"1.0.2":{"name":"composite-error","version":"1.0.2","description":"Error wrapping in Node.js","keywords":["error","wrapping","stacktrace","stack","trace"],"bugs":{"url":"https://github.com/nickuraltsev/composite-error/issues"},"license":"MIT","author":{"name":"Nick Uraltsev","email":"nick.uraltsev@gmail.com"},"main":"lib/compositeError.js","repository":{"type":"git","url":"git+https://github.com/nickuraltsev/composite-error.git"},"devDependencies":{"mocha":"^3.0.2","should":"^11.1.0","eslint":"^3.4.0"},"scripts":{"test":"mocha --reporter spec","lint":"eslint lib test examples"},"gitHead":"0281bdbc9c468b64f2bc05b591273e97100e3cff","homepage":"https://github.com/nickuraltsev/composite-error#readme","_id":"composite-error@1.0.2","_shasum":"0d6d9d82c1781a7a63c504fbdff5451627772832","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.5.0","_npmUser":{"name":"nickuraltsev","email":"nick.uraltsev@gmail.com"},"dist":{"shasum":"0d6d9d82c1781a7a63c504fbdff5451627772832","tarball":"https://registry.npmjs.org/composite-error/-/composite-error-1.0.2.tgz","integrity":"sha512-kr6tZNUb15tHkSGhS6kNxxLHpgYguU6r5F+bUXcxbNYkLGIPX/Z2KKyXgli5t83FjGkBJ+GrludBoj3O8E/1Hw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICpYbiWrBvfWk5zNRAyqHHqHJTy6BpE/133xsaQBdYx6AiAbO7V+tWq0EJmH7cS6Cb3W8Ka5iUiZQzieI8TY+38pbA=="}]},"maintainers":[{"name":"nickuraltsev","email":"nick.uraltsev@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/composite-error-1.0.2.tgz_1490848229804_0.2807446192018688"}}},"readme":"# composite-error\n\n[![npm version](https://badge.fury.io/js/composite-error.svg)](https://badge.fury.io/js/composite-error)\n\n'composite-errors' allows you to wrap and re-throw an error, providing additional context without losing the original error information.\n\n## Overview\n\n- You can wrap one or multiple errors into a `CompositeError`.\n- You can use the `CompositeError` class as a base class for your own custom errors that can wrap other errors.\n- The `stack` property of a `CompositeError` returns a string containing the stack trace of the `CompositeError` and the stack traces of the wrapped errors.\n\n## Installation\n\n```\n$ npm install --save composite-error\n```\n\n## Usage\n\n### Wrapping an error\n\n```javascript\nconst CompositeError = require('composite-error');\n\ntry {\n  doSomething();\n} catch (error) {\n  throw new CompositeError('Error occurred while trying to do something.', error);\n}\n```\n\n### Wrapping multiple errors\n\n```javascript\nthrow new CompositeError('Multiple errors occurred', [error1, error2]);\n```\n\n### Creating custom errors\n\nUsing the ES2015 class syntax:\n\n```javascript\nclass MyCustomError extends CompositeError {\n  constructor(message, innerErrors) {\n    super(message, innerErrors);\n    this.name = 'MyCustomError';\n  }\n}\n```\n\nNot using the ES2015 class syntax:\n\n```javascript\nconst util = require('util');\n\nfunction MyCustomError(message, innerErrors) {\n  CompositeError.call(this, message, innerErrors);\n  this.name = 'MyCustomError';\n}\n\nutil.inherits(MyCustomError, CompositeError);\n```\n\n### Stack trace\n\nThe `stack` property of a `CompositeError` returns a string containing the stack trace of the `CompositeError` and the stack traces of the wrapped errors.\n\nFor example, the following code\n\n```javascript\nconst firstError = new Error('First error');\nconst secondError = new CompositeError('Second error', firstError);\nconst thirdError = new CompositeError('Third error', secondError);\nconsole.log(thirdError.stack);\n```\n\nwill produce the following output:\n\n```\nCompositeError: Third error\n    at Object.<anonymous> (/Users/nick/Projects/composite-error/example1.js:7:18)\n    at Module._compile (module.js:460:26)\n    at Object.Module._extensions..js (module.js:478:10)\n    [... snipped for brevity ...]\n--- Inner error: CompositeError: Second error\n    at Object.<anonymous> (/Users/nick/Projects/composite-error/example1.js:6:19)\n    at Module._compile (module.js:460:26)\n    at Object.Module._extensions..js (module.js:478:10)\n    [... snipped for brevity ...]\n--- Inner error: Error: First error\n    at Object.<anonymous> (/Users/nick/Projects/composite-error/example1.js:5:18)\n    at Module._compile (module.js:460:26)\n    at Object.Module._extensions..js (module.js:478:10)\n    [... snipped for brevity ...]\n--- End of inner error\n--- End of inner error\n```\n\n### Accessing inner errors\n\nThe inner errors can be accessed using the `CompositeError#innerErrors` property.\n\n## License\n\n[MIT](https://github.com/nickuraltsev/composite-error/blob/master/LICENSE)\n","maintainers":[{"name":"nickuraltsev","email":"nick.uraltsev@gmail.com"}],"time":{"modified":"2022-06-13T20:21:00.126Z","created":"2015-06-13T18:56:00.538Z","0.1.0":"2015-06-13T18:56:00.538Z","0.1.1":"2015-06-13T19:18:05.625Z","1.0.0":"2016-09-15T23:24:41.721Z","1.0.1":"2017-02-24T05:52:02.210Z","1.0.2":"2017-03-30T04:30:31.758Z"},"homepage":"https://github.com/nickuraltsev/composite-error#readme","keywords":["error","wrapping","stacktrace","stack","trace"],"repository":{"type":"git","url":"git+https://github.com/nickuraltsev/composite-error.git"},"author":{"name":"Nick Uraltsev","email":"nick.uraltsev@gmail.com"},"bugs":{"url":"https://github.com/nickuraltsev/composite-error/issues"},"license":"MIT","readmeFilename":"README.md","users":{"amobiz":true,"i1g":true}}