@metamask/connect-multichain 0.5.3 → 0.6.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 +27 -1
  2. package/README.md +9 -3
  3. package/dist/browser/es/connect-multichain.d.mts +27 -4
  4. package/dist/browser/es/connect-multichain.mjs +603 -333
  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 +27 -4
  8. package/dist/browser/iife/connect-multichain.js +3363 -2993
  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 +27 -4
  12. package/dist/browser/umd/connect-multichain.js +603 -333
  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 +27 -4
  16. package/dist/node/cjs/connect-multichain.js +421 -151
  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 +27 -4
  20. package/dist/node/es/connect-multichain.mjs +421 -151
  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 +27 -4
  24. package/dist/react-native/es/connect-multichain.mjs +596 -326
  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 +12 -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 -31
  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 +155 -38
  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 +57 -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 +27 -4
  60. package/package.json +1 -1
@@ -18,7 +18,7 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
18
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
19
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
20
20
  };
21
- var _MetaMaskConnectMultichain_instances, _MetaMaskConnectMultichain_provider, _MetaMaskConnectMultichain_providerTransportWrapper, _MetaMaskConnectMultichain_transport, _MetaMaskConnectMultichain_dappClient, _MetaMaskConnectMultichain_beforeUnloadListener, _MetaMaskConnectMultichain_listener, _MetaMaskConnectMultichain_sdkInfo, _MetaMaskConnectMultichain_setupAnalytics, _MetaMaskConnectMultichain_onTransportNotification, _MetaMaskConnectMultichain_getStoredTransport, _MetaMaskConnectMultichain_setupTransport, _MetaMaskConnectMultichain_init, _MetaMaskConnectMultichain_createDappClient, _MetaMaskConnectMultichain_setupMWP, _MetaMaskConnectMultichain_onBeforeUnload, _MetaMaskConnectMultichain_createBeforeUnloadListener, _MetaMaskConnectMultichain_renderInstallModalAsync, _MetaMaskConnectMultichain_showInstallModal, _MetaMaskConnectMultichain_headlessConnect, _MetaMaskConnectMultichain_setupDefaultTransport, _MetaMaskConnectMultichain_deeplinkConnect, _MetaMaskConnectMultichain_handleConnection;
21
+ var _MetaMaskConnectMultichain_instances, _MetaMaskConnectMultichain_provider, _MetaMaskConnectMultichain_providerTransportWrapper, _MetaMaskConnectMultichain_transport, _MetaMaskConnectMultichain_dappClient, _MetaMaskConnectMultichain_beforeUnloadListener, _MetaMaskConnectMultichain_listener, _MetaMaskConnectMultichain_sdkInfo, _MetaMaskConnectMultichain_setupAnalytics, _MetaMaskConnectMultichain_onTransportNotification, _MetaMaskConnectMultichain_getStoredTransport, _MetaMaskConnectMultichain_setupTransport, _MetaMaskConnectMultichain_init, _MetaMaskConnectMultichain_createDappClient, _MetaMaskConnectMultichain_setupMWP, _MetaMaskConnectMultichain_onBeforeUnload, _MetaMaskConnectMultichain_createBeforeUnloadListener, _MetaMaskConnectMultichain_renderInstallModalAsync, _MetaMaskConnectMultichain_showInstallModal, _MetaMaskConnectMultichain_headlessConnect, _MetaMaskConnectMultichain_setupDefaultTransport, _MetaMaskConnectMultichain_deeplinkConnect, _MetaMaskConnectMultichain_handleConnection, _MetaMaskConnectMultichain_getCaipSession, _MetaMaskConnectMultichain_openConnectDeeplinkIfNeeded;
22
22
  /* eslint-disable @typescript-eslint/no-misused-promises */
23
23
  /* eslint-disable @typescript-eslint/naming-convention */
24
24
  /* eslint-disable no-restricted-globals */
@@ -40,10 +40,11 @@ import { DefaultTransport } from './transports/default';
40
40
  import { MultichainApiClientWrapperTransport } from './transports/multichainApiClientWrapper';
41
41
  import { MWPTransport } from './transports/mwp';
42
42
  import { keymanager } from './transports/mwp/KeyManager';
43
- import { getDappId, openDeeplink, setupDappMetadata } from './utils';
43
+ import { getDappId, getGlobalObject, mergeRequestedSessionWithExisting, openDeeplink, setupDappMetadata, } from './utils';
44
44
  export { getInfuraRpcUrls } from '../domain/multichain/api/infura';
45
45
  // ENFORCE NAMESPACE THAT CAN BE DISABLED
46
46
  const logger = createLogger('metamask-sdk:core');
47
+ const SINGLETON_KEY = '__METAMASK_CONNECT_MULTICHAIN_SINGLETON__';
47
48
  export class MetaMaskConnectMultichain extends MultichainCore {
48
49
  get status() {
49
50
  return this._status;
@@ -99,23 +100,49 @@ export class MetaMaskConnectMultichain extends MultichainCore {
99
100
  transport: __classPrivateFieldGet(this, _MetaMaskConnectMultichain_providerTransportWrapper, "f"),
100
101
  }), "f");
101
102
  }
103
+ // Creates a singleton instance of MetaMaskConnectMultichain.
104
+ // If the singleton already exists, it merges the incoming options with the
105
+ // existing singleton options for the following keys: `api.supportedNetworks`,
106
+ // `ui.*`, `mobile.*`, `transport.extensionId`, `debug`. Take note that the
107
+ // value for `dapp` is not merged as it does not make sense for subsequent calls to
108
+ // `createMultichainClient` to have a different `dapp` value.
102
109
  static create(options) {
103
110
  return __awaiter(this, void 0, void 0, function* () {
104
- const instance = new MetaMaskConnectMultichain(options);
105
- const isEnabled = yield isLoggerEnabled('metamask-sdk:core', instance.options.storage);
106
- if (isEnabled) {
107
- enableDebug('metamask-sdk:core');
111
+ const globalObject = getGlobalObject();
112
+ const existing = globalObject[SINGLETON_KEY];
113
+ if (existing) {
114
+ const instance = yield existing;
115
+ instance.mergeOptions(options);
116
+ if (options.debug) {
117
+ enableDebug('metamask-sdk:*');
118
+ }
119
+ return instance;
108
120
  }
109
- yield __classPrivateFieldGet(instance, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_init).call(instance);
110
- return instance;
121
+ const instancePromise = (() => __awaiter(this, void 0, void 0, function* () {
122
+ const instance = new MetaMaskConnectMultichain(options);
123
+ const isEnabled = yield isLoggerEnabled('metamask-sdk:core', instance.options.storage);
124
+ if (isEnabled) {
125
+ enableDebug('metamask-sdk:core');
126
+ }
127
+ yield __classPrivateFieldGet(instance, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_init).call(instance);
128
+ return instance;
129
+ }))();
130
+ globalObject[SINGLETON_KEY] = instancePromise;
131
+ instancePromise.catch((error) => {
132
+ globalObject[SINGLETON_KEY] = undefined;
133
+ console.error('Error initializing MetaMaskConnectMultichain', error);
134
+ });
135
+ return instancePromise;
111
136
  });
112
137
  }
113
138
  // TODO: make this into param object
114
139
  connect(scopes, caipAccountIds, sessionProperties, forceRequest) {
115
140
  return __awaiter(this, void 0, void 0, function* () {
116
141
  var _a;
117
- if (this.status !== 'connected') {
118
- yield this.disconnect();
142
+ if (this.status === 'connecting' &&
143
+ this.transportType === TransportType.MWP) {
144
+ yield __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_openConnectDeeplinkIfNeeded).call(this);
145
+ throw new Error('Existing connection is pending. Please check your MetaMask Mobile app to continue.');
119
146
  }
120
147
  const { ui } = this.options;
121
148
  const platformType = getPlatformType();
@@ -140,16 +167,18 @@ export class MetaMaskConnectMultichain extends MultichainCore {
140
167
  catch (error) {
141
168
  logger('Error tracking connection_initiated event', error);
142
169
  }
170
+ const sessionData = yield __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_getCaipSession).call(this);
171
+ const { mergedScopes, mergedCaipAccountIds, mergedSessionProperties } = mergeRequestedSessionWithExisting(sessionData, scopes, caipAccountIds, sessionProperties);
143
172
  // Needed because empty object will cause wallet_createSession to return an error
144
- const nonEmptySessionProperites = Object.keys(sessionProperties !== null && sessionProperties !== void 0 ? sessionProperties : {}).length > 0
145
- ? sessionProperties
173
+ const nonEmptySessionProperties = Object.keys(mergedSessionProperties !== null && mergedSessionProperties !== void 0 ? mergedSessionProperties : {}).length > 0
174
+ ? mergedSessionProperties
146
175
  : undefined;
147
176
  if (((_a = __classPrivateFieldGet(this, _MetaMaskConnectMultichain_transport, "f")) === null || _a === void 0 ? void 0 : _a.isConnected()) && !secure) {
148
177
  return __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_handleConnection).call(this, __classPrivateFieldGet(this, _MetaMaskConnectMultichain_transport, "f")
149
178
  .connect({
150
- scopes,
151
- caipAccountIds,
152
- sessionProperties: nonEmptySessionProperites,
179
+ scopes: mergedScopes,
180
+ caipAccountIds: mergedCaipAccountIds,
181
+ sessionProperties: nonEmptySessionProperties,
153
182
  forceRequest,
154
183
  })
155
184
  .then(() => __awaiter(this, void 0, void 0, function* () {
@@ -163,9 +192,9 @@ export class MetaMaskConnectMultichain extends MultichainCore {
163
192
  if (platformType === PlatformType.MetaMaskMobileWebview) {
164
193
  const defaultTransport = yield __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_setupDefaultTransport).call(this);
165
194
  return __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_handleConnection).call(this, defaultTransport.connect({
166
- scopes,
167
- caipAccountIds,
168
- sessionProperties: nonEmptySessionProperites,
195
+ scopes: mergedScopes,
196
+ caipAccountIds: mergedCaipAccountIds,
197
+ sessionProperties: nonEmptySessionProperties,
169
198
  forceRequest,
170
199
  }), scopes, transportType);
171
200
  }
@@ -174,9 +203,9 @@ export class MetaMaskConnectMultichain extends MultichainCore {
174
203
  const defaultTransport = yield __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_setupDefaultTransport).call(this);
175
204
  // Web transport has no initial payload
176
205
  return __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_handleConnection).call(this, defaultTransport.connect({
177
- scopes,
178
- caipAccountIds,
179
- sessionProperties: nonEmptySessionProperites,
206
+ scopes: mergedScopes,
207
+ caipAccountIds: mergedCaipAccountIds,
208
+ sessionProperties: nonEmptySessionProperties,
180
209
  forceRequest,
181
210
  }), scopes, transportType);
182
211
  }
@@ -188,10 +217,10 @@ export class MetaMaskConnectMultichain extends MultichainCore {
188
217
  : !preferExtension || showInstallModal;
189
218
  if (secure && !shouldShowInstallModal) {
190
219
  // Desktop is not preferred option, so we use deeplinks (mobile web)
191
- return __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_handleConnection).call(this, __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_deeplinkConnect).call(this, scopes, caipAccountIds, nonEmptySessionProperites), scopes, transportType);
220
+ return __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_handleConnection).call(this, __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_deeplinkConnect).call(this, mergedScopes, mergedCaipAccountIds, nonEmptySessionProperties), scopes, transportType);
192
221
  }
193
222
  // Show install modal for RN, Web + Node
194
- return __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_handleConnection).call(this, __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_showInstallModal).call(this, shouldShowInstallModal, scopes, caipAccountIds, nonEmptySessionProperites), scopes, transportType);
223
+ return __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_handleConnection).call(this, __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_showInstallModal).call(this, shouldShowInstallModal, mergedScopes, mergedCaipAccountIds, nonEmptySessionProperties), scopes, transportType);
195
224
  });
