UNPKG

flowbite-svelte-son

Version:

Flowbite components for Svelte

16 lines (14 loc) 426 B
export const clickOutside=(node: HTMLElement, callback: () => void)=> { const handleClick = (event: MouseEvent) => { if (!event?.target) return; if (node && !node.contains(event.target as Node) && !event.defaultPrevented) { callback(); } }; document.addEventListener('click', handleClick, true); return { destroy() { document.removeEventListener('click', handleClick, true); }, }; }