import { Box, Button, TextField } from '@mui/material'; import Head from 'next/head'; import { ChevronLeftOutlined } from '@mui/icons-material'; import LoginIcon from '@mui/icons-material/Login'; import { useFormik } from 'formik'; import { useRouter } from 'next/dist/client/router'; import React from 'react'; import is_development_plant from 'utils/is_development_plant'; import * as yup from 'yup'; let default_init_values = { username: '', passwod: '', }; if (is_development_plant) { console.log('development plant'); default_init_values = { username: 'admi', password: 'nimda', }; } const validationSchema = yup.object({ username: yup .string('Enter your username') .min(5, 'Username should be of minimum 5 characters length') .required('Username is required'), password: yup .string('Enter your password') .min(5, 'Password should be of minimum 5 characters length') .required('Password is required'), }); export default function Home() { const router = useRouter(); const [changing_page, setChangingPage] = React.useState(false); const formik = useFormik({ initialValues: default_init_values, validationSchema, onSubmit: values => { fetch('/api/auth/login', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(values), }) .then(res => res.json()) .then(data => { if (data.success) { router.push('/AdminHome'); } else { alert(data.message); formik.resetForm(); } }) .catch(err => { console.error(err); alert('server error'); }); }, }); return ( <>