Skip to content

Commit d60794e

Browse files
authored
Merge pull request #178 from blocknative/fix/wallet-connect
Fix: WalletConnect Close. Closes #177
2 parents 12f6430 + 6cbc910 commit d60794e

File tree

5 files changed

+52
-89
lines changed

5 files changed

+52
-89
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
},
4242
"dependencies": {
4343
"@portis/web3": "^2.0.0-beta.42",
44-
"@walletconnect/web3-provider": "^1.0.0-beta.36",
44+
"@walletconnect/web3-provider": "^1.0.0-beta.45",
4545
"authereum": "^0.0.4-beta.26",
4646
"bignumber.js": "^9.0.0",
4747
"bnc-sdk": "1.0.3",

src/interfaces.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ export interface Helpers {
9494
getAddress: (provider: any) => Promise<string | any>
9595
getNetwork: (provider: any) => Promise<number | any>
9696
getBalance: (provider: any) => Promise<string | any>
97-
resetWalletState: (disconnected?: boolean) => void
97+
resetWalletState: (options: { disconnected?: boolean }) => void
9898
}
9999

100100
export interface WalletInterface {

src/modules/select/wallets/wallet-connect.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ function walletConnect(options: WalletConnectOptions): WalletModule {
2727
provider.autoRefreshOnNetworkChange = false
2828

2929
provider.wc.on('disconnect', () => {
30-
resetWalletState(true)
30+
resetWalletState({ disconnected: true })
3131
})
3232

3333
return {
@@ -76,7 +76,10 @@ function walletConnect(options: WalletConnectOptions): WalletModule {
7676
])
7777
})
7878
},
79-
disconnect: () => provider.close()
79+
disconnect: () => {
80+
provider.wc.killSession()
81+
provider.stop()
82+
}
8083
}
8184
}
8285
},

src/stores.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,14 @@ walletInterface.subscribe((walletInterface: WalletInterface | null) => {
9696
}
9797
})
9898