196
225
  }
197
226
  emit(event, args) {
@@ -200,18 +229,24 @@ export class MetaMaskConnectMultichain extends MultichainCore {
200
229
  super.emit(event, args);
201
230
  }
202
231
  disconnect() {
203
- return __awaiter(this, void 0, void 0, function* () {
232
+ return __awaiter(this, arguments, void 0, function* (scopes = []) {
204
233
  var _a, _b, _c;
205
- yield ((_a = __classPrivateFieldGet(this, _MetaMaskConnectMultichain_listener, "f")) === null || _a === void 0 ? void 0 : _a.call(this));
206
- (_b = __classPrivateFieldGet(this, _MetaMaskConnectMultichain_beforeUnloadListener, "f")) === null || _b === void 0 ? void 0 : _b.call(this);
207
- yield ((_c = __classPrivateFieldGet(this, _MetaMaskConnectMultichain_transport, "f")) === null || _c === void 0 ? void 0 : _c.disconnect());
208
- yield this.storage.removeTransport();
209
- this.emit('stateChanged', 'disconnected');
210
- __classPrivateFieldSet(this, _MetaMaskConnectMultichain_listener, undefined, "f");
211
- __classPrivateFieldSet(this, _MetaMaskConnectMultichain_beforeUnloadListener, undefined, "f");
212
- __classPrivateFieldSet(this, _MetaMaskConnectMultichain_transport, undefined, "f");
213
- __classPrivateFieldGet(this, _MetaMaskConnectMultichain_providerTransportWrapper, "f").clearNotificationCallbacks();
214
- __classPrivateFieldSet(this, _MetaMaskConnectMultichain_dappClient, undefined, "f");
234
+ const sessionData = yield __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_getCaipSession).call(this);
235
+ const remainingScopes = scopes.length === 0
236
+ ? []
237
+ : Object.keys(sessionData.sessionScopes).filter((scope) => !scopes.includes(scope));
238
+ yield ((_a = __classPrivateFieldGet(this, _MetaMaskConnectMultichain_transport, "f")) === null || _a === void 0 ? void 0 : _a.disconnect(scopes));
239
+ if (remainingScopes.length === 0) {
240
+ yield ((_b = __classPrivateFieldGet(this, _MetaMaskConnectMultichain_listener, "f")) === null || _b === void 0 ? void 0 : _b.call(this));
241
+ (_c = __classPrivateFieldGet(this, _MetaMaskConnectMultichain_beforeUnloadListener, "f")) === null || _c === void 0 ? void 0 : _c.call(this);
242
+ yield this.storage.removeTransport();
243
+ __classPrivateFieldSet(this, _MetaMaskConnectMultichain_listener, undefined, "f");
244
+ __classPrivateFieldSet(this, _MetaMaskConnectMultichain_beforeUnloadListener, undefined, "f");
245
+ __classPrivateFieldSet(this, _MetaMaskConnectMultichain_transport, undefined, "f");
246
+ __classPrivateFieldGet(this, _MetaMaskConnectMultichain_providerTransportWrapper, "f").clearTransportNotificationListener();
247
+ __classPrivateFieldSet(this, _MetaMaskConnectMultichain_dappClient, undefined, "f");
248
+ this.status = 'disconnected';
249
+ }
215
250
  });
216
251
  }
217
252
  invokeMethod(request) {
@@ -224,7 +259,7 @@ export class MetaMaskConnectMultichain extends MultichainCore {
224
259
  });
225
260
  }
226
261
  // DRY THIS WITH REQUEST ROUTER
227
- openDeeplinkIfNeeded() {
262
+ openSimpleDeeplinkIfNeeded() {
228
263
  const { ui, mobile } = this.options;
229
264
  const { showInstallModal = false } = ui !== null && ui !== void 0 ? ui : {};
230
265
  const secure = isSecure();
@@ -245,6 +280,27 @@ export class MetaMaskConnectMultichain extends MultichainCore {
245
280
  }), 10); // small delay to ensure the message encryption and dispatch completes
246
281
  }
247
282
  }
283
+ // Provides a way for ecosystem clients (EVM, Solana, etc.) to get the current CAIP session data
284
+ // when instantiating themselves (as they would have already missed any initial sessionChanged events emitted by ConnectMultichain)
285
+ // without having to concern themselves with the current transport connection status.
286
+ emitSessionChanged() {
287
+ return __awaiter(this, void 0, void 0, function* () {
288
+ var _a;
289
+ const emptySession = { sessionScopes: {} };
290
+ if (this.status !== 'connected' && this.status !== 'connecting') {
291
+ // If we aren't connected or connecting, there definitely is no active CAIP session
292
+ // so we optimistically emit an empty session to signify that to the ecosystem client consumers (EVM, Solana, etc.)
293
+ this.emit('wallet_sessionChanged', emptySession);
294
+ return;
295
+ }
296
+ // Otherwise, we need to fetch the current CAIP session from the wallet
297
+ const response = yield this.transport.request({
298
+ method: 'wallet_getSession',
299
+ });
300
+ // And then simulate a sessionChanged event with the current CAIP session data
301
+ this.emit('wallet_sessionChanged', (_a = response.result) !== null && _a !== void 0 ? _a : emptySession);
302
+ });
303
+ }
248
304
  }
