message: feat: clickoutside
diff: import { useEffect, useCallback, useRef } from 'react'
  -const useClickOutside = ({ onClickOutside, dom, eventName = 'click' }) => {
  +const useClickOutside = (onClickOutside, dom, eventName = 'click') => {
  const element = useRef('')
  const handleOutside = useCallback(
  e => {
  const targetElement = typeof dom === 'function' ? dom() : dom
  const el = targetElement || element.current
  - if (el.current) {
  - !el.current.contains(e.target) && onClickOutside(e)
  + if (el) {
  + !el.contains(e.target) && onClickOutside(e)
  }
  },
  [onClickOutside, dom, element]
  @@ -17,7 +17,7 @@ const useClickOutside = ({ onClickOutside, dom, eventName = 'click' }) => {
  return () => {
  document.removeEventListener(eventName, handleOutside)
  }
  - }, [eventName, onClickOutside])
  + }, [eventName, onClickOutside, element])
  return element
  }
  export default useClickOutside
  