'use client'; import Link from 'next/link'; import { BasedAvatar, Button, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, } from '@/components/ui'; import { useAuth } from '@/lib/hooks/context'; import { useRouter } from 'next/navigation'; import { signOut } from '@/lib/queries'; import { useSupabaseClient } from '@/utils/supabase'; export const AvatarDropdown = () => { const { profile, avatar, refreshUser } = useAuth(); const router = useRouter(); const client = useSupabaseClient(); const handleSignOut = async () => { try { if (!client) throw new Error('Supabase client not found!'); const { error } = await signOut(client); if (error) throw new Error(error.message); await refreshUser(); router.push('/'); } catch (error) { console.error(error); } }; return ( {(profile?.full_name ?? profile?.email) && ( <> {profile.full_name?.trim() ?? profile.email?.trim()} )} Edit Profile ); };