'use client' import { useMemo } from 'react' import Link from 'next/link' import { useRouter } from 'next/navigation' import { Button } from '@/components/ui/button' import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar' import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, } from '@/components/ui/dropdown-menu' import { Sheet, SheetContent, SheetTrigger } from '@/components/ui/sheet' import { Menu, LogOut, LayoutDashboard, MessageSquarePlus } from 'lucide-react' import { signOut, useSession } from 'next-auth/react' import { Routes } from '@/config/routes' export default function AppHeader() { const session = useSession() const router = useRouter() const handleLogout = () => { signOut() router.push(Routes.login) } const isAuthenticated = useMemo( () => session.status === 'authenticated' && session.data?.user, [session.status, session.data?.user] ) const AuthenticatedMenu = () => (
{session.data?.user?.name}
{session.data?.user?.email}
Dashboard Log out
) const MobileMenu = () => ( ) return (
TextBee
) }