@primer/react-brand
Version:
Primer Brand is a GitHub's design system for creating React-based marketing websites and digital experiences.
20 lines (19 loc) • 676 B
JavaScript
import { useEffect as e } from "react";
//#region src/hooks/useOnClickOutside.ts
function t(t, n, r) {
e(() => {
let e = (e) => {
!t.current || t.current.contains(e.target) || r && r.current && r.current.contains(e.target) || n && n(e);
};
return document.addEventListener("mousedown", e), document.addEventListener("touchstart", e, { passive: !0 }), document.addEventListener("focusin", e), () => {
document.removeEventListener("mousedown", e), document.removeEventListener("touchstart", e), document.removeEventListener("focusin", e);
};
}, [
t,
n,
r
]);
}
//#endregion
export { t as useOnClickOutside };
//# sourceMappingURL=useOnClickOutside.js.map