@kbfront/kb-ui
Version:
KB React UI Library
21 lines • 784 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useOnClickOutside = void 0;
var react_1 = require("react");
exports.useOnClickOutside = function (ref, handler) {
react_1.useEffect(function () {
var listener = function (event) {
if (!ref.current || ref.current.contains(event.target)) {
return;
}
handler(event);
};
document.addEventListener("mousedown", listener);
document.addEventListener("touchstart", listener);
return function () {
document.removeEventListener("mousedown", listener);
document.removeEventListener("touchstart", listener);
};
}, [ref, handler]);
};
//# sourceMappingURL=use-outside-click.js.map