@@ -1,5 +1,6 @@
|
|||||||
import { create } from "zustand";
|
import { create } from "zustand";
|
||||||
import { getToken, removeRefreshToken, removeToken } from "./func";
|
import { getToken, removeRefreshToken, removeToken } from "./func";
|
||||||
|
import { useAuthStore } from "@/pages/auth/store/AuthStore";
|
||||||
|
|
||||||
type SessionAuthStore = {
|
type SessionAuthStore = {
|
||||||
isAuthenticated: boolean;
|
isAuthenticated: boolean;
|
||||||
@@ -14,6 +15,7 @@ export const useSessionAuth = create<SessionAuthStore>((set) => ({
|
|||||||
removeToken();
|
removeToken();
|
||||||
removeRefreshToken();
|
removeRefreshToken();
|
||||||
window.isRefreshTokenExpired = false;
|
window.isRefreshTokenExpired = false;
|
||||||
|
useAuthStore.getState().reset();
|
||||||
set({ isAuthenticated: false });
|
set({ isAuthenticated: false });
|
||||||
},
|
},
|
||||||
}));
|
}));
|
||||||
|
|||||||
@@ -1,21 +1,28 @@
|
|||||||
import { create } from "zustand";
|
import { create } from "zustand";
|
||||||
import { type AuthStoreType } from "../../auth/types/AuthTypes";
|
import { type AuthStoreType } from "../../auth/types/AuthTypes";
|
||||||
|
|
||||||
export const useAuthStore = create<AuthStoreType>((set) => ({
|
const initialState = {
|
||||||
phone: "",
|
phone: "",
|
||||||
|
email: "",
|
||||||
|
stepLogin: 1,
|
||||||
|
devOtpCode: "",
|
||||||
|
};
|
||||||
|
|
||||||
|
export const useAuthStore = create<AuthStoreType>((set) => ({
|
||||||
|
...initialState,
|
||||||
setPhone(value) {
|
setPhone(value) {
|
||||||
set({ phone: value });
|
set({ phone: value });
|
||||||
},
|
},
|
||||||
email: "",
|
|
||||||
setEmail(value) {
|
setEmail(value) {
|
||||||
set({ email: value });
|
set({ email: value });
|
||||||
},
|
},
|
||||||
stepLogin: 1,
|
|
||||||
setStepLogin(value) {
|
setStepLogin(value) {
|
||||||
set({ stepLogin: value });
|
set({ stepLogin: value });
|
||||||
},
|
},
|
||||||
devOtpCode: "",
|
|
||||||
setDevOtpCode(value) {
|
setDevOtpCode(value) {
|
||||||
set({ devOtpCode: value });
|
set({ devOtpCode: value });
|
||||||
},
|
},
|
||||||
|
reset() {
|
||||||
|
set({ ...initialState });
|
||||||
|
},
|
||||||
}));
|
}));
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ export type AuthStoreType = {
|
|||||||
/** TODO: remove before production — dev-only OTP from API response */
|
/** TODO: remove before production — dev-only OTP from API response */
|
||||||
devOtpCode: string;
|
devOtpCode: string;
|
||||||
setDevOtpCode: (value: string) => void;
|
setDevOtpCode: (value: string) => void;
|
||||||
|
reset: () => void;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type LoginWithPasswordType = {
|
export type LoginWithPasswordType = {
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ const SideBar: FC = () => {
|
|||||||
title={t('sidebar.mainPage')}
|
title={t('sidebar.mainPage')}
|
||||||
isActive={isActive('/home')}
|
isActive={isActive('/home')}
|
||||||
link={Paths.home}
|
link={Paths.home}
|
||||||
activeName=''
|
activeName='dashboard'
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<SideBarItem
|
<SideBarItem
|
||||||
|
|||||||
Reference in New Issue
Block a user