@wthek/zod-express-interceptor
Version:
Express middleware interceptor that transforms Zod validation errors into http-error-kit formatted errors.
29 lines (28 loc) • 908 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.KitZodExpressInterceptor = KitZodExpressInterceptor;
var zod_transformer_1 = require("@wthek/zod-transformer");
/**
* Express.js middleware that intercepts all errors and attempts to transform any
* Zod validation errors into structured `http-error-kit` errors using the
* KitZodTransformer. If the error is not a ZodError, it is left unchanged.
*
* @returns {import("express").Handler}
* @example
*
* import express from "express";
* import { KitZodExpressInterceptor } from "@wthek/zod-transformer";
*
* const app = express();
* app.use(KitZodExpressInterceptor());
*/
function KitZodExpressInterceptor() {
return function (error, req, res, next) {
try {
next((0, zod_transformer_1.KitZodTransformer)(error));
}
catch (err) {
next(err);
}
};
}