From d8bae03b8f3febf0003cfd1349b9b62c33617528 Mon Sep 17 00:00:00 2001 From: bcakmakoglu <78412429+bcakmakoglu@users.noreply.github.com> Date: Sat, 28 May 2022 08:10:14 +0200 Subject: [PATCH] fix(drag): filter by nodrag class name --- packages/vue-flow/src/composables/useDrag.ts | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/vue-flow/src/composables/useDrag.ts b/packages/vue-flow/src/composables/useDrag.ts index 35c179e8..d113c262 100644 --- a/packages/vue-flow/src/composables/useDrag.ts +++ b/packages/vue-flow/src/composables/useDrag.ts @@ -135,14 +135,14 @@ function useDrag(params: UseDragParams) { }) }) .filter((event: D3DragEvent['sourceEvent']) => { - const filter = - !event.ctrlKey && !event.button && (!noDragClassName || !event.target.className.includes(noDragClassName)) - - if (handleSelector) { - return !hasSelector(event.sourceEvent.target, handleSelector, $$(el)) && filter - } - - return filter + const target = event.target as HTMLDivElement + return ( + !event.ctrlKey && + !event.button && + (!noDragClassName || + (!hasSelector(target, `.${noDragClassName}`, $$(el)) && + (!handleSelector || hasSelector(target, handleSelector, $$(el))))) + ) }) selection.call(dragHandler)