99-
export function resetWalletState(disconnected?: boolean) {
99+
export function resetWalletState(options: { disconnected?: boolean } = {}) {
100+
// clear all current intervals if they exist
101+
currentSyncerIntervals.forEach(
102+
(interval: number | undefined) => interval && clearInterval(interval)
103+
)
104+
100105
walletInterface.update((currentInterface: WalletInterface | null) => {
106+
const { disconnected } = options
101107
!disconnected &&
102108
currentInterface &&
103109
currentInterface.disconnect &&

yarn.lock

Lines changed: 38 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -873,56 +873,56 @@
873873
dependencies:
874874
"@types/node" "*"
875875

876-
"@walletconnect/browser@^1.0.0-beta.39":
877-
version "1.0.0-beta.39"
878-
resolved "https://registry.yarnpkg.com/@walletconnect/browser/-/browser-1.0.0-beta.39.tgz#db46d57e78d7a5e0be75c349821ef7c873e87b61"
879-
integrity sha512-u6DI2atFSCUquvXd86p+EY/TVqg9iZf3MYMVbnht2hxmuypBwZvfLkqSxqP/98bmOwUrOwbAt3/fK8vZoSfXiA==
876+
"@walletconnect/browser@^1.0.0-beta.45":
877+
version "1.0.0-beta.45"
878+
resolved "https://registry.yarnpkg.com/@walletconnect/browser/-/browser-1.0.0-beta.45.tgz#5a1aafd547dc281cabd8eec0ace47eabecd7bb3f"
879+
integrity sha512-uEA3ghgWhjSUB5Plm+mM036nM9CvAokwAO/r6YNoKx7sIkS//gojv3oGFBkijhxfOh9f4BNvTvoPTJWxkYilBw==
880880
dependencies:
881-
"@walletconnect/core" "^1.0.0-beta.39"
882-
"@walletconnect/types" "^1.0.0-beta.39"
883-
"@walletconnect/utils" "^1.0.0-beta.39"
881+
"@walletconnect/core" "^1.0.0-beta.45"
882+
"@walletconnect/types" "^1.0.0-beta.45"
883+
"@walletconnect/utils" "^1.0.0-beta.45"
884884

885-
"@walletconnect/core@^1.0.0-beta.39":
886-
version "1.0.0-beta.39"
887-
resolved "https://registry.yarnpkg.com/@walletconnect/core/-/core-1.0.0-beta.39.tgz#43d05dbabcaeea491c0ee213ed60d2236672010f"
888-
integrity sha512-cJSQe2Ao4okSvohNjA7Bs7Z+0BAznfVVTWBECIX/bGoSFpkAWabGY2Pn2gIYhobQMLSFpE6ZlZ4QfvlPO8HyPw==
885+
"@walletconnect/core@^1.0.0-beta.45":
886+
version "1.0.0-beta.45"
887+
resolved "https://registry.yarnpkg.com/@walletconnect/core/-/core-1.0.0-beta.45.tgz#55611d28c8d34208be4aac6ad18c2e25d114a39b"
888+
integrity sha512-tvoxiXSQ/O0FiBGbh5p9Nn+igC8ljJzI8I2mydBBVakPTW+1Yo/ReVXJcynocT3jdUBKsEtSvc50Z2fDgXjR9g==
889889
dependencies:
890-
"@walletconnect/types" "^1.0.0-beta.39"
891-
"@walletconnect/utils" "^1.0.0-beta.39"
890+
"@walletconnect/types" "^1.0.0-beta.45"
891+
"@walletconnect/utils" "^1.0.0-beta.45"
892892

893-
"@walletconnect/qrcode-modal@^1.0.0-beta.39":
894-
version "1.0.0-beta.39"
895-
resolved "https://registry.yarnpkg.com/@walletconnect/qrcode-modal/-/qrcode-modal-1.0.0-beta.39.tgz#c1f1b73ead0a72fb77613c390e57634feafefff6"
896-
integrity sha512-8CEtrol3s8Kki1fx3OvHn5mz54WytHunZ9gHMSqPPVe4HJITOfGFUPwM9W5c+dfVAE0ytYKck2UVv3ASpGRi5w==
893+
"@walletconnect/qrcode-modal@^1.0.0-beta.45":
894+
version "1.0.0-beta.45"
895+
resolved "https://registry.yarnpkg.com/@walletconnect/qrcode-modal/-/qrcode-modal-1.0.0-beta.45.tgz#37510dc671191c136b029e41b16a472178aa6899"
896+
integrity sha512-rxkj+DuJOOVR7Y7RiN0LcwA7IhLtcZdyrp5Xt3aJWLzPLz3n12/8LqaNWlfeLodek40VyyhbuX9PCQ/2BwSYsA==
897897
dependencies:
898898
qr-image "^3.2.0"
899899
qrcode-terminal "^0.12.0"
900900

901-
"@walletconnect/types@^1.0.0-beta.39":
902-
version "1.0.0-beta.39"
903-
resolved "https://registry.yarnpkg.com/@walletconnect/types/-/types-1.0.0-beta.39.tgz#e84463f32d6c450376db3d0ce56f0ece6608bfa7"
904-
integrity sha512-YO/g1HVnFxcMNiUI9LEWEDe5uVHw8D7JzJol+bT71iXymzolnsbG32OayCJM9nHqT48Rpz1EGIno8EjW9jH2OQ==
901+
"@walletconnect/types@^1.0.0-beta.45":
902+
version "1.0.0-beta.45"
903+
resolved "https://registry.yarnpkg.com/@walletconnect/types/-/types-1.0.0-beta.45.tgz#0ee4c78dd8e469eb2152ebaffb5e1dcee78deb84"
904+
integrity sha512-Vm/uPBNl8AWs54M/Z71tQi56IqEqNHejLm1wd4pYEYfcA1YxR76vguQt+q+aJMEyN5JYWLBbd5zqOSIuJuvNwA==
905905

906-
"@walletconnect/utils@^1.0.0-beta.39":
907-
version "1.0.0-beta.39"
908-
resolved "https://registry.yarnpkg.com/@walletconnect/utils/-/utils-1.0.0-beta.39.tgz#8909b9cffa3999b046ce32cbb21b8ddca97b9183"
909-
integrity sha512-AOlhPkK+IUzGG5iDTupKdUwNW4on1aAj5NyLMMN1+htr06hqaCV8F9HeYibSen22wdSUuLXkIQNy3SR3LPcehA==
906+
"@walletconnect/utils@^1.0.0-beta.45":
907+
version "1.0.0-beta.45"
908+
resolved "https://registry.yarnpkg.com/@walletconnect/utils/-/utils-1.0.0-beta.45.tgz#5dabde8b06cdffce35e0a84e3ec1abb9059357fb"
909+
integrity sha512-jU/IRwBxUCu92qYcXxeiSlg+9J/b3wqyYygVEQ+ZbMIMUEgjtqRebGSnrVN3Bi3kG9HP/qoiIFHHSvtRpoE/5A==
910910
dependencies:
911911
"@ethersproject/address" "^5.0.0-beta.125"
912912
"@ethersproject/bytes" "^5.0.0-beta.126"
913913
"@ethersproject/strings" "^5.0.0-beta.125"
914-
"@walletconnect/types" "^1.0.0-beta.39"
914+
"@walletconnect/types" "^1.0.0-beta.45"
915915
bignumber.js "^8.1.1"
916916

917-
"@walletconnect/web3-provider@^1.0.0-beta.36":
918-
version "1.0.0-beta.39"
919-
resolved "https://registry.yarnpkg.com/@walletconnect/web3-provider/-/web3-provider-1.0.0-beta.39.tgz#00d9b9baa4c1bea01c8883c87e3c8d9059fd6e5c"
920-
integrity sha512-/OxTrZ+yHr7dp/X5+cm82tCCy1nNtsyI0lKYxo3Ejz8vQfo6WD3vDjlGT+oY+Gz+DaFEuAlQzzsPXjvrMUUEew==
917+
"@walletconnect/web3-provider@^1.0.0-beta.45":
918+
version "1.0.0-beta.45"
919+
resolved "https://registry.yarnpkg.com/@walletconnect/web3-provider/-/web3-provider-1.0.0-beta.45.tgz#0dfef5939056a9deacc3e30f663b2be623dcea1e"
920+
integrity sha512-saxUdy3ROp2ypqxIyp2Ix2+E7MB3ghnxOECRkFy4Gvg9PLMBmnuZq7DlgJc2HcCxQqvS1iDkgGOX/fgZcknZdw==
921921
dependencies:
922-
"@walletconnect/browser" "^1.0.0-beta.39"
923-
"@walletconnect/qrcode-modal" "^1.0.0-beta.39"
924-
"@walletconnect/types" "^1.0.0-beta.39"
925-
web3-provider-engine "github:walletconnect/web3-provider-engine"
922+
"@walletconnect/browser" "^1.0.0-beta.45"
923+
"@walletconnect/qrcode-modal" "^1.0.0-beta.45"
924+
"@walletconnect/types" "^1.0.0-beta.45"
925+
web3-provider-engine "^15.0.4"
926926
xhr2-cookies "^1.1.0"
927927

928928
abbrev@1:
@@ -1754,10 +1754,10 @@ bnc-sdk@0.2.3:
17541754
dependencies:
17551755
sturdy-websocket "^0.1.12"
17561756

1757-
bnc-sdk@1.0.2:
1758-
version "1.0.2"
1759-
resolved "https://registry.yarnpkg.com/bnc-sdk/-/bnc-sdk-1.0.2.tgz#c06acb9f514663f218e305d222faef223bfbb650"
1760-
integrity sha512-MfP99PhZnyDO7ANiryLr6HpHVlUMPV18LmvK1WD24bwbUp4IQF92TRqlEx5x3BNR6uzM7q87qKgyaQ5CYy79sg==
1757+
bnc-sdk@1.0.3:
1758+
version "1.0.3"
1759+
resolved "https://registry.yarnpkg.com/bnc-sdk/-/bnc-sdk-1.0.3.tgz#f6c9f6dd216dd536181ee9e9244daad72599cbe4"
1760+
integrity sha512-FOA5fG+t9+1o11y5Cd80HM5G0cnlYyrIfvIVz9Ne4potsObUnt6OGgyL17cm0aPLFy7tLZirnIF+srnO+hnhLQ==
17611761
dependencies:
17621762
sturdy-websocket "^0.1.12"
17631763

@@ -2443,25 +2443,6 @@ eth-json-rpc-middleware@^4.1.1, eth-json-rpc-middleware@^4.1.4, eth-json-rpc-mid
24432443
pify "^3.0.0"
24442444
safe-event-emitter "^1.0.1"
24452445

2446-
"eth-json-rpc-middleware@github:walletconnect/eth-json-rpc-middleware":
2447-
version "4.1.3"
2448-
resolved "https://codeload.github.com/walletconnect/eth-json-rpc-middleware/tar.gz/dac43613b9f1bf9d45455dcb98cbb8f676f61a8a"
2449-
dependencies:
2450-
btoa "^1.2.1"
2451-
clone "^2.1.1"
2452-
eth-query "^2.1.2"
2453-
eth-sig-util "^1.4.2"
2454-
ethereumjs-block "^1.6.0"
2455-
ethereumjs-tx "^1.3.3"
2456-
ethereumjs-util "^5.1.2"
2457-
ethereumjs-vm "^2.6.0"
2458-
fetch-ponyfill "^4.0.0"
2459-
json-rpc-engine "^5.0.0"
2460-
json-rpc-error "^2.0.0"
2461-
json-stable-stringify "^1.0.1"
2462-
pify "^3.0.0"
2463-
safe-event-emitter "^1.0.1"
2464-
24652446
eth-lib@0.2.7:
24662447
version "0.2.7"
24672448
resolved "https://registry.yarnpkg.com/eth-lib/-/eth-lib-0.2.7.tgz#2f93f17b1e23aec3759cd4a3fe20c1286a3fc1ca"
@@ -5459,33 +5440,6 @@ web3-provider-engine@^15.0.4:
54595440
xhr "^2.2.0"
54605441
xtend "^4.0.1"
54615442

5462-
"web3-provider-engine@github:walletconnect/web3-provider-engine":
5463-
version "15.0.0"
5464-
resolved "https://codeload.github.com/walletconnect/web3-provider-engine/tar.gz/3db8919ecd236e27af0577a00b4922b20da63bf9"
5465-
dependencies:
5466-
async "^2.5.0"
5467-
backoff "^2.5.0"
5468-
clone "^2.0.0"
5469-
cross-fetch "^2.1.0"
5470-
eth-block-tracker "^4.2.0"
5471-
eth-json-rpc-filters "^4.0.2"
5472-
eth-json-rpc-infura "^3.1.0"
5473-
eth-json-rpc-middleware "github:walletconnect/eth-json-rpc-middleware"
5474-
eth-sig-util "^1.4.2"
5475-
ethereumjs-block "^1.2.2"
5476-
ethereumjs-tx "^1.2.0"
5477-
ethereumjs-util "^5.1.5"
5478-
ethereumjs-vm "^2.3.4"
5479-
json-rpc-error "^2.0.0"
5480-
json-stable-stringify "^1.0.1"
5481-
promise-to-callback "^1.0.0"
5482-
readable-stream "^2.2.9"
5483-
request "^2.85.0"
5484-
semaphore "^1.0.3"
5485-
ws "^5.1.1"
5486-
xhr "^2.2.0"
5487-
xtend "^4.0.1"
5488-
54895443
web3-utils@^1.2.1:
54905444
version "1.2.4"
54915445
resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.2.4.tgz#96832a39a66b05bf8862a5b0bdad2799d709d951"

0 commit comments

Comments
 (0)