feat(i18n): migrate hardcoded German strings to t() across 104 components/pages — AST-based batch with re-parse gate, 423 new de.json keys; tsc clean; vitest failures byte-identical to clean-tree baseline (pre-existing)

This commit is contained in:
Agent Zero
2026-08-27 01:43:06 +02:00
parent 5680179260
commit 4cb5298768
105 changed files with 1204 additions and 459 deletions
+7 -7
View File
@@ -221,25 +221,25 @@ export function MailSettingsPage() {
label={t('mail.email')}
{...registerAccount('email')}
error={accountErrors.email?.message === 'required' ? t('validation.required') : accountErrors.email?.message === 'invalidEmail' ? t('validation.email') : undefined}
placeholder="user@example.com"
placeholder={t('mailSettings.userexamplecom')}
required
/>
<Input
label={t('mail.displayName')}
{...registerAccount('display_name')}
placeholder="John Doe"
placeholder={t('mailSettings.johndoe')}
/>
<Input
label="Benutzername (IMAP/SMTP)"
{...registerAccount('username')}
placeholder="Leer lassen für E-Mail-Adresse"
placeholder={t('mailSettings.leerlassenfüremailadresse')}
/>
<div className="grid grid-cols-2 gap-3">
<Input
label={t('mail.imapHost')}
{...registerAccount('imap_host')}
error={accountErrors.imap_host?.message === 'required' ? t('validation.required') : undefined}
placeholder="imap.example.com"
placeholder={t('mailSettings.imapexamplecom')}
/>
<Input
label={t('mail.imapPort')}
@@ -253,7 +253,7 @@ export function MailSettingsPage() {
label={t('mail.smtpHost')}
{...registerAccount('smtp_host')}
error={accountErrors.smtp_host?.message === 'required' ? t('validation.required') : undefined}
placeholder="smtp.example.com"
placeholder={t('mailSettings.smtpexamplecom')}
/>
<Input
label={t('mail.smtpPort')}
@@ -275,7 +275,7 @@ export function MailSettingsPage() {
{...registerAccount('is_shared')}
className="rounded"
/>
Geteiltes Postfach (für alle Tenant-Benutzer sichtbar)
{t('mailSettings.geteiltespostfachfüralletenantbenutzer')}
</label>
<div className="flex gap-2">
<Button type="submit" isLoading={accountSubmitting} size="sm">{t('common.save')}</Button>
@@ -392,7 +392,7 @@ export function MailSettingsPage() {
className="text-xs text-secondary-400 hover:text-secondary-600"
data-testid={`folder-mapping-btn-${acc.id}`}
>
Ordner-Zuordnung bearbeiten
{t('mailSettings.ordnerzuordnungbearbeiten')}
</button>
</div>
)}