Errors
errors/README.md
Errors
Módulo de manejo centralizado de errores de la aplicación.
Descripción General
En lugar de mostrar códigos de error crudos de Firebase al usuario, este módulo los mapea a mensajes en español comprensibles.
Estructura de Archivos
errors/
└── auth.errors.ts # Mensajes de error de Firebase Auth + función de mapeo
🔐 auth.errors.ts
AUTH_ERROR_MESSAGES
Record<string, string> que mapea códigos de error de Firebase Auth a mensajes en español.
| Código Firebase | Mensaje mostrado al usuario |
|---|---|
auth/user-not-found | No existe una cuenta con ese correo electrónico. |
auth/wrong-password | La contraseña es incorrecta. |
auth/invalid-email | El formato del correo electrónico no es válido. |
auth/user-disabled | Esta cuenta ha sido deshabilitada. Contacta al administrador. |
auth/too-many-requests | Demasiados intentos fallidos. Por favor, intenta más tarde. |
auth/network-request-failed | Error de conexión. Verifica tu acceso a internet. |
auth/invalid-credential | Correo o contraseña incorrectos. |
EMAIL_NOT_VERIFIED | Tu correo electrónico aún no ha sido verificado. |
mapAuthError(err)
Función que extrae el código de error de un objeto desconocido y retorna el mensaje mapeado. Si el código no está en el mapa, retorna un mensaje genérico.
ts
import { mapAuthError } from '@/errors/auth.errors';
try {
await signIn(email, password);
} catch (err) {
toast.error(mapAuthError(err));
}
Cómo Extender
- Para nuevos errores de Auth: agregar el par
código: mensajeaAUTH_ERROR_MESSAGES. - Para errores de otros dominios: crear un archivo nuevo
<dominio>.errors.tssiguiendo el mismo patrón (MESSAGES+mapXxxError).