249
305
  _MetaMaskConnectMultichain_provider = new WeakMap(), _MetaMaskConnectMultichain_providerTransportWrapper = new WeakMap(), _MetaMaskConnectMultichain_transport = new WeakMap(), _MetaMaskConnectMultichain_dappClient = new WeakMap(), _MetaMaskConnectMultichain_beforeUnloadListener = new WeakMap(), _MetaMaskConnectMultichain_listener = new WeakMap(), _MetaMaskConnectMultichain_sdkInfo = new WeakMap(), _MetaMaskConnectMultichain_instances = new WeakSet(), _MetaMaskConnectMultichain_setupAnalytics = function _MetaMaskConnectMultichain_setupAnalytics() {
250
306
  return __awaiter(this, void 0, void 0, function* () {
@@ -288,7 +344,7 @@ _MetaMaskConnectMultichain_provider = new WeakMap(), _MetaMaskConnectMultichain_
288
344
  if (hasExtensionInstalled) {
289
345
  const apiTransport = new DefaultTransport();
290
346
  __classPrivateFieldSet(this, _MetaMaskConnectMultichain_transport, apiTransport, "f");
291
- __classPrivateFieldGet(this, _MetaMaskConnectMultichain_providerTransportWrapper, "f").setupNotifcationListener();
347
+ __classPrivateFieldGet(this, _MetaMaskConnectMultichain_providerTransportWrapper, "f").setupTransportNotificationListener();
292
348
  __classPrivateFieldSet(this, _MetaMaskConnectMultichain_listener, apiTransport.onNotification(__classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_onTransportNotification).bind(this)), "f");
293
349
  return apiTransport;
294
350
  }
@@ -299,7 +355,7 @@ _MetaMaskConnectMultichain_provider = new WeakMap(), _MetaMaskConnectMultichain_
299
355
  const apiTransport = new MWPTransport(dappClient, kvstore);
300
356
  __classPrivateFieldSet(this, _MetaMaskConnectMultichain_dappClient, dappClient, "f");
301
357
  __classPrivateFieldSet(this, _MetaMaskConnectMultichain_transport, apiTransport, "f");
302
- __classPrivateFieldGet(this, _MetaMaskConnectMultichain_providerTransportWrapper, "f").setupNotifcationListener();
358
+ __classPrivateFieldGet(this, _MetaMaskConnectMultichain_providerTransportWrapper, "f").setupTransportNotificationListener();
303
359
  __classPrivateFieldSet(this, _MetaMaskConnectMultichain_listener, apiTransport.onNotification(__classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_onTransportNotification).bind(this)), "f");
304
360
  return apiTransport;
305
361
  }
@@ -329,26 +385,15 @@ _MetaMaskConnectMultichain_provider = new WeakMap(), _MetaMaskConnectMultichain_
329
385
  });
330
386
  }, _MetaMaskConnectMultichain_init = function _MetaMaskConnectMultichain_init() {
331
387
  return __awaiter(this, void 0, void 0, function* () {
332
- var _a;
333
388
  try {
334
- // @ts-expect-error mmsdk should be accessible
335
- if (typeof window !== 'undefined' && ((_a = window.mmsdk) === null || _a === void 0 ? void 0 : _a.isInitialized)) {
336
- logger('MetaMaskSDK: init already initialized');
389
+ yield __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_setupAnalytics).call(this);
390
+ yield __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_setupTransport).call(this);
391
+ try {
392
+ const baseProps = yield getBaseAnalyticsProperties(this.options, this.storage);
393
+ analytics.track('mmconnect_initialized', baseProps);
337
394
  }
338
- else {
339
- yield __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_setupAnalytics).call(this);
340
- yield __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_setupTransport).call(this);
341
- try {
342
- const baseProps = yield getBaseAnalyticsProperties(this.options, this.storage);
343
- analytics.track('mmconnect_initialized', baseProps);
344
- }
345
- catch (error) {
346
- logger('Error tracking initialized event', error);
347
- }
348
- if (typeof window !== 'undefined') {
349
- // @ts-expect-error mmsdk should be accessible
350
- window.mmsdk = this;
351
- }
395
+ catch (error) {
396
+ logger('Error tracking initialized event', error);
352
397
  }
353
398
  }
354
399
  catch (error) {
@@ -385,7 +430,7 @@ _MetaMaskConnectMultichain_provider = new WeakMap(), _MetaMaskConnectMultichain_
385
430
  __classPrivateFieldSet(this, _MetaMaskConnectMultichain_dappClient, dappClient, "f");
386
431
  const apiTransport = new MWPTransport(dappClient, kvstore);
387
432
  __classPrivateFieldSet(this, _MetaMaskConnectMultichain_transport, apiTransport, "f");
388
- __classPrivateFieldGet(this, _MetaMaskConnectMultichain_providerTransportWrapper, "f").setupNotifcationListener();
433
+ __classPrivateFieldGet(this, _MetaMaskConnectMultichain_providerTransportWrapper, "f").setupTransportNotificationListener();
389
434
  __classPrivateFieldSet(this, _MetaMaskConnectMultichain_listener, this.transport.onNotification(__classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_onTransportNotification).bind(this)), "f");
390
435
  yield this.storage.setTransport(TransportType.MWP);
391
436
  });
@@ -398,14 +443,15 @@ _MetaMaskConnectMultichain_provider = new WeakMap(), _MetaMaskConnectMultichain_
398
443
  }
399
444
  });
400
445
  }, _MetaMaskConnectMultichain_createBeforeUnloadListener = function _MetaMaskConnectMultichain_createBeforeUnloadListener() {
446
+ const handler = __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_onBeforeUnload).bind(this);
401
447
  if (typeof window !== 'undefined' &&
402
448
  typeof window.addEventListener !== 'undefined') {
403
- window.addEventListener('beforeunload', __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_onBeforeUnload).bind(this));
449
+ window.addEventListener('beforeunload', handler);
404
450
  }
405
451
  return () => {
406
452
  if (typeof window !== 'undefined' &&
407
453
  typeof window.removeEventListener !== 'undefined') {
408
- window.removeEventListener('beforeunload', __classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_onBeforeUnload).bind(this));
454
+ window.removeEventListener('beforeunload', handler);
409
455
  }
410
456
  };
411
457
  }, _MetaMaskConnectMultichain_renderInstallModalAsync = function _MetaMaskConnectMultichain_renderInstallModalAsync(desktopPreferred, scopes, caipAccountIds, sessionProperties) {
@@ -449,13 +495,18 @@ _MetaMaskConnectMultichain_provider = new WeakMap(), _MetaMaskConnectMultichain_
449
495
  // Ignore Request expired errors to allow modal to regenerate expired qr codes
450
496
  if (error.code !== ErrorCode.REQUEST_EXPIRED) {
451
497
  this.status = 'disconnected';
498
+ // Close the modal on error
499
+ yield this.options.ui.factory.unload(error);
452
500
  reject(error);
453
501
  }
454
502
  // If request is expires, the QRCode will automatically be regenerated we can ignore this case
455
503
  }
456
504
  else {
457
505
  this.status = 'disconnected';
458
- reject(error instanceof Error ? error : new Error(String(error)));
506
+ const normalizedError = error instanceof Error ? error : new Error(String(error));
507
+ // Close the modal on error
508
+ yield this.options.ui.factory.unload(normalizedError);
509
+ reject(normalizedError);
459
510
  }
460
511
  }
461
512
  }))().catch(() => {
@@ -548,7 +599,7 @@ _MetaMaskConnectMultichain_provider = new WeakMap(), _MetaMaskConnectMultichain_
548
599
  const transport = new DefaultTransport();
549
600
  __classPrivateFieldSet(this, _MetaMaskConnectMultichain_listener, transport.onNotification(__classPrivateFieldGet(this, _MetaMaskConnectMultichain_instances, "m", _MetaMaskConnectMultichain_onTransportNotification).bind(this)), "f");
550
601
  __classPrivateFieldSet(this, _MetaMaskConnectMultichain_transport, transport, "f");
551
- __classPrivateFieldGet(this, _MetaMaskConnectMultichain_providerTransportWrapper, "f").setupNotifcationListener();
602
+ __classPrivateFieldGet(this, _MetaMaskConnectMultichain_providerTransportWrapper, "f").setupTransportNotificationListener();
552
603
  return transport;
553
604
  });
554
605
  }, _MetaMaskConnectMultichain_deeplinkConnect = function _MetaMaskConnectMultichain_deeplinkConnect(scopes, caipAccountIds, sessionProperties) {
@@ -580,7 +631,7 @@ _MetaMaskConnectMultichain_provider = new WeakMap(), _MetaMaskConnectMultichain_
580
631
  let timeout;
581
632
  if (this.transport.isConnected()) {
582
633
  timeout = setTimeout(() => {
583
- this.openDeeplinkIfNeeded();
634
+ this.openSimpleDeeplinkIfNeeded();
584
635
  }, 250);
585
636
  }
586
637
  else {
@@ -653,5 +704,51 @@ _MetaMaskConnectMultichain_provider = new WeakMap(), _MetaMaskConnectMultichain_
653
704
  throw error;
654
705
  }));
655
706
  });
