Fix workflow run updates real time (#15701)
as title ## after https://github.com/user-attachments/assets/34239b6e-16d6-4afd-9a54-cb4767179bea
This commit is contained in:
+21
-1
@@ -14,6 +14,23 @@ import { isStepNode } from '@/workflow/workflow-diagram/utils/isStepNode';
|
||||
import { isDefined } from 'twenty-shared/utils';
|
||||
import { StepStatus, type WorkflowRunStepInfos } from 'twenty-shared/workflow';
|
||||
|
||||
const shouldOpenStep = ({
|
||||
nodeId,
|
||||
steps,
|
||||
stepInfos,
|
||||
}: {
|
||||
nodeId: string;
|
||||
steps: Array<WorkflowStep>;
|
||||
stepInfos: WorkflowRunStepInfos | undefined;
|
||||
}) => {
|
||||
const step = steps.find((step) => step.id === nodeId);
|
||||
const stepInfo = stepInfos?.[nodeId];
|
||||
const isStepPending = isDefined(stepInfo) && stepInfo.status === 'PENDING';
|
||||
const isStepOpenable = isDefined(step) && ['FORM'].includes(step.type);
|
||||
|
||||
return isStepPending && isStepOpenable;
|
||||
};
|
||||
|
||||
export const generateWorkflowRunDiagram = ({
|
||||
trigger,
|
||||
steps,
|
||||
@@ -65,7 +82,10 @@ export const generateWorkflowRunDiagram = ({
|
||||
runStatus: stepInfo.status,
|
||||
};
|
||||
|
||||
if (!isDefined(stepToOpenByDefault) && stepInfo.status === 'PENDING') {
|
||||
if (
|
||||
!isDefined(stepToOpenByDefault) &&
|
||||
shouldOpenStep({ nodeId, stepInfos, steps })
|
||||
) {
|
||||
stepToOpenByDefault = { id: nodeId, data: nodeData };
|
||||
}
|
||||
|
||||
|
||||
+1
-12
@@ -14,16 +14,6 @@ const isWorkflowVersionStepsOrTrigger = (
|
||||
);
|
||||
};
|
||||
|
||||
const isWorkflowRunState = (
|
||||
objectMetadataItem: ObjectMetadataItemWithFieldMaps,
|
||||
key: string,
|
||||
) => {
|
||||
return (
|
||||
objectMetadataItem.standardId === STANDARD_OBJECT_IDS.workflowRun &&
|
||||
key === 'state'
|
||||
);
|
||||
};
|
||||
|
||||
const isWorkflowAutomatedTriggerSettings = (
|
||||
objectMetadataItem: ObjectMetadataItemWithFieldMaps,
|
||||
key: string,
|
||||
@@ -50,8 +40,7 @@ export const objectRecordChangedValues = (
|
||||
// Temporary ignore workflow json fields changes
|
||||
if (
|
||||
isWorkflowAutomatedTriggerSettings(objectMetadataItem, key) ||
|
||||
isWorkflowVersionStepsOrTrigger(objectMetadataItem, key) ||
|
||||
isWorkflowRunState(objectMetadataItem, key)
|
||||
isWorkflowVersionStepsOrTrigger(objectMetadataItem, key)
|
||||
) {
|
||||
return acc;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user