UNPKG

use-click-away

Version:

React hook that triggers a callback when user clicks outside the element.

24 lines (23 loc) 651 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _react = require("react"); var EVENT = 'mousedown'; var useClickAway = function useClickAway(ref, callback) { (0, _react.useEffect)(function () { var listener = function listener(event) { if (!ref || !ref.current || ref.current.contains(event.target)) { return; } callback(event); }; document.addEventListener(EVENT, listener); return function () { document.removeEventListener(EVENT, listener); }; }, [ref, callback]); }; var _default = useClickAway; exports["default"] = _default;