'use client' import Link from 'next/link' import { motion } from 'motion/react' import { ClipboardList, ArrowRight } from 'lucide-react' import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from '@/components/ui/card' import { StatusBadge } from '@/components/shared/status-badge' import { ProjectLogo } from '@/components/shared/project-logo' import { getCountryName } from '@/lib/countries' import { formatDateOnly, truncate } from '@/lib/utils' type ProjectListCompactProps = { projects: Array<{ id: string title: string teamName: string | null country: string | null competitionCategory: string | null oceanIssue: string | null logoKey: string | null createdAt: Date submittedAt: Date | null status: string }> } export function ProjectListCompact({ projects }: ProjectListCompactProps) { return (
Recent Projects Latest submissions
All projects
{projects.length === 0 ? (

No projects submitted yet

) : (
{projects.map((project, idx) => (

{truncate(project.title, 50)}

{[ project.teamName, project.country ? getCountryName(project.country) : null, formatDateOnly(project.submittedAt || project.createdAt), ] .filter(Boolean) .join(' \u00b7 ')}

))}
)}
) }