@web3auth/no-modal 10.0.0-beta.8 → 10.0.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 (126) hide show
  1. package/dist/lib.cjs/base/analytics.js +121 -0
  2. package/dist/lib.cjs/base/connector/constants.js +2 -1
  3. package/dist/lib.cjs/base/constants.js +13 -0
  4. package/dist/lib.cjs/base/cookie.js +38 -0
  5. package/dist/lib.cjs/base/deserialize.js +13 -0
  6. package/dist/lib.cjs/base/errors/index.js +2 -2
  7. package/dist/lib.cjs/base/utils.js +112 -9
  8. package/dist/lib.cjs/base/wallet/index.js +3 -3
  9. package/dist/lib.cjs/connectors/auth-connector/authConnector.js +40 -63
  10. package/dist/lib.cjs/connectors/base-evm-connector/baseEvmConnector.js +5 -2
  11. package/dist/lib.cjs/connectors/base-solana-connector/baseSolanaConnector.js +5 -2
  12. package/dist/lib.cjs/connectors/coinbase-connector/coinbaseConnector.js +11 -4
  13. package/dist/lib.cjs/connectors/injected-evm-connector/injectedEvmConnector.js +10 -4
  14. package/dist/lib.cjs/connectors/injected-solana-connector/walletStandardConnector.js +10 -5
  15. package/dist/lib.cjs/connectors/metamask-connector/metamaskConnector.js +19 -8
  16. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +2 -1
  17. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/config.js +11 -9
  18. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/index.js +0 -1
  19. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +9 -4
  20. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +6 -5
  21. package/dist/lib.cjs/index.js +18 -1
  22. package/dist/lib.cjs/noModal.js +367 -101
  23. package/dist/lib.cjs/plugins/nft-checkout-plugin/plugin.js +3 -1
  24. package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +3 -1
  25. package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +10 -5
  26. package/dist/lib.cjs/providers/account-abstraction-provider/providers/utils.js +3 -2
  27. package/dist/lib.cjs/providers/base-provider/baseProvider.js +2 -1
  28. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +2 -1
  29. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +2 -1
  30. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +2 -1
  31. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +4 -2
  32. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +4 -2
  33. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +3 -1
  34. package/dist/lib.cjs/react/context/WalletServicesInnerContext.js +4 -2
  35. package/dist/lib.cjs/react/context/Web3AuthInnerContext.js +21 -16
  36. package/dist/lib.cjs/react/hooks/useCheckout.js +4 -2
  37. package/dist/lib.cjs/react/hooks/useIdentityToken.js +3 -3
  38. package/dist/lib.cjs/react/hooks/useSwap.js +4 -2
  39. package/dist/lib.cjs/react/hooks/useWalletConnectScanner.js +4 -2
  40. package/dist/lib.cjs/react/hooks/useWalletUI.js +4 -2
  41. package/dist/lib.cjs/react/hooks/useWeb3AuthInner.js +4 -2
  42. package/dist/lib.cjs/react/solana/hooks/useSolanaWallet.js +8 -3
  43. package/dist/lib.cjs/react/wagmi/constants.js +16 -0
  44. package/dist/lib.cjs/react/wagmi/provider.js +16 -12
  45. package/dist/lib.cjs/types/base/analytics.d.ts +42 -0
  46. package/dist/lib.cjs/types/base/connector/baseConnector.d.ts +2 -2
  47. package/dist/lib.cjs/types/base/connector/constants.d.ts +1 -0
  48. package/dist/lib.cjs/types/base/connector/interfaces.d.ts +3 -2
  49. package/dist/lib.cjs/types/base/constants.d.ts +6 -0
  50. package/dist/lib.cjs/types/base/cookie.d.ts +10 -0
  51. package/dist/lib.cjs/types/base/core/IWeb3Auth.d.ts +31 -11
  52. package/dist/lib.cjs/types/base/deserialize.d.ts +3 -0
  53. package/dist/lib.cjs/types/base/errors/index.d.ts +1 -1
  54. package/dist/lib.cjs/types/base/index.d.ts +2 -0
  55. package/dist/lib.cjs/types/base/interfaces.d.ts +9 -1
  56. package/dist/lib.cjs/types/base/utils.d.ts +50 -3
  57. package/dist/lib.cjs/types/base/wallet/index.d.ts +4 -2
  58. package/dist/lib.cjs/types/connectors/auth-connector/authConnector.d.ts +1 -1
  59. package/dist/lib.cjs/types/connectors/auth-connector/interface.d.ts +1 -1
  60. package/dist/lib.cjs/types/connectors/base-evm-connector/baseEvmConnector.d.ts +2 -2
  61. package/dist/lib.cjs/types/connectors/base-solana-connector/baseSolanaConnector.d.ts +2 -2
  62. package/dist/lib.cjs/types/connectors/wallet-connect-v2-connector/config.d.ts +0 -1
  63. package/dist/lib.cjs/types/noModal.d.ts +18 -9
  64. package/dist/lib.cjs/types/providers/account-abstraction-provider/providers/AccountAbstractionProvider.d.ts +4 -1
  65. package/dist/lib.cjs/types/providers/ethereum-provider/providers/converter.d.ts +0 -1
  66. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.d.ts +0 -1
  67. package/dist/lib.cjs/types/react/hooks/useIdentityToken.d.ts +2 -2
  68. package/dist/lib.cjs/types/react/interfaces.d.ts +2 -1
  69. package/dist/lib.cjs/types/react/wagmi/constants.d.ts +43 -0
  70. package/dist/lib.cjs/types/react/wagmi/provider.d.ts +1 -2
  71. package/dist/lib.cjs/types/vue/composables/useIdentityToken.d.ts +1 -1
  72. package/dist/lib.cjs/types/vue/wagmi/constants.d.ts +43 -0
  73. package/dist/lib.cjs/types/vue/wagmi/provider.d.ts +1 -0
  74. package/dist/lib.cjs/vue/WalletServicesInnerProvider.js +4 -2
  75. package/dist/lib.cjs/vue/Web3AuthProvider.js +7 -1
  76. package/dist/lib.cjs/vue/composables/useCheckout.js +4 -2
  77. package/dist/lib.cjs/vue/composables/useEnableMFA.js +4 -2
  78. package/dist/lib.cjs/vue/composables/useIdentityToken.js +7 -5
  79. package/dist/lib.cjs/vue/composables/useManageMFA.js +5 -3
  80. package/dist/lib.cjs/vue/composables/useSwap.js +4 -2
  81. package/dist/lib.cjs/vue/composables/useSwitchChain.js +4 -2
  82. package/dist/lib.cjs/vue/composables/useWalletConnectScanner.js +4 -2
  83. package/dist/lib.cjs/vue/composables/useWalletUI.js +4 -2
  84. package/dist/lib.cjs/vue/composables/useWeb3AuthConnect.js +4 -2
  85. package/dist/lib.cjs/vue/composables/useWeb3AuthDisconnect.js +4 -2
  86. package/dist/lib.cjs/vue/composables/useWeb3AuthInner.js +4 -2
  87. package/dist/lib.cjs/vue/composables/useWeb3AuthUser.js +4 -2
  88. package/dist/lib.cjs/vue/solana/composables/useSolanaWallet.js +24 -15
  89. package/dist/lib.cjs/vue/wagmi/constants.js +16 -0
  90. package/dist/lib.cjs/vue/wagmi/provider.js +34 -16
  91. package/dist/lib.esm/base/analytics.js +117 -0
  92. package/dist/lib.esm/base/connector/constants.js +2 -1
  93. package/dist/lib.esm/base/constants.js +11 -1
  94. package/dist/lib.esm/base/cookie.js +34 -0
  95. package/dist/lib.esm/base/deserialize.js +11 -0
  96. package/dist/lib.esm/base/errors/index.js +2 -2
  97. package/dist/lib.esm/base/utils.js +104 -7
  98. package/dist/lib.esm/base/wallet/index.js +3 -3
  99. package/dist/lib.esm/connectors/auth-connector/authConnector.js +41 -65
  100. package/dist/lib.esm/connectors/base-evm-connector/baseEvmConnector.js +1 -1
  101. package/dist/lib.esm/connectors/base-solana-connector/baseSolanaConnector.js +1 -1
  102. package/dist/lib.esm/connectors/coinbase-connector/coinbaseConnector.js +9 -3
  103. package/dist/lib.esm/connectors/injected-evm-connector/injectedEvmConnector.js +7 -3
  104. package/dist/lib.esm/connectors/injected-solana-connector/walletStandardConnector.js +7 -4
  105. package/dist/lib.esm/connectors/metamask-connector/metamaskConnector.js +17 -7
  106. package/dist/lib.esm/connectors/wallet-connect-v2-connector/config.js +8 -7
  107. package/dist/lib.esm/connectors/wallet-connect-v2-connector/index.js +1 -1
  108. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +8 -4
  109. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +1 -1
  110. package/dist/lib.esm/index.js +5 -3
  111. package/dist/lib.esm/noModal.js +378 -107
  112. package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +8 -4
  113. package/dist/lib.esm/react/context/Web3AuthInnerContext.js +22 -17
  114. package/dist/lib.esm/react/hooks/useIdentityToken.js +3 -3
  115. package/dist/lib.esm/react/solana/hooks/useSolanaWallet.js +5 -0
  116. package/dist/lib.esm/react/wagmi/constants.js +14 -0
  117. package/dist/lib.esm/react/wagmi/provider.js +16 -12
  118. package/dist/lib.esm/vue/Web3AuthProvider.js +7 -1
  119. package/dist/lib.esm/vue/composables/useIdentityToken.js +3 -3
  120. package/dist/lib.esm/vue/composables/useManageMFA.js +1 -1
  121. package/dist/lib.esm/vue/solana/composables/useSolanaWallet.js +21 -13
  122. package/dist/lib.esm/vue/wagmi/constants.js +14 -0
  123. package/dist/lib.esm/vue/wagmi/provider.js +35 -15
  124. package/dist/noModal.umd.min.js +1 -1
  125. package/dist/noModal.umd.min.js.LICENSE.txt +4 -6
  126. package/package.json +24 -34
