'use client';
import { Button } from '@/ui/Button';
import { Card } from '@/ui/Card';
import { Icon } from '@/ui/Icon';
import { Stack } from '@/ui/Stack';
import { Text } from '@/ui/Text';
import { Clock, MessageSquare, ShieldAlert } from 'lucide-react';
interface Protest {
id: string;
raceName: string;
protestingDriver: string;
accusedDriver: string;
description: string;
formattedSubmittedAt: string;
status: 'pending' | 'under_review' | 'resolved' | 'rejected';
}
interface StewardingQueuePanelProps {
protests: Protest[];
onReview: (id: string) => void;
}
export function StewardingQueuePanel({ protests, onReview }: StewardingQueuePanelProps) {
return (
STEWARDING QUEUE
{protests.filter(p => p.status === 'pending').length} Pending
{protests.length === 0 ? (
No active protests in the queue.
) : (
protests.map((protest) => (
{protest.raceName.toUpperCase()}
{null}
{protest.formattedSubmittedAt}
{protest.protestingDriver}
VS
{protest.accusedDriver}
“{protest.description}”
))
)}
);
}
function StatusIndicator({ status }: { status: Protest['status'] }) {
const colors = {
pending: 'bg-warning-amber',
under_review: 'bg-primary-blue',
resolved: 'bg-performance-green',
rejected: 'bg-gray-500',
};
return (
{null}
);
}