From 07dad4b491b53bbd85ce8e9edd246f0ffd663b6e Mon Sep 17 00:00:00 2001 From: braks <78412429+bcakmakoglu@users.noreply.github.com> Date: Wed, 18 Jan 2023 21:23:26 +0100 Subject: [PATCH] refactor(core): add warning if trying to duplicate an element Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com> --- packages/core/src/utils/changes.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/core/src/utils/changes.ts b/packages/core/src/utils/changes.ts index 71d38af7..9594936d 100644 --- a/packages/core/src/utils/changes.ts +++ b/packages/core/src/utils/changes.ts @@ -114,9 +114,13 @@ export const applyChanges = < | NodeRemoveChange | EdgeRemoveChange )[] + addRemoveChanges.forEach((change) => { if (change.type === 'add') { - elements.push(change.item) + const index = elements.findIndex((el) => el.id === change.item.id) + + if (index === -1) elements.push(change.item) + else warn(`${isNode(change.item) ? `Node` : `Edge`} with id ${change.item.id} already exists`) } else if (change.type === 'remove') { const index = elements.findIndex((el) => el.id === change.id) if (index !== -1) elements.splice(index, 1)