import { Badge } from '@/components/ui/badge' import type { JournalEntry } from '@/types' const statusConfig: Record = { draft: { label: 'Utkast', variant: 'secondary' }, posted: { label: 'Bokförd', variant: 'success' }, reversed: { label: 'Omförd', variant: 'warning' }, cancelled: { label: 'Makulerad', variant: 'secondary' }, } const sourceTypeBadges: Record = { storno: { label: 'Storno', variant: 'destructive' }, correction: { label: 'Rättelse', variant: 'default' }, } export const sourceTypeLabels: Record = { manual: 'Manuell', bank_transaction: 'Banktransaktion', invoice_created: 'Faktura skapad', invoice_paid: 'Fakturabetalning', credit_note: 'Kreditfaktura', salary_payment: 'Lön', opening_balance: 'Ingående balans', year_end: 'Årsbokslut', storno: 'Storno', correction: 'Rättelse', import: 'Import', system: 'System', supplier_invoice_registered: 'Leverantörsfaktura', supplier_invoice_paid: 'Leverantörsbetalning', supplier_invoice_cash_payment: 'Kontantbetalning', currency_revaluation: 'Valutaomvärdering', } interface Props { entry: JournalEntry showStatus?: boolean } export default function JournalEntryStatusBadge({ entry, showStatus = true }: Props) { const status = statusConfig[entry.status] const sourceType = sourceTypeBadges[entry.source_type] return ( {showStatus && status && ( {status.label} )} {sourceType && ( {sourceType.label} )} ) }