@metamask/connect-multichain 0.2.1 → 0.3.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 (38) hide show
  1. package/CHANGELOG.md +13 -1
  2. package/dist/browser/es/connect-multichain.d.mts +1 -1
  3. package/dist/browser/es/connect-multichain.mjs +14 -26
  4. package/dist/browser/es/connect-multichain.mjs.map +1 -1
  5. package/dist/browser/es/metafile-esm.json +1 -1
  6. package/dist/browser/iife/connect-multichain.d.ts +1 -1
  7. package/dist/browser/iife/connect-multichain.js +14 -26
  8. package/dist/browser/iife/connect-multichain.js.map +1 -1
  9. package/dist/browser/iife/metafile-iife.json +1 -1
  10. package/dist/browser/umd/connect-multichain.d.ts +1 -1
  11. package/dist/browser/umd/connect-multichain.js +14 -26
  12. package/dist/browser/umd/connect-multichain.js.map +1 -1
  13. package/dist/browser/umd/metafile-cjs.json +1 -1
  14. package/dist/node/cjs/connect-multichain.d.ts +1 -1
  15. package/dist/node/cjs/connect-multichain.js +14 -26
  16. package/dist/node/cjs/connect-multichain.js.map +1 -1
  17. package/dist/node/cjs/metafile-cjs.json +1 -1
  18. package/dist/node/es/connect-multichain.d.mts +1 -1
  19. package/dist/node/es/connect-multichain.mjs +14 -26
  20. package/dist/node/es/connect-multichain.mjs.map +1 -1
  21. package/dist/node/es/metafile-esm.json +1 -1
  22. package/dist/react-native/es/connect-multichain.d.mts +1 -1
  23. package/dist/react-native/es/connect-multichain.mjs +14 -26
  24. package/dist/react-native/es/connect-multichain.mjs.map +1 -1
  25. package/dist/react-native/es/metafile-esm.json +1 -1
  26. package/dist/src/domain/multichain/types.d.ts +1 -1
  27. package/dist/src/domain/multichain/types.d.ts.map +1 -1
  28. package/dist/src/multichain/index.d.ts.map +1 -1
  29. package/dist/src/multichain/index.js +0 -13
  30. package/dist/src/multichain/index.js.map +1 -1
  31. package/dist/src/multichain/utils/index.d.ts +1 -1
  32. package/dist/src/multichain/utils/index.d.ts.map +1 -1
  33. package/dist/src/multichain/utils/index.js +11 -14
  34. package/dist/src/multichain/utils/index.js.map +1 -1
  35. package/dist/src/ui/index.js +1 -1
  36. package/dist/src/ui/index.js.map +1 -1
  37. package/dist/types/connect-multichain.d.ts +1 -1
  38. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.3.0]