707
+ }, _MetaMaskConnectMultichain_getCaipSession = function _MetaMaskConnectMultichain_getCaipSession() {
708
+ return __awaiter(this, void 0, void 0, function* () {
709
+ let sessionData = {
710
+ sessionScopes: {},
711
+ sessionProperties: {},
712
+ };
713
+ if (this.status === 'connected') {
714
+ const response = yield this.transport.request({
715
+ method: 'wallet_getSession',
716
+ });
717
+ if (response.result) {
718
+ sessionData = response.result;
719
+ }
720
+ }
721
+ return sessionData;
722
+ });
723
+ }, _MetaMaskConnectMultichain_openConnectDeeplinkIfNeeded = function _MetaMaskConnectMultichain_openConnectDeeplinkIfNeeded() {
724
+ return __awaiter(this, void 0, void 0, function* () {
725
+ var _a, _b;
726
+ const { ui } = this.options;
727
+ const { showInstallModal = false } = ui !== null && ui !== void 0 ? ui : {};
728
+ const secure = isSecure();
729
+ const shouldOpenDeeplink = secure && !showInstallModal;
730
+ if (!shouldOpenDeeplink) {
731
+ return;
732
+ }
733
+ const storedSessionRequest = yield ((_a = __classPrivateFieldGet(this, _MetaMaskConnectMultichain_transport, "f")) === null || _a === void 0 ? void 0 : _a.getStoredPendingSessionRequest());
734
+ if (!storedSessionRequest) {
735
+ return;
736
+ }
737
+ const connectionRequest = {
738
+ sessionRequest: storedSessionRequest,
739
+ metadata: {
740
+ dapp: this.options.dapp,
741
+ sdk: { version: getVersion(), platform: getPlatformType() },
742
+ },
743
+ };
744
+ const deeplink = this.options.ui.factory.createConnectionDeeplink(connectionRequest);
745
+ const universalLink = this.options.ui.factory.createConnectionUniversalLink(connectionRequest);
746
+ if ((_b = this.options.mobile) === null || _b === void 0 ? void 0 : _b.preferredOpenLink) {
747
+ this.options.mobile.preferredOpenLink(deeplink, '_self');
748
+ }
749
+ else {
750
+ openDeeplink(this.options, deeplink, universalLink);
751
+ }
752
+ });
656
753
  };
