import Image from 'next/image'; import { List } from '@/components/list'; import { getStatus } from '@/util/functions'; import { useEffect, useMemo, useState } from 'react'; import { useAdmin } from '@/context/adminContext'; function TeamViewerItem({ team }) { const { gameState } = useAdmin(); const [dateNow, setDateNow] = useState(0); const status = getStatus(team, gameState); const NO_VALUE = "XX"; useEffect(() => { const interval = setInterval(() => setDateNow(Date.now()), 1000); return () => clearInterval(interval); }, []); return (
0 ? "green" : "red"}.png`} alt="icon" className="w-4 h-4" /> = 20 ? "green" : "red"}.png`} alt="icon" className="w-4 h-4" /> icon

{team.name ?? NO_VALUE}

{status.label}

); } export default function TeamViewer({selectedTeamId, onSelected}) { const { teams } = useAdmin(); // Uncaptured teams first const sortedTeams = useMemo(() => { return [...teams].sort((a,b) => { if (a.captured === b.captured) return 0; return a.captured ? 1 : -1; }); }, [teams]); return ( {(team) => ( )} ); }