@web3auth/no-modal 10.0.0-alpha.0 → 10.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib.cjs/base/chain/IChainInterface.js +2 -2
- package/dist/lib.cjs/base/chain/config.js +63 -22
- package/dist/lib.cjs/base/connector/baseConnector.js +67 -0
- package/dist/lib.cjs/base/connector/constants.js +26 -0
- package/dist/lib.cjs/base/errors/index.js +2 -2
- package/dist/lib.cjs/base/plugin/errors.js +2 -2
- package/dist/lib.cjs/base/wallet/index.js +15 -20
- package/dist/lib.cjs/connectors/auth-connector/authConnector.js +392 -0
- package/dist/lib.cjs/{adapters/base-evm-adapter/baseEvmAdapter.js → connectors/base-evm-connector/baseEvmConnector.js} +22 -19
- package/dist/lib.cjs/{adapters/base-solana-adapter/baseSolanaAdapter.js → connectors/base-solana-connector/baseSolanaConnector.js} +24 -23
- package/dist/lib.cjs/connectors/coinbase-connector/coinbaseConnector.js +151 -0
- package/dist/lib.cjs/connectors/injected-evm-connector/index.js +12 -0
- package/dist/lib.cjs/{adapters/default-evm-adapter/injectedEvmAdapter.js → connectors/injected-evm-connector/injectedEvmConnector.js} +54 -38
- package/dist/lib.cjs/connectors/injected-solana-connector/index.js +25 -0
- package/dist/lib.cjs/{adapters/default-solana-adapter/walletStandardAdapter.js → connectors/injected-solana-connector/walletStandardConnector.js} +57 -48
- package/dist/lib.cjs/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/WalletConnectV2Provider.js +40 -90
- package/dist/lib.cjs/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/config.js +23 -26
- package/dist/lib.cjs/connectors/wallet-connect-v2-connector/index.js +20 -0
- package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +417 -0
- package/dist/lib.cjs/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/walletConnectV2Utils.js +12 -25
- package/dist/lib.cjs/index.js +100 -82
- package/dist/lib.cjs/noModal.js +291 -239
- package/dist/lib.cjs/plugins/nft-checkout-plugin/plugin.js +9 -4
- package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +43 -199
- package/dist/lib.cjs/providers/account-abstraction-provider/index.js +32 -0
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +99 -31
- package/dist/lib.cjs/providers/base-provider/CommonJRPCProvider.js +21 -26
- package/dist/lib.cjs/providers/base-provider/baseProvider.js +29 -24
- package/dist/lib.cjs/providers/base-provider/commonPrivateKeyProvider.js +2 -13
- package/dist/lib.cjs/providers/base-provider/index.js +18 -0
- package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +34 -57
- package/dist/lib.cjs/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +1 -30
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +9 -11
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +3 -5
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +83 -2
- package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +24 -54
- package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +18 -27
- package/dist/lib.cjs/providers/solana-provider/rpc/solanaRpcMiddlewares.js +5 -5
- package/dist/lib.cjs/providers/solana-provider/solanaWallet.js +44 -18
- package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +23 -58
- package/dist/lib.cjs/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +1 -3
- package/dist/lib.cjs/react/no-modal/Web3AuthInnerContext.js +18 -42
- package/dist/lib.cjs/react/wallet-services-plugin/WalletServicesContext.js +3 -0
- package/dist/lib.cjs/vue/no-modal/Web3AuthProvider.js +16 -42
- package/dist/lib.cjs/vue/wallet-services-plugin/WalletServicesProvider.js +4 -0
- package/dist/lib.esm/base/chain/IChainInterface.js +2 -2
- package/dist/lib.esm/base/chain/config.js +63 -22
- package/dist/lib.esm/base/connector/baseConnector.js +65 -0
- package/dist/lib.esm/base/connector/constants.js +22 -0
- package/dist/lib.esm/base/errors/index.js +2 -2
- package/dist/lib.esm/base/plugin/errors.js +2 -2
- package/dist/lib.esm/base/wallet/index.js +11 -16
- package/dist/lib.esm/connectors/auth-connector/authConnector.js +390 -0
- package/dist/lib.esm/{adapters/base-evm-adapter/baseEvmAdapter.js → connectors/base-evm-connector/baseEvmConnector.js} +23 -20
- package/dist/lib.esm/{adapters/base-solana-adapter/baseSolanaAdapter.js → connectors/base-solana-connector/baseSolanaConnector.js} +25 -24
- package/dist/lib.esm/connectors/coinbase-connector/coinbaseConnector.js +149 -0
- package/dist/lib.esm/connectors/injected-evm-connector/index.js +2 -0
- package/dist/lib.esm/{adapters/default-evm-adapter/injectedEvmAdapter.js → connectors/injected-evm-connector/injectedEvmConnector.js} +54 -39
- package/dist/lib.esm/connectors/injected-solana-connector/index.js +18 -0
- package/dist/lib.esm/{adapters/default-solana-adapter/walletStandardAdapter.js → connectors/injected-solana-connector/walletStandardConnector.js} +57 -49
- package/dist/lib.esm/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/WalletConnectV2Provider.js +41 -91
- package/dist/lib.esm/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/config.js +23 -26
- package/dist/lib.esm/connectors/wallet-connect-v2-connector/index.js +3 -0
- package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +415 -0
- package/dist/lib.esm/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/walletConnectV2Utils.js +13 -25
- package/dist/lib.esm/index.js +23 -28
- package/dist/lib.esm/noModal.js +290 -238
- package/dist/lib.esm/plugins/nft-checkout-plugin/plugin.js +9 -4
- package/dist/lib.esm/plugins/wallet-services-plugin/plugin.js +42 -199
- package/dist/lib.esm/providers/account-abstraction-provider/index.js +2 -0
- package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +96 -31
- package/dist/lib.esm/providers/base-provider/CommonJRPCProvider.js +22 -27
- package/dist/lib.esm/providers/base-provider/baseProvider.js +29 -24
- package/dist/lib.esm/providers/base-provider/commonPrivateKeyProvider.js +2 -13
- package/dist/lib.esm/providers/base-provider/index.js +5 -0
- package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +34 -57
- package/dist/lib.esm/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +2 -30
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +9 -11
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +3 -5
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +83 -2
- package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +24 -54
- package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +18 -27
- package/dist/lib.esm/providers/solana-provider/rpc/solanaRpcMiddlewares.js +5 -5
- package/dist/lib.esm/providers/solana-provider/solanaWallet.js +44 -18
- package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +23 -58
- package/dist/lib.esm/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +1 -3
- package/dist/lib.esm/react/no-modal/Web3AuthInnerContext.js +18 -42
- package/dist/lib.esm/react/wallet-services-plugin/WalletServicesContext.js +3 -0
- package/dist/lib.esm/vue/no-modal/Web3AuthProvider.js +16 -42
- package/dist/lib.esm/vue/wallet-services-plugin/WalletServicesProvider.js +4 -0
- package/dist/noModal.cjs.js +12650 -24362
- package/dist/noModal.umd.min.js +1 -1
- package/dist/noModal.umd.min.js.LICENSE.txt +0 -9
- package/dist/types/base/chain/IChainInterface.d.ts +2 -2
- package/dist/types/base/chain/config.d.ts +2 -2
- package/dist/types/base/connector/baseConnector.d.ts +37 -0
- package/dist/types/base/{adapter → connector}/constants.d.ts +7 -4
- package/dist/types/base/{adapter → connector}/index.d.ts +1 -1
- package/dist/types/base/{adapter → connector}/interfaces.d.ts +47 -45
- package/dist/types/base/core/IWeb3Auth.d.ts +75 -34
- package/dist/types/base/errors/index.d.ts +1 -1
- package/dist/types/base/hooks/index.d.ts +2 -6
- package/dist/types/base/index.d.ts +1 -1
- package/dist/types/base/plugin/IPlugin.d.ts +4 -7
- package/dist/types/base/plugin/errors.d.ts +1 -1
- package/dist/types/base/utils.d.ts +1 -1
- package/dist/types/base/wallet/index.d.ts +9 -13
- package/dist/types/connectors/auth-connector/authConnector.d.ts +45 -0
- package/dist/types/connectors/auth-connector/index.d.ts +2 -0
- package/dist/types/connectors/auth-connector/interface.d.ts +14 -0
- package/dist/types/connectors/base-evm-connector/baseEvmConnector.d.ts +7 -0
- package/dist/types/connectors/base-evm-connector/index.d.ts +1 -0
- package/dist/types/connectors/base-solana-connector/baseSolanaConnector.d.ts +7 -0
- package/dist/types/connectors/base-solana-connector/index.d.ts +1 -0
- package/dist/types/connectors/coinbase-connector/coinbaseConnector.d.ts +7 -0
- package/dist/types/connectors/coinbase-connector/index.d.ts +1 -0
- package/dist/types/connectors/index.d.ts +7 -0
- package/dist/types/connectors/injected-evm-connector/index.d.ts +2 -0
- package/dist/types/connectors/injected-evm-connector/injectedEvmConnector.d.ts +34 -0
- package/dist/types/connectors/injected-solana-connector/index.d.ts +5 -0
- package/dist/types/connectors/injected-solana-connector/walletStandardConnector.d.ts +33 -0
- package/dist/types/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/WalletConnectV2Provider.d.ts +3 -4
- package/dist/types/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/config.d.ts +4 -4
- package/dist/types/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/index.d.ts +1 -1
- package/dist/types/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/interface.d.ts +4 -4
- package/dist/types/connectors/wallet-connect-v2-connector/walletConnectV2Connector.d.ts +3 -0
- package/dist/types/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/walletConnectV2Utils.d.ts +1 -6
- package/dist/types/index.d.ts +1 -1
- package/dist/types/noModal.d.ts +29 -14
- package/dist/types/plugins/nft-checkout-plugin/plugin.d.ts +11 -7
- package/dist/types/plugins/wallet-services-plugin/plugin.d.ts +8 -32
- package/dist/types/providers/account-abstraction-provider/providers/AccountAbstractionProvider.d.ts +16 -14
- package/dist/types/providers/account-abstraction-provider/providers/index.d.ts +0 -1
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/index.d.ts +1 -6
- package/dist/types/providers/base-provider/CommonJRPCProvider.d.ts +3 -3
- package/dist/types/providers/base-provider/baseProvider.d.ts +14 -11
- package/dist/types/providers/base-provider/commonPrivateKeyProvider.d.ts +2 -4
- package/dist/types/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.d.ts +14 -5
- package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/index.d.ts +0 -1
- package/dist/types/providers/ethereum-provider/rpc/ethRpcMiddlewares.d.ts +2 -3
- package/dist/types/providers/ethereum-provider/rpc/interfaces.d.ts +0 -13
- package/dist/types/providers/solana-provider/interface.d.ts +8 -25
- package/dist/types/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.d.ts +2 -2
- package/dist/types/providers/solana-provider/providers/injectedProviders/index.d.ts +1 -2
- package/dist/types/providers/solana-provider/providers/injectedProviders/utils.d.ts +3 -0
- package/dist/types/providers/solana-provider/providers/injectedProviders/walletStandardProvider.d.ts +7 -4
- package/dist/types/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.d.ts +4 -4
- package/dist/types/providers/solana-provider/rpc/interfaces.d.ts +12 -27
- package/dist/types/providers/solana-provider/rpc/solanaRpcMiddlewares.d.ts +1 -1
- package/dist/types/providers/solana-provider/solanaWallet.d.ts +21 -7
- package/dist/types/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.d.ts +4 -4
- package/dist/types/providers/xrpl-provider/rpc/xrplRpcMiddlewares.d.ts +1 -4
- package/dist/types/react/no-modal/interfaces.d.ts +4 -4
- package/dist/types/react/wallet-services-plugin/interfaces.d.ts +2 -2
- package/dist/types/vue/no-modal/interfaces.d.ts +5 -8
- package/dist/types/vue/wallet-services-plugin/interfaces.d.ts +2 -2
- package/package.json +8 -7
- package/dist/757.noModal.cjs.js +0 -226
- package/dist/lib.cjs/adapters/auth-adapter/authAdapter.js +0 -262
- package/dist/lib.cjs/adapters/auth-adapter/config.js +0 -17
- package/dist/lib.cjs/adapters/coinbase-adapter/coinbaseAdapter.js +0 -156
- package/dist/lib.cjs/adapters/default-evm-adapter/index.js +0 -40
- package/dist/lib.cjs/adapters/default-evm-adapter/injectedAdapters.js +0 -42
- package/dist/lib.cjs/adapters/default-solana-adapter/index.js +0 -40
- package/dist/lib.cjs/adapters/default-solana-adapter/injectedAdapters.js +0 -53
- package/dist/lib.cjs/adapters/default-solana-adapter/walletStandardHandler.js +0 -77
- package/dist/lib.cjs/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.js +0 -376
- package/dist/lib.cjs/base/adapter/baseAdapter.js +0 -117
- package/dist/lib.cjs/base/adapter/constants.js +0 -24
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.js +0 -29
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.js +0 -22
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.js +0 -30
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.js +0 -30
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.js +0 -29
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/constants.js +0 -11
- package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.js +0 -185
- package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.js +0 -106
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.js +0 -12
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.js +0 -75
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.js +0 -109
- package/dist/lib.esm/adapters/auth-adapter/authAdapter.js +0 -260
- package/dist/lib.esm/adapters/auth-adapter/config.js +0 -15
- package/dist/lib.esm/adapters/coinbase-adapter/coinbaseAdapter.js +0 -154
- package/dist/lib.esm/adapters/default-evm-adapter/index.js +0 -37
- package/dist/lib.esm/adapters/default-evm-adapter/injectedAdapters.js +0 -40
- package/dist/lib.esm/adapters/default-solana-adapter/index.js +0 -37
- package/dist/lib.esm/adapters/default-solana-adapter/injectedAdapters.js +0 -51
- package/dist/lib.esm/adapters/default-solana-adapter/walletStandardHandler.js +0 -75
- package/dist/lib.esm/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.js +0 -374
- package/dist/lib.esm/base/adapter/baseAdapter.js +0 -115
- package/dist/lib.esm/base/adapter/constants.js +0 -20
- package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.js +0 -27
- package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.js +0 -20
- package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.js +0 -28
- package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.js +0 -28
- package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.js +0 -27
- package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/constants.js +0 -9
- package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.js +0 -183
- package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.js +0 -104
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.js +0 -10
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.js +0 -73
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.js +0 -107
- package/dist/types/adapters/auth-adapter/authAdapter.d.ts +0 -42
- package/dist/types/adapters/auth-adapter/config.d.ts +0 -2
- package/dist/types/adapters/auth-adapter/index.d.ts +0 -3
- package/dist/types/adapters/auth-adapter/interface.d.ts +0 -11
- package/dist/types/adapters/base-evm-adapter/baseEvmAdapter.d.ts +0 -7
- package/dist/types/adapters/base-evm-adapter/index.d.ts +0 -1
- package/dist/types/adapters/base-solana-adapter/baseSolanaAdapter.d.ts +0 -7
- package/dist/types/adapters/base-solana-adapter/index.d.ts +0 -1
- package/dist/types/adapters/coinbase-adapter/coinbaseAdapter.d.ts +0 -33
- package/dist/types/adapters/coinbase-adapter/index.d.ts +0 -1
- package/dist/types/adapters/default-evm-adapter/index.d.ts +0 -6
- package/dist/types/adapters/default-evm-adapter/injectedAdapters.d.ts +0 -4
- package/dist/types/adapters/default-evm-adapter/injectedEvmAdapter.d.ts +0 -30
- package/dist/types/adapters/default-solana-adapter/index.d.ts +0 -6
- package/dist/types/adapters/default-solana-adapter/injectedAdapters.d.ts +0 -4
- package/dist/types/adapters/default-solana-adapter/walletStandardAdapter.d.ts +0 -31
- package/dist/types/adapters/default-solana-adapter/walletStandardHandler.d.ts +0 -27
- package/dist/types/adapters/index.d.ts +0 -7
- package/dist/types/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.d.ts +0 -42
- package/dist/types/base/adapter/baseAdapter.d.ts +0 -44
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.d.ts +0 -14
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.d.ts +0 -13
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/LightSmartAccount.d.ts +0 -14
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.d.ts +0 -14
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.d.ts +0 -13
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/SimpleSmartAccount.d.ts +0 -13
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.d.ts +0 -13
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/constants.d.ts +0 -9
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/types.d.ts +0 -22
- package/dist/types/providers/account-abstraction-provider/providers/types.d.ts +0 -17
- package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.d.ts +0 -30
- package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.d.ts +0 -9
- package/dist/types/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.d.ts +0 -3
- package/dist/types/providers/solana-provider/providers/injectedProviders/interface.d.ts +0 -5
- package/dist/types/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.d.ts +0 -3
- package/dist/types/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.d.ts +0 -18
- /package/dist/lib.cjs/base/{adapter → connector}/utils.js +0 -0
- /package/dist/lib.cjs/{adapters/default-solana-adapter → providers/solana-provider/providers/injectedProviders}/utils.js +0 -0
- /package/dist/lib.esm/base/{adapter → connector}/utils.js +0 -0
- /package/dist/lib.esm/{adapters/default-solana-adapter → providers/solana-provider/providers/injectedProviders}/utils.js +0 -0
- /package/dist/types/base/{adapter → connector}/utils.d.ts +0 -0
- /package/dist/types/{adapters/default-solana-adapter → connectors/injected-solana-connector}/utils.d.ts +0 -0
- /package/dist/types/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/utils.d.ts +0 -0
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var react = require('react');
|
|
4
4
|
var index = require('../../base/errors/index.js');
|
|
5
5
|
var noModal = require('../../noModal.js');
|
|
6
|
-
var constants = require('../../base/
|
|
6
|
+
var constants = require('../../base/connector/constants.js');
|
|
7
7
|
|
|
8
8
|
const Web3AuthInnerContext = react.createContext(null);
|
|
9
9
|
function Web3AuthInnerProvider(params) {
|
|
@@ -22,10 +22,6 @@ function Web3AuthInnerProvider(params) {
|
|
|
22
22
|
const [isMFAEnabled, setIsMFAEnabled] = react.useState(false);
|
|
23
23
|
const [isInitialized, setIsInitialized] = react.useState(false);
|
|
24
24
|
const [status, setStatus] = react.useState(null);
|
|
25
|
-
const addPlugin = react.useCallback(plugin => {
|
|
26
|
-
if (!web3Auth) throw index.WalletInitializationError.notReady();
|
|
27
|
-
return web3Auth.addPlugin(plugin);
|
|
28
|
-
}, [web3Auth]);
|
|
29
25
|
const getPlugin = react.useCallback(name => {
|
|
30
26
|
if (!web3Auth) throw index.WalletInitializationError.notReady();
|
|
31
27
|
return web3Auth.getPlugin(name);
|
|
@@ -40,15 +36,9 @@ function Web3AuthInnerProvider(params) {
|
|
|
40
36
|
};
|
|
41
37
|
resetHookState();
|
|
42
38
|
const {
|
|
43
|
-
web3AuthOptions
|
|
44
|
-
adapters = [],
|
|
45
|
-
plugins = []
|
|
39
|
+
web3AuthOptions
|
|
46
40
|
} = config;
|
|
47
41
|
const web3Instance = new noModal.Web3AuthNoModal(web3AuthOptions);
|
|
48
|
-
if (adapters.length) adapters.map(adapter => web3Instance.configureAdapter(adapter));
|
|
49
|
-
if (plugins.length) plugins.forEach(plugin => {
|
|
50
|
-
web3Instance.addPlugin(plugin);
|
|
51
|
-
});
|
|
52
42
|
setWeb3Auth(web3Instance);
|
|
53
43
|
}, [config]);
|
|
54
44
|
react.useEffect(() => {
|
|
@@ -85,7 +75,7 @@ function Web3AuthInnerProvider(params) {
|
|
|
85
75
|
// TODO: don't throw error in init, connect in v9
|
|
86
76
|
|
|
87
77
|
react.useEffect(() => {
|
|
88
|
-
const notReadyListener = () => setStatus(constants.
|
|
78
|
+
const notReadyListener = () => setStatus(constants.CONNECTOR_STATUS.NOT_READY);
|
|
89
79
|
const readyListener = () => {
|
|
90
80
|
setStatus(web3Auth.status);
|
|
91
81
|
setIsInitialized(true);
|
|
@@ -93,7 +83,7 @@ function Web3AuthInnerProvider(params) {
|
|
|
93
83
|
const connectedListener = () => {
|
|
94
84
|
setStatus(web3Auth.status);
|
|
95
85
|
// we do this because of rehydration issues. status connected is fired first but web3auth sdk is not ready yet.
|
|
96
|
-
if (web3Auth.status === constants.
|
|
86
|
+
if (web3Auth.status === constants.CONNECTOR_STATUS.CONNECTED) {
|
|
97
87
|
setIsInitialized(true);
|
|
98
88
|
setIsConnected(true);
|
|
99
89
|
}
|
|
@@ -106,26 +96,26 @@ function Web3AuthInnerProvider(params) {
|
|
|
106
96
|
setStatus(web3Auth.status);
|
|
107
97
|
};
|
|
108
98
|
const errorListener = () => {
|
|
109
|
-
setStatus(constants.
|
|
99
|
+
setStatus(constants.CONNECTOR_STATUS.ERRORED);
|
|
110
100
|
};
|
|
111
101
|
if (web3Auth) {
|
|
112
102
|
// web3Auth is initialized here.
|
|
113
103
|
setStatus(web3Auth.status);
|
|
114
|
-
web3Auth.on(constants.
|
|
115
|
-
web3Auth.on(constants.
|
|
116
|
-
web3Auth.on(constants.
|
|
117
|
-
web3Auth.on(constants.
|
|
118
|
-
web3Auth.on(constants.
|
|
119
|
-
web3Auth.on(constants.
|
|
104
|
+
web3Auth.on(constants.CONNECTOR_EVENTS.NOT_READY, notReadyListener);
|
|
105
|
+
web3Auth.on(constants.CONNECTOR_EVENTS.READY, readyListener);
|
|
106
|
+
web3Auth.on(constants.CONNECTOR_EVENTS.CONNECTED, connectedListener);
|
|
107
|
+
web3Auth.on(constants.CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
|
|
108
|
+
web3Auth.on(constants.CONNECTOR_EVENTS.CONNECTING, connectingListener);
|
|
109
|
+
web3Auth.on(constants.CONNECTOR_EVENTS.ERRORED, errorListener);
|
|
120
110
|
}
|
|
121
111
|
return () => {
|
|
122
112
|
if (web3Auth) {
|
|
123
|
-
web3Auth.off(constants.
|
|
124
|
-
web3Auth.off(constants.
|
|
125
|
-
web3Auth.off(constants.
|
|
126
|
-
web3Auth.off(constants.
|
|
127
|
-
web3Auth.off(constants.
|
|
128
|
-
web3Auth.off(constants.
|
|
113
|
+
web3Auth.off(constants.CONNECTOR_EVENTS.NOT_READY, notReadyListener);
|
|
114
|
+
web3Auth.off(constants.CONNECTOR_EVENTS.READY, readyListener);
|
|
115
|
+
web3Auth.off(constants.CONNECTOR_EVENTS.CONNECTED, connectedListener);
|
|
116
|
+
web3Auth.off(constants.CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
|
|
117
|
+
web3Auth.off(constants.CONNECTOR_EVENTS.CONNECTING, connectingListener);
|
|
118
|
+
web3Auth.off(constants.CONNECTOR_EVENTS.ERRORED, errorListener);
|
|
129
119
|
}
|
|
130
120
|
};
|
|
131
121
|
}, [web3Auth]);
|
|
@@ -163,21 +153,10 @@ function Web3AuthInnerProvider(params) {
|
|
|
163
153
|
setIsConnecting(false);
|
|
164
154
|
}
|
|
165
155
|
}, [web3Auth]);
|
|
166
|
-
const addAndSwitchChain = react.useCallback(async chainConfig => {
|
|
167
|
-
if (!web3Auth) throw index.WalletInitializationError.notReady();
|
|
168
|
-
await web3Auth.addChain(chainConfig);
|
|
169
|
-
await web3Auth.switchChain({
|
|
170
|
-
chainId: chainConfig.chainId
|
|
171
|
-
});
|
|
172
|
-
}, [web3Auth]);
|
|
173
156
|
const authenticateUser = react.useCallback(async () => {
|
|
174
157
|
if (!web3Auth) throw index.WalletInitializationError.notReady();
|
|
175
158
|
return web3Auth.authenticateUser();
|
|
176
159
|
}, [web3Auth]);
|
|
177
|
-
const addChain = react.useCallback(async chainConfig => {
|
|
178
|
-
if (!web3Auth) throw index.WalletInitializationError.notReady();
|
|
179
|
-
return web3Auth.addChain(chainConfig);
|
|
180
|
-
}, [web3Auth]);
|
|
181
160
|
const switchChain = react.useCallback(chainParams => {
|
|
182
161
|
if (!web3Auth) throw index.WalletInitializationError.notReady();
|
|
183
162
|
return web3Auth.switchChain(chainParams);
|
|
@@ -196,9 +175,6 @@ function Web3AuthInnerProvider(params) {
|
|
|
196
175
|
enableMFA,
|
|
197
176
|
manageMFA,
|
|
198
177
|
logout,
|
|
199
|
-
addAndSwitchChain,
|
|
200
|
-
addChain,
|
|
201
|
-
addPlugin,
|
|
202
178
|
authenticateUser,
|
|
203
179
|
switchChain,
|
|
204
180
|
isInitializing,
|
|
@@ -206,7 +182,7 @@ function Web3AuthInnerProvider(params) {
|
|
|
206
182
|
initError,
|
|
207
183
|
connectError
|
|
208
184
|
};
|
|
209
|
-
}, [web3Auth, isConnected, isInitialized, provider, userInfo, isMFAEnabled, status, connectTo, getPlugin, enableMFA, manageMFA, logout,
|
|
185
|
+
}, [web3Auth, isConnected, isInitialized, provider, userInfo, isMFAEnabled, status, connectTo, getPlugin, enableMFA, manageMFA, logout, authenticateUser, switchChain, isConnecting, isInitializing, initError, connectError]);
|
|
210
186
|
return react.createElement(Web3AuthInnerContext.Provider, {
|
|
211
187
|
value
|
|
212
188
|
}, children);
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var react = require('react');
|
|
4
4
|
var IPlugin = require('../../base/plugin/IPlugin.js');
|
|
5
|
+
var constants = require('../../base/connector/constants.js');
|
|
5
6
|
var errors = require('../../base/plugin/errors.js');
|
|
6
7
|
|
|
7
8
|
const WalletServicesContext = react.createContext(null);
|
|
@@ -27,6 +28,8 @@ function WalletServicesContextProvider({
|
|
|
27
28
|
if (isConnected) {
|
|
28
29
|
const plugin = getPlugin(IPlugin.EVM_PLUGINS.WALLET_SERVICES);
|
|
29
30
|
if (!walletServicesPlugin) setWalletServicesPlugin(plugin);
|
|
31
|
+
// when rehydrating, the connectedListener may be registered after the connected event is emitted, we need to check the status here
|
|
32
|
+
if ((walletServicesPlugin === null || walletServicesPlugin === void 0 ? void 0 : walletServicesPlugin.status) === constants.CONNECTOR_STATUS.CONNECTED) setIsPluginConnected(true);
|
|
30
33
|
}
|
|
31
34
|
}, [isConnected, getPlugin, walletServicesPlugin]);
|
|
32
35
|
react.useEffect(() => {
|
|
@@ -4,7 +4,7 @@ var vue = require('vue');
|
|
|
4
4
|
var index = require('../../base/composables/index.js');
|
|
5
5
|
var index$1 = require('../../base/errors/index.js');
|
|
6
6
|
var noModal = require('../../noModal.js');
|
|
7
|
-
var constants = require('../../base/
|
|
7
|
+
var constants = require('../../base/connector/constants.js');
|
|
8
8
|
|
|
9
9
|
const Web3AuthProvider = vue.defineComponent({
|
|
10
10
|
name: "Web3AuthProvider",
|
|
@@ -26,10 +26,6 @@ const Web3AuthProvider = vue.defineComponent({
|
|
|
26
26
|
const isConnecting = vue.ref(false);
|
|
27
27
|
const connectError = vue.ref(null);
|
|
28
28
|
const isConnected = vue.ref(false);
|
|
29
|
-
const addPlugin = plugin => {
|
|
30
|
-
if (!web3Auth.value) throw index$1.WalletInitializationError.notReady();
|
|
31
|
-
return web3Auth.value.addPlugin(plugin);
|
|
32
|
-
};
|
|
33
29
|
const getPlugin = name => {
|
|
34
30
|
if (!web3Auth.value) throw index$1.WalletInitializationError.notReady();
|
|
35
31
|
return web3Auth.value.getPlugin(name);
|
|
@@ -67,21 +63,10 @@ const Web3AuthProvider = vue.defineComponent({
|
|
|
67
63
|
isConnecting.value = false;
|
|
68
64
|
}
|
|
69
65
|
};
|
|
70
|
-
const addAndSwitchChain = async chainConfig => {
|
|
71
|
-
if (!web3Auth.value) throw index$1.WalletInitializationError.notReady();
|
|
72
|
-
await web3Auth.value.addChain(chainConfig);
|
|
73
|
-
await web3Auth.value.switchChain({
|
|
74
|
-
chainId: chainConfig.chainId
|
|
75
|
-
});
|
|
76
|
-
};
|
|
77
66
|
const authenticateUser = async () => {
|
|
78
67
|
if (!web3Auth.value) throw index$1.WalletInitializationError.notReady();
|
|
79
68
|
return web3Auth.value.authenticateUser();
|
|
80
69
|
};
|
|
81
|
-
const addChain = async chainConfig => {
|
|
82
|
-
if (!web3Auth.value) throw index$1.WalletInitializationError.notReady();
|
|
83
|
-
return web3Auth.value.addChain(chainConfig);
|
|
84
|
-
};
|
|
85
70
|
const switchChain = chainParams => {
|
|
86
71
|
if (!web3Auth.value) throw index$1.WalletInitializationError.notReady();
|
|
87
72
|
return web3Auth.value.switchChain(chainParams);
|
|
@@ -96,17 +81,9 @@ const Web3AuthProvider = vue.defineComponent({
|
|
|
96
81
|
};
|
|
97
82
|
resetHookState();
|
|
98
83
|
const {
|
|
99
|
-
web3AuthOptions
|
|
100
|
-
adapters = [],
|
|
101
|
-
plugins = []
|
|
84
|
+
web3AuthOptions
|
|
102
85
|
} = newConfig;
|
|
103
86
|
const web3AuthInstance = new noModal.Web3AuthNoModal(web3AuthOptions);
|
|
104
|
-
if (adapters.length) adapters.map(adapter => web3AuthInstance.configureAdapter(adapter));
|
|
105
|
-
if (plugins.length) {
|
|
106
|
-
plugins.forEach(plugin => {
|
|
107
|
-
web3AuthInstance.addPlugin(plugin);
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
87
|
web3Auth.value = web3AuthInstance;
|
|
111
88
|
}, {
|
|
112
89
|
immediate: true
|
|
@@ -151,7 +128,7 @@ const Web3AuthProvider = vue.defineComponent({
|
|
|
151
128
|
const connectedListener = () => {
|
|
152
129
|
status.value = web3Auth.value.status;
|
|
153
130
|
// we do this because of rehydration issues. status connected is fired first but web3auth sdk is not ready yet.
|
|
154
|
-
if (web3Auth.value.status === constants.
|
|
131
|
+
if (web3Auth.value.status === constants.CONNECTOR_STATUS.CONNECTED) {
|
|
155
132
|
isInitialized.value = true;
|
|
156
133
|
isConnected.value = true;
|
|
157
134
|
}
|
|
@@ -164,27 +141,27 @@ const Web3AuthProvider = vue.defineComponent({
|
|
|
164
141
|
status.value = web3Auth.value.status;
|
|
165
142
|
};
|
|
166
143
|
const errorListener = () => {
|
|
167
|
-
status.value = constants.
|
|
144
|
+
status.value = constants.CONNECTOR_EVENTS.ERRORED;
|
|
168
145
|
};
|
|
169
146
|
|
|
170
147
|
// unregister previous listeners
|
|
171
148
|
if (prevWeb3Auth && newWeb3Auth !== prevWeb3Auth) {
|
|
172
|
-
prevWeb3Auth.off(constants.
|
|
173
|
-
prevWeb3Auth.off(constants.
|
|
174
|
-
prevWeb3Auth.off(constants.
|
|
175
|
-
prevWeb3Auth.off(constants.
|
|
176
|
-
prevWeb3Auth.off(constants.
|
|
177
|
-
prevWeb3Auth.off(constants.
|
|
149
|
+
prevWeb3Auth.off(constants.CONNECTOR_EVENTS.NOT_READY, notReadyListener);
|
|
150
|
+
prevWeb3Auth.off(constants.CONNECTOR_EVENTS.READY, readyListener);
|
|
151
|
+
prevWeb3Auth.off(constants.CONNECTOR_EVENTS.CONNECTED, connectedListener);
|
|
152
|
+
prevWeb3Auth.off(constants.CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
|
|
153
|
+
prevWeb3Auth.off(constants.CONNECTOR_EVENTS.CONNECTING, connectingListener);
|
|
154
|
+
prevWeb3Auth.off(constants.CONNECTOR_EVENTS.ERRORED, errorListener);
|
|
178
155
|
}
|
|
179
156
|
if (newWeb3Auth && newWeb3Auth !== prevWeb3Auth) {
|
|
180
157
|
status.value = newWeb3Auth.status;
|
|
181
158
|
// web3Auth is initialized here.
|
|
182
|
-
newWeb3Auth.on(constants.
|
|
183
|
-
newWeb3Auth.on(constants.
|
|
184
|
-
newWeb3Auth.on(constants.
|
|
185
|
-
newWeb3Auth.on(constants.
|
|
186
|
-
newWeb3Auth.on(constants.
|
|
187
|
-
newWeb3Auth.on(constants.
|
|
159
|
+
newWeb3Auth.on(constants.CONNECTOR_EVENTS.NOT_READY, notReadyListener);
|
|
160
|
+
newWeb3Auth.on(constants.CONNECTOR_EVENTS.READY, readyListener);
|
|
161
|
+
newWeb3Auth.on(constants.CONNECTOR_EVENTS.CONNECTED, connectedListener);
|
|
162
|
+
newWeb3Auth.on(constants.CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
|
|
163
|
+
newWeb3Auth.on(constants.CONNECTOR_EVENTS.CONNECTING, connectingListener);
|
|
164
|
+
newWeb3Auth.on(constants.CONNECTOR_EVENTS.ERRORED, errorListener);
|
|
188
165
|
}
|
|
189
166
|
}, {
|
|
190
167
|
immediate: true
|
|
@@ -202,9 +179,6 @@ const Web3AuthProvider = vue.defineComponent({
|
|
|
202
179
|
enableMFA,
|
|
203
180
|
manageMFA,
|
|
204
181
|
logout,
|
|
205
|
-
addAndSwitchChain,
|
|
206
|
-
addChain,
|
|
207
|
-
addPlugin,
|
|
208
182
|
authenticateUser,
|
|
209
183
|
switchChain,
|
|
210
184
|
isInitializing,
|
|
@@ -5,6 +5,7 @@ var index = require('../../base/composables/index.js');
|
|
|
5
5
|
var context = require('./context.js');
|
|
6
6
|
var errors = require('../../base/plugin/errors.js');
|
|
7
7
|
var IPlugin = require('../../base/plugin/IPlugin.js');
|
|
8
|
+
var constants = require('../../base/connector/constants.js');
|
|
8
9
|
|
|
9
10
|
const WalletServicesProvider = vue.defineComponent({
|
|
10
11
|
name: "WalletServicesProvider",
|
|
@@ -26,8 +27,11 @@ const WalletServicesProvider = vue.defineComponent({
|
|
|
26
27
|
});
|
|
27
28
|
vue.watch(isConnected, newIsConnected => {
|
|
28
29
|
if (newIsConnected) {
|
|
30
|
+
var _walletServicesPlugin;
|
|
29
31
|
const plugin = getPlugin(IPlugin.EVM_PLUGINS.WALLET_SERVICES);
|
|
30
32
|
if (!walletServicesPlugin.value) walletServicesPlugin.value = plugin;
|
|
33
|
+
// when rehydrating, the connectedListener may be registered after the connected event is emitted, we need to check the status here
|
|
34
|
+
if (((_walletServicesPlugin = walletServicesPlugin.value) === null || _walletServicesPlugin === void 0 ? void 0 : _walletServicesPlugin.status) === constants.CONNECTOR_STATUS.CONNECTED) isPluginConnected.value = true;
|
|
31
35
|
}
|
|
32
36
|
});
|
|
33
37
|
vue.watch(walletServicesPlugin, (newWalletServicesPlugin, prevWalletServicesPlugin) => {
|
|
@@ -7,7 +7,7 @@ const CHAIN_NAMESPACES = {
|
|
|
7
7
|
};
|
|
8
8
|
// eip155 for all evm chains
|
|
9
9
|
|
|
10
|
-
const
|
|
10
|
+
const CONNECTOR_NAMESPACES = {
|
|
11
11
|
EIP155: "eip155",
|
|
12
12
|
SOLANA: "solana",
|
|
13
13
|
CASPER: "casper",
|
|
@@ -16,4 +16,4 @@ const ADAPTER_NAMESPACES = {
|
|
|
16
16
|
};
|
|
17
17
|
// eip155 for all evm chains
|
|
18
18
|
|
|
19
|
-
export {
|
|
19
|
+
export { CHAIN_NAMESPACES, CONNECTOR_NAMESPACES };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { WalletInitializationError } from '../errors/index.js';
|
|
2
2
|
import { CHAIN_NAMESPACES } from './IChainInterface.js';
|
|
3
3
|
|
|
4
|
+
const INFURA_PROXY_URL = "https://api.web3auth.io/infura-service/v1";
|
|
4
5
|
const getDefaultNetworkId = chainNamespace => {
|
|
5
6
|
if (chainNamespace === CHAIN_NAMESPACES.EIP155) {
|
|
6
7
|
return 1;
|
|
@@ -13,14 +14,16 @@ const getDefaultNetworkId = chainNamespace => {
|
|
|
13
14
|
}
|
|
14
15
|
throw WalletInitializationError.invalidParams(`Chain namespace ${chainNamespace} is not supported`);
|
|
15
16
|
};
|
|
16
|
-
|
|
17
|
+
// TODO: remove this function and get this from dashboard instead
|
|
18
|
+
const getEvmChainConfig = (chainId, web3AuthClientId = "") => {
|
|
17
19
|
const chainNamespace = CHAIN_NAMESPACES.EIP155;
|
|
20
|
+
const infuraRpcTarget = `${INFURA_PROXY_URL}/${chainId}/${web3AuthClientId}`;
|
|
18
21
|
if (chainId === 1) {
|
|
19
22
|
return {
|
|
20
23
|
logo: "https://images.toruswallet.io/eth.svg",
|
|
21
24
|
chainNamespace,
|
|
22
25
|
chainId: "0x1",
|
|
23
|
-
rpcTarget:
|
|
26
|
+
rpcTarget: infuraRpcTarget,
|
|
24
27
|
displayName: "Ethereum Mainnet",
|
|
25
28
|
blockExplorerUrl: "https://etherscan.io/",
|
|
26
29
|
ticker: "ETH",
|
|
@@ -28,17 +31,55 @@ const getEvmChainConfig = chainId => {
|
|
|
28
31
|
decimals: 18
|
|
29
32
|
};
|
|
30
33
|
}
|
|
31
|
-
if (chainId ===
|
|
34
|
+
if (chainId === 10) {
|
|
32
35
|
return {
|
|
36
|
+
chainNamespace: CHAIN_NAMESPACES.EIP155,
|
|
37
|
+
decimals: 18,
|
|
38
|
+
blockExplorerUrl: "https://optimistic.etherscan.io",
|
|
39
|
+
chainId: "0xa",
|
|
40
|
+
displayName: "Optimism",
|
|
41
|
+
logo: "optimism.svg",
|
|
42
|
+
rpcTarget: infuraRpcTarget,
|
|
43
|
+
ticker: "ETH",
|
|
44
|
+
tickerName: "Ethereum"
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
if (chainId === 8453) {
|
|
48
|
+
return {
|
|
49
|
+
chainNamespace: CHAIN_NAMESPACES.EIP155,
|
|
50
|
+
decimals: 18,
|
|
51
|
+
blockExplorerUrl: "https://basescan.org",
|
|
52
|
+
chainId: "0x2105",
|
|
53
|
+
displayName: "Base",
|
|
54
|
+
logo: "base.svg",
|
|
55
|
+
rpcTarget: infuraRpcTarget,
|
|
56
|
+
ticker: "ETH",
|
|
57
|
+
tickerName: "Ethereum"
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
if (chainId === 42161) {
|
|
61
|
+
return {
|
|
62
|
+
chainNamespace: CHAIN_NAMESPACES.EIP155,
|
|
63
|
+
decimals: 18,
|
|
64
|
+
blockExplorerUrl: "https://arbiscan.io",
|
|
65
|
+
chainId: "0xa4b1",
|
|
66
|
+
displayName: "Arbitrum One",
|
|
67
|
+
logo: "arbitrum.svg",
|
|
68
|
+
rpcTarget: infuraRpcTarget,
|
|
69
|
+
ticker: "ETH",
|
|
70
|
+
tickerName: "Ethereum"
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
if (chainId === 59144) {
|
|
74
|
+
return {
|
|
75
|
+
chainNamespace: CHAIN_NAMESPACES.EIP155,
|
|
76
|
+
decimals: 18,
|
|
77
|
+
blockExplorerUrl: "https://lineascan.build",
|
|
78
|
+
chainId: "0xe708",
|
|
33
79
|
logo: "https://images.toruswallet.io/eth.svg",
|
|
34
|
-
|
|
35
|
-
chainId: "0x5",
|
|
36
|
-
rpcTarget: `https://rpc.ankr.com/eth_goerli`,
|
|
37
|
-
displayName: "Goerli Testnet",
|
|
38
|
-
blockExplorerUrl: "https://goerli.etherscan.io/",
|
|
80
|
+
rpcTarget: infuraRpcTarget,
|
|
39
81
|
ticker: "ETH",
|
|
40
|
-
tickerName: "Ethereum"
|
|
41
|
-
decimals: 18
|
|
82
|
+
tickerName: "Ethereum"
|
|
42
83
|
};
|
|
43
84
|
}
|
|
44
85
|
if (chainId === 11155111) {
|
|
@@ -46,7 +87,7 @@ const getEvmChainConfig = chainId => {
|
|
|
46
87
|
logo: "https://images.toruswallet.io/eth.svg",
|
|
47
88
|
chainNamespace,
|
|
48
89
|
chainId: "0xaa36a7",
|
|
49
|
-
rpcTarget:
|
|
90
|
+
rpcTarget: infuraRpcTarget,
|
|
50
91
|
displayName: "Sepolia Testnet",
|
|
51
92
|
blockExplorerUrl: "https://sepolia.etherscan.io/",
|
|
52
93
|
ticker: "ETH",
|
|
@@ -59,7 +100,7 @@ const getEvmChainConfig = chainId => {
|
|
|
59
100
|
logo: "https://images.toruswallet.io/polygon.svg",
|
|
60
101
|
chainNamespace,
|
|
61
102
|
chainId: "0x89",
|
|
62
|
-
rpcTarget:
|
|
103
|
+
rpcTarget: infuraRpcTarget,
|
|
63
104
|
displayName: "Polygon Mainnet",
|
|
64
105
|
blockExplorerUrl: "https://polygonscan.com",
|
|
65
106
|
ticker: "POL",
|
|
@@ -71,7 +112,7 @@ const getEvmChainConfig = chainId => {
|
|
|
71
112
|
logo: "https://images.toruswallet.io/polygon.svg",
|
|
72
113
|
chainNamespace,
|
|
73
114
|
chainId: "0x13882",
|
|
74
|
-
rpcTarget:
|
|
115
|
+
rpcTarget: infuraRpcTarget,
|
|
75
116
|
displayName: "Polygon Amoy Testnet",
|
|
76
117
|
blockExplorerUrl: "https://www.oklink.com/amoy",
|
|
77
118
|
ticker: "POL",
|
|
@@ -84,7 +125,7 @@ const getEvmChainConfig = chainId => {
|
|
|
84
125
|
logo: "https://images.toruswallet.io/bnb.png",
|
|
85
126
|
chainNamespace,
|
|
86
127
|
chainId: "0x38",
|
|
87
|
-
rpcTarget:
|
|
128
|
+
rpcTarget: infuraRpcTarget,
|
|
88
129
|
displayName: "Binance SmartChain Mainnet",
|
|
89
130
|
blockExplorerUrl: "https://bscscan.com",
|
|
90
131
|
ticker: "BNB",
|
|
@@ -97,7 +138,7 @@ const getEvmChainConfig = chainId => {
|
|
|
97
138
|
logo: "https://images.toruswallet.io/bnb.png",
|
|
98
139
|
chainNamespace,
|
|
99
140
|
chainId: "0x61",
|
|
100
|
-
rpcTarget:
|
|
141
|
+
rpcTarget: infuraRpcTarget,
|
|
101
142
|
displayName: "Binance SmartChain Testnet",
|
|
102
143
|
blockExplorerUrl: "https://testnet.bscscan.com",
|
|
103
144
|
ticker: "BNB",
|
|
@@ -171,7 +212,8 @@ const getEvmChainConfig = chainId => {
|
|
|
171
212
|
};
|
|
172
213
|
const getSolanaChainConfig = chainId => {
|
|
173
214
|
const chainNamespace = CHAIN_NAMESPACES.SOLANA;
|
|
174
|
-
|
|
215
|
+
// support both cross chain id and base solana chain id from 1
|
|
216
|
+
if (chainId === 101 || chainId === 1) {
|
|
175
217
|
return {
|
|
176
218
|
logo: "https://images.toruswallet.io/sol.svg",
|
|
177
219
|
chainNamespace,
|
|
@@ -183,7 +225,7 @@ const getSolanaChainConfig = chainId => {
|
|
|
183
225
|
tickerName: "Solana",
|
|
184
226
|
decimals: 9
|
|
185
227
|
};
|
|
186
|
-
} else if (chainId === 102) {
|
|
228
|
+
} else if (chainId === 102 || chainId === 2) {
|
|
187
229
|
return {
|
|
188
230
|
logo: "https://images.toruswallet.io/sol.svg",
|
|
189
231
|
chainNamespace,
|
|
@@ -195,7 +237,7 @@ const getSolanaChainConfig = chainId => {
|
|
|
195
237
|
tickerName: "Solana",
|
|
196
238
|
decimals: 9
|
|
197
239
|
};
|
|
198
|
-
} else if (chainId === 103) {
|
|
240
|
+
} else if (chainId === 103 || chainId === 3) {
|
|
199
241
|
return {
|
|
200
242
|
logo: "https://images.toruswallet.io/sol.svg",
|
|
201
243
|
chainNamespace,
|
|
@@ -258,13 +300,12 @@ const getXrplChainConfig = chainId => {
|
|
|
258
300
|
}
|
|
259
301
|
return null;
|
|
260
302
|
};
|
|
261
|
-
const getChainConfig = (chainNamespace, chainId) => {
|
|
303
|
+
const getChainConfig = (chainNamespace, chainId, web3AuthClientId) => {
|
|
262
304
|
if (chainNamespace === CHAIN_NAMESPACES.OTHER) return null;
|
|
263
305
|
const finalChainId = chainId ? typeof chainId === "number" ? chainId : parseInt(chainId, 16) : getDefaultNetworkId(chainNamespace);
|
|
264
306
|
if (chainNamespace === CHAIN_NAMESPACES.EIP155) {
|
|
265
|
-
return getEvmChainConfig(finalChainId);
|
|
266
|
-
}
|
|
267
|
-
if (chainNamespace === CHAIN_NAMESPACES.SOLANA) {
|
|
307
|
+
return getEvmChainConfig(finalChainId, web3AuthClientId);
|
|
308
|
+
} else if (chainNamespace === CHAIN_NAMESPACES.SOLANA) {
|
|
268
309
|
return getSolanaChainConfig(finalChainId);
|
|
269
310
|
}
|
|
270
311
|
if (chainNamespace === CHAIN_NAMESPACES.XRPL) {
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
+
import { SafeEventEmitter } from '@web3auth/auth';
|
|
3
|
+
import { CHAIN_NAMESPACES, CONNECTOR_NAMESPACES } from '../chain/IChainInterface.js';
|
|
4
|
+
import { WalletInitializationError, WalletLoginError } from '../errors/index.js';
|
|
5
|
+
import { WALLET_CONNECTORS } from '../wallet/index.js';
|
|
6
|
+
import { CONNECTOR_STATUS, CONNECTOR_EVENTS } from './constants.js';
|
|
7
|
+
|
|
8
|
+
class BaseConnector extends SafeEventEmitter {
|
|
9
|
+
constructor(options) {
|
|
10
|
+
super();
|
|
11
|
+
_defineProperty(this, "connectorData", {});
|
|
12
|
+
_defineProperty(this, "isInjected", void 0);
|
|
13
|
+
_defineProperty(this, "coreOptions", void 0);
|
|
14
|
+
_defineProperty(this, "rehydrated", false);
|
|
15
|
+
_defineProperty(this, "connectorNamespace", void 0);
|
|
16
|
+
_defineProperty(this, "type", void 0);
|
|
17
|
+
_defineProperty(this, "name", void 0);
|
|
18
|
+
_defineProperty(this, "status", void 0);
|
|
19
|
+
this.coreOptions = options.coreOptions;
|
|
20
|
+
}
|
|
21
|
+
get connnected() {
|
|
22
|
+
return this.status === CONNECTOR_STATUS.CONNECTED;
|
|
23
|
+
}
|
|
24
|
+
checkConnectionRequirements() {
|
|
25
|
+
// we reconnect without killing existing wallet connect session on calling connect again.
|
|
26
|
+
if (this.name === WALLET_CONNECTORS.WALLET_CONNECT_V2 && this.status === CONNECTOR_STATUS.CONNECTING) return;
|
|
27
|
+
if (this.status === CONNECTOR_STATUS.CONNECTING) throw WalletInitializationError.notReady("Already connecting");
|
|
28
|
+
if (this.status === CONNECTOR_STATUS.CONNECTED) throw WalletLoginError.connectionError("Already connected");
|
|
29
|
+
if (this.status !== CONNECTOR_STATUS.READY) throw WalletLoginError.connectionError("Wallet connector is not ready yet, Please wait for init function to resolve before calling connect/connectTo function");
|
|
30
|
+
}
|
|
31
|
+
checkInitializationRequirements({
|
|
32
|
+
chainConfig
|
|
33
|
+
}) {
|
|
34
|
+
if (!this.coreOptions.clientId) throw WalletInitializationError.invalidParams("Please initialize Web3Auth with a valid clientId in constructor");
|
|
35
|
+
if (!chainConfig) throw WalletInitializationError.invalidParams("chainConfig is required before initialization");
|
|
36
|
+
if (!chainConfig.rpcTarget && chainConfig.chainNamespace !== CHAIN_NAMESPACES.OTHER) {
|
|
37
|
+
throw WalletInitializationError.invalidParams("rpcTarget is required in chainConfig");
|
|
38
|
+
}
|
|
39
|
+
if (!chainConfig.chainId && chainConfig.chainNamespace !== CHAIN_NAMESPACES.OTHER) {
|
|
40
|
+
throw WalletInitializationError.invalidParams("chainID is required in chainConfig");
|
|
41
|
+
}
|
|
42
|
+
if (this.connectorNamespace !== CONNECTOR_NAMESPACES.MULTICHAIN && this.connectorNamespace !== chainConfig.chainNamespace) throw WalletInitializationError.invalidParams("Connector doesn't support this chain namespace");
|
|
43
|
+
if (this.status === CONNECTOR_STATUS.NOT_READY) return;
|
|
44
|
+
if (this.status === CONNECTOR_STATUS.CONNECTED) throw WalletInitializationError.notReady("Already connected");
|
|
45
|
+
if (this.status === CONNECTOR_STATUS.READY) throw WalletInitializationError.notReady("Connector is already initialized");
|
|
46
|
+
}
|
|
47
|
+
checkDisconnectionRequirements() {
|
|
48
|
+
if (this.status !== CONNECTOR_STATUS.CONNECTED) throw WalletLoginError.disconnectionError("Not connected with wallet");
|
|
49
|
+
}
|
|
50
|
+
checkSwitchChainRequirements(params, init = false) {
|
|
51
|
+
if (!init && !this.provider) throw WalletLoginError.notConnectedError("Not connected with wallet.");
|
|
52
|
+
if (!this.coreOptions.chains) throw WalletInitializationError.invalidParams("chainConfigs is required");
|
|
53
|
+
const doesChainExist = this.coreOptions.chains.some(x => x.chainId === params.chainId && (x.chainNamespace === this.connectorNamespace || this.connectorNamespace === CONNECTOR_NAMESPACES.MULTICHAIN));
|
|
54
|
+
if (!doesChainExist) throw WalletInitializationError.invalidParams("Invalid chainId");
|
|
55
|
+
}
|
|
56
|
+
updateConnectorData(data) {
|
|
57
|
+
this.connectorData = data;
|
|
58
|
+
this.emit(CONNECTOR_EVENTS.CONNECTOR_DATA_UPDATED, {
|
|
59
|
+
connectorName: this.name,
|
|
60
|
+
data
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export { BaseConnector };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
2
|
+
|
|
3
|
+
const CONNECTOR_STATUS = {
|
|
4
|
+
NOT_READY: "not_ready",
|
|
5
|
+
READY: "ready",
|
|
6
|
+
CONNECTING: "connecting",
|
|
7
|
+
CONNECTED: "connected",
|
|
8
|
+
DISCONNECTING: "disconnecting",
|
|
9
|
+
DISCONNECTED: "disconnected",
|
|
10
|
+
ERRORED: "errored"
|
|
11
|
+
};
|
|
12
|
+
const CONNECTOR_EVENTS = _objectSpread(_objectSpread({}, CONNECTOR_STATUS), {}, {
|
|
13
|
+
CONNECTOR_DATA_UPDATED: "connector_data_updated",
|
|
14
|
+
CACHE_CLEAR: "cache_clear",
|
|
15
|
+
CONNECTORS_UPDATED: "connectors_updated"
|
|
16
|
+
});
|
|
17
|
+
const CONNECTOR_CATEGORY = {
|
|
18
|
+
EXTERNAL: "external",
|
|
19
|
+
IN_APP: "in_app"
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export { CONNECTOR_CATEGORY, CONNECTOR_EVENTS, CONNECTOR_STATUS };
|
|
@@ -81,7 +81,7 @@ class WalletInitializationError extends Web3AuthError {
|
|
|
81
81
|
static incompatibleChainNameSpace(extraMessage = "", cause) {
|
|
82
82
|
return WalletInitializationError.fromCode(5006, extraMessage, cause);
|
|
83
83
|
}
|
|
84
|
-
static
|
|
84
|
+
static duplicateConnectorError(extraMessage = "", cause) {
|
|
85
85
|
return WalletInitializationError.fromCode(5007, extraMessage, cause);
|
|
86
86
|
}
|
|
87
87
|
static invalidProviderConfigError(extraMessage = "", cause) {
|
|
@@ -112,7 +112,7 @@ _defineProperty(WalletInitializationError, "messages", {
|
|
|
112
112
|
5004: "Wallet window is blocked",
|
|
113
113
|
5005: "Wallet window has been closed by the user",
|
|
114
114
|
5006: "Incompatible chain namespace provided",
|
|
115
|
-
5007: "
|
|
115
|
+
5007: "Connector has already been included",
|
|
116
116
|
5008: "Invalid provider Config",
|
|
117
117
|
5009: "Provider is not ready yet",
|
|
118
118
|
5010: "Failed to connect with rpc url",
|
|
@@ -17,7 +17,7 @@ class WalletServicesPluginError extends Web3AuthError {
|
|
|
17
17
|
static notInitialized(extraMessage = "", cause) {
|
|
18
18
|
return WalletServicesPluginError.fromCode(5210, extraMessage, cause);
|
|
19
19
|
}
|
|
20
|
-
static
|
|
20
|
+
static unsupportedConnector(extraMessage = "", cause) {
|
|
21
21
|
return WalletServicesPluginError.fromCode(5211, extraMessage, cause);
|
|
22
22
|
}
|
|
23
23
|
static providerRequired(extraMessage = "", cause) {
|
|
@@ -53,7 +53,7 @@ class WalletServicesPluginError extends Web3AuthError {
|
|
|
53
53
|
}
|
|
54
54
|
_defineProperty(WalletServicesPluginError, "messages", {
|
|
55
55
|
5210: "Wallet Services Plugin is not initialized",
|
|
56
|
-
5211: "Web3Auth is connected to unsupported
|
|
56
|
+
5211: "Web3Auth is connected to unsupported connector. Wallet services connector plugin requires web3auth connected to auth connector.",
|
|
57
57
|
5212: "Provider is required..",
|
|
58
58
|
5213: "Web3Auth instance is required while initialization.",
|
|
59
59
|
5214: "Web3Auth is not connected.",
|
|
@@ -1,25 +1,20 @@
|
|
|
1
1
|
import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
2
2
|
|
|
3
|
-
const
|
|
3
|
+
const MULTI_CHAIN_CONNECTORS = {
|
|
4
4
|
AUTH: "auth",
|
|
5
5
|
WALLET_CONNECT_V2: "wallet-connect-v2",
|
|
6
6
|
SFA: "sfa"
|
|
7
7
|
};
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
}, MULTI_CHAIN_ADAPTERS);
|
|
11
|
-
const EVM_ADAPTERS = _objectSpread({
|
|
12
|
-
TORUS_EVM: "torus-evm",
|
|
8
|
+
const SOLANA_CONNECTORS = _objectSpread({}, MULTI_CHAIN_CONNECTORS);
|
|
9
|
+
const EVM_CONNECTORS = _objectSpread({
|
|
13
10
|
COINBASE: "coinbase"
|
|
14
|
-
},
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
[
|
|
18
|
-
[
|
|
19
|
-
[
|
|
20
|
-
[
|
|
21
|
-
[EVM_ADAPTERS.TORUS_EVM]: "Torus",
|
|
22
|
-
[EVM_ADAPTERS.COINBASE]: "Coinbase Smart Wallet"
|
|
11
|
+
}, MULTI_CHAIN_CONNECTORS);
|
|
12
|
+
const WALLET_CONNECTORS = _objectSpread(_objectSpread({}, EVM_CONNECTORS), SOLANA_CONNECTORS);
|
|
13
|
+
const CONNECTOR_NAMES = {
|
|
14
|
+
[MULTI_CHAIN_CONNECTORS.AUTH]: "Auth",
|
|
15
|
+
[MULTI_CHAIN_CONNECTORS.WALLET_CONNECT_V2]: "Wallet Connect v2",
|
|
16
|
+
[MULTI_CHAIN_CONNECTORS.SFA]: "SFA",
|
|
17
|
+
[EVM_CONNECTORS.COINBASE]: "Coinbase Smart Wallet"
|
|
23
18
|
};
|
|
24
19
|
|
|
25
|
-
export {
|
|
20
|
+
export { CONNECTOR_NAMES, EVM_CONNECTORS, MULTI_CHAIN_CONNECTORS, SOLANA_CONNECTORS, WALLET_CONNECTORS };
|