diff --git a/frontend/src/views/MainPage/SignUp/index.jsx b/frontend/src/views/MainPage/SignUp/index.jsx index 6f9bd87..6bd785a 100644 --- a/frontend/src/views/MainPage/SignUp/index.jsx +++ b/frontend/src/views/MainPage/SignUp/index.jsx @@ -1,102 +1,128 @@ import React, { useState } from 'react'; import { Link } from 'react-router-dom'; -import Styles from './../Form.module.css'; import { useDispatch } from 'react-redux'; -//icons import { AiOutlineEyeInvisible, AiOutlineEye } from 'react-icons/ai'; import { BiError } from 'react-icons/bi'; -//actions import { signUpAsync } from './../../../redux/actions/auth'; const SignUp = () => { const dispatch = useDispatch(); const [hidden, setHidden] = useState(false); - const [data, setData] = useState({ - email: '', - password: '' - }); + const [data, setData] = useState({ email: '', password: '' }); const [error, setError] = useState(''); + const handleSubmit = async (e) => { e.preventDefault(); setError(''); dispatch(signUpAsync({ data, setError })); }; + const handleChange = (e) => { setData({ ...data, [e.target.name]: e.target.value }); setError(''); }; + const handleHidden = () => { setHidden(!hidden); }; + const validateEmail = (string) => { const regex = /^[-\w.%+]{1,64}@(?:[A-Z0-9-]{1,63}\.){1,125}[A-Z]{2,63}$/i; return regex.test(string); }; + + const emailInvalid = !validateEmail(data.email) && data.email !== ''; + return ( -
-

Despega tu futuro 🚀

-

Regístrate para ingresar a nuestra plataforma

-
- - {!validateEmail(data.email) && data.email !== '' && ( -

- - Invalid email. Please try again. -

- )} -
-
- - {hidden ? ( - - ) : ( - - )} -
- -
-

- ¿Ya tienes una cuenta?{' '} - - Ingresa aquí - +

+
+

+ Despega tu futuro 🚀 +

+

+ Regístrate para ingresar a nuestra plataforma

- {error && ( -

- - {error} -

- )}
- + +
+
+
+
+ +
+ + {emailInvalid && ( +
+ + Invalid email. Please try again. +
+ )} +
+
+ +
+ +
+ +
+ {hidden ? : } +
+
+
+ +
+ +
+
+ +
+
+
+
+
+
+ ¿Ya tienes una cuenta? +
+
+ +
+ + Ingresa aquí + +
+ + {error && ( +
+ + {error} +
+ )} +
+
+
+
); };