import { useParams, Link, useNavigate } from "react-router-dom"; import { Button } from "@/components/ui/button"; import { ArrowLeft } from "lucide-react"; import ReactMarkdown from "react-markdown"; import { mockTasks } from "@/shared/mocks/mocks"; import { useQuery } from "@tanstack/react-query"; import { getCompetition } from "@/shared/api/competitions"; import { Loading } from "@/components/ui/Loading"; const CompetitionPage = () => { const { id } = useParams<{ id: string }>(); const navigate = useNavigate(); const { data: competition, isLoading } = useQuery({ queryKey: ["competition", id], queryFn: async () => getCompetition(id || ""), }); if (isLoading) { return ; } if (!id || !competition) { return <>; } const handleContinue = () => { if (competition?.id) { if (mockTasks && mockTasks.length > 0) { const firstTaskId = mockTasks[0].id; navigate(`/competition/${competition.id}/tasks/${firstTaskId}`); } else { navigate(`/competition/${competition.id}/tasks`); } } }; return (
Назад к соревнованиям
{competition.image_url && (
{competition.title}
)}

{competition.title}

{competition.description || ""}
); }; export default CompetitionPage;