import Link from 'next/link'; import { ChevronRight, Car, Zap, Trophy, ArrowRight } from 'lucide-react'; import { formatTime, getRelativeTime } from '@/lib/utilities/time'; import { raceStatusConfig } from '@/lib/utilities/raceStatus'; interface RaceCardProps { race: { id: string; track: string; car: string; scheduledAt: string; status: string; leagueId?: string; leagueName: string; strengthOfField?: number | null; }; onClick?: () => void; className?: string; } export function RaceCard({ race, onClick, className }: RaceCardProps) { const config = raceStatusConfig[race.status as keyof typeof raceStatusConfig]; return (
{/* Live indicator */} {race.status === 'running' && (
)}
{/* Time Column */}

{formatTime(race.scheduledAt)}

{race.status === 'running' ? 'LIVE' : getRelativeTime(race.scheduledAt)}

{/* Divider */}
{/* Main Content */}

{race.track}

{race.car} {race.strengthOfField && ( SOF {race.strengthOfField} )}
{/* Status Badge */}
{config.label}
{/* League Link */}
e.stopPropagation()} className="inline-flex items-center gap-2 text-sm text-primary-blue hover:underline" > {race.leagueName}
{/* Arrow */}
); }