The login UI is src/sections/auth/auth-forms/AuthLogin.tsx, rendered from pages/auth/auth1/login.

Flow overview

Form fields

Dev pre-fill from VITE_APP_EMAIL and VITE_APP_PASSWORD.

MFA check

Before login, user clicks Check MFA:
Response data.isMfaEnabled toggles password vs OTP field. Service: getMfaStatus from services/user.service.tsx.

Submit — login()

Calls useAuth().login(email, credential, isForceLoginRequired):
  • Password mode: second arg is password
  • MFA mode: second arg is TOTP code (password field hidden)

Force login

If backend returns userLoggedIn: true:
  1. UI shows force-login confirmation
  2. Stores email/credential
  3. Retries with isForceLogin: true to invalidate other sessions

Error display

Errors surface via Formik errors.submit from:
  • MFA check failures
  • Login API message
  • Network errors

User guides