import Link from "next/link"; import ThemeSwitcher from "@/components/ThemeSwitcher"; import { Dispatch, SetStateAction, useEffect, useRef, useState } from "react"; type menuState = { menuVisible: boolean; setMenuVisible: Dispatch>; }; const HamburgerMenu = ({ menuVisible, setMenuVisible }: menuState) => { const [mouseOverMenu, setMouseOverMenu] = useState(false); const timeoutRef = useRef(); useEffect(() => { if (menuVisible && !mouseOverMenu) { menuTimeout(); } else { clearTimeout(timeoutRef.current); } }, [mouseOverMenu]); const handleMouseEnterMenu = () => { setMouseOverMenu(true); clearTimeout(timeoutRef.current); }; const handleMouseLeaveMenu = () => { setMouseOverMenu(false); clearTimeout(timeoutRef.current); }; const menuTimeout = () => { timeoutRef.current = setTimeout(() => { setMenuVisible(false); setMouseOverMenu(false); }, 2000); }; return (
  • Tournois
  • Qui Sommes-Nous
  • Contactez-Nous
); }; export default HamburgerMenu;