import { useNavigate } from 'react-router-dom' import LicenseStatus from './LicenseStatus' function fmtDate(dt) { if (!dt) return '—' return new Date(dt).toLocaleDateString('en-GB', { day: '2-digit', month: 'short', year: 'numeric' }) } function fmtAgo(dt) { if (!dt) return 'Never' const diff = (Date.now() - new Date(dt)) / 1000 if (diff < 60) return 'Just now' if (diff < 3600) return `${Math.floor(diff / 60)}m ago` if (diff < 86400) return `${Math.floor(diff / 3600)}h ago` return `${Math.floor(diff / 86400)}d ago` } export default function SiteCard({ site }) { const navigate = useNavigate() const expires = new Date(site.license_expires_at) const isExpired = expires < new Date() const isLocked = site.is_locked const borderColor = isLocked || isExpired ? 'border-red-800/60 hover:border-red-700' : site.last_seen_at && (Date.now() - new Date(site.last_seen_at)) / 3600000 < 12 ? 'border-emerald-800/40 hover:border-emerald-600' : 'border-yellow-800/40 hover:border-yellow-600' return (
{site.owner_name}
{fmtDate(site.license_expires_at)}
{fmtAgo(site.last_seen_at)}
Locked: {site.lock_reason}
)}