'use client'
import { trpc } from '@/lib/trpc/client'
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'
import { Badge } from '@/components/ui/badge'
import { Button } from '@/components/ui/button'
import { Skeleton } from '@/components/ui/skeleton'
import { FilePreview } from '@/components/shared/file-viewer'
import { FileText, Download, ShieldAlert } from 'lucide-react'
export default function FinalsDocumentsPage() {
const { data: programId, isLoading: programLoading } =
trpc.competition.getActiveProgramId.useQuery()
const { data, isLoading, error } = trpc.finalist.listReviewDocuments.useQuery(
{ programId: programId! },
{ enabled: !!programId, retry: false },
)
if (error?.data?.code === 'FORBIDDEN') {
return (
No access
This review is for the Grand-Final jury and program admins.
No active program
Finalist documents will appear here once a program is active.
{data.submittedCount} of {data.totalCount} teams complete {data.round.deadline ? ` · due ${fmt.format(new Date(data.round.deadline))}` : ''}
Not yet uploaded
)}