import { cn } from '@/lib/utils';
import type { TenantStatus } from '@/types/admin';

const statusColors: Record<TenantStatus, string> = {
    active: 'bg-emerald-100 text-emerald-700 border border-emerald-200 dark:bg-emerald-900/30 dark:text-emerald-400 dark:border-emerald-800/30',
    trial: 'bg-sky-100 text-sky-700 border border-sky-200 dark:bg-sky-900/30 dark:text-sky-400 dark:border-sky-800/30',
    suspended:
        'bg-red-100 text-red-700 border border-red-200 dark:bg-red-900/30 dark:text-red-400 dark:border-red-800/30',
    canceled: 'bg-muted text-muted-foreground border border-border',
    pending:
        'bg-amber-100 text-amber-700 border border-amber-200 dark:bg-amber-900/30 dark:text-amber-300 dark:border-amber-800/30',
};

export default function TenantStatusBadge({
    status,
}: {
    status: TenantStatus | string;
}) {
    return (
        <span
            className={cn(
                'rounded-full px-2.5 py-0.5 text-[11px] font-semibold capitalize',
                statusColors[status as TenantStatus] ??
                    'bg-muted text-muted-foreground border-border border',
            )}
        >
            {status}
        </span>
    );
}
