@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
|
@@ -1,183 +0,0 @@
|
|
|
1
|
-
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
-
import { isHexString } from '@ethereumjs/util';
|
|
3
|
-
import { providerErrors, JRPCEngine, providerFromEngine, rpcErrors } from '@web3auth/auth';
|
|
4
|
-
import { CHAIN_NAMESPACES } from '../../../../base/chain/IChainInterface.js';
|
|
5
|
-
import { WalletInitializationError } from '../../../../base/errors/index.js';
|
|
6
|
-
import { createEthMiddleware, createEthChainSwitchMiddleware, createEthAccountMiddleware } from '../../rpc/ethRpcMiddlewares.js';
|
|
7
|
-
import { createEthJsonRpcClient } from '../../rpc/jrpcClient.js';
|
|
8
|
-
import { getProviderHandlers } from './ethPrivatekeyUtils.js';
|
|
9
|
-
import { TransactionFormatter } from './TransactionFormatter/formatter.js';
|
|
10
|
-
import { BaseProvider } from '../../../base-provider/baseProvider.js';
|
|
11
|
-
|
|
12
|
-
var _EthereumPrivateKeyProvider;
|
|
13
|
-
class EthereumPrivateKeyProvider extends BaseProvider {
|
|
14
|
-
constructor({
|
|
15
|
-
config,
|
|
16
|
-
state
|
|
17
|
-
}) {
|
|
18
|
-
super({
|
|
19
|
-
config,
|
|
20
|
-
state
|
|
21
|
-
});
|
|
22
|
-
_defineProperty(this, "PROVIDER_CHAIN_NAMESPACE", CHAIN_NAMESPACES.EIP155);
|
|
23
|
-
}
|
|
24
|
-
async enable() {
|
|
25
|
-
if (!this.state.privateKey) throw providerErrors.custom({
|
|
26
|
-
message: "Private key is not found in state, plz pass it in constructor state param",
|
|
27
|
-
code: 4902
|
|
28
|
-
});
|
|
29
|
-
await this.setupProvider(this.state.privateKey);
|
|
30
|
-
return this._providerEngineProxy.request({
|
|
31
|
-
method: "eth_accounts"
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
async setupProvider(privKey) {
|
|
35
|
-
const {
|
|
36
|
-
chainNamespace
|
|
37
|
-
} = this.config.chainConfig;
|
|
38
|
-
if (chainNamespace !== this.PROVIDER_CHAIN_NAMESPACE) throw WalletInitializationError.incompatibleChainNameSpace("Invalid chain namespace");
|
|
39
|
-
const txFormatter = new TransactionFormatter({
|
|
40
|
-
getProviderEngineProxy: this.getProviderEngineProxy.bind(this)
|
|
41
|
-
});
|
|
42
|
-
const providerHandlers = getProviderHandlers({
|
|
43
|
-
txFormatter,
|
|
44
|
-
privKey,
|
|
45
|
-
getProviderEngineProxy: this.getProviderEngineProxy.bind(this),
|
|
46
|
-
keyExportEnabled: this.config.keyExportEnabled
|
|
47
|
-
});
|
|
48
|
-
const ethMiddleware = createEthMiddleware(providerHandlers);
|
|
49
|
-
const chainSwitchMiddleware = this.getChainSwitchMiddleware();
|
|
50
|
-
const engine = new JRPCEngine();
|
|
51
|
-
// Not a partial anymore because of checks in ctor
|
|
52
|
-
const {
|
|
53
|
-
networkMiddleware
|
|
54
|
-
} = createEthJsonRpcClient(this.config.chainConfig);
|
|
55
|
-
engine.push(ethMiddleware);
|
|
56
|
-
engine.push(chainSwitchMiddleware);
|
|
57
|
-
engine.push(this.getAccountMiddleware());
|
|
58
|
-
engine.push(networkMiddleware);
|
|
59
|
-
const provider = providerFromEngine(engine);
|
|
60
|
-
this.updateProviderEngineProxy(provider);
|
|
61
|
-
await txFormatter.init();
|
|
62
|
-
await this.lookupNetwork();
|
|
63
|
-
}
|
|
64
|
-
async updateAccount(params) {
|
|
65
|
-
if (!this._providerEngineProxy) throw providerErrors.custom({
|
|
66
|
-
message: "Provider is not initialized",
|
|
67
|
-
code: 4902
|
|
68
|
-
});
|
|
69
|
-
const existingKey = await this._providerEngineProxy.request({
|
|
70
|
-
method: "eth_private_key"
|
|
71
|
-
});
|
|
72
|
-
if (existingKey !== params.privateKey) {
|
|
73
|
-
await this.setupProvider(params.privateKey);
|
|
74
|
-
const accounts = await this._providerEngineProxy.request({
|
|
75
|
-
method: "eth_accounts"
|
|
76
|
-
});
|
|
77
|
-
this.emit("accountsChanged", accounts);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
async switchChain(params) {
|
|
81
|
-
if (!this._providerEngineProxy) throw providerErrors.custom({
|
|
82
|
-
message: "Provider is not initialized",
|
|
83
|
-
code: 4902
|
|
84
|
-
});
|
|
85
|
-
const chainConfig = this.getChainConfig(params.chainId);
|
|
86
|
-
this.update({
|
|
87
|
-
chainId: "loading"
|
|
88
|
-
});
|
|
89
|
-
this.configure({
|
|
90
|
-
chainConfig
|
|
91
|
-
});
|
|
92
|
-
const privKey = await this._providerEngineProxy.request({
|
|
93
|
-
method: "eth_private_key"
|
|
94
|
-
});
|
|
95
|
-
await this.setupProvider(privKey);
|
|
96
|
-
}
|
|
97
|
-
async lookupNetwork() {
|
|
98
|
-
if (!this._providerEngineProxy) throw providerErrors.custom({
|
|
99
|
-
message: "Provider is not initialized",
|
|
100
|
-
code: 4902
|
|
101
|
-
});
|
|
102
|
-
const {
|
|
103
|
-
chainId
|
|
104
|
-
} = this.config.chainConfig;
|
|
105
|
-
if (!chainId) throw rpcErrors.invalidParams("chainId is required while lookupNetwork");
|
|
106
|
-
const network = await this._providerEngineProxy.request({
|
|
107
|
-
method: "net_version",
|
|
108
|
-
params: []
|
|
109
|
-
});
|
|
110
|
-
const finalNetwork = isHexString(network) ? parseInt(network, 16) : parseInt(network, 10);
|
|
111
|
-
if (parseInt(chainId, 16) !== finalNetwork) throw providerErrors.chainDisconnected(`Invalid network, net_version is: ${network}`);
|
|
112
|
-
if (this.state.chainId !== chainId) {
|
|
113
|
-
this.emit("chainChanged", chainId);
|
|
114
|
-
this.emit("connect", {
|
|
115
|
-
chainId
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
this.update({
|
|
119
|
-
chainId
|
|
120
|
-
});
|
|
121
|
-
return network;
|
|
122
|
-
}
|
|
123
|
-
getChainSwitchMiddleware() {
|
|
124
|
-
const chainSwitchHandlers = {
|
|
125
|
-
addChain: async params => {
|
|
126
|
-
const {
|
|
127
|
-
chainId,
|
|
128
|
-
chainName,
|
|
129
|
-
rpcUrls,
|
|
130
|
-
blockExplorerUrls,
|
|
131
|
-
nativeCurrency,
|
|
132
|
-
iconUrls
|
|
133
|
-
} = params;
|
|
134
|
-
this.addChain({
|
|
135
|
-
chainNamespace: CHAIN_NAMESPACES.EIP155,
|
|
136
|
-
chainId,
|
|
137
|
-
ticker: (nativeCurrency === null || nativeCurrency === void 0 ? void 0 : nativeCurrency.symbol) || "ETH",
|
|
138
|
-
tickerName: (nativeCurrency === null || nativeCurrency === void 0 ? void 0 : nativeCurrency.name) || "Ether",
|
|
139
|
-
displayName: chainName,
|
|
140
|
-
rpcTarget: rpcUrls[0],
|
|
141
|
-
blockExplorerUrl: (blockExplorerUrls === null || blockExplorerUrls === void 0 ? void 0 : blockExplorerUrls[0]) || "",
|
|
142
|
-
decimals: (nativeCurrency === null || nativeCurrency === void 0 ? void 0 : nativeCurrency.decimals) || 18,
|
|
143
|
-
logo: (iconUrls === null || iconUrls === void 0 ? void 0 : iconUrls[0]) || "https://images.toruswallet.io/eth.svg"
|
|
144
|
-
});
|
|
145
|
-
},
|
|
146
|
-
switchChain: async params => {
|
|
147
|
-
const {
|
|
148
|
-
chainId
|
|
149
|
-
} = params;
|
|
150
|
-
await this.switchChain({
|
|
151
|
-
chainId
|
|
152
|
-
});
|
|
153
|
-
}
|
|
154
|
-
};
|
|
155
|
-
const chainSwitchMiddleware = createEthChainSwitchMiddleware(chainSwitchHandlers);
|
|
156
|
-
return chainSwitchMiddleware;
|
|
157
|
-
}
|
|
158
|
-
getAccountMiddleware() {
|
|
159
|
-
const accountHandlers = {
|
|
160
|
-
updatePrivatekey: async params => {
|
|
161
|
-
const {
|
|
162
|
-
privateKey
|
|
163
|
-
} = params;
|
|
164
|
-
await this.updateAccount({
|
|
165
|
-
privateKey
|
|
166
|
-
});
|
|
167
|
-
}
|
|
168
|
-
};
|
|
169
|
-
return createEthAccountMiddleware(accountHandlers);
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
_EthereumPrivateKeyProvider = EthereumPrivateKeyProvider;
|
|
173
|
-
_defineProperty(EthereumPrivateKeyProvider, "getProviderInstance", async params => {
|
|
174
|
-
const providerFactory = new _EthereumPrivateKeyProvider({
|
|
175
|
-
config: {
|
|
176
|
-
chainConfig: params.chainConfig
|
|
177
|
-
}
|
|
178
|
-
});
|
|
179
|
-
await providerFactory.setupProvider(params.privKey);
|
|
180
|
-
return providerFactory;
|
|
181
|
-
});
|
|
182
|
-
|
|
183
|
-
export { EthereumPrivateKeyProvider };
|
package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.js
DELETED
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
2
|
-
import { isHexString, stripHexPrefix, addHexPrefix, privateToAddress } from '@ethereumjs/util';
|
|
3
|
-
import { signMessage } from '@toruslabs/base-controllers';
|
|
4
|
-
import { getPublicCompressed } from '@toruslabs/eccrypto';
|
|
5
|
-
import { providerErrors } from '@web3auth/auth';
|
|
6
|
-
import { SigningKey, hashMessage } from 'ethers';
|
|
7
|
-
import { validateTypedData, hashTypedData } from 'viem';
|
|
8
|
-
import { log } from '../../../../base/loglevel.js';
|
|
9
|
-
import { validateTypedSignMessageDataV4 } from './TransactionFormatter/utils.js';
|
|
10
|
-
|
|
11
|
-
async function signTx(txParams, privKey, txFormatter) {
|
|
12
|
-
const finalTxParams = await txFormatter.formatTransaction(txParams);
|
|
13
|
-
const {
|
|
14
|
-
Transaction
|
|
15
|
-
} = await import('ethers');
|
|
16
|
-
const ethTx = Transaction.from(_objectSpread(_objectSpread({}, finalTxParams), {}, {
|
|
17
|
-
from: undefined // from is already calculated inside Transaction.from and is not allowed to be passed in
|
|
18
|
-
}));
|
|
19
|
-
const signKey = new SigningKey(addHexPrefix(privKey));
|
|
20
|
-
ethTx.signature = signKey.sign(ethTx.unsignedHash);
|
|
21
|
-
return ethTx.serialized;
|
|
22
|
-
}
|
|
23
|
-
function getProviderHandlers({
|
|
24
|
-
txFormatter,
|
|
25
|
-
privKey,
|
|
26
|
-
keyExportEnabled,
|
|
27
|
-
getProviderEngineProxy
|
|
28
|
-
}) {
|
|
29
|
-
return {
|
|
30
|
-
getAccounts: async _ => [`0x${Buffer.from(privateToAddress(Buffer.from(privKey, "hex"))).toString("hex")}`],
|
|
31
|
-
getPublicKey: async _ => {
|
|
32
|
-
const publicKey = getPublicCompressed(Buffer.from(stripHexPrefix(privKey), "hex"));
|
|
33
|
-
return `0x${Buffer.from(publicKey).toString("hex")}`;
|
|
34
|
-
},
|
|
35
|
-
getPrivateKey: async _ => {
|
|
36
|
-
if (!keyExportEnabled) throw providerErrors.custom({
|
|
37
|
-
message: "Private key export is disabled",
|
|
38
|
-
code: 4902
|
|
39
|
-
});
|
|
40
|
-
return privKey;
|
|
41
|
-
},
|
|
42
|
-
processTransaction: async (txParams, _) => {
|
|
43
|
-
const providerEngineProxy = getProviderEngineProxy();
|
|
44
|
-
if (!providerEngineProxy) throw providerErrors.custom({
|
|
45
|
-
message: "Provider is not initialized",
|
|
46
|
-
code: 4902
|
|
47
|
-
});
|
|
48
|
-
if (txParams.input && !txParams.data) txParams.data = addHexPrefix(txParams.input);
|
|
49
|
-
const serializedTx = await signTx(txParams, privKey, txFormatter);
|
|
50
|
-
const txHash = await providerEngineProxy.request({
|
|
51
|
-
method: "eth_sendRawTransaction",
|
|
52
|
-
params: [serializedTx]
|
|
53
|
-
});
|
|
54
|
-
return txHash;
|
|
55
|
-
},
|
|
56
|
-
processSignTransaction: async (txParams, _) => {
|
|
57
|
-
const providerEngineProxy = getProviderEngineProxy();
|
|
58
|
-
if (!providerEngineProxy) throw providerErrors.custom({
|
|
59
|
-
message: "Provider is not initialized",
|
|
60
|
-
code: 4902
|
|
61
|
-
});
|
|
62
|
-
if (txParams.input && !txParams.data) txParams.data = addHexPrefix(txParams.input);
|
|
63
|
-
const serializedTx = await signTx(txParams, privKey, txFormatter);
|
|
64
|
-
return serializedTx;
|
|
65
|
-
},
|
|
66
|
-
processEthSignMessage: async (msgParams, _) => {
|
|
67
|
-
const rawMessageSig = signMessage(privKey, msgParams.data);
|
|
68
|
-
return rawMessageSig;
|
|
69
|
-
},
|
|
70
|
-
processPersonalMessage: async (msgParams, _) => {
|
|
71
|
-
const privKeyBuffer = Buffer.from(privKey, "hex");
|
|
72
|
-
const ethersKey = new SigningKey(privKeyBuffer);
|
|
73
|
-
const {
|
|
74
|
-
data
|
|
75
|
-
} = msgParams;
|
|
76
|
-
// we need to check if the data is hex or not
|
|
77
|
-
// For historical reasons, you must submit the message to sign in hex-encoded UTF-8.
|
|
78
|
-
// https://docs.metamask.io/wallet/how-to/sign-data/#use-personal_sign
|
|
79
|
-
const message = isHexString(data) ? Buffer.from(stripHexPrefix(data), "hex") : Buffer.from(data);
|
|
80
|
-
const signature = ethersKey.sign(hashMessage(message));
|
|
81
|
-
return signature.serialized;
|
|
82
|
-
},
|
|
83
|
-
processTypedMessageV4: async (msgParams, _) => {
|
|
84
|
-
log.debug("processTypedMessageV4", msgParams);
|
|
85
|
-
const privKeyBuffer = Buffer.from(privKey, "hex");
|
|
86
|
-
const providerEngineProxy = getProviderEngineProxy();
|
|
87
|
-
if (!providerEngineProxy) throw providerErrors.custom({
|
|
88
|
-
message: "Provider is not initialized",
|
|
89
|
-
code: 4902
|
|
90
|
-
});
|
|
91
|
-
const chainId = await providerEngineProxy.request({
|
|
92
|
-
method: "eth_chainId"
|
|
93
|
-
});
|
|
94
|
-
await validateTypedSignMessageDataV4(msgParams, chainId);
|
|
95
|
-
const data = typeof msgParams.data === "string" ? JSON.parse(msgParams.data) : msgParams.data;
|
|
96
|
-
const ethersPrivateKey = new SigningKey(privKeyBuffer);
|
|
97
|
-
validateTypedData(data);
|
|
98
|
-
const signature = ethersPrivateKey.sign(hashTypedData(data)).serialized;
|
|
99
|
-
return signature;
|
|
100
|
-
}
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
export { getProviderHandlers };
|
package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.js
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { createAsyncMiddleware } from '@web3auth/auth';
|
|
2
|
-
|
|
3
|
-
function createInjectedProviderProxyMiddleware(provider) {
|
|
4
|
-
return createAsyncMiddleware(async (req, res, _next) => {
|
|
5
|
-
const result = await provider.request(req);
|
|
6
|
-
res.result = result;
|
|
7
|
-
});
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export { createInjectedProviderProxyMiddleware };
|
package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.js
DELETED
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { rpcErrors } from '@web3auth/auth';
|
|
2
|
-
|
|
3
|
-
const getTorusHandlers = injectedProvider => {
|
|
4
|
-
const providerHandlers = {
|
|
5
|
-
requestAccounts: async () => {
|
|
6
|
-
const accounts = await injectedProvider.request({
|
|
7
|
-
method: "solana_requestAccounts",
|
|
8
|
-
params: {}
|
|
9
|
-
});
|
|
10
|
-
return accounts;
|
|
11
|
-
},
|
|
12
|
-
getPublicKey: async () => {
|
|
13
|
-
const publicKeys = await injectedProvider.request({
|
|
14
|
-
method: "solana_requestAccounts",
|
|
15
|
-
params: {}
|
|
16
|
-
});
|
|
17
|
-
return publicKeys[0];
|
|
18
|
-
},
|
|
19
|
-
getAccounts: async () => {
|
|
20
|
-
const accounts = await injectedProvider.request({
|
|
21
|
-
method: "solana_requestAccounts",
|
|
22
|
-
params: {}
|
|
23
|
-
});
|
|
24
|
-
return accounts;
|
|
25
|
-
},
|
|
26
|
-
getPrivateKey: async () => {
|
|
27
|
-
throw rpcErrors.methodNotSupported();
|
|
28
|
-
},
|
|
29
|
-
getSecretKey: async () => {
|
|
30
|
-
throw rpcErrors.methodNotSupported();
|
|
31
|
-
},
|
|
32
|
-
signMessage: async req => {
|
|
33
|
-
var _req$params;
|
|
34
|
-
if (!((_req$params = req.params) !== null && _req$params !== void 0 && _req$params.message)) {
|
|
35
|
-
throw rpcErrors.invalidParams("message");
|
|
36
|
-
}
|
|
37
|
-
const message = await injectedProvider.signMessage(req.params.message);
|
|
38
|
-
return message;
|
|
39
|
-
},
|
|
40
|
-
signTransaction: async req => {
|
|
41
|
-
var _req$params2;
|
|
42
|
-
if (!((_req$params2 = req.params) !== null && _req$params2 !== void 0 && _req$params2.message)) {
|
|
43
|
-
throw rpcErrors.invalidParams("message");
|
|
44
|
-
}
|
|
45
|
-
const txMessage = req.params.message;
|
|
46
|
-
const response = await injectedProvider.signTransaction(txMessage);
|
|
47
|
-
return response;
|
|
48
|
-
},
|
|
49
|
-
signAndSendTransaction: async req => {
|
|
50
|
-
var _req$params3;
|
|
51
|
-
if (!((_req$params3 = req.params) !== null && _req$params3 !== void 0 && _req$params3.message)) {
|
|
52
|
-
throw rpcErrors.invalidParams("message");
|
|
53
|
-
}
|
|
54
|
-
const txMessage = req.params.message;
|
|
55
|
-
const response = await injectedProvider.sendTransaction(txMessage);
|
|
56
|
-
return {
|
|
57
|
-
signature: response
|
|
58
|
-
};
|
|
59
|
-
},
|
|
60
|
-
signAllTransactions: async req => {
|
|
61
|
-
var _req$params4, _req$params5;
|
|
62
|
-
if (!((_req$params4 = req.params) !== null && _req$params4 !== void 0 && _req$params4.message) || !((_req$params5 = req.params) !== null && _req$params5 !== void 0 && _req$params5.message.length)) {
|
|
63
|
-
throw rpcErrors.invalidParams("message");
|
|
64
|
-
}
|
|
65
|
-
const transactions = req.params.message;
|
|
66
|
-
const response = await injectedProvider.signAllTransactions(transactions);
|
|
67
|
-
return response;
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
return providerHandlers;
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
export { getTorusHandlers };
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
2
|
-
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
3
|
-
import { providerErrors, JRPCEngine, providerFromEngine } from '@web3auth/auth';
|
|
4
|
-
import { WalletInitializationError } from '../../../../../base/errors/index.js';
|
|
5
|
-
import { isHexStrict } from '../../../../../base/utils.js';
|
|
6
|
-
import { createSolanaMiddleware } from '../../../rpc/solanaRpcMiddlewares.js';
|
|
7
|
-
import { createInjectedProviderProxyMiddleware } from '../injectedProviderProxy.js';
|
|
8
|
-
import { getTorusHandlers } from './providerHandlers.js';
|
|
9
|
-
import { BaseProvider } from '../../../../base-provider/baseProvider.js';
|
|
10
|
-
|
|
11
|
-
class TorusInjectedProvider extends BaseProvider {
|
|
12
|
-
constructor({
|
|
13
|
-
config,
|
|
14
|
-
state
|
|
15
|
-
}) {
|
|
16
|
-
super({
|
|
17
|
-
config,
|
|
18
|
-
state
|
|
19
|
-
});
|
|
20
|
-
_defineProperty(this, "PROVIDER_CHAIN_NAMESPACE", "solana");
|
|
21
|
-
}
|
|
22
|
-
async switchChain(params) {
|
|
23
|
-
// overrides the base provider implementation
|
|
24
|
-
await this.provider.request({
|
|
25
|
-
method: "switchSolanaChain",
|
|
26
|
-
params: [{
|
|
27
|
-
chainId: params.chainId
|
|
28
|
-
}]
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
async addChain(chainConfig) {
|
|
32
|
-
super.addChain(chainConfig);
|
|
33
|
-
await this.provider.request({
|
|
34
|
-
method: "addNewChainConfig",
|
|
35
|
-
params: [{
|
|
36
|
-
chainId: chainConfig.chainId,
|
|
37
|
-
chainName: chainConfig.displayName,
|
|
38
|
-
rpcUrls: [chainConfig.rpcTarget],
|
|
39
|
-
blockExplorerUrls: [chainConfig.blockExplorerUrl],
|
|
40
|
-
iconUrls: [chainConfig.logo],
|
|
41
|
-
nativeCurrency: {
|
|
42
|
-
name: chainConfig.tickerName,
|
|
43
|
-
symbol: chainConfig.ticker,
|
|
44
|
-
decimals: chainConfig.decimals || 18
|
|
45
|
-
}
|
|
46
|
-
}]
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
async setupProvider(injectedProvider) {
|
|
50
|
-
this.handleInjectedProviderUpdate(injectedProvider);
|
|
51
|
-
const {
|
|
52
|
-
chainNamespace
|
|
53
|
-
} = this.config.chainConfig;
|
|
54
|
-
if (chainNamespace !== this.PROVIDER_CHAIN_NAMESPACE) throw WalletInitializationError.incompatibleChainNameSpace("Invalid chain namespace");
|
|
55
|
-
await this.setupEngine(injectedProvider);
|
|
56
|
-
}
|
|
57
|
-
async lookupNetwork() {
|
|
58
|
-
if (!this.provider) throw providerErrors.custom({
|
|
59
|
-
message: "Torus solana provider is not initialized",
|
|
60
|
-
code: 4902
|
|
61
|
-
});
|
|
62
|
-
const {
|
|
63
|
-
chainId
|
|
64
|
-
} = this.config.chainConfig;
|
|
65
|
-
const connectedChainId = await this.provider.request({
|
|
66
|
-
method: "solana_chainId"
|
|
67
|
-
});
|
|
68
|
-
const connectedHexChainId = isHexStrict(connectedChainId.toString()) ? connectedChainId : `0x${parseInt(connectedChainId, 10).toString(16)}`;
|
|
69
|
-
if (chainId !== connectedHexChainId) throw WalletInitializationError.rpcConnectionError(`Invalid network, net_version is: ${connectedHexChainId}, expected: ${chainId}`);
|
|
70
|
-
this.update({
|
|
71
|
-
chainId: connectedHexChainId
|
|
72
|
-
});
|
|
73
|
-
this.emit("connect", {
|
|
74
|
-
chainId: this.state.chainId
|
|
75
|
-
});
|
|
76
|
-
this.emit("chainChanged", this.state.chainId);
|
|
77
|
-
return this.state.chainId;
|
|
78
|
-
}
|
|
79
|
-
async setupEngine(injectedProvider) {
|
|
80
|
-
const providerHandlers = getTorusHandlers(injectedProvider);
|
|
81
|
-
const solanaMiddleware = createSolanaMiddleware(providerHandlers);
|
|
82
|
-
const injectedProviderProxy = createInjectedProviderProxyMiddleware(injectedProvider);
|
|
83
|
-
const engine = new JRPCEngine();
|
|
84
|
-
engine.push(solanaMiddleware);
|
|
85
|
-
engine.push(injectedProviderProxy);
|
|
86
|
-
const provider = providerFromEngine(engine);
|
|
87
|
-
this.updateProviderEngineProxy(provider);
|
|
88
|
-
await this.lookupNetwork();
|
|
89
|
-
}
|
|
90
|
-
async handleInjectedProviderUpdate(injectedProvider) {
|
|
91
|
-
injectedProvider.on("accountsChanged", async accounts => {
|
|
92
|
-
this.emit("accountsChanged", accounts);
|
|
93
|
-
});
|
|
94
|
-
injectedProvider.on("chainChanged", async chainId => {
|
|
95
|
-
const connectedHexChainId = isHexStrict(chainId) ? chainId : `0x${parseInt(chainId, 10).toString(16)}`;
|
|
96
|
-
// Check if chainId changed and trigger event
|
|
97
|
-
this.configure({
|
|
98
|
-
chainConfig: _objectSpread(_objectSpread({}, this.config.chainConfig), {}, {
|
|
99
|
-
chainId: connectedHexChainId
|
|
100
|
-
})
|
|
101
|
-
});
|
|
102
|
-
await this.setupProvider(injectedProvider);
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
export { TorusInjectedProvider };
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { Auth, AuthOptions, LoginParams } from "@web3auth/auth";
|
|
2
|
-
import { ADAPTER_CATEGORY_TYPE, ADAPTER_STATUS_TYPE, AdapterInitOptions, AdapterNamespaceType, BaseAdapter, BaseAdapterSettings, ChainNamespaceType, CustomChainConfig, IProvider, UserInfo } from "../../base";
|
|
3
|
-
import type { AuthAdapterOptions, PrivateKeyProvider } from "./interface";
|
|
4
|
-
export type AuthLoginParams = LoginParams & {
|
|
5
|
-
login_hint?: string;
|
|
6
|
-
};
|
|
7
|
-
export declare class AuthAdapter extends BaseAdapter<AuthLoginParams> {
|
|
8
|
-
readonly name: string;
|
|
9
|
-
readonly adapterNamespace: AdapterNamespaceType;
|
|
10
|
-
readonly type: ADAPTER_CATEGORY_TYPE;
|
|
11
|
-
authInstance: Auth | null;
|
|
12
|
-
status: ADAPTER_STATUS_TYPE;
|
|
13
|
-
currentChainNamespace: ChainNamespaceType;
|
|
14
|
-
privateKeyProvider: PrivateKeyProvider | null;
|
|
15
|
-
private authOptions;
|
|
16
|
-
private loginSettings;
|
|
17
|
-
constructor(params?: AuthAdapterOptions);
|
|
18
|
-
get chainConfigProxy(): CustomChainConfig | null;
|
|
19
|
-
get provider(): IProvider | null;
|
|
20
|
-
set provider(_: IProvider | null);
|
|
21
|
-
init(options: AdapterInitOptions): Promise<void>;
|
|
22
|
-
connect(params?: AuthLoginParams): Promise<IProvider | null>;
|
|
23
|
-
enableMFA(params?: AuthLoginParams): Promise<void>;
|
|
24
|
-
manageMFA(params?: AuthLoginParams): Promise<void>;
|
|
25
|
-
disconnect(options?: {
|
|
26
|
-
cleanup: boolean;
|
|
27
|
-
}): Promise<void>;
|
|
28
|
-
authenticateUser(): Promise<{
|
|
29
|
-
idToken: string;
|
|
30
|
-
}>;
|
|
31
|
-
getUserInfo(): Promise<Partial<UserInfo>>;
|
|
32
|
-
setAdapterSettings(adapterSettings: Partial<AuthOptions & BaseAdapterSettings> & {
|
|
33
|
-
privateKeyProvider?: PrivateKeyProvider;
|
|
34
|
-
}): void;
|
|
35
|
-
addChain(chainConfig: CustomChainConfig, init?: boolean): Promise<void>;
|
|
36
|
-
switchChain(params: {
|
|
37
|
-
chainId: string;
|
|
38
|
-
}, init?: boolean): Promise<void>;
|
|
39
|
-
private _getFinalPrivKey;
|
|
40
|
-
private _getFinalEd25519PrivKey;
|
|
41
|
-
private connectWithProvider;
|
|
42
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { AuthOptions, BaseRedirectParams, LoginParams } from "@web3auth/auth";
|
|
2
|
-
import { BaseAdapterSettings, IBaseProvider } from "../../base";
|
|
3
|
-
export type LoginSettings = Partial<LoginParams> & Partial<BaseRedirectParams>;
|
|
4
|
-
type MakeOptional<Type, Key extends keyof Type> = Omit<Type, Key> & Partial<Pick<Type, Key>>;
|
|
5
|
-
export type PrivateKeyProvider = IBaseProvider<string>;
|
|
6
|
-
export interface AuthAdapterOptions extends BaseAdapterSettings {
|
|
7
|
-
adapterSettings?: MakeOptional<AuthOptions, "clientId" | "network">;
|
|
8
|
-
loginSettings?: LoginSettings;
|
|
9
|
-
privateKeyProvider?: PrivateKeyProvider;
|
|
10
|
-
}
|
|
11
|
-
export { type AuthOptions, type AuthUserInfo, LOGIN_PROVIDER, type LoginConfig, type LoginParams } from "@web3auth/auth";
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { AdapterInitOptions, BaseAdapter, UserAuthInfo } from "../../base";
|
|
2
|
-
export declare abstract class BaseEvmAdapter<T> extends BaseAdapter<T> {
|
|
3
|
-
init(_?: AdapterInitOptions): Promise<void>;
|
|
4
|
-
authenticateUser(): Promise<UserAuthInfo>;
|
|
5
|
-
disconnectSession(): Promise<void>;
|
|
6
|
-
disconnect(): Promise<void>;
|
|
7
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./baseEvmAdapter";
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { AdapterInitOptions, BaseAdapter, UserAuthInfo } from "../../base";
|
|
2
|
-
export declare abstract class BaseSolanaAdapter<T> extends BaseAdapter<T> {
|
|
3
|
-
init(_?: AdapterInitOptions): Promise<void>;
|
|
4
|
-
authenticateUser(): Promise<UserAuthInfo>;
|
|
5
|
-
disconnectSession(): Promise<void>;
|
|
6
|
-
disconnect(): Promise<void>;
|
|
7
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./baseSolanaAdapter";
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { AppMetadata, Preference } from "@coinbase/wallet-sdk";
|
|
2
|
-
import { ADAPTER_CATEGORY_TYPE, ADAPTER_STATUS_TYPE, AdapterInitOptions, AdapterNamespaceType, BaseAdapterSettings, ChainNamespaceType, CustomChainConfig, IProvider, UserInfo } from "../../base";
|
|
3
|
-
import { BaseEvmAdapter } from "../base-evm-adapter";
|
|
4
|
-
export type CoinbaseWalletSDKOptions = Partial<AppMetadata & Preference>;
|
|
5
|
-
export interface CoinbaseAdapterOptions extends BaseAdapterSettings {
|
|
6
|
-
adapterSettings?: CoinbaseWalletSDKOptions;
|
|
7
|
-
}
|
|
8
|
-
declare class CoinbaseAdapter extends BaseEvmAdapter<void> {
|
|
9
|
-
readonly adapterNamespace: AdapterNamespaceType;
|
|
10
|
-
readonly currentChainNamespace: ChainNamespaceType;
|
|
11
|
-
readonly type: ADAPTER_CATEGORY_TYPE;
|
|
12
|
-
readonly name: string;
|
|
13
|
-
status: ADAPTER_STATUS_TYPE;
|
|
14
|
-
private coinbaseProvider;
|
|
15
|
-
private coinbaseOptions;
|
|
16
|
-
constructor(adapterOptions?: CoinbaseAdapterOptions);
|
|
17
|
-
get provider(): IProvider | null;
|
|
18
|
-
set provider(_: IProvider | null);
|
|
19
|
-
setAdapterSettings(options: CoinbaseAdapterOptions): void;
|
|
20
|
-
init(options?: AdapterInitOptions): Promise<void>;
|
|
21
|
-
connect(): Promise<IProvider | null>;
|
|
22
|
-
disconnect(options?: {
|
|
23
|
-
cleanup: boolean;
|
|
24
|
-
}): Promise<void>;
|
|
25
|
-
getUserInfo(): Promise<Partial<UserInfo>>;
|
|
26
|
-
addChain(chainConfig: CustomChainConfig, init?: boolean): Promise<void>;
|
|
27
|
-
switchChain(params: {
|
|
28
|
-
chainId: string;
|
|
29
|
-
}, init?: boolean): Promise<void>;
|
|
30
|
-
enableMFA(): Promise<void>;
|
|
31
|
-
manageMFA(): Promise<void>;
|
|
32
|
-
}
|
|
33
|
-
export { CoinbaseAdapter };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./coinbaseAdapter";
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { IAdapter, IWeb3AuthCoreOptions } from "../../base";
|
|
2
|
-
import { getEvmInjectedAdapters } from "./injectedAdapters";
|
|
3
|
-
export declare const getEvmDefaultExternalAdapters: (params: {
|
|
4
|
-
options: IWeb3AuthCoreOptions;
|
|
5
|
-
}) => IAdapter<unknown>[];
|
|
6
|
-
export { getEvmInjectedAdapters };
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { ADAPTER_CATEGORY_TYPE, ADAPTER_STATUS_TYPE, AdapterInitOptions, AdapterNamespaceType, BaseAdapterSettings, ChainNamespaceType, CustomChainConfig, IProvider, UserInfo } from "../../base";
|
|
2
|
-
import { BaseEvmAdapter } from "../base-evm-adapter";
|
|
3
|
-
declare class InjectedEvmAdapter extends BaseEvmAdapter<void> {
|
|
4
|
-
readonly adapterNamespace: AdapterNamespaceType;
|
|
5
|
-
readonly currentChainNamespace: ChainNamespaceType;
|
|
6
|
-
readonly type: ADAPTER_CATEGORY_TYPE;
|
|
7
|
-
readonly name: string;
|
|
8
|
-
readonly isInjected = true;
|
|
9
|
-
status: ADAPTER_STATUS_TYPE;
|
|
10
|
-
private injectedProvider;
|
|
11
|
-
constructor(options: BaseAdapterSettings & {
|
|
12
|
-
name: string;
|
|
13
|
-
provider: IProvider;
|
|
14
|
-
});
|
|
15
|
-
get provider(): IProvider | null;
|
|
16
|
-
set provider(_: IProvider | null);
|
|
17
|
-
init(options?: AdapterInitOptions): Promise<void>;
|
|
18
|
-
connect(): Promise<IProvider | null>;
|
|
19
|
-
disconnect(options?: {
|
|
20
|
-
cleanup: boolean;
|
|
21
|
-
}): Promise<void>;
|
|
22
|
-
getUserInfo(): Promise<Partial<UserInfo>>;
|
|
23
|
-
addChain(chainConfig: CustomChainConfig, init?: boolean): Promise<void>;
|
|
24
|
-
switchChain(params: {
|
|
25
|
-
chainId: string;
|
|
26
|
-
}, init?: boolean): Promise<void>;
|
|
27
|
-
enableMFA(): Promise<void>;
|
|
28
|
-
manageMFA(): Promise<void>;
|
|
29
|
-
}
|
|
30
|
-
export { InjectedEvmAdapter };
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { IAdapter, IWeb3AuthCoreOptions } from "../../base";
|
|
2
|
-
import { getSolanaInjectedAdapters } from "./injectedAdapters";
|
|
3
|
-
export declare const getSolanaDefaultExternalAdapters: (params: {
|
|
4
|
-
options: IWeb3AuthCoreOptions;
|
|
5
|
-
}) => IAdapter<unknown>[];
|
|
6
|
-
export { getSolanaInjectedAdapters };
|