Skip to content

Commit 6ea2dd3

Browse files
committed
refactor(web): remove-previous-user-data-on-address-change
1 parent ce7835f commit 6ea2dd3

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

web/src/context/AtlasProvider.tsx

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import React, { useMemo, createContext, useContext, useState, useCallback, useEffect } from "react";
22

3-
import { useQuery } from "@tanstack/react-query";
3+
import { useQuery, useQueryClient } from "@tanstack/react-query";
44
import { GraphQLClient } from "graphql-request";
55
import { decodeJwt } from "jose";
66
import { useAccount, useChainId, useSignMessage } from "wagmi";
@@ -43,6 +43,7 @@ if (!atlasUri) {
4343
const AtlasProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {
4444
const { address } = useAccount();
4545
const chainId = useChainId();
46+
const queryClient = useQueryClient();
4647
const [authToken, setAuthToken] = useSessionStorage<string | undefined>("authToken", undefined);
4748
const [isSigningIn, setIsSigningIn] = useState(false);
4849
const [isAddingUser, setIsAddingUser] = useState(false);
@@ -99,7 +100,6 @@ const AtlasProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) =
99100
} = useQuery({
100101
queryKey: [`UserSettings`],
101102
enabled: isVerified && !isUndefined(address),
102-
staleTime: Infinity,
103103
queryFn: async () => {
104104
try {
105105
if (!isVerified || isUndefined(address)) return undefined;
@@ -115,6 +115,11 @@ const AtlasProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) =
115115
refetchUser();
116116
}, [isVerified, refetchUser]);
117117

118+
// remove old user's data on address change
119+
useEffect(() => {
120+
queryClient.removeQueries({ queryKey: ["UserSettings"] });
121+
}, [address, queryClient]);
122+
118123
// this would change based on the fields we have and what defines a user to be existing
119124
const userExists = useMemo(() => {
120125
if (!user) return false;

0 commit comments

Comments
 (0)