The issue I am having is that when I login using Metamask after signing with my wallet and it logging in the walletconnect login popup appears, I close it and refresh the page and it pops up again.
function Header() {
const {
authenticate,
isWeb3Enabled,
isAuthenticated,
user,
enableWeb3,
Moralis,
} = useMoralis();
const { logout, isAuthenticating } = useMoralis();
async function authWalletConnect() {
const user = authenticate({
provider: "walletconnect",
chainId: 56,
// mobileLinks: [
// "metamask",
// "trust",
// "rainbow",
// "argent",
// "imtoken",
// "pillar",
// ],
signingMessage: "Welcome!",
});
console.log(user);
}
useEffect(() => {
if (!isWeb3Enabled && isAuthenticated) {
enableWeb3({ provider: "walletconnect", chainId: 56 });
console.log("web3 activated");
}
}, [isWeb3Enabled, isAuthenticated, enableWeb3]);
if (typeof window === "object") {
document.addEventListener("visibilitychange", () => {
if (document.visibilityState === "hidden") {
window.localStorage.removeItem("WALLETCONNECT_DEEPLINK_CHOICE");
}
});
}
const [click, setClick] = useState(false);
const handleMenuClick = () => setClick(!click);
if (!isAuthenticated && !user) {
console.log(user);
return (
<FixedHeader>
<HeaderContainer>
<BrandingContainer>
<HeaderList click={click}>
<HeaderListItem>
<Link href="/about">
<HeaderListLink>About</HeaderListLink>
</Link>
</HeaderListItem>
{ProjectDetails.minting_menu_link && (
<HeaderListItem>
<Link href="/minting">
<HeaderListLink>Minting</HeaderListLink>
</Link>
</HeaderListItem>
)}
<HeaderListItem>
<Link href="/roadmap">
<HeaderListLink>Roadmap</HeaderListLink>
</Link>
</HeaderListItem>
<HeaderListItem>
<Link href="/the-team">
<HeaderListLink>The Team</HeaderListLink>
</Link>
</HeaderListItem>
<HeaderListItem>
<Link href="/gallery">
<HeaderListLink>Gallery</HeaderListLink>
</Link>
</HeaderListItem>
</HeaderList>
</BrandingContainer>
<ConnectContainer>
<HeaderSocials>
<SocialLinks
twitterLink={ProjectDetails.social_links.twitter}
openseaLink={ProjectDetails.social_links.opensea}
discordLink={ProjectDetails.social_links.discord}
bgColor="var(--purple)"
bgHoverColor="var(--pink)"
iconColor="var(--white-off)"
iconHoverColor="var(--white-pure)"
/>
</HeaderSocials>
<MetaMaskIconBtn
onClick={() =>
authenticate({ signingMessage: "Connecting to Project" })
}
>
<MetaMaskIcon
src="/images/metamask_150px.png"
alt="Metamask Icon"
/>
</MetaMaskIconBtn>
<MetaMaskIconBtn onClick={() => authWalletConnect()}>
<MetaMaskIcon
src="/images/walletconnect_150px.png"
alt="Walletconnect Icon"
/>
</MetaMaskIconBtn>
<MobileMenuIcon onClick={handleMenuClick}>
{click ? <FaTimes /> : <FaBars />}
</MobileMenuIcon>
</ConnectContainer>
</HeaderContainer>
</FixedHeader>
);
}
return (
<FixedHeader>
<HeaderContainer>
<BrandingContainer>
<HeaderList click={click}>
<MobileBranding>Project</MobileBranding>
<HeaderListItem>
<Link href="/about">
<HeaderListLink>About</HeaderListLink>
</Link>
</HeaderListItem>
{ProjectDetails.minting_menu_link && (
<HeaderListItem>
<Link href="/minting">
<HeaderListLink>Minting</HeaderListLink>
</Link>
</HeaderListItem>
)}
<HeaderListItem>
<Link href="/roadmap">
<HeaderListLink>Roadmap</HeaderListLink>
</Link>
</HeaderListItem>
<HeaderListItem>
<Link href="/the-team">
<HeaderListLink>The Team</HeaderListLink>
</Link>
</HeaderListItem>
<HeaderListItem>
<Link href="/gallery">
<HeaderListLink>Gallery</HeaderListLink>
</Link>
</HeaderListItem>
</HeaderList>
</BrandingContainer>
<ConnectContainer>
<HeaderSocials>
<SocialLinks
twitterLink={ProjectDetails.social_links.twitter}
openseaLink={ProjectDetails.social_links.opensea}
discordLink={ProjectDetails.social_links.discord}
bgColor="var(--purple)"
bgHoverColor="var(--pink)"
iconColor="var(--white-off)"
iconHoverColor="var(--white-pure)"
/>
</HeaderSocials>
<ConnectWalletButton
isLoading={isAuthenticating}
onClick={() => logout()}
disabled={isAuthenticating}
>
Logout
</ConnectWalletButton>
<MobileMenuIcon onClick={handleMenuClick}>
{click ? <FaTimes /> : <FaBars />}
</MobileMenuIcon>
</ConnectContainer>
</HeaderContainer>
</FixedHeader>
);
}
export default Header;