Skip to content

Commit fad67fa

Browse files
authored
fix: bump multichain api client and add event listener clean up for notifications (#60)
1 parent e7ea2c0 commit fad67fa

4 files changed

Lines changed: 19 additions & 7 deletions

File tree

packages/connect-multichain/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
### Changed
11+
12+
- Bump `@metamask/multichain-api-client` to prevent `RPC request with id already seen.` error on extension when using firefox ([#60](https://github.com/MetaMask/connect-monorepo/pull/60))
13+
1014
### Fixed
1115

1216
- Fixed incorrect caching of error responses for some requests/events ([#59](https://github.com/MetaMask/connect-monorepo/pull/59))

packages/connect-multichain/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@
6969
"@metamask/analytics": "workspace:^",
7070
"@metamask/mobile-wallet-protocol-core": "^0.3.0",
7171
"@metamask/mobile-wallet-protocol-dapp-client": "^0.2.1",
72-
"@metamask/multichain-api-client": "^0.8.1",
72+
"@metamask/multichain-api-client": "^0.10.1",
7373
"@metamask/multichain-ui": "workspace:^",
7474
"@metamask/onboarding": "^1.0.1",
7575
"@metamask/utils": "^11.8.1",

packages/connect-multichain/src/multichain/transports/default/index.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ export class DefaultTransport implements ExtendedTransport {
3838
readonly #pendingRequests = new Map<string, PendingRequest>();
3939

4040
#handleResponseListener: ((event: MessageEvent) => void) | undefined;
41+
4142
#handleNotificationListener: ((event: MessageEvent) => void) | undefined;
4243

4344
#notifyCallbacks(data: unknown): void {
@@ -131,8 +132,8 @@ export class DefaultTransport implements ExtendedTransport {
131132

132133
// Add the listener
133134
// eslint-disable-next-line no-restricted-globals
134-
135135
window.addEventListener('message', this.#handleResponseListener);
136+
// eslint-disable-next-line no-restricted-globals
136137
window.addEventListener('message', this.#handleNotificationListener);
137138
}
138139

@@ -270,6 +271,13 @@ export class DefaultTransport implements ExtendedTransport {
270271
this.#handleResponseListener = undefined;
271272
}
272273

274+
// Remove the notification listener when disconnecting
275+
if (this.#handleNotificationListener) {
276+
// eslint-disable-next-line no-restricted-globals
277+
window.removeEventListener('message', this.#handleNotificationListener);
278+
this.#handleNotificationListener = undefined;
279+
}
280+
273281
// Reject all pending requests
274282
for (const [, request] of this.#pendingRequests) {
275283
clearTimeout(request.timeout);

yarn.lock

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4044,7 +4044,7 @@ __metadata:
40444044
"@metamask/auto-changelog": "npm:^3.4.4"
40454045
"@metamask/mobile-wallet-protocol-core": "npm:^0.3.0"
40464046
"@metamask/mobile-wallet-protocol-dapp-client": "npm:^0.2.1"
4047-
"@metamask/multichain-api-client": "npm:^0.8.1"
4047+
"@metamask/multichain-api-client": "npm:^0.10.1"
40484048
"@metamask/multichain-ui": "workspace:^"
40494049
"@metamask/onboarding": "npm:^1.0.1"
40504050
"@metamask/utils": "npm:^11.8.1"
@@ -4453,10 +4453,10 @@ __metadata:
44534453
languageName: node
44544454
linkType: hard
44554455

4456-
"@metamask/multichain-api-client@npm:^0.8.1":
4457-
version: 0.8.1
4458-
resolution: "@metamask/multichain-api-client@npm:0.8.1"
4459-
checksum: 10/a6e079b4acce94d25ffdccbbf7f09ce1b5c650ceec6119e7002f8095cd1eb18c59a26fbfe0ac775c60862e38c657273dad507e27ddbdc166fea404b03f54bdb6
4456+
"@metamask/multichain-api-client@npm:^0.10.1":
4457+
version: 0.10.1
4458+
resolution: "@metamask/multichain-api-client@npm:0.10.1"
4459+
checksum: 10/adedb90f433cd619eee54943197dc32eb30e461173e928ea698ec70bf8c6780d9ac0bb9b12a22a17f984170841c071d228aa49e6988d5060e8a30e99c433a8f5
44604460
languageName: node
44614461
linkType: hard
44624462

0 commit comments

Comments
 (0)