export type StatusColor = { bg: string; text: string; border: string; }; // Due status colors (for debt supplier reports) export const dueStatusColors: Record = { 'SUDAH JATUH TEMPO': { bg: '#FEE2E2', text: '#991B1B', border: '#F87171', }, // error/red 'BELUM JATUH TEMPO': { bg: '#D1FAE5', text: '#065F46', border: '#34D399', }, // success/green 'MENDEKATI JATUH TEMPO': { bg: '#FEF3C7', text: '#92400E', border: '#FBBF24', }, // warning/yellow }; // Payment status colors (for customer payment & debt supplier reports) export const paymentStatusColors: Record = { 'BELUM LUNAS': { bg: '#FEF3C7', text: '#92400E', border: '#FBBF24', }, // warning/yellow LUNAS: { bg: '#DBEAFE', text: '#1E40AF', border: '#60A5FA', }, // primary/blue 'PEMBAYARAN SEBAGIAN': { bg: '#D1FAE5', text: '#065F46', border: '#34D399' }, // success/green PEMBAYARAN: { bg: '#D1FAE5', text: '#065F46', border: '#34D399', }, // success/green }; // Fallback color for unknown statuses export const fallbackStatusColor: StatusColor = { bg: '#F3F4F6', text: '#374151', border: '#D1D5DB', }; // neutral export const getPDFBadgeStyle = ( statusText: string, type: 'due' | 'payment' = 'payment' ): StatusColor => { const normalizedStatus = statusText.toUpperCase().trim(); const colors = type === 'due' ? dueStatusColors[normalizedStatus] : paymentStatusColors[normalizedStatus]; return colors || fallbackStatusColor; };