perf: Improve workflows list performance (#5021)

* spike: Improve workflow list performance

* fix: Correcting override behavior

* refactor: Remove unnecessary promise

* remove duplicate code

* remove the `async` that is breaking the listings page

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
This commit is contained in:
Omar Ajoue
2022-12-23 13:58:34 +01:00
committed by GitHub
parent a12606828e
commit bb0eedada9
5 changed files with 92 additions and 71 deletions

View File

@@ -106,12 +106,7 @@ workflowsController.post(
await ExternalHooks().run('workflow.afterCreate', [savedWorkflow]);
void InternalHooksManager.getInstance().onWorkflowCreated(req.user.id, newWorkflow, false);
const { id, ...rest } = savedWorkflow;
return {
id: id.toString(),
...rest,
};
return WorkflowsService.entityToResponse(savedWorkflow);
}),
);
@@ -121,7 +116,8 @@ workflowsController.post(
workflowsController.get(
'/',
ResponseHelper.send(async (req: WorkflowRequest.GetAll) => {
return WorkflowsService.getMany(req.user, req.query.filter);
const workflows = await WorkflowsService.getMany(req.user, req.query.filter);
return workflows.map((workflow) => WorkflowsService.entityToResponse(workflow));
}),
);
@@ -222,14 +218,7 @@ workflowsController.get(
);
}
const {
workflow: { id, ...rest },
} = shared;
return {
id: id.toString(),
...rest,
};
return WorkflowsService.entityToResponse(shared.workflow);
}),
);
@@ -255,12 +244,7 @@ workflowsController.patch(
['owner'],
);
const { id, ...remainder } = updatedWorkflow;
return {
id: id.toString(),
...remainder,
};
return WorkflowsService.entityToResponse(updatedWorkflow);
}),
);