@multiversx/sdk-dapp-liquidity 1.0.9 → 1.0.11

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 (49) hide show
  1. package/{index-B9WqxUXM.mjs → index-B4Eq5P3w.mjs} +1 -1
  2. package/{index-CnudU77V.js → index-C4WV9nam.js} +1 -1
  3. package/{index-DZHiA1sX.js → index-CWMcKi_X.js} +1 -1
  4. package/{index-DSnomXRI.mjs → index-D8E0O3qL.mjs} +2850 -2131
  5. package/{index-BXwpbIDQ.mjs → index-DJ8CdHSw.mjs} +1 -1
  6. package/{index-cvy2-uZ_.js → index-nigVQYBu.js} +2818 -2099
  7. package/index.js +4 -4
  8. package/index.mjs +4 -4
  9. package/package.json +4 -4
  10. package/{react-BaXyw3AO.js → react-C43nEIqn.js} +158 -65
  11. package/react-DKUsVej7.js +50 -0
  12. package/react-Dp0H8q2z.mjs +50 -0
  13. package/{react-B9sQBOh0.mjs → react-wMhOUFOm.mjs} +158 -65
  14. package/reactjs/components/BridgeForm/BridgeForm.js +17 -10
  15. package/reactjs/components/BridgeForm/BridgeForm.mjs +17 -10
  16. package/reactjs/components/Connect/BridgeAccountDisplay.js +2 -2
  17. package/reactjs/components/Connect/BridgeAccountDisplay.mjs +2 -2
  18. package/reactjs/components/Connect/CustomConnectButton.js +2 -2
  19. package/reactjs/components/Connect/CustomConnectButton.mjs +2 -2
  20. package/reactjs/components/Connect/SwitchChainButton.js +3 -3
  21. package/reactjs/components/Connect/SwitchChainButton.mjs +3 -3
  22. package/reactjs/components/TokenSelector/components/ChainSelect/components/SelectedChainOption.js +1 -1
  23. package/reactjs/components/TokenSelector/components/ChainSelect/components/SelectedChainOption.mjs +1 -1
  24. package/reactjs/components/TokenSelector/components/TokenItem.js +1 -1
  25. package/reactjs/components/TokenSelector/components/TokenItem.mjs +1 -1
  26. package/reactjs/hooks/index.js +1 -1
  27. package/reactjs/hooks/index.mjs +1 -1
  28. package/reactjs/hooks/useAccount.js +2 -2
  29. package/reactjs/hooks/useAccount.mjs +2 -2
  30. package/reactjs/hooks/useBalances.js +1 -1
  31. package/reactjs/hooks/useBalances.mjs +1 -1
  32. package/reactjs/hooks/useGetChainId.js +1 -1
  33. package/reactjs/hooks/useGetChainId.mjs +1 -1
  34. package/reactjs/index.js +4 -4
  35. package/reactjs/index.mjs +4 -4
  36. package/reactjs/init/init.js +1 -1
  37. package/reactjs/init/init.mjs +1 -1
  38. package/reactjs/init/tests/init.spec.js +2 -2
  39. package/reactjs/init/tests/init.spec.mjs +2 -2
  40. package/reactjs/queries/useGetEvmTokensBalances.query.js +3 -3
  41. package/reactjs/queries/useGetEvmTokensBalances.query.mjs +3 -3
  42. package/reactjs/reexports.js +3 -3
  43. package/reactjs/reexports.mjs +3 -3
  44. package/{useBalances-Bxtc4GNK.js → useBalances-C4YhEYxy.js} +3 -1
  45. package/{useBalances-DA3zEruz.mjs → useBalances-C_69CFoa.mjs} +3 -1
  46. package/{w3m-modal-DCcF1qEB.js → w3m-modal-DLyg7Voy.js} +1 -1
  47. package/{w3m-modal-DK3G5GJp.mjs → w3m-modal-hC-B8qZP.mjs} +1 -1
  48. package/react-CNXJSTCv.js +0 -38
  49. package/react-CSQpf1zk.mjs +0 -38
