MCPcopy Create free account
hub / github.com/COW-dev/ddingdong-fe / useClickOutside

Function useClickOutside

packages/shared/ui/Header/useClickOutside.ts:9–19  ·  view source on GitHub ↗
({ ref, handler }: UseClickOutsideProps<T>)

Source from the content-addressed store, hash-verified

7};
8
9export function useClickOutside<T extends HTMLElement>({ ref, handler }: UseClickOutsideProps<T>) {
10 useEffect(() => {
11 const listener = (event: MouseEvent) => {
12 if (ref.current && !ref.current.contains(event.target as Node)) {
13 handler();
14 }
15 };
16 document.addEventListener('mousedown', listener);
17 return () => document.removeEventListener('mousedown', listener);
18 }, [ref, handler]);
19}

Callers 1

MenuFunction · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected