UNPKG

@mantine/hooks

Version:

A collection of 50+ hooks for state and UI management

25 lines (22 loc) 775 B
'use client'; import { useState, useRef, useCallback, useEffect } from 'react'; function useHover() { const [hovered, setHovered] = useState(false); const ref = useRef(null); const onMouseEnter = useCallback(() => setHovered(true), []); const onMouseLeave = useCallback(() => setHovered(false), []); useEffect(() => { if (ref.current) { ref.current.addEventListener("mouseenter", onMouseEnter); ref.current.addEventListener("mouseleave", onMouseLeave); return () => { ref.current?.removeEventListener("mouseenter", onMouseEnter); ref.current?.removeEventListener("mouseleave", onMouseLeave); }; } return void 0; }, []); return { ref, hovered }; } export { useHover }; //# sourceMappingURL=use-hover.mjs.map