UNPKG

@rkosafo/cai.components

Version:

This package is under development and not ready for public use.

15 lines (14 loc) 449 B
export function clickOutsideAction(node, callback) { const handleClick = (event) => { if (event.target !== null && !node.contains(event.target)) { node.dispatchEvent(new CustomEvent("clickoutside")); callback?.(); } }; document.addEventListener("click", handleClick, true); return { destroy() { document.removeEventListener("click", handleClick, true); }, }; }