@metamask/connect-multichain 0.5.0 → 0.5.1

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 (42) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/dist/browser/es/connect-multichain.mjs +47 -40
  3. package/dist/browser/es/connect-multichain.mjs.map +1 -1
  4. package/dist/browser/es/metafile-esm.json +1 -1
  5. package/dist/browser/iife/connect-multichain.js +1886 -91
  6. package/dist/browser/iife/connect-multichain.js.map +1 -1
  7. package/dist/browser/iife/metafile-iife.json +1 -1
  8. package/dist/browser/umd/connect-multichain.js +47 -40
  9. package/dist/browser/umd/connect-multichain.js.map +1 -1
  10. package/dist/browser/umd/metafile-cjs.json +1 -1
  11. package/dist/node/cjs/connect-multichain.js +40 -40
  12. package/dist/node/cjs/connect-multichain.js.map +1 -1
  13. package/dist/node/cjs/metafile-cjs.json +1 -1
  14. package/dist/node/es/connect-multichain.mjs +40 -40
  15. package/dist/node/es/connect-multichain.mjs.map +1 -1
  16. package/dist/node/es/metafile-esm.json +1 -1
  17. package/dist/react-native/es/connect-multichain.mjs +47 -40
  18. package/dist/react-native/es/connect-multichain.mjs.map +1 -1
  19. package/dist/react-native/es/metafile-esm.json +1 -1
  20. package/dist/src/index.browser.d.ts +1 -0
  21. package/dist/src/index.browser.d.ts.map +1 -1
  22. package/dist/src/index.browser.js +4 -2
  23. package/dist/src/index.browser.js.map +1 -1
  24. package/dist/src/index.native.d.ts +1 -0
  25. package/dist/src/index.native.d.ts.map +1 -1
  26. package/dist/src/index.native.js +4 -2
  27. package/dist/src/index.native.js.map +1 -1
  28. package/dist/src/index.node.js +2 -2
  29. package/dist/src/index.node.js.map +1 -1
  30. package/dist/src/multichain/index.d.ts +2 -2
  31. package/dist/src/multichain/index.d.ts.map +1 -1
  32. package/dist/src/multichain/index.js +79 -79
  33. package/dist/src/multichain/index.js.map +1 -1
  34. package/dist/src/multichain/transports/multichainApiClientWrapper/index.d.ts +3 -3
  35. package/dist/src/multichain/transports/multichainApiClientWrapper/index.d.ts.map +1 -1
  36. package/dist/src/multichain/transports/multichainApiClientWrapper/index.js +10 -10
  37. package/dist/src/multichain/transports/multichainApiClientWrapper/index.js.map +1 -1
  38. package/dist/src/polyfills/buffer-shim.d.ts +2 -0
  39. package/dist/src/polyfills/buffer-shim.d.ts.map +1 -0
  40. package/dist/src/polyfills/buffer-shim.js +22 -0
  41. package/dist/src/polyfills/buffer-shim.js.map +1 -0
  42. package/package.json +6 -2
@@ -1218,6 +1218,13 @@ __export(index_browser_exports, {
1218
1218
  });
1219
1219
  module.exports = __toCommonJS(index_browser_exports);
1220
1220
 
1221
+ // src/polyfills/buffer-shim.ts
1222
+ var import_buffer = require("buffer");
1223
+ var g = typeof globalThis !== "undefined" ? globalThis : typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : {};
1224
+ if (!g.Buffer) {
1225
+ g.Buffer = import_buffer.Buffer;
1226
+ }
1227
+
1221
1228
  // src/multichain/index.ts
1222
1229
  var import_analytics4 = require("@metamask/analytics");
1223
1230
  var import_mobile_wallet_protocol_core2 = require("@metamask/mobile-wallet-protocol-core");
@@ -2273,15 +2280,15 @@ var getUniqueId = () => {
2273
2280
  };
2274
2281
  var _MultichainApiClientWrapperTransport_instances, walletCreateSession_fn, walletGetSession_fn, walletRevokeSession_fn, walletInvokeMethod_fn;
