Wondering what’s next for npm?Check out our public roadmap! »

    error-to-json
    TypeScript icon, indicating that this package has built-in type declarations

    2.0.0 • Public • Published

    error-to-json Build Status

    Returns a JSON representation of an error (handles nested errors and calls nested toJSONs)

    Installation

    npm i --save error-to-json

    Usage

    Supports both ESM and CommonJS

    // esm
    import errorToJSON from 'error-to-json'
    // commonjs
    const errorToJSON = require('error-to-json')

    Example: toJSON

    import errorToJSON from 'error-to-json'
     
    var model = {
      _json: {
        x: 1,
        y: 2
      }
      helper: function () {/*...*/},
      toJSON: function () {
        return this._json
      }
    }
    var err = new Error('boom')
    err.data = {
      err: new TypeError('boom2'),
      model: model
    }
    var json = errorToJSON(err)
    /*
    {
      "name": "Error",
      "message": "boom",
      "stack": "Error: boom\n    ....",
      "data": {
        "err": { // nested error was also converted to json
          "name": "TypeError",
          "message": "boom2",
          "stack": "TypeError: boom2\n    ...."
        },
        "model": { // toJSON was called!
          "x": 1,
          "y": 2
        }
      }
    }
     */
     

    Example: Parse

    import { parse } from 'error-to-json'
     
    var err = parse({
      message: 'boom2',
      stack: 'Error: boom2\n  at ...\n  at...',
    })
    /*
      > err
      [ Error: boom2 ]
      > err.stack
      `Error: boom2
        at ...
        at ...`
    */
     
    var err2 = parse({
      message: 'boom',
      // no stack
    })
    /*
      > err2
      [ Error: boom ]
      > err2.stack
      'Error: boom'
    */

    License

    MIT

    Install

    npm i error-to-json

    DownloadsWeekly Downloads

    7,950

    Version

    2.0.0

    License

    MIT

    Unpacked Size

    24.4 kB

    Total Files

    19

    Last publish

    Collaborators

    • avatar