diff --git a/packages/backend/src/errors/already-processed.ts b/packages/backend/src/errors/already-processed.js similarity index 100% rename from packages/backend/src/errors/already-processed.ts rename to packages/backend/src/errors/already-processed.js diff --git a/packages/backend/src/errors/base.ts b/packages/backend/src/errors/base.js similarity index 51% rename from packages/backend/src/errors/base.ts rename to packages/backend/src/errors/base.js index 56607322..33dfb57c 100644 --- a/packages/backend/src/errors/base.ts +++ b/packages/backend/src/errors/base.js @@ -1,22 +1,22 @@ -import { IJSONObject } from '@automatisch/types'; - export default class BaseError extends Error { details = {}; - statusCode?: number; - constructor(error?: string | IJSONObject) { - let computedError: Record; + constructor(error) { + let computedError; + try { - computedError = JSON.parse(error as string); + computedError = JSON.parse(error); } catch { - computedError = (typeof error === 'string' || Array.isArray(error)) ? { error } : error; + computedError = + typeof error === 'string' || Array.isArray(error) ? { error } : error; } - let computedMessage: string; + let computedMessage; + try { // challenge to input to see if it is stringified JSON - JSON.parse(error as string); - computedMessage = error as string; + JSON.parse(error); + computedMessage = error; } catch { if (typeof error === 'string') { computedMessage = error; diff --git a/packages/backend/src/errors/early-exit.ts b/packages/backend/src/errors/early-exit.js similarity index 100% rename from packages/backend/src/errors/early-exit.ts rename to packages/backend/src/errors/early-exit.js diff --git a/packages/backend/src/errors/generate-auth-url.js b/packages/backend/src/errors/generate-auth-url.js new file mode 100644 index 00000000..734a3001 --- /dev/null +++ b/packages/backend/src/errors/generate-auth-url.js @@ -0,0 +1,10 @@ +import BaseError from './base'; + +export default class GenerateAuthUrlError extends BaseError { + constructor(error) { + const computedError = error.response?.data || error.message; + super(computedError); + + this.message = `Error occured while creating authorization URL!`; + } +} diff --git a/packages/backend/src/errors/generate-auth-url.ts b/packages/backend/src/errors/generate-auth-url.ts deleted file mode 100644 index 630f2bcf..00000000 --- a/packages/backend/src/errors/generate-auth-url.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { IJSONObject } from '@automatisch/types'; -import BaseError from './base'; - -export default class GenerateAuthUrlError extends BaseError { - constructor(error: IJSONObject) { - const computedError = - ((error.response as IJSONObject)?.data as IJSONObject) || - (error.message as string); - - super(computedError); - - this.message = `Error occured while creating authorization URL!`; - } -} diff --git a/packages/backend/src/errors/http.js b/packages/backend/src/errors/http.js new file mode 100644 index 00000000..0a3ac8f1 --- /dev/null +++ b/packages/backend/src/errors/http.js @@ -0,0 +1,10 @@ +import BaseError from './base'; + +export default class HttpError extends BaseError { + constructor(error) { + const computedError = error.response?.data || error.message; + super(computedError); + + this.response = error.response; + } +} diff --git a/packages/backend/src/errors/http.ts b/packages/backend/src/errors/http.ts deleted file mode 100644 index d7a38e13..00000000 --- a/packages/backend/src/errors/http.ts +++ /dev/null @@ -1,17 +0,0 @@ -import type { AxiosResponse, AxiosError } from 'axios'; -import { IJSONObject } from '@automatisch/types'; -import BaseError from './base'; - -export default class HttpError extends BaseError { - response: AxiosResponse; - - constructor(error: AxiosError) { - const computedError = - error.response?.data as IJSONObject || - error.message as string; - - super(computedError); - - this.response = error.response; - } -} diff --git a/packages/backend/src/errors/quote-exceeded.ts b/packages/backend/src/errors/quote-exceeded.js similarity index 100% rename from packages/backend/src/errors/quote-exceeded.ts rename to packages/backend/src/errors/quote-exceeded.js diff --git a/packages/backend/src/helpers/error-handler.ts b/packages/backend/src/helpers/error-handler.js similarity index 63% rename from packages/backend/src/helpers/error-handler.ts rename to packages/backend/src/helpers/error-handler.js index e96117c5..910e92e5 100644 --- a/packages/backend/src/helpers/error-handler.ts +++ b/packages/backend/src/helpers/error-handler.js @@ -1,15 +1,7 @@ -import { NextFunction, Request, Response } from 'express'; import logger from './logger'; -import BaseError from '../errors/base'; - // Do not remove `next` argument as the function signature will not fit for an error handler middleware -const errorHandler = ( - err: BaseError, - req: Request, - res: Response, - next: NextFunction -): void => { +const errorHandler = (err, req, res, next) => { if (err.message === 'Not Found') { res.status(404).end(); } else { diff --git a/packages/backend/src/services/action.ts b/packages/backend/src/services/action.js similarity index 93% rename from packages/backend/src/services/action.ts rename to packages/backend/src/services/action.js index e873ab4b..33c45bcf 100644 --- a/packages/backend/src/services/action.ts +++ b/packages/backend/src/services/action.js @@ -9,13 +9,7 @@ import HttpError from '../errors/http'; import EarlyExitError from '../errors/early-exit'; import AlreadyProcessedError from '../errors/already-processed'; -type ProcessActionOptions = { - flowId: string; - executionId: string; - stepId: string; -}; - -export const processAction = async (options: ProcessActionOptions) => { +export const processAction = async (options) => { const { flowId, stepId, executionId } = options; const flow = await Flow.query().findById(flowId).throwIfNotFound(); diff --git a/packages/backend/src/services/flow.ts b/packages/backend/src/services/flow.js similarity index 91% rename from packages/backend/src/services/flow.ts rename to packages/backend/src/services/flow.js index c7382d46..769fcd3b 100644 --- a/packages/backend/src/services/flow.ts +++ b/packages/backend/src/services/flow.js @@ -5,12 +5,7 @@ import AlreadyProcessedError from '../errors/already-processed'; import HttpError from '../errors/http'; import { logger } from '../helpers/logger'; -type ProcessFlowOptions = { - flowId: string; - testRun?: boolean; -}; - -export const processFlow = async (options: ProcessFlowOptions) => { +export const processFlow = async (options) => { const { testRun, flowId } = options; const flow = await Flow.query().findById(flowId).throwIfNotFound(); const triggerStep = await flow.getTriggerStep(); diff --git a/packages/backend/src/services/test-run.ts b/packages/backend/src/services/test-run.js similarity index 85% rename from packages/backend/src/services/test-run.ts rename to packages/backend/src/services/test-run.js index 4d18028d..dd19b4af 100644 --- a/packages/backend/src/services/test-run.ts +++ b/packages/backend/src/services/test-run.js @@ -1,13 +1,9 @@ import Step from '../models/step'; -import { processFlow } from '../services/flow'; -import { processTrigger } from '../services/trigger'; -import { processAction } from '../services/action'; +import { processFlow } from './flow'; +import { processTrigger } from './trigger'; +import { processAction } from './action'; -type TestRunOptions = { - stepId: string; -}; - -const testRun = async (options: TestRunOptions) => { +const testRun = async (options) => { const untilStep = await Step.query() .findById(options.stepId) .throwIfNotFound(); diff --git a/packages/backend/src/services/trigger.ts b/packages/backend/src/services/trigger.js similarity index 79% rename from packages/backend/src/services/trigger.ts rename to packages/backend/src/services/trigger.js index 8cfdc974..f9c37432 100644 --- a/packages/backend/src/services/trigger.ts +++ b/packages/backend/src/services/trigger.js @@ -1,18 +1,9 @@ -import { IJSONObject, ITriggerItem } from '@automatisch/types'; import Step from '../models/step'; import Flow from '../models/flow'; import Execution from '../models/execution'; import globalVariable from '../helpers/global-variable'; -type ProcessTriggerOptions = { - flowId: string; - stepId: string; - triggerItem?: ITriggerItem; - error?: IJSONObject; - testRun?: boolean; -}; - -export const processTrigger = async (options: ProcessTriggerOptions) => { +export const processTrigger = async (options) => { const { flowId, stepId, triggerItem, error, testRun } = options; const step = await Step.query().findById(stepId).throwIfNotFound();