import LinkRouting from "@/core/components/LinkRouting"; import Notifications from "@/core/components/notifications"; import PasswordField from "@/core/components/PasswordField"; import StyledForm from "@/core/components/StyledForm"; import {GET_USER_TOKEN} from "@/core/data/apiRoutes"; import CenterLayout from "@/layouts/CenterLayout"; import FullPageLayout from "@/layouts/FullPageLayout"; import useUser from "@/lib/app/hooks/useUser"; import LoginIcon from "@mui/icons-material/Login"; import {Box, Button, Container, Paper, Stack, TextField, Typography,} from "@mui/material"; import axios from "axios"; import {Field, Formik} from "formik"; import {useTranslations} from "next-intl"; import Image from "next/image"; import {useSearchParams} from "next/navigation"; import * as Yup from "yup"; import useDirection from "@/lib/app/hooks/useDirection"; const LoginComponent = () => { const t = useTranslations(); const {directionApp} = useDirection(); // should delete because we don't have direction anymore const {setToken} = useUser(); // pass token to set token // getting url query const searchParams = useSearchParams(); const backUrlDecodedPath = searchParams.get("back_url"); //formik properties const handleSubmit = async (values, props) => { await axios .post(GET_USER_TOKEN, { username: values.username, password: values.password, }) .then(function (response) { setToken(response.data.token); }) .catch(function (error) { Notifications(directionApp, error.response, t); props.setSubmitting(false); }); }; const initialValues = { username: "", password: "", }; const validationSchema = Yup.object().shape({ username: Yup.string().required(t("LoginPage.error_message_required")), password: Yup.string().required(t("LoginPage.error_message_required")), }); return ( {(props) => ( {t("app_name")}/ {t("login_expert")} )} {t("LoginPage.link_routing_back_to")}{" "} {backUrlDecodedPath ? t("LoginPage.link_routing_previuos_page") : t("LoginPage.link_routing_main_page")} ); }; export default LoginComponent;