'use client'; import { routes } from '@/lib/routing/RouteConfig'; import { Card } from '@/ui/Card'; import { Heading } from '@/ui/Heading'; import { Icon } from '@/ui/Icon'; import { Link } from '@/ui/Link'; import { Stack } from '@/ui/Stack'; import { Text } from '@/ui/Text'; import { Badge } from '@/ui/Badge'; import { ArrowRight, Car, ChevronRight, LucideIcon, Trophy, Zap } from 'lucide-react'; interface RaceCardProps { track: string; car: string; scheduledAt: string; scheduledAtLabel: string; timeLabel: string; status: string; statusLabel: string; statusVariant: 'primary' | 'success' | 'warning' | 'critical' | 'default' | 'secondary' | 'info' | 'danger'; leagueName: string; leagueId?: string; strengthOfField?: number | null; onClick?: () => void; } export function RaceCard({ track, car, scheduledAt, scheduledAtLabel, timeLabel, status, statusLabel, statusVariant, leagueName, leagueId, strengthOfField, onClick, }: RaceCardProps) { return ( {/* Time Column */} {timeLabel} {status === 'running' ? 'LIVE' : scheduledAtLabel} {/* Main Content */} {track} {car} {strengthOfField && ( SOF {strengthOfField} )} {/* Status Badge */} {statusLabel} {/* League Link */} e.stopPropagation()} > {leagueName} {/* Arrow */} ); }