1.0.1 • Published 5 years ago

@vaemoi/verrors-node v1.0.1

Weekly downloads
1
License
MIT
Repository
gitlab
Last release
5 years ago

verrors-node npm version

Known Vulnerabilities Maintainability Coverage Status

Custom NodeJS error class

Usage

// extend the Verror class to your liking to describe errors in your code
const Verror = require(`@vaemoi/verrors-node`);

class BaseError extends Verror {}


class FetchError extends BaseError {
  constructor(message, code, url) {
    super(`Problem with request -- ${message}: ${code}\n\t${url}`);
  }
}

class BadURLError extends FetchError {
  constructor(code, url) {
    super(`probably a bad url`, code, url);
  }
}

class ServerError extends FetchError {
  constructor(code, url) {
    super(`server error`, code, url);
  }
}

// Catch errors and print them using .display()
...
try {
    // Fetching code ...

    if (!response.ok) {
        const err = response.status < 500 ? OrpinError.BadURL : OrpinError.Server;

        throw new err(response.status, info.cdnURI);
    }
} catch (err) {
    if (err instanceof Verror) {
        console.log(err.display());
    } else {
        console.error(err);
    }
}
1.0.1

5 years ago

1.0.0

5 years ago