diff --git a/src/Popover.d.ts b/src/Popover.d.ts
index 962d10c0..ba717132 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}