import { ActorAvatar } from "./ActorAvatar.tsx"; import { Text } from "./Text.tsx"; import { cn } from "../../utils/cn.ts"; import type { NetworkSlicesWaitlistDefsRequestView } from "../../client.ts"; interface AvatarStackProps { requests: NetworkSlicesWaitlistDefsRequestView[]; maxDisplay?: number; size?: number; className?: string; } export function AvatarStack({ requests, maxDisplay = 20, size = 24, className, }: AvatarStackProps) { const displayedRequests = requests.slice(0, maxDisplay); const remainingCount = requests.length - maxDisplay; const overlapClass = size === 32 ? "-ml-2.5" : "-ml-2"; return (
{displayedRequests.map((request, index) => (
0 && overlapClass )} >
))} {remainingCount > 0 && (
+{remainingCount}
)}
); }