feat: add OAuth 2.0 login UI (Google, Yandex, Discord, VK)

- Add OAuthProvider type and extend User.auth_type union
- Add OAuth API methods (providers, authorize, callback)
- Add loginWithOAuth to auth store
- Create OAuthCallback page with state validation
- Create OAuthProviderIcon component with brand SVGs
- Add OAuth buttons to Login page between Telegram and Email
- Add OAuth callback route to App.tsx
- Add translations for ru, en, zh, fa
This commit is contained in:
Fringg
2026-02-07 01:59:05 +03:00
parent af25e6a1b8
commit 83aeae81b8
12 changed files with 329 additions and 6 deletions

View File

@@ -187,7 +187,13 @@
"forgotPasswordHint": "Enter your email to receive a reset link",
"loginSuccess": "Login successful",
"passwordResetSent": "Password reset link sent to your email",
"sendResetLink": "Send reset link"
"sendResetLink": "Send reset link",
"continueWithGoogle": "Continue with Google",
"continueWithYandex": "Continue with Yandex",
"continueWithDiscord": "Continue with Discord",
"continueWithVk": "Continue with VK",
"oauthError": "Authorization was denied or failed",
"oauthExpired": "OAuth session expired. Please try again."
},
"emailVerification": {
"title": "Email Verification",