UNPKG

edgespec

Version:

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

80 lines (78 loc) 2.37 kB
// src/lib/format-zod-error.ts var zodIssueToString = (issue) => { if (issue.path.join(".") === "") { return issue.message; } if (issue.message === "Required") { return `\`${issue.path.join(".")}\` is required`; } return `${issue.message} for "${issue.path.join(".")}"`; }; var formatZodError = (error) => { let message; if (error.issues.length === 1) { const issue = error.issues[0]; message = zodIssueToString(issue); } else { const message_components = []; for (const issue of error.issues) { message_components.push(zodIssueToString(issue)); } message = `${error.issues.length} Zod validation issues: ` + message_components.join(", "); } message += `. Full Zod error: ${JSON.stringify(error.issues, null, 2)}`; return message; }; // src/middleware/http-exceptions.ts var EdgeSpecMiddlewareError = class extends Error { constructor(message, status = 500) { super(message); this.message = message; this.status = status; this._isHttpException = true; this.name = this.constructor.name; } }; var MethodNotAllowedError = class extends EdgeSpecMiddlewareError { constructor(allowedMethods) { super(`only ${allowedMethods.join(",")} accepted`, 405); } }; var NotFoundError = class extends EdgeSpecMiddlewareError { constructor(message) { super(message, 404); } }; var BadRequestError = class extends EdgeSpecMiddlewareError { constructor(message) { super(message, 400); } }; var InvalidQueryParamsError = class extends BadRequestError { constructor(message) { super(message); } }; var InvalidContentTypeError = class extends BadRequestError { constructor(message) { super(message); } }; var InputParsingError = class extends BadRequestError { constructor(message) { super(message); } }; var InputValidationError = class extends BadRequestError { constructor(error) { super(formatZodError(error)); } }; var ResponseValidationError = class extends EdgeSpecMiddlewareError { constructor(error) { super(formatZodError(error), 500); } }; export { BadRequestError, EdgeSpecMiddlewareError, InputParsingError, InputValidationError, InvalidContentTypeError, InvalidQueryParamsError, MethodNotAllowedError, NotFoundError, ResponseValidationError }; //# sourceMappingURL=chunk-J77ZRDU2.js.map //# sourceMappingURL=chunk-J77ZRDU2.js.map