https://github.com/suddi/project-error
Customized error class module for projects/microservices. Throw error objects within a JavaScript Error class while preserving the stack (https://www.npmjs.com/package/project-error)
https://github.com/suddi/project-error
custom-error error error-formatting error-handling
Last synced: 3 months ago
JSON representation
Customized error class module for projects/microservices. Throw error objects within a JavaScript Error class while preserving the stack (https://www.npmjs.com/package/project-error)
- Host: GitHub
- URL: https://github.com/suddi/project-error
- Owner: suddi
- License: mit
- Created: 2017-12-01T13:50:46.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2023-01-05T18:13:01.000Z (over 2 years ago)
- Last Synced: 2025-02-12T20:05:16.637Z (4 months ago)
- Topics: custom-error, error, error-formatting, error-handling
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/project-error
- Size: 280 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# ProjectError
[](https://circleci.com/gh/suddi/project-error)
[](https://codecov.io/gh/suddi/project-error)
[](https://www.codacy.com/app/Suddi/project-error)
[](https://www.npmjs.com/package/project-error)
[](https://www.npmjs.com/package/project-error)
[](https://david-dm.org/suddi/project-error)
[](https://david-dm.org/suddi/project-error?type=dev)
[](https://raw.githubusercontent.com/suddi/project-error/master/LICENSE)[](https://codecov.io/gh/suddi/project-error)
Customized error class module for project/microservices. Throw error enum objects within a JavaScript Error class preserving the stack.
## Installation
````
npm install --save project-error
````## Usage
1) Pass any object containing into the first argument of `ProjectError`:
````js
var ProjectError = require('project-error');throw new ProjectError({
code: 4010,
statusCode: 400,
message: 'Bad Request'
});
````2) Pass additional error details as either a string or an array of strings:
````js
var ProjectError = require('project-error');var errorObj = {
code: 4010,
statusCode: 400,
message: 'Bad Request'
};
var errorDetail = 'This is a one-liner error detail';
throw new ProjectError(errorObj, errorDetail);
````````js
var ProjectError = require('project-error');var errorObj = {
code: 4010,
statusCode: 400,
message: 'Bad Request'
};
var errorDetails = [
'This is multiple lines of error details',
'This is multiple lines of error details',
'This is multiple lines of error details'
];
throw new ProjectError(errorObj, errorDetails);
````3) Pass a standard `Error` object and preserve the stack:
````js
var errorObj = {
code: 4010,
statusCode: 400,
message: 'Bad Request'
};
var errorDetail = 'This is a one-liner error detail';
var error = new Error('Fail!');
throw new ProjectError(errorObj, errorDetail, error);
````