import React from 'react' import * as Yup from 'yup'; import { useState } from 'react'; import { useFormik, Form, FormikProvider } from 'formik'; import { Icon } from '@iconify/react'; import { Box, Button, Stack, TextField, IconButton, InputAdornment, } from '@mui/material'; import eyeFill from '@iconify/icons-eva/eye-fill'; import eyeOffFill from '@iconify/icons-eva/eye-off-fill'; // import { V1, V2 } from '../../Utils/HTTP' export function RegisterForm(props) { const steplen = 2; const index = 0; const [showPassword, setShowPassword] = useState(false); const [showPasswordTwo, setShowPasswordTwo] = useState(false); const RegisterSchema = Yup.object().shape({ firstName: Yup.string().min(2, 'Demasiado corto!').max(50, 'Demasiado largo!').required('Tu nombre es requerido'), lastName: Yup.string().min(2, 'Demasiado corto!').max(50, 'Demasiado Largo!').required('El apellido es requerido'), email: Yup.string().email('El correo no es valido').required('Email es requerido'), password: Yup.string().min(5, 'La contraseña debe contener mínimo 5 caracteres').required('la contraseña es requerida'), password_confirm: Yup.string().required('Las contraseñas no coincidien').oneOf([Yup.ref('password'), null], 'Las contraseñas no coincidien') }); let {client, setClient, handleNext, handleBack } = props const formik = useFormik({ initialValues: { firstName: client.firstName, lastName: client.lastName, email: client.email, password: client.password, password_confirm: client.password_confirm }, onSubmit: (fields) => { setClient({ ...client, ...fields }) handleNext() }, validationSchema: RegisterSchema, }); const {errors, touched, handleSubmit, getFieldProps } = formik; return (
setShowPassword((prev) => !prev)}> ) }} error={Boolean(touched.password && errors.password)} helperText={touched.password && errors.password} /> setShowPasswordTwo((prev) => !prev)}> ) }} error={Boolean(touched.password_confirm && errors.password_confirm)} helperText={touched.password_confirm && errors.password_confirm} />
); }