@@ -43,6 +43,7 @@ interface WorkflowNodesPopoverMenuOperationListProps {
4343 multipleClusterElementsNode ?: boolean ;
4444 setPopoverOpen : ( open : boolean ) => void ;
4545 sourceNodeId : string ;
46+ sourceNodeName ?: string ;
4647 trigger ?: boolean ;
4748}
4849
@@ -54,6 +55,7 @@ const WorkflowNodesPopoverMenuOperationList = ({
5455 multipleClusterElementsNode,
5556 setPopoverOpen,
5657 sourceNodeId,
58+ sourceNodeName,
5759 trigger,
5860} : WorkflowNodesPopoverMenuOperationListProps ) => {
5961 const { setLatestComponentDefinition, workflow} = useWorkflowDataStore (
@@ -82,12 +84,15 @@ const WorkflowNodesPopoverMenuOperationList = ({
8284 setRootClusterElementNodeData : state . setRootClusterElementNodeData ,
8385 } ) )
8486 ) ;
85- const { currentNode, setCurrentNode} = useWorkflowNodeDetailsPanelStore (
86- useShallow ( ( state ) => ( {
87- currentNode : state . currentNode ,
88- setCurrentNode : state . setCurrentNode ,
89- } ) )
90- ) ;
87+ const { currentNode, setCurrentNode, setWorkflowNodeDetailsPanelOpen, workflowNodeDetailsPanelOpen} =
88+ useWorkflowNodeDetailsPanelStore (
89+ useShallow ( ( state ) => ( {
90+ currentNode : state . currentNode ,
91+ setCurrentNode : state . setCurrentNode ,
92+ setWorkflowNodeDetailsPanelOpen : state . setWorkflowNodeDetailsPanelOpen ,
93+ workflowNodeDetailsPanelOpen : state . workflowNodeDetailsPanelOpen ,
94+ } ) )
95+ ) ;
9196
9297 const { captureComponentUsed} = useAnalytics ( ) ;
9398
@@ -224,6 +229,17 @@ const WorkflowNodesPopoverMenuOperationList = ({
224229 } ) ;
225230 }
226231
232+ if ( workflowNodeDetailsPanelOpen && currentNode ?. workflowNodeName === sourceNodeName ) {
233+ if ( rootClusterElementNodeData ) {
234+ setCurrentNode ( {
235+ ...rootClusterElementNodeData ,
236+ clusterElements : updatedClusterElements . nestedClusterElements ,
237+ } ) ;
238+ }
239+
240+ setWorkflowNodeDetailsPanelOpen ( false ) ;
241+ }
242+
227243 saveWorkflowDefinition ( {
228244 invalidateWorkflowQueries,
229245 nodeData : updatedNodeData ,
@@ -243,9 +259,12 @@ const WorkflowNodesPopoverMenuOperationList = ({
243259 rootClusterElementNodeData ,
244260 setRootClusterElementNodeData ,
245261 currentNode ,
262+ workflowNodeDetailsPanelOpen ,
263+ sourceNodeName ,
246264 invalidateWorkflowQueries ,
247265 updateWorkflowMutation ,
248266 setCurrentNode ,
267+ setWorkflowNodeDetailsPanelOpen ,
249268 queryClient ,
250269 ]
251270 ) ;
0 commit comments