UNPKG

respond-framework

Version:
20 lines (19 loc) 573 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = require("react"); const useClickOut = (set, open) => { const ref = (0, _react.useRef)(); const hide = (0, _react.useCallback)(e => { if (!open || ref.current?.contains(e.target)) return; set(false); }, [set, open]); (0, _react.useEffect)(() => { window.addEventListener?.('mousedown', hide); return () => window.removeEventListener?.('mousedown', hide); }, [hide]); return ref; }; var _default = exports.default = useClickOut;