import { cn } from "@/shared/lib/utils"; import { Card, CardContent } from "@/components/ui/card"; import { Competition, CompetitionState, CompetitionType, } from "@/shared/types/competition"; import { Clock } from "lucide-react"; interface CompetitionCardProps { competition: Competition; className?: string; } export function CompetitionCard({ competition, className, }: CompetitionCardProps) { const formatDate = (date?: Date) => { if (!date) return ""; const dateObj = typeof date === 'string' ? new Date(date) : date; return dateObj.toLocaleString('ru-RU', { day: '2-digit', month: '2-digit', year: 'numeric', hour: '2-digit', minute: '2-digit', }); }; return (
{competition.title}
{competition.type === CompetitionType.COMPETITIVE ? "Соревнование" : "Тренировка"} {competition.state != CompetitionState.NOT_STARTED && ( <> {competition.state === CompetitionState.STARTED ? "В прогрессе" : "Завершено"} )}

{competition.title}

{competition.type === CompetitionType.COMPETITIVE && (
{competition.start_date && (
Начало: {formatDate(competition.start_date)}
)} {competition.end_date && (
Конец: {formatDate(competition.end_date)}
)}
)}
); }