'use client'; import Link from 'next/link'; import { usePathname } from 'next/navigation'; import { useState, useEffect, useRef } from 'react'; import { ThemeToggle } from './ThemeToggle'; import { useSession, signOut } from '@/lib/auth-client'; export default function Navigation() { const pathname = usePathname(); const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false); const [isUserMenuOpen, setIsUserMenuOpen] = useState(false); const { data: session } = useSession(); const userMenuRef = useRef(null); const navLinks = [ { href: '/', label: 'Domov' }, { href: '/activities', label: 'Aktivity' }, { href: '/venues', label: 'Športoviská' }, { href: '/my-activities', label: 'Moje aktivity' }, ]; const handleSignOut = async () => { await signOut(); window.location.href = '/'; }; // Close user menu when clicking outside useEffect(() => { const handleClickOutside = (event: MouseEvent) => { if (userMenuRef.current && !userMenuRef.current.contains(event.target as Node)) { setIsUserMenuOpen(false); } }; if (isUserMenuOpen) { document.addEventListener('mousedown', handleClickOutside); } return () => { document.removeEventListener('mousedown', handleClickOutside); }; }, [isUserMenuOpen]); return ( ); }