From c4a94ed902f0200f4c20bcb78cd7e4f2a03f974b Mon Sep 17 00:00:00 2001 From: Faruk AYDIN Date: Mon, 10 Mar 2025 15:59:39 +0100 Subject: [PATCH] refactor: Do not pass response object to throw validation error --- .../backend/src/controllers/api/v1/flows/import-flow.js | 6 +----- packages/backend/src/helpers/import-flow.js | 8 +++----- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/packages/backend/src/controllers/api/v1/flows/import-flow.js b/packages/backend/src/controllers/api/v1/flows/import-flow.js index c64d0f9e..4fbdea54 100644 --- a/packages/backend/src/controllers/api/v1/flows/import-flow.js +++ b/packages/backend/src/controllers/api/v1/flows/import-flow.js @@ -2,11 +2,7 @@ import { renderObject } from '../../../../helpers/renderer.js'; import importFlow from '../../../../helpers/import-flow.js'; export default async function importFlowController(request, response) { - const flow = await importFlow( - request.currentUser, - flowParams(request), - response - ); + const flow = await importFlow(request.currentUser, flowParams(request)); return renderObject(response, flow, { status: 201 }); } diff --git a/packages/backend/src/helpers/import-flow.js b/packages/backend/src/helpers/import-flow.js index ae89559a..da8faa6e 100644 --- a/packages/backend/src/helpers/import-flow.js +++ b/packages/backend/src/helpers/import-flow.js @@ -1,14 +1,12 @@ import Crypto from 'crypto'; import Step from '../models/step.js'; -import { renderObjectionError } from './renderer.js'; +import { ValidationError } from 'objection'; -const importFlow = async (user, flowData, response) => { +const importFlow = async (user, flowData) => { const steps = flowData.steps || []; - // Validation: the first step must be a trigger if (!steps.length || steps[0].type !== 'trigger') { - return renderObjectionError(response, { - statusCode: 422, + throw new ValidationError({ type: 'ValidationError', data: { steps: [{ message: 'The first step must be a trigger!' }],