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