@@ -2,12 +2,14 @@
2
2
 
3
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
4
  var auth = require('@web3auth/auth');
5
+ require('@babel/runtime/helpers/objectSpread2');
6
+ require('@segment/analytics-next');
7
+ require('../../base/loglevel.js');
5
8
  require('@toruslabs/base-controllers');
6
9
  require('../../base/errors/index.js');
7
10
  var index = require('../../base/wallet/index.js');
8
11
  var constants = require('../../base/connector/constants.js');
9
12
  require('jwt-decode');
10
- require('../../base/loglevel.js');
11
13
  var errors = require('../../base/plugin/errors.js');
12
14
  var IPlugin = require('../../base/plugin/IPlugin.js');
13
15
  require('@toruslabs/constants');
@@ -2,12 +2,14 @@
2
2
 
3
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
4
  var auth = require('@web3auth/auth');
5
+ require('@babel/runtime/helpers/objectSpread2');
6
+ require('@segment/analytics-next');
7
+ var loglevel = require('../../base/loglevel.js');
5
8
  var baseControllers = require('@toruslabs/base-controllers');
6
9
  require('../../base/errors/index.js');
7
10
  var index = require('../../base/wallet/index.js');
8
11
  var constants = require('../../base/connector/constants.js');
9
12
  require('jwt-decode');
