From 8422dbdc56768debc5618d4d7bcf0e9981f0c805 Mon Sep 17 00:00:00 2001 From: braks <78412429+bcakmakoglu@users.noreply.github.com> Date: Thu, 5 Jan 2023 14:36:55 +0100 Subject: [PATCH] refactor(core): check if element still exists before attempting removal Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com> --- packages/core/src/utils/changes.ts | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/packages/core/src/utils/changes.ts b/packages/core/src/utils/changes.ts index 465508ea..c274efdb 100644 --- a/packages/core/src/utils/changes.ts +++ b/packages/core/src/utils/changes.ts @@ -115,16 +115,11 @@ export const applyChanges = < | EdgeRemoveChange )[] addRemoveChanges.forEach((change) => { - switch (change.type) { - case 'add': - elements.push(change.item) - break - case 'remove': - elements.splice( - elements.findIndex((el) => el.id === change.id), - 1, - ) - break + if (change.type === 'add') { + elements.push(change.item) + } else if (change.type === 'remove') { + const index = elements.findIndex((el) => el.id === change.id) + if (index !== -1) elements.splice(index, 1) } })