// File: components/layout/user-nav.tsx "use client"; import { Avatar, AvatarFallback, AvatarImage, } from "@/components/ui/avatar"; import { Button } from "@/components/ui/button"; import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { signOut, useSession } from "next-auth/react"; import { useRouter } from "next/navigation"; export function UserNav() { const { data: session } = useSession(); const router = useRouter(); // Helper function to get initials from name const getInitials = (name: string) => { return name ?.split(" ") .map((n) => n[0]) .join("") .toUpperCase() .substring(0, 2) || "US"; }; const userName = session?.user?.name || "User"; const userEmail = session?.user?.email || "user@example.com"; // ใช้ role หรือ organization หากมีใน session (ต้องแก้ type ใน next-auth.d.ts แล้ว) const userRole = session?.user?.role || "Viewer"; const handleLogout = async () => { await signOut({ redirect: false }); router.push("/login"); }; return (

{userName}

{userEmail}

{userRole}

router.push('/profile')}> Profile ⇧⌘P router.push('/settings')}> Settings ⌘S Log out ⇧⌘Q
); }