import { workflowDiagramTriggerNodeSelectionState } from '@/workflow/states/workflowDiagramTriggerNodeSelectionState'; import { WorkflowDiagramEdge, WorkflowDiagramNode, } from '@/workflow/types/WorkflowDiagram'; import { useReactFlow } from '@xyflow/react'; import { useEffect } from 'react'; import { useRecoilValue, useSetRecoilState } from 'recoil'; import { isDefined } from 'twenty-ui'; export const useTriggerNodeSelection = () => { const reactflow = useReactFlow(); const workflowDiagramTriggerNodeSelection = useRecoilValue( workflowDiagramTriggerNodeSelectionState, ); const setWorkflowDiagramTriggerNodeSelection = useSetRecoilState( workflowDiagramTriggerNodeSelectionState, ); useEffect(() => { if (!isDefined(workflowDiagramTriggerNodeSelection)) { return; } reactflow.updateNode(workflowDiagramTriggerNodeSelection, { selected: true, }); setWorkflowDiagramTriggerNodeSelection(undefined); }, [ reactflow, setWorkflowDiagramTriggerNodeSelection, workflowDiagramTriggerNodeSelection, ]); };