feat: enhance accessibility and testing with data-test attributes and improve error handling
Some checks failed
Workflow / ⚫️ Test (push) Has been cancelled
Workflow / ʦ TypeScript (push) Has been cancelled

This commit is contained in:
T. Zehetbauer
2026-04-01 10:46:44 +02:00
parent 3bcc5c70a3
commit abac22feb1
55 changed files with 1622 additions and 128 deletions

View File

@@ -0,0 +1,113 @@
{
"nav": {
"overview": "Finanzen",
"invoices": "Rechnungen",
"sepa": "SEPA-Einzüge",
"payments": "Zahlungen",
"newInvoice": "Neue Rechnung",
"newBatch": "Neuer Einzug"
},
"dashboard": {
"title": "Finanzen Übersicht",
"subtitle": "Rechnungen, SEPA-Einzüge und Zahlungen verwalten",
"openInvoices": "Offene Rechnungen",
"overdueInvoices": "Überfällige Rechnungen",
"totalRevenue": "Gesamteinnahmen",
"sepaBatches": "SEPA-Einzüge"
},
"invoices": {
"title": "Rechnungen",
"newInvoice": "Neue Rechnung",
"noInvoices": "Keine Rechnungen vorhanden",
"createFirst": "Erstellen Sie Ihre erste Rechnung.",
"invoiceNumber": "Rechnungsnr.",
"recipient": "Empfänger",
"issueDate": "Rechnungsdatum",
"dueDate": "Fälligkeitsdatum",
"amount": "Betrag",
"notFound": "Rechnung nicht gefunden"
},
"invoiceForm": {
"title": "Rechnungsdaten",
"invoiceNumber": "Rechnungsnummer *",
"issueDate": "Rechnungsdatum",
"dueDate": "Fälligkeitsdatum *",
"recipient": "Empfänger",
"recipientName": "Name *",
"recipientAddress": "Adresse",
"lineItems": "Positionen",
"addLineItem": "+ Position hinzufügen",
"itemDescription": "Beschreibung *",
"quantity": "Menge",
"unitPrice": "Einzelpreis (€)",
"removeItem": "Position entfernen",
"amounts": "Beträge",
"taxRate": "MwSt.-Satz (%)",
"subtotal": "Zwischensumme (netto)",
"tax": "MwSt. ({rate}%)",
"total": "Gesamtbetrag",
"notes": "Anmerkungen",
"created": "Rechnung erfolgreich erstellt",
"errorCreating": "Fehler beim Erstellen der Rechnung"
},
"invoiceStatus": {
"draft": "Entwurf",
"sent": "Versendet",
"paid": "Bezahlt",
"overdue": "Überfällig",
"cancelled": "Storniert",
"credited": "Gutgeschrieben"
},
"sepa": {
"title": "SEPA-Einzüge",
"newBatch": "Neuer Einzug",
"noBatches": "Keine SEPA-Einzüge vorhanden",
"createFirst": "Erstellen Sie Ihren ersten SEPA-Einzug.",
"directDebit": "Lastschrift",
"creditTransfer": "Überweisung",
"executionDate": "Ausführungsdatum",
"totalAmount": "Gesamtbetrag",
"itemCount": "Positionen",
"downloadXml": "XML herunterladen",
"notFound": "Einzug nicht gefunden"
},
"sepaBatchForm": {
"title": "SEPA-Einzug erstellen",
"batchType": "Typ",
"directDebit": "Lastschrift (SEPA Core)",
"creditTransfer": "Überweisung",
"description": "Beschreibung",
"descriptionPlaceholder": "z.B. Mitgliedsbeiträge Q1 2026",
"executionDate": "Ausführungsdatum *",
"executionDateRequired": "Ausführungsdatum ist erforderlich",
"created": "SEPA-Einzug erstellt",
"errorCreating": "Fehler beim Erstellen"
},
"sepaBatchStatus": {
"draft": "Entwurf",
"ready": "Bereit",
"submitted": "Eingereicht",
"executed": "Abgeschlossen",
"failed": "Fehlgeschlagen",
"cancelled": "Abgebrochen"
},
"sepaItemStatus": {
"pending": "Ausstehend",
"success": "Verarbeitet",
"failed": "Fehlgeschlagen",
"rejected": "Abgelehnt"
},
"payments": {
"title": "Zahlungsübersicht",
"paidInvoices": "Bezahlte Rechnungen",
"openInvoices": "Offene Rechnungen",
"overdueInvoices": "Überfällige Rechnungen",
"sepaBatches": "SEPA-Einzüge"
},
"common": {
"cancel": "Abbrechen",
"creating": "Wird erstellt...",
"membershipFee": "Mitgliedsbeitrag",
"sepaDirectDebit": "SEPA Einzug"
}
}