From 484cc12ab6f169aef162d9b049eafba6d8d24ce5 Mon Sep 17 00:00:00 2001 From: Yuneng Jiang Date: Mon, 20 Jul 2026 20:35:51 -0700 Subject: [PATCH] fix(ui): ignore stale available-teams fetch on unmount or token change --- .../src/components/team/AvailableTeamsPanel.tsx | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/ui/litellm-dashboard/src/components/team/AvailableTeamsPanel.tsx b/ui/litellm-dashboard/src/components/team/AvailableTeamsPanel.tsx index 30d0f067be5..d7768e8376f 100644 --- a/ui/litellm-dashboard/src/components/team/AvailableTeamsPanel.tsx +++ b/ui/litellm-dashboard/src/components/team/AvailableTeamsPanel.tsx @@ -16,6 +16,8 @@ const AvailableTeamsPanel: React.FC = ({ accessToken, userI const [isLoading, setIsLoading] = useState(true); useEffect(() => { + let ignore = false; + const fetchAvailableTeams = async () => { if (!accessToken || !userID) { setIsLoading(false); @@ -24,15 +26,23 @@ const AvailableTeamsPanel: React.FC = ({ accessToken, userI try { const response = await availableTeamListCall(accessToken); - setAvailableTeams(response); + if (!ignore) { + setAvailableTeams(response); + } } catch (error) { console.error("Error fetching available teams:", error); } finally { - setIsLoading(false); + if (!ignore) { + setIsLoading(false); + } } }; fetchAvailableTeams(); + + return () => { + ignore = true; + }; }, [accessToken, userID]); const handleJoinTeam = async (teamId: string) => {