From 8f9bef97446cc376c26255d919d0ceeaf4a8b1ed Mon Sep 17 00:00:00 2001 From: ectasy663 Date: Wed, 8 Jul 2026 15:09:19 +0530 Subject: [PATCH] Fix state sync for target exam tag in header --- src/hooks/useActiveUser.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/hooks/useActiveUser.ts b/src/hooks/useActiveUser.ts index 7d67ee0..75a9e6a 100644 --- a/src/hooks/useActiveUser.ts +++ b/src/hooks/useActiveUser.ts @@ -67,6 +67,13 @@ export function useActiveUser() { } }, [fetchUserProfile]); + useEffect(() => { + if (typeof window === "undefined") return; + const handleUpdate = () => fetchUserProfile(userId); + window.addEventListener('pragativeer-user-updated', handleUpdate); + return () => window.removeEventListener('pragativeer-user-updated', handleUpdate); + }, [userId, fetchUserProfile]); + const switchUser = useCallback((newId: string) => { if (typeof window !== "undefined") { localStorage.setItem("activeUserId", newId); @@ -116,6 +123,9 @@ export function useActiveUser() { error, switchUser, hasAccessTo, - refreshUser: () => fetchUserProfile(userId) + refreshUser: async () => { + await fetchUserProfile(userId); + window.dispatchEvent(new CustomEvent('pragativeer-user-updated')); + } }; }