'use client'; import Image from 'next/image'; import Card from '../ui/Card'; import { getImageService } from '@/lib/di-container'; interface TeamCardProps { id: string; name: string; logo?: string; memberCount: number; leagues: string[]; rating?: number | null; totalWins?: number; totalRaces?: number; performanceLevel?: 'beginner' | 'intermediate' | 'advanced' | 'pro'; onClick?: () => void; } export default function TeamCard({ id, name, logo, memberCount, leagues, rating, totalWins, totalRaces, performanceLevel, onClick, }: TeamCardProps) { const performanceBadgeColors = { beginner: 'bg-green-500/20 text-green-400', intermediate: 'bg-blue-500/20 text-blue-400', advanced: 'bg-purple-500/20 text-purple-400', pro: 'bg-red-500/20 text-red-400', }; return (
{name}

{name}

{memberCount} {memberCount === 1 ? 'member' : 'members'}

{typeof rating === 'number' && (

Team rating: {Math.round(rating)}

)}
{performanceLevel && (
{performanceLevel.charAt(0).toUpperCase() + performanceLevel.slice(1)}
)}
Rating
{typeof rating === 'number' ? Math.round(rating) : '—'}
Wins
{totalWins ?? 0}
Races
{totalRaces ?? 0}

Active in:

{leagues.slice(0, 3).map((league, idx) => ( {league} ))} {leagues.length > 3 && ( +{leagues.length - 3} more )}
); }