import { cn } from "@/lib/utils"; import { Check, Minus, X, Circle } from "lucide-react"; type ProblemStatus = "solved" | "partial" | "attempted" | "not_attempted"; interface ProblemStatusBadgeProps { status: ProblemStatus; score?: number; maxScore?: number; className?: string; } const statusConfig: Record< ProblemStatus, { icon: typeof Check; className: string; bgClassName: string; } > = { solved: { icon: Check, className: "text-success", bgClassName: "bg-success/10", }, partial: { icon: Minus, className: "text-warning", bgClassName: "bg-warning/10", }, attempted: { icon: X, className: "text-destructive", bgClassName: "bg-destructive/10", }, not_attempted: { icon: Circle, className: "text-muted-foreground", bgClassName: "bg-muted", }, }; export function ProblemStatusBadge({ status, score, maxScore, className, }: ProblemStatusBadgeProps) { const config = statusConfig[status]; const Icon = config.icon; return (