@metamask/connect-multichain 0.5.3 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/CHANGELOG.md +41 -1
  2. package/README.md +30 -22
  3. package/dist/browser/es/connect-multichain.d.mts +29 -4
  4. package/dist/browser/es/connect-multichain.mjs +636 -335
  5. package/dist/browser/es/connect-multichain.mjs.map +1 -1
  6. package/dist/browser/es/metafile-esm.json +1 -1
  7. package/dist/browser/iife/connect-multichain.d.ts +29 -4
  8. package/dist/browser/iife/connect-multichain.js +3487 -3072
  9. package/dist/browser/iife/connect-multichain.js.map +1 -1
  10. package/dist/browser/iife/metafile-iife.json +1 -1
  11. package/dist/browser/umd/connect-multichain.d.ts +29 -4
  12. package/dist/browser/umd/connect-multichain.js +636 -335
  13. package/dist/browser/umd/connect-multichain.js.map +1 -1
  14. package/dist/browser/umd/metafile-cjs.json +1 -1
  15. package/dist/node/cjs/connect-multichain.d.ts +29 -4
  16. package/dist/node/cjs/connect-multichain.js +454 -153
  17. package/dist/node/cjs/connect-multichain.js.map +1 -1
  18. package/dist/node/cjs/metafile-cjs.json +1 -1
  19. package/dist/node/es/connect-multichain.d.mts +29 -4
  20. package/dist/node/es/connect-multichain.mjs +454 -153
  21. package/dist/node/es/connect-multichain.mjs.map +1 -1
  22. package/dist/node/es/metafile-esm.json +1 -1
  23. package/dist/react-native/es/connect-multichain.d.mts +29 -4
  24. package/dist/react-native/es/connect-multichain.mjs +629 -328
  25. package/dist/react-native/es/connect-multichain.mjs.map +1 -1
  26. package/dist/react-native/es/metafile-esm.json +1 -1
  27. package/dist/src/domain/multichain/index.d.ts +15 -4
  28. package/dist/src/domain/multichain/index.d.ts.map +1 -1
  29. package/dist/src/domain/multichain/index.js +14 -0
  30. package/dist/src/domain/multichain/index.js.map +1 -1
  31. package/dist/src/domain/multichain/types.d.ts +14 -0
  32. package/dist/src/domain/multichain/types.d.ts.map +1 -1
  33. package/dist/src/multichain/index.d.ts +3 -2
  34. package/dist/src/multichain/index.d.ts.map +1 -1
  35. package/dist/src/multichain/index.js +158 -61
  36. package/dist/src/multichain/index.js.map +1 -1
  37. package/dist/src/multichain/transports/default/index.d.ts +3 -1
  38. package/dist/src/multichain/transports/default/index.d.ts.map +1 -1
  39. package/dist/src/multichain/transports/default/index.js +17 -11
  40. package/dist/src/multichain/transports/default/index.js.map +1 -1
  41. package/dist/src/multichain/transports/multichainApiClientWrapper/index.d.ts +3 -1
  42. package/dist/src/multichain/transports/multichainApiClientWrapper/index.d.ts.map +1 -1
  43. package/dist/src/multichain/transports/multichainApiClientWrapper/index.js +28 -32
  44. package/dist/src/multichain/transports/multichainApiClientWrapper/index.js.map +1 -1
  45. package/dist/src/multichain/transports/mwp/index.d.ts +15 -2
  46. package/dist/src/multichain/transports/mwp/index.d.ts.map +1 -1
  47. package/dist/src/multichain/transports/mwp/index.js +161 -39
  48. package/dist/src/multichain/transports/mwp/index.js.map +1 -1
  49. package/dist/src/multichain/utils/index.d.ts +23 -0
  50. package/dist/src/multichain/utils/index.d.ts.map +1 -1
  51. package/dist/src/multichain/utils/index.js +94 -4
  52. package/dist/src/multichain/utils/index.js.map +1 -1
  53. package/dist/src/polyfills/buffer-shim.js +4 -14
  54. package/dist/src/polyfills/buffer-shim.js.map +1 -1
  55. package/dist/src/store/adapters/web.d.ts +1 -1
  56. package/dist/src/store/adapters/web.d.ts.map +1 -1
  57. package/dist/src/store/adapters/web.js +1 -1
  58. package/dist/src/store/adapters/web.js.map +1 -1
  59. package/dist/types/connect-multichain.d.ts +29 -4
  60. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/multichain/transports/default/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/multichain/transports/default/index.ts"],"names":[],"mappings":"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"}
