@reown/appkit 1.6.8 → 1.6.9-rc.1.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 (103) hide show
  1. package/dist/esm/exports/basic.js +11 -0
  2. package/dist/esm/exports/basic.js.map +1 -0
  3. package/dist/esm/exports/constants.js +1 -1
  4. package/dist/esm/exports/constants.js.map +1 -1
  5. package/dist/esm/package.json +6 -6
  6. package/dist/esm/src/adapters/ChainAdapterBlueprint.js +5 -2
  7. package/dist/esm/src/adapters/ChainAdapterBlueprint.js.map +1 -1
  8. package/dist/esm/src/client/appkit-basic.js +35 -0
  9. package/dist/esm/src/client/appkit-basic.js.map +1 -0
  10. package/dist/esm/src/client/appkit.js +371 -0
  11. package/dist/esm/src/client/appkit.js.map +1 -0
  12. package/dist/esm/src/client/core.js +1367 -0
  13. package/dist/esm/src/client/core.js.map +1 -0
  14. package/dist/esm/src/client.js +137 -58
  15. package/dist/esm/src/client.js.map +1 -1
  16. package/dist/esm/src/universal-adapter/client.js +4 -0
  17. package/dist/esm/src/universal-adapter/client.js.map +1 -1
  18. package/dist/esm/src/utils/ConstantsUtil.js +2 -1
  19. package/dist/esm/src/utils/ConstantsUtil.js.map +1 -1
  20. package/dist/esm/src/utils/HelpersUtil.js +16 -6
  21. package/dist/esm/src/utils/HelpersUtil.js.map +1 -1
  22. package/dist/esm/tests/client/adapter-management.test.js +83 -0
  23. package/dist/esm/tests/client/adapter-management.test.js.map +1 -0
  24. package/dist/esm/tests/client/appkit-basic.test.js +68 -0
  25. package/dist/esm/tests/client/appkit-basic.test.js.map +1 -0
  26. package/dist/esm/tests/client/balance.test.js +67 -0
  27. package/dist/esm/tests/client/balance.test.js.map +1 -0
  28. package/dist/esm/tests/client/connection.test.js +52 -0
  29. package/dist/esm/tests/client/connection.test.js.map +1 -0
  30. package/dist/esm/tests/client/initialization.test.js +122 -0
  31. package/dist/esm/tests/client/initialization.test.js.map +1 -0
  32. package/dist/esm/tests/client/listeners.test.js +50 -0
  33. package/dist/esm/tests/client/listeners.test.js.map +1 -0
  34. package/dist/esm/tests/client/public-methods.test.js +672 -0
  35. package/dist/esm/tests/client/public-methods.test.js.map +1 -0
  36. package/dist/esm/tests/client/universal-adapter.test.js +44 -0
  37. package/dist/esm/tests/client/universal-adapter.test.js.map +1 -0
  38. package/dist/esm/tests/client/walletconnect-events.test.js +80 -0
  39. package/dist/esm/tests/client/walletconnect-events.test.js.map +1 -0
  40. package/dist/esm/tests/connectors/WalletConnectConnector.test.js +63 -0
  41. package/dist/esm/tests/connectors/WalletConnectConnector.test.js.map +1 -0
  42. package/dist/esm/tests/mocks/Account.js +13 -0
  43. package/dist/esm/tests/mocks/Account.js.map +1 -0
  44. package/dist/esm/tests/mocks/Adapter.js +95 -0
  45. package/dist/esm/tests/mocks/Adapter.js.map +1 -0
  46. package/dist/esm/tests/mocks/AppKit.js +24 -0
  47. package/dist/esm/tests/mocks/AppKit.js.map +1 -0
  48. package/dist/esm/tests/mocks/Networks.js +17 -0
  49. package/dist/esm/tests/mocks/Networks.js.map +1 -0
  50. package/dist/esm/tests/mocks/Options.js +17 -0
  51. package/dist/esm/tests/mocks/Options.js.map +1 -0
  52. package/dist/esm/tests/mocks/Providers.js +46 -0
  53. package/dist/esm/tests/mocks/Providers.js.map +1 -0
  54. package/dist/esm/tests/mocks/UniversalProvider.js +139 -0
  55. package/dist/esm/tests/mocks/UniversalProvider.js.map +1 -0
  56. package/dist/esm/tests/siwe.test.js +260 -0
  57. package/dist/esm/tests/siwe.test.js.map +1 -0
  58. package/dist/esm/tests/test-utils.js +39 -0
  59. package/dist/esm/tests/test-utils.js.map +1 -0
  60. package/dist/esm/tests/universal-adapter.test.js +246 -0
  61. package/dist/esm/tests/universal-adapter.test.js.map +1 -0
  62. package/dist/esm/tests/utils/HelpersUtil.test.js +218 -0
  63. package/dist/esm/tests/utils/HelpersUtil.test.js.map +1 -0
  64. package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
  65. package/dist/esm/tsconfig.tsbuildinfo +1 -0
  66. package/dist/types/exports/basic.d.ts +8 -0
  67. package/dist/types/exports/constants.d.ts +1 -1
  68. package/dist/types/src/adapters/ChainAdapterBlueprint.d.ts +13 -0
  69. package/dist/types/src/client/appkit-basic.d.ts +24 -0
  70. package/dist/types/src/client/appkit.d.ts +23 -0
  71. package/dist/types/src/client/core.d.ts +208 -0
  72. package/dist/types/src/client.d.ts +4 -3
  73. package/dist/types/src/library/react/index.d.ts +1 -1
  74. package/dist/types/src/library/vue/index.d.ts +1 -0
  75. package/dist/types/src/networks/bitcoin.d.ts +5 -5
  76. package/dist/types/src/networks/solana/solana.d.ts +1 -1
  77. package/dist/types/src/networks/solana/solanaDevnet.d.ts +1 -1
  78. package/dist/types/src/networks/solana/solanaTestnet.d.ts +1 -1
  79. package/dist/types/src/store/ProviderUtil.d.ts +5 -3
  80. package/dist/types/src/universal-adapter/client.d.ts +1 -0
  81. package/dist/types/src/utils/ConstantsUtil.d.ts +1 -0
  82. package/dist/types/tests/client/adapter-management.test.d.ts +1 -0
  83. package/dist/types/tests/client/appkit-basic.test.d.ts +1 -0
  84. package/dist/types/tests/client/balance.test.d.ts +1 -0
  85. package/dist/types/tests/client/connection.test.d.ts +1 -0
  86. package/dist/types/tests/client/initialization.test.d.ts +1 -0
  87. package/dist/types/tests/client/listeners.test.d.ts +1 -0
  88. package/dist/types/tests/client/public-methods.test.d.ts +1 -0
  89. package/dist/types/tests/client/universal-adapter.test.d.ts +1 -0
  90. package/dist/types/tests/client/walletconnect-events.test.d.ts +1 -0
  91. package/dist/types/tests/connectors/WalletConnectConnector.test.d.ts +1 -0
  92. package/dist/types/tests/mocks/Account.d.ts +12 -0
  93. package/dist/types/tests/mocks/Adapter.d.ts +5 -0
  94. package/dist/types/tests/mocks/AppKit.d.ts +3 -0
  95. package/dist/types/tests/mocks/Networks.d.ts +4 -0
  96. package/dist/types/tests/mocks/Options.d.ts +6 -0
  97. package/dist/types/tests/mocks/Providers.d.ts +42 -0
  98. package/dist/types/tests/mocks/UniversalProvider.d.ts +3 -0
  99. package/dist/types/tests/siwe.test.d.ts +1 -0
  100. package/dist/types/tests/test-utils.d.ts +6 -0
  101. package/dist/types/tests/universal-adapter.test.d.ts +1 -0
  102. package/dist/types/tests/utils/HelpersUtil.test.d.ts +1 -0
  103. package/package.json +14 -14
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../src/client/core.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import UniversalProvider from '@walletconnect/universal-provider';
2
- import { ConstantsUtil, NetworkUtil, ParseUtil, getW3mThemeVariables } from '@reown/appkit-common';
2
+ import { ConstantsUtil, NetworkUtil, ParseUtil, SafeLocalStorage, SafeLocalStorageKeys, getW3mThemeVariables } from '@reown/appkit-common';
3
3
  import { ConstantsUtil as CoreConstantsUtil } from '@reown/appkit-core';
