diff --git a/package.json b/package.json index 0f1052d..17575fa 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,7 @@ "axios": "^1.7.9", "bootstrap": "^5.3.3", "dayjs": "^1.11.13", + "formik": "^2.4.6", "react": "^18.3.1", "react-apexcharts": "^1.7.0", "react-big-calendar": "^1.17.0", @@ -23,7 +24,8 @@ "react-scripts": "5.0.1", "redux": "^5.0.1", "sass": "^1.82.0", - "web-vitals": "^2.1.4" + "web-vitals": "^2.1.4", + "yup": "^1.6.0" }, "scripts": { "start": "react-scripts start -e .env.development", diff --git a/src/component/auth/Signup2.jsx b/src/component/auth/Signup2.jsx index 9f23cdc..cef5962 100644 --- a/src/component/auth/Signup2.jsx +++ b/src/component/auth/Signup2.jsx @@ -1,13 +1,45 @@ import React, { useEffect, useState } from 'react' +import { Form, Formik } from "formik"; +import * as Yup from "yup"; + import LoginImg from '../../assets/bg/login.svg' import { Link, useNavigate } from 'react-router-dom' import siteLinks from '../../links/siteLinks' +const validationSchema = Yup.object().shape({ + email: Yup.string() + .email("Wrong email format") + .matches( + /^[^0-9][a-zA-Z0-9._%+-]+@[a-zA-Z]+(\.[a-zA-Z]+)+$/, + "Invalid email format" + ) + .min(3, "Minimum 3 characters") + .max(50, "Maximum 50 characters") + .required("Email is required"), + firstname: Yup.string().min(3, "Minimum 3 characters").max(50, "Maximum 50 characters").required("Email is required"), + lastname: Yup.string().min(3, "Minimum 3 characters").max(50, "Maximum 50 characters").required("Email is required"), + username: Yup.string().min(3, "Minimum 3 characters").max(50, "Maximum 50 characters").required("Email is required"), + password: Yup.string().min(3, "Minimum 3 characters").max(50, "Maximum 50 characters").required("Email is required"), + }) + + const initialValues = { + email: '', + firstname: '', + lastname: '', + username: '', + password: '' + }; + export default function Signup2() { const navigate = useNavigate() + const signUp = (values, helpers) => { + // helpers.resetForm() + console.log('values', values, helpers) + } + return (
@@ -15,59 +47,69 @@ export default function Signup2() {
-
-
-
-

MERMS Panel

+
+
+
+

MERMS Panel

Welcome, Please create your account.

-
-
-
-
- - + + {(props) => { + return ( + +
+
+
+ +
-
-
- - +
+
+ +
-
-
- - +
+
+ +
-
-
- - +
+
+ +
-
-
- - +
+
+ +
-
-
- -