@svelte-plugins/datepicker
Version:
A simple datepicker component designed for Svelte.
22 lines (18 loc) • 481 B
JavaScript
export const clickOutside = (node, config = {}) => {
const options = {
include: [],
onClickOutside: () => {},
...config
};
const detect = ({ target }) => {
if (!node.contains(target) || options.include.some((i) => target.isSameNode(i))) {
options.onClickOutside();
}
};
document.addEventListener('click', detect, { passive: true, capture: true });
return {
destroy() {
document.removeEventListener('click', detect);
}
};
};