UNPKG

@redocly/theme

Version:

Shared UI components lib

21 lines 780 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useOutsideClick = useOutsideClick; const react_1 = require("react"); function useOutsideClick(ref, handler) { (0, react_1.useEffect)(() => { const listener = (event) => { if (!handler || !ref.current || ref.current.contains(event.target)) { return; } handler(event); }; document.addEventListener('mousedown', listener); document.addEventListener('touchstart', listener); return () => { document.removeEventListener('mousedown', listener); document.removeEventListener('touchstart', listener); }; }, [ref, handler]); } //# sourceMappingURL=use-outside-click.js.map