2275
2282
  var MultichainApiClientWrapperTransport = class {
2276
- constructor(multichainSDK) {
2277
- this.multichainSDK = multichainSDK;
2283
+ constructor(metamaskConnectMultichain) {
2284
+ this.metamaskConnectMultichain = metamaskConnectMultichain;
2278
2285
  __privateAdd(this, _MultichainApiClientWrapperTransport_instances);
2279
2286
  this.requestId = getUniqueId();
2280
2287
  this.notificationCallbacks = /* @__PURE__ */ new Set();
2281
2288
  }
2282
2289
  isTransportDefined() {
2283
2290
  try {
2284
- return Boolean(this.multichainSDK.transport);
2291
+ return Boolean(this.metamaskConnectMultichain.transport);
2285
2292
  } catch (error) {
2286
2293
  return false;
2287
2294
  }
@@ -2295,7 +2302,7 @@ var MultichainApiClientWrapperTransport = class {
2295
2302
  });
2296
2303
  }
2297
2304
  setupNotifcationListener() {
2298
- this.multichainSDK.transport.onNotification(
2305
+ this.metamaskConnectMultichain.transport.onNotification(
2299
2306
  this.notifyCallbacks.bind(this)
2300
2307
  );
2301
2308
  }
@@ -2342,7 +2349,7 @@ var MultichainApiClientWrapperTransport = class {
2342
2349
  this.notificationCallbacks.delete(callback);
2343
2350
  };
2344
2351
  }
2345
- return this.multichainSDK.transport.onNotification(callback);
2352
+ return this.metamaskConnectMultichain.transport.onNotification(callback);
2346
2353
  }
2347
2354
  };
2348
2355
  _MultichainApiClientWrapperTransport_instances = new WeakSet();
@@ -2365,13 +2372,13 @@ walletCreateSession_fn = function(request) {
2365
2372
  });
2366
2373
  const accounts = [...new Set(scopeAccounts)];
2367
2374
  console.log("\u{1F4DA} SDK connect");
2368
- yield this.multichainSDK.connect(
2375
+ yield this.metamaskConnectMultichain.connect(
2369
2376
  scopes,
2370
2377
  accounts,
2371
2378
  createSessionParams.sessionProperties
2372
2379
  );
2373
2380
  console.log("\u{1F4DA} SDK connected");
2374
- return this.multichainSDK.transport.request({
2381
+ return this.metamaskConnectMultichain.transport.request({
2375
2382
  method: "wallet_getSession"
2376
2383
  });
2377
2384
  });
@@ -2387,7 +2394,7 @@ walletGetSession_fn = function(request) {
2387
2394
  }
2388
2395
  };
2389
2396
  }
2390
- return this.multichainSDK.transport.request({
2397
+ return this.metamaskConnectMultichain.transport.request({
2391
2398
  method: "wallet_getSession"
2392
2399
  });
2393
2400
  });
@@ -2398,7 +2405,7 @@ walletRevokeSession_fn = function(request) {
2398
2405
  return { jsonrpc: "2.0", id: request.id, result: true };
2399
2406
  }
