Use optimistic rendering when executing a workflow with manual trigger (#12695)
This PR adds optimistic rendering at two places: - In the `runWorkflowVersion`, to create a workflow run entry as fast as possible in the cache and render it immediately in the side panel. - In the `ListenUpdatesEffect`, to be sure the cache is properly set; we also need to set the record in the record store that's used in the fields card. ## Before https://github.com/user-attachments/assets/8b360ea9-c292-4e05-82a0-d2f12176bb6f ## After https://github.com/user-attachments/assets/2d11023c-2ceb-4fa3-a951-187b9a0b5743 ### With a slowed-down network https://github.com/user-attachments/assets/7d2a592a-1ea7-455b-856f-bf3d9d905061 ## Follow up I will create next a PR to ensure the viewport is always set when we know the dimensions of the nodes.
This commit is contained in:
committed by
GitHub
parent
a6b8830b91
commit
dae282ca0f
@ -10,6 +10,12 @@ export class RunWorkflowVersionInput {
|
||||
})
|
||||
workflowVersionId: string;
|
||||
|
||||
@Field(() => String, {
|
||||
description: 'Workflow run ID',
|
||||
nullable: true,
|
||||
})
|
||||
workflowRunId?: string | null;
|
||||
|
||||
@Field(() => graphqlTypeJson, {
|
||||
description: 'Execution result in JSON format',
|
||||
nullable: true,
|
||||
|
||||
@ -56,7 +56,8 @@ export class WorkflowTriggerResolver {
|
||||
async runWorkflowVersion(
|
||||
@AuthUser() user: User,
|
||||
@AuthWorkspace() workspace: Workspace,
|
||||
@Args('input') { workflowVersionId, payload }: RunWorkflowVersionInput,
|
||||
@Args('input')
|
||||
{ workflowVersionId, workflowRunId, payload }: RunWorkflowVersionInput,
|
||||
) {
|
||||
const workspaceMemberRepository =
|
||||
await this.twentyORMGlobalManager.getRepositoryForWorkspace<WorkspaceMemberWorkspaceEntity>(
|
||||
@ -72,6 +73,7 @@ export class WorkflowTriggerResolver {
|
||||
|
||||
return await this.workflowTriggerWorkspaceService.runWorkflowVersion({
|
||||
workflowVersionId,
|
||||
workflowRunId: workflowRunId ?? undefined,
|
||||
payload: payload ?? {},
|
||||
createdBy: buildCreatedByFromFullNameMetadata({
|
||||
fullNameMetadata: {
|
||||
|
||||
Reference in New Issue
Block a user