From ad7d01305e1aacca35526752878b33d77e8ee524 Mon Sep 17 00:00:00 2001 From: braks <78412429+bcakmakoglu@users.noreply.github.com> Date: Mon, 25 Sep 2023 12:48:55 +0200 Subject: [PATCH] fix(core): unselect edge if selected and multi-selection is active --- packages/core/src/components/Edges/EdgeWrapper.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/packages/core/src/components/Edges/EdgeWrapper.ts b/packages/core/src/components/Edges/EdgeWrapper.ts index f7c9f9c0..bbec60f7 100644 --- a/packages/core/src/components/Edges/EdgeWrapper.ts +++ b/packages/core/src/components/Edges/EdgeWrapper.ts @@ -35,6 +35,7 @@ const EdgeWrapper = defineComponent({ findEdge, findNode, isValidConnection, + multiSelectionActive, } = useVueFlow() const hooks = useEdgeHooks(props.edge, emits) @@ -259,11 +260,19 @@ const EdgeWrapper = defineComponent({ function onEdgeClick(event: MouseEvent) { const data = { event, edge } + if (props.selectable) { nodesSelectionActive.value = false - addSelectedEdges([edge]) + if (edge.selected && multiSelectionActive.value) { + removeSelectedEdges([edge]) + + edgeEl.value?.blur() + } else { + addSelectedEdges([edge]) + } } + hooks.emit.click(data) }