From 79a5743ffbaf78d6f36a57862e3522578b9808a9 Mon Sep 17 00:00:00 2001 From: Philippe Rolet Date: Fri, 31 Jan 2025 19:08:25 +0100 Subject: [PATCH] [Nodes core] Fix nodes titles (#10450) --- front/lib/api/content_nodes.ts | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/front/lib/api/content_nodes.ts b/front/lib/api/content_nodes.ts index 34620f055503..8a7cc408ebe5 100644 --- a/front/lib/api/content_nodes.ts +++ b/front/lib/api/content_nodes.ts @@ -309,10 +309,13 @@ export function computeNodesDiff({ }, "[CoreNodes] Node mismatch" ); - connectorsNode.title = `[MISMATCH - CONNECTOR] ${connectorsNode.title}`; - coreNode.title = `[MISMATCH - CORE] ${coreNode.title}`; - mismatchNodes.push(connectorsNode); - mismatchNodes.push(coreNode); + // copy connectorsNode into a new object to avoid mutating the original + const mismatchNode = { ...connectorsNode }; + mismatchNode.title = `[MISMATCH - CONNECTOR] ${mismatchNode.title}`; + mismatchNodes.push(mismatchNode); + const mismatchCoreNode = { ...coreNode }; + mismatchCoreNode.title = `[MISMATCH - CORE] ${mismatchCoreNode.title}`; + mismatchNodes.push(mismatchCoreNode); } } }); @@ -392,13 +395,17 @@ export function computeNodesDiff({ "[CoreNodes] Received extraneous core nodes" ); } - missingNodes.forEach((node) => { - node.title = `[MISSING] ${node.title}`; + const missingTitleNodes = missingNodes.map((node) => { + const missingNode = { ...node }; + missingNode.title = `[MISSING] ${missingNode.title}`; + return missingNode; }); - extraCoreNodes.forEach((coreNode) => { - coreNode.title = `[EXTRA] ${coreNode.title}`; + const extraTitleNodes = extraCoreNodes.map((coreNode) => { + const extraNode = { ...coreNode }; + extraNode.title = `[EXTRA] ${extraNode.title}`; + return extraNode; }); - return [...mismatchNodes, ...extraCoreNodes, ...missingNodes]; + return [...mismatchNodes, ...extraTitleNodes, ...missingTitleNodes]; } export function getContentNodeType(node: CoreAPIContentNode): ContentNodeType {