fix: replace flyout profile card with logout slider, i18n auth errors

- Replace static account card in mobile flyout with swipe-to-logout widget
- Remove redundant logout button from flyout bottom
- Make LogoutButton full-width via class prop and dynamic maxSlide
- Extract clean GraphQL error messages instead of raw JSON in all auth forms
- Add i18n keys for known backend errors (invalid credentials, email taken, invalid token)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-06 17:26:14 +01:00
parent 0ec27117ae
commit 19d29cbfc6
8 changed files with 29 additions and 54 deletions

View File

@@ -40,7 +40,9 @@
toast.success($_("auth.password_reset.toast_reset"));
goto("/login");
} catch (err: any) {
error = err.message;
const raw = err.response?.errors?.[0]?.message ?? err.message;
const tokenErrors = ["Invalid or expired reset token", "Reset token expired"];
error = tokenErrors.includes(raw) ? $_("auth.password_reset.error_invalid_token") : raw;
isError = true;
} finally {
isLoading = false;