import AuthenticatedLayout from '@/Layouts/AuthenticatedLayout';
import { Head, Link, router } from '@inertiajs/react';
import { Badge } from '@/Components/ui/badge';
import { formatDate } from '@/lib/utils';
import { Trash2, AlertTriangle } from 'lucide-react';

export default function RemindersIndex({ reminders, overdue }: any) {
    return (
        <AuthenticatedLayout header="Reminders">
            <Head title="Reminders" />
            <div className="space-y-4">
                {overdue > 0 && (
                    <div className="flex items-center gap-3 bg-orange-50 border border-orange-200 rounded-lg px-4 py-3 text-orange-800 text-sm">
                        <AlertTriangle className="w-4 h-4 flex-shrink-0"/>{overdue} reminder{overdue>1?'s':''} overdue — check the list below.
                    </div>
                )}
                <div className="bg-white rounded-lg border border-border shadow-sm overflow-hidden">
                    <table className="w-full text-sm">
                        <thead className="bg-muted/50 border-b"><tr><th className="text-left px-4 py-3 font-medium">Reminder Date</th><th className="text-left px-4 py-3 font-medium">PO #</th><th className="text-left px-4 py-3 font-medium hidden md:table-cell">Supplier</th><th className="text-left px-4 py-3 font-medium">Message</th><th className="text-left px-4 py-3 font-medium">Status</th><th className="w-10 px-4 py-3"></th></tr></thead>
                        <tbody className="divide-y">{reminders.data.map((r:any)=>{
                            const isOverdue = r.status==='pending' && new Date(r.reminder_date)<new Date();
                            return (
                                <tr key={r.id} className={`hover:bg-muted/30 ${isOverdue?'bg-orange-50/50':''}`}>
                                    <td className="px-4 py-3 font-medium">{formatDate(r.reminder_date)}{isOverdue&&<span className="ml-2 text-xs text-orange-600">Overdue</span>}</td>
                                    <td className="px-4 py-3"><Link href={`/purchase-orders/${r.purchase_order?.id}`} className="hover:underline">{r.purchase_order?.po_number??'—'}</Link></td>
                                    <td className="px-4 py-3 hidden md:table-cell text-muted-foreground">{r.purchase_order?.supplier?.name??'—'}</td>
                                    <td className="px-4 py-3 text-muted-foreground max-w-xs truncate">{r.message??'—'}</td>
                                    <td className="px-4 py-3"><Badge status={r.status}/></td>
                                    <td className="px-4 py-3"><button onClick={()=>{if(confirm('Delete?'))router.delete(`/reminders/${r.id}`)}} className="text-muted-foreground hover:text-destructive"><Trash2 className="w-4 h-4"/></button></td>
                                </tr>
                            );
                        })}</tbody>
                    </table>
                    {reminders.data.length===0&&<p className="text-center py-12 text-muted-foreground">No pending reminders.</p>}
                </div>
            </div>
        </AuthenticatedLayout>
    );
}
