@6h/click-outside
Version:
25 lines • 731 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var eventNames = ['click', 'touchend'];
function default_1(el, callback) {
var isTouch = false;
function handler(ev) {
if (eventNames[1] === ev.type)
isTouch = true;
if (eventNames[0] === ev.type && isTouch)
return;
if (!el.contains(ev.target)) {
callback(ev);
}
}
eventNames.forEach(function (name) {
document.addEventListener(name, handler);
});
return function () {
eventNames.forEach(function (name) {
document.removeEventListener(name, handler);
});
};
}
exports.default = default_1;
//# sourceMappingURL=index.js.map