svelte-reactions
Version:
Easy to use emoji reactions for your app.
15 lines (14 loc) • 456 B
JavaScript
const onClickOutside = (node) => {
const handleClick = (event) => {
if (node && !node.contains(event.target) && !event.defaultPrevented) {
node.dispatchEvent(new CustomEvent('clickOutside'));
}
};
document.addEventListener('click', handleClick, true);
return {
destroy() {
document.removeEventListener('click', handleClick, true);
}
};
};
export { onClickOutside };