err-code

3.0.1last stable release 4 years ago
Complexity Score
Low
Open Issues
N/A
Dependent Projects
192
Weekly Downloadsglobal
13,363,592

License

  • MIT
    • Yesattribution
    • Permissivelinking
    • Permissivedistribution
    • Permissivemodification
    • Nopatent grant
    • Yesprivate use
    • Permissivesublicensing
    • Notrademark grant

Downloads

Readme

err-code

Create new error instances with a code and additional properties.

Installation

$ npm install err-code
// or
$ bower install err-code

The browser file is named index.umd.js which supports CommonJS, AMD and globals (errCode).

Why

I find myself doing this repeatedly:

var err = new Error('My message');
err.code = 'SOMECODE';
err.detail = 'Additional information about the error';
throw err;

Usage

Simple usage.

var errcode = require('err-code');

// fill error with message + code
throw errcode(new Error('My message'), 'ESOMECODE');
// fill error with message + code + props
throw errcode(new Error('My message'), 'ESOMECODE', { detail: 'Additional information about the error' });
// fill error with message + props
throw errcode(new Error('My message'), { detail: 'Additional information about the error' });

Pre-existing fields

If the passed Error already has a .code field, or fields specified in the third argument to errcode they will be overwritten, unless the fields are read only or otherwise throw during assignment in which case a new object will be created that shares a prototype chain with the original Error. The .stack and .message properties will be carried over from the original error and .code or any passed properties will be set on it.

Tests

$ npm test

License

Released under the MIT License.

Dependencies

No runtime dependency information found for this package.

CVE IssuesActive
0
Scorecards Score
2.40
Test Coverage
No Data
Follows Semver
Yes
Github Stars
19
Dependenciestotal
8
DependenciesOutdated
5
DependenciesDeprecated
0
Threat Modelling
No Data
Repo Audits
No Data

Learn how to distribute err-code in your own private NPM registry

npm config set registry  https://npm.cloudsmith.com/owner/repo
Processing...
Done
npm install err-code
Processing...
Done

13 Releases

NPM on Cloudsmith

Getting started with NPM on Cloudsmith is fast and easy.