Merge feature/inbox-1: Anfragen-Posteingang UI (list/triage/assign/draft/send) [god-QA pending]
# Conflicts: # gerbil-manager-web/e2e/mock-data.ts # gerbil-manager-web/src/App.tsx
This commit is contained in:
@@ -26,6 +26,8 @@ export const de = {
|
||||
// FEAT-13 (Kelly): Verträge + Einstellungen
|
||||
contracts: 'Verträge',
|
||||
settings: 'Einstellungen',
|
||||
// INBOX-1 (Kelly): Anfragen-Posteingang
|
||||
requests: 'Anfragen',
|
||||
openMenu: 'Menü öffnen',
|
||||
closeMenu: 'Menü schließen',
|
||||
mainNavigation: 'Hauptnavigation',
|
||||
@@ -457,6 +459,61 @@ export const de = {
|
||||
saved: 'Gespeichert.',
|
||||
},
|
||||
},
|
||||
// ── INBOX-1 (Kelly): Anfragen-Posteingang ──
|
||||
anfragen: {
|
||||
title: 'Anfragen',
|
||||
empty: 'Keine Anfragen — hole neue E-Mails mit „Anfragen abrufen“.',
|
||||
emptyFiltered: 'Keine Anfragen mit diesem Status.',
|
||||
countText: (n: number) => (n === 1 ? '1 Anfrage' : `${n} Anfragen`),
|
||||
sync: 'Anfragen abrufen',
|
||||
syncing: 'Abrufen …',
|
||||
syncImported: (n: number) =>
|
||||
n === 0 ? 'Keine neuen Anfragen.' : n === 1 ? '1 neue Anfrage abgerufen.' : `${n} neue Anfragen abgerufen.`,
|
||||
mailNotConfigured:
|
||||
'Gmail ist noch nicht eingerichtet — Adresse und App-Passwort folgen in den Einstellungen.',
|
||||
mailAuthFailed:
|
||||
'Gmail-Anmeldung fehlgeschlagen — bitte das App-Passwort neu eintragen.',
|
||||
filterAll: 'Alle',
|
||||
statusLabels: {
|
||||
New: 'Neu',
|
||||
InProgress: 'In Bearbeitung',
|
||||
Assigned: 'Zugeordnet',
|
||||
Answered: 'Beantwortet',
|
||||
Abandoned: 'Verworfen',
|
||||
},
|
||||
// Detailansicht
|
||||
detail: {
|
||||
back: 'Zurück zur Liste',
|
||||
notFound: 'Diese Anfrage wurde nicht gefunden.',
|
||||
from: 'Von',
|
||||
receivedAt: 'Eingegangen',
|
||||
answeredAt: 'Beantwortet am',
|
||||
message: 'Nachricht',
|
||||
noBody: '(kein Text)',
|
||||
noSubject: '(kein Betreff)',
|
||||
// Triage
|
||||
triage: 'Bearbeitung',
|
||||
statusLabel: 'Status',
|
||||
abandon: 'Verwerfen',
|
||||
abandonConfirm: 'Anfrage wirklich verwerfen?',
|
||||
assignContact: 'Abnehmer zuordnen',
|
||||
assignNone: '— kein Abnehmer —',
|
||||
assignedTo: 'Zugeordneter Abnehmer',
|
||||
// Antwort
|
||||
reply: 'Antwort',
|
||||
replyPlaceholder: 'Antwort schreiben oder mit KI entwerfen …',
|
||||
draftButton: 'Antwort entwerfen',
|
||||
drafting: 'Entwurf wird erstellt …',
|
||||
draftHint: 'Die KI erstellt nur einen Entwurf — gesendet wird erst nach deiner Bestätigung.',
|
||||
aiKeyMissing: 'KI-Schlüssel fehlt — der Entwurfs-Assistent wird mit dem Schlüssel aktiviert.',
|
||||
aiUpstreamError: 'Der KI-Dienst hat gerade ein Problem — bitte später erneut versuchen.',
|
||||
send: 'Antwort senden',
|
||||
sending: 'Senden …',
|
||||
sendConfirm: 'Antwort jetzt per E-Mail senden?',
|
||||
sendEmptyBody: 'Bitte zuerst eine Antwort schreiben.',
|
||||
sent: 'Antwort gesendet — die Anfrage ist als „Beantwortet“ markiert.',
|
||||
},
|
||||
},
|
||||
// ── FEAT-2 (Oscar): Kontakte (Contacts — Herkunft/Abnehmer) ──
|
||||
kontakte: {
|
||||
title: 'Kontakte',
|
||||
|
||||
Reference in New Issue
Block a user