import type { QueueItem } from '../lib/api' import { relativeTime, absoluteTime } from '../lib/time' const statusColors: Record = { pending_verification: 'text-yellow-600', ready_for_approval: 'text-blue-600 dark:text-blue-400', returned: 'text-red-600', approved: 'text-green-600', redirected: 'text-orange-600', } function QueueItemCard({ item, onReview }: { item: QueueItem; onReview: () => void }) { return (
{item.plan_title || `Plan #${item.plan_id}`} {item.status.replace(/_/g, ' ')}
{item.task_title && (
→ {item.task_title}
)} {item.verification_notes && (
{item.verification_notes}
)}
submitted {relativeTime(item.submitted_at)} {item.status === 'ready_for_approval' && ( )}
) } export function DirectorQueue({ items, onReview, }: { items: QueueItem[] onReview: (item: QueueItem) => void }) { return (

Director Queue

{items.length} {items.length === 1 ? 'item' : 'items'}
{items.length === 0 ? (

No items awaiting review

) : (
{items.map((item) => ( onReview(item)} /> ))}
)}
) }