@jchip/error
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.3 • Public • Published

    @jchip/error Version Badge

    dependency status dev dependency status License build coverage

    Downloads

    npm badge

    Utilities and polyfill for node.js errors

    API reference: https://jchip.github.io/error

    Table of Contents

    Examples

    cleanErrorStack

    import { cleanErrorStack } from "@jchip/error";
    
    try {
      require("oops");
    } catch (err) {
      console.log(cleanErrorStack(err));
    }

    Output:

    Error: Cannot find module 'oops'
    Require stack:
    - /Users/joel/error/test/samples.ts
        at Object.<anonymous> (test/samples.js:4:3)
    

    vs:

    Error: Cannot find module 'oops'
    Require stack:
    - /Users/joel/error/test/samples.js
        at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
        at Function.Module._load (node:internal/modules/cjs/loader:778:27)
        at Module.require (node:internal/modules/cjs/loader:1005:19)
        at require (node:internal/modules/cjs/helpers:94:18)
        at Object.<anonymous> (/Users/joel/error/test/samples.js:4:3)
        at Module._compile (node:internal/modules/cjs/loader:1101:14)
        at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
        at Module.load (node:internal/modules/cjs/loader:981:32)
        at Function.Module._load (node:internal/modules/cjs/loader:822:12)
        at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12)
    

    aggregateErrorStack

    Generate stack with aggregate errors from AggregateError

    Example:

    import { aggregateErrorStack, AggregateError } from "@jchip/error";
    
    console.log(aggregateErrorStack(new AggregateError([new Error("error 1")], "test")));

    Output:

    AggregateError: test
        at Object.<anonymous> (/Users/joel/error/test/samples.js:3:33)
        at Module._compile (node:internal/modules/cjs/loader:1101:14)
        at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
        at Module.load (node:internal/modules/cjs/loader:981:32)
        at Function.Module._load (node:internal/modules/cjs/loader:822:12)
        at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12)
        at node:internal/main/run_main_module:17:47
      Error: error 1
          at Object.<anonymous> (/Users/joel/error/test/samples.js:3:53)
          at Module._compile (node:internal/modules/cjs/loader:1101:14)
          at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
          at Module.load (node:internal/modules/cjs/loader:981:32)
          at Function.Module._load (node:internal/modules/cjs/loader:822:12)
          at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12)
          at node:internal/main/run_main_module:17:47
    

    AggregateError

    Example with cleanErrorStack:

    import { cleanErrorStack, AggregateError } from "@jchip/error";
    
    try {
      require("bad");
    } catch (err) {
      console.log(cleanErrorStack(new AggregateError([err], "require failed")));
    }

    Output:

    AggregateError: require failed
        at Object.<anonymous> (test/samples.js:12:31)
      Error: Cannot find module 'bad'
      Require stack:
      - /Users/joel/error/test/samples.js
          at Object.<anonymous> (test/samples.js:10:3)
    

    vs:

    AggregateError: require failed
        at Object.<anonymous> (/Users/joel/error/test/samples.js:12:15)
        at Module._compile (node:internal/modules/cjs/loader:1101:14)
        at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
        at Module.load (node:internal/modules/cjs/loader:981:32)
        at Function.Module._load (node:internal/modules/cjs/loader:822:12)
        at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12)
        at node:internal/main/run_main_module:17:47
      Error: Cannot find module 'bad'
      Require stack:
      - /Users/joel/error/test/samples.js
          at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
          at Function.Module._load (node:internal/modules/cjs/loader:778:27)
          at Module.require (node:internal/modules/cjs/loader:1005:19)
          at require (node:internal/modules/cjs/helpers:94:18)
          at Object.<anonymous> (/Users/joel/error/test/samples.js:10:3)
          at Module._compile (node:internal/modules/cjs/loader:1101:14)
          at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
          at Module.load (node:internal/modules/cjs/loader:981:32)
          at Function.Module._load (node:internal/modules/cjs/loader:822:12)
          at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12)
    

    Install

    npm i @jchip/error

    DownloadsWeekly Downloads

    14

    Version

    1.0.3

    License

    Apache-2.0

    Unpacked Size

    31.3 kB

    Total Files

    8

    Last publish

    Collaborators

    • jchip