@bob-obringer/http-errors
Version:
A collection of HTTP Error Classes
226 lines (225 loc) • 6.23 kB
JavaScript
export class HttpError extends Error {
name;
statusCode;
constructor(statusCode, message = "") {
super(message);
this.name = "HttpError";
this.statusCode = statusCode;
}
}
export class HttpErrorBadRequest extends HttpError {
constructor(message) {
super(400, message);
this.name = "BadRequestError";
}
}
export class HttpErrorUnauthorized extends HttpError {
constructor(message) {
super(401, message);
this.name = "UnauthorizedError";
}
}
export class HttpErrorForbidden extends HttpError {
constructor(message) {
super(403, message);
this.name = "ForbiddenError";
}
}
export class HttpErrorNotFound extends HttpError {
constructor(message) {
super(404, message);
this.name = "NotFoundError";
}
}
export class HttpErrorMethodNotAllowed extends HttpError {
constructor(message) {
super(405, message);
this.name = "MethodNotAllowedError";
}
}
export class HttpErrorNotAcceptable extends HttpError {
constructor(message) {
super(406, message);
this.name = "NotAcceptableError";
}
}
export class HttpErrorProxyAuthenticationRequired extends HttpError {
constructor(message) {
super(407, message);
this.name = "ProxyAuthenticationRequiredError";
}
}
export class HttpErrorRequestTimeout extends HttpError {
constructor(message) {
super(408, message);
this.name = "RequestTimeoutError";
}
}
export class HttpErrorConflict extends HttpError {
constructor(message) {
super(409, message);
this.name = "ConflictError";
}
}
export class HttpErrorGone extends HttpError {
constructor(message) {
super(410, message);
this.name = "GoneError";
}
}
export class HttpErrorLengthRequired extends HttpError {
constructor(message) {
super(411, message);
this.name = "LengthRequiredError";
}
}
export class HttpErrorPreconditionFailed extends HttpError {
constructor(message) {
super(412, message);
this.name = "PreconditionFailedError";
}
}
export class HttpErrorPayloadTooLarge extends HttpError {
constructor(message) {
super(413, message);
this.name = "PayloadTooLargeError";
}
}
export class HttpErrorURITooLong extends HttpError {
constructor(message) {
super(414, message);
this.name = "URITooLongError";
}
}
export class HttpErrorUnsupportedMediaType extends HttpError {
constructor(message) {
super(415, message);
this.name = "UnsupportedMediaTypeError";
}
}
export class HttpErrorRangeNotSatisfiable extends HttpError {
constructor(message) {
super(416, message);
this.name = "RangeNotSatisfiableError";
}
}
export class HttpErrorExpectationFailed extends HttpError {
constructor(message) {
super(417, message);
this.name = "ExpectationFailedError";
}
}
export class HttpErrorImATeapot extends HttpError {
constructor(message) {
super(418, message);
this.name = "ImATeapotError";
}
}
export class HttpErrorUnprocessableEntity extends HttpError {
constructor(message) {
super(422, message);
this.name = "UnprocessableEntityError";
}
}
export class HttpErrorTooEarly extends HttpError {
constructor(message) {
super(425, message);
this.name = "TooEarlyError";
}
}
export class HttpErrorUpgradeRequired extends HttpError {
constructor(message) {
super(426, message);
this.name = "UpgradeRequiredError";
}
}
export class HttpErrorPreconditionRequired extends HttpError {
constructor(message) {
super(428, message);
this.name = "PreconditionRequiredError";
}
}
export class HttpErrorTooManyRequests extends HttpError {
constructor(message) {
super(429, message);
this.name = "TooManyRequestsError";
}
}
export class HttpErrorRequestHeaderFieldsTooLarge extends HttpError {
constructor(message) {
super(431, message);
this.name = "RequestHeaderFieldsTooLargeError";
}
}
export class HttpErrorUnavailableForLegalReasons extends HttpError {
constructor(message) {
super(451, message);
this.name = "UnavailableForLegalReasonsError";
}
}
export class HttpErrorInternalServerError extends HttpError {
constructor(message) {
super(500, message);
this.name = "InternalServerError";
}
}
export class HttpErrorNotImplemented extends HttpError {
constructor(message) {
super(501, message);
this.name = "NotImplementedError";
}
}
export class HttpErrorBadGateway extends HttpError {
constructor(message) {
super(502, message);
this.name = "BadGatewayError";
}
}
export class HttpErrorServiceUnavailable extends HttpError {
constructor(message) {
super(503, message);
this.name = "ServiceUnavailableError";
}
}
export class HttpErrorGatewayTimeout extends HttpError {
constructor(message) {
super(504, message);
this.name = "GatewayTimeoutError";
}
}
export class HttpErrorHTTPVersionNotSupported extends HttpError {
constructor(message) {
super(505, message);
this.name = "HTTPVersionNotSupportedError";
}
}
export class HttpErrorVariantAlsoNegotiates extends HttpError {
constructor(message) {
super(506, message);
this.name = "VariantAlsoNegotiatesError";
}
}
export class HttpErrorInsufficientStorage extends HttpError {
constructor(message) {
super(507, message);
this.name = "InsufficientStorageError";
}
}
export class HttpErrorLoopDetected extends HttpError {
constructor(message) {
super(508, message);
this.name = "LoopDetectedError";
}
}
export class HttpErrorNotExtended extends HttpError {
constructor(message) {
super(510, message);
this.name = "NotExtendedError";
}
}
export class HttpErrorNetworkAuthenticationRequired extends HttpError {
constructor(message) {
super(511, message);
this.name = "NetworkAuthenticationRequiredError";
}
}