mirror of
https://github.com/alkimake/paperclip.git
synced 2026-06-14 18:10:39 +09:00
19 lines
472 B
TypeScript
19 lines
472 B
TypeScript
|
|
import type { Request, Response, NextFunction } from "express";
|
||
|
|
import { ZodError } from "zod";
|
||
|
|
import { logger } from "./logger.js";
|
||
|
|
|
||
|
|
export function errorHandler(
|
||
|
|
err: unknown,
|
||
|
|
_req: Request,
|
||
|
|
res: Response,
|
||
|
|
_next: NextFunction,
|
||
|
|
) {
|
||
|
|
if (err instanceof ZodError) {
|
||
|
|
res.status(400).json({ error: "Validation error", details: err.errors });
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
logger.error(err, "Unhandled error");
|
||
|
|
res.status(500).json({ error: "Internal server error" });
|
||
|
|
}
|