"use client"; import Link from "next/link"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { AlertCircle, Clock, FileText, MessageSquare } from "lucide-react"; import { formatDate } from "@/lib/formatting"; // Mock data - in real app this would come from API const mockTasks = [ { id: "1", type: "clarification" as const, title: "Missing P60 for John Smith", description: "Employment income evidence required for SA102", clientId: "client-1", clientName: "John Smith", taxYear: "2023-24", priority: "high" as const, dueDate: "2024-01-15", }, { id: "2", type: "review_request" as const, title: "Review SA103 calculations", description: "Self-employment profit calculation needs approval", clientId: "client-2", clientName: "Sarah Johnson", taxYear: "2023-24", priority: "medium" as const, dueDate: "2024-01-20", }, { id: "3", type: "missing_evidence" as const, title: "Bank statements required", description: "Property income verification needed", clientId: "client-3", clientName: "Michael Brown", taxYear: "2023-24", priority: "urgent" as const, dueDate: "2024-01-12", }, ]; const taskIcons = { clarification: MessageSquare, missing_evidence: FileText, review_request: Clock, calculation_error: AlertCircle, }; const priorityColors = { low: "bg-gray-100 text-gray-800", medium: "bg-blue-100 text-blue-800", high: "bg-orange-100 text-orange-800", urgent: "bg-red-100 text-red-800", }; export function TasksList(): JSX.Element { return ( Pending Tasks {mockTasks.length}
{mockTasks.map((task) => { const Icon = taskIcons[task.type]; return (

{task.title}

{task.priority}

{task.description}

{task.clientName} • {task.taxYear} Due {formatDate(task.dueDate, { format: "short" })}
); })} {mockTasks.length === 0 && (

No pending tasks

All caught up!

)}
{mockTasks.length > 0 && (
)}
); }