fix: customer account request

This commit is contained in:
IlyaDoronin 2024-01-17 10:49:45 +03:00
parent b2c0c87d2d
commit c15a82cda8
3 changed files with 23 additions and 10 deletions

@ -37,6 +37,7 @@ import {
clearUserData,
setUser,
setUserAccount,
setCustomerAccount,
useUserStore,
} from "@root/user";
import { enqueueSnackbar } from "notistack";
@ -136,6 +137,21 @@ export default function App() {
},
});
useUserAccountFetcher({
url: "https://squiz.pena.digital/customer/account",
userId,
onNewUserAccount: setCustomerAccount,
onError: (error) => {
const errorMessage = getMessageFromFetchError(error);
if (errorMessage) {
enqueueSnackbar(errorMessage);
clearUserData();
clearAuthToken();
navigate("/signin");
}
},
});
useUserAccountFetcher({
url: "https://squiz.pena.digital/squiz/account/get",
userId,

@ -10,7 +10,7 @@ import {
useMediaQuery,
useTheme,
} from "@mui/material";
import { setUserId, useUserStore, setUserAccount } from "@root/user";
import { setUserId, useUserStore } from "@root/user";
import InputTextfield from "@ui_kit/InputTextfield";
import Logotip from "../../pages/Landing/images/icons/QuizLogo";
import PasswordInput from "@ui_kit/passwordInput";
@ -19,7 +19,6 @@ import { enqueueSnackbar } from "notistack";
import { useEffect, useState } from "react";
import { Link as RouterLink, useLocation, useNavigate } from "react-router-dom";
import { object, ref, string } from "yup";
import { useUserAccountFetcher } from "@frontend/kitui";
interface Values {
email: string;
@ -48,18 +47,11 @@ const validationSchema = object({
export default function SignupDialog() {
const [isDialogOpen, setIsDialogOpen] = useState<boolean>(true);
const { user, userId } = useUserStore((state) => state);
const { user } = useUserStore((state) => state);
const theme = useTheme();
const upMd = useMediaQuery(theme.breakpoints.up("md"));
const location = useLocation();
useUserAccountFetcher({
url: "https://squiz.pena.digital/customer/account",
userId,
onNewUserAccount: setUserAccount,
onError: enqueueSnackbar,
});
const navigate = useNavigate();
const formik = useFormik<Values>({
initialValues,

@ -7,12 +7,14 @@ interface UserStore {
userId: string | null;
user: User | null;
userAccount: UserAccount | null;
customerAccount: UserAccount | null;
}
const initialState: UserStore = {
userId: null,
user: null,
userAccount: null,
customerAccount: null,
};
export const useUserStore = create<UserStore>()(
@ -50,3 +52,6 @@ export const clearUserData = () => useUserStore.setState({ ...initialState });
export const setUserAccount = (userAccount: UserAccount) =>
useUserStore.setState({ userAccount });
export const setCustomerAccount = (customerAccount: UserAccount) =>
useUserStore.setState({ customerAccount });