| import { Request, Response, NextFunction } from "express"; | |
| export const responseHandler = (req: Request, res: Response, next: NextFunction) => { | |
| const startTime = Date.now(); | |
| res.success = (data: any, message = "Request successful") => { | |
| const responseTime = Date.now() - startTime; | |
| return res.status(200).json({ | |
| success: true, | |
| message, | |
| data, | |
| timestamp: new Date().toISOString(), | |
| responseTime: `${responseTime}ms`, | |
| }); | |
| }; | |
| res.error = (statusCode: number, errorCode: string, errorMessage: string, error: any = null) => { | |
| const responseTime = Date.now() - startTime; | |
| return res.status(statusCode).json({ | |
| success: false, | |
| code: errorCode, | |
| errorMessage: errorMessage, | |
| error: error, | |
| timestamp: new Date().toISOString(), | |
| responseTime: `${responseTime}ms`, | |
| }); | |
| }; | |
| next(); | |
| }; | |