"use client"; import { Badge } from "@/components/ui/badge"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import type { CardDetailData } from "@/lib/relatorios/cartoes-report"; import { title_font } from "@/public/fonts/font_index"; import { RiBankCard2Fill } from "@remixicon/react"; type CardInvoiceStatusProps = { data: CardDetailData["invoiceStatus"]; }; const monthLabels = [ "Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez", ]; export function CardInvoiceStatus({ data }: CardInvoiceStatusProps) { const formatCurrency = (value: number) => { return new Intl.NumberFormat("pt-BR", { style: "currency", currency: "BRL", minimumFractionDigits: 0, maximumFractionDigits: 0, }).format(value); }; const getStatusBadge = (status: string | null) => { switch (status) { case "pago": return ( Pago ); case "pendente": return ( Pendente ); case "atrasado": return ( Atrasado ); default: return ( ); } }; const formatPeriod = (period: string) => { const [year, month] = period.split("-"); return `${monthLabels[parseInt(month, 10) - 1]}/${year.slice(2)}`; }; return ( Status das Faturas
{[...data].reverse().map((invoice) => (
{formatPeriod(invoice.period)} {getStatusBadge(invoice.status)}
{formatCurrency(invoice.amount)}
))}
); }