Skip to main content

Descripción

El módulo Auth maneja login, reset de contraseña, gestión de tokens y modo visitante.
El registro de nuevos usuarios ya no vive en este módulo: se realiza al aceptar una invitación. Ver Invitations.
  • Ubicación: src/modules/auth/
Este módulo implementa un sistema de bloqueo por intentos fallidos: tras 5 intentos incorrectos, la cuenta se bloquea durante 15 minutos.

Screens

API Endpoints

Hooks

Tipos principales

Store

El módulo utiliza authStore en Zustand con almacenamiento híbrido (AsyncStorage + SecureStore).
Los tokens se almacenan en SecureStore para mayor seguridad. No acceder directamente a ellos fuera de este módulo.
Ver Autenticación para detalles del flujo JWT.

Componentes destacados

LoginForm

Formulario de login con validación y manejo de errores inline.

ResendForm

Formulario para reenvío de email de reseteo de contraseña.

ResetPasswordForm

Formulario para establecer una nueva contraseña tras el reset.

AuthError

Componente de visualización de errores de autenticación con mapeo de códigos.

authService

Servicio singleton que centraliza la lógica de autenticación:
  • Login attempt lockout: Máximo 5 intentos (MAX_LOGIN_ATTEMPTS), bloqueo de 15 minutos (LOCKOUT_DURATION).
  • Manejo de errores: Mapeo de códigos de error del backend a mensajes legibles.
  • Gestión de tokens: Almacenamiento seguro y renovación automática.

Modo visitante

El método loginAsVisitor() permite explorar la app sin necesidad de crear una cuenta. Los visitantes tienen acceso limitado a funcionalidades de solo lectura.