From 5286c42def8fc65172e202ff937ede4cffb7a965 Mon Sep 17 00:00:00 2001 From: gusevpm Date: Thu, 6 Nov 2025 19:05:29 +0300 Subject: [PATCH] Fix beacon wallet reconnection --- src/components/ConnectWallet.vue | 10 +++++++--- src/utils/wallet.js | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/components/ConnectWallet.vue b/src/components/ConnectWallet.vue index 5834b851..bd8f5fae 100644 --- a/src/components/ConnectWallet.vue +++ b/src/components/ConnectWallet.vue @@ -105,10 +105,14 @@ export default { if(Wallet.wallet) { await Wallet.wallet.clearActiveAccount(); } + localStorage.removeItem('beacon:accounts') - localStorage.setItem('beacon:active-peer', ''); - localStorage.setItem('beacon:active-account', ''); - Wallet.wallet = null + localStorage.removeItem('beacon:active-peer'); + localStorage.removeItem('beacon:active-account'); + localStorage.removeItem('beacon:communication-peers-dapp'); + localStorage.removeItem('beacon:postmessage-peers-dapp'); + + // Wallet.wallet = null Wallet.isPermissionGiven = false this.account = null } diff --git a/src/utils/wallet.js b/src/utils/wallet.js index a7729c96..fb90eba8 100644 --- a/src/utils/wallet.js +++ b/src/utils/wallet.js @@ -81,7 +81,7 @@ export class Wallet { const connectionTimes = parsedAccounts.map(item => item.connectedAt); const recentConnectionTime = Math.max(...connectionTimes); const lastAccount = parsedAccounts.find(item => item.connectedAt === recentConnectionTime); - const extension = peers.find(item => item.extensionId === lastAccount.origin.id || item.publicKey === lastAccount.origin.id); + const extension = peers.find(item => item.extensionId === lastAccount?.origin?.id || item.publicKey === lastAccount?.origin?.id); if(extension) { lastAccount.walletName = extension.name