diff --git a/src/containers/Claim.tsx b/src/containers/Claim.tsx index 91b1a70..4ab4611 100644 --- a/src/containers/Claim.tsx +++ b/src/containers/Claim.tsx @@ -40,6 +40,7 @@ const Claim = () => { setAlreadyClaimed, freeGamesData, setFreeGamesData, + resetAllState, } = useUIStore(); const { connectors, connect, connector } = useConnect(); @@ -324,7 +325,7 @@ const Claim = () => { onClick={() => { disconnect(); clickPlay(); - setAlreadyClaimed(false); + resetAllState(); }} className="h-8" > diff --git a/src/containers/Claimed.tsx b/src/containers/Claimed.tsx index 386075b..5ddb46a 100644 --- a/src/containers/Claimed.tsx +++ b/src/containers/Claimed.tsx @@ -26,12 +26,11 @@ const Claimed = () => { isRevealingAll, setIsRevealingAll, setPreparingReveal, - setClaimed, freeGamesData, setFreeGamesData, setAdventurersMetadata, - setAlreadyClaimed, skipGameFetch, + resetAllState, } = useUIStore(); const [unrevealedGamesWithMetadata, setUnrevealedGamesWithMetadata] = useState([]); @@ -309,8 +308,7 @@ const Claimed = () => { onClick={() => { disconnect(); clickPlay(); - setClaimed(false); - setAlreadyClaimed(false); + resetAllState(); }} className="h-8" > @@ -430,8 +428,7 @@ const Claimed = () => { onClick={() => { disconnect(); clickPlay(); - setClaimed(false); - setAlreadyClaimed(false); + resetAllState(); }} > Click Here to Claim diff --git a/src/hooks/useUIStore.ts b/src/hooks/useUIStore.ts index a43cf3b..25aa8a9 100644 --- a/src/hooks/useUIStore.ts +++ b/src/hooks/useUIStore.ts @@ -1,9 +1,7 @@ import { create } from "zustand"; -import { AdventurerMetadata, Network } from "../lib/types"; +import { AdventurerMetadata } from "../lib/types"; type State = { - network: Network; - setNetwork: (network: Network) => void; claimed: boolean; setClaimed: (claimed: boolean) => void; claiming: boolean; @@ -30,11 +28,10 @@ type State = { setAlreadyClaimed: (alreadyClaimed: boolean) => void; skipGameFetch: boolean; setSkipGameFetch: (skipGameFetch: boolean) => void; + resetAllState: () => void; }; export const useUIStore = create((set) => ({ - network: undefined, - setNetwork: (network) => set({ network }), claimed: false, setClaimed: (claimed) => set({ claimed }), claiming: false, @@ -61,4 +58,20 @@ export const useUIStore = create((set) => ({ setAlreadyClaimed: (alreadyClaimed) => set({ alreadyClaimed }), skipGameFetch: false, setSkipGameFetch: (skipGameFetch) => set({ skipGameFetch }), + resetAllState: () => + set({ + claimed: false, + claiming: false, + fetchingMetadata: false, + preparingClaim: false, + preparingReveal: false, + adventurersMetadata: [], + revealedAllMetadata: [], + claimedData: [], + freeGamesData: [], + username: "", + isRevealingAll: false, + alreadyClaimed: false, + skipGameFetch: false, + }), }));