From 6751f418596ca98871a178e47abdc2e56f14c9aa Mon Sep 17 00:00:00 2001 From: PEDZEO Date: Sun, 18 Jan 2026 23:03:38 +0300 Subject: [PATCH] Refactor authentication flow to check admin status before updating loading state --- src/store/auth.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/store/auth.ts b/src/store/auth.ts index 9799c21..a31b075 100644 --- a/src/store/auth.ts +++ b/src/store/auth.ts @@ -145,6 +145,8 @@ export const useAuthStore = create()( const newToken = await tokenRefreshManager.refreshAccessToken() if (newToken) { const user = await authApi.getMe() + // Сначала проверяем admin статус, потом снимаем isLoading + await get().checkAdminStatus() set({ accessToken: newToken, refreshToken, @@ -152,7 +154,6 @@ export const useAuthStore = create()( isAuthenticated: true, isLoading: false, }) - get().checkAdminStatus() } else { tokenStorage.clearTokens() set({ @@ -168,6 +169,8 @@ export const useAuthStore = create()( try { const user = await authApi.getMe() + // Сначала проверяем admin статус, потом снимаем isLoading + await get().checkAdminStatus() set({ accessToken, refreshToken, @@ -175,13 +178,14 @@ export const useAuthStore = create()( isAuthenticated: true, isLoading: false, }) - get().checkAdminStatus() } catch { // Token might be invalid on server, try to refresh const newToken = await tokenRefreshManager.refreshAccessToken() if (newToken) { try { const user = await authApi.getMe() + // Сначала проверяем admin статус, потом снимаем isLoading + await get().checkAdminStatus() set({ accessToken: newToken, refreshToken, @@ -189,7 +193,6 @@ export const useAuthStore = create()( isAuthenticated: true, isLoading: false, }) - get().checkAdminStatus() } catch { tokenStorage.clearTokens() set({