From a2acdc6b123e1fa7859e087dc926227f55b22529 Mon Sep 17 00:00:00 2001 From: Faruk AYDIN Date: Tue, 26 Mar 2024 13:13:37 +0100 Subject: [PATCH] feat: Add draft version of renderError to renderer helper --- packages/backend/src/helpers/renderer.js | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/packages/backend/src/helpers/renderer.js b/packages/backend/src/helpers/renderer.js index 91ea259a..c4329a00 100644 --- a/packages/backend/src/helpers/renderer.js +++ b/packages/backend/src/helpers/renderer.js @@ -44,4 +44,22 @@ const renderObject = (response, object, options) => { return response.json(computedPayload); }; -export { renderObject }; +const renderError = (response, errors, status, type) => { + const errorStatus = status || 422; + const errorType = type || 'ValidationError'; + + const payload = { + errors: errors.reduce((acc, error) => { + const key = Object.keys(error)[0]; + acc[key] = error[key]; + return acc; + }, {}), + meta: { + type: errorType, + }, + }; + + return response.status(errorStatus).send(payload); +}; + +export { renderObject, renderError };