4
4
  import { AccountController, AlertController, ApiController, AssetUtil, BlockchainApiController, ChainController, ConnectionController, ConnectorController, CoreHelperUtil, EnsController, EventsController, ModalController, OptionsController, PublicStateController, RouterController, SnackController, StorageUtil, ThemeController } from '@reown/appkit-core';
5
5
  import { WalletUtil } from '@reown/appkit-scaffold-ui/utils';
@@ -63,8 +63,8 @@ export class AppKit {
63
63
  this.setProfileImage = (profileImage, chain) => {
64
64
  AccountController.setProfileImage(profileImage, chain);
65
65
  };
66
- this.setUser = user => {
67
- AccountController.setUser(user);
66
+ this.setUser = (user, chain) => {
67
+ AccountController.setUser(user, chain);
68
68
  if (OptionsController.state.enableEmbedded) {
69
69
  ModalController.close();
70
70
  }
@@ -117,7 +117,9 @@ export class AppKit {
117
117
  AccountController.setSmartAccountDeployed(isDeployed, chain);
118
118
  };
119
119
  this.setConnectedWalletInfo = (connectedWalletInfo, chain) => {
120
- AccountController.setConnectedWalletInfo(connectedWalletInfo, chain);
120
+ AccountController.setConnectedWalletInfo(connectedWalletInfo
121
+ ? { type: ProviderUtil.getProviderId(chain), ...connectedWalletInfo }
122
+ : undefined, chain);
121
123
  };
122
124
  this.setSmartAccountEnabledNetworks = (smartAccountEnabledNetworks, chain) => {
123
125
  ChainController.setSmartAccountEnabledNetworks(smartAccountEnabledNetworks, chain);
@@ -208,13 +210,13 @@ export class AppKit {
208
210
  getChainId() {
209
211
  return ChainController.state.activeCaipNetwork?.id;
210
212
  }
211
- switchNetwork(appKitNetwork) {
213
+ async switchNetwork(appKitNetwork) {
212
214
  const network = this.caipNetworks?.find(n => n.id === appKitNetwork.id);
213
215
  if (!network) {
214
216
  AlertController.open(ErrorUtil.ALERT_ERRORS.SWITCH_NETWORK_NOT_FOUND, 'error');
215
217
  return;
216
218
  }
217
- ChainController.switchActiveNetwork(network);
219
+ await ChainController.switchActiveNetwork(network);
218
220
  }
219
221
  getWalletProvider() {
220
222
  return ChainController.state.activeChain
@@ -255,27 +257,35 @@ export class AppKit {
255
257
  getWalletInfo() {
256
258
  return AccountController.state.connectedWalletInfo;
257
259
  }
258
- subscribeAccount(callback) {
260
+ subscribeAccount(callback, namespace) {
259
261
  function updateVal() {
260
- const authConnector = ConnectorController.getAuthConnector();
262
+ const authConnector = ConnectorController.getAuthConnector(namespace);
263
+ const accountState = ChainController.getAccountDataByChainNamespace(namespace);
264
+ if (!accountState) {
265
+ return;
266
+ }
261
267
  callback({
262
- allAccounts: AccountController.state.allAccounts,
263
- caipAddress: ChainController.state.activeCaipAddress,
264
- address: CoreHelperUtil.getPlainAddress(ChainController.state.activeCaipAddress),
265
- isConnected: Boolean(ChainController.state.activeCaipAddress),
266
- status: AccountController.state.status,
268
+ allAccounts: accountState.allAccounts,
269
+ caipAddress: accountState.caipAddress,
270
+ address: CoreHelperUtil.getPlainAddress(accountState.caipAddress),
271
+ isConnected: Boolean(accountState.caipAddress),
272
+ status: accountState.status,
267
273
  embeddedWalletInfo: authConnector
268
274
  ? {
269
- user: AccountController.state.user,
270
- authProvider: AccountController.state.socialProvider || 'email',
271
- accountType: AccountController.state.preferredAccountType,
272
- isSmartAccountDeployed: Boolean(AccountController.state.smartAccountDeployed)
275
+ user: accountState.user,
276
+ authProvider: accountState.socialProvider || 'email',
277
+ accountType: accountState.preferredAccountType,
278
+ isSmartAccountDeployed: Boolean(accountState.smartAccountDeployed)
273
279
  }
274
280
  : undefined
275
281
  });
276
282
  }
277
- ChainController.subscribe(updateVal);
278
- AccountController.subscribe(updateVal);
283
+ if (namespace) {
284
+ ChainController.subscribeChainProp('accountState', updateVal, namespace);
285
+ }
286
+ else {
287
+ ChainController.subscribe(updateVal);
288
+ }
279
289
  ConnectorController.subscribe(updateVal);
280
290
  }
281
291
  subscribeNetwork(callback) {
@@ -619,7 +629,7 @@ export class AppKit {
619
629
  await adapter?.disconnect({ provider, providerType });
620
630
  StorageUtil.removeConnectedNamespace(namespace);
621
631
  ProviderUtil.resetChain(namespace);
622
- this.setUser(undefined);
632
+ this.setUser(undefined, namespace);
623
633
  this.setStatus('disconnected', namespace);
624
634
  },
625
635
  checkInstalled: (ids) => {
@@ -704,7 +714,7 @@ export class AppKit {
704
714
  },
705
715
  getCapabilities: async (params) => {
706
716
  const adapter = this.getAdapter(ChainController.state.activeChain);
707
- await adapter?.getCapabilities(params);
717
+ return await adapter?.getCapabilities(params);
708
718
  },
709
719
  grantPermissions: async (params) => {
710
720
  const adapter = this.getAdapter(ChainController.state.activeChain);
@@ -716,6 +726,10 @@ export class AppKit {
716
726
  return await adapter.revokePermissions(params);
717
727
  }
718
728
  return '0x';
729
+ },
730
+ walletGetAssets: async (params) => {
731
+ const adapter = this.getAdapter(ChainController.state.activeChain);
732
+ return (await adapter?.walletGetAssets(params)) ?? {};
719
733
  }
720
734
  };
721
735
  this.networkControllerClient = {
@@ -869,7 +883,7 @@ export class AppKit {
869
883
  });
870
884
  }
871
885
  this.setCaipAddress(caipAddress, namespace);
872
- this.setUser({ ...(AccountController.state.user || {}), email: user.email });
886
+ this.setUser({ ...(AccountController.state.user || {}), email: user.email }, namespace);
873
887
  const preferredAccountType = (user.preferredAccountType ||
874
888
  OptionsController.state.defaultAccountTypes[namespace]);
875
889
  this.setPreferredAccountType(preferredAccountType, namespace);
@@ -881,7 +895,7 @@ export class AppKit {
881
895
  this.setLoading(false);
882
896
  });
883
897
  provider.onSocialConnected(({ userName }) => {
884
- this.setUser({ ...(AccountController.state.user || {}), username: userName });
898
+ this.setUser({ ...(AccountController.state.user || {}), username: userName }, ChainController.state.activeChain);
885
899
  });
886
900
  provider.onGetSmartAccountEnabledNetworks(networks => {
887
901
  this.setSmartAccountEnabledNetworks(networks, ChainController.state.activeChain);
@@ -902,7 +916,7 @@ export class AppKit {
902
916
  }
903
917
  const email = provider.getEmail();
904
918
  const username = provider.getUsername();
905
- this.setUser({ ...(AccountController.state?.user || {}), username, email });
919
+ this.setUser({ ...(AccountController.state?.user || {}), username, email }, ChainController.state.activeChain);
906
920
  this.setupAuthConnectorListeners(provider);
907
921
  const { isConnected } = await provider.isConnected();
908
922
  const theme = ThemeController.getSnapshot();
@@ -982,6 +996,14 @@ export class AppKit {
982
996
  if (connectionStatus === 'connected') {
983
997
  this.setStatus('connecting', chainNamespace);
984
998
  }
999
+ else if (connectionStatus === 'disconnected') {
1000
+ /*
1001
+ * Address cache is kept after disconnecting from the wallet
1002
+ * but should be cleared if appkit is launched in disconnected state
1003
+ */
1004
+ StorageUtil.clearAddressCache();
1005
+ this.setStatus(connectionStatus, chainNamespace);
1006
+ }
985
1007
  else {
986
1008
  this.setStatus(connectionStatus, chainNamespace);
987
1009
  }
@@ -1133,48 +1155,37 @@ export class AppKit {
1133
1155
  const { address, chainId, chainNamespace } = params;
1134
1156
  const { chainId: activeChainId } = StorageUtil.getActiveNetworkProps();
1135
1157
  const chainIdToUse = chainId || activeChainId;
1136
- const isUnsupportedNetwork = ChainController.state.activeCaipNetwork?.name === ConstantsUtil.UNSUPPORTED_NETWORK_NAME;
1137
- const shouldSupportAllNetworks = ChainController.getNetworkProp('supportsAllNetworks', chainNamespace);
1158
+ const isSameNamespace = ChainController.state.activeChain === chainNamespace;
1138
1159
  this.setStatus('connected', chainNamespace);
1139
- if (isUnsupportedNetwork && !shouldSupportAllNetworks) {
1140
- return;
1141
- }
1142
1160
  if (chainIdToUse) {
1143
1161
  let caipNetwork = this.caipNetworks?.find(n => n.id.toString() === chainIdToUse.toString());
1144
- let fallbackCaipNetwork = this.caipNetworks?.find(n => n.chainNamespace === chainNamespace);
1145
- // If doesn't support all networks, we need to use approved networks
1146
- if (!shouldSupportAllNetworks && !caipNetwork && !fallbackCaipNetwork) {
1147
- // Connection can be requested for a chain that is not supported by the wallet so we need to use approved networks here
1148
- const caipNetworkIds = this.getApprovedCaipNetworkIds() || [];
1149
- const caipNetworkId = caipNetworkIds.find(id => ParseUtil.parseCaipNetworkId(id)?.chainId === chainIdToUse.toString());
1150
- const fallBackCaipNetworkId = caipNetworkIds.find(id => ParseUtil.parseCaipNetworkId(id)?.chainNamespace === chainNamespace);
1151
- caipNetwork = this.caipNetworks?.find(n => n.caipNetworkId === caipNetworkId);
1152
- fallbackCaipNetwork = this.caipNetworks?.find(n => n.caipNetworkId === fallBackCaipNetworkId ||
1153
- // This is a workaround used in Solana network to support deprecated caipNetworkId
1154
- ('deprecatedCaipNetworkId' in n && n.deprecatedCaipNetworkId === fallBackCaipNetworkId));
1162
+ // If the network is not in the list, get unsupported network object
1163
+ if (!caipNetwork) {
1164
+ caipNetwork = this.getUnsupportedNetwork(`${ChainController.state.activeChain}:${chainIdToUse}`);
1155
1165
  }
1156
- const network = caipNetwork || fallbackCaipNetwork;
1157
- if (network?.chainNamespace === ChainController.state.activeChain) {
1158
- // If the network is unsupported and the user doesn't allow unsupported chains, we show the unsupported chain UI
1159
- if (!OptionsController.state.allowUnsupportedChain &&
1160
- ChainController.state.activeCaipNetwork?.name === ConstantsUtil.UNSUPPORTED_NETWORK_NAME) {
1166
+ const isUnsupportedNetwork = caipNetwork?.name === ConstantsUtil.UNSUPPORTED_NETWORK_NAME;
1167
+ if (isSameNamespace) {
1168
+ this.setCaipNetwork(caipNetwork);
1169
+ if (isUnsupportedNetwork && !OptionsController.state.allowUnsupportedChain) {
1161
1170
  ChainController.showUnsupportedChainUI();
1162
1171
  }
1163
- else {
1164
- this.setCaipNetwork(network);
1165
- }
1172
+ this.syncConnectedWalletInfo(chainNamespace);
1166
1173
  }
1167
- this.syncConnectedWalletInfo(chainNamespace);
1168
1174
  // Only update state when needed
1169
1175
  if (!HelpersUtil.isLowerCaseMatch(address, AccountController.state.address)) {
1170
- this.setCaipAddress(`${chainNamespace}:${network?.id}:${address}`, chainNamespace);
1176
+ this.setCaipAddress(`${chainNamespace}:${caipNetwork?.id}:${address}`, chainNamespace);
1171
1177
  await this.syncIdentity({
1172
1178
  address,
1173
- chainId: network?.id,
1179
+ chainId: caipNetwork?.id,
1174
1180
  chainNamespace
1175
1181
  });
1176
1182
  }
1177
- await this.syncBalance({ address, chainId: network?.id, chainNamespace });
1183
+ if (isUnsupportedNetwork) {
1184
+ this.setBalance('0.00', caipNetwork.nativeCurrency.symbol, chainNamespace);
1185
+ }
1186
+ else {
1187
+ await this.syncBalance({ address, chainId: caipNetwork?.id, chainNamespace });
1188
+ }
1178
1189
  }
1179
1190
  }
1180
1191
  async syncBalance(params) {
@@ -1208,6 +1219,14 @@ export class AppKit {
1208
1219
  }, chainNamespace);
1209
1220
  }
1210
1221
  }
1222
+ else if (providerType === UtilConstantsUtil.CONNECTOR_TYPE_AUTH) {
1223
+ const provider = this.authProvider;
1224
+ if (provider) {
1225
+ const social = StorageUtil.getConnectedSocialProvider() ?? 'email';
1226
+ const identifier = provider.getEmail() ?? provider.getUsername();
1227
+ this.setConnectedWalletInfo({ name: providerType, identifier, social }, chainNamespace);
1228
+ }
1229
+ }
1211
1230
  else if (connectorId) {
1212
1231
  if (connectorId === ConstantsUtil.CONNECTOR_ID.COINBASE) {
1213
1232
  const connector = this.getConnectors().find(c => c.id === ConstantsUtil.CONNECTOR_ID.COINBASE);
@@ -1217,13 +1236,15 @@ export class AppKit {
1217
1236
  }
1218
1237
  }
1219
1238
  async syncIdentity({ address, chainId, chainNamespace }) {
1220
- const activeCaipNetwork = this.caipNetworks?.find(n => n.caipNetworkId === `${chainNamespace}:${chainId}`);
1239
+ const caipNetworkId = `${chainNamespace}:${chainId}`;
1240
+ const activeCaipNetwork = this.caipNetworks?.find(n => n.caipNetworkId === caipNetworkId);
1221
1241
  if (chainNamespace !== ConstantsUtil.CHAIN.EVM || activeCaipNetwork?.testnet) {
1222
1242
  return;
1223
1243
  }
1224
1244
  try {
1225
1245
  const { name, avatar } = await this.fetchIdentity({
1226
- address
1246
+ address,
1247
+ caipNetworkId
1227
1248
  });
1228
1249
  this.setProfileName(name, chainNamespace);
1229
1250
  this.setProfileImage(avatar, chainNamespace);
@@ -1420,6 +1441,7 @@ export class AppKit {
1420
1441
  }
1421
1442
  });
1422
1443
  this.syncAuthConnector(this.authProvider);
1444
+ this.checkExistingSocialConnection();
1423
1445
  }
1424
1446
  }
1425
1447
  async createUniversalProviderForAdapter(chainNamespace) {
@@ -1515,13 +1537,20 @@ export class AppKit {
1515
1537
  };
1516
1538
  }
1517
1539
  getDefaultNetwork() {
1518
- const caipNetworkId = StorageUtil.getActiveCaipNetworkId();
1519
- if (caipNetworkId) {
1520
- const caipNetwork = this.caipNetworks?.find(n => n.caipNetworkId === caipNetworkId);
1540
+ const caipNetworkIdFromStorage = StorageUtil.getActiveCaipNetworkId();
1541
+ if (caipNetworkIdFromStorage) {
1542
+ const caipNetwork = this.caipNetworks?.find(n => n.caipNetworkId === caipNetworkIdFromStorage);
1521
1543
  if (caipNetwork) {
1522
1544
  return caipNetwork;
1523
1545
  }
1524
- return this.getUnsupportedNetwork(caipNetworkId);
1546
+ if (this.defaultCaipNetwork) {
1547
+ // It's still a case that the network in storage might not be found in the networks array
1548
+ return this.defaultCaipNetwork;
1549
+ }
1550
+ return this.getUnsupportedNetwork(caipNetworkIdFromStorage);
1551
+ }
1552
+ if (this.defaultCaipNetwork) {
1553
+ return this.defaultCaipNetwork;
1525
1554
  }
1526
1555
  return this.caipNetworks?.[0];
1527
1556
  }
@@ -1542,5 +1571,55 @@ export class AppKit {
1542
1571
  }
1543
1572
  return this.initPromise;
1544
1573
  }
1574
+ async checkExistingSocialConnection() {
1575
+ try {
1576
+ if (!CoreHelperUtil.isTelegram()) {
1577
+ return;
1578
+ }
1579
+ const socialProviderToConnect = SafeLocalStorage.getItem(SafeLocalStorageKeys.SOCIAL_PROVIDER);
1580
+ if (!socialProviderToConnect) {
1581
+ return;
1582
+ }
1583
+ if (typeof window === 'undefined' || typeof document === 'undefined') {
1584
+ return;
1585
+ }
1586
+ const url = new URL(window.location.href);
1587
+ const resultUri = url.searchParams.get('result_uri');
1588
+ if (!resultUri) {
1589
+ return;
1590
+ }
1591
+ AccountController.setSocialProvider(socialProviderToConnect, ChainController.state.activeChain);
1592
+ await this.authProvider?.init();
1593
+ const authConnector = ConnectorController.getAuthConnector();
1594
+ if (socialProviderToConnect && authConnector) {
1595
+ this.setLoading(true);
1596
+ await authConnector.provider.connectSocial(resultUri);
1597
+ await ConnectionController.connectExternal(authConnector, authConnector.chain);
1598
+ StorageUtil.setConnectedSocialProvider(socialProviderToConnect);
1599
+ SafeLocalStorage.removeItem(SafeLocalStorageKeys.SOCIAL_PROVIDER);
1600
+ EventsController.sendEvent({
1601
+ type: 'track',
1602
+ event: 'SOCIAL_LOGIN_SUCCESS',
1603
+ properties: { provider: socialProviderToConnect }
1604
+ });
1605
+ }
1606
+ }
1607
+ catch (error) {
1608
+ this.setLoading(false);
1609
+ // eslint-disable-next-line no-console
1610
+ console.error('checkExistingSocialConnection error', error);
1611
+ }
1612
+ try {
1613
+ const url = new URL(window.location.href);
1614
+ // Remove the 'result_uri' parameter
1615
+ url.searchParams.delete('result_uri');
1616
+ // Update the URL without reloading the page
1617
+ window.history.replaceState({}, document.title, url.toString());
1618
+ }
1619
+ catch (error) {
1620
+ // eslint-disable-next-line no-console
1621
+ console.error('tma social login failed', error);
1622
+ }
1623
+ }
1545
1624
  }
1546
1625
  //# sourceMappingURL=client.js.map