package/index.js CHANGED
@@ -52,7 +52,7 @@ const reactjs_hooks_validation_useSecondAmountSchema = require("./reactjs/hooks/
52
52
  const reactjs_hooks_validation_useTestHasEnoughFunds = require("./reactjs/hooks/validation/useTestHasEnoughFunds.js");
53
53
  const reactjs_hooks_validation_useTestIsConnected = require("./reactjs/hooks/validation/useTestIsConnected.js");
54
54
  const reactjs_hooks_useAccount = require("./reactjs/hooks/useAccount.js");
55
- const reactjs_hooks_useBalances = require("./useBalances-Bxtc4GNK.js");
55
+ const reactjs_hooks_useBalances = require("./useBalances-C4YhEYxy.js");
56
56
  const reactjs_hooks_useBridgeFormik = require("./reactjs/hooks/useBridgeFormik.js");
57
57
  const reactjs_hooks_useDebounce = require("./reactjs/hooks/useDebounce.js");
58
58
  const reactjs_hooks_useFetchBridgeData = require("./reactjs/hooks/useFetchBridgeData.js");
@@ -81,11 +81,11 @@ const reactjs_utils_pipe = require("./reactjs/utils/pipe.js");
81
81
  const reactjs_utils_removeCommas = require("./reactjs/utils/removeCommas.js");
82
82
  const reactjs_utils_roundAmount = require("./reactjs/utils/roundAmount.js");
83
83
  const reactjs_utils_testNumber = require("./reactjs/utils/testNumber.js");
84
- const react$1 = require("./react-BaXyw3AO.js");
84
+ const react$1 = require("./react-C43nEIqn.js");
85
85
  const wagmi = require("wagmi");
86
86
  const reactjs_constants_chains = require("./reactjs/constants/chains.js");
87
- const index = require("./index-DZHiA1sX.js");
88
- const react = require("./react-CNXJSTCv.js");
87
+ const index = require("./index-CWMcKi_X.js");
88
+ const react = require("./react-DKUsVej7.js");
89
89
  exports.confirmRate = api_confirmRate.confirmRate;
90
90
  exports.getChains = api_getChains.getChains;
91
91
  exports.getRate = api_getRate.getRate;
package/index.mjs CHANGED
@@ -49,7 +49,7 @@ import { useSecondAmountSchema } from "./reactjs/hooks/validation/useSecondAmoun
49
49
  import { useTestHasEnoughFunds } from "./reactjs/hooks/validation/useTestHasEnoughFunds.mjs";
50
50
  import { useTestIsConnected } from "./reactjs/hooks/validation/useTestIsConnected.mjs";
51
51
  import { useAccount } from "./reactjs/hooks/useAccount.mjs";
52
- import { u } from "./useBalances-DA3zEruz.mjs";
52
+ import { u } from "./useBalances-C_69CFoa.mjs";
53
53
  import { BridgeFormikValuesEnum, useBridgeFormik } from "./reactjs/hooks/useBridgeFormik.mjs";
54
54
  import { useDebounce } from "./reactjs/hooks/useDebounce.mjs";
55
55
  import { useFetchBridgeData } from "./reactjs/hooks/useFetchBridgeData.mjs";
@@ -78,11 +78,11 @@ import { pipe } from "./reactjs/utils/pipe.mjs";
78
78
  import { removeCommas } from "./reactjs/utils/removeCommas.mjs";
79
79
  import { roundAmount } from "./reactjs/utils/roundAmount.mjs";
80
80
  import { testNumber } from "./reactjs/utils/testNumber.mjs";
81
- import { u as u2 } from "./react-B9sQBOh0.mjs";
81
+ import { u as u2 } from "./react-wMhOUFOm.mjs";
82
82
  import { useWaitForTransactionReceipt } from "wagmi";
83
83
  import { ALL_NETWORK_ID, chainIdentifier } from "./reactjs/constants/chains.mjs";
84
- import { u as u3, a, e, b, c, d } from "./index-BXwpbIDQ.mjs";
85
- import { u as u4, b as b2, a as a2 } from "./react-CSQpf1zk.mjs";
84
+ import { u as u3, a, e, b, c, d } from "./index-DJ8CdHSw.mjs";
85
+ import { u as u4, b as b2, a as a2 } from "./react-Dp0H8q2z.mjs";
86
86
  export {
87
87
  ALL_NETWORK_ID,
88
88
  AccountAddress,
package/package.json CHANGED
@@ -28,7 +28,7 @@
28
28
  },
29
29
  "homepage": "https://github.com/multiversx/mx-sdk-dapp-liquidity#readme",
30
30
  "license": "MIT",
31
- "version": "1.0.9",
31
+ "version": "1.0.11",
32
32
  "main": "index.js",
33
33
  "module": "index.mjs",
34
34
  "types": "index.d.ts",
@@ -50,7 +50,7 @@
50
50
  "@fortawesome/react-fontawesome": "0.2.0",
51
51
  "@headlessui/react": "2.2.0",
52
52
  "@multiversx/sdk-dapp-utils": "1.0.5",
53
- "@reown/appkit-adapter-wagmi": "1.6.8",
53
+ "@reown/appkit-adapter-wagmi": "1.6.9",
54
54
  "@tanstack/react-query": "5.62.7",
55
55
  "@types/numeral": "2.0.5",
56
56
  "animated-number-react": "0.1.2",
@@ -64,8 +64,8 @@
64
64
  "react-select": "5.10.0",
65
65
  "react-toastify": "11.0.3",
66
66
  "tailwind-merge": "2.6.0",
67
- "viem": "2.23.2",
68
- "wagmi": "2.14.11",
67
+ "viem": "2.23.7",
68
+ "wagmi": "2.14.12",
69
69
  "yup": "1.4.0"
70
70
  },
71
71
  "peerDependencies": {
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
- const index = require("./index-cvy2-uZ_.js");
4
- const react = require("./react-CNXJSTCv.js");
3
+ const index = require("./index-nigVQYBu.js");
4
+ const react = require("./react-DKUsVej7.js");
5
5
  const viem = require("viem");
6
6
  require("viem/chains");
7
- const index$1 = require("./index-DZHiA1sX.js");
7
+ const index$1 = require("./index-CWMcKi_X.js");
8
8
  const ParseUtil = {
9
9
  validateCaipAddress(address) {
10
10
  var _a;
@@ -231,6 +231,20 @@ class W3mFrameProvider {
231
231
  this.user = event.payload;
232
232
  }
233
233
  });
234
+ this.initPromise = new Promise((resolve) => {
235
+ this.w3mFrame.events.onFrameEvent((event) => {
236
+ if (event.type === index.W3mFrameConstants.FRAME_READY) {
237
+ this.initPromise = void 0;
238
+ resolve();
239
+ }
240
+ });
241
+ });
242
+ }
243
+ async init() {
244
+ this.w3mFrame.initFrame();
245
+ if (this.initPromise) {
246
+ await this.initPromise;
247
+ }
234
248
  }
