Files
automatisch/packages/backend/src/controllers/api/v1/steps/update-step.js
2024-09-19 13:30:45 +03:00

34 lines
775 B
JavaScript

import { renderObject } from '../../../../helpers/renderer.js';
export default async (request, response) => {
let step = await request.currentUser.authorizedSteps
.findById(request.params.stepId)
.throwIfNotFound();
const stepData = stepParams(request);
if (stepData.connectionId && (stepData.appKey || step.appKey)) {
await request.currentUser.authorizedConnections
.findOne({
id: stepData.connectionId,
key: stepData.appKey || step.appKey,
})
.throwIfNotFound();
}
step = await step.update(stepData);
renderObject(response, step);
};
const stepParams = (request) => {
const { connectionId, appKey, key, parameters } = request.body;
return {
connectionId,
appKey,
key,
parameters,
};
};