@@ -3,11 +3,13 @@ import type { MetaMaskConnectMultichain } from 'src/multichain';
3
3
  export declare class MultichainApiClientWrapperTransport implements Transport {
4
4
  #private;
5
5
  private readonly metamaskConnectMultichain;
6
+ notificationListener: (() => void) | undefined;
6
7
  constructor(metamaskConnectMultichain: MetaMaskConnectMultichain);
7
8
  isTransportDefined(): boolean;
8
9
  clearNotificationCallbacks(): void;
9
10
  notifyCallbacks(data: unknown): void;
10
- setupNotifcationListener(): void;
11
+ clearTransportNotificationListener(): void;
12
+ setupTransportNotificationListener(): void;
11
13
  connect(): Promise<void>;
12
14
  disconnect(): Promise<void>;
13
15
  isConnected(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/multichain/transports/multichainApiClientWrapper/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAEV,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,iCAAiC,CAAC;AAIzC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAchE,qBAAa,mCAAoC,YAAW,SAAS;;IAMjE,OAAO,CAAC,QAAQ,CAAC,yBAAyB;gBAAzB,yBAAyB,EAAE,yBAAyB;IAGvE,kBAAkB,IAAI,OAAO;IAQ7B,0BAA0B,IAAI,IAAI;IAIlC,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAMpC,wBAAwB,IAAI,IAAI;IAM1B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAMxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,WAAW,IAAI,OAAO;IAIhB,OAAO,CACX,UAAU,SAAS,gBAAgB,EACnC,UAAU,SAAS,iBAAiB,EAEpC,MAAM,EAAE,UAAU,EAClB,QAAQ,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAO,GAClC,OAAO,CAAC,UAAU,CAAC;IAwBtB,cAAc,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI;CAqF9D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/multichain/transports/multichainApiClientWrapper/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAGV,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,iCAAiC,CAAC;AAIzC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAMhE,qBAAa,mCAAoC,YAAW,SAAS;;IAMjE,OAAO,CAAC,QAAQ,CAAC,yBAAyB;IAH5C,oBAAoB,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;gBAG5B,yBAAyB,EAAE,yBAAyB;IAGvE,kBAAkB,IAAI,OAAO;IAQ7B,0BAA0B,IAAI,IAAI;IAIlC,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAMpC,kCAAkC,IAAI,IAAI;IAK1C,kCAAkC,IAAI,IAAI;IAUpC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAKxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,WAAW,IAAI,OAAO;IAIhB,OAAO,CACX,UAAU,SAAS,gBAAgB,EACnC,UAAU,SAAS,iBAAiB,EAEpC,MAAM,EAAE,UAAU,EAClB,QAAQ,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAO,GAClC,OAAO,CAAC,UAAU,CAAC;IAwBtB,cAAc,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI;CAsF9D"}
@@ -1,3 +1,6 @@
1
+ /* eslint-disable no-restricted-syntax -- Private class properties use established patterns */
2
+ /* eslint-disable @typescript-eslint/explicit-function-return-type -- Inferred types are sufficient */
3
+ /* eslint-disable @typescript-eslint/parameter-properties -- Constructor shorthand is intentional */
1
4
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
5
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
6
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -12,27 +15,13 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
12
15
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
13
16
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
14
17
  };
15
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
16
- if (kind === "m") throw new TypeError("Private method is not writable");
17
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
18
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
19
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
20
- };
21
- var _MultichainApiClientWrapperTransport_instances, _MultichainApiClientWrapperTransport_requestId, _MultichainApiClientWrapperTransport_notificationCallbacks, _MultichainApiClientWrapperTransport_walletCreateSession, _MultichainApiClientWrapperTransport_walletGetSession, _MultichainApiClientWrapperTransport_walletRevokeSession, _MultichainApiClientWrapperTransport_walletInvokeMethod;
18
+ var _MultichainApiClientWrapperTransport_instances, _MultichainApiClientWrapperTransport_notificationCallbacks, _MultichainApiClientWrapperTransport_walletCreateSession, _MultichainApiClientWrapperTransport_walletGetSession, _MultichainApiClientWrapperTransport_walletRevokeSession, _MultichainApiClientWrapperTransport_walletInvokeMethod;
22
19
  import { providerErrors } from '@metamask/rpc-errors';
