feat(modal): add preventCloseOnClickOutside prop

Closes #266
This commit is contained in:
Eric Liu 2020-09-19 09:37:36 -07:00
commit e75be23a49
4 changed files with 22 additions and 2 deletions

View file

@ -21,6 +21,10 @@ export const Default = () => ({
"[data-modal-primary-focus]"
),
size: select("Size (size)", sizes, "sm"),
preventCloseOnClickOutside: boolean(
"Prevent the modal from closing when clicking outside (preventCloseOnClickOutside)",
false
),
},
modalHeader: {
label: text("Optional Label (label in <ModalHeader>)", "Optional Label"),

View file

@ -17,6 +17,12 @@
*/
export let danger = false;
/**
* Set to `true` to prevent the modal from closing when clicking outside
* @type {boolean} [preventCloseOnClickOutside=false]
*/
export let preventCloseOnClickOutside = false;
/**
* Specify a class for the inner modal
* @type {string} [containerClass=""]
@ -104,7 +110,7 @@
{...$$restProps}
on:click
on:click="{() => {
if (!didClickInnerModal) open = false;
if (!didClickInnerModal && !preventCloseOnClickOutside) open = false;
didClickInnerModal = false;
}}"
on:mouseover