657
754
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/multichain/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/multichain/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,2DAA2D;AAC3D,yDAAyD;AACzD,0CAA0C;AAC1C,4DAA4D;AAC5D,gGAAgG;AAChG,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EACL,SAAS,EACT,aAAa,EAEb,YAAY,EACZ,kBAAkB,GACnB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAC1E,OAAO,EAEL,mBAAmB,GAGpB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,aAAa,GACd,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,UAAU,EAMV,aAAa,GACd,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,0BAA0B,EAC1B,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,YAAY,EACZ,WAAW,EACX,SAAS,IAAI,eAAe,GAC7B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAGL,cAAc,GAEf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,eAAe,EACf,YAAY,EACZ,QAAQ,EACR,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,mCAAmC,EAAE,MAAM,yCAAyC,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EACL,SAAS,EACT,eAAe,EACf,iCAAiC,EACjC,YAAY,EACZ,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,yCAAyC;AACzC,MAAM,MAAM,GAAG,YAAY,CAAC,mBAAmB,CAAC,CAAC;AAEjD,MAAM,aAAa,GAAG,2CAA2C,CAAC;AAElE,MAAM,OAAO,yBAA0B,SAAQ,cAAc;IAe3D,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,MAAM,CAAC,KAAuB;;QAChC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,MAAA,MAAA,IAAI,CAAC,OAAO,CAAC,SAAS,0CAAE,cAAc,mDAAG;YACvC,MAAM,EAAE,cAAc;YACtB,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,uBAAA,IAAI,2CAAU,CAAC;IACxB,CAAC;IAED,IAAI,SAAS;QACX,IAAI,CAAC,uBAAA,IAAI,4CAAW,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QACD,OAAO,uBAAA,IAAI,4CAAW,CAAC;IACzB,CAAC;IAED,IAAI,UAAU;QACZ,IAAI,CAAC,uBAAA,IAAI,6CAAY,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,uBAAA,IAAI,6CAAY,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,IAAI,aAAa;QACf,OAAO,uBAAA,IAAI,4CAAW,YAAY,YAAY;YAC5C,CAAC,CAAC,aAAa,CAAC,GAAG;YACnB,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC;IAC5B,CAAC;IAID,YAAY,OAA0B;;QACpC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,eAAe,GAAG,MAAA,MAAA,OAAO,CAAC,SAAS,0CAAE,eAAe,mCAAI,QAAQ,CAAC;QACvE,MAAM,UAAU,mCACX,gBAAgB,KACnB,EAAE,kCACG,gBAAgB,CAAC,EAAE,KACtB,eAAe,EAAE,MAAA,gBAAgB,CAAC,EAAE,CAAC,eAAe,mCAAI,IAAI,EAC5D,gBAAgB,EAAE,MAAA,gBAAgB,CAAC,EAAE,CAAC,gBAAgB,mCAAI,KAAK,EAC/D,QAAQ,EAAE,MAAA,gBAAgB,CAAC,EAAE,CAAC,QAAQ,mCAAI,KAAK,KAEjD,SAAS,kCACJ,CAAC,MAAA,OAAO,CAAC,SAAS,mCAAI,EAAE,CAAC,KAC5B,eAAe,MAElB,CAAC;QAEF,KAAK,CAAC,UAAU,CAAC,CAAC;;QAzEX,sDAAuC;QAEvC,sEAA+D;QAExE,+CAA4C,SAAS,EAAC;QAEtD,gDAAsC,SAAS,EAAC;QAEhD,kEAAgD;QAEzC,YAAO,GAAqB,SAAS,CAAC;QAE7C,sDAAoD;QA0C3C,6CAAW,6BAA6B,UAAU,EAAE,aAAa,eAAe,EAAE,SAAS,MAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,mCAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,cAAc,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAC;QAqBxL,uBAAA,IAAI,uDAA6B,IAAI,mCAAmC,CACtE,IAAI,CACL,MAAA,CAAC;QACF,uBAAA,IAAI,uCAAa,mBAAmB,CAAC;YACnC,SAAS,EAAE,uBAAA,IAAI,2DAA0B;SAC1C,CAAC,MAAA,CAAC;IACL,CAAC;IAED,6DAA6D;IAC7D,2EAA2E;IAC3E,8EAA8E;IAC9E,2EAA2E;IAC3E,mFAAmF;IACnF,6DAA6D;IAC7D,MAAM,CAAO,MAAM,CACjB,OAA0B;;YAE1B,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,YAAY,CAAC,aAAa,CAE9B,CAAC;YACd,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC;gBAChC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;gBAC/B,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oBAClB,WAAW,CAAC,gBAAgB,CAAC,CAAC;gBAChC,CAAC;gBACD,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,MAAM,eAAe,GAAG,CAAC,GAA6C,EAAE;gBACtE,MAAM,QAAQ,GAAG,IAAI,yBAAyB,CAAC,OAAO,CAAC,CAAC;gBACxD,MAAM,SAAS,GAAG,MAAM,eAAe,CACrC,mBAAmB,EACnB,QAAQ,CAAC,OAAO,CAAC,OAAO,CACzB,CAAC;gBACF,IAAI,SAAS,EAAE,CAAC;oBACd,WAAW,CAAC,mBAAmB,CAAC,CAAC;gBACnC,CAAC;gBACD,MAAM,uBAAA,QAAQ,6EAAM,MAAd,QAAQ,CAAQ,CAAC;gBACvB,OAAO,QAAQ,CAAC;YAClB,CAAC,CAAA,CAAC,EAAE,CAAC;YAEL,YAAY,CAAC,aAAa,CAAC,GAAG,eAAe,CAAC;YAE9C,eAAe,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC9B,YAAY,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;gBACxC,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,KAAK,CAAC,CAAC;YACvE,CAAC,CAAC,CAAC;YAEH,OAAO,eAAe,CAAC;QACzB,CAAC;KAAA;IAsfD,oCAAoC;IAC9B,OAAO,CACX,MAAe,EACf,cAA+B,EAC/B,iBAAqC,EACrC,YAAsB;;;YAEtB,IACE,IAAI,CAAC,MAAM,KAAK,YAAY;gBAC5B,IAAI,CAAC,aAAa,KAAK,aAAa,CAAC,GAAG,EACxC,CAAC;gBACD,MAAM,uBAAA,IAAI,oGAA6B,MAAjC,IAAI,CAA+B,CAAC;gBAC1C,MAAM,IAAI,KAAK,CACb,oFAAoF,CACrF,CAAC;YACJ,CAAC;YACD,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;YACvC,MAAM,KAAK,GACT,YAAY,KAAK,YAAY,CAAC,qBAAqB;gBACnD,YAAY,KAAK,YAAY,CAAC,UAAU,CAAC;YAC3C,MAAM,EAAE,eAAe,GAAG,IAAI,EAAE,gBAAgB,GAAG,KAAK,EAAE,GAAG,EAAE,CAAC;YAChE,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAC;YAC1B,MAAM,qBAAqB,GAAG,MAAM,YAAY,EAAE,CAAC;YAEnD,IAAI,aAAa,CAAC;YAClB,IACE,YAAY,KAAK,YAAY,CAAC,qBAAqB;gBACnD,CAAC,KAAK,IAAI,qBAAqB,IAAI,eAAe,CAAC,EACnD,CAAC;gBACD,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACN,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC;YACpC,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,0BAA0B,CAChD,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,CACb,CAAC;gBACF,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CACtC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CACnC,CAAC;gBAEF,SAAS,CAAC,KAAK,CAAC,gCAAgC,kCAC3C,SAAS,KACZ,cAAc,EAAE,aAAa,EAC7B,sBAAsB,EAAE,oBAAoB,EAC5C,qBAAqB,EAAE,MAAM,IAC7B,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAC;YAC7D,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,uBAAA,IAAI,uFAAgB,MAApB,IAAI,CAAkB,CAAC;YAEjD,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,GACnE,iCAAiC,CAC/B,WAAW,EACX,MAAM,EACN,cAAc,EACd,iBAAiB,CAClB,CAAC;YAEJ,iFAAiF;YACjF,MAAM,yBAAyB,GAC7B,MAAM,CAAC,IAAI,CAAC,uBAAuB,aAAvB,uBAAuB,cAAvB,uBAAuB,GAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC;gBACnD,CAAC,CAAC,uBAAuB;gBACzB,CAAC,CAAC,SAAS,CAAC;YAEhB,IAAI,CAAA,MAAA,uBAAA,IAAI,4CAAW,0CAAE,WAAW,EAAE,KAAI,CAAC,MAAM,EAAE,CAAC;gBAC9C,OAAO,uBAAA,IAAI,yFAAkB,MAAtB,IAAI,EACT,uBAAA,IAAI,4CAAW;qBACZ,OAAO,CAAC;oBACP,MAAM,EAAE,YAAY;oBACpB,cAAc,EAAE,oBAAoB;oBACpC,iBAAiB,EAAE,yBAAyB;oBAC5C,YAAY;iBACb,CAAC;qBACD,IAAI,CAAC,GAAS,EAAE;oBACf,IAAI,uBAAA,IAAI,4CAAW,YAAY,YAAY,EAAE,CAAC;wBAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;oBACtD,CAAC;oBACD,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC1D,CAAC,CAAA,CAAC,EACJ,MAAM,EACN,aAAa,CACd,CAAC;YACJ,CAAC;YAED,2EAA2E;YAC3E,IAAI,YAAY,KAAK,YAAY,CAAC,qBAAqB,EAAE,CAAC;gBACxD,MAAM,gBAAgB,GAAG,MAAM,uBAAA,IAAI,8FAAuB,MAA3B,IAAI,CAAyB,CAAC;gBAC7D,OAAO,uBAAA,IAAI,yFAAkB,MAAtB,IAAI,EACT,gBAAgB,CAAC,OAAO,CAAC;oBACvB,MAAM,EAAE,YAAY;oBACpB,cAAc,EAAE,oBAAoB;oBACpC,iBAAiB,EAAE,yBAAyB;oBAC5C,YAAY;iBACb,CAAC,EACF,MAAM,EACN,aAAa,CACd,CAAC;YACJ,CAAC;YAED,IAAI,KAAK,IAAI,qBAAqB,IAAI,eAAe,EAAE,CAAC;gBACtD,oDAAoD;gBACpD,MAAM,gBAAgB,GAAG,MAAM,uBAAA,IAAI,8FAAuB,MAA3B,IAAI,CAAyB,CAAC;gBAC7D,uCAAuC;gBACvC,OAAO,uBAAA,IAAI,yFAAkB,MAAtB,IAAI,EACT,gBAAgB,CAAC,OAAO,CAAC;oBACvB,MAAM,EAAE,YAAY;oBACpB,cAAc,EAAE,oBAAoB;oBACpC,iBAAiB,EAAE,yBAAyB;oBAC5C,YAAY;iBACb,CAAC,EACF,MAAM,EACN,aAAa,CACd,CAAC;YACJ,CAAC;YAED,+EAA+E;YAC/E,MAAM,uBAAA,IAAI,iFAAU,MAAd,IAAI,CAAY,CAAC;YAEvB,+CAA+C;YAC/C,MAAM,sBAAsB,GAAG,qBAAqB;gBAClD,CAAC,CAAC,gBAAgB;gBAClB,CAAC,CAAC,CAAC,eAAe,IAAI,gBAAgB,CAAC;YAEzC,IAAI,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBACtC,oEAAoE;gBACpE,OAAO,uBAAA,IAAI,yFAAkB,MAAtB,IAAI,EACT,uBAAA,IAAI,wFAAiB,MAArB,IAAI,EACF,YAAY,EACZ,oBAAoB,EACpB,yBAAyB,CAC1B,EACD,MAAM,EACN,aAAa,CACd,CAAC;YACJ,CAAC;YAED,wCAAwC;YACxC,OAAO,uBAAA,IAAI,yFAAkB,MAAtB,IAAI,EACT,uBAAA,IAAI,yFAAkB,MAAtB,IAAI,EACF,sBAAsB,EACtB,YAAY,EACZ,oBAAoB,EACpB,yBAAyB,CAC1B,EACD,MAAM,EACN,aAAa,CACd,CAAC;QACJ,CAAC;KAAA;IAEe,IAAI,CAAC,KAAa,EAAE,IAAS;;QAC3C,MAAA,MAAA,IAAI,CAAC,OAAO,CAAC,SAAS,0CAAE,cAAc,mDAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC1B,CAAC;IAkBK,UAAU;6DAAC,SAAkB,EAAE;;YACnC,MAAM,WAAW,GAAG,MAAM,uBAAA,IAAI,uFAAgB,MAApB,IAAI,CAAkB,CAAC;YAEjD,MAAM,eAAe,GACnB,MAAM,CAAC,MAAM,KAAK,CAAC;gBACjB,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,MAAM,CAC3C,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAc,CAAC,CAC5C,CAAC;YAER,MAAM,CAAA,MAAA,uBAAA,IAAI,4CAAW,0CAAE,UAAU,CAAC,MAAM,CAAC,CAAA,CAAC;YAE1C,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,MAAM,CAAA,MAAA,uBAAA,IAAI,2CAAU,+CAAd,IAAI,CAAc,CAAA,CAAC;gBACzB,MAAA,uBAAA,IAAI,uDAAsB,+CAA1B,IAAI,CAA0B,CAAC;gBAE/B,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;gBAErC,uBAAA,IAAI,uCAAa,SAAS,MAAA,CAAC;gBAC3B,uBAAA,IAAI,mDAAyB,SAAS,MAAA,CAAC;gBACvC,uBAAA,IAAI,wCAAc,SAAS,MAAA,CAAC;gBAC5B,uBAAA,IAAI,2DAA0B,CAAC,kCAAkC,EAAE,CAAC;gBACpE,uBAAA,IAAI,yCAAe,SAAS,MAAA,CAAC;gBAC7B,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC;YAC/B,CAAC;QACH,CAAC;KAAA;IAEK,YAAY,CAAC,OAA4B;;YAC7C,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;YAEpC,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,OAAO,EAAE,uBAAA,IAAI,0CAAS,CAAC,CAAC;YACxD,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YACvE,iDAAiD;YACjD,OAAO,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;KAAA;IAED,+BAA+B;IAC/B,0BAA0B;QACxB,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QACpC,MAAM,EAAE,gBAAgB,GAAG,KAAK,EAAE,GAAG,EAAE,aAAF,EAAE,cAAF,EAAE,GAAI,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAC;QAC1B,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC;QAEvD,IAAI,kBAAkB,EAAE,CAAC;YACvB,UAAU,CAAC,GAAS,EAAE;gBACpB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;gBACxD,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;gBAC7C,CAAC;gBAED,MAAM,GAAG,GAAG,GAAG,sBAAsB,WAAW,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;gBACjF,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,iBAAiB,EAAE,CAAC;oBAC9B,MAAM,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;gBACzC,CAAC;qBAAM,CAAC;oBACN,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,yBAAyB,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC,CAAA,EAAE,EAAE,CAAC,CAAC,CAAC,sEAAsE;QAChF,CAAC;IACH,CAAC;IAsCD,gGAAgG;IAChG,mIAAmI;IACnI,qFAAqF;IAC/E,kBAAkB;;;YACtB,MAAM,YAAY,GAAG,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;YAE3C,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,IAAI,IAAI,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;gBAChE,mFAAmF;gBACnF,mHAAmH;gBACnH,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,YAAY,CAAC,CAAC;gBACjD,OAAO;YACT,CAAC;YAED,uEAAuE;YACvE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBAC5C,MAAM,EAAE,mBAAmB;aAC5B,CAAC,CAAC;YAEH,8EAA8E;YAC9E,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,MAAA,QAAQ,CAAC,MAAM,mCAAI,YAAY,CAAC,CAAC;QACtE,CAAC;KAAA;CACF;;;;QAxxBG,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;QACnC,MAAM,SAAS,GACb,QAAQ,KAAK,YAAY,CAAC,qBAAqB;YAC/C,QAAQ,KAAK,YAAY,CAAC,UAAU;YACpC,QAAQ,KAAK,YAAY,CAAC,SAAS,CAAC;QAEtC,MAAM,aAAa,GAAG,QAAQ,KAAK,YAAY,CAAC,WAAW,CAAC;QAE5D,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC;YACjC,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAE9C,MAAM,EAAE,eAAe,EAAE,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,SAAS,mCAAI;YACpD,eAAe,EAAE,EAAE;SACpB,CAAC;QACF,SAAS,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;QAC1D,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC/C,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC/C,SAAS,CAAC,iBAAiB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAClD,SAAS,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC;QACjE,SAAS,CAAC,MAAM,EAAE,CAAC;IACrB,CAAC;oHAE8B,OAAY;;;QACzC,IACE,OAAO,OAAO,KAAK,QAAQ;YAC3B,OAAO,KAAK,IAAI;YAChB,QAAQ,IAAI,OAAO,EACnB,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAgB,EAAE,MAAA,OAAO,CAAC,MAAM,mCAAI,OAAO,CAAC,MAAM,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;;;QAKC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QACxD,MAAM,qBAAqB,GAAG,MAAM,YAAY,EAAE,CAAC;QACnD,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,aAAa,KAAK,aAAa,CAAC,OAAO,EAAE,CAAC;gBAC5C,IAAI,qBAAqB,EAAE,CAAC;oBAC1B,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;oBAC5C,uBAAA,IAAI,wCAAc,YAAY,MAAA,CAAC;oBAC/B,uBAAA,IAAI,2DAA0B,CAAC,kCAAkC,EAAE,CAAC;oBACpE,uBAAA,IAAI,uCAAa,YAAY,CAAC,cAAc,CAC1C,uBAAA,IAAI,gGAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CACzC,MAAA,CAAC;oBACF,OAAO,YAAY,CAAC;gBACtB,CAAC;YACH,CAAC;iBAAM,IAAI,aAAa,KAAK,aAAa,CAAC,GAAG,EAAE,CAAC;gBAC/C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;gBAClD,MAAM,UAAU,GAAG,MAAM,uBAAA,IAAI,yFAAkB,MAAtB,IAAI,CAAoB,CAAC;gBAClD,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAC3D,uBAAA,IAAI,yCAAe,UAAU,MAAA,CAAC;gBAC9B,uBAAA,IAAI,wCAAc,YAAY,MAAA,CAAC;gBAC/B,uBAAA,IAAI,2DAA0B,CAAC,kCAAkC,EAAE,CAAC;gBACpE,uBAAA,IAAI,uCAAa,YAAY,CAAC,cAAc,CAC1C,uBAAA,IAAI,gGAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CACzC,MAAA,CAAC;gBACF,OAAO,YAAY,CAAC;YACtB,CAAC;YAED,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;QACvC,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;;;QAGC,MAAM,SAAS,GAAG,MAAM,uBAAA,IAAI,2FAAoB,MAAxB,IAAI,CAAsB,CAAC;QACnD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;gBAClC,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;gBAC3B,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACjC,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC;YAC1B,IAAI,IAAI,CAAC,SAAS,YAAY,YAAY,EAAE,CAAC;gBAC3C,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;QACzB,CAAC;IACH,CAAC;;;QAGC,IAAI,CAAC;YACH,MAAM,uBAAA,IAAI,uFAAgB,MAApB,IAAI,CAAkB,CAAC;YAC7B,MAAM,uBAAA,IAAI,uFAAgB,MAApB,IAAI,CAAkB,CAAC;YAC7B,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,0BAA0B,CAChD,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,CACb,CAAC;gBACF,SAAS,CAAC,KAAK,CAAC,uBAAuB,EAAE,SAAS,CAAC,CAAC;YACtD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,MAAM,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;;;QAGC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAClD,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,SAAS;QACb,gDAAgD;QAChD,OAAO,MAAM,KAAK,WAAW;YAC3B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QACrC,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC;YAChD,GAAG,EAAE,aAAa;YAClB,OAAO;YACP,SAAS;SACV,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;QAC3E,OAAO,UAAU,CAAC;IACpB,CAAC;;;QAGC,IAAI,uBAAA,IAAI,4CAAW,YAAY,YAAY,EAAE,CAAC;YAC5C,OAAO;QACT,CAAC;QACD,0CAA0C;QAC1C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAClD,MAAM,UAAU,GAAG,MAAM,uBAAA,IAAI,yFAAkB,MAAtB,IAAI,CAAoB,CAAC;QAClD,uBAAA,IAAI,yCAAe,UAAU,MAAA,CAAC;QAC9B,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC3D,uBAAA,IAAI,wCAAc,YAAY,MAAA,CAAC;QAC/B,uBAAA,IAAI,2DAA0B,CAAC,kCAAkC,EAAE,CAAC;QACpE,uBAAA,IAAI,uCAAa,IAAI,CAAC,SAAS,CAAC,cAAc,CAC5C,uBAAA,IAAI,gGAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CACzC,MAAA,CAAC;QACF,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACrD,CAAC;;;;QAGC,kGAAkG;QAClG,IAAI,MAAA,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,0CAAE,SAAS,EAAE,CAAC;YAC7C,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;QACvC,CAAC;IACH,CAAC;;IAGC,MAAM,OAAO,GAAG,uBAAA,IAAI,uFAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEhD,IACE,OAAO,MAAM,KAAK,WAAW;QAC7B,OAAO,MAAM,CAAC,gBAAgB,KAAK,WAAW,EAC9C,CAAC;QACD,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,GAAG,EAAE;QACV,IACE,OAAO,MAAM,KAAK,WAAW;YAC7B,OAAO,MAAM,CAAC,mBAAmB,KAAK,WAAW,EACjD,CAAC;YACD,MAAM,CAAC,mBAAmB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;IACH,CAAC,CAAC;AACJ,CAAC,mHAGC,gBAAyB,EACzB,MAAe,EACf,cAA+B,EAC/B,iBAAqC;;QAErC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,uBAAuB;YACvB,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO;iBACpB,kBAAkB,CACjB,gBAAgB,EAChB,GAAS,EAAE;gBACT,IACE,IAAI,CAAC,UAAU,CAAC,KAAK,KAAK,WAAW;oBACrC,IAAI,CAAC,UAAU,CAAC,KAAK,KAAK,YAAY,EACtC,CAAC;oBACD,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;gBACrC,CAAC;gBACD,OAAO,IAAI,OAAO,CAAoB,CAAC,QAAQ,EAAE,EAAE;oBACjD,IAAI,CAAC,UAAU,CAAC,EAAE,CAChB,iBAAiB,EACjB,CAAC,cAA8B,EAAE,EAAE;wBACjC,QAAQ,CAAC;4BACP,cAAc;4BACd,QAAQ,EAAE;gCACR,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;gCACvB,GAAG,EAAE;oCACH,OAAO,EAAE,UAAU,EAAE;oCACrB,QAAQ,EAAE,eAAe,EAAE;iCAC5B;6BACF;yBACF,CAAC,CAAC;oBACL,CAAC,CACF,CAAC;oBAEF,CAAC,GAAwB,EAAE;;wBACzB,IAAI,CAAC;4BACH,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gCAC3B,MAAM;gCACN,cAAc;gCACd,iBAAiB;6BAClB,CAAC,CAAC;4BACH,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;4BACvC,MAAA,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,0CAAE,OAAO,EAAE,CAAC;4BACzC,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC;4BAC1B,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;wBACrD,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;gCACnC,8EAA8E;gCAC9E,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,eAAe,EAAE,CAAC;oCAC7C,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC;oCAC7B,2BAA2B;oCAC3B,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oCAC5C,MAAM,CAAC,KAAK,CAAC,CAAC;gCAChB,CAAC;gCACD,8FAA8F;4BAChG,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC;gCAC7B,MAAM,eAAe,GACnB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gCAC5D,2BAA2B;gCAC3B,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;gCACtD,MAAM,CAAC,eAAe,CAAC,CAAC;4BAC1B,CAAC;wBACH,CAAC;oBACH,CAAC,CAAA,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;wBACd,8CAA8C;oBAChD,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAA,EACD,CAAO,KAAa,EAAE,EAAE;gBACtB,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;oBACrC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;oBACnD,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC,CAAA,EACD,CAAC,GAAW,EAAE,EAAE;gBACd,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;YAChC,CAAC,CACF;iBACA,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,MAAM,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACpE,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;sGAGC,gBAAyB,EACzB,MAAe,EACf,cAA+B,EAC/B,iBAAqC;;;QAErC,sDAAsD;QACtD,yMAA+B,uBAAA,IAAI,mGAA4B,MAAhC,IAAI,CAA8B,MAAA,CAAC;QAElE,sEAAsE;QACtE,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;YAC7B,MAAM,uBAAA,IAAI,wFAAiB,MAArB,IAAI,EAAkB,MAAM,EAAE,cAAc,EAAE,iBAAiB,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,MAAM,uBAAA,IAAI,gGAAyB,MAA7B,IAAI,EACR,gBAAgB,EAChB,MAAM,EACN,cAAc,EACd,iBAAiB,CAClB,CAAC;QACJ,CAAC;IACH,CAAC;oGAWC,MAAe,EACf,cAA+B,EAC/B,iBAAqC;;QAErC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,IACE,IAAI,CAAC,UAAU,CAAC,KAAK,KAAK,WAAW;gBACrC,IAAI,CAAC,UAAU,CAAC,KAAK,KAAK,YAAY,EACtC,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;oBACtC,2BAA2B;gBAC7B,CAAC,CAAC,CAAC;YACL,CAAC;YAED,mEAAmE;YACnE,IAAI,CAAC,UAAU,CAAC,EAAE,CAChB,iBAAiB,EACjB,CAAC,cAA8B,EAAE,EAAE;gBACjC,MAAM,iBAAiB,GAAsB;oBAC3C,cAAc;oBACd,QAAQ,EAAE;wBACR,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;wBACvB,GAAG,EAAE;4BACH,OAAO,EAAE,UAAU,EAAE;4BACrB,QAAQ,EAAE,eAAe,EAAE;yBAC5B;qBACF;iBACF,CAAC;gBAEF,qCAAqC;gBACrC,MAAM,QAAQ,GACZ,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;gBACtE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YACrC,CAAC,CACF,CAAC;YAEF,uBAAuB;YACvB,IAAI,CAAC,SAAS;iBACX,OAAO,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAC;iBACtD,IAAI,CAAC,GAAS,EAAE;gBACf,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC;gBAC1B,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBACnD,OAAO,EAAE,CAAC;YACZ,CAAC,CAAA,CAAC;iBACD,KAAK,CAAC,CAAO,KAAK,EAAE,EAAE;gBACrB,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;oBACnC,sDAAsD;oBACtD,yCAAyC;oBACzC,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC;oBAC7B,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;oBACrC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC;oBAC7B,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;oBACrC,MAAM,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC,CAAA,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;;;QAGC,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;QAC3B,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACzC,uBAAA,IAAI,uCAAa,SAAS,CAAC,cAAc,CACvC,uBAAA,IAAI,gGAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CACzC,MAAA,CAAC;QACF,uBAAA,IAAI,wCAAc,SAAS,MAAA,CAAC;QAC5B,uBAAA,IAAI,2DAA0B,CAAC,kCAAkC,EAAE,CAAC;QACpE,OAAO,SAAS,CAAC;IACnB,CAAC;oGAGC,MAAe,EACf,cAA+B,EAC/B,iBAAqC;;QAErC,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YACjD,kEAAkE;YAClE,MAAM,wBAAwB,GAAG,CAAC,OAAgB,EAAQ,EAAE;;gBAC1D,IACE,OAAO,OAAO,KAAK,QAAQ;oBAC3B,OAAO,KAAK,IAAI;oBAChB,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,EACpB,CAAC;oBACD,OAAO;gBACT,CAAC;gBACD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAiD,CAAC;gBACvE,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;oBAC9C,6FAA6F;oBAC7F,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBACf,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;wBACzD,MAAM,CAAC,IAAI,CAAC,KAAc,CAAC,CAAC;oBAC9B,CAAC;oBACD,yFAAyF;oBACzF,IAAI,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,0CAAE,aAAa,EAAE,CAAC;wBAChC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;wBACzD,uEAAuE;oBACzE,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YACF,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;YAExD,IAAI,OAAmC,CAAC;YAExC,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;gBACjC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;oBACxB,IAAI,CAAC,0BAA0B,EAAE,CAAC;gBACpC,CAAC,EAAE,GAAG,CAAC,CAAC;YACV,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,iBAAiB,EACjB,CAAC,cAA8B,EAAE,EAAE;;oBACjC,MAAM,iBAAiB,GAAG;wBACxB,cAAc;wBACd,QAAQ,EAAE;4BACR,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;4BACvB,GAAG,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,EAAE;yBAC5D;qBACF,CAAC;oBACF,MAAM,QAAQ,GACZ,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAC9C,iBAAiB,CAClB,CAAC;oBACJ,MAAM,aAAa,GACjB,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,6BAA6B,CACnD,iBAAiB,CAClB,CAAC;oBAEJ,kDAAkD;oBAClD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;oBAEnC,IAAI,MAAA,IAAI,CAAC,OAAO,CAAC,MAAM,0CAAE,iBAAiB,EAAE,CAAC;wBAC3C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAC3D,CAAC;yBAAM,CAAC;wBACN,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;oBACtD,CAAC;gBACH,CAAC,CACF,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,CAAC,SAAS;iBAClB,OAAO,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAC;iBACtD,IAAI,CAAC,OAAO,CAAC;iBACb,KAAK,CAAC,CAAO,KAAK,EAAE,EAAE;gBACrB,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;gBACrC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;gBACzD,MAAM,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACpE,CAAC,CAAA,CAAC;iBACD,OAAO,CAAC,GAAG,EAAE;gBACZ,IAAI,OAAO,EAAE,CAAC;oBACZ,YAAY,CAAC,OAAO,CAAC,CAAC;gBACxB,CAAC;YACH,CAAC,CAAC,CAAC;QACP,CAAC,CAAA,CAAC,CAAC;IACL,CAAC;sGAGC,OAAsB,EACtB,MAAe,EACf,aAA4B;;QAE5B,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;QAC3B,OAAO,OAAO;aACX,IAAI,CAAC,GAAS,EAAE;YACf,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC;YAC1B,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,0BAA0B,CAChD,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,CACb,CAAC;gBAEF,SAAS,CAAC,KAAK,CAAC,kCAAkC,kCAC7C,SAAS,KACZ,cAAc,EAAE,aAAa,EAC7B,wBAAwB,EAAE,MAAM,IAChC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAC;YAC/D,CAAC;YACD,OAAO,SAAS,CAAC,CAAC,qEAAqE;QACzF,CAAC,CAAA,CAAC;aACD,KAAK,CAAC,CAAO,KAAK,EAAE,EAAE;YACrB,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC;YAC7B,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,0BAA0B,CAChD,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,CACb,CAAC;gBACF,MAAM,WAAW,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAE5C,IAAI,WAAW,EAAE,CAAC;oBAChB,SAAS,CAAC,KAAK,CAAC,+BAA+B,kCAC1C,SAAS,KACZ,cAAc,EAAE,aAAa,IAC7B,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,KAAK,CAAC,6BAA6B,kCACxC,SAAS,KACZ,cAAc,EAAE,aAAa,IAC7B,CAAC;gBACL,CAAC;YACH,CAAC;YAAC,WAAM,CAAC;gBACP,MAAM,CAAC,iDAAiD,EAAE,KAAK,CAAC,CAAC;YACnE,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;;;QAmKC,IAAI,WAAW,GAAgB;YAC7B,aAAa,EAAE,EAAE;YACjB,iBAAiB,EAAE,EAAE;SACtB,CAAC;QACF,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBAC5C,MAAM,EAAE,mBAAmB;aAC5B,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACpB,WAAW,GAAG,QAAQ,CAAC,MAAqB,CAAC;YAC/C,CAAC;QACH,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;;;;QA+DC,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,MAAM,EAAE,gBAAgB,GAAG,KAAK,EAAE,GAAG,EAAE,aAAF,EAAE,cAAF,EAAE,GAAI,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAC;QAC1B,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC;QAEvD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,MAAM,oBAAoB,GACxB,MAAM,CAAA,MAAA,uBAAA,IAAI,4CAAW,0CAAE,8BAA8B,EAAE,CAAA,CAAC;QAC1D,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,OAAO;QACT,CAAC;QAED,MAAM,iBAAiB,GAAG;YACxB,cAAc,EAAE,oBAAoB;YACpC,QAAQ,EAAE;gBACR,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;gBACvB,GAAG,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,EAAE;aAC5D;SACF,CAAC;QACF,MAAM,QAAQ,GACZ,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;QAEtE,MAAM,aAAa,GACjB,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,CAAC;QAE3E,IAAI,MAAA,IAAI,CAAC,OAAO,CAAC,MAAM,0CAAE,iBAAiB,EAAE,CAAC;YAC3C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;QACtD,CAAC;IACH,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { Session } from '@metamask/mobile-wallet-protocol-core';
2
+ import type { SessionRequest } from '@metamask/mobile-wallet-protocol-dapp-client';
2
3
  import { type SessionProperties, type TransportRequest, type TransportResponse } from '@metamask/multichain-api-client';
