"use client"; import { BadgeCheck, LogOut } from "lucide-react"; import { useRouter } from "next/navigation"; import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar"; import { Button } from "@/components/ui/button"; import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { resetUser, trackLogout } from "@/lib/posthog/events"; export function UserDropdown({ user, }: { user: { name: string; email: string; avatar: string; }; }) { const router = useRouter(); const handleLogout = () => { try { // Track logout event and reset PostHog identity trackLogout(); resetUser(); if (typeof window !== "undefined") { localStorage.removeItem("surfsense_bearer_token"); window.location.href = "/"; } } catch (error) { console.error("Error during logout:", error); // Optionally, provide user feedback if (typeof window !== "undefined") { alert("Logout failed. Please try again."); window.location.href = "/"; } } }; return (

{user.name}

{user.email}

router.push(`/dashboard/api-key`)} className="text-xs md:text-sm" > API Key Log out
); }