zustand
deploy to danak / build_and_deploy (push) Has been cancelled

This commit is contained in:
2026-07-24 13:23:40 +03:30
parent f1d0a661e7
commit 18c0c721a1
3 changed files with 14 additions and 4 deletions
+2
View File
@@ -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 });
}, },
})); }));
+11 -4
View File
@@ -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 });
},
})); }));
+1
View File
@@ -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 = {