UNPKG

winterspec

Version:

Write Winter-CG compatible routes with filesystem routing and tons of features

51 lines (50 loc) 1.41 kB
import { formatZodError } from "../lib/format-zod-error.js"; export class WinterSpecMiddlewareError extends Error { constructor(message, status = 500) { super(message); this.message = message; this.status = status; this._isHttpException = true; this.name = this.constructor.name; } } export class MethodNotAllowedError extends WinterSpecMiddlewareError { constructor(allowedMethods) { super(`only ${allowedMethods.join(",")} accepted`, 405); } } export class NotFoundError extends WinterSpecMiddlewareError { constructor(message) { super(message, 404); } } export class BadRequestError extends WinterSpecMiddlewareError { constructor(message) { super(message, 400); } } export class InvalidQueryParamsError extends BadRequestError { constructor(message) { super(message); } } export class InvalidContentTypeError extends BadRequestError { constructor(message) { super(message); } } export class InputParsingError extends BadRequestError { constructor(message) { super(message); } } export class InputValidationError extends BadRequestError { constructor(error) { super(formatZodError(error)); } } export class ResponseValidationError extends WinterSpecMiddlewareError { constructor(error) { super(formatZodError(error), 500); } }