feat(client): user info

Signed-off-by: Noa Virellia <noa@requiem.garden>
This commit is contained in:
2025-12-25 02:50:23 +08:00
committed by Asai Neko
parent 9ac598cd98
commit be3d778420
5 changed files with 37 additions and 18 deletions

View File

@@ -22,17 +22,11 @@ import {
SidebarMenuItem,
useSidebar,
} from '@/components/ui/sidebar';
import { useUserInfo } from '@/hooks/data/useUserInfo';
export function NavUser({
user,
}: {
user: {
name: string;
email: string;
avatar: string;
};
}) {
export function NavUser() {
const { isMobile } = useSidebar();
const { data: user } = useUserInfo();
return (
<SidebarMenu>
@@ -44,11 +38,11 @@ export function NavUser({
className="data-[state=open]:bg-sidebar-accent data-[state=open]:text-sidebar-accent-foreground"
>
<Avatar className="h-8 w-8 rounded-lg grayscale">
<AvatarImage src={user.avatar} alt={user.name} />
<AvatarImage src={user.avatar} alt={user.nickname} />
<AvatarFallback className="rounded-lg">CN</AvatarFallback>
</Avatar>
<div className="grid flex-1 text-left text-sm leading-tight">
<span className="truncate font-medium">{user.name}</span>
<span className="truncate font-medium">{user.nickname}</span>
<span className="text-muted-foreground truncate text-xs">
{user.email}
</span>
@@ -65,11 +59,11 @@ export function NavUser({
<DropdownMenuLabel className="p-0 font-normal">
<div className="flex items-center gap-2 px-1 py-1.5 text-left text-sm">
<Avatar className="h-8 w-8 rounded-lg">
<AvatarImage src={user.avatar} alt={user.name} />
<AvatarImage src={user.avatar} alt={user.nickname} />
<AvatarFallback className="rounded-lg">CN</AvatarFallback>
</Avatar>
<div className="grid flex-1 text-left text-sm leading-tight">
<span className="truncate font-medium">{user.name}</span>
<span className="truncate font-medium">{user.nickname}</span>
<span className="text-muted-foreground truncate text-xs">
{user.email}
</span>