235
249
  getLoginEmailUsed() {
236
250
  return Boolean(index.W3mFrameStorage.get(index.W3mFrameConstants.EMAIL_LOGIN_USED_KEY));
@@ -460,6 +474,7 @@ class W3mFrameProvider {
460
474
  async connectSocial(uri) {
461
475
  var _a;
462
476
  try {
477
+ this.w3mFrame.initFrame();
463
478
  const response = await this.appEvent({
464
479
  type: index.W3mFrameConstants.APP_CONNECT_SOCIAL,
465
480
  payload: { uri }
@@ -738,6 +753,13 @@ const PresetsUtil = {
738
753
  250: "06b26297-fe0c-4733-5d6b-ffa5498aac00",
739
754
  10: "ab9c186a-c52f-464b-2906-ca59d760a400",
740
755
  137: "41d04d42-da3b-4453-8506-668cc0727900",
756
+ 5e3: "e86fae9b-b770-4eea-e520-150e12c81100",
757
+ 295: "6a97d510-cac8-4e58-c7ce-e8681b044c00",
758
+ 11155111: "e909ea0a-f92a-4512-c8fc-748044ea6800",
759
+ 84532: "a18a7ecd-e307-4360-4746-283182228e00",
760
+ 1301: "4eeea7ef-0014-4649-5d1d-07271a80f600",
761
+ 130: "2257980a-3463-48c6-cbac-a42d2a956e00",
762
+ 10143: "0a728e83-bacb-46db-7844-948f05434900",
741
763
  100: "02b53f6a-e3d4-479e-1cb4-21178987d100",
742
764
  9001: "f926ff41-260d-4028-635e-91913fc28e00",
743
765
  324: "b310f07f-4ef7-49f3-7073-2a0a39685800",
@@ -1016,7 +1038,8 @@ class W3mFrameProviderSingleton {
1016
1038
  }
1017
1039
  const WcConstantsUtil = {
1018
1040
  ERROR_CODE_UNRECOGNIZED_CHAIN_ID: 4902,
1019
- ERROR_CODE_DEFAULT: 5e3
1041
+ ERROR_CODE_DEFAULT: 5e3,
1042
+ ERROR_INVALID_CHAIN_ID: 32603
1020
1043
  };
1021
1044
  const WcHelpersUtil = {
1022
1045
  getMethodsByChainNamespace(chainNamespace) {
@@ -1032,21 +1055,31 @@ const WcHelpersUtil = {
1032
1055
  ];
1033
1056
  case "eip155":
1034
1057
  return [
1035
- "personal_sign",
1058
+ "eth_accounts",
1059
+ "eth_requestAccounts",
1060
+ "eth_sendRawTransaction",
1036
1061
  "eth_sign",
1037
1062
  "eth_signTransaction",
1038
1063
  "eth_signTypedData",
1039
1064
  "eth_signTypedData_v3",
1040
1065
  "eth_signTypedData_v4",
1041
- "eth_sendRawTransaction",
1042
1066
  "eth_sendTransaction",
1043
- "wallet_getCapabilities",
1044
- "wallet_sendCalls",
1045
- "wallet_showCallsStatus",
1067
+ "personal_sign",
1068
+ "wallet_switchEthereumChain",
1069
+ "wallet_addEthereumChain",
1070
+ "wallet_getPermissions",
1071
+ "wallet_requestPermissions",
1072
+ "wallet_registerOnboarding",
1073
+ "wallet_watchAsset",
1074
+ "wallet_scanQRCode",
1075
+ // EIP-5792
1046
1076
  "wallet_getCallsStatus",
1077
+ "wallet_showCallsStatus",
1078
+ "wallet_sendCalls",
1079
+ "wallet_getCapabilities",
1080
+ // EIP-7715
1047
1081
  "wallet_grantPermissions",
1048
1082
  "wallet_revokePermissions",
1049
- "wallet_switchEthereumChain",
1050
1083
  //EIP-7811
1051
1084
  "wallet_getAssets"
1052
1085
  ];
@@ -1435,6 +1468,9 @@ class UniversalAdapter extends AdapterBlueprint {
1435
1468
  hash: ""
1436
1469
  });
1437
1470
  }
1471
+ walletGetAssets(_params) {
1472
+ return Promise.resolve({});
1473
+ }
1438
1474
  async writeContract() {
1439
1475
  return Promise.resolve({
1440
1476
  hash: ""
@@ -1481,7 +1517,7 @@ class UniversalAdapter extends AdapterBlueprint {
1481
1517
  params: [{ chainId: viem.toHex(caipNetwork.id) }]
1482
1518
  }));
1483
1519
  } catch (switchError) {
1484
- if (switchError.code === WcConstantsUtil.ERROR_CODE_UNRECOGNIZED_CHAIN_ID || switchError.code === WcConstantsUtil.ERROR_CODE_DEFAULT || ((_c = (_b = switchError == null ? void 0 : switchError.data) == null ? void 0 : _b.originalError) == null ? void 0 : _c.code) === WcConstantsUtil.ERROR_CODE_UNRECOGNIZED_CHAIN_ID) {
1520
+ if (switchError.code === WcConstantsUtil.ERROR_CODE_UNRECOGNIZED_CHAIN_ID || switchError.code === WcConstantsUtil.ERROR_INVALID_CHAIN_ID || switchError.code === WcConstantsUtil.ERROR_CODE_DEFAULT || ((_c = (_b = switchError == null ? void 0 : switchError.data) == null ? void 0 : _b.originalError) == null ? void 0 : _c.code) === WcConstantsUtil.ERROR_CODE_UNRECOGNIZED_CHAIN_ID) {
1485
1521
  try {
1486
1522
  await ((_f = connector.provider) == null ? void 0 : _f.request({
1487
1523
  method: "wallet_addEthereumChain",
@@ -1559,8 +1595,8 @@ class AppKit {
1559
1595
  this.setProfileImage = (profileImage, chain) => {
1560
1596
  index.AccountController.setProfileImage(profileImage, chain);
1561
1597
  };
1562
- this.setUser = (user) => {
1563
- index.AccountController.setUser(user);
1598
+ this.setUser = (user, chain) => {
1599
+ index.AccountController.setUser(user, chain);
1564
1600
  if (index.OptionsController.state.enableEmbedded) {
1565
1601
  index.ModalController.close();
1566
1602
  }
@@ -1614,7 +1650,7 @@ class AppKit {
1614
1650
  index.AccountController.setSmartAccountDeployed(isDeployed, chain);
1615
1651
  };
1616
1652
  this.setConnectedWalletInfo = (connectedWalletInfo, chain) => {
1617
- index.AccountController.setConnectedWalletInfo(connectedWalletInfo, chain);
1653
+ index.AccountController.setConnectedWalletInfo(connectedWalletInfo ? { type: index.ProviderUtil.getProviderId(chain), ...connectedWalletInfo } : void 0, chain);
1618
1654
  };
1619
1655
  this.setSmartAccountEnabledNetworks = (smartAccountEnabledNetworks, chain) => {
1620
1656
  index.ChainController.setSmartAccountEnabledNetworks(smartAccountEnabledNetworks, chain);
@@ -1703,14 +1739,14 @@ class AppKit {
1703
1739
  var _a;
1704
1740
  return (_a = index.ChainController.state.activeCaipNetwork) == null ? void 0 : _a.id;
1705
1741
  }
1706
- switchNetwork(appKitNetwork) {
1742
+ async switchNetwork(appKitNetwork) {
1707
1743
  var _a;
1708
1744
  const network = (_a = this.caipNetworks) == null ? void 0 : _a.find((n) => n.id === appKitNetwork.id);
1709
1745
  if (!network) {
1710
1746
  index.AlertController.open(ErrorUtil.ALERT_ERRORS.SWITCH_NETWORK_NOT_FOUND, "error");
1711
1747
  return;
1712
1748
  }
1713
- index.ChainController.switchActiveNetwork(network);
1749
+ await index.ChainController.switchActiveNetwork(network);
1714
1750
  }
1715
1751
  getWalletProvider() {
1716
1752
  return index.ChainController.state.activeChain ? index.ProviderUtil.state.providers[index.ChainController.state.activeChain] : null;
@@ -1747,25 +1783,32 @@ class AppKit {
1747
1783
  getWalletInfo() {
1748
1784
  return index.AccountController.state.connectedWalletInfo;
1749
1785
  }
1750
- subscribeAccount(callback) {
1786
+ subscribeAccount(callback, namespace) {
1751
1787
  function updateVal() {
1752
- const authConnector = index.ConnectorController.getAuthConnector();
1788
+ const authConnector = index.ConnectorController.getAuthConnector(namespace);
1789
+ const accountState = index.ChainController.getAccountDataByChainNamespace(namespace);
1790
+ if (!accountState) {
1791
+ return;
1792
+ }
1753
1793
  callback({
1754
- allAccounts: index.AccountController.state.allAccounts,
1755
- caipAddress: index.ChainController.state.activeCaipAddress,
1756
- address: index.CoreHelperUtil.getPlainAddress(index.ChainController.state.activeCaipAddress),
1757
- isConnected: Boolean(index.ChainController.state.activeCaipAddress),
1758
- status: index.AccountController.state.status,
1794
+ allAccounts: accountState.allAccounts,
1795
+ caipAddress: accountState.caipAddress,
1796
+ address: index.CoreHelperUtil.getPlainAddress(accountState.caipAddress),
1797
+ isConnected: Boolean(accountState.caipAddress),
1798
+ status: accountState.status,
1759
1799
  embeddedWalletInfo: authConnector ? {
1760
- user: index.AccountController.state.user,
1761
- authProvider: index.AccountController.state.socialProvider || "email",
1762
- accountType: index.AccountController.state.preferredAccountType,
1763
- isSmartAccountDeployed: Boolean(index.AccountController.state.smartAccountDeployed)
1800
+ user: accountState.user,
1801
+ authProvider: accountState.socialProvider || "email",
1802
+ accountType: accountState.preferredAccountType,
1803
+ isSmartAccountDeployed: Boolean(accountState.smartAccountDeployed)
1764
1804
  } : void 0
1765
1805
  });
1766
1806
  }
1767
- index.ChainController.subscribe(updateVal);
1768
- index.AccountController.subscribe(updateVal);
1807
+ if (namespace) {
1808
+ index.ChainController.subscribeChainProp("accountState", updateVal, namespace);
1809
+ } else {
1810
+ index.ChainController.subscribe(updateVal);
1811
+ }
1769
1812
  index.ConnectorController.subscribe(updateVal);
1770
1813
  }
1771
1814
  subscribeNetwork(callback) {
@@ -1995,16 +2038,14 @@ class AppKit {
1995
2038
  index.ChainController.setActiveCaipNetwork(network);
1996
2039
  }
1997
2040
  }
1998
- async initializeBlockchainApiController(options) {
1999
- await index.BlockchainApiController.getSupportedNetworks({
2000
- projectId: options.projectId
2001
- });
2041
+ async initializeBlockchainApiController() {
2042
+ await index.BlockchainApiController.getSupportedNetworks();
2002
2043
  }
2003
2044
  initControllers(options) {
2004
2045
  this.initializeOptionsController(options);
2005
2046
  this.initializeChainController(options);
2006
2047
  this.initializeThemeController(options);
2007
- this.initializeBlockchainApiController(options);
2048
+ this.initializeBlockchainApiController();
2008
2049
  if (options.excludeWalletIds) {
2009
2050
  index.ApiController.initializeExcludedWalletRdns({ ids: options.excludeWalletIds });
2010
2051
  }
@@ -2115,7 +2156,7 @@ class AppKit {
2115
2156
  await (adapter == null ? void 0 : adapter.disconnect({ provider, providerType }));
2116
2157
  index.StorageUtil.removeConnectedNamespace(namespace);
2117
2158
  index.ProviderUtil.resetChain(namespace);
2118
- this.setUser(void 0);
2159
+ this.setUser(void 0, namespace);
2119
2160
  this.setStatus("disconnected", namespace);
2120
2161
  },
2121
2162
  checkInstalled: (ids) => {
@@ -2204,7 +2245,7 @@ class AppKit {
2204
2245
  },
2205
2246
  getCapabilities: async (params) => {
2206
2247
  const adapter = this.getAdapter(index.ChainController.state.activeChain);
2207
- await (adapter == null ? void 0 : adapter.getCapabilities(params));
2248
+ return await (adapter == null ? void 0 : adapter.getCapabilities(params));
2208
2249
  },
2209
2250
  grantPermissions: async (params) => {
2210
2251
  const adapter = this.getAdapter(index.ChainController.state.activeChain);
@@ -2216,6 +2257,10 @@ class AppKit {
2216
2257
  return await adapter.revokePermissions(params);
2217
2258
  }
2218
2259
  return "0x";
2260
+ },
2261
+ walletGetAssets: async (params) => {
2262
+ const adapter = this.getAdapter(index.ChainController.state.activeChain);
2263
+ return await (adapter == null ? void 0 : adapter.walletGetAssets(params)) ?? {};
2219
2264
  }
2220
2265
  };
2221
2266
  this.networkControllerClient = {
@@ -2360,7 +2405,7 @@ class AppKit {
2360
2405
  });
2361
2406
  }
2362
2407
  this.setCaipAddress(caipAddress, namespace);
2363
- this.setUser({ ...index.AccountController.state.user || {}, email: user.email });
2408
+ this.setUser({ ...index.AccountController.state.user || {}, email: user.email }, namespace);
2364
2409
  const preferredAccountType = user.preferredAccountType || index.OptionsController.state.defaultAccountTypes[namespace];
2365
2410
  this.setPreferredAccountType(preferredAccountType, namespace);
2366
2411
  const userAccounts = (_a = user.accounts) == null ? void 0 : _a.map((account) => index.CoreHelperUtil.createAccount(namespace, account.address, account.type || index.OptionsController.state.defaultAccountTypes[namespace]));
@@ -2371,7 +2416,7 @@ class AppKit {
2371
2416
  this.setLoading(false);
2372
2417
  });
2373
2418
  provider.onSocialConnected(({ userName }) => {
2374
- this.setUser({ ...index.AccountController.state.user || {}, username: userName });
2419
+ this.setUser({ ...index.AccountController.state.user || {}, username: userName }, index.ChainController.state.activeChain);
2375
2420
  });
2376
2421
  provider.onGetSmartAccountEnabledNetworks((networks) => {
2377
2422
  this.setSmartAccountEnabledNetworks(networks, index.ChainController.state.activeChain);
@@ -2393,7 +2438,7 @@ class AppKit {
2393
2438
  }
2394
2439
  const email = provider.getEmail();
2395
2440
  const username = provider.getUsername();
2396
- this.setUser({ ...((_a = index.AccountController.state) == null ? void 0 : _a.user) || {}, username, email });
2441
+ this.setUser({ ...((_a = index.AccountController.state) == null ? void 0 : _a.user) || {}, username, email }, index.ChainController.state.activeChain);
2397
2442
  this.setupAuthConnectorListeners(provider);
2398
2443
  const { isConnected } = await provider.isConnected();
2399
2444
  const theme = index.ThemeController.getSnapshot();
@@ -2469,6 +2514,9 @@ class AppKit {
2469
2514
  const connectionStatus = index.StorageUtil.getConnectionStatus();
2470
2515
  if (connectionStatus === "connected") {
2471
2516
  this.setStatus("connecting", chainNamespace);
2517
+ } else if (connectionStatus === "disconnected") {
2518
+ index.StorageUtil.clearAddressCache();
2519
+ this.setStatus(connectionStatus, chainNamespace);
2472
2520
  } else {
2473
2521
  this.setStatus(connectionStatus, chainNamespace);
2474
2522
  }
@@ -2540,7 +2588,7 @@ class AppKit {
2540
2588
  async syncWalletConnectAccount() {
2541
2589
  const adapter = this.getAdapter(index.ChainController.state.activeChain);
2542
2590
  this.chainNamespaces.forEach(async (chainNamespace) => {
2543
- var _a, _b, _c, _d, _e, _f;
2591
+ var _a, _b, _c, _d, _e;
2544
2592
  const namespaceAccounts = ((_d = (_c = (_b = (_a = this.universalProvider) == null ? void 0 : _a.session) == null ? void 0 : _b.namespaces) == null ? void 0 : _c[chainNamespace]) == null ? void 0 : _d.accounts) || [];
2545
2593
  const activeChainId = (_e = index.ChainController.state.activeCaipNetwork) == null ? void 0 : _e.id;
2546
2594
  const sessionAddress = namespaceAccounts.find((account) => {
@@ -2563,22 +2611,6 @@ class AppKit {
2563
2611
  }
2564
2612
  index.StorageUtil.setConnectedConnectorId(chainNamespace, index.ConstantsUtil.CONNECTOR_ID.WALLET_CONNECT);
2565
2613
  index.StorageUtil.addConnectedNamespace(chainNamespace);
2566
- if ((adapter == null ? void 0 : adapter.adapterType) === "wagmi") {
2567
- try {
2568
- await (adapter == null ? void 0 : adapter.connect({
2569
- id: "walletConnect",
2570
- type: "WALLET_CONNECT",
2571
- chainId: (_f = index.ChainController.state.activeCaipNetwork) == null ? void 0 : _f.id
2572
- }));
2573
- } catch (error) {
2574
- if (adapter == null ? void 0 : adapter.reconnect) {
2575
- adapter == null ? void 0 : adapter.reconnect({
2576
- id: "walletConnect",
2577
- type: "WALLET_CONNECT"
2578
- });
2579
- }
2580
- }
2581
- }
2582
2614
  this.syncWalletConnectAccounts(chainNamespace);
2583
2615
  await this.syncAccount({
2584
2616
  address,
@@ -2684,6 +2716,13 @@ class AppKit {
2684
2716
  icon: (_a = provider.session.peer.metadata.icons) == null ? void 0 : _a[0]
2685
2717
  }, chainNamespace);
2686
2718
  }
2719
+ } else if (providerType === index.ConstantsUtil$1.CONNECTOR_TYPE_AUTH) {
2720
+ const provider = this.authProvider;
2721
+ if (provider) {
2722
+ const social = index.StorageUtil.getConnectedSocialProvider() ?? "email";
2723
+ const identifier = provider.getEmail() ?? provider.getUsername();
2724
+ this.setConnectedWalletInfo({ name: providerType, identifier, social }, chainNamespace);
2725
+ }
2687
2726
  } else if (connectorId) {
2688
2727
  if (connectorId === index.ConstantsUtil.CONNECTOR_ID.COINBASE) {
2689
2728
  const connector = this.getConnectors().find((c) => c.id === index.ConstantsUtil.CONNECTOR_ID.COINBASE);
@@ -2694,13 +2733,15 @@ class AppKit {
2694
2733
  }
2695
2734
  async syncIdentity({ address, chainId, chainNamespace }) {
2696
2735
  var _a;
2697
- const activeCaipNetwork = (_a = this.caipNetworks) == null ? void 0 : _a.find((n) => n.caipNetworkId === `${chainNamespace}:${chainId}`);
2736
+ const caipNetworkId = `${chainNamespace}:${chainId}`;
2737
+ const activeCaipNetwork = (_a = this.caipNetworks) == null ? void 0 : _a.find((n) => n.caipNetworkId === caipNetworkId);
2698
2738
  if (chainNamespace !== index.ConstantsUtil.CHAIN.EVM || (activeCaipNetwork == null ? void 0 : activeCaipNetwork.testnet)) {
2699
2739
  return;
2700
2740
  }
2701
2741
  try {
2702
2742
  const { name, avatar } = await this.fetchIdentity({
2703
- address
2743
+ address,
2744
+ caipNetworkId
2704
2745
  });
2705
2746
  this.setProfileName(name, chainNamespace);
2706
2747
  this.setProfileImage(avatar, chainNamespace);
@@ -2885,6 +2926,7 @@ class AppKit {
2885
2926
  }
2886
2927
  });
2887
2928
  this.syncAuthConnector(this.authProvider);
2929
+ this.checkExistingSocialConnection();
2888
2930
  }
2889
2931
  }
2890
2932
  async createUniversalProviderForAdapter(chainNamespace) {
@@ -2984,13 +3026,19 @@ class AppKit {
2984
3026
  }
2985
3027
  getDefaultNetwork() {
2986
3028
  var _a, _b;
2987
- const caipNetworkId = index.StorageUtil.getActiveCaipNetworkId();
2988
- if (caipNetworkId) {
2989
- const caipNetwork = (_a = this.caipNetworks) == null ? void 0 : _a.find((n) => n.caipNetworkId === caipNetworkId);
3029
+ const caipNetworkIdFromStorage = index.StorageUtil.getActiveCaipNetworkId();
3030
+ if (caipNetworkIdFromStorage) {
3031
+ const caipNetwork = (_a = this.caipNetworks) == null ? void 0 : _a.find((n) => n.caipNetworkId === caipNetworkIdFromStorage);
2990
3032
  if (caipNetwork) {
2991
3033
  return caipNetwork;
2992
3034
  }
2993
- return this.getUnsupportedNetwork(caipNetworkId);
3035
+ if (this.defaultCaipNetwork) {
3036
+ return this.defaultCaipNetwork;
3037
+ }
3038
+ return this.getUnsupportedNetwork(caipNetworkIdFromStorage);
3039
+ }
3040
+ if (this.defaultCaipNetwork) {
3041
+ return this.defaultCaipNetwork;
2994
3042
  }
2995
3043
  return (_b = this.caipNetworks) == null ? void 0 : _b[0];
2996
3044
  }
@@ -2999,8 +3047,8 @@ class AppKit {
2999
3047
  isInitialized = true;
3000
3048
  this.initPromise = new Promise(async (resolve) => {
3001
3049
  await Promise.all([
3002
- Promise.resolve().then(() => require("./index-CnudU77V.js")),
3003
- Promise.resolve().then(() => require("./w3m-modal-DCcF1qEB.js"))
3050
+ Promise.resolve().then(() => require("./index-C4WV9nam.js")),
3051
+ Promise.resolve().then(() => require("./w3m-modal-DLyg7Voy.js"))
3004
3052
  ]);
3005
3053
  const modal2 = document.createElement("w3m-modal");
3006
3054
  if (!index.OptionsController.state.disableAppend && !index.OptionsController.state.enableEmbedded) {
@@ -3011,8 +3059,53 @@ class AppKit {
3011
3059
  }
3012
3060
  return this.initPromise;
3013
3061
  }
3062
+ async checkExistingSocialConnection() {
3063
+ var _a;
3064
+ try {
3065
+ if (!index.CoreHelperUtil.isTelegram()) {
3066
+ return;
3067
+ }
3068
+ const socialProviderToConnect = index.SafeLocalStorage.getItem(index.SafeLocalStorageKeys.SOCIAL_PROVIDER);
3069
+ if (!socialProviderToConnect) {
3070
+ return;
3071
+ }
3072
+ if (typeof window === "undefined" || typeof document === "undefined") {
3073
+ return;
3074
+ }
3075
+ const url = new URL(window.location.href);
3076
+ const resultUri = url.searchParams.get("result_uri");
3077
+ if (!resultUri) {
3078
+ return;
3079
+ }
3080
+ index.AccountController.setSocialProvider(socialProviderToConnect, index.ChainController.state.activeChain);
3081
+ await ((_a = this.authProvider) == null ? void 0 : _a.init());
3082
+ const authConnector = index.ConnectorController.getAuthConnector();
3083
+ if (socialProviderToConnect && authConnector) {
3084
+ this.setLoading(true);
3085
+ await authConnector.provider.connectSocial(resultUri);
3086
+ await index.ConnectionController.connectExternal(authConnector, authConnector.chain);
3087
+ index.StorageUtil.setConnectedSocialProvider(socialProviderToConnect);
3088
+ index.SafeLocalStorage.removeItem(index.SafeLocalStorageKeys.SOCIAL_PROVIDER);
3089
+ index.EventsController.sendEvent({
3090
+ type: "track",
3091
+ event: "SOCIAL_LOGIN_SUCCESS",
3092
+ properties: { provider: socialProviderToConnect }
3093
+ });
3094
+ }
3095
+ } catch (error) {
3096
+ this.setLoading(false);
3097
+ console.error("checkExistingSocialConnection error", error);
3098
+ }
3099
+ try {
3100
+ const url = new URL(window.location.href);
3101
+ url.searchParams.delete("result_uri");
3102
+ window.history.replaceState({}, document.title, url.toString());
3103
+ } catch (error) {
3104
+ console.error("tma social login failed", error);
3105
+ }
3106
+ }
3014
3107
  }
3015
- const PACKAGE_VERSION = "1.6.8";
3108
+ const PACKAGE_VERSION = "1.6.9";
3016
3109
  let modal = void 0;
3017
3110
  function createAppKit(options) {
3018
3111
  if (!modal) {
@@ -0,0 +1,50 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ const index = require("./index-nigVQYBu.js");
4
+ function useAppKitNetworkCore() {
5
+ const { activeCaipNetwork } = index.useSnapshot(index.ChainController.state);
6
+ return {
7
+ caipNetwork: activeCaipNetwork,
8
+ chainId: activeCaipNetwork == null ? void 0 : activeCaipNetwork.id,
9
+ caipNetworkId: activeCaipNetwork == null ? void 0 : activeCaipNetwork.caipNetworkId
10
+ };
11
+ }
12
+ function useAppKitAccount(options) {
13
+ var _a;
14
+ const state = index.useSnapshot(index.ChainController.state);
15
+ const chainNamespace = (options == null ? void 0 : options.namespace) || state.activeChain;
16
+ if (!chainNamespace) {
17
+ return {
18
+ allAccounts: [],
19
+ address: void 0,
20
+ caipAddress: void 0,
21
+ status: void 0,
22
+ isConnected: false,
23
+ embeddedWalletInfo: void 0
24
+ };
25
+ }
26
+ const chainAccountState = (_a = state.chains.get(chainNamespace)) == null ? void 0 : _a.accountState;
27
+ const authConnector = index.ConnectorController.getAuthConnector(chainNamespace);
28
+ return {
29
+ allAccounts: (chainAccountState == null ? void 0 : chainAccountState.allAccounts) || [],
30
+ caipAddress: chainAccountState == null ? void 0 : chainAccountState.caipAddress,
31
+ address: index.CoreHelperUtil.getPlainAddress(chainAccountState == null ? void 0 : chainAccountState.caipAddress),
32
+ isConnected: Boolean(chainAccountState == null ? void 0 : chainAccountState.caipAddress),
33
+ status: chainAccountState == null ? void 0 : chainAccountState.status,
34
+ embeddedWalletInfo: authConnector ? {
35
+ user: chainAccountState == null ? void 0 : chainAccountState.user,
36
+ authProvider: (chainAccountState == null ? void 0 : chainAccountState.socialProvider) || "email",
37
+ accountType: chainAccountState == null ? void 0 : chainAccountState.preferredAccountType,
38
+ isSmartAccountDeployed: Boolean(chainAccountState == null ? void 0 : chainAccountState.smartAccountDeployed)
39
+ } : void 0
40
+ };
41
+ }
42
+ function useDisconnect() {
43
+ async function disconnect() {
44
+ await index.ConnectionController.disconnect();
45
+ }
46
+ return { disconnect };
47
+ }
48
+ exports.useAppKitAccount = useAppKitAccount;
49
+ exports.useAppKitNetworkCore = useAppKitNetworkCore;
50
+ exports.useDisconnect = useDisconnect;
@@ -0,0 +1,50 @@
1
+ import { ay as useSnapshot, aA as ChainController, aB as ConnectorController, aC as CoreHelperUtil, aD as ConnectionController } from "./index-D8E0O3qL.mjs";
2
+ function useAppKitNetworkCore() {
3
+ const { activeCaipNetwork } = useSnapshot(ChainController.state);
4
+ return {
5
+ caipNetwork: activeCaipNetwork,
6
+ chainId: activeCaipNetwork == null ? void 0 : activeCaipNetwork.id,
7
+ caipNetworkId: activeCaipNetwork == null ? void 0 : activeCaipNetwork.caipNetworkId
8
+ };
9
+ }
10
+ function useAppKitAccount(options) {
11
+ var _a;
12
+ const state = useSnapshot(ChainController.state);
13
+ const chainNamespace = (options == null ? void 0 : options.namespace) || state.activeChain;
14
+ if (!chainNamespace) {
15
+ return {
16
+ allAccounts: [],
17
+ address: void 0,
18
+ caipAddress: void 0,
19
+ status: void 0,
20
+ isConnected: false,
21
+ embeddedWalletInfo: void 0
22
+ };
23
+ }
24
+ const chainAccountState = (_a = state.chains.get(chainNamespace)) == null ? void 0 : _a.accountState;
25
+ const authConnector = ConnectorController.getAuthConnector(chainNamespace);
26
+ return {
27
+ allAccounts: (chainAccountState == null ? void 0 : chainAccountState.allAccounts) || [],
28
+ caipAddress: chainAccountState == null ? void 0 : chainAccountState.caipAddress,
29
+ address: CoreHelperUtil.getPlainAddress(chainAccountState == null ? void 0 : chainAccountState.caipAddress),
30
+ isConnected: Boolean(chainAccountState == null ? void 0 : chainAccountState.caipAddress),
31
+ status: chainAccountState == null ? void 0 : chainAccountState.status,
32
+ embeddedWalletInfo: authConnector ? {
33
+ user: chainAccountState == null ? void 0 : chainAccountState.user,
34
+ authProvider: (chainAccountState == null ? void 0 : chainAccountState.socialProvider) || "email",
35
+ accountType: chainAccountState == null ? void 0 : chainAccountState.preferredAccountType,
36
+ isSmartAccountDeployed: Boolean(chainAccountState == null ? void 0 : chainAccountState.smartAccountDeployed)
37
+ } : void 0
38
+ };
39
+ }
40
+ function useDisconnect() {
41
+ async function disconnect() {
42
+ await ConnectionController.disconnect();
43
+ }
44
+ return { disconnect };
45
+ }
46
+ export {
47
+ useDisconnect as a,
48
+ useAppKitNetworkCore as b,
49
+ useAppKitAccount as u
50
+ };