import { format } from 'date-fns';
import { ptBR } from 'date-fns/locale';

export function FormattedDate({ dateString }: { dateString: string }) {
    if (!dateString) return <span className="text-muted-foreground">—</span>;
    try {
        let date: Date;
        if (dateString.includes('/')) {
            const [datePart, timePart = '00:00:00'] = dateString.split(' ');
            const [day, month, year] = datePart.split('/');
            date = new Date(`${year}-${month.padStart(2, '0')}-${day.padStart(2, '0')}T${timePart}`);
        } else {
            date = new Date(dateString.replace(' ', 'T'));
        }
        if (isNaN(date.getTime())) return <span className="text-muted-foreground">—</span>;
        return <span>{format(date, 'dd/MM/yyyy HH:mm', { locale: ptBR })}</span>;
    } catch {
        return <span className="text-muted-foreground">—</span>;
    }
}

export const getLevel = (order: any) => order.level ?? (order as any)['notif_order.level'];