'use client';
import { useState, useEffect, useCallback } from 'react';
import { useAuth } from '@/lib/auth';
import { useTheme } from '@/components/ThemeProvider';
import { useTranslation } from '@/lib/i18n';
import Link from 'next/link';
import { useRouter } from 'next/navigation';
import IconButton from './IconButton';
export default function CompactHeader() {
const { user, logout, token } = useAuth();
const { theme, toggleTheme } = useTheme();
const { t } = useTranslation();
const router = useRouter();
const [drawerOpen, setDrawerOpen] = useState(false);
function handleLogout() {
logout();
router.push('/login');
setDrawerOpen(false);
}
const closeDrawer = useCallback(() => setDrawerOpen(false), []);
const openDrawer = useCallback(() => setDrawerOpen(true), []);
useEffect(() => {
if (!drawerOpen) return;
function handleKey(e: KeyboardEvent) {
if (e.key === 'Escape') closeDrawer();
}
document.addEventListener('keydown', handleKey);
document.body.style.overflow = 'hidden';
return () => {
document.removeEventListener('keydown', handleKey);
document.body.style.overflow = '';
};
}, [drawerOpen, closeDrawer]);
return (
<>
{user.name || t('settings.user')}
{user.email}