From 45011e8fda8fc6b70bd78db5c56873f6bcd077ed Mon Sep 17 00:00:00 2001 From: anovazzi1 Date: Tue, 28 May 2024 17:57:52 -0300 Subject: [PATCH] refactor: add idx property to handle types in GenericNode and reactflowUtils --- src/frontend/src/customNodes/genericNode/index.tsx | 2 ++ src/frontend/src/types/flow/index.ts | 1 + src/frontend/src/utils/reactflowUtils.ts | 3 +++ 3 files changed, 6 insertions(+) diff --git a/src/frontend/src/customNodes/genericNode/index.tsx b/src/frontend/src/customNodes/genericNode/index.tsx index 5eb2c9c39..febf12b39 100644 --- a/src/frontend/src/customNodes/genericNode/index.tsx +++ b/src/frontend/src/customNodes/genericNode/index.tsx @@ -589,6 +589,7 @@ export default function GenericNode({ baseClasses: data.node!.base_classes, id: data.id, dataType: data.type, + idx: 0, }} type={data.node?.base_classes.join("|")} left={false} @@ -848,6 +849,7 @@ export default function GenericNode({ baseClasses: [output.selected ?? output.types[0]], id: data.id, dataType: data.type, + idx: idx, }} type={output.types.join("|")} left={false} diff --git a/src/frontend/src/types/flow/index.ts b/src/frontend/src/types/flow/index.ts index d50f8def6..005bb6197 100644 --- a/src/frontend/src/types/flow/index.ts +++ b/src/frontend/src/types/flow/index.ts @@ -58,6 +58,7 @@ export type sourceHandleType = { dataType: string; id: string; baseClasses: string[]; + idx: number; }; //left side export type targetHandleType = { diff --git a/src/frontend/src/utils/reactflowUtils.ts b/src/frontend/src/utils/reactflowUtils.ts index b3e172be2..758c60d6d 100644 --- a/src/frontend/src/utils/reactflowUtils.ts +++ b/src/frontend/src/utils/reactflowUtils.ts @@ -79,6 +79,8 @@ export function cleanEdges(nodes: Node[], edges: Edge[]) { id: sourceNode.data.id, baseClasses: sourceNode.data.node!.base_classes, dataType: sourceNode.data.type, + idx: + sourceNode.data.node!.outputs[scapeJSONParse(sourceHandle).idx] ?? 0, }; if (scapedJSONStringfy(id) !== sourceHandle) { newEdges = newEdges.filter((e) => e.id !== edge.id); @@ -397,6 +399,7 @@ export function updateEdgesHandleIds({ id: sourceNode.data.id, baseClasses: sourceNode.data.node!.base_classes, dataType: sourceNode.data.type, + idx: 0, }; } edge.sourceHandle = scapedJSONStringfy(newSource!);