Commit dfb7c587 authored by Lorenzo Trujillo Rojas's avatar Lorenzo Trujillo Rojas
Browse files

Merge branch 'main' into 'main'

Se aplicó el manejo de errores en los formularios de loggin y sign up

See merge request !17
parents 356b9485 1c2d8c43
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -32,7 +32,7 @@ export const SignUpForm = () => {
            value={value}
            onChangeText={onChange}
            onBlur={onBlur}
            errors={errors.email?.message as string}
            errors={errors.name?.message as string}
          />
        )}
        rules={{
@@ -52,7 +52,7 @@ export const SignUpForm = () => {
            value={value}
            onChangeText={onChange}
            onBlur={onBlur}
            errors={errors.email?.message as string}
            errors={errors.lastName?.message as string}
          />
        )}
        rules={{
@@ -113,7 +113,7 @@ export const SignUpForm = () => {
            value={value}
            onChangeText={onChange}
            onBlur={onBlur}
            errors={errors.password?.message as string}
            errors={errors.confirmPassword?.message as string}
          />
        )}
        rules={{ required: "Confirm password is required" }}
+12 −4
Original line number Diff line number Diff line
import { useForm } from "react-hook-form"
import { set, useForm } from "react-hook-form"
import { useAuth } from "../contexts/auth_context";
import { Navigator, Redirect, router } from "expo-router";
import { useDataContext } from "../contexts/data_context";
@@ -9,7 +9,7 @@ export type LoginFormValues = {
}

export const useLoggin = () => {
    const { control, handleSubmit, formState: { errors } } = useForm<LoginFormValues>();
    const { control, handleSubmit, formState: { errors }, setError } = useForm<LoginFormValues>();
    const { authRepository } = useDataContext();
    const { login } = useAuth();

@@ -18,8 +18,16 @@ export const useLoggin = () => {
            const { user, token } = await authRepository!.login(data.email, data.password);
            await login(user, token);
            router.replace('/(tabs)');
        } catch (error) {
            console.log(error);
        } catch (error: any) {
            switch (error.response.status) {
                case 401:
                    setError('email', { type: 'manual', message: 'Invalid email or password' });
                    setError('password', { type: 'manual', message: 'Invalid email or password' });
                    break;
                default:
                    console.log('Something went wrong');
                    break;
            }
        }
    }

+9 −2
Original line number Diff line number Diff line
@@ -34,8 +34,15 @@ export const useSignUp = () => {
            const { user, token } = await authRepository!.register(userToRegister);
            await login(user, token);
            router.replace("/(tabs)");
        } catch (error) {
            console.log(error);
        } catch (error: any) {
            switch (error.response.status) {
                case 400:
                    setError("email", { type: "manual", message: "Email already in use" });
                    break;
                default:
                    console.log("Something went wrong");
                    break;
            }
        }
    }