2400
2407
  try {
2401
- this.multichainSDK.disconnect();
2408
+ this.metamaskConnectMultichain.disconnect();
2402
2409
  return { jsonrpc: "2.0", id: request.id, result: true };
2403
2410
  } catch (error) {
2404
2411
  return { jsonrpc: "2.0", id: request.id, result: false };
@@ -2410,7 +2417,7 @@ walletInvokeMethod_fn = function(request) {
2410
2417
  if (!this.isTransportDefined()) {
2411
2418
  return { error: import_rpc_errors.providerErrors.unauthorized() };
2412
2419
  }
2413
- const result = this.multichainSDK.invokeMethod(
2420
+ const result = this.metamaskConnectMultichain.invokeMethod(
2414
2421
  request.params
2415
2422
  );
2416
2423
  return {
@@ -2421,8 +2428,8 @@ walletInvokeMethod_fn = function(request) {
2421
2428
 
2422
2429
  // src/multichain/index.ts
2423
2430
  var logger2 = createLogger("metamask-sdk:core");
2424
- var _a, _provider, _providerTransportWrapper, _transport2, _dappClient, _beforeUnloadListener, _listener, _sdkInfo, _MultichainSDK_instances, setupAnalytics_fn, onTransportNotification_fn, getStoredTransport_fn, setupTransport_fn, init_fn, createDappClient_fn, setupMWP_fn, onBeforeUnload_fn, createBeforeUnloadListener_fn, renderInstallModalAsync_fn, showInstallModal_fn, headlessConnect_fn, setupDefaultTransport_fn, deeplinkConnect_fn, handleConnection_fn;
2425
- var _MultichainSDK = class _MultichainSDK extends MultichainCore {
2431
+ var _a, _provider, _providerTransportWrapper, _transport2, _dappClient, _beforeUnloadListener, _listener, _sdkInfo, _MetaMaskConnectMultichain_instances, setupAnalytics_fn, onTransportNotification_fn, getStoredTransport_fn, setupTransport_fn, init_fn, createDappClient_fn, setupMWP_fn, onBeforeUnload_fn, createBeforeUnloadListener_fn, renderInstallModalAsync_fn, showInstallModal_fn, headlessConnect_fn, setupDefaultTransport_fn, deeplinkConnect_fn, handleConnection_fn;
2432
+ var _MetaMaskConnectMultichain = class _MetaMaskConnectMultichain extends MultichainCore {
2426
2433
  constructor(options) {
2427
2434
  var _a2, _b, _c, _d, _e, _f;
2428
2435
  const withDappMetadata = setupDappMetadata(options);
@@ -2438,7 +2445,7 @@ var _MultichainSDK = class _MultichainSDK extends MultichainCore {
2438
2445
  })
2439
2446
  });
2440
2447
  super(allOptions);
2441
- __privateAdd(this, _MultichainSDK_instances);
2448
+ __privateAdd(this, _MetaMaskConnectMultichain_instances);
2442
2449
  __privateAdd(this, _provider);
2443
2450
  __privateAdd(this, _providerTransportWrapper);
2444
2451
  __privateAdd(this, _transport2);
@@ -2485,7 +2492,7 @@ var _MultichainSDK = class _MultichainSDK extends MultichainCore {
2485
2492
  static create(options) {
2486
2493
  return __async(this, null, function* () {
2487
2494
  var _a2;
2488
- const instance = new _MultichainSDK(options);
2495
+ const instance = new _MetaMaskConnectMultichain(options);
2489
2496
  const isEnabled2 = yield isEnabled(
2490
2497
  "metamask-sdk:core",
2491
2498
  instance.options.storage
@@ -2493,7 +2500,7 @@ var _MultichainSDK = class _MultichainSDK extends MultichainCore {
2493
2500
  if (isEnabled2) {
2494
2501
  enableDebug("metamask-sdk:core");
2495
2502
  }
2496
- yield __privateMethod(_a2 = instance, _MultichainSDK_instances, init_fn).call(_a2);
2503
+ yield __privateMethod(_a2 = instance, _MetaMaskConnectMultichain_instances, init_fn).call(_a2);
2497
2504
  return instance;
2498
2505
  });
2499
2506
  }
@@ -2533,7 +2540,7 @@ var _MultichainSDK = class _MultichainSDK extends MultichainCore {
2533
2540
  logger2("Error tracking connection_initiated event", error);
2534
2541
  }
2535
2542
  if (((_a2 = __privateGet(this, _transport2)) == null ? void 0 : _a2.isConnected()) && !secure) {
2536
- return __privateMethod(this, _MultichainSDK_instances, handleConnection_fn).call(this, __privateGet(this, _transport2).connect({ scopes, caipAccountIds, sessionProperties, forceRequest }).then(() => __async(this, null, function* () {
2543
+ return __privateMethod(this, _MetaMaskConnectMultichain_instances, handleConnection_fn).call(this, __privateGet(this, _transport2).connect({ scopes, caipAccountIds, sessionProperties, forceRequest }).then(() => __async(this, null, function* () {
2537
2544
  if (__privateGet(this, _transport2) instanceof MWPTransport) {
2538
2545
  return this.storage.setTransport("mwp" /* MWP */);
2539
2546
  }
@@ -2541,19 +2548,19 @@ var _MultichainSDK = class _MultichainSDK extends MultichainCore {
2541
2548
  })), scopes, transportType);
2542
2549
  }
2543
2550
  if (platformType === "in-app-browser" /* MetaMaskMobileWebview */) {
2544
- const defaultTransport = yield __privateMethod(this, _MultichainSDK_instances, setupDefaultTransport_fn).call(this);
2545
- return __privateMethod(this, _MultichainSDK_instances, handleConnection_fn).call(this, defaultTransport.connect({ scopes, caipAccountIds, sessionProperties, forceRequest }), scopes, transportType);
2551
+ const defaultTransport = yield __privateMethod(this, _MetaMaskConnectMultichain_instances, setupDefaultTransport_fn).call(this);
2552
+ return __privateMethod(this, _MetaMaskConnectMultichain_instances, handleConnection_fn).call(this, defaultTransport.connect({ scopes, caipAccountIds, sessionProperties, forceRequest }), scopes, transportType);
2546
2553
  }
2547
2554
  if (isWeb && hasExtensionInstalled && preferExtension) {
2548
- const defaultTransport = yield __privateMethod(this, _MultichainSDK_instances, setupDefaultTransport_fn).call(this);
2549
- return __privateMethod(this, _MultichainSDK_instances, handleConnection_fn).call(this, defaultTransport.connect({ scopes, caipAccountIds, sessionProperties, forceRequest }), scopes, transportType);
2555
+ const defaultTransport = yield __privateMethod(this, _MetaMaskConnectMultichain_instances, setupDefaultTransport_fn).call(this);
2556
+ return __privateMethod(this, _MetaMaskConnectMultichain_instances, handleConnection_fn).call(this, defaultTransport.connect({ scopes, caipAccountIds, sessionProperties, forceRequest }), scopes, transportType);
2550
2557
  }
2551
- yield __privateMethod(this, _MultichainSDK_instances, setupMWP_fn).call(this);
2558
+ yield __privateMethod(this, _MetaMaskConnectMultichain_instances, setupMWP_fn).call(this);
2552
2559
  const shouldShowInstallModal = hasExtensionInstalled ? showInstallModal : !preferExtension || showInstallModal;
2553
2560
  if (secure && !shouldShowInstallModal) {
2554
- return __privateMethod(this, _MultichainSDK_instances, handleConnection_fn).call(this, __privateMethod(this, _MultichainSDK_instances, deeplinkConnect_fn).call(this, scopes, caipAccountIds, sessionProperties), scopes, transportType);
2561
+ return __privateMethod(this, _MetaMaskConnectMultichain_instances, handleConnection_fn).call(this, __privateMethod(this, _MetaMaskConnectMultichain_instances, deeplinkConnect_fn).call(this, scopes, caipAccountIds, sessionProperties), scopes, transportType);
2555
2562
  }
2556
- return __privateMethod(this, _MultichainSDK_instances, handleConnection_fn).call(this, __privateMethod(this, _MultichainSDK_instances, showInstallModal_fn).call(this, shouldShowInstallModal, scopes, caipAccountIds, sessionProperties), scopes, transportType);
2563
+ return __privateMethod(this, _MetaMaskConnectMultichain_instances, handleConnection_fn).call(this, __privateMethod(this, _MetaMaskConnectMultichain_instances, showInstallModal_fn).call(this, shouldShowInstallModal, scopes, caipAccountIds, sessionProperties), scopes, transportType);
2557
2564
  });
2558
2565
  }
2559
2566
  emit(event, args) {
@@ -2613,7 +2620,7 @@ _dappClient = new WeakMap();
2613
2620
  _beforeUnloadListener = new WeakMap();
2614
2621
  _listener = new WeakMap();
2615
2622
  _sdkInfo = new WeakMap();
2616
- _MultichainSDK_instances = new WeakSet();
2623
+ _MetaMaskConnectMultichain_instances = new WeakSet();
2617
2624
  setupAnalytics_fn = function() {
2618
2625
  return __async(this, null, function* () {
2619
2626
  var _a2;
@@ -2656,19 +2663,19 @@ getStoredTransport_fn = function() {
2656
2663
  __privateSet(this, _transport2, apiTransport);
2657
2664
  __privateGet(this, _providerTransportWrapper).setupNotifcationListener();
2658
2665
  __privateSet(this, _listener, apiTransport.onNotification(
2659
- __privateMethod(this, _MultichainSDK_instances, onTransportNotification_fn).bind(this)
2666
+ __privateMethod(this, _MetaMaskConnectMultichain_instances, onTransportNotification_fn).bind(this)
2660
2667
  ));
2661
2668
  return apiTransport;
2662
2669
  }
2663
2670
  } else if (transportType === "mwp" /* MWP */) {
2664
2671
  const { adapter: kvstore } = this.options.storage;
2665
- const dappClient = yield __privateMethod(this, _MultichainSDK_instances, createDappClient_fn).call(this);
2672
+ const dappClient = yield __privateMethod(this, _MetaMaskConnectMultichain_instances, createDappClient_fn).call(this);
2666
2673
  const apiTransport = new MWPTransport(dappClient, kvstore);
2667
2674
  __privateSet(this, _dappClient, dappClient);
2668
2675
  __privateSet(this, _transport2, apiTransport);
2669
2676
  __privateGet(this, _providerTransportWrapper).setupNotifcationListener();
2670
2677
  __privateSet(this, _listener, apiTransport.onNotification(
2671
- __privateMethod(this, _MultichainSDK_instances, onTransportNotification_fn).bind(this)
2678
+ __privateMethod(this, _MetaMaskConnectMultichain_instances, onTransportNotification_fn).bind(this)
2672
2679
  ));
2673
2680
  return apiTransport;
2674
2681
  }
@@ -2679,7 +2686,7 @@ getStoredTransport_fn = function() {
2679
2686
  };
2680
2687
  setupTransport_fn = function() {
2681
2688
  return __async(this, null, function* () {
2682
- const transport = yield __privateMethod(this, _MultichainSDK_instances, getStoredTransport_fn).call(this);
2689
+ const transport = yield __privateMethod(this, _MetaMaskConnectMultichain_instances, getStoredTransport_fn).call(this);
2683
2690
  if (transport) {
2684
2691
  if (!this.transport.isConnected()) {
2685
2692
  this.status = "connecting";
@@ -2703,8 +2710,8 @@ init_fn = function() {
2703
2710
  if (typeof window !== "undefined" && ((_a2 = window.mmsdk) == null ? void 0 : _a2.isInitialized)) {
2704
2711
  logger2("MetaMaskSDK: init already initialized");
2705
2712
  } else {
2706
- yield __privateMethod(this, _MultichainSDK_instances, setupAnalytics_fn).call(this);
2707
- yield __privateMethod(this, _MultichainSDK_instances, setupTransport_fn).call(this);
2713
+ yield __privateMethod(this, _MetaMaskConnectMultichain_instances, setupAnalytics_fn).call(this);
2714
+ yield __privateMethod(this, _MetaMaskConnectMultichain_instances, setupTransport_fn).call(this);
2708
2715
  try {
2709
2716
  const baseProps = yield getBaseAnalyticsProperties(
2710
2717
  this.options,
@@ -2748,13 +2755,13 @@ setupMWP_fn = function() {
2748
2755
  return;
2749
2756
  }
2750
2757
  const { adapter: kvstore } = this.options.storage;
2751
- const dappClient = yield __privateMethod(this, _MultichainSDK_instances, createDappClient_fn).call(this);
2758
+ const dappClient = yield __privateMethod(this, _MetaMaskConnectMultichain_instances, createDappClient_fn).call(this);
2752
2759
  __privateSet(this, _dappClient, dappClient);
2753
2760
  const apiTransport = new MWPTransport(dappClient, kvstore);
2754
2761
  __privateSet(this, _transport2, apiTransport);
2755
2762
  __privateGet(this, _providerTransportWrapper).setupNotifcationListener();
2756
2763
  __privateSet(this, _listener, this.transport.onNotification(
2757
- __privateMethod(this, _MultichainSDK_instances, onTransportNotification_fn).bind(this)
2764
+ __privateMethod(this, _MetaMaskConnectMultichain_instances, onTransportNotification_fn).bind(this)
2758
2765
  ));
2759
2766
  yield this.storage.setTransport("mwp" /* MWP */);
2760
2767
  });
@@ -2769,13 +2776,13 @@ onBeforeUnload_fn = function() {
2769
2776
  };
2770
2777
  createBeforeUnloadListener_fn = function() {
2771
2778
  if (typeof window !== "undefined" && typeof window.addEventListener !== "undefined") {
2772
- window.addEventListener("beforeunload", __privateMethod(this, _MultichainSDK_instances, onBeforeUnload_fn).bind(this));
2779
+ window.addEventListener("beforeunload", __privateMethod(this, _MetaMaskConnectMultichain_instances, onBeforeUnload_fn).bind(this));
2773
2780
  }
2774
2781
  return () => {
2775
2782
  if (typeof window !== "undefined" && typeof window.removeEventListener !== "undefined") {
2776
2783
  window.removeEventListener(
2777
2784
  "beforeunload",
2778
- __privateMethod(this, _MultichainSDK_instances, onBeforeUnload_fn).bind(this)
2785
+ __privateMethod(this, _MetaMaskConnectMultichain_instances, onBeforeUnload_fn).bind(this)
2779
2786
  );
2780
2787
  }
2781
2788
  };
@@ -2851,11 +2858,11 @@ renderInstallModalAsync_fn = function(desktopPreferred, scopes, caipAccountIds,
2851
2858
  showInstallModal_fn = function(desktopPreferred, scopes, caipAccountIds, sessionProperties) {
2852
2859
  return __async(this, null, function* () {
2853
2860
  var _a2;
2854
- (_a2 = __privateGet(this, _beforeUnloadListener)) != null ? _a2 : __privateSet(this, _beforeUnloadListener, __privateMethod(this, _MultichainSDK_instances, createBeforeUnloadListener_fn).call(this));
2861
+ (_a2 = __privateGet(this, _beforeUnloadListener)) != null ? _a2 : __privateSet(this, _beforeUnloadListener, __privateMethod(this, _MetaMaskConnectMultichain_instances, createBeforeUnloadListener_fn).call(this));
2855
2862
  if (this.options.ui.headless) {
2856
- yield __privateMethod(this, _MultichainSDK_instances, headlessConnect_fn).call(this, scopes, caipAccountIds, sessionProperties);
2863
+ yield __privateMethod(this, _MetaMaskConnectMultichain_instances, headlessConnect_fn).call(this, scopes, caipAccountIds, sessionProperties);
2857
2864
  } else {
2858
- yield __privateMethod(this, _MultichainSDK_instances, renderInstallModalAsync_fn).call(this, desktopPreferred, scopes, caipAccountIds, sessionProperties);
2865
+ yield __privateMethod(this, _MetaMaskConnectMultichain_instances, renderInstallModalAsync_fn).call(this, desktopPreferred, scopes, caipAccountIds, sessionProperties);
2859
2866
  }
2860
2867
  });
2861
2868
  };
@@ -2907,7 +2914,7 @@ setupDefaultTransport_fn = function() {
2907
2914
  yield this.storage.setTransport("browser" /* Browser */);
2908
2915
  const transport = new DefaultTransport();
2909
2916
  __privateSet(this, _listener, transport.onNotification(
2910
- __privateMethod(this, _MultichainSDK_instances, onTransportNotification_fn).bind(this)
2917
+ __privateMethod(this, _MetaMaskConnectMultichain_instances, onTransportNotification_fn).bind(this)
2911
2918
  ));
2912
2919
  __privateSet(this, _transport2, transport);
2913
2920
  __privateGet(this, _providerTransportWrapper).setupNotifcationListener();
@@ -3020,7 +3027,7 @@ handleConnection_fn = function(promise, scopes, transportType) {
3020
3027
  }));
3021
3028
  });
3022
3029
  };
3023
- var MultichainSDK = _MultichainSDK;
3030
+ var MetaMaskConnectMultichain = _MetaMaskConnectMultichain;
3024
3031
 
3025
3032
  // src/store/index.ts
3026
3033
  var uuid = __toESM(require("uuid"));
@@ -3384,7 +3391,7 @@ var createMultichainClient = (options) => __async(null, null, function* () {
3384
3391
  storage = options.storage;
3385
3392
  }
3386
3393
  const factory = new ModalFactory(uiModules);
3387
- return MultichainSDK.create(__spreadProps(__spreadValues({}, options), {
3394
+ return MetaMaskConnectMultichain.create(__spreadProps(__spreadValues({}, options), {
3388
3395
  storage,
3389
3396
  ui: __spreadProps(__spreadValues({}, options.ui), {
3390
3397
  factory