23
- // uint32 (two's complement) max
24
- // more conservative than Number.MAX_SAFE_INTEGER
25
- const MAX = 4294967295;
26
- let idCounter = Math.floor(Math.random() * MAX);
27
- const getUniqueId = () => {
28
- idCounter = (idCounter + 1) % MAX;
29
- return idCounter;
30
- };
20
+ import { getUniqueRequestId } from '../../utils';
31
21
  export class MultichainApiClientWrapperTransport {
32
22
  constructor(metamaskConnectMultichain) {
33
23
  _MultichainApiClientWrapperTransport_instances.add(this);
34
24
  this.metamaskConnectMultichain = metamaskConnectMultichain;
35
- _MultichainApiClientWrapperTransport_requestId.set(this, getUniqueId());
36
25
  _MultichainApiClientWrapperTransport_notificationCallbacks.set(this, new Set());
37
26
  }
38
27
  isTransportDefined() {
@@ -51,14 +40,22 @@ export class MultichainApiClientWrapperTransport {
51
40
  callback(data);
52
41
  });
53
42
  }
54
- setupNotifcationListener() {
55
- this.metamaskConnectMultichain.transport.onNotification(this.notifyCallbacks.bind(this));
43
+ clearTransportNotificationListener() {
44
+ var _a;
45
+ (_a = this.notificationListener) === null || _a === void 0 ? void 0 : _a.call(this);
46
+ this.notificationListener = undefined;
47
+ }
48
+ setupTransportNotificationListener() {
49
+ if (!this.isTransportDefined() || this.notificationListener) {
50
+ return;
51
+ }
52
+ this.notificationListener =
53
+ this.metamaskConnectMultichain.transport.onNotification(this.notifyCallbacks.bind(this));
56
54
  }
57
55
  connect() {
58
56
  return __awaiter(this, void 0, void 0, function* () {
59
57
  console.log('📚 connect');
60
- // noop
61
- return Promise.resolve();
58
+ yield this.metamaskConnectMultichain.emitSessionChanged();
62
59
  });
63
60
  }
64
61
  disconnect() {
@@ -71,8 +68,7 @@ export class MultichainApiClientWrapperTransport {
71
68
  }
72
69
  request(params_1) {
73
70
  return __awaiter(this, arguments, void 0, function* (params, _options = {}) {
74
- var _a, _b;
75
- const id = (__classPrivateFieldSet(this, _MultichainApiClientWrapperTransport_requestId, (_b = __classPrivateFieldGet(this, _MultichainApiClientWrapperTransport_requestId, "f"), _a = _b++, _b), "f"), _a);
71
+ const id = getUniqueRequestId();
76
72
  const requestPayload = Object.assign({ id, jsonrpc: '2.0' }, params);
77
73
  switch (requestPayload.method) {
78
74
  case 'wallet_createSession':
@@ -90,18 +86,15 @@ export class MultichainApiClientWrapperTransport {
90
86
  });
91
87
  }
92
88
  onNotification(callback) {
93
- if (!this.isTransportDefined()) {
94
- __classPrivateFieldGet(this, _MultichainApiClientWrapperTransport_notificationCallbacks, "f").add(callback);
95
- return () => {
96
- __classPrivateFieldGet(this, _MultichainApiClientWrapperTransport_notificationCallbacks, "f").delete(callback);
97
- };
98
- }
99
- return this.metamaskConnectMultichain.transport.onNotification(callback);
89
+ this.setupTransportNotificationListener();
90
+ __classPrivateFieldGet(this, _MultichainApiClientWrapperTransport_notificationCallbacks, "f").add(callback);
91
+ return () => {
92
+ __classPrivateFieldGet(this, _MultichainApiClientWrapperTransport_notificationCallbacks, "f").delete(callback);
93
+ };
100
94
  }
101
95
  }
102
- _MultichainApiClientWrapperTransport_requestId = new WeakMap(), _MultichainApiClientWrapperTransport_notificationCallbacks = new WeakMap(), _MultichainApiClientWrapperTransport_instances = new WeakSet(), _MultichainApiClientWrapperTransport_walletCreateSession = function _MultichainApiClientWrapperTransport_walletCreateSession(request) {
96
+ _MultichainApiClientWrapperTransport_notificationCallbacks = new WeakMap(), _MultichainApiClientWrapperTransport_instances = new WeakSet(), _MultichainApiClientWrapperTransport_walletCreateSession = function _MultichainApiClientWrapperTransport_walletCreateSession(request) {
103
97
  return __awaiter(this, void 0, void 0, function* () {
104
- console.log('📚 #walletCreateSession', request);
105
98
  const createSessionParams = request.params;
106
99
  const scopes = Object.keys(Object.assign(Object.assign({}, createSessionParams.optionalScopes), createSessionParams.requiredScopes));
107
100
  const scopeAccounts = [];
@@ -141,11 +134,14 @@ _MultichainApiClientWrapperTransport_requestId = new WeakMap(), _MultichainApiCl
141
134
  });
142
135
  }, _MultichainApiClientWrapperTransport_walletRevokeSession = function _MultichainApiClientWrapperTransport_walletRevokeSession(request) {
143
136
  return __awaiter(this, void 0, void 0, function* () {
137
+ var _a;
144
138
  if (!this.isTransportDefined()) {
145
139
  return { jsonrpc: '2.0', id: request.id, result: true };
146
140
  }
141
+ const revokeSessionParams = request.params;
142
+ const scopes = (_a = revokeSessionParams === null || revokeSessionParams === void 0 ? void 0 : revokeSessionParams.scopes) !== null && _a !== void 0 ? _a : [];
147
143
  try {
148
- this.metamaskConnectMultichain.disconnect();
144
+ yield this.metamaskConnectMultichain.disconnect(scopes);
149
145
  return { jsonrpc: '2.0', id: request.id, result: true };
150
146
  }
151
147
  catch (_error) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/multichain/transports/multichainApiClientWrapper/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/multichain/transports/multichainApiClientWrapper/index.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,6 @@ export declare class MWPTransport implements ExtendedTransport {
21
21
  private dappClient;
22
22
  private kvstore;
23
23
  private options;
24
- private __reqId;
25
24
  private __pendingRequests;
26
25
  private notificationCallbacks;
27
26
  private currentSessionRequest;
@@ -34,9 +33,22 @@ export declare class MWPTransport implements ExtendedTransport {
34
33
  connectionTimeout: number;
35
34
  resumeTimeout: number;
36
35
  });
36
+ /**
37
+ * Returns the stored pending session request from the dappClient session_request event, if any.
38
+ *
39
+ * @returns The stored SessionRequest, or null if none or invalid.
40
+ */
41
+ getStoredPendingSessionRequest(): Promise<SessionRequest | null>;
42
+ /**
43
+ * Removes the stored pending session request from the KVStore.
44
+ * This is necessary to ensure that ConnectMultichain is able to correctly
45
+ * infer the MWP Transport connection attempt status.
46
+ */
47
+ private removeStoredPendingSessionRequest;
37
48
  private onWindowFocus;
38
49
  private notifyCallbacks;
39
50
  private rejectRequest;
51
+ private parseWalletError;
40
52
  private handleMessage;
41
53
  private onResumeSuccess;
42
54
  sendEip1193Message<TRequest extends TransportRequest, TResponse extends TransportResponse>(payload: TRequest, options?: {
@@ -50,9 +62,10 @@ export declare class MWPTransport implements ExtendedTransport {
50
62
  /**
51
63
  * Disconnects from the Mobile Wallet Protocol
52
64
  *
65
+ * @param [scopes] - The scopes to revoke. If not provided or empty, all scopes will be revoked.
53
66
  * @returns Nothing
54
67
  */
55
- disconnect(): Promise<void>;
68
+ disconnect(scopes?: Scope[]): Promise<void>;
56
69
  /**
57
70
  * Checks if the transport is connected
58
71
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/multichain/transports/mwp/index.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,OAAO,EACP,cAAc,EACf,MAAM,uCAAuC,CAAC;AAE/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAC/E,OAAO,EACL,KAAK,iBAAiB,EAEtB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EAEvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAEL,KAAK,iBAAiB,EAEtB,KAAK,KAAK,EAEV,KAAK,YAAY,EAClB,MAAM,iBAAiB,CAAC;AA4BzB,KAAK,eAAe,GAAG;IACrB,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,gBAAgB,CAAC;IAC5D,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC5C,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;CACzB,CAAC;AAIF;;;GAGG;AACH,qBAAa,YAAa,YAAW,iBAAiB;IAwBlD,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,OAAO;IAzBjB,OAAO,CAAC,OAAO,CAAK;IAEpB,OAAO,CAAC,iBAAiB,CAAsC;IAE/D,OAAO,CAAC,qBAAqB,CAAsC;IAEnE,OAAO,CAAC,qBAAqB,CAA6B;IAE1D,OAAO,CAAC,kBAAkB,CAA2B;IAErD,IAAI,eAAe,IAIkB,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAFhE;IAED,IAAI,eAAe,CAAC,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,EAEhE;IAED,IAAI,cAAc,+BAEjB;gBAGS,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,YAAY,EACrB,OAAO,GAAE;QACf,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,aAAa,EAAE,MAAM,CAAC;KAKvB;IAYH,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,aAAa;IAYrB,OAAO,CAAC,aAAa;YAoFP,eAAe;IA0EvB,kBAAkB,CACtB,QAAQ,SAAS,gBAAgB,EACjC,SAAS,SAAS,iBAAiB,EACnC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IAsClE,OAAO,CAAC,OAAO,CAAC,EAAE;QACtB,MAAM,EAAE,KAAK,EAAE,CAAC;QAChB,cAAc,EAAE,aAAa,EAAE,CAAC;QAChC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;KACvC,GAAG,OAAO,CAAC,IAAI,CAAC;IA0HjB;;;;OAIG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBjC;;;;OAIG;IACH,WAAW,IAAI,OAAO;IAKtB;;;;OAIG;YAGW,oBAAoB;YA0BpB,iBAAiB;YAqCjB,kBAAkB;IAuB1B,OAAO,CACX,QAAQ,SAAS,gBAAgB,EACjC,SAAS,SAAS,iBAAiB,EACnC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IA0CxE,cAAc,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI;IAOvD,gBAAgB,IAAI,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;YAsBxC,+BAA+B;CAiC9C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/multichain/transports/mwp/index.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  import { SessionStore } from '@metamask/mobile-wallet-protocol-core';
11
11
  import { TransportTimeoutError, } from '@metamask/multichain-api-client';
12
+ import { JsonRpcError, providerErrors, rpcErrors } from '@metamask/rpc-errors';
12
13
  import { createLogger, } from '../../../domain';
13
- import { addValidAccounts, getOptionalScopes, getValidAccounts, isSameScopesAndAccounts, } from '../../utils';
14
+ import { addValidAccounts, getOptionalScopes, getUniqueRequestId, getValidAccounts, isSameScopesAndAccounts, } from '../../utils';
14
15
  import { MULTICHAIN_PROVIDER_STREAM_NAME } from '../constants';
15
16
  const DEFAULT_REQUEST_TIMEOUT = 60 * 1000;
16
17
  const CONNECTION_GRACE_PERIOD = 60 * 1000;
@@ -19,6 +20,7 @@ const DEFAULT_RESUME_TIMEOUT = 10 * 1000;
19
20
  const SESSION_STORE_KEY = 'cache_wallet_getSession';
20
21
  const ACCOUNTS_STORE_KEY = 'cache_eth_accounts';
21
22
  const CHAIN_STORE_KEY = 'cache_eth_chainId';
23
+ const PENDING_SESSION_REQUEST_KEY = 'pending_session_request';
22
24
  const CACHED_METHOD_LIST = [
23
25
  'wallet_getSession',
24
26
  'wallet_createSession',
@@ -51,16 +53,58 @@ export class MWPTransport {
51
53
  this.dappClient = dappClient;
52
54
  this.kvstore = kvstore;
53
55
  this.options = options;
54
- this.__reqId = 0;
55
56
  this.__pendingRequests = new Map();
56
57
  this.notificationCallbacks = new Set();
57
58
  this.dappClient.on('message', this.handleMessage.bind(this));
59
+ // We store the pending session request in the KVStore so that we can:
60
+ // 1. Use it to regenerate the deeplink to re-prompt the user with if they
61
+ // attempt to connect while there is a pending connection attempt.
62
+ // 2. Determine if there was a pending connection attempt when MultichainConnect
63
+ // is initializing itself for the first time on page load and correctly set
64
+ // the appropriate timeout duration for that connection attempt.
65
+ this.dappClient.on('session_request', (sessionRequest) => {
66
+ this.currentSessionRequest = sessionRequest;
67
+ this.kvstore
68
+ .set(PENDING_SESSION_REQUEST_KEY, JSON.stringify(sessionRequest))
69
+ .catch((err) => {
70
+ logger('Failed to store pending session request', err);
71
+ });
72
+ });
58
73
  if (typeof window !== 'undefined' &&
59
74
  typeof window.addEventListener !== 'undefined') {
60
75
  this.windowFocusHandler = this.onWindowFocus.bind(this);
61
76
  window.addEventListener('focus', this.windowFocusHandler);
62
77
  }
63
78
  }
79
+ /**
80
+ * Returns the stored pending session request from the dappClient session_request event, if any.
81
+ *
82
+ * @returns The stored SessionRequest, or null if none or invalid.
83
+ */
84
+ getStoredPendingSessionRequest() {
85
+ return __awaiter(this, void 0, void 0, function* () {
86
+ try {
87
+ const raw = yield this.kvstore.get(PENDING_SESSION_REQUEST_KEY);
88
+ if (!raw) {
89
+ return null;
90
+ }
91
+ return JSON.parse(raw);
92
+ }
93
+ catch (_a) {
94
+ return null;
95
+ }
96
+ });
97
+ }
98
+ /**
99
+ * Removes the stored pending session request from the KVStore.
100
+ * This is necessary to ensure that ConnectMultichain is able to correctly
101
+ * infer the MWP Transport connection attempt status.
102
+ */
103
+ removeStoredPendingSessionRequest() {
104
+ return __awaiter(this, void 0, void 0, function* () {
105
+ yield this.kvstore.delete(PENDING_SESSION_REQUEST_KEY);
106
+ });
107
+ }
64
108
  onWindowFocus() {
65
109
  if (!this.isConnected()) {
66
110
  this.dappClient.reconnect();
@@ -77,6 +121,21 @@ export class MWPTransport {
77
121
  request.reject(error);
78
122
  }
79
123
  }
124
+ parseWalletError(errorPayload) {
125
+ const errorData = errorPayload;
126
+ if (typeof errorData.code === 'number' &&
127
+ typeof errorData.message === 'string') {
128
+ const { code, message } = errorData;
129
+ if (code >= 1000 && code <= 4999) {
130
+ return providerErrors.custom({ code, message });
131
+ }
132
+ return new JsonRpcError(code, message);
133
+ }
134
+ const message = errorPayload instanceof Error
135
+ ? errorPayload.message
136
+ : JSON.stringify(errorPayload);
137
+ return rpcErrors.internal({ message });
138
+ }
80
139
  handleMessage(message) {
81
140
  if (typeof message === 'object' && message !== null) {
82
141
  if ('data' in message) {
@@ -84,6 +143,14 @@ export class MWPTransport {
84
143
  if ('id' in messagePayload && typeof messagePayload.id === 'string') {
85
144
  const request = this.pendingRequests.get(messagePayload.id);
86
145
  if (request) {
146
+ clearTimeout(request.timeout);
147
+ // Check if the message contains an error (e.g., user rejected)
148
+ if ('error' in messagePayload && messagePayload.error) {
149
+ this.pendingRequests.delete(messagePayload.id);
150
+ request.reject(this.parseWalletError(messagePayload.error));
151
+ return;
152
+ }
153
+ // Success case - resolve the promise
87
154
  const requestWithName = Object.assign(Object.assign({}, messagePayload), { method: request.method === 'wallet_getSession' ||
88
155
  request.method === 'wallet_createSession'
89
156
  ? 'wallet_sessionChanged'
@@ -92,8 +159,6 @@ export class MWPTransport {
92
159
  request.method === 'wallet_createSession'
93
160
  ? 'wallet_sessionChanged'
94
161
  : request.method, params: requestWithName.result });
95
- clearTimeout(request.timeout);
96
- // Might need to handle the evm case?
97
162
  this.notifyCallbacks(notification);
98
163
  request.resolve(requestWithName);
99
164
  this.pendingRequests.delete(messagePayload.id);
@@ -172,6 +237,7 @@ export class MWPTransport {
172
237
  }
173
238
  walletSession = response.result;
174
239
  }
240
+ yield this.removeStoredPendingSessionRequest();
175
241
  this.notifyCallbacks({
176
242
  method: 'wallet_sessionChanged',
177
243
  params: walletSession,
@@ -186,7 +252,7 @@ export class MWPTransport {
186
252
  // TODO: Rename this
187
253
  sendEip1193Message(payload, options) {
188
254
  return __awaiter(this, void 0, void 0, function* () {
189
- const request = Object.assign({ jsonrpc: '2.0', id: `${this.__reqId++}` }, payload);
255
+ const request = Object.assign({ jsonrpc: '2.0', id: String(getUniqueRequestId()) }, payload);
190
256
  const cachedWalletSession = yield this.getCachedResponse(request);
191
257
  if (cachedWalletSession) {
192
258
  this.notifyCallbacks(cachedWalletSession);
@@ -221,8 +287,13 @@ export class MWPTransport {
221
287
  const { dappClient } = this;
222
288
  const session = yield this.getActiveSession();
223
289
  if (session) {
224
- logger('active session found', session);
290
+ logger('active session found', {
291
+ id: session.id,
292
+ channel: session.channel,
293
+ expiresAt: session.expiresAt,
294
+ });
225
295
  }
296
+ const storedSessionRequestBeforeConnectionAttempt = yield this.getStoredPendingSessionRequest();
226
297
  let timeout;
227
298
  let initialConnectionMessageHandler;
228
299
  const connectionPromise = new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
@@ -251,29 +322,36 @@ export class MWPTransport {
251
322
  };
252
323
  const request = {
253
324
  jsonrpc: '2.0',
254
- id: `${this.__reqId++}`,
325
+ id: String(getUniqueRequestId()),
255
326
  method: 'wallet_createSession',
256
327
  params: sessionRequest,
257
328
  };
258
- // just used for initial connection
329
+ // Handler for initial connection messages - checks for error responses
330
+ // and properly rejects the connection promise with EIP-1193 error codes
259
331
  initialConnectionMessageHandler = (message) => __awaiter(this, void 0, void 0, function* () {
260
- if (typeof message === 'object' && message !== null) {
261
- if ('data' in message) {
262
- const messagePayload = message.data;
263
- if (messagePayload.method === 'wallet_createSession' ||
264
- messagePayload.method === 'wallet_sessionChanged') {
265
- if (messagePayload.error) {
266
- if (initialConnectionMessageHandler) {
267
- this.dappClient.off('message', initialConnectionMessageHandler);
268
- }
269
- return rejectConnection(messagePayload.error);
270
- }
271
- yield this.storeWalletSession(request, messagePayload);
272
- this.notifyCallbacks(messagePayload);
273
- return resolveConnection();
274
- }
275
- }
332
+ if (typeof message !== 'object' || message === null) {
333
+ return;
334
+ }
335
+ if (!('data' in message)) {
336
+ return;
337
+ }
338
+ const messagePayload = message.data;
339
+ // Match by ID (preferred) or by method (backward compatibility for notifications without ID)
340
+ const isMatchingId = messagePayload.id === request.id;
341
+ const isMatchingMethod = messagePayload.method === 'wallet_createSession' ||
342
+ messagePayload.method === 'wallet_sessionChanged';
343
+ if (!isMatchingId && !isMatchingMethod) {
344
+ return;
276
345
  }
346
+ // Handle error response (e.g., user rejected the connection)
347
+ if (messagePayload.error) {
348
+ return rejectConnection(this.parseWalletError(messagePayload.error));
349
+ }
350
+ // Success case - store session, notify, and resolve
351
+ yield this.storeWalletSession(request, messagePayload);
352
+ yield this.removeStoredPendingSessionRequest();
353
+ this.notifyCallbacks(messagePayload);
354
+ return resolveConnection();
277
355
  });
278
356
  this.dappClient.on('message', initialConnectionMessageHandler);
279
357
  dappClient
@@ -294,13 +372,18 @@ export class MWPTransport {
294
372
  }
295
373
  timeout = setTimeout(() => {
296
374
  reject(new TransportTimeoutError());
297
- }, this.options.connectionTimeout);
375
+ }, storedSessionRequestBeforeConnectionAttempt
376
+ ? this.options.resumeTimeout
377
+ : this.options.connectionTimeout);
298
378
  connection.then(resolve).catch(reject);
299
379
  }));
300
380
  return connectionPromise
301
- .catch((error) => {
381
+ .catch((error) => __awaiter(this, void 0, void 0, function* () {
382
+ // Clean up the MWP session from the KVStore so stale sessions
383
+ // don't cause subsequent connect attempts to enter the resume path
384
+ yield this.dappClient.disconnect();
302
385
  throw error;
303
- })
386
+ }))
304
387
  .finally(() => {
305
388
  if (timeout) {
306
389
  clearTimeout(timeout);
@@ -309,27 +392,65 @@ export class MWPTransport {
309
392
  this.dappClient.off('message', initialConnectionMessageHandler);
310
393
  initialConnectionMessageHandler = undefined;
311
394
  }
395
+ this.removeStoredPendingSessionRequest();
312
396
  });
313
397
  });
314
398
  }
315
399
  /**
316
400
  * Disconnects from the Mobile Wallet Protocol
317
401
  *
402
+ * @param [scopes] - The scopes to revoke. If not provided or empty, all scopes will be revoked.
318
403
  * @returns Nothing
319
404
  */
320
405
  disconnect() {
321
- return __awaiter(this, void 0, void 0, function* () {
322
- // Clean up window focus event listener
323
- if (typeof window !== 'undefined' &&
324
- typeof window.removeEventListener !== 'undefined' &&
325
- this.windowFocusHandler) {
326
- window.removeEventListener('focus', this.windowFocusHandler);
327
- this.windowFocusHandler = undefined;
406
+ return __awaiter(this, arguments, void 0, function* (scopes = []) {
407
+ var _a, _b;
408
+ const cachedSession = yield this.getCachedResponse({
409
+ jsonrpc: '2.0',
410
+ id: '0',
411
+ method: 'wallet_getSession',
412
+ });
413
+ const cachedSessionScopes = (_b = (_a = cachedSession === null || cachedSession === void 0 ? void 0 : cachedSession.result) === null || _a === void 0 ? void 0 : _a.sessionScopes) !== null && _b !== void 0 ? _b : {};
414
+ const remainingScopes = scopes.length === 0
415
+ ? []
416
+ : Object.keys(cachedSessionScopes).filter((scope) => !scopes.includes(scope));
417
+ const newSessionScopes = Object.fromEntries(Object.entries(cachedSessionScopes).filter(([key]) => remainingScopes.includes(key)));
418
+ // NOTE: Purposely not awaiting this to avoid blocking the disconnect flow.
419
+ // This might not actually get executed on the wallet if the user doesn't open
420
+ // their wallet before the message TTL or if the underlying transport isn't actually connected
421
+ this.request({ method: 'wallet_revokeSession', params: { scopes } }).catch((err) => {
422
+ console.error('error revoking session', err);
423
+ });
424
+ // Clear the cached values for eth_accounts and eth_chainId if all eip155 scopes were removed.
425
+ const remainingScopesIncludeEip155 = remainingScopes.some((scope) => scope.includes('eip155'));
426
+ if (!remainingScopesIncludeEip155) {
427
+ this.kvstore.delete(ACCOUNTS_STORE_KEY);
428
+ this.kvstore.delete(CHAIN_STORE_KEY);
328
429
  }
329
- this.kvstore.delete(SESSION_STORE_KEY);
330
- this.kvstore.delete(ACCOUNTS_STORE_KEY);
331
- this.kvstore.delete(CHAIN_STORE_KEY);
332
- return this.dappClient.disconnect();
430
+ if (remainingScopes.length > 0) {
431
+ this.kvstore.set(SESSION_STORE_KEY, JSON.stringify({
432
+ result: {
433
+ sessionScopes: newSessionScopes,
434
+ },
435
+ }));
436
+ }
437
+ else {
438
+ this.kvstore.delete(SESSION_STORE_KEY);
439
+ // Clean up window focus event listener
440
+ if (typeof window !== 'undefined' &&
441
+ typeof window.removeEventListener !== 'undefined' &&
442
+ this.windowFocusHandler) {
443
+ window.removeEventListener('focus', this.windowFocusHandler);
444
+ this.windowFocusHandler = undefined;
445
+ }
446
+ yield this.dappClient.disconnect();
447
+ }
448
+ this.notifyCallbacks({
449
+ method: 'wallet_sessionChanged',
450
+ params: {
451
+ sessionScopes: newSessionScopes,
452
+ },
453
+ });
333
454
  });
334
455
  }
335
456
  /**
@@ -436,7 +557,7 @@ export class MWPTransport {
436
557
  }
437
558
  request(payload, options) {
438
559
  return __awaiter(this, void 0, void 0, function* () {
439
- const request = Object.assign({ jsonrpc: '2.0', id: `${this.__reqId++}` }, payload);
560
+ const request = Object.assign({ jsonrpc: '2.0', id: String(getUniqueRequestId()) }, payload);
440
561
  const cachedWalletSession = yield this.getCachedResponse(request);
441
562
  if (cachedWalletSession) {
442
563
  this.notifyCallbacks(cachedWalletSession);
@@ -522,6 +643,7 @@ export class MWPTransport {
522
643
  const timeoutPromise = new Promise((_resolve, reject) => {
523
644
  setTimeout(() => {
524
645
  unsubscribe();
646
+ this.removeStoredPendingSessionRequest();
525
647
  reject(new TransportTimeoutError());
526
648
  }, this.options.resumeTimeout);
527
649
  });