From c7a533bffed7bb39885cf8abdf4f9078a5ebef5d Mon Sep 17 00:00:00 2001 From: moklick Date: Mon, 16 Oct 2023 15:53:36 +0200 Subject: [PATCH] chore(svelte): fix types for event handlers --- .../components/EdgeWrapper/EdgeWrapper.svelte | 17 +++++++++++---- .../src/lib/components/Handle/Handle.svelte | 21 +++++++++++++++++-- .../components/NodeWrapper/NodeWrapper.svelte | 12 ++++++++++- .../svelte/src/lib/container/Pane/Pane.svelte | 9 +++++++- .../src/lib/container/SvelteFlow/types.ts | 21 ------------------- 5 files changed, 51 insertions(+), 29 deletions(-) diff --git a/packages/svelte/src/lib/components/EdgeWrapper/EdgeWrapper.svelte b/packages/svelte/src/lib/components/EdgeWrapper/EdgeWrapper.svelte index 7d609447..8601415b 100644 --- a/packages/svelte/src/lib/components/EdgeWrapper/EdgeWrapper.svelte +++ b/packages/svelte/src/lib/components/EdgeWrapper/EdgeWrapper.svelte @@ -6,7 +6,7 @@ import { useStore } from '$lib/store'; import BezierEdge from '$lib/components/edges/BezierEdge.svelte'; - import type { EdgeLayouted } from '$lib/types'; + import type { EdgeLayouted, Edge } from '$lib/types'; type $$Props = EdgeLayouted; @@ -39,7 +39,10 @@ export { className as class }; const { edges, edgeTypes, flowId, addSelectedEdges } = useStore(); - const dispatch = createEventDispatcher(); + const dispatch = createEventDispatcher<{ + edgeclick: { edge: Edge; event: MouseEvent | TouchEvent }; + edgecontextmenu: { edge: Edge; event: MouseEvent }; + }>(); $: edgeComponent = $edgeTypes[type!] || BezierEdge; $: markerStartUrl = markerStart ? `url(#${getMarkerId(markerStart, $flowId)})` : undefined; @@ -51,12 +54,18 @@ } const edge = $edges.find((e) => e.id === id); - dispatch('edgeclick', { event, edge }); + + if (edge) { + dispatch('edgeclick', { event, edge }); + } } function onContextMenu(event: MouseEvent) { const edge = $edges.find((e) => e.id === id); - dispatch('edgecontextmenu', { event, edge }); + + if (edge) { + dispatch('edgecontextmenu', { event, edge }); + } } diff --git a/packages/svelte/src/lib/components/Handle/Handle.svelte b/packages/svelte/src/lib/components/Handle/Handle.svelte index 58d5ad02..655bcc6b 100644 --- a/packages/svelte/src/lib/components/Handle/Handle.svelte +++ b/packages/svelte/src/lib/components/Handle/Handle.svelte @@ -1,7 +1,13 @@