From 276027045ec3066693942243e7f55e9765772da5 Mon Sep 17 00:00:00 2001 From: Linus Flood Date: Mon, 8 Dec 2025 14:56:52 +0000 Subject: [PATCH] Merged in fix/mypages-menu-loggedin-out (pull request #3316) feat(menu): fix race condition on auth token/logged in/out * feat(menu): fix race condition on auth token/logged in/out Approved-by: Anton Gunnarsson --- .../Header/MainMenu/MyPagesMenuWrapper/index.tsx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/apps/scandic-web/components/Header/MainMenu/MyPagesMenuWrapper/index.tsx b/apps/scandic-web/components/Header/MainMenu/MyPagesMenuWrapper/index.tsx index 7b6d0acec..3f3046d3e 100644 --- a/apps/scandic-web/components/Header/MainMenu/MyPagesMenuWrapper/index.tsx +++ b/apps/scandic-web/components/Header/MainMenu/MyPagesMenuWrapper/index.tsx @@ -25,7 +25,8 @@ export default function MyPagesMenuWrapper() { const lang = useLang() const loginPathname = useLazyPathname({ includeSearchParams: true }) - const { data: session } = useSession() + const { data: session, status } = useSession() + const isSessionLoading = status === "loading" const isUserLoggedIn = isValidSession(session) const { data: user, isLoading: isLoadingUser } = trpc.user.name.useQuery( @@ -34,6 +35,7 @@ export default function MyPagesMenuWrapper() { refetchOnWindowFocus: true, refetchInterval: 300_000, refetchOnReconnect: "always", + enabled: isUserLoggedIn, } ) const { data: membership, isLoading: isLoadingMembership } = @@ -46,11 +48,16 @@ export default function MyPagesMenuWrapper() { level: MembershipLevelEnum[membership?.membershipLevel ?? "L1"], }, { - enabled: !!membership?.membershipLevel, + enabled: isUserLoggedIn && !!membership?.membershipLevel, } ) - if (isLoadingUser || isLoadingMembership || isLoadingMembershipLevel) { + if ( + isLoadingUser || + isLoadingMembership || + isLoadingMembershipLevel || + isSessionLoading + ) { return }