@tradle/errors
    TypeScript icon, indicating that this package has built-in type declarations

    2.0.0 • Public • Published

    @tradle/errors

    error matching and rethrowing utils. Similar to https://github.com/hapijs/bounce

    API is pretty self-explanatory, but see the example below. All three functions, ignore, rethrow and matches accept the same arguments: an error, and criteria (either an Error subclass or a set of properties to match).

    ignore: ignores an error
    rethrow: rethrows an error
    matches: returns true if an error matches the provided criteria

    const createErrorType = require('error-ex')
    const Errors = require('@tradle/errors')
    const MyCustomError = createErrorType('MyCustomError')
     
    try {
      throw new MyCustomError('blah')
    } catch(err) {
      // ignored by comparing properties
      Errors.ignore(err, { message: 'blah' })
      // ignored by Error prototype chain
      Errors.ignore(err, MyCustomError)
      // ignore if any of these matches
      Errors.ignore(err, [
        MyCustomError,
        { message: 'floop' }
      ])
     
      // ignore by 'developer' alias
      // aliased to match TypeError, ReferenceError, EvalError etc.
      Errors.rethrow(err, 'developer')
    }
     
    try {
      blah
    } catch(err) {
      // will ignore ReferenceError
      Errors.ignore(err, 'developer')
    }
     
    try {
      blah
    } catch(err) {
      // will rethrow ReferenceError: blah is not defined
      Errors.rethrow(err, 'developer')
    }

    Install

    npm i @tradle/errors

    DownloadsWeekly Downloads

    2

    Version

    2.0.0

    License

    MIT

    Unpacked Size

    15 kB

    Total Files

    11

    Last publish

    Collaborators

    • leichtgewicht
    • genevayngrib
    • tenaciousmv
    • pgmemk