Flujo de Autenticacion

Documentacion del sistema de autenticacion, paginas y proveedores OAuth.

Nota: Los componentes de autenticacion no se renderizan aqui ya que redirigen automaticamente. Esta pagina documenta el flujo, las paginas y la gestion de estado.

Paginas de Autenticacion

/login

Pagina de inicio de sesion. Muestra formulario de email + codigo OTP y boton de OAuth (Google). Fondo dividido con branding Shiko.

Ruta publica

/otp

Verificacion de codigo OTP enviado por email o SMS. Input de 6 digitos con auto-avance. Timer de reenvio.

Requiere email previo

/register

Registro de nuevo usuario. Campos: nombre, email, contrasena, telefono. Validacion en tiempo real y aceptacion de terminos.

Ruta publica

/forgot-password

Recuperacion de contrasena. Envia enlace de reset por email. Incluye pagina de confirmacion de envio.

Ruta publica

/elegir-rol

Seleccion de rol despues del registro. El usuario elige si es dueno de mascota o veterinario/clinica. Determina el flujo posterior.

Post-registro

Proveedores OAuth

Google

Inicio de sesion con cuenta Google. Flujo OAuth 2.0 estandar. Se obtiene nombre, email y avatar del perfil.

Email + OTP

Inicio de sesion con email y codigo de verificacion OTP. El usuario ingresa su email y recibe un codigo de 6 digitos para autenticarse de forma segura.

Composable useAuth

Composable central para gestionar el estado de autenticacion en toda la aplicacion.

Estado reactivo

  • isAuthenticatedRef booleano de estado de sesion
  • userRef con datos del usuario (name, email, avatar)

Metodos

  • initAuth()Inicializa la sesion (verifica token en localStorage)
  • logout(redirect?)Cierra sesion y redirige opcionalmente

Flujo de Autenticacion

1

Login / Registro

El usuario ingresa email/contrasena o usa OAuth

2

Verificacion OTP

Se valida el codigo enviado por email

3

Elegir Rol

Dueno de mascota o veterinario/clinica

4

Token JWT

Se almacena en localStorage y se envia en headers

5

Dashboard

Redirige segun rol: /app o /app/admin