/auth
Entiende todas las rutas de /api/auth:
forget-passwordPOST
Este endpoint es usado cuando el usuario olvidó su contraseña y quiere crear una nueva.
Primero se verifica que el usuario exista.
Se genera un token de restablecimiento de contraseña (resetToken) y se guarda una versión cifrada del token en la
tabla User del usuario junto con una fecha de expiración (resetTokenExpiry).
Al usuario se le envía un Email para restablecer su contraseña en el endpoint reset-password.
registerPOST
Este endpoint es usado cuando un usuario va a registrarse por primera vez.
Se verifica que el email y teléfono no hayan sido registrados ya. En ese caso se crea un nuevo User.
Se crea un nuevo userRequest, Transaction e Investment.
reset-passwordPOST
Este endpoint es usado para restablecer la contraseña después de haber pasado por forget-password.
Se busca al User en la base de datos utilizando el token de restablecimiento cifrado (resetToken).
Se actualizan el password, salt, resetToken y resetTokenExpiry (estos 2 últimos se hacen null) en el User.
verify-tokenPOST
Este endpoint es usado para verificar el resetTokenExpiry del User para restablecer la contraseña antes de
acceder al endpoint reset-password.
Se busca al User en la base de datos utilizando el token de restablecimiento cifrado (resetToken).
Se verifica que el parámetro resetTokenExpiry no haya expirado.