npm test -- --watchAll=false --testPathPattern="SignIn.test|SignUp.test|AuthCallback.test"
With backend OAuth configured, Continue with Google/Microsoft from Sign In works
First-time SSO register lands in Stripe Checkout when needs_checkout=1
Existing linked user signs in and reaches app / TOS
Error query (email_unverified, access_denied) shows message + back link
## Summary
- Frontend half of ai_ml_operations/chat_backend#24
- SSO buttons on Sign In / Sign Up (shown when `/public/settings/` reports provider configured)
- New `/auth/callback/` route stores JWTs, loads account, sends new SSO users through Stripe Checkout
- Error states for denied consent, unverified/missing email, link conflict, etc.
- README note on Capacitor / native redirect URI limits
## Pair with
- Backend PR: `chat_backend` branch `feature/sso-oauth-24`
## Test plan
- [ ] `npm test -- --watchAll=false --testPathPattern="SignIn.test|SignUp.test|AuthCallback.test"`
- [ ] With backend OAuth configured, Continue with Google/Microsoft from Sign In works
- [ ] First-time SSO register lands in Stripe Checkout when `needs_checkout=1`
- [ ] Existing linked user signs in and reaches app / TOS
- [ ] Error query (`email_unverified`, `access_denied`) shows message + back link
Wire Sign In/Sign Up to backend OAuth start, handle /auth/callback/ JWT
return (including Stripe checkout for new SSO accounts), and document
Capacitor redirect limits.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
/public/settings/reports provider configured)/auth/callback/route stores JWTs, loads account, sends new SSO users through Stripe CheckoutPair with
chat_backendbranchfeature/sso-oauth-24Test plan
npm test -- --watchAll=false --testPathPattern="SignIn.test|SignUp.test|AuthCallback.test"needs_checkout=1email_unverified,access_denied) shows message + back link