JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 225
  • Score
    100M100P100Q92138F
  • License MIT

Simply create sub-classed Boom errors for Hapi applications.

Package Exports

  • create-boom-error
  • create-boom-error/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (create-boom-error) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

create-boom-error npm version Build Status

A simple Node.js library for easily creating classed Boom errors in Hapi applications.

Installation

npm install create-boom-error

Usage

createBoomError(name, statusCode, [message], [code])

Creates a Boom error.

  • name - The name of the error.
  • statusCode - the integer status code of the Boom error
  • message - an optional string or function which returns a string
  • code - an optional machine-keyable error status string

Create a simple error

const { createBoomError } = require('create-boom-error');

const MyError = createBoomError('MyError', 404, 'simple message', 'not_found');

const err = new MyError();

// err is an instance of MyError making it easy to check in tests
err instanceof MyError // => true

// err.code will match the code argument passed in
err.code // => 'not_found'

Note that if the optional code argument is NOT passed in then the .code field attached to the error will default to a decamelized, snake case version of the name. For example:

const MyError = createBoomError('MyError', 404, 'simple message');

const err = new MyError();

// err is an instance of MyError making it easy to check in tests
err instanceof MyError // => true

// err.code will return the name argument decamelized and in snake case
err.code // => 'my_error'

Create an error with a dynamic message

const MyError = createBoomError('MyError', 404, (num) => `You must have more than ${num} coins.`);

const err = new MyError(4);

// err now has the dynamic message
err.message // => 'You must have more than 4 coins.'

Development

Run tests

npm run test