feat: add /friends page and /settings/friends top-friends management
Some checks failed
lint / lint (push) Failing after 8m39s
test / unit (push) Successful in 16m39s

This commit is contained in:
2026-05-28 04:22:26 +02:00
parent e406464f9f
commit 43e36c743b
7 changed files with 388 additions and 0 deletions

View File

@@ -0,0 +1,39 @@
import Link from "next/link";
import { User } from "@/lib/api";
import { UserAvatar } from "./user-avatar";
interface TopFriendsStripProps {
topFriends: User[];
}
export function TopFriendsStrip({ topFriends }: TopFriendsStripProps) {
return (
<div className="flex items-center gap-3 p-4 rounded-lg bg-accent/30">
<div className="flex-1 flex items-center gap-2 flex-wrap">
{topFriends.length === 0 ? (
<p className="text-sm text-muted-foreground">No top friends yet.</p>
) : (
topFriends.map((f) => (
<Link
key={f.id}
href={`/users/${f.username}`}
title={f.displayName ?? f.username}
>
<UserAvatar
src={f.avatarUrl}
alt={f.displayName ?? f.username}
className="h-8 w-8"
/>
</Link>
))
)}
</div>
<Link
href="/settings/friends"
className="text-sm text-muted-foreground hover:underline shrink-0"
>
Edit
</Link>
</div>
);
}