feat(settings): Akzentfarbe zusätzlich als Hex-Code eingebbar

- normalizeHexColor() (apps/web/src/lib/color.ts) normalisiert Hex-Eingaben (fuehrendes # optional, 3-stellige Kurzform, Gross-/Kleinschreibung, Leerraum)
- Kontoformular: Hex-Textfeld neben dem Farbwaehler, beide bidirektional synchron, ersetzt den reinen Anzeige-Span
- Ungueltiger Text: aria-invalid + roter Rand + Fehlertext, "Farbe speichern" gesperrt; Zuruecksetzen setzt beides auf #ffed00
- i18n: settings.account.accentColorHex/accentColorHexInvalid in de.json und en.json
- Unit-Tests: color.test.ts (9 Faelle), account-settings-form.test.tsx (7 Faelle)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-17 12:14:43 +02:00
parent f6eda20fcb
commit 795c6a492c
6 changed files with 341 additions and 5 deletions
+2
View File
@@ -149,6 +149,8 @@
"accentColorSave": "Farbe speichern",
"accentColorSuccess": "Akzentfarbe erfolgreich gespeichert.",
"accentColorError": "Speichern fehlgeschlagen.",
"accentColorHex": "Hex-Code",
"accentColorHexInvalid": "Ungültiger Farbwert. Bitte geben Sie sechs Hexadezimalzeichen ein, z. B. #ffed00.",
"deleteAvatarCta": "Bild löschen",
"deleteAvatarSuccess": "Profilbild erfolgreich gelöscht.",
"deleteAvatarError": "Löschen fehlgeschlagen."