From d80d748bd0322e0829a2ee6018015586ed12f726 Mon Sep 17 00:00:00 2001 From: Inqnuam <69360379+Inqnuam@users.noreply.github.com> Date: Thu, 6 Jan 2022 11:24:40 +0100 Subject: [PATCH 1/2] -Added hideOnOutClick --- src/Popover.d.ts | 1 + src/Popover.svelte | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/src/Popover.d.ts b/src/Popover.d.ts index 962d10c0..2aeb3583 100644 --- a/src/Popover.d.ts +++ b/src/Popover.d.ts @@ -10,6 +10,7 @@ export interface PopoverProps container?: ContainerType; dismissible?: boolean; isOpen?: boolean; + hideOnOutClick: boolean; placement?: PopoverPlacement; target: string; title?: string; diff --git a/src/Popover.svelte b/src/Popover.svelte index dc1a5b29..0836ad8f 100644 --- a/src/Popover.svelte +++ b/src/Popover.svelte @@ -12,6 +12,7 @@ export let container = undefined; export let dismissible = false; export let isOpen = false; + export let hideOnOutClick = false; export let placement = 'top'; export let target = ''; export let title = ''; @@ -109,9 +110,14 @@ isOpen ? 'show' : false ); + const handleClick = (event) => { + if (isOpen && hideOnOutClick && !popoverEl.contains(event.target)) + isOpen = false; + }; $: outer = container === 'inline' ? InlineContainer : Portal; + {#if isOpen}
Date: Thu, 6 Jan 2022 11:39:02 +0100 Subject: [PATCH 2/2] hideOnOutClick as optional --- src/Popover.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Popover.d.ts b/src/Popover.d.ts index 2aeb3583..ba717132 100644 --- a/src/Popover.d.ts +++ b/src/Popover.d.ts @@ -10,7 +10,7 @@ export interface PopoverProps container?: ContainerType; dismissible?: boolean; isOpen?: boolean; - hideOnOutClick: boolean; + hideOnOutClick?: boolean; placement?: PopoverPlacement; target: string; title?: string;