Files
AnimeTV-Frontend/shared/widgets/navbar/components/UserProfile.tsx
2026-01-21 09:48:12 +07:00

86 lines
2.3 KiB
TypeScript

import { useAuth } from "@/shared/contexts/AuthContext";
import { Avatar, AvatarImage } from "@/shared/libs/shadcn/ui/avatar";
import {
DropdownMenu,
DropdownMenuContent,
DropdownMenuGroup,
DropdownMenuItem,
DropdownMenuLabel,
DropdownMenuSeparator,
DropdownMenuTrigger,
} from "@/shared/libs/shadcn/ui/dropdown-menu";
import {
Bookmark,
CircleUserRound,
ClockFading,
LifeBuoy,
LogOut,
MessagesSquare,
Settings,
Webhook,
} from "lucide-react";
const UserProfile = () => {
const { session } = useAuth();
return (
<div className="h-full flex items-center">
<DropdownMenu>
<DropdownMenuTrigger asChild>
<Avatar size="lg" className="cursor-pointer">
<AvatarImage
className="rounded-md"
src={session?.user?.avatar}
alt={session?.user?.name}
/>
</Avatar>
</DropdownMenuTrigger>
<DropdownMenuContent align="end" className="w-38">
<DropdownMenuGroup>
<DropdownMenuLabel>Account</DropdownMenuLabel>
<DropdownMenuItem>
<CircleUserRound />
My Profile
</DropdownMenuItem>
<DropdownMenuItem>
<ClockFading />
Activity
</DropdownMenuItem>
<DropdownMenuItem>
<Bookmark />
Bookmark
</DropdownMenuItem>
<DropdownMenuItem>
<Settings />
Settings
</DropdownMenuItem>
</DropdownMenuGroup>
<DropdownMenuGroup>
<DropdownMenuSeparator />
<DropdownMenuItem>
<MessagesSquare />
Forum
</DropdownMenuItem>
<DropdownMenuItem>
<LifeBuoy />
Help
</DropdownMenuItem>
<DropdownMenuItem>
<Webhook />
API
</DropdownMenuItem>
</DropdownMenuGroup>
<DropdownMenuGroup>
<DropdownMenuSeparator />
<DropdownMenuItem variant="destructive">
<LogOut />
Log Out
</DropdownMenuItem>
</DropdownMenuGroup>
</DropdownMenuContent>
</DropdownMenu>
</div>
);
};
export default UserProfile;