From 0189b20e0c2421b0347ce6b51131dbd9a0a3f0f8 Mon Sep 17 00:00:00 2001 From: OllyNicholass Date: Mon, 18 Nov 2024 23:20:18 +0000 Subject: [PATCH] refactor(#35): click anywhere handler --- src/lib/components/Dropdown.svelte | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/lib/components/Dropdown.svelte b/src/lib/components/Dropdown.svelte index c4a7655..081d552 100644 --- a/src/lib/components/Dropdown.svelte +++ b/src/lib/components/Dropdown.svelte @@ -15,9 +15,10 @@ }; onMount(() => { - const handleClickAnywhere = (event: MouseEvent) => { - if (!isOpen) return; - if (!dropdown.contains(event.target as Node) || event.target instanceof HTMLAnchorElement) { + const handleClickAnywhere = ({ target }: MouseEvent) => { + if (!isOpen || !target) return; + const clickTarget = target as HTMLElement; + if (!dropdown.contains(clickTarget) || clickTarget.closest('a')) { isOpen = false; } };