import { Link } from "react-router"; import { Badge } from "~/components/ui/badge"; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "~/components/ui/card"; import { Trophy, Target, Flag } from "lucide-react"; interface SportSeasonCardProps { leagueId: string; sportSeasonId: string; sportName: string; seasonName: string; status: "upcoming" | "active" | "completed"; scoringPattern?: string | null; } export function SportSeasonCard({ leagueId, sportSeasonId, sportName, seasonName, status, scoringPattern, }: SportSeasonCardProps) { const getStatusBadge = () => { switch (status) { case "upcoming": return ( Upcoming ); case "active": return ( Active ); case "completed": return ( Completed ); } }; const getScoringPatternLabel = () => { if (!scoringPattern) return null; switch (scoringPattern) { case "single_elimination_playoff": return "Playoff Bracket"; case "page_playoff": return "AFL Finals"; case "season_standings": return "Season Standings"; case "qualifying_points": return "Qualifying Points"; default: return null; } }; const scoringLabel = getScoringPatternLabel(); const isPlayoffType = scoringPattern === "single_elimination_playoff" || scoringPattern === "page_playoff"; return (
{sportName} {seasonName}
{getStatusBadge()}
{scoringLabel && (
{isPlayoffType ? ( ) : ( )} {scoringLabel}
)}
); }