@web3auth/no-modal 9.6.0 → 10.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/757.noModal.cjs.js +226 -0
- package/dist/lib.cjs/adapters/auth-adapter/authAdapter.js +262 -0
- package/dist/lib.cjs/adapters/auth-adapter/config.js +17 -0
- package/dist/lib.cjs/adapters/base-evm-adapter/baseEvmAdapter.js +72 -0
- package/dist/lib.cjs/adapters/base-solana-adapter/baseSolanaAdapter.js +76 -0
- package/dist/lib.cjs/adapters/coinbase-adapter/coinbaseAdapter.js +156 -0
- package/dist/lib.cjs/adapters/default-evm-adapter/index.js +40 -0
- package/dist/lib.cjs/adapters/default-evm-adapter/injectedAdapters.js +42 -0
- package/dist/lib.cjs/adapters/default-evm-adapter/injectedEvmAdapter.js +160 -0
- package/dist/lib.cjs/adapters/default-solana-adapter/index.js +40 -0
- package/dist/lib.cjs/adapters/default-solana-adapter/injectedAdapters.js +53 -0
- package/dist/lib.cjs/adapters/default-solana-adapter/utils.js +16 -0
- package/dist/lib.cjs/adapters/default-solana-adapter/walletStandardAdapter.js +138 -0
- package/dist/lib.cjs/adapters/default-solana-adapter/walletStandardHandler.js +77 -0
- package/dist/lib.cjs/adapters/wallet-connect-v2-adapter/WalletConnectV2Provider.js +278 -0
- package/dist/lib.cjs/adapters/wallet-connect-v2-adapter/config.js +183 -0
- package/dist/lib.cjs/adapters/wallet-connect-v2-adapter/walletConnectV2Utils.js +165 -0
- package/dist/lib.cjs/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.js +376 -0
- package/dist/lib.cjs/base/adapter/baseAdapter.js +117 -0
- package/dist/lib.cjs/base/adapter/constants.js +24 -0
- package/dist/lib.cjs/base/adapter/utils.js +66 -0
- package/dist/lib.cjs/base/chain/IChainInterface.js +22 -0
- package/dist/lib.cjs/base/chain/config.js +281 -0
- package/dist/lib.cjs/base/composables/index.js +5 -0
- package/dist/lib.cjs/base/errors/index.js +244 -0
- package/dist/lib.cjs/base/loglevel.js +7 -0
- package/dist/lib.cjs/base/plugin/IPlugin.js +31 -0
- package/dist/lib.cjs/base/plugin/errors.js +107 -0
- package/dist/lib.cjs/base/provider/IProvider.js +8 -0
- package/dist/lib.cjs/base/utils.js +56 -0
- package/dist/lib.cjs/base/wallet/index.js +31 -0
- package/dist/lib.cjs/index.js +200 -0
- package/dist/lib.cjs/noModal.js +98 -90
- package/dist/lib.cjs/plugins/nft-checkout-plugin/embed.js +134 -0
- package/dist/lib.cjs/plugins/nft-checkout-plugin/enums.js +24 -0
- package/dist/lib.cjs/plugins/nft-checkout-plugin/plugin.js +71 -0
- package/dist/lib.cjs/plugins/nft-checkout-plugin/utils.js +18 -0
- package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +285 -0
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +164 -0
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.js +29 -0
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.js +22 -0
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.js +30 -0
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.js +30 -0
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.js +29 -0
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/constants.js +11 -0
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/utils.js +134 -0
- package/dist/lib.cjs/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +174 -0
- package/dist/lib.cjs/providers/base-provider/CommonJRPCProvider.js +79 -0
- package/dist/lib.cjs/providers/base-provider/baseProvider.js +127 -0
- package/dist/lib.cjs/providers/base-provider/commonPrivateKeyProvider.js +89 -0
- package/dist/lib.cjs/providers/base-provider/jrpcClient.js +41 -0
- package/dist/lib.cjs/providers/base-provider/utils.js +12 -0
- package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +199 -0
- package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +165 -0
- package/dist/lib.cjs/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +22 -0
- package/dist/lib.cjs/providers/ethereum-provider/providers/converter.js +89 -0
- package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.js +185 -0
- package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.js +27 -0
- package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +380 -0
- package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +10 -0
- package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +94 -0
- package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.js +106 -0
- package/dist/lib.cjs/providers/ethereum-provider/providers/utils.js +29 -0
- package/dist/lib.cjs/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +75 -0
- package/dist/lib.cjs/providers/ethereum-provider/rpc/jrpcClient.js +41 -0
- package/dist/lib.cjs/providers/ethereum-provider/rpc/walletMidddleware.js +179 -0
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +51 -0
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +47 -0
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.js +12 -0
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.js +75 -0
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.js +109 -0
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +12 -0
- package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +180 -0
- package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +103 -0
- package/dist/lib.cjs/providers/solana-provider/rpc/JrpcClient.js +47 -0
- package/dist/lib.cjs/providers/solana-provider/rpc/solanaRpcMiddlewares.js +97 -0
- package/dist/lib.cjs/providers/solana-provider/solanaWallet.js +62 -0
- package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +158 -0
- package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.js +89 -0
- package/dist/lib.cjs/providers/xrpl-provider/rpc/JrpcClient.js +48 -0
- package/dist/lib.cjs/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +73 -0
- package/dist/lib.cjs/react/index.js +16 -0
- package/dist/lib.cjs/react/no-modal/Web3AuthInnerContext.js +216 -0
- package/dist/lib.cjs/react/no-modal/Web3AuthProvider.js +15 -0
- package/dist/lib.cjs/react/no-modal/hooks/useWeb3Auth.js +15 -0
- package/dist/lib.cjs/react/wallet-services-plugin/WalletServicesContext.js +86 -0
- package/dist/lib.cjs/react/wallet-services-plugin/WalletServicesProvider.js +16 -0
- package/dist/lib.cjs/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +15 -0
- package/dist/lib.cjs/vue/index.js +15 -0
- package/dist/lib.cjs/vue/no-modal/Web3AuthProvider.js +222 -0
- package/dist/lib.cjs/vue/no-modal/composables/useWeb3Auth.js +13 -0
- package/dist/lib.cjs/vue/wallet-services-plugin/WalletServicesProvider.js +86 -0
- package/dist/lib.cjs/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +13 -0
- package/dist/lib.cjs/vue/wallet-services-plugin/context.js +5 -0
- package/dist/lib.esm/adapters/auth-adapter/authAdapter.js +260 -0
- package/dist/lib.esm/adapters/auth-adapter/config.js +15 -0
- package/dist/lib.esm/adapters/base-evm-adapter/baseEvmAdapter.js +70 -0
- package/dist/lib.esm/adapters/base-solana-adapter/baseSolanaAdapter.js +74 -0
- package/dist/lib.esm/adapters/coinbase-adapter/coinbaseAdapter.js +154 -0
- package/dist/lib.esm/adapters/default-evm-adapter/index.js +37 -0
- package/dist/lib.esm/adapters/default-evm-adapter/injectedAdapters.js +40 -0
- package/dist/lib.esm/adapters/default-evm-adapter/injectedEvmAdapter.js +158 -0
- package/dist/lib.esm/adapters/default-solana-adapter/index.js +37 -0
- package/dist/lib.esm/adapters/default-solana-adapter/injectedAdapters.js +51 -0
- package/dist/lib.esm/adapters/default-solana-adapter/utils.js +14 -0
- package/dist/lib.esm/adapters/default-solana-adapter/walletStandardAdapter.js +136 -0
- package/dist/lib.esm/adapters/default-solana-adapter/walletStandardHandler.js +75 -0
- package/dist/lib.esm/adapters/wallet-connect-v2-adapter/WalletConnectV2Provider.js +276 -0
- package/dist/lib.esm/adapters/wallet-connect-v2-adapter/config.js +172 -0
- package/dist/lib.esm/adapters/wallet-connect-v2-adapter/walletConnectV2Utils.js +158 -0
- package/dist/lib.esm/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.js +374 -0
- package/dist/lib.esm/base/adapter/baseAdapter.js +115 -0
- package/dist/lib.esm/base/adapter/constants.js +20 -0
- package/dist/lib.esm/base/adapter/utils.js +60 -0
- package/dist/lib.esm/base/chain/IChainInterface.js +19 -0
- package/dist/lib.esm/base/chain/config.js +276 -0
- package/dist/lib.esm/base/composables/index.js +3 -0
- package/dist/lib.esm/base/errors/index.js +237 -0
- package/dist/lib.esm/base/loglevel.js +5 -0
- package/dist/lib.esm/base/plugin/IPlugin.js +24 -0
- package/dist/lib.esm/base/plugin/errors.js +104 -0
- package/dist/lib.esm/base/provider/IProvider.js +6 -0
- package/dist/lib.esm/base/utils.js +46 -0
- package/dist/lib.esm/base/wallet/index.js +25 -0
- package/dist/lib.esm/index.js +58 -0
- package/dist/lib.esm/noModal.js +12 -4
- package/dist/lib.esm/plugins/nft-checkout-plugin/embed.js +132 -0
- package/dist/lib.esm/plugins/nft-checkout-plugin/enums.js +20 -0
- package/dist/lib.esm/plugins/nft-checkout-plugin/plugin.js +69 -0
- package/dist/lib.esm/plugins/nft-checkout-plugin/utils.js +15 -0
- package/dist/lib.esm/plugins/wallet-services-plugin/plugin.js +276 -0
- package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +162 -0
- package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.js +27 -0
- package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.js +20 -0
- package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.js +28 -0
- package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.js +28 -0
- package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.js +27 -0
- package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/constants.js +9 -0
- package/dist/lib.esm/providers/account-abstraction-provider/providers/utils.js +132 -0
- package/dist/lib.esm/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +171 -0
- package/dist/lib.esm/providers/base-provider/CommonJRPCProvider.js +77 -0
- package/dist/lib.esm/providers/base-provider/baseProvider.js +125 -0
- package/dist/lib.esm/providers/base-provider/commonPrivateKeyProvider.js +87 -0
- package/dist/lib.esm/providers/base-provider/jrpcClient.js +37 -0
- package/dist/lib.esm/providers/base-provider/utils.js +6 -0
- package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +197 -0
- package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +163 -0
- package/dist/lib.esm/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +20 -0
- package/dist/lib.esm/providers/ethereum-provider/providers/converter.js +85 -0
- package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.js +183 -0
- package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.js +21 -0
- package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +378 -0
- package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +8 -0
- package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +88 -0
- package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.js +104 -0
- package/dist/lib.esm/providers/ethereum-provider/providers/utils.js +24 -0
- package/dist/lib.esm/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +71 -0
- package/dist/lib.esm/providers/ethereum-provider/rpc/jrpcClient.js +37 -0
- package/dist/lib.esm/providers/ethereum-provider/rpc/walletMidddleware.js +177 -0
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +49 -0
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +45 -0
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.js +10 -0
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.js +73 -0
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.js +107 -0
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +10 -0
- package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +178 -0
- package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +101 -0
- package/dist/lib.esm/providers/solana-provider/rpc/JrpcClient.js +42 -0
- package/dist/lib.esm/providers/solana-provider/rpc/solanaRpcMiddlewares.js +89 -0
- package/dist/lib.esm/providers/solana-provider/solanaWallet.js +60 -0
- package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +156 -0
- package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.js +87 -0
- package/dist/lib.esm/providers/xrpl-provider/rpc/JrpcClient.js +43 -0
- package/dist/lib.esm/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +67 -0
- package/dist/lib.esm/react/index.js +5 -0
- package/dist/lib.esm/react/no-modal/Web3AuthInnerContext.js +213 -0
- package/dist/lib.esm/react/no-modal/Web3AuthProvider.js +13 -0
- package/dist/lib.esm/react/no-modal/hooks/useWeb3Auth.js +13 -0
- package/dist/lib.esm/react/wallet-services-plugin/WalletServicesContext.js +83 -0
- package/dist/lib.esm/react/wallet-services-plugin/WalletServicesProvider.js +14 -0
- package/dist/lib.esm/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +13 -0
- package/dist/lib.esm/vue/index.js +5 -0
- package/dist/lib.esm/vue/no-modal/Web3AuthProvider.js +220 -0
- package/dist/lib.esm/vue/no-modal/composables/useWeb3Auth.js +11 -0
- package/dist/lib.esm/vue/wallet-services-plugin/WalletServicesProvider.js +84 -0
- package/dist/lib.esm/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +11 -0
- package/dist/lib.esm/vue/wallet-services-plugin/context.js +3 -0
- package/dist/noModal.cjs.js +26314 -364
- package/dist/noModal.umd.min.js +1 -1
- package/dist/noModal.umd.min.js.LICENSE.txt +54 -0
- package/dist/types/adapters/auth-adapter/authAdapter.d.ts +42 -0
- package/dist/types/adapters/auth-adapter/config.d.ts +2 -0
- package/dist/types/adapters/auth-adapter/index.d.ts +3 -0
- package/dist/types/adapters/auth-adapter/interface.d.ts +11 -0
- package/dist/types/adapters/base-evm-adapter/baseEvmAdapter.d.ts +7 -0
- package/dist/types/adapters/base-evm-adapter/index.d.ts +1 -0
- package/dist/types/adapters/base-solana-adapter/baseSolanaAdapter.d.ts +7 -0
- package/dist/types/adapters/base-solana-adapter/index.d.ts +1 -0
- package/dist/types/adapters/coinbase-adapter/coinbaseAdapter.d.ts +33 -0
- package/dist/types/adapters/coinbase-adapter/index.d.ts +1 -0
- package/dist/types/adapters/default-evm-adapter/index.d.ts +6 -0
- package/dist/types/adapters/default-evm-adapter/injectedAdapters.d.ts +4 -0
- package/dist/types/adapters/default-evm-adapter/injectedEvmAdapter.d.ts +30 -0
- package/dist/types/adapters/default-solana-adapter/index.d.ts +6 -0
- package/dist/types/adapters/default-solana-adapter/injectedAdapters.d.ts +4 -0
- package/dist/types/adapters/default-solana-adapter/utils.d.ts +3 -0
- package/dist/types/adapters/default-solana-adapter/walletStandardAdapter.d.ts +31 -0
- package/dist/types/adapters/default-solana-adapter/walletStandardHandler.d.ts +27 -0
- package/dist/types/adapters/index.d.ts +7 -0
- package/dist/types/adapters/wallet-connect-v2-adapter/WalletConnectV2Provider.d.ts +36 -0
- package/dist/types/adapters/wallet-connect-v2-adapter/config.d.ts +35 -0
- package/dist/types/adapters/wallet-connect-v2-adapter/index.d.ts +4 -0
- package/dist/types/adapters/wallet-connect-v2-adapter/interface.d.ts +18 -0
- package/dist/types/adapters/wallet-connect-v2-adapter/utils.d.ts +3 -0
- package/dist/types/adapters/wallet-connect-v2-adapter/walletConnectV2Utils.d.ts +23 -0
- package/dist/types/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.d.ts +42 -0
- package/dist/types/base/adapter/baseAdapter.d.ts +44 -0
- package/dist/types/base/adapter/constants.d.ts +22 -0
- package/dist/types/base/adapter/index.d.ts +4 -0
- package/dist/types/base/adapter/interfaces.d.ts +143 -0
- package/dist/types/base/adapter/utils.d.ts +5 -0
- package/dist/types/base/chain/IChainInterface.d.ts +59 -0
- package/dist/types/base/chain/config.d.ts +5 -0
- package/dist/types/base/composables/index.d.ts +1 -0
- package/dist/types/base/core/IWeb3Auth.d.ts +101 -0
- package/dist/types/base/errors/index.d.ts +69 -0
- package/dist/types/base/hooks/index.d.ts +37 -0
- package/dist/types/base/index.d.ts +13 -0
- package/dist/types/base/interfaces.d.ts +44 -0
- package/dist/types/base/loglevel.d.ts +2 -0
- package/dist/types/base/plugin/IPlugin.d.ts +53 -0
- package/dist/types/base/plugin/errors.d.ts +28 -0
- package/dist/types/base/plugin/index.d.ts +2 -0
- package/dist/types/base/provider/IProvider.d.ts +16 -0
- package/dist/types/base/utils.d.ts +9 -0
- package/dist/types/base/wallet/index.d.ts +33 -0
- package/dist/types/index.d.ts +4 -0
- package/dist/types/noModal.d.ts +2 -2
- package/dist/types/plugins/index.d.ts +2 -0
- package/dist/types/plugins/nft-checkout-plugin/embed.d.ts +24 -0
- package/dist/types/plugins/nft-checkout-plugin/enums.d.ts +14 -0
- package/dist/types/plugins/nft-checkout-plugin/index.d.ts +2 -0
- package/dist/types/plugins/nft-checkout-plugin/plugin.d.ts +23 -0
- package/dist/types/plugins/nft-checkout-plugin/utils.d.ts +3 -0
- package/dist/types/plugins/wallet-services-plugin/index.d.ts +1 -0
- package/dist/types/plugins/wallet-services-plugin/plugin.d.ts +51 -0
- package/dist/types/providers/account-abstraction-provider/index.d.ts +1 -0
- package/dist/types/providers/account-abstraction-provider/providers/AccountAbstractionProvider.d.ts +46 -0
- package/dist/types/providers/account-abstraction-provider/providers/index.d.ts +3 -0
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.d.ts +14 -0
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.d.ts +13 -0
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/LightSmartAccount.d.ts +14 -0
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.d.ts +14 -0
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.d.ts +13 -0
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/SimpleSmartAccount.d.ts +13 -0
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.d.ts +13 -0
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/constants.d.ts +9 -0
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/index.d.ts +6 -0
- package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/types.d.ts +22 -0
- package/dist/types/providers/account-abstraction-provider/providers/types.d.ts +17 -0
- package/dist/types/providers/account-abstraction-provider/providers/utils.d.ts +10 -0
- package/dist/types/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.d.ts +8 -0
- package/dist/types/providers/account-abstraction-provider/rpc/index.d.ts +1 -0
- package/dist/types/providers/base-provider/CommonJRPCProvider.d.ts +20 -0
- package/dist/types/providers/base-provider/baseProvider.d.ts +39 -0
- package/dist/types/providers/base-provider/commonPrivateKeyProvider.d.ts +31 -0
- package/dist/types/providers/base-provider/index.d.ts +5 -0
- package/dist/types/providers/base-provider/interfaces.d.ts +3 -0
- package/dist/types/providers/base-provider/jrpcClient.d.ts +8 -0
- package/dist/types/providers/base-provider/utils.d.ts +2 -0
- package/dist/types/providers/ethereum-mpc-provider/index.d.ts +1 -0
- package/dist/types/providers/ethereum-mpc-provider/providers/index.d.ts +1 -0
- package/dist/types/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.d.ts +65 -0
- package/dist/types/providers/ethereum-mpc-provider/providers/signingProviders/index.d.ts +1 -0
- package/dist/types/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.d.ts +12 -0
- package/dist/types/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.d.ts +3 -0
- package/dist/types/providers/ethereum-mpc-provider/rpc/interfaces.d.ts +15 -0
- package/dist/types/providers/ethereum-provider/index.d.ts +2 -0
- package/dist/types/providers/ethereum-provider/providers/converter.d.ts +15 -0
- package/dist/types/providers/ethereum-provider/providers/index.d.ts +1 -0
- package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.d.ts +30 -0
- package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.d.ts +16 -0
- package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.d.ts +28 -0
- package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/index.d.ts +4 -0
- package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.d.ts +46 -0
- package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.d.ts +12 -0
- package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.d.ts +9 -0
- package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/index.d.ts +2 -0
- package/dist/types/providers/ethereum-provider/providers/utils.d.ts +5 -0
- package/dist/types/providers/ethereum-provider/rpc/ethRpcMiddlewares.d.ts +5 -0
- package/dist/types/providers/ethereum-provider/rpc/index.d.ts +4 -0
- package/dist/types/providers/ethereum-provider/rpc/interfaces.d.ts +65 -0
- package/dist/types/providers/ethereum-provider/rpc/jrpcClient.d.ts +8 -0
- package/dist/types/providers/ethereum-provider/rpc/walletMidddleware.d.ts +3 -0
- package/dist/types/providers/index.d.ts +6 -0
- package/dist/types/providers/solana-provider/index.d.ts +4 -0
- package/dist/types/providers/solana-provider/interface.d.ts +39 -0
- package/dist/types/providers/solana-provider/providers/index.d.ts +2 -0
- package/dist/types/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.d.ts +16 -0
- package/dist/types/providers/solana-provider/providers/injectedProviders/base/providerHandlers.d.ts +3 -0
- package/dist/types/providers/solana-provider/providers/injectedProviders/index.d.ts +3 -0
- package/dist/types/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.d.ts +3 -0
- package/dist/types/providers/solana-provider/providers/injectedProviders/interface.d.ts +5 -0
- package/dist/types/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.d.ts +3 -0
- package/dist/types/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.d.ts +18 -0
- package/dist/types/providers/solana-provider/providers/injectedProviders/walletStandardProvider.d.ts +6 -0
- package/dist/types/providers/solana-provider/providers/privateKeyProvider/index.d.ts +1 -0
- package/dist/types/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.d.ts +31 -0
- package/dist/types/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.d.ts +7 -0
- package/dist/types/providers/solana-provider/rpc/JrpcClient.d.ts +9 -0
- package/dist/types/providers/solana-provider/rpc/index.d.ts +3 -0
- package/dist/types/providers/solana-provider/rpc/interfaces.d.ts +42 -0
- package/dist/types/providers/solana-provider/rpc/solanaRpcMiddlewares.d.ts +20 -0
- package/dist/types/providers/solana-provider/solanaWallet.d.ts +14 -0
- package/dist/types/providers/xrpl-provider/index.d.ts +1 -0
- package/dist/types/providers/xrpl-provider/providers/index.d.ts +1 -0
- package/dist/types/providers/xrpl-provider/providers/privateKeyProviders/constants.d.ts +5 -0
- package/dist/types/providers/xrpl-provider/providers/privateKeyProviders/index.d.ts +3 -0
- package/dist/types/providers/xrpl-provider/providers/privateKeyProviders/interface.d.ts +2 -0
- package/dist/types/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.d.ts +26 -0
- package/dist/types/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.d.ts +7 -0
- package/dist/types/providers/xrpl-provider/rpc/JrpcClient.d.ts +9 -0
- package/dist/types/providers/xrpl-provider/rpc/xrplRpcMiddlewares.d.ts +52 -0
- package/dist/types/react/index.d.ts +2 -0
- package/dist/types/react/no-modal/Web3AuthInnerContext.d.ts +4 -0
- package/dist/types/react/no-modal/Web3AuthProvider.d.ts +3 -0
- package/dist/types/react/no-modal/hooks/index.d.ts +1 -0
- package/dist/types/react/no-modal/hooks/useWeb3Auth.d.ts +2 -0
- package/dist/types/react/no-modal/index.d.ts +3 -0
- package/dist/types/react/no-modal/interfaces.d.ts +15 -0
- package/dist/types/react/wallet-services-plugin/WalletServicesContext.d.ts +7 -0
- package/dist/types/react/wallet-services-plugin/WalletServicesProvider.d.ts +7 -0
- package/dist/types/react/wallet-services-plugin/hooks/index.d.ts +1 -0
- package/dist/types/react/wallet-services-plugin/hooks/useWalletServicesPlugin.d.ts +2 -0
- package/dist/types/react/wallet-services-plugin/index.d.ts +4 -0
- package/dist/types/react/wallet-services-plugin/interfaces.d.ts +5 -0
- package/dist/types/vue/index.d.ts +2 -0
- package/dist/types/vue/no-modal/Web3AuthProvider.d.ts +13 -0
- package/dist/types/vue/no-modal/composables/index.d.ts +1 -0
- package/dist/types/vue/no-modal/composables/useWeb3Auth.d.ts +2 -0
- package/dist/types/vue/no-modal/index.d.ts +3 -0
- package/dist/types/vue/no-modal/interfaces.d.ts +42 -0
- package/dist/types/vue/wallet-services-plugin/WalletServicesProvider.d.ts +1 -0
- package/dist/types/vue/wallet-services-plugin/composables/index.d.ts +1 -0
- package/dist/types/vue/wallet-services-plugin/composables/useWalletServicesPlugin.d.ts +2 -0
- package/dist/types/vue/wallet-services-plugin/context.d.ts +3 -0
- package/dist/types/vue/wallet-services-plugin/index.d.ts +4 -0
- package/dist/types/vue/wallet-services-plugin/interfaces.d.ts +13 -0
- package/package.json +76 -15
- package/README.md +0 -82
- package/dist/noModal.esm.js +0 -359
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var auth = require('@web3auth/auth');
|
|
4
|
+
var walletMidddleware = require('./walletMidddleware.js');
|
|
5
|
+
|
|
6
|
+
function createEthMiddleware(providerHandlers) {
|
|
7
|
+
const {
|
|
8
|
+
getAccounts,
|
|
9
|
+
getPrivateKey,
|
|
10
|
+
getPublicKey,
|
|
11
|
+
processTransaction,
|
|
12
|
+
processSignTransaction,
|
|
13
|
+
processEthSignMessage,
|
|
14
|
+
processTypedMessageV4,
|
|
15
|
+
processPersonalMessage
|
|
16
|
+
} = providerHandlers;
|
|
17
|
+
const ethMiddleware = auth.mergeMiddleware([auth.createScaffoldMiddleware({
|
|
18
|
+
eth_syncing: false
|
|
19
|
+
}), walletMidddleware.createWalletMiddleware({
|
|
20
|
+
getAccounts,
|
|
21
|
+
getPrivateKey,
|
|
22
|
+
getPublicKey,
|
|
23
|
+
processTransaction,
|
|
24
|
+
processEthSignMessage,
|
|
25
|
+
processSignTransaction,
|
|
26
|
+
processTypedMessageV4,
|
|
27
|
+
processPersonalMessage
|
|
28
|
+
})]);
|
|
29
|
+
return ethMiddleware;
|
|
30
|
+
}
|
|
31
|
+
function createEthChainSwitchMiddleware({
|
|
32
|
+
addChain,
|
|
33
|
+
switchChain
|
|
34
|
+
}) {
|
|
35
|
+
async function addNewChain(req, res) {
|
|
36
|
+
var _req$params;
|
|
37
|
+
const chainParams = (_req$params = req.params) !== null && _req$params !== void 0 && _req$params.length ? req.params[0] : undefined;
|
|
38
|
+
if (!chainParams) throw auth.rpcErrors.invalidParams("Missing chain params");
|
|
39
|
+
if (!chainParams.chainId) throw auth.rpcErrors.invalidParams("Missing chainId in chainParams");
|
|
40
|
+
if (!chainParams.rpcUrls || chainParams.rpcUrls.length === 0) throw auth.rpcErrors.invalidParams("Missing rpcUrls in chainParams");
|
|
41
|
+
if (!chainParams.nativeCurrency) throw auth.rpcErrors.invalidParams("Missing nativeCurrency in chainParams");
|
|
42
|
+
res.result = await addChain(chainParams);
|
|
43
|
+
}
|
|
44
|
+
async function updateChain(req, res) {
|
|
45
|
+
var _req$params2;
|
|
46
|
+
const chainParams = (_req$params2 = req.params) !== null && _req$params2 !== void 0 && _req$params2.length ? req.params[0] : undefined;
|
|
47
|
+
if (!chainParams) throw auth.rpcErrors.invalidParams("Missing chainId");
|
|
48
|
+
res.result = await switchChain(chainParams);
|
|
49
|
+
}
|
|
50
|
+
return auth.createScaffoldMiddleware({
|
|
51
|
+
wallet_addEthereumChain: auth.createAsyncMiddleware(addNewChain),
|
|
52
|
+
wallet_switchEthereumChain: auth.createAsyncMiddleware(updateChain)
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// #region account middlewares
|
|
57
|
+
function createEthAccountMiddleware({
|
|
58
|
+
updatePrivatekey
|
|
59
|
+
}) {
|
|
60
|
+
async function updateAccount(req, res) {
|
|
61
|
+
var _req$params3;
|
|
62
|
+
const accountParams = (_req$params3 = req.params) !== null && _req$params3 !== void 0 && _req$params3.length ? req.params[0] : undefined;
|
|
63
|
+
if (!(accountParams !== null && accountParams !== void 0 && accountParams.privateKey)) throw auth.rpcErrors.invalidParams("Missing privateKey");
|
|
64
|
+
res.result = await updatePrivatekey(accountParams);
|
|
65
|
+
}
|
|
66
|
+
return auth.createScaffoldMiddleware({
|
|
67
|
+
wallet_updateAccount: auth.createAsyncMiddleware(updateAccount)
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
// #endregion account middlewares
|
|
72
|
+
|
|
73
|
+
exports.createEthAccountMiddleware = createEthAccountMiddleware;
|
|
74
|
+
exports.createEthChainSwitchMiddleware = createEthChainSwitchMiddleware;
|
|
75
|
+
exports.createEthMiddleware = createEthMiddleware;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var baseControllers = require('@toruslabs/base-controllers');
|
|
4
|
+
var auth = require('@web3auth/auth');
|
|
5
|
+
|
|
6
|
+
function createEthChainIdMiddleware(chainId) {
|
|
7
|
+
return (req, res, next, end) => {
|
|
8
|
+
if (req.method === "eth_chainId") {
|
|
9
|
+
res.result = chainId;
|
|
10
|
+
return end();
|
|
11
|
+
}
|
|
12
|
+
return next();
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
function createEthProviderConfigMiddleware(providerConfig) {
|
|
16
|
+
return (req, res, next, end) => {
|
|
17
|
+
if (req.method === "eth_provider_config") {
|
|
18
|
+
res.result = providerConfig;
|
|
19
|
+
return end();
|
|
20
|
+
}
|
|
21
|
+
return next();
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
function createEthJsonRpcClient(providerConfig) {
|
|
25
|
+
const {
|
|
26
|
+
chainId,
|
|
27
|
+
rpcTarget
|
|
28
|
+
} = providerConfig;
|
|
29
|
+
const fetchMiddleware = baseControllers.createFetchMiddleware({
|
|
30
|
+
rpcTarget
|
|
31
|
+
});
|
|
32
|
+
const networkMiddleware = auth.mergeMiddleware([createEthChainIdMiddleware(chainId), createEthProviderConfigMiddleware(providerConfig), fetchMiddleware]);
|
|
33
|
+
return {
|
|
34
|
+
networkMiddleware,
|
|
35
|
+
fetchMiddleware
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
exports.createEthChainIdMiddleware = createEthChainIdMiddleware;
|
|
40
|
+
exports.createEthJsonRpcClient = createEthJsonRpcClient;
|
|
41
|
+
exports.createEthProviderConfigMiddleware = createEthProviderConfigMiddleware;
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
|
|
4
|
+
var auth = require('@web3auth/auth');
|
|
5
|
+
|
|
6
|
+
function createWalletMiddleware({
|
|
7
|
+
getAccounts,
|
|
8
|
+
getPrivateKey,
|
|
9
|
+
getPublicKey,
|
|
10
|
+
processEthSignMessage,
|
|
11
|
+
processPersonalMessage,
|
|
12
|
+
processTransaction,
|
|
13
|
+
processSignTransaction,
|
|
14
|
+
processTypedMessageV4
|
|
15
|
+
}) {
|
|
16
|
+
if (!getAccounts) {
|
|
17
|
+
throw new Error("opts.getAccounts is required");
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
//
|
|
21
|
+
// utility
|
|
22
|
+
//
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Validates the keyholder address, and returns a normalized (i.e. lowercase)
|
|
26
|
+
* copy of it.
|
|
27
|
+
*
|
|
28
|
+
* an error
|
|
29
|
+
*/
|
|
30
|
+
async function validateAndNormalizeKeyholder(address, req) {
|
|
31
|
+
if (typeof address === "string" && address.length > 0) {
|
|
32
|
+
// ensure address is included in provided accounts
|
|
33
|
+
const accounts = await getAccounts(req);
|
|
34
|
+
const normalizedAccounts = accounts.map(_address => _address.toLowerCase());
|
|
35
|
+
const normalizedAddress = address.toLowerCase();
|
|
36
|
+
if (normalizedAccounts.includes(normalizedAddress)) {
|
|
37
|
+
return normalizedAddress;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
throw auth.rpcErrors.invalidParams({
|
|
41
|
+
message: `Invalid parameters: must provide an Ethereum address.`
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
//
|
|
46
|
+
// account lookups
|
|
47
|
+
//
|
|
48
|
+
|
|
49
|
+
async function lookupAccounts(req, res) {
|
|
50
|
+
res.result = await getAccounts(req);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
//
|
|
54
|
+
// transaction signatures
|
|
55
|
+
//
|
|
56
|
+
|
|
57
|
+
async function sendTransaction(req, res) {
|
|
58
|
+
if (!processTransaction) {
|
|
59
|
+
throw auth.rpcErrors.methodNotSupported();
|
|
60
|
+
}
|
|
61
|
+
const txParams = req.params[0] || {
|
|
62
|
+
from: ""
|
|
63
|
+
};
|
|
64
|
+
txParams.from = await validateAndNormalizeKeyholder(txParams.from, req);
|
|
65
|
+
res.result = await processTransaction(txParams, req);
|
|
66
|
+
}
|
|
67
|
+
async function signTransaction(req, res) {
|
|
68
|
+
if (!processSignTransaction) {
|
|
69
|
+
throw auth.rpcErrors.methodNotSupported();
|
|
70
|
+
}
|
|
71
|
+
const txParams = req.params[0] || {
|
|
72
|
+
from: ""
|
|
73
|
+
};
|
|
74
|
+
txParams.from = await validateAndNormalizeKeyholder(txParams.from, req);
|
|
75
|
+
res.result = await processSignTransaction(txParams, req);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
//
|
|
79
|
+
// message signatures
|
|
80
|
+
//
|
|
81
|
+
|
|
82
|
+
async function ethSign(req, res) {
|
|
83
|
+
if (!processEthSignMessage) {
|
|
84
|
+
throw auth.rpcErrors.methodNotSupported();
|
|
85
|
+
}
|
|
86
|
+
let msgParams = req.params;
|
|
87
|
+
const extraParams = req.params[2] || {};
|
|
88
|
+
if (Array.isArray(req.params)) {
|
|
89
|
+
if (!(req.params.length === 2)) throw new Error(`WalletMiddleware - incorrect params for ${req.method} method. expected [address, message]`);
|
|
90
|
+
const params = req.params;
|
|
91
|
+
const address = params[0];
|
|
92
|
+
const message = params[1];
|
|
93
|
+
msgParams = {
|
|
94
|
+
from: address,
|
|
95
|
+
data: message
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
msgParams = _objectSpread(_objectSpread({}, extraParams), msgParams);
|
|
99
|
+
res.result = await processEthSignMessage(msgParams, req);
|
|
100
|
+
}
|
|
101
|
+
async function signTypedDataV4(req, res) {
|
|
102
|
+
if (!processTypedMessageV4) {
|
|
103
|
+
throw auth.rpcErrors.methodNotSupported();
|
|
104
|
+
}
|
|
105
|
+
if (!(req !== null && req !== void 0 && req.params)) throw new Error("WalletMiddleware - missing params");
|
|
106
|
+
let msgParams = req.params;
|
|
107
|
+
if (Array.isArray(req.params)) {
|
|
108
|
+
if (!(req.params.length === 2)) throw new Error(`WalletMiddleware - incorrect params for ${req.method} method. expected [address, typedData]`);
|
|
109
|
+
const params = req.params;
|
|
110
|
+
const address = params[0];
|
|
111
|
+
const message = params[1];
|
|
112
|
+
msgParams = {
|
|
113
|
+
from: address,
|
|
114
|
+
data: message
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
res.result = await processTypedMessageV4(msgParams, req);
|
|
118
|
+
}
|
|
119
|
+
async function personalSign(req, res) {
|
|
120
|
+
if (!processPersonalMessage) {
|
|
121
|
+
throw auth.rpcErrors.methodNotSupported();
|
|
122
|
+
}
|
|
123
|
+
let msgParams = req.params;
|
|
124
|
+
const extraParams = req.params[2] || {};
|
|
125
|
+
if (Array.isArray(req.params)) {
|
|
126
|
+
if (!(req.params.length >= 2)) throw new Error(`WalletMiddleware - incorrect params for ${req.method} method. expected [message, address]`);
|
|
127
|
+
const params = req.params;
|
|
128
|
+
if (typeof params[0] === "object") {
|
|
129
|
+
const {
|
|
130
|
+
challenge,
|
|
131
|
+
address
|
|
132
|
+
} = params[0];
|
|
133
|
+
msgParams = {
|
|
134
|
+
from: address,
|
|
135
|
+
data: challenge
|
|
136
|
+
};
|
|
137
|
+
} else {
|
|
138
|
+
const message = params[0];
|
|
139
|
+
const address = params[1];
|
|
140
|
+
msgParams = {
|
|
141
|
+
from: address,
|
|
142
|
+
data: message
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
msgParams = _objectSpread(_objectSpread({}, extraParams), msgParams);
|
|
147
|
+
res.result = await processPersonalMessage(msgParams, req);
|
|
148
|
+
}
|
|
149
|
+
async function fetchPrivateKey(req, res) {
|
|
150
|
+
if (!getPrivateKey) {
|
|
151
|
+
throw auth.rpcErrors.methodNotSupported();
|
|
152
|
+
}
|
|
153
|
+
res.result = await getPrivateKey(req);
|
|
154
|
+
}
|
|
155
|
+
async function fetchPublicKey(req, res) {
|
|
156
|
+
if (!getPublicKey) {
|
|
157
|
+
throw auth.rpcErrors.methodNotSupported();
|
|
158
|
+
}
|
|
159
|
+
res.result = await getPublicKey(req);
|
|
160
|
+
}
|
|
161
|
+
return auth.createScaffoldMiddleware({
|
|
162
|
+
// account lookups
|
|
163
|
+
eth_accounts: auth.createAsyncMiddleware(lookupAccounts),
|
|
164
|
+
eth_requestAccounts: auth.createAsyncMiddleware(lookupAccounts),
|
|
165
|
+
eth_private_key: auth.createAsyncMiddleware(fetchPrivateKey),
|
|
166
|
+
eth_public_key: auth.createAsyncMiddleware(fetchPublicKey),
|
|
167
|
+
public_key: auth.createAsyncMiddleware(fetchPublicKey),
|
|
168
|
+
private_key: auth.createAsyncMiddleware(fetchPrivateKey),
|
|
169
|
+
// tx signatures
|
|
170
|
+
eth_sendTransaction: auth.createAsyncMiddleware(sendTransaction),
|
|
171
|
+
eth_signTransaction: auth.createAsyncMiddleware(signTransaction),
|
|
172
|
+
// message signatures
|
|
173
|
+
eth_sign: auth.createAsyncMiddleware(ethSign),
|
|
174
|
+
eth_signTypedData_v4: auth.createAsyncMiddleware(signTypedDataV4),
|
|
175
|
+
personal_sign: auth.createAsyncMiddleware(personalSign)
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
exports.createWalletMiddleware = createWalletMiddleware;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var auth = require('@web3auth/auth');
|
|
4
|
+
var index = require('../../../../../base/errors/index.js');
|
|
5
|
+
var JrpcClient = require('../../../rpc/JrpcClient.js');
|
|
6
|
+
var solanaRpcMiddlewares = require('../../../rpc/solanaRpcMiddlewares.js');
|
|
7
|
+
var baseProvider = require('../../../../base-provider/baseProvider.js');
|
|
8
|
+
|
|
9
|
+
class BaseInjectedProvider extends baseProvider.BaseProvider {
|
|
10
|
+
constructor({
|
|
11
|
+
config,
|
|
12
|
+
state
|
|
13
|
+
}) {
|
|
14
|
+
super({
|
|
15
|
+
config,
|
|
16
|
+
state
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
async switchChain(_) {
|
|
20
|
+
throw index.WalletLoginError.unsupportedOperation("Chain switching is not supported by this adapter");
|
|
21
|
+
}
|
|
22
|
+
async setupProvider(injectedProvider) {
|
|
23
|
+
const engine = new auth.JRPCEngine();
|
|
24
|
+
const providerHandlers = this.getProviderHandlers(injectedProvider);
|
|
25
|
+
const solanaMiddleware = solanaRpcMiddlewares.createSolanaMiddleware(providerHandlers);
|
|
26
|
+
engine.push(solanaMiddleware);
|
|
27
|
+
const configMiddleware = JrpcClient.createConfigMiddleware(this.config.chainConfig);
|
|
28
|
+
engine.push(configMiddleware);
|
|
29
|
+
const injectedProviderProxy = this.getInjectedProviderProxy(injectedProvider);
|
|
30
|
+
if (injectedProviderProxy) {
|
|
31
|
+
engine.push(injectedProviderProxy);
|
|
32
|
+
}
|
|
33
|
+
const provider = auth.providerFromEngine(engine);
|
|
34
|
+
this.updateProviderEngineProxy(provider);
|
|
35
|
+
await this.lookupNetwork();
|
|
36
|
+
}
|
|
37
|
+
async lookupNetwork() {
|
|
38
|
+
const {
|
|
39
|
+
chainConfig
|
|
40
|
+
} = this.config;
|
|
41
|
+
this.update({
|
|
42
|
+
chainId: chainConfig.chainId
|
|
43
|
+
});
|
|
44
|
+
return chainConfig.chainId || "";
|
|
45
|
+
}
|
|
46
|
+
getInjectedProviderProxy(_) {
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
exports.BaseInjectedProvider = BaseInjectedProvider;
|
package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var auth = require('@web3auth/auth');
|
|
4
|
+
var bs58 = require('bs58');
|
|
5
|
+
|
|
6
|
+
const getBaseProviderHandlers = injectedProvider => {
|
|
7
|
+
const providerHandlers = {
|
|
8
|
+
requestAccounts: async () => {
|
|
9
|
+
return injectedProvider.publicKey ? [bs58.encode(injectedProvider.publicKey.toBytes())] : [];
|
|
10
|
+
},
|
|
11
|
+
getPublicKey: async () => {
|
|
12
|
+
return injectedProvider.publicKey ? bs58.encode(injectedProvider.publicKey.toBytes()) : "";
|
|
13
|
+
},
|
|
14
|
+
getAccounts: async () => injectedProvider.publicKey ? [bs58.encode(injectedProvider.publicKey.toBytes())] : [],
|
|
15
|
+
getPrivateKey: async () => {
|
|
16
|
+
throw auth.rpcErrors.methodNotSupported();
|
|
17
|
+
},
|
|
18
|
+
getSecretKey: async () => {
|
|
19
|
+
throw auth.rpcErrors.methodNotSupported();
|
|
20
|
+
},
|
|
21
|
+
signTransaction: async req => {
|
|
22
|
+
const transaction = await injectedProvider.signTransaction(req.params.message);
|
|
23
|
+
return transaction;
|
|
24
|
+
},
|
|
25
|
+
signMessage: async req => {
|
|
26
|
+
const sigData = await injectedProvider.signMessage(req.params.message, req.params.display);
|
|
27
|
+
return sigData.signature;
|
|
28
|
+
},
|
|
29
|
+
signAllTransactions: async req => {
|
|
30
|
+
var _req$params, _req$params2;
|
|
31
|
+
if (!((_req$params = req.params) !== null && _req$params !== void 0 && _req$params.message) || !((_req$params2 = req.params) !== null && _req$params2 !== void 0 && _req$params2.message.length)) {
|
|
32
|
+
throw auth.rpcErrors.invalidParams("message");
|
|
33
|
+
}
|
|
34
|
+
const transaction = await injectedProvider.signAllTransactions(req.params.message);
|
|
35
|
+
return transaction;
|
|
36
|
+
},
|
|
37
|
+
signAndSendTransaction: async req => {
|
|
38
|
+
const txRes = await injectedProvider.signAndSendTransaction(req.params.message);
|
|
39
|
+
return {
|
|
40
|
+
signature: txRes.signature
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
return providerHandlers;
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
exports.getBaseProviderHandlers = getBaseProviderHandlers;
|
package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var auth = require('@web3auth/auth');
|
|
4
|
+
|
|
5
|
+
function createInjectedProviderProxyMiddleware(provider) {
|
|
6
|
+
return auth.createAsyncMiddleware(async (req, res, _next) => {
|
|
7
|
+
const result = await provider.request(req);
|
|
8
|
+
res.result = result;
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
exports.createInjectedProviderProxyMiddleware = createInjectedProviderProxyMiddleware;
|
package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.js
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var auth = require('@web3auth/auth');
|
|
4
|
+
|
|
5
|
+
const getTorusHandlers = injectedProvider => {
|
|
6
|
+
const providerHandlers = {
|
|
7
|
+
requestAccounts: async () => {
|
|
8
|
+
const accounts = await injectedProvider.request({
|
|
9
|
+
method: "solana_requestAccounts",
|
|
10
|
+
params: {}
|
|
11
|
+
});
|
|
12
|
+
return accounts;
|
|
13
|
+
},
|
|
14
|
+
getPublicKey: async () => {
|
|
15
|
+
const publicKeys = await injectedProvider.request({
|
|
16
|
+
method: "solana_requestAccounts",
|
|
17
|
+
params: {}
|
|
18
|
+
});
|
|
19
|
+
return publicKeys[0];
|
|
20
|
+
},
|
|
21
|
+
getAccounts: async () => {
|
|
22
|
+
const accounts = await injectedProvider.request({
|
|
23
|
+
method: "solana_requestAccounts",
|
|
24
|
+
params: {}
|
|
25
|
+
});
|
|
26
|
+
return accounts;
|
|
27
|
+
},
|
|
28
|
+
getPrivateKey: async () => {
|
|
29
|
+
throw auth.rpcErrors.methodNotSupported();
|
|
30
|
+
},
|
|
31
|
+
getSecretKey: async () => {
|
|
32
|
+
throw auth.rpcErrors.methodNotSupported();
|
|
33
|
+
},
|
|
34
|
+
signMessage: async req => {
|
|
35
|
+
var _req$params;
|
|
36
|
+
if (!((_req$params = req.params) !== null && _req$params !== void 0 && _req$params.message)) {
|
|
37
|
+
throw auth.rpcErrors.invalidParams("message");
|
|
38
|
+
}
|
|
39
|
+
const message = await injectedProvider.signMessage(req.params.message);
|
|
40
|
+
return message;
|
|
41
|
+
},
|
|
42
|
+
signTransaction: async req => {
|
|
43
|
+
var _req$params2;
|
|
44
|
+
if (!((_req$params2 = req.params) !== null && _req$params2 !== void 0 && _req$params2.message)) {
|
|
45
|
+
throw auth.rpcErrors.invalidParams("message");
|
|
46
|
+
}
|
|
47
|
+
const txMessage = req.params.message;
|
|
48
|
+
const response = await injectedProvider.signTransaction(txMessage);
|
|
49
|
+
return response;
|
|
50
|
+
},
|
|
51
|
+
signAndSendTransaction: async req => {
|
|
52
|
+
var _req$params3;
|
|
53
|
+
if (!((_req$params3 = req.params) !== null && _req$params3 !== void 0 && _req$params3.message)) {
|
|
54
|
+
throw auth.rpcErrors.invalidParams("message");
|
|
55
|
+
}
|
|
56
|
+
const txMessage = req.params.message;
|
|
57
|
+
const response = await injectedProvider.sendTransaction(txMessage);
|
|
58
|
+
return {
|
|
59
|
+
signature: response
|
|
60
|
+
};
|
|
61
|
+
},
|
|
62
|
+
signAllTransactions: async req => {
|
|
63
|
+
var _req$params4, _req$params5;
|
|
64
|
+
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)) {
|
|
65
|
+
throw auth.rpcErrors.invalidParams("message");
|
|
66
|
+
}
|
|
67
|
+
const transactions = req.params.message;
|
|
68
|
+
const response = await injectedProvider.signAllTransactions(transactions);
|
|
69
|
+
return response;
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
return providerHandlers;
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
exports.getTorusHandlers = getTorusHandlers;
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
|
|
4
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
5
|
+
var auth = require('@web3auth/auth');
|
|
6
|
+
var index = require('../../../../../base/errors/index.js');
|
|
7
|
+
var utils = require('../../../../../base/utils.js');
|
|
8
|
+
var solanaRpcMiddlewares = require('../../../rpc/solanaRpcMiddlewares.js');
|
|
9
|
+
var injectedProviderProxy = require('../injectedProviderProxy.js');
|
|
10
|
+
var providerHandlers = require('./providerHandlers.js');
|
|
11
|
+
var baseProvider = require('../../../../base-provider/baseProvider.js');
|
|
12
|
+
|
|
13
|
+
class TorusInjectedProvider extends baseProvider.BaseProvider {
|
|
14
|
+
constructor({
|
|
15
|
+
config,
|
|
16
|
+
state
|
|
17
|
+
}) {
|
|
18
|
+
super({
|
|
19
|
+
config,
|
|
20
|
+
state
|
|
21
|
+
});
|
|
22
|
+
_defineProperty(this, "PROVIDER_CHAIN_NAMESPACE", "solana");
|
|
23
|
+
}
|
|
24
|
+
async switchChain(params) {
|
|
25
|
+
// overrides the base provider implementation
|
|
26
|
+
await this.provider.request({
|
|
27
|
+
method: "switchSolanaChain",
|
|
28
|
+
params: [{
|
|
29
|
+
chainId: params.chainId
|
|
30
|
+
}]
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
async addChain(chainConfig) {
|
|
34
|
+
super.addChain(chainConfig);
|
|
35
|
+
await this.provider.request({
|
|
36
|
+
method: "addNewChainConfig",
|
|
37
|
+
params: [{
|
|
38
|
+
chainId: chainConfig.chainId,
|
|
39
|
+
chainName: chainConfig.displayName,
|
|
40
|
+
rpcUrls: [chainConfig.rpcTarget],
|
|
41
|
+
blockExplorerUrls: [chainConfig.blockExplorerUrl],
|
|
42
|
+
iconUrls: [chainConfig.logo],
|
|
43
|
+
nativeCurrency: {
|
|
44
|
+
name: chainConfig.tickerName,
|
|
45
|
+
symbol: chainConfig.ticker,
|
|
46
|
+
decimals: chainConfig.decimals || 18
|
|
47
|
+
}
|
|
48
|
+
}]
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
async setupProvider(injectedProvider) {
|
|
52
|
+
this.handleInjectedProviderUpdate(injectedProvider);
|
|
53
|
+
const {
|
|
54
|
+
chainNamespace
|
|
55
|
+
} = this.config.chainConfig;
|
|
56
|
+
if (chainNamespace !== this.PROVIDER_CHAIN_NAMESPACE) throw index.WalletInitializationError.incompatibleChainNameSpace("Invalid chain namespace");
|
|
57
|
+
await this.setupEngine(injectedProvider);
|
|
58
|
+
}
|
|
59
|
+
async lookupNetwork() {
|
|
60
|
+
if (!this.provider) throw auth.providerErrors.custom({
|
|
61
|
+
message: "Torus solana provider is not initialized",
|
|
62
|
+
code: 4902
|
|
63
|
+
});
|
|
64
|
+
const {
|
|
65
|
+
chainId
|
|
66
|
+
} = this.config.chainConfig;
|
|
67
|
+
const connectedChainId = await this.provider.request({
|
|
68
|
+
method: "solana_chainId"
|
|
69
|
+
});
|
|
70
|
+
const connectedHexChainId = utils.isHexStrict(connectedChainId.toString()) ? connectedChainId : `0x${parseInt(connectedChainId, 10).toString(16)}`;
|
|
71
|
+
if (chainId !== connectedHexChainId) throw index.WalletInitializationError.rpcConnectionError(`Invalid network, net_version is: ${connectedHexChainId}, expected: ${chainId}`);
|
|
72
|
+
this.update({
|
|
73
|
+
chainId: connectedHexChainId
|
|
74
|
+
});
|
|
75
|
+
this.emit("connect", {
|
|
76
|
+
chainId: this.state.chainId
|
|
77
|
+
});
|
|
78
|
+
this.emit("chainChanged", this.state.chainId);
|
|
79
|
+
return this.state.chainId;
|
|
80
|
+
}
|
|
81
|
+
async setupEngine(injectedProvider) {
|
|
82
|
+
const providerHandlers$1 = providerHandlers.getTorusHandlers(injectedProvider);
|
|
83
|
+
const solanaMiddleware = solanaRpcMiddlewares.createSolanaMiddleware(providerHandlers$1);
|
|
84
|
+
const injectedProviderProxy$1 = injectedProviderProxy.createInjectedProviderProxyMiddleware(injectedProvider);
|
|
85
|
+
const engine = new auth.JRPCEngine();
|
|
86
|
+
engine.push(solanaMiddleware);
|
|
87
|
+
engine.push(injectedProviderProxy$1);
|
|
88
|
+
const provider = auth.providerFromEngine(engine);
|
|
89
|
+
this.updateProviderEngineProxy(provider);
|
|
90
|
+
await this.lookupNetwork();
|
|
91
|
+
}
|
|
92
|
+
async handleInjectedProviderUpdate(injectedProvider) {
|
|
93
|
+
injectedProvider.on("accountsChanged", async accounts => {
|
|
94
|
+
this.emit("accountsChanged", accounts);
|
|
95
|
+
});
|
|
96
|
+
injectedProvider.on("chainChanged", async chainId => {
|
|
97
|
+
const connectedHexChainId = utils.isHexStrict(chainId) ? chainId : `0x${parseInt(chainId, 10).toString(16)}`;
|
|
98
|
+
// Check if chainId changed and trigger event
|
|
99
|
+
this.configure({
|
|
100
|
+
chainConfig: _objectSpread(_objectSpread({}, this.config.chainConfig), {}, {
|
|
101
|
+
chainId: connectedHexChainId
|
|
102
|
+
})
|
|
103
|
+
});
|
|
104
|
+
await this.setupProvider(injectedProvider);
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
exports.TorusInjectedProvider = TorusInjectedProvider;
|
package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var baseInjectedProvider = require('./base/baseInjectedProvider.js');
|
|
4
|
+
var providerHandlers = require('./base/providerHandlers.js');
|
|
5
|
+
|
|
6
|
+
class WalletStandardProvider extends baseInjectedProvider.BaseInjectedProvider {
|
|
7
|
+
getProviderHandlers(injectedProvider) {
|
|
8
|
+
return providerHandlers.getBaseProviderHandlers(injectedProvider);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
exports.WalletStandardProvider = WalletStandardProvider;
|