From dfac6856a4b1f1196423022b366b0df8cc555d14 Mon Sep 17 00:00:00 2001 From: Dominik Zborowski Date: Fri, 8 Nov 2024 11:06:26 +0100 Subject: [PATCH] Fix follower --- app.vue | 7 +------ composables/web3-provider/useBaseProvider.ts | 15 +++++++++++++-- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/app.vue b/app.vue index fd6ab8b4..0bf3ea41 100644 --- a/app.vue +++ b/app.vue @@ -15,7 +15,6 @@ const { isSearchOpen, isModalOpen, isWalletConnect, - isMobile, } = storeToRefs(useAppStore()) const { addProviderEvents, removeProviderEvents } = useBrowserExtensionProvider() @@ -62,13 +61,9 @@ const setupWeb3Instances = async () => { window.web3 = getWeb3(PROVIDERS.RPC) } - // on mobile we need to initialize WalletConnect provider - if (isMobile.value) { - await initWalletConnectProvider() - } - // reconnect wallet connect if (isWalletConnect.value) { + await initWalletConnectProvider() await connectWalletConnect() } } diff --git a/composables/web3-provider/useBaseProvider.ts b/composables/web3-provider/useBaseProvider.ts index 64d46a3c..5dde7a43 100644 --- a/composables/web3-provider/useBaseProvider.ts +++ b/composables/web3-provider/useBaseProvider.ts @@ -1,11 +1,22 @@ import { INJECTED_PROVIDER } from '@/shared/provider' const connect = async () => { - const { isWalletConnect, isMobile } = storeToRefs(useAppStore()) - const { connect: connectWalletConnect } = useWalletConnectProvider() + const { isWalletConnect, isMobile, walletConnectProvider } = + storeToRefs(useAppStore()) + const { + connect: connectWalletConnect, + initProvider: initWalletConnectProvider, + } = useWalletConnectProvider() const { connect: connectBrowserExtension } = useBrowserExtensionProvider() if (isWalletConnect.value || isMobile.value) { + await initWalletConnectProvider() + walletConnectProvider.value?.on('display_uri', (data: string) => { + const deepLink = walletConnectDeepLinkUrl(data, { + withRedirectUrl: true, + }) + navigateTo(deepLink, { external: true }) + }) await connectWalletConnect() return }