From 92d1ed65ff5bfdb3974db45b6116d5d77a55cd71 Mon Sep 17 00:00:00 2001 From: Ali BARIN Date: Wed, 8 Mar 2023 20:23:05 +0000 Subject: [PATCH] feat: expose errors from webhooks --- packages/backend/src/routes/webhooks.ts | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/packages/backend/src/routes/webhooks.ts b/packages/backend/src/routes/webhooks.ts index cdf8f705..3bda1138 100644 --- a/packages/backend/src/routes/webhooks.ts +++ b/packages/backend/src/routes/webhooks.ts @@ -1,5 +1,6 @@ -import express, { Router } from 'express'; +import express, { Response, Router, NextFunction, RequestHandler } from 'express'; import multer from 'multer'; + import { IRequest } from '@automatisch/types'; import appConfig from '../config/app'; import webhookHandler from '../controllers/webhooks/handler'; @@ -16,9 +17,17 @@ router.use(express.text({ }, })); -router.get('/:flowId', webhookHandler); -router.put('/:flowId', webhookHandler); -router.patch('/:flowId', webhookHandler); -router.post('/:flowId', webhookHandler); +const exposeError = (handler: RequestHandler) => async (req: IRequest, res: Response, next: NextFunction) => { + try { + await handler(req, res, next); + } catch (err) { + res.send(err); + } +} + +router.get('/:flowId', exposeError(webhookHandler)); +router.put('/:flowId', exposeError(webhookHandler)); +router.patch('/:flowId', exposeError(webhookHandler)); +router.post('/:flowId', exposeError(webhookHandler)); export default router;