11
+
12
+ ### Changed
13
+
14
+ - **BREAKING** Make the `dapp.name` and `dapp.url` properties required in `createMetamaskConnect()` ([#56](https://github.com/MetaMask/connect-monorepo/pull/56))
15
+ - The `dapp.url` property is now always overwritten with the value of the page's url when MetaMask Connect is running in a browser context ([#56](https://github.com/MetaMask/connect-monorepo/pull/56))
16
+
17
+ ### Fixed
18
+
19
+ - Fixed mobile deeplink bug that occurred when `MultichainSDK.connect()` was called and the transport was already connected ([#57](https://github.com/MetaMask/connect-monorepo/pull/57))
20
+
10
21
  ## [0.2.1]
11
22
 
12
23
  ### Added
@@ -45,7 +56,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
45
56
 
46
57
  - Initial release
47
58
 
48
- [Unreleased]: https://github.com/MetaMask/metamask-connect-monorepo/compare/@metamask/connect-multichain@0.2.1...HEAD
59
+ [Unreleased]: https://github.com/MetaMask/metamask-connect-monorepo/compare/@metamask/connect-multichain@0.3.0...HEAD
60
+ [0.3.0]: https://github.com/MetaMask/metamask-connect-monorepo/compare/@metamask/connect-multichain@0.2.1...@metamask/connect-multichain@0.3.0
49
61
  [0.2.1]: https://github.com/MetaMask/metamask-connect-monorepo/compare/@metamask/connect-multichain@0.2.0...@metamask/connect-multichain@0.2.1
50
62
  [0.2.0]: https://github.com/MetaMask/metamask-connect-monorepo/compare/@metamask/connect-multichain@0.1.0...@metamask/connect-multichain@0.2.0
51
63
  [0.1.0]: https://github.com/MetaMask/metamask-connect-monorepo/releases/tag/@metamask/connect-multichain@0.1.0
@@ -359,7 +359,7 @@ declare function hasExtension(): Promise<boolean>;
359
359
  * - Using a base64-encoded icon
360
360
  */
361
361
  type DappSettings = {
362
- name?: string;
362
+ name: string;
363
363
  url?: string;
364
364
  } & ({
365
365
  iconUrl?: string;
@@ -603,11 +603,8 @@ function compressString(str) {
603
603
  return base64Encode(binaryString);
604
604
  }
605
605
  function getDappId(dapp) {
606
- var _a, _b;
607
- if (typeof window === "undefined" || typeof window.location === "undefined") {
608
- return (_b = (_a = dapp == null ? void 0 : dapp.name) != null ? _a : dapp == null ? void 0 : dapp.url) != null ? _b : "N/A";
609
- }
610
- return window.location.hostname;
606
+ var _a;
607
+ return (_a = dapp.url) != null ? _a : dapp.name;
611
608
  }
612
609
  function openDeeplink(options, deeplink, universalLink) {
613
610
  const { mobile } = options;
@@ -637,17 +634,19 @@ function getOptionalScopes(scopes) {
637
634
  );
638
635
  }
639
636
  function setupDappMetadata(options) {
640
- var _a;
637
+ var _a, _b;
641
638
  const platform = getPlatformType();
642
639
  const isBrowser = platform === "web-desktop" /* DesktopWeb */ || platform === "web-mobile" /* MobileWeb */ || platform === "in-app-browser" /* MetaMaskMobileWebview */;
643
- if (!((_a = options.dapp) == null ? void 0 : _a.url)) {
644
- if (isBrowser) {
645
- options.dapp = __spreadProps(__spreadValues({}, options.dapp), {
646
- url: `${window.location.protocol}//${window.location.host}`
647
- });
648
- } else {
649
- throw new Error("You must provide dapp url");
650
- }
640
+ if (!((_a = options.dapp) == null ? void 0 : _a.name)) {
641
+ throw new Error("You must provide dapp name");
642
+ }
643
+ if (isBrowser) {
644
+ options.dapp = __spreadProps(__spreadValues({}, options.dapp), {
645
+ url: `${window.location.protocol}//${window.location.host}`
646
+ });
647
+ }
648
+ if (!((_b = options.dapp) == null ? void 0 : _b.url)) {
649
+ throw new Error("You must provide dapp url");
651
650
  }
652
651
  const BASE_64_ICON_MAX_LENGTH = 163400;
653
652
  const urlPattern = /^(http|https):\/\/[^\s]*$/;
@@ -2503,17 +2502,6 @@ var MultichainSDK = class _MultichainSDK extends MultichainCore {
2503
2502
  }
2504
2503
  }
2505
2504
  );
2506
- } else {
2507
- timeout = setTimeout(() => {
2508
- var _a;
2509
- const deeplink = this.options.ui.factory.createDeeplink();
2510
- const universalLink = this.options.ui.factory.createUniversalLink();
2511
- if ((_a = this.options.mobile) == null ? void 0 : _a.preferredOpenLink) {
2512
- this.options.mobile.preferredOpenLink(deeplink, "_self");
2513
- } else {
2514
- openDeeplink(this.options, deeplink, universalLink);
2515
- }
2516
- }, 250);
2517
2505
  }
2518
2506
  this.transport.connect({ scopes, caipAccountIds }).then(resolve).catch((error) => {
2519
2507
  this.storage.removeTransport();
@@ -2993,7 +2981,7 @@ var ModalFactory = class {
2993
2981
  }
2994
2982
  createDeeplink(connectionRequest) {
2995
2983
  if (!connectionRequest) {
2996
- return `${METAMASK_DEEPLINK_BASE}`;
2984
+ throw new Error("createDeeplink can only be called with a connection request");
2997
2985
  }
2998
2986
  const json = JSON.stringify(connectionRequest);
2999
2987
  const compressed = compressString(json);