deployable-errors
Standard set of custom Error classes including a base class ExtendedError
to create new Error classe from.
Usage
npm install --save deployable-errors
Then require
const ValidationError KeyError HttpError ExtendedError =
ExtendedError
Base class used to extend errors
const ExtendedError ={}let err = 'Here\'s a new error!'
.simple
Place to store a human readable error message.
let err = 'foo missing bar variable.' simple: "There was problem with foo"console
ValidationError
An error to throw when something simple goes wrong to be handled with output to the user.
const ValidationError =let err = 'Store should not be a number' field: 'store' value: 9
The error holds the .value
and .field
properties for later inspection.
.field
Validation field
.value
Validation value
HttpError
HttpError includes a helper function that will lookup a HTTP spec table of errors. It can include a standard error message if none is provided.
const HttpError =let err = HttpError
A HttpError stores the .status
for later use, like in an Express error route.
.status
Stores the HTTP Status code.
KeyError
Something generic to throw when a property is missing (Rubyish)
const KeyError =let store = one: 1 two: 2ley key = 'three'let number = storethreeif !number throw 'Number not found' key: keyreturn number
.key
The key that failed