11 lines
358 B
TypeScript
11 lines
358 B
TypeScript
|
|
import type { NextFunction, Request, Response } from 'express'
|
||
|
|
|
||
|
|
export const asyncHandler =
|
||
|
|
<TReq extends Request = Request, TRes extends Response = Response>(
|
||
|
|
fn: (req: TReq, res: TRes, next: NextFunction) => unknown | Promise<unknown>,
|
||
|
|
) =>
|
||
|
|
(req: TReq, res: TRes, next: NextFunction) => {
|
||
|
|
Promise.resolve(fn(req, res, next)).catch(next)
|
||
|
|
}
|
||
|
|
|