fix: show a translated notice when the sign-in session expired

The sign-in screen showed the auth store's raw English error ("Session
expired", "Invalid username or password") as the notice title. It now
runs it through describeLoginError like every other sign-in failure,
which also learns to explain an expired session with the webmail's
login.session_expired copy. The back and close buttons of the sign-in
steps get screen reader labels, and the email placeholders use the
webmail's translated example address.
This commit is contained in:
Linus Rath
2026-09-24 20:49:55 +02:00
parent 771558d8c7
commit 5801d6c97a
7 changed files with 42 additions and 5 deletions
@@ -17,6 +17,17 @@ const TRANSLATED_FILES: Record<string, string[]> = {
// The link prompt shows an example URL.
'screens/ComposeScreen.tsx': ['https://example.com'],
'components/RichTextEditor.tsx': [],
'screens/LoginScreen.tsx': [],
// Product name and example host.
'screens/login/ChooseStep.tsx': ['Bulwark Mail'],
'screens/login/ConfirmStep.tsx': [],
'screens/login/EmailStep.tsx': [],
'screens/login/LoginNotice.tsx': [],
'screens/login/LoginShell.tsx': ['Bulwark Mobile v'],
'screens/login/OptionTile.tsx': [],
'screens/login/PasswordStep.tsx': [],
'screens/login/ServerStep.tsx': ['mail.example.com'],
'screens/login/SigningInStep.tsx': [],
'screens/ScheduledScreen.tsx': [],
'screens/EmailSourceScreen.tsx': [],
'components/OfflineBanner.tsx': [],