3
4
  import type { CaipAccountId } from '@metamask/utils';
4
5
  import type { ExtendedTransport, Scope } from 'src/domain';
@@ -13,12 +14,13 @@ export declare class DefaultTransport implements ExtendedTransport {
13
14
  sessionProperties?: SessionProperties;
14
15
  forceRequest?: boolean;
15
16
  }): Promise<void>;
16
- disconnect(): Promise<void>;
17
+ disconnect(scopes?: Scope[]): Promise<void>;
17
18
  isConnected(): boolean;
18
19
  request<TRequest extends TransportRequest, TResponse extends TransportResponse>(request: TRequest, options?: {
19
20
  timeout?: number;
20
21
  }): Promise<TResponse>;
21
22
  onNotification(callback: (data: unknown) => void): () => void;
22
23
  getActiveSession(): Promise<Session | undefined>;
24
+ getStoredPendingSessionRequest(): Promise<SessionRequest | null>;
23
25
  }
24
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/multichain/transports/default/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EACL,KAAK,iBAAiB,EAItB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAU,KAAK,EAAe,MAAM,YAAY,CAAC;AAiBhF,qBAAa,gBAAiB,YAAW,iBAAiB;;IAkHlD,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;IA4ClE,OAAO,CAAC,OAAO,CAAC,EAAE;QACtB,MAAM,EAAE,KAAK,EAAE,CAAC;QAChB,cAAc,EAAE,aAAa,EAAE,CAAC;QAChC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;QACtC,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmEX,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA6BjC,WAAW,IAAI,OAAO;IAIhB,OAAO,CACX,QAAQ,SAAS,gBAAgB,EACjC,SAAS,SAAS,iBAAiB,EAEnC,OAAO,EAAE,QAAQ,EACjB,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAgC,GAC1D,OAAO,CAAC,SAAS,CAAC;IAIrB,cAAc,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI;IAQvD,gBAAgB,IAAI,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;CAQvD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/multichain/transports/default/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EACL,KAAK,iBAAiB,EAItB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAU,KAAK,EAAe,MAAM,YAAY,CAAC;AAkBhF,qBAAa,gBAAiB,YAAW,iBAAiB;;IA+GlD,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;IA2ClE,OAAO,CAAC,OAAO,CAAC,EAAE;QACtB,MAAM,EAAE,KAAK,EAAE,CAAC;QAChB,cAAc,EAAE,aAAa,EAAE,CAAC;QAChC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;QACtC,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+DX,UAAU,CAAC,MAAM,GAAE,KAAK,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAoCrD,WAAW,IAAI,OAAO;IAIhB,OAAO,CACX,QAAQ,SAAS,gBAAgB,EACjC,SAAS,SAAS,iBAAiB,EAEnC,OAAO,EAAE,QAAQ,EACjB,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAgC,GAC1D,OAAO,CAAC,SAAS,CAAC;IAIrB,cAAc,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI;IAQvD,gBAAgB,IAAI,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAShD,8BAA8B,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;CAKvE"}
@@ -18,9 +18,9 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
18
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
19
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
20
20
  };
