All files / src/hooks/common useOutsideClick.tsx

0% Statements 0/10
0% Branches 0/3
0% Functions 0/4
0% Lines 0/10

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20                                       
/* eslint-disable react-hooks/exhaustive-deps */
import { useEffect } from 'react';
 
const useOutsideClick = (ref, callback) => {
  const handleClick = event => {
    Iif (ref.current && !ref.current.contains(event.target)) {
      callback();
    }
  };
 
  useEffect(() => {
    document.addEventListener('click', handleClick);
    return () => {
      document.removeEventListener('click', handleClick);
    };
  }, [ref, callback]);
};
 
export default useOutsideClick;