10
- var loglevel = require('../../base/loglevel.js');
11
13
  var errors = require('../../base/plugin/errors.js');
12
14
  var IPlugin = require('../../base/plugin/IPlugin.js');
13
15
  require('@toruslabs/constants');
@@ -6,12 +6,13 @@ var ethereumControllers = require('@toruslabs/ethereum-controllers');
6
6
  var auth = require('@web3auth/auth');
7
7
  var viem = require('viem');
8
8
  var accountAbstraction = require('viem/account-abstraction');
9
+ require('@segment/analytics-next');
10
+ require('../../../base/loglevel.js');
9
11
  var baseControllers = require('@toruslabs/base-controllers');
10
12
  var index = require('../../../base/errors/index.js');
11
13
  require('../../../base/wallet/index.js');
12
14
  require('../../../base/connector/constants.js');
13
15
  require('jwt-decode');
14
- require('../../../base/loglevel.js');
15
16
  require('../../../base/plugin/errors.js');
16
17
  require('../../../base/plugin/IPlugin.js');
17
18
  require('@toruslabs/constants');
@@ -38,6 +39,7 @@ class AccountAbstractionProvider extends baseProvider.BaseProvider {
38
39
  _defineProperty(this, "_publicClient", void 0);
39
40
  _defineProperty(this, "_bundlerClient", void 0);
40
41
  _defineProperty(this, "_paymasterClient", void 0);
42
+ _defineProperty(this, "_useProviderAsTransport", void 0);
41
43
  this.update({
42
44
  chainId: config.chain.chainId
43
45
  });
@@ -123,13 +125,13 @@ class AccountAbstractionProvider extends baseProvider.BaseProvider {
123
125
  if (paymasterConfig) {
124
126
  var _paymasterConfig$tran;
125
127
  this._paymasterClient = accountAbstraction.createPaymasterClient(_objectSpread(_objectSpread({}, paymasterConfig), {}, {
126
- transport: (_paymasterConfig$tran = paymasterConfig.transport) !== null && _paymasterConfig$tran !== void 0 ? _paymasterConfig$tran : viem.http(paymasterConfig.url)
128
+ transport: this._useProviderAsTransport ? viem.custom(eoaProvider) : (_paymasterConfig$tran = paymasterConfig.transport) !== null && _paymasterConfig$tran !== void 0 ? _paymasterConfig$tran : viem.http(paymasterConfig.url)
127
129
  }));
128
130
  }
129
131
  this._bundlerClient = accountAbstraction.createBundlerClient(_objectSpread(_objectSpread({}, bundlerConfig), {}, {
130
132
  account: this.smartAccount,
131
133
  client: this._publicClient,
132
- transport: (_bundlerConfig$transp = bundlerConfig.transport) !== null && _bundlerConfig$transp !== void 0 ? _bundlerConfig$transp : viem.http(bundlerConfig.url),
134
+ transport: this._useProviderAsTransport ? viem.custom(eoaProvider) : (_bundlerConfig$transp = bundlerConfig.transport) !== null && _bundlerConfig$transp !== void 0 ? _bundlerConfig$transp : viem.http(bundlerConfig.url),
133
135
  paymaster: this._paymasterClient
134
136
  }));
135
137
  const providerHandlers = utils.getProviderHandlers({
@@ -175,6 +177,7 @@ _defineProperty(AccountAbstractionProvider, "getProviderInstance", async params
175
177
  const providerInstance = new _AccountAbstractionProvider({
176
178
  config: params
177
179
  });
180
+ providerInstance._useProviderAsTransport = params.useProviderAsTransport;
178
181
  await providerInstance.setupProvider(params.eoaProvider);
179
182
  providerInstance.update({
180
183
  eoaProvider: params.eoaProvider
@@ -185,7 +188,8 @@ const accountAbstractionProvider = async ({
185
188
  accountAbstractionConfig,
186
189
  chain,
187
190
  chains,
188
- provider
191
+ provider,
192
+ useProviderAsTransport
189
193
  }) => {
190
194
  let smartAccountInit;
191
195
  const {
@@ -252,7 +256,8 @@ const accountAbstractionProvider = async ({
252
256
  smartAccountInit,
253
257
  chain,
254
258
  chains,
255
- smartAccountChainsConfig
259
+ smartAccountChainsConfig,
260
+ useProviderAsTransport
256
261
  });
257
262
  };
258
263
  const toEoaProvider = async aaProvider => {
@@ -4,13 +4,14 @@ var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
4
  var util = require('@ethereumjs/util');
5
5
  var auth = require('@web3auth/auth');
6
6
  var viem = require('viem');
7
- require('@toruslabs/base-controllers');
8
7
  require('@babel/runtime/helpers/defineProperty');
8
+ require('@segment/analytics-next');
9
+ var loglevel = require('../../../base/loglevel.js');
10
+ require('@toruslabs/base-controllers');
9
11
  require('../../../base/errors/index.js');
10
12
  require('../../../base/wallet/index.js');
11
13
  require('../../../base/connector/constants.js');
12
14
  require('jwt-decode');
13
- var loglevel = require('../../../base/loglevel.js');
14
15
  require('../../../base/plugin/errors.js');
15
16
  require('../../../base/plugin/IPlugin.js');
16
17
  require('@toruslabs/constants');
@@ -4,11 +4,12 @@ var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
4
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
5
  var baseControllers = require('@toruslabs/base-controllers');
6
6
  var auth = require('@web3auth/auth');
7
+ require('@segment/analytics-next');
8
+ require('../../base/loglevel.js');
7
9
  var index = require('../../base/errors/index.js');
8
10
  require('../../base/wallet/index.js');
9
11
  require('../../base/connector/constants.js');
10
12
  require('jwt-decode');
11
- require('../../base/loglevel.js');
12
13
  require('../../base/plugin/errors.js');
13
14
  require('../../base/plugin/IPlugin.js');
14
15
  require('@toruslabs/constants');
@@ -4,12 +4,13 @@ var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
4
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
5
  var util = require('@ethereumjs/util');
6
6
  var auth = require('@web3auth/auth');
7
+ require('@segment/analytics-next');
8
+ require('../../../../base/loglevel.js');
7
9
  var baseControllers = require('@toruslabs/base-controllers');
8
10
  var index = require('../../../../base/errors/index.js');
9
11
  require('../../../../base/wallet/index.js');
10
12
  require('../../../../base/connector/constants.js');
11
13
  require('jwt-decode');
12
- require('../../../../base/loglevel.js');
13
14
  require('../../../../base/plugin/errors.js');
14
15
  require('../../../../base/plugin/IPlugin.js');
15
16
  require('@toruslabs/constants');
@@ -7,11 +7,12 @@ var auth = require('@web3auth/auth');
7
7
  var ethers = require('ethers');
8
8
  var viem = require('viem');
9
9
  require('@babel/runtime/helpers/defineProperty');
10
+ require('@segment/analytics-next');
11
+ var loglevel = require('../../../../base/loglevel.js');
10
12
  require('../../../../base/errors/index.js');
11
13
  require('../../../../base/wallet/index.js');
12
14
  require('../../../../base/connector/constants.js');
13
15
  require('jwt-decode');
14
- var loglevel = require('../../../../base/loglevel.js');
15
16
  require('../../../../base/plugin/errors.js');
16
17
  require('../../../../base/plugin/IPlugin.js');
17
18
  require('@toruslabs/constants');
@@ -4,13 +4,14 @@ var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
4
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
5
  var util = require('@ethereumjs/util');
6
6
  var bignumber_js = require('bignumber.js');
7
+ require('@segment/analytics-next');
8
+ var loglevel = require('../../../../../base/loglevel.js');
7
9
  require('@toruslabs/base-controllers');
8
10
  require('@web3auth/auth');
9
11
  require('../../../../../base/errors/index.js');
10
12
  require('../../../../../base/wallet/index.js');
11
13
  require('../../../../../base/connector/constants.js');
12
14
  require('jwt-decode');
13
- var loglevel = require('../../../../../base/loglevel.js');
14
15
  require('../../../../../base/plugin/errors.js');
15
16
  require('../../../../../base/plugin/IPlugin.js');
16
17
  require('@toruslabs/constants');
@@ -1,13 +1,15 @@
1
1
  'use strict';
2
2
 
3
3
  var auth = require('@web3auth/auth');
4
- require('@toruslabs/base-controllers');
4
+ require('@babel/runtime/helpers/objectSpread2');
5
5
  require('@babel/runtime/helpers/defineProperty');
6
+ require('@segment/analytics-next');
7
+ require('../../../../../base/loglevel.js');
8
+ require('@toruslabs/base-controllers');
6
9
  var index = require('../../../../../base/errors/index.js');
7
10
  require('../../../../../base/wallet/index.js');
8
11
  require('../../../../../base/connector/constants.js');
9
12
  require('jwt-decode');
10
- require('../../../../../base/loglevel.js');
11
13
  require('../../../../../base/plugin/errors.js');
12
14
  require('../../../../../base/plugin/IPlugin.js');
13
15
  require('@toruslabs/constants');
@@ -3,14 +3,16 @@
3
3
  var walletStandardFeatures = require('@solana/wallet-standard-features');
4
4
  var web3_js = require('@solana/web3.js');
5
5
  var bs58 = require('@toruslabs/bs58');
6
- require('@toruslabs/base-controllers');
6
+ require('@babel/runtime/helpers/objectSpread2');
7
7
  require('@babel/runtime/helpers/defineProperty');
8
+ require('@segment/analytics-next');
9
+ require('../../../../base/loglevel.js');
10
+ require('@toruslabs/base-controllers');
8
11
  require('@web3auth/auth');
9
12
  var index = require('../../../../base/errors/index.js');
10
13
  require('../../../../base/wallet/index.js');
11
14
  require('../../../../base/connector/constants.js');
12
15
  require('jwt-decode');
13
- require('../../../../base/loglevel.js');
14
16
  require('../../../../base/plugin/errors.js');
15
17
  require('../../../../base/plugin/IPlugin.js');
16
18
  require('@toruslabs/constants');
@@ -2,12 +2,14 @@
2
2
 
3
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
4
  var auth = require('@web3auth/auth');
5
+ require('@babel/runtime/helpers/objectSpread2');
6
+ require('@segment/analytics-next');
7
+ require('../../../../base/loglevel.js');
5
8
  var baseControllers = require('@toruslabs/base-controllers');
6
9
  var index = require('../../../../base/errors/index.js');
7
10
  require('../../../../base/wallet/index.js');
8
11
  require('../../../../base/connector/constants.js');
9
12
  require('jwt-decode');
10
- require('../../../../base/loglevel.js');
11
13
  require('../../../../base/plugin/errors.js');
12
14
  require('../../../../base/plugin/IPlugin.js');
13
15
  require('@toruslabs/constants');
@@ -1,14 +1,16 @@
1
1
  'use strict';
2
2
 
3
3
  var react = require('react');
4
- require('@toruslabs/base-controllers');
4
+ require('@babel/runtime/helpers/objectSpread2');
5
5
  require('@babel/runtime/helpers/defineProperty');
6
+ require('@segment/analytics-next');
7
+ require('../../base/loglevel.js');
8
+ require('@toruslabs/base-controllers');
6
9
  require('@web3auth/auth');
7
10
  require('../../base/errors/index.js');
8
11
  require('../../base/wallet/index.js');
9
12
  var constants = require('../../base/connector/constants.js');
10
13
  require('jwt-decode');
11
- require('../../base/loglevel.js');
12
14
  require('../../base/plugin/errors.js');
13
15
  var IPlugin = require('../../base/plugin/IPlugin.js');
14
16
  require('@toruslabs/constants');
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var react = require('react');
4
+ var analytics = require('../../base/analytics.js');
4
5
  require('@toruslabs/base-controllers');
5
6
  require('@babel/runtime/helpers/defineProperty');
6
7
  require('@web3auth/auth');
@@ -19,9 +20,16 @@ const Web3AuthInnerContext = react.createContext(null);
19
20
  function Web3AuthInnerProvider(params) {
20
21
  const {
21
22
  children,
22
- config
23
+ config,
24
+ initialState
23
25
  } = params;
24
- const [web3Auth, setWeb3Auth] = react.useState(null);
26
+ const {
27
+ web3AuthOptions
28
+ } = config;
29
+ const web3Auth = react.useMemo(() => {
30
+ setProvider(null);
31
+ return new noModal.Web3AuthNoModal(web3AuthOptions, initialState);
32
+ }, [web3AuthOptions, initialState]);
25
33
  const [isInitializing, setIsInitializing] = react.useState(false);
26
34
  const [initError, setInitError] = react.useState(null);
27
35
  const [isConnected, setIsConnected] = react.useState(false);
@@ -33,25 +41,15 @@ function Web3AuthInnerProvider(params) {
33
41
  if (!web3Auth) throw index.WalletInitializationError.notReady();
34
42
  return web3Auth.getPlugin(name);
35
43
  }, [web3Auth]);
36
- react.useEffect(() => {
37
- const resetHookState = () => {
38
- setProvider(null);
39
- setIsConnected(false);
40
- setStatus(null);
41
- };
42
- resetHookState();
43
- const {
44
- web3AuthOptions
45
- } = config;
46
- const web3Instance = new noModal.Web3AuthNoModal(web3AuthOptions);
47
- setWeb3Auth(web3Instance);
48
- }, [config]);
49
44
  react.useEffect(() => {
50
45
  const controller = new AbortController();
51
46
  async function init() {
52
47
  try {
53
48
  setInitError(null);
54
49
  setIsInitializing(true);
50
+ web3Auth.setAnalyticsProperties({
51
+ integration_type: analytics.ANALYTICS_INTEGRATION_TYPE.REACT_HOOKS
52
+ });
55
53
  await web3Auth.init({
56
54
  signal: controller.signal
57
55
  });
@@ -90,7 +88,12 @@ function Web3AuthInnerProvider(params) {
90
88
  setStatus(web3Auth.status);
91
89
  };
92
90
  const errorListener = () => {
93
- setStatus(constants.CONNECTOR_STATUS.ERRORED);
91
+ setStatus(web3Auth.status);
92
+ };
93
+ const rehydrationErrorListener = () => {
94
+ setStatus(web3Auth.status);
95
+ setIsConnected(false);
96
+ setProvider(null);
94
97
  };
95
98
  const mfaEnabledListener = isMFAEnabled => {
96
99
  if (typeof isMFAEnabled === "boolean") setIsMFAEnabled(isMFAEnabled);
@@ -104,6 +107,7 @@ function Web3AuthInnerProvider(params) {
104
107
  web3Auth.on(constants.CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
105
108
  web3Auth.on(constants.CONNECTOR_EVENTS.CONNECTING, connectingListener);
106
109
  web3Auth.on(constants.CONNECTOR_EVENTS.ERRORED, errorListener);
110
+ web3Auth.on(constants.CONNECTOR_EVENTS.REHYDRATION_ERROR, rehydrationErrorListener);
107
111
  web3Auth.on(constants.CONNECTOR_EVENTS.MFA_ENABLED, mfaEnabledListener);
108
112
  }
109
113
  return () => {
@@ -114,6 +118,7 @@ function Web3AuthInnerProvider(params) {
114
118
  web3Auth.off(constants.CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
115
119
  web3Auth.off(constants.CONNECTOR_EVENTS.CONNECTING, connectingListener);
116
120
  web3Auth.off(constants.CONNECTOR_EVENTS.ERRORED, errorListener);
121
+ web3Auth.off(constants.CONNECTOR_EVENTS.REHYDRATION_ERROR, rehydrationErrorListener);
117
122
  web3Auth.off(constants.CONNECTOR_EVENTS.MFA_ENABLED, mfaEnabledListener);
118
123
  }
119
124
  };
@@ -1,14 +1,16 @@
1
1
  'use strict';
2
2
 
3
3
  var react = require('react');
4
- require('@toruslabs/base-controllers');
4
+ require('@babel/runtime/helpers/objectSpread2');
5
5
  require('@babel/runtime/helpers/defineProperty');
6
+ require('@segment/analytics-next');
7
+ require('../../base/loglevel.js');
8
+ require('@toruslabs/base-controllers');
6
9
  require('@web3auth/auth');
7
10
  require('../../base/errors/index.js');
8
11
  require('../../base/wallet/index.js');
9
12
  require('../../base/connector/constants.js');
10
13
  require('jwt-decode');
11
- require('../../base/loglevel.js');
12
14
  var errors = require('../../base/plugin/errors.js');
13
15
  require('../../base/plugin/IPlugin.js');
14
16
  require('@toruslabs/constants');
@@ -11,11 +11,11 @@ const useIdentityToken = () => {
11
11
  const [loading, setLoading] = react.useState(false);
12
12
  const [error, setError] = react.useState(null);
13
13
  const [token, setToken] = react.useState(null);
14
- const authenticateUser = react.useCallback(async () => {
14
+ const getIdentityToken = react.useCallback(async () => {
15
15
  setLoading(true);
16
16
  setError(null);
17
17
  try {
18
- const userAuthInfo = await web3Auth.authenticateUser();
18
+ const userAuthInfo = await web3Auth.getIdentityToken();
19
19
  if (userAuthInfo !== null && userAuthInfo !== void 0 && userAuthInfo.idToken) {
20
20
  setToken(userAuthInfo.idToken);
21
21
  }
@@ -35,7 +35,7 @@ const useIdentityToken = () => {
35
35
  loading,
36
36
  error,
37
37
  token,
38
- authenticateUser
38
+ getIdentityToken
39
39
  };
40
40
  };
41
41
 
@@ -1,14 +1,16 @@
1
1
  'use strict';
2
2
 
3
3
  var react = require('react');
4
- require('@toruslabs/base-controllers');
4
+ require('@babel/runtime/helpers/objectSpread2');
5
5
  require('@babel/runtime/helpers/defineProperty');
6
+ require('@segment/analytics-next');
7
+ require('../../base/loglevel.js');
8
+ require('@toruslabs/base-controllers');
6
9
  require('@web3auth/auth');
7
10
  require('../../base/errors/index.js');
8
11
  require('../../base/wallet/index.js');
9
12
  require('../../base/connector/constants.js');
10
13
  require('jwt-decode');
11
- require('../../base/loglevel.js');
12
14
  var errors = require('../../base/plugin/errors.js');
13
15
  require('../../base/plugin/IPlugin.js');
14
16
  require('@toruslabs/constants');
@@ -1,14 +1,16 @@
1
1
  'use strict';
2
2
 
3
3
  var react = require('react');
4
- require('@toruslabs/base-controllers');
4
+ require('@babel/runtime/helpers/objectSpread2');
5
5
  require('@babel/runtime/helpers/defineProperty');
6
+ require('@segment/analytics-next');
7
+ require('../../base/loglevel.js');
8
+ require('@toruslabs/base-controllers');
6
9
  require('@web3auth/auth');
7
10
  require('../../base/errors/index.js');
8
11
  require('../../base/wallet/index.js');
9
12
  require('../../base/connector/constants.js');
10
13
  require('jwt-decode');
11
- require('../../base/loglevel.js');
12
14
  var errors = require('../../base/plugin/errors.js');
13
15
  require('../../base/plugin/IPlugin.js');
14
16
  require('@toruslabs/constants');
@@ -1,14 +1,16 @@
1
1
  'use strict';
2
2
 
3
3
  var react = require('react');
4
- require('@toruslabs/base-controllers');
4
+ require('@babel/runtime/helpers/objectSpread2');
5
5
  require('@babel/runtime/helpers/defineProperty');
6
+ require('@segment/analytics-next');
7
+ require('../../base/loglevel.js');
8
+ require('@toruslabs/base-controllers');
6
9
  require('@web3auth/auth');
7
10
  require('../../base/errors/index.js');
8
11
  require('../../base/wallet/index.js');
9
12
  require('../../base/connector/constants.js');
10
13
  require('jwt-decode');
11
- require('../../base/loglevel.js');
12
14
  var errors = require('../../base/plugin/errors.js');
13
15
  require('../../base/plugin/IPlugin.js');
14
16
  require('@toruslabs/constants');
@@ -1,14 +1,16 @@
1
1
  'use strict';
2
2
 
3
3
  var react = require('react');
4
- require('@toruslabs/base-controllers');
4
+ require('@babel/runtime/helpers/objectSpread2');
5
5
  require('@babel/runtime/helpers/defineProperty');
6
+ require('@segment/analytics-next');
7
+ require('../../base/loglevel.js');
8
+ require('@toruslabs/base-controllers');
6
9
  require('@web3auth/auth');
7
10
  var index = require('../../base/errors/index.js');
8
11
  require('../../base/wallet/index.js');
9
12
  require('../../base/connector/constants.js');
10
13
  require('jwt-decode');
11
- require('../../base/loglevel.js');
12
14
  require('../../base/plugin/errors.js');
13
15
  require('../../base/plugin/IPlugin.js');
14
16
  require('@toruslabs/constants');
@@ -2,21 +2,22 @@
2
2
 
3
3
  var web3_js = require('@solana/web3.js');
4
4
  var react = require('react');
5
+ var baseControllers = require('@toruslabs/base-controllers');
5
6
  require('@solana/wallet-standard-features');
6
7
  require('@toruslabs/bs58');
7
- require('@toruslabs/base-controllers');
8
+ require('@babel/runtime/helpers/objectSpread2');
8
9
  require('@babel/runtime/helpers/defineProperty');
10
+ require('@segment/analytics-next');
11
+ require('../../../base/loglevel.js');
9
12
  require('@web3auth/auth');
10
13
  require('../../../base/errors/index.js');
11
14
  require('../../../base/wallet/index.js');
12
15
  require('../../../base/connector/constants.js');
13
16
  require('jwt-decode');
14
- require('../../../base/loglevel.js');
15
17
  require('../../../base/plugin/errors.js');
16
18
  require('../../../base/plugin/IPlugin.js');
17
19
  require('@toruslabs/constants');
18
20
  require('@toruslabs/http-helpers');
19
- require('@babel/runtime/helpers/objectSpread2');
20
21
  require('../../../providers/base-provider/utils.js');
21
22
  require('../../../providers/base-provider/CommonJRPCProvider.js');
22
23
  require('../../../providers/base-provider/commonPrivateKeyProvider.js');
@@ -40,7 +41,11 @@ const useSolanaWallet = () => {
40
41
  }, [web3Auth, provider]);
41
42
  react.useEffect(() => {
42
43
  const init = async () => {
44
+ var _web3Auth$currentChai;
43
45
  if (!solanaWallet$1) return;
46
+ if (!(web3Auth !== null && web3Auth !== void 0 && (_web3Auth$currentChai = web3Auth.currentChain) !== null && _web3Auth$currentChai !== void 0 && _web3Auth$currentChai.chainNamespace) || web3Auth.currentChain.chainNamespace !== baseControllers.CHAIN_NAMESPACES.SOLANA) {
47
+ return;
48
+ }
44
49
  const accounts = await solanaWallet$1.requestAccounts();
45
50
  if ((accounts === null || accounts === void 0 ? void 0 : accounts.length) > 0) {
46
51
  setAccounts(accounts);
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ var wagmi = require('wagmi');
4
+ var chains = require('wagmi/chains');
5
+
6
+ const defaultWagmiConfig = wagmi.createConfig({
7
+ chains: [chains.mainnet],
8
+ connectors: [],
9
+ // or your basic wallets
10
+ ssr: true,
11
+ transports: {
12
+ [chains.mainnet.id]: wagmi.http(chains.mainnet.rpcUrls.default.http[0])
13
+ }
14
+ });
15
+
16
+ exports.defaultWagmiConfig = defaultWagmiConfig;
@@ -6,14 +6,15 @@ var react = require('react');
6
6
  var viem = require('viem');
7
7
  var wagmi = require('wagmi');
8
8
  var connectors = require('wagmi/connectors');
9
- require('@toruslabs/base-controllers');
10
9
  require('@babel/runtime/helpers/defineProperty');
10
+ require('@segment/analytics-next');
11
+ var loglevel = require('../../base/loglevel.js');
12
+ var baseControllers = require('@toruslabs/base-controllers');
11
13
  require('@web3auth/auth');
12
- require('../../base/errors/index.js');
14
+ var index = require('../../base/errors/index.js');
13
15
  require('../../base/wallet/index.js');
14
16
  require('../../base/connector/constants.js');
15
17
  require('jwt-decode');
16
- var loglevel = require('../../base/loglevel.js');
17
18
  require('../../base/plugin/errors.js');
18
19
  require('../../base/plugin/IPlugin.js');
19
20
  require('@toruslabs/constants');
@@ -22,6 +23,7 @@ require('../context/WalletServicesInnerContext.js');
22
23
  require('../context/Web3AuthInnerContext.js');
23
24
  var useWeb3Auth = require('../hooks/useWeb3Auth.js');
24
25
  var useWeb3AuthDisconnect = require('../hooks/useWeb3AuthDisconnect.js');
26
+ var constants = require('./constants.js');
25
27
 
26
28
  const _excluded = ["children"];
27
29
  const WEB3AUTH_CONNECTOR_ID = "web3auth";
@@ -83,6 +85,9 @@ function Web3AuthWagmiProvider({
83
85
  disconnect
84
86
  } = useWeb3AuthDisconnect.useWeb3AuthDisconnect();
85
87
  const wagmiConfig = wagmi.useConfig();
88
+ const {
89
+ reconnect
90
+ } = wagmi.useReconnect();
86
91
  wagmi.useAccountEffect({
87
92
  onDisconnect: async () => {
88
93
  loglevel.log.info("Disconnected from wagmi");
@@ -97,13 +102,14 @@ function Web3AuthWagmiProvider({
97
102
  throw new Error("Failed to setup connector");
98
103
  }
99
104
  await connectWeb3AuthWithWagmi(connector, wagmiConfig);
105
+ reconnect();
100
106
  } else if (!isConnected) {
101
107
  if (wagmiConfig.state.status === "connected") {
102
108
  await disconnectWeb3AuthFromWagmi(wagmiConfig);
103
109
  }
104
110
  }
105
111
  })();
106
- }, [isConnected, wagmiConfig, provider]);
112
+ }, [isConnected, wagmiConfig, provider, reconnect]);
107
113
  return react.createElement(react.Fragment, null, children);
108
114
  }
109
115
  function WagmiProvider(_ref) {
@@ -120,6 +126,7 @@ function WagmiProvider(_ref) {
120
126
  } = useWeb3Auth.useWeb3Auth();
121
127
  const finalConfig = react.useMemo(() => {
122
128
  var _web3Auth$coreOptions;
129
+ if (!isInitialized) return constants.defaultWagmiConfig;
123
130
  const finalConfig = _objectSpread(_objectSpread({
124
131
  ssr: true
125
132
  }, config), {}, {
@@ -133,7 +140,8 @@ function WagmiProvider(_ref) {
133
140
  if (isInitialized && web3Auth !== null && web3Auth !== void 0 && (_web3Auth$coreOptions = web3Auth.coreOptions) !== null && _web3Auth$coreOptions !== void 0 && _web3Auth$coreOptions.chains) {
134
141
  var _web3Auth$currentChai;
135
142
  const defaultChainId = (_web3Auth$currentChai = web3Auth.currentChain) === null || _web3Auth$currentChai === void 0 ? void 0 : _web3Auth$currentChai.chainId;
136
- const chains = web3Auth.coreOptions.chains;
143
+ const chains = web3Auth.coreOptions.chains.filter(chain => chain.chainNamespace === baseControllers.CHAIN_NAMESPACES.EIP155);
144
+ if (chains.length === 0) throw index.WalletInitializationError.invalidParams("No valid chains found in web3auth config for wagmi.");
137
145
  chains.forEach(chain => {
138
146
  const wagmiChain = viem.defineChain({
139
147
  id: Number.parseInt(chain.chainId, 16),
@@ -163,22 +171,18 @@ function WagmiProvider(_ref) {
163
171
  } else {
164
172
  wagmiChains.push(wagmiChain);
165
173
  }
166
- finalConfig.transports[wagmiChain.id] = viem.http(chain.rpcTarget);
174
+ finalConfig.transports[wagmiChain.id] = chain.wsTarget ? wagmi.webSocket(chain.wsTarget) : wagmi.http(chain.rpcTarget);
167
175
  });
168
176
  finalConfig.chains = [wagmiChains[0], ...wagmiChains.slice(1)];
169
177
  }
170
178
  if (!finalConfig.chains) return;
171
179
  return wagmi.createConfig(finalConfig);
172
180
  }, [config, web3Auth, isInitialized]);
173
- // WagmiProviderBase requires a config to initialize
174
- // If no config is provided, it will throw an error.
175
- if (!finalConfig) return null;
176
181
  return react.createElement(wagmi.WagmiProvider, // typecast to WagmiProviderPropsBase to avoid type error
177
182
  // as we are omitting the config prop from WagmiProviderProps
178
183
  // and creating a new config object with the finalConfig
179
- _objectSpread(_objectSpread({
180
- config: finalConfig
181
- }, props), {}, {
184
+ _objectSpread(_objectSpread({}, props), {}, {
185
+ config: finalConfig,
182
186
  reconnectOnMount: false
183
187
  }), react.createElement(Web3AuthWagmiProvider, null, children));
184
188
  }