21
- var _DefaultTransport_instances, _DefaultTransport_notificationCallbacks, _DefaultTransport_transport, _DefaultTransport_defaultRequestOptions, _DefaultTransport_reqId, _DefaultTransport_pendingRequests, _DefaultTransport_handleResponseListener, _DefaultTransport_handleNotificationListener, _DefaultTransport_notifyCallbacks, _DefaultTransport_isMetamaskProviderEvent, _DefaultTransport_handleResponse, _DefaultTransport_handleNotification, _DefaultTransport_setupMessageListener;
21
+ var _DefaultTransport_instances, _DefaultTransport_notificationCallbacks, _DefaultTransport_transport, _DefaultTransport_defaultRequestOptions, _DefaultTransport_pendingRequests, _DefaultTransport_handleResponseListener, _DefaultTransport_handleNotificationListener, _DefaultTransport_notifyCallbacks, _DefaultTransport_isMetamaskProviderEvent, _DefaultTransport_handleResponse, _DefaultTransport_handleNotification, _DefaultTransport_setupMessageListener;
22
22
  import { getDefaultTransport, } from '@metamask/multichain-api-client';
23
- import { addValidAccounts, getOptionalScopes, getValidAccounts, isSameScopesAndAccounts, } from '../../utils';
23
+ import { addValidAccounts, getOptionalScopes, getUniqueRequestId, getValidAccounts, isSameScopesAndAccounts, } from '../../utils';
24
24
  const DEFAULT_REQUEST_TIMEOUT = 60 * 1000;
25
25
  export class DefaultTransport {
26
26
  constructor() {
@@ -30,8 +30,6 @@ export class DefaultTransport {
30
30
  _DefaultTransport_defaultRequestOptions.set(this, {
31
31
  timeout: DEFAULT_REQUEST_TIMEOUT,
32
32
  });
33
- // Use timestamp-based ID to avoid conflicts across disconnect/reconnect cycles
34
- _DefaultTransport_reqId.set(this, Date.now());
35
33
  _DefaultTransport_pendingRequests.set(this, new Map());
36
34
  _DefaultTransport_handleResponseListener.set(this, void 0);
37
35
  _DefaultTransport_handleNotificationListener.set(this, void 0);
@@ -41,8 +39,7 @@ export class DefaultTransport {
41
39
  // Setup message listener if not already set up
42
40
  __classPrivateFieldGet(this, _DefaultTransport_instances, "m", _DefaultTransport_setupMessageListener).call(this);
43
41
  // Generate unique request ID - increment counter to ensure uniqueness
44
- __classPrivateFieldSet(this, _DefaultTransport_reqId, __classPrivateFieldGet(this, _DefaultTransport_reqId, "f") + 1, "f");
45
- const requestId = `${__classPrivateFieldGet(this, _DefaultTransport_reqId, "f")}`;
42
+ const requestId = String(getUniqueRequestId());
46
43
  // Create request with ID - MetaMask expects JSON-RPC format
47
44
  const request = Object.assign({ jsonrpc: '2.0', id: requestId }, payload);
48
45
  return new Promise((resolve, reject) => {
@@ -93,7 +90,6 @@ export class DefaultTransport {
93
90
  const proposedCaipAccountIds = (_e = options === null || options === void 0 ? void 0 : options.caipAccountIds) !== null && _e !== void 0 ? _e : [];
94
91
  const hasSameScopesAndAccounts = isSameScopesAndAccounts(currentScopes, proposedScopes, walletSession, proposedCaipAccountIds);
95
92
  if (!hasSameScopesAndAccounts) {
96
- yield this.request({ method: 'wallet_revokeSession', params: walletSession }, __classPrivateFieldGet(this, _DefaultTransport_defaultRequestOptions, "f"));
97
93
  const response = yield this.request({ method: 'wallet_createSession', params: createSessionParams }, __classPrivateFieldGet(this, _DefaultTransport_defaultRequestOptions, "f"));
98
94
  if (response.error) {
99
95
  throw new Error(response.error.message);
@@ -115,9 +111,14 @@ export class DefaultTransport {
115
111
  });
116
112
  }
117
113
  disconnect() {
118
- return __awaiter(this, void 0, void 0, function* () {
114
+ return __awaiter(this, arguments, void 0, function* (scopes = []) {
115
+ yield this.request({ method: 'wallet_revokeSession', params: { scopes } });
116
+ const response = yield this.request({ method: 'wallet_getSession' });
117
+ const { sessionScopes } = response.result;
118
+ if (Object.keys(sessionScopes).length > 0) {
119
+ return;
120
+ }
119
121
  __classPrivateFieldGet(this, _DefaultTransport_notificationCallbacks, "f").clear();
120
- yield this.request({ method: 'wallet_revokeSession', params: {} });
121
122
  // Remove the message listener when disconnecting
122
123
  if (__classPrivateFieldGet(this, _DefaultTransport_handleResponseListener, "f")) {
123
124
  // eslint-disable-next-line no-restricted-globals
@@ -136,7 +137,7 @@ export class DefaultTransport {
136
137
  request.reject(new Error('Transport disconnected'));
137
138
  }
138
139
  __classPrivateFieldGet(this, _DefaultTransport_pendingRequests, "f").clear();
139
- return __classPrivateFieldGet(this, _DefaultTransport_transport, "f").disconnect();
140
+ yield __classPrivateFieldGet(this, _DefaultTransport_transport, "f").disconnect();
140
141
  });
141
142
  }
142
143
  isConnected() {
@@ -162,8 +163,13 @@ export class DefaultTransport {
162
163
  throw new Error('getActiveSession is purposely not implemented for the DefaultTransport');
163
164
  });
164
165
  }
166
+ getStoredPendingSessionRequest() {
167
+ return __awaiter(this, void 0, void 0, function* () {
168
+ throw new Error('getStoredPendingSessionRequest is purposely not implemented for the DefaultTransport');
169
+ });
170
+ }
165
171
  }
166
- _DefaultTransport_notificationCallbacks = new WeakMap(), _DefaultTransport_transport = new WeakMap(), _DefaultTransport_defaultRequestOptions = new WeakMap(), _DefaultTransport_reqId = new WeakMap(), _DefaultTransport_pendingRequests = new WeakMap(), _DefaultTransport_handleResponseListener = new WeakMap(), _DefaultTransport_handleNotificationListener = new WeakMap(), _DefaultTransport_instances = new WeakSet(), _DefaultTransport_notifyCallbacks = function _DefaultTransport_notifyCallbacks(data) {
172
+ _DefaultTransport_notificationCallbacks = new WeakMap(), _DefaultTransport_transport = new WeakMap(), _DefaultTransport_defaultRequestOptions = new WeakMap(), _DefaultTransport_pendingRequests = new WeakMap(), _DefaultTransport_handleResponseListener = new WeakMap(), _DefaultTransport_handleNotificationListener = new WeakMap(), _DefaultTransport_instances = new WeakSet(), _DefaultTransport_notifyCallbacks = function _DefaultTransport_notifyCallbacks(data) {
167
173
  for (const callback of __classPrivateFieldGet(this, _DefaultTransport_notificationCallbacks, "f")) {
168
174
  try {
169
175
  callback(data);