@web3auth/no-modal 10.0.0-beta.0 → 10.0.0-beta.10
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/connector/baseConnector.js +3 -1
- package/dist/lib.cjs/base/connector/constants.js +3 -6
- package/dist/lib.cjs/base/constants.js +26 -0
- package/dist/lib.cjs/base/cookie.js +38 -0
- package/dist/lib.cjs/base/deserialize.js +13 -0
- package/dist/lib.cjs/base/errors/index.js +3 -22
- package/dist/lib.cjs/base/loglevel.js +3 -0
- package/dist/lib.cjs/base/utils.js +50 -7
- package/dist/lib.cjs/base/wallet/index.js +4 -5
- package/dist/lib.cjs/connectors/auth-connector/authConnector.js +64 -21
- package/dist/lib.cjs/connectors/base-evm-connector/baseEvmConnector.js +1 -1
- package/dist/lib.cjs/connectors/base-solana-connector/baseSolanaConnector.js +1 -1
- package/dist/lib.cjs/connectors/coinbase-connector/coinbaseConnector.js +14 -6
- package/dist/lib.cjs/connectors/coinbase-connector/index.js +7 -0
- package/dist/lib.cjs/connectors/injected-evm-connector/injectedEvmConnector.js +10 -4
- package/dist/lib.cjs/connectors/injected-solana-connector/walletStandardConnector.js +9 -5
- package/dist/lib.cjs/connectors/metamask-connector/metamaskConnector.js +44 -16
- package/dist/lib.cjs/connectors/utils.js +10 -0
- package/dist/lib.cjs/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +1 -1
- package/dist/lib.cjs/connectors/wallet-connect-v2-connector/config.js +7 -2
- package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +7 -3
- package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +1 -1
- package/dist/lib.cjs/index.js +44 -32
- package/dist/lib.cjs/noModal.js +200 -72
- package/dist/lib.cjs/plugins/nft-checkout-plugin/plugin.js +3 -3
- package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +2 -2
- package/dist/lib.cjs/providers/account-abstraction-provider/index.js +5 -0
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +30 -3
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/utils.js +1 -1
- package/dist/lib.cjs/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +25 -3
- package/dist/lib.cjs/providers/base-provider/baseProvider.js +2 -0
- package/dist/lib.cjs/providers/ethereum-mpc-provider/index.js +7 -0
- package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +1 -1
- package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +1 -1
- package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +1 -1
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +1 -1
- package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +1 -1
- package/dist/lib.cjs/providers/xrpl-provider/index.js +9 -0
- package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +1 -1
- package/dist/lib.cjs/react/Web3AuthProvider.js +19 -0
- package/dist/lib.cjs/react/{wallet-services-plugin/WalletServicesContext.js → context/WalletServicesInnerContext.js} +19 -34
- package/dist/lib.cjs/react/{no-modal → context}/Web3AuthInnerContext.js +38 -96
- package/dist/lib.cjs/react/hooks/useCheckout.js +45 -0
- package/dist/lib.cjs/react/hooks/useEnableMFA.js +30 -0
- package/dist/lib.cjs/react/hooks/useIdentityToken.js +42 -0
- package/dist/lib.cjs/react/hooks/useManageMFA.js +30 -0
- package/dist/lib.cjs/react/hooks/useSwap.js +45 -0
- package/dist/lib.cjs/react/hooks/useSwitchChain.js +32 -0
- package/dist/lib.cjs/react/hooks/useWalletConnectScanner.js +45 -0
- package/dist/lib.cjs/react/hooks/useWalletServicesPlugin.js +19 -0
- package/dist/lib.cjs/react/hooks/useWalletUI.js +45 -0
- package/dist/lib.cjs/react/hooks/useWeb3Auth.js +28 -0
- package/dist/lib.cjs/react/hooks/useWeb3AuthConnect.js +48 -0
- package/dist/lib.cjs/react/hooks/useWeb3AuthDisconnect.js +30 -0
- package/dist/lib.cjs/react/{no-modal/hooks/useWeb3Auth.js → hooks/useWeb3AuthInner.js} +9 -9
- package/dist/lib.cjs/react/hooks/useWeb3AuthUser.js +50 -0
- package/dist/lib.cjs/react/index.js +26 -9
- package/dist/lib.cjs/react/solana/hooks/useSignAndSendTransaction.js +35 -0
- package/dist/lib.cjs/react/solana/hooks/useSignMessage.js +36 -0
- package/dist/lib.cjs/react/solana/hooks/useSignTransaction.js +34 -0
- package/dist/lib.cjs/react/solana/hooks/useSolanaWallet.js +62 -0
- package/dist/lib.cjs/react/solana/index.js +13 -0
- package/dist/lib.cjs/react/wagmi/constants.js +16 -0
- package/dist/lib.cjs/react/wagmi/index.js +7 -0
- package/dist/lib.cjs/react/wagmi/provider.js +189 -0
- package/dist/lib.cjs/types/base/connector/baseConnector.d.ts +5 -5
- package/dist/lib.cjs/types/base/connector/constants.d.ts +2 -4
- package/dist/lib.cjs/types/base/connector/interfaces.d.ts +34 -17
- package/dist/lib.cjs/types/base/constants.d.ts +18 -0
- package/dist/lib.cjs/types/base/cookie.d.ts +10 -0
- package/dist/lib.cjs/types/base/core/IWeb3Auth.d.ts +40 -12
- package/dist/lib.cjs/types/base/deserialize.d.ts +3 -0
- package/dist/lib.cjs/types/base/errors/index.d.ts +1 -2
- package/dist/lib.cjs/types/base/hooks/index.d.ts +3 -23
- package/dist/lib.cjs/types/base/index.d.ts +2 -1
- package/dist/lib.cjs/types/base/interfaces.d.ts +13 -6
- package/dist/lib.cjs/types/base/loglevel.d.ts +2 -1
- package/dist/lib.cjs/types/base/plugin/IPlugin.d.ts +1 -1
- package/dist/lib.cjs/types/base/utils.d.ts +14 -2
- package/dist/lib.cjs/types/base/wallet/index.d.ts +18 -17
- package/dist/lib.cjs/types/connectors/auth-connector/authConnector.d.ts +5 -6
- package/dist/lib.cjs/types/connectors/auth-connector/interface.d.ts +4 -3
- package/dist/lib.cjs/types/connectors/coinbase-connector/coinbaseConnector.d.ts +1 -1
- package/dist/lib.cjs/types/connectors/index.d.ts +1 -1
- package/dist/lib.cjs/types/connectors/injected-evm-connector/injectedEvmConnector.d.ts +1 -0
- package/dist/lib.cjs/types/connectors/metamask-connector/index.d.ts +1 -1
- package/dist/lib.cjs/types/connectors/metamask-connector/metamaskConnector.d.ts +2 -2
- package/dist/lib.cjs/types/connectors/utils.d.ts +8 -0
- package/dist/lib.cjs/types/noModal.d.ts +20 -9
- package/dist/lib.cjs/types/plugins/nft-checkout-plugin/plugin.d.ts +2 -2
- package/dist/lib.cjs/types/plugins/wallet-services-plugin/plugin.d.ts +2 -2
- package/dist/lib.cjs/types/providers/account-abstraction-provider/providers/AccountAbstractionProvider.d.ts +3 -2
- package/dist/lib.cjs/types/providers/account-abstraction-provider/providers/smartAccounts/index.d.ts +1 -1
- package/dist/lib.cjs/types/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.d.ts +4 -1
- package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.d.ts +1 -1
- package/dist/lib.cjs/types/providers/index.d.ts +0 -2
- package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.d.ts +1 -1
- package/dist/lib.cjs/types/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.d.ts +1 -1
- package/dist/lib.cjs/types/react/context/WalletServicesInnerContext.d.ts +6 -0
- package/dist/lib.cjs/types/react/{no-modal → context}/Web3AuthInnerContext.d.ts +1 -1
- package/dist/lib.cjs/types/react/hooks/index.d.ts +13 -0
- package/dist/lib.cjs/types/react/hooks/useCheckout.d.ts +8 -0
- package/dist/lib.cjs/types/react/hooks/useEnableMFA.d.ts +7 -0
- package/dist/lib.cjs/types/react/hooks/useIdentityToken.d.ts +13 -0
- package/dist/lib.cjs/types/react/hooks/useManageMFA.d.ts +7 -0
- package/dist/lib.cjs/types/react/hooks/useSwap.d.ts +8 -0
- package/dist/lib.cjs/types/react/hooks/useSwitchChain.d.ts +7 -0
- package/dist/lib.cjs/types/react/hooks/useWalletConnectScanner.d.ts +8 -0
- package/dist/lib.cjs/types/react/hooks/useWalletUI.d.ts +8 -0
- package/dist/lib.cjs/types/react/hooks/useWeb3Auth.d.ts +3 -0
- package/dist/lib.cjs/types/react/hooks/useWeb3AuthConnect.d.ts +9 -0
- package/dist/lib.cjs/types/react/hooks/useWeb3AuthDisconnect.d.ts +9 -0
- package/dist/lib.cjs/types/react/hooks/useWeb3AuthInner.d.ts +2 -0
- package/dist/lib.cjs/types/react/hooks/useWeb3AuthUser.d.ts +9 -0
- package/dist/lib.cjs/types/react/index.d.ts +3 -2
- package/dist/lib.cjs/types/react/interfaces.d.ts +21 -0
- package/dist/lib.cjs/types/react/solana/hooks/index.d.ts +4 -0
- package/dist/lib.cjs/types/react/solana/hooks/useSignAndSendTransaction.d.ts +9 -0
- package/dist/lib.cjs/types/react/solana/hooks/useSignMessage.d.ts +8 -0
- package/dist/lib.cjs/types/react/solana/hooks/useSignTransaction.d.ts +14 -0
- package/dist/lib.cjs/types/react/solana/hooks/useSolanaWallet.d.ts +8 -0
- package/dist/lib.cjs/types/react/solana/index.d.ts +1 -0
- package/dist/lib.cjs/types/react/wagmi/constants.d.ts +43 -0
- package/dist/lib.cjs/types/react/wagmi/index.d.ts +1 -0
- package/dist/lib.cjs/types/react/wagmi/interface.d.ts +4 -0
- package/dist/lib.cjs/types/react/wagmi/provider.d.ts +3 -0
- package/dist/lib.cjs/types/vue/WalletServicesInnerProvider.d.ts +1 -0
- package/dist/lib.cjs/types/vue/composables/index.d.ts +13 -0
- package/dist/lib.cjs/types/vue/composables/useCheckout.d.ts +9 -0
- package/dist/lib.cjs/types/vue/composables/useEnableMFA.d.ts +8 -0
- package/dist/lib.cjs/types/vue/composables/useIdentityToken.d.ts +9 -0
- package/dist/lib.cjs/types/vue/composables/useManageMFA.d.ts +8 -0
- package/dist/lib.cjs/types/vue/composables/useSwap.d.ts +9 -0
- package/dist/lib.cjs/types/vue/composables/useSwitchChain.d.ts +10 -0
- package/dist/lib.cjs/types/vue/composables/useWalletConnectScanner.d.ts +9 -0
- package/dist/lib.cjs/types/vue/composables/useWalletServicesPlugin.d.ts +2 -0
- package/dist/lib.cjs/types/vue/composables/useWalletUI.d.ts +9 -0
- package/dist/lib.cjs/types/vue/composables/useWeb3Auth.d.ts +3 -0
- package/dist/lib.cjs/types/vue/composables/useWeb3AuthConnect.d.ts +10 -0
- package/dist/lib.cjs/types/vue/composables/useWeb3AuthDisconnect.d.ts +10 -0
- package/dist/lib.cjs/types/vue/composables/useWeb3AuthInner.d.ts +2 -0
- package/dist/lib.cjs/types/vue/composables/useWeb3AuthUser.d.ts +10 -0
- package/dist/lib.cjs/types/vue/{wallet-services-plugin/context.d.ts → context/WalletServicesContext.d.ts} +2 -2
- package/dist/lib.cjs/types/vue/context/index.d.ts +1 -0
- package/dist/lib.cjs/types/vue/index.d.ts +4 -2
- package/dist/lib.cjs/types/vue/interfaces.d.ts +30 -0
- package/dist/lib.cjs/types/vue/solana/composables/index.d.ts +4 -0
- package/dist/lib.cjs/types/vue/solana/composables/useSignAndSendTransaction.d.ts +10 -0
- package/dist/lib.cjs/types/vue/solana/composables/useSignMessage.d.ts +9 -0
- package/dist/lib.cjs/types/vue/solana/composables/useSignTransaction.d.ts +10 -0
- package/dist/lib.cjs/types/vue/solana/composables/useSolanaWallet.d.ts +9 -0
- package/dist/lib.cjs/types/vue/solana/index.d.ts +1 -0
- package/dist/lib.cjs/types/vue/wagmi/constants.d.ts +43 -0
- package/dist/lib.cjs/types/vue/wagmi/index.d.ts +2 -0
- package/dist/lib.cjs/types/vue/wagmi/interface.d.ts +4 -0
- package/dist/lib.cjs/types/vue/wagmi/provider.d.ts +17 -0
- package/dist/lib.cjs/vue/{wallet-services-plugin/WalletServicesProvider.js → WalletServicesInnerProvider.js} +26 -43
- package/dist/lib.cjs/vue/{no-modal/Web3AuthProvider.js → Web3AuthProvider.js} +45 -86
- package/dist/lib.cjs/vue/composables/useCheckout.js +45 -0
- package/dist/lib.cjs/vue/composables/useEnableMFA.js +43 -0
- package/dist/lib.cjs/vue/composables/useIdentityToken.js +55 -0
- package/dist/lib.cjs/vue/composables/useManageMFA.js +43 -0
- package/dist/lib.cjs/vue/composables/useSwap.js +45 -0
- package/dist/lib.cjs/vue/composables/useSwitchChain.js +43 -0
- package/dist/lib.cjs/vue/composables/useWalletConnectScanner.js +45 -0
- package/dist/lib.cjs/vue/composables/useWalletServicesPlugin.js +12 -0
- package/dist/lib.cjs/vue/composables/useWalletUI.js +45 -0
- package/dist/lib.cjs/vue/composables/useWeb3Auth.js +28 -0
- package/dist/lib.cjs/vue/composables/useWeb3AuthConnect.js +61 -0
- package/dist/lib.cjs/vue/composables/useWeb3AuthDisconnect.js +43 -0
- package/dist/lib.cjs/vue/{no-modal/composables/useWeb3Auth.js → composables/useWeb3AuthInner.js} +9 -9
- package/dist/lib.cjs/vue/composables/useWeb3AuthUser.js +64 -0
- package/dist/lib.cjs/vue/index.js +28 -8
- package/dist/lib.cjs/vue/solana/composables/useSignAndSendTransaction.js +36 -0
- package/dist/lib.cjs/vue/solana/composables/useSignMessage.js +38 -0
- package/dist/lib.cjs/vue/solana/composables/useSignTransaction.js +36 -0
- package/dist/lib.cjs/vue/solana/composables/useSolanaWallet.js +64 -0
- package/dist/lib.cjs/vue/solana/index.js +13 -0
- package/dist/lib.cjs/vue/wagmi/constants.js +16 -0
- package/dist/lib.cjs/vue/wagmi/index.js +7 -0
- package/dist/lib.cjs/vue/wagmi/provider.js +244 -0
- package/dist/lib.esm/base/connector/baseConnector.js +7 -1
- package/dist/lib.esm/base/connector/constants.js +4 -6
- package/dist/lib.esm/base/constants.js +20 -0
- package/dist/lib.esm/base/cookie.js +34 -0
- package/dist/lib.esm/base/deserialize.js +11 -0
- package/dist/lib.esm/base/errors/index.js +14 -22
- package/dist/lib.esm/base/loglevel.js +3 -0
- package/dist/lib.esm/base/plugin/errors.js +2 -0
- package/dist/lib.esm/base/utils.js +53 -13
- package/dist/lib.esm/base/wallet/index.js +4 -5
- package/dist/lib.esm/connectors/auth-connector/authConnector.js +84 -31
- package/dist/lib.esm/connectors/base-evm-connector/baseEvmConnector.js +2 -9
- package/dist/lib.esm/connectors/base-solana-connector/baseSolanaConnector.js +1 -8
- package/dist/lib.esm/connectors/coinbase-connector/coinbaseConnector.js +16 -15
- package/dist/lib.esm/connectors/coinbase-connector/index.js +1 -0
- package/dist/lib.esm/connectors/injected-evm-connector/injectedEvmConnector.js +13 -12
- package/dist/lib.esm/connectors/injected-solana-connector/walletStandardConnector.js +14 -17
- package/dist/lib.esm/connectors/metamask-connector/metamaskConnector.js +52 -27
- package/dist/lib.esm/connectors/utils.js +14 -1
- package/dist/lib.esm/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +8 -25
- package/dist/lib.esm/connectors/wallet-connect-v2-connector/config.js +20 -25
- package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +15 -15
- package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +1 -11
- package/dist/lib.esm/index.js +14 -16
- package/dist/lib.esm/noModal.js +223 -79
- package/dist/lib.esm/plugins/nft-checkout-plugin/embed.js +4 -1
- package/dist/lib.esm/plugins/nft-checkout-plugin/plugin.js +4 -10
- package/dist/lib.esm/plugins/wallet-services-plugin/plugin.js +7 -9
- package/dist/lib.esm/providers/account-abstraction-provider/index.js +2 -2
- package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +38 -21
- package/dist/lib.esm/providers/account-abstraction-provider/providers/utils.js +0 -10
- package/dist/lib.esm/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +26 -3
- package/dist/lib.esm/providers/base-provider/baseProvider.js +7 -9
- package/dist/lib.esm/providers/base-provider/utils.js +3 -3
- package/dist/lib.esm/providers/ethereum-mpc-provider/index.js +1 -0
- package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +5 -18
- package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +3 -13
- package/dist/lib.esm/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +1 -0
- package/dist/lib.esm/providers/ethereum-provider/providers/converter.js +1 -0
- package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +10 -11
- package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +3 -3
- package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +1 -0
- package/dist/lib.esm/providers/ethereum-provider/rpc/walletMidddleware.js +8 -0
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +2 -15
- package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +5 -12
- package/dist/lib.esm/providers/solana-provider/rpc/solanaRpcMiddlewares.js +1 -1
- package/dist/lib.esm/providers/solana-provider/solanaWallet.js +3 -0
- package/dist/lib.esm/providers/xrpl-provider/index.js +2 -0
- package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +3 -14
- package/dist/lib.esm/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +1 -0
- package/dist/lib.esm/react/Web3AuthProvider.js +17 -0
- package/dist/lib.esm/react/context/WalletServicesInnerContext.js +70 -0
- package/dist/lib.esm/react/context/Web3AuthInnerContext.js +129 -0
- package/dist/lib.esm/react/hooks/useCheckout.js +32 -0
- package/dist/lib.esm/react/hooks/useEnableMFA.js +28 -0
- package/dist/lib.esm/react/hooks/useIdentityToken.js +40 -0
- package/dist/lib.esm/react/hooks/useManageMFA.js +28 -0
- package/dist/lib.esm/react/hooks/useSwap.js +32 -0
- package/dist/lib.esm/react/hooks/useSwitchChain.js +30 -0
- package/dist/lib.esm/react/hooks/useWalletConnectScanner.js +32 -0
- package/dist/lib.esm/react/hooks/useWalletServicesPlugin.js +17 -0
- package/dist/lib.esm/react/hooks/useWalletUI.js +32 -0
- package/dist/lib.esm/react/hooks/useWeb3Auth.js +26 -0
- package/dist/lib.esm/react/hooks/useWeb3AuthConnect.js +46 -0
- package/dist/lib.esm/react/hooks/useWeb3AuthDisconnect.js +28 -0
- package/dist/lib.esm/react/hooks/useWeb3AuthInner.js +13 -0
- package/dist/lib.esm/react/hooks/useWeb3AuthUser.js +48 -0
- package/dist/lib.esm/react/index.js +14 -5
- package/dist/lib.esm/react/solana/hooks/useSignAndSendTransaction.js +33 -0
- package/dist/lib.esm/react/solana/hooks/useSignMessage.js +34 -0
- package/dist/lib.esm/react/solana/hooks/useSignTransaction.js +32 -0
- package/dist/lib.esm/react/solana/hooks/useSolanaWallet.js +42 -0
- package/dist/lib.esm/react/solana/index.js +4 -0
- package/dist/lib.esm/react/wagmi/constants.js +14 -0
- package/dist/lib.esm/react/wagmi/index.js +1 -0
- package/dist/lib.esm/react/wagmi/provider.js +179 -0
- package/dist/lib.esm/vue/WalletServicesInnerProvider.js +71 -0
- package/dist/lib.esm/vue/Web3AuthProvider.js +154 -0
- package/dist/lib.esm/vue/composables/useCheckout.js +32 -0
- package/dist/lib.esm/vue/composables/useEnableMFA.js +30 -0
- package/dist/lib.esm/vue/composables/useIdentityToken.js +42 -0
- package/dist/lib.esm/vue/composables/useManageMFA.js +30 -0
- package/dist/lib.esm/vue/composables/useSwap.js +32 -0
- package/dist/lib.esm/vue/composables/useSwitchChain.js +30 -0
- package/dist/lib.esm/vue/composables/useWalletConnectScanner.js +32 -0
- package/dist/lib.esm/vue/composables/useWalletServicesPlugin.js +10 -0
- package/dist/lib.esm/vue/composables/useWalletUI.js +32 -0
- package/dist/lib.esm/vue/composables/useWeb3Auth.js +26 -0
- package/dist/lib.esm/vue/composables/useWeb3AuthConnect.js +48 -0
- package/dist/lib.esm/vue/composables/useWeb3AuthDisconnect.js +30 -0
- package/dist/lib.esm/vue/composables/useWeb3AuthInner.js +11 -0
- package/dist/lib.esm/vue/composables/useWeb3AuthUser.js +51 -0
- package/dist/lib.esm/vue/index.js +15 -5
- package/dist/lib.esm/vue/solana/composables/useSignAndSendTransaction.js +34 -0
- package/dist/lib.esm/vue/solana/composables/useSignMessage.js +36 -0
- package/dist/lib.esm/vue/solana/composables/useSignTransaction.js +34 -0
- package/dist/lib.esm/vue/solana/composables/useSolanaWallet.js +51 -0
- package/dist/lib.esm/vue/solana/index.js +4 -0
- package/dist/lib.esm/vue/wagmi/constants.js +14 -0
- package/dist/lib.esm/vue/wagmi/index.js +1 -0
- package/dist/lib.esm/vue/wagmi/provider.js +237 -0
- package/dist/noModal.umd.min.js +1 -1
- package/dist/noModal.umd.min.js.LICENSE.txt +0 -26
- package/package.json +81 -20
- package/dist/lib.cjs/base/chain/config.js +0 -323
- package/dist/lib.cjs/react/no-modal/Web3AuthProvider.js +0 -15
- package/dist/lib.cjs/react/wallet-services-plugin/WalletServicesProvider.js +0 -16
- package/dist/lib.cjs/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +0 -26
- package/dist/lib.cjs/types/base/chain/config.d.ts +0 -5
- package/dist/lib.cjs/types/react/no-modal/hooks/index.d.ts +0 -1
- package/dist/lib.cjs/types/react/no-modal/hooks/useWeb3Auth.d.ts +0 -2
- package/dist/lib.cjs/types/react/no-modal/index.d.ts +0 -3
- package/dist/lib.cjs/types/react/no-modal/interfaces.d.ts +0 -15
- package/dist/lib.cjs/types/react/wallet-services-plugin/WalletServicesContext.d.ts +0 -7
- package/dist/lib.cjs/types/react/wallet-services-plugin/WalletServicesProvider.d.ts +0 -7
- package/dist/lib.cjs/types/react/wallet-services-plugin/hooks/index.d.ts +0 -1
- package/dist/lib.cjs/types/react/wallet-services-plugin/index.d.ts +0 -4
- package/dist/lib.cjs/types/react/wallet-services-plugin/interfaces.d.ts +0 -5
- package/dist/lib.cjs/types/vue/no-modal/composables/index.d.ts +0 -1
- package/dist/lib.cjs/types/vue/no-modal/composables/useWeb3Auth.d.ts +0 -2
- package/dist/lib.cjs/types/vue/no-modal/index.d.ts +0 -3
- package/dist/lib.cjs/types/vue/no-modal/interfaces.d.ts +0 -39
- package/dist/lib.cjs/types/vue/wallet-services-plugin/WalletServicesProvider.d.ts +0 -1
- package/dist/lib.cjs/types/vue/wallet-services-plugin/composables/index.d.ts +0 -1
- package/dist/lib.cjs/types/vue/wallet-services-plugin/composables/useWalletServicesPlugin.d.ts +0 -2
- package/dist/lib.cjs/types/vue/wallet-services-plugin/index.d.ts +0 -4
- package/dist/lib.cjs/types/vue/wallet-services-plugin/interfaces.d.ts +0 -13
- package/dist/lib.cjs/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +0 -24
- package/dist/lib.esm/base/chain/config.js +0 -318
- package/dist/lib.esm/react/no-modal/Web3AuthInnerContext.js +0 -197
- package/dist/lib.esm/react/no-modal/Web3AuthProvider.js +0 -13
- package/dist/lib.esm/react/no-modal/hooks/useWeb3Auth.js +0 -24
- package/dist/lib.esm/react/wallet-services-plugin/WalletServicesContext.js +0 -95
- package/dist/lib.esm/react/wallet-services-plugin/WalletServicesProvider.js +0 -14
- package/dist/lib.esm/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +0 -24
- package/dist/lib.esm/vue/no-modal/Web3AuthProvider.js +0 -203
- package/dist/lib.esm/vue/no-modal/composables/useWeb3Auth.js +0 -22
- package/dist/lib.esm/vue/wallet-services-plugin/WalletServicesProvider.js +0 -96
- package/dist/lib.esm/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +0 -22
- /package/dist/lib.cjs/types/react/{no-modal/Web3AuthProvider.d.ts → Web3AuthProvider.d.ts} +0 -0
- /package/dist/lib.cjs/types/react/{wallet-services-plugin/hooks → hooks}/useWalletServicesPlugin.d.ts +0 -0
- /package/dist/lib.cjs/types/vue/{no-modal/Web3AuthProvider.d.ts → Web3AuthProvider.d.ts} +0 -0
- /package/dist/lib.cjs/vue/{wallet-services-plugin/context.js → context/WalletServicesContext.js} +0 -0
- /package/dist/lib.esm/vue/{wallet-services-plugin/context.js → context/WalletServicesContext.js} +0 -0
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
4
|
+
var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
|
|
5
|
+
var react = require('react');
|
|
6
|
+
var viem = require('viem');
|
|
7
|
+
var wagmi = require('wagmi');
|
|
8
|
+
var connectors = require('wagmi/connectors');
|
|
9
|
+
var baseControllers = require('@toruslabs/base-controllers');
|
|
10
|
+
require('@babel/runtime/helpers/defineProperty');
|
|
11
|
+
require('@web3auth/auth');
|
|
12
|
+
var index = require('../../base/errors/index.js');
|
|
13
|
+
require('../../base/wallet/index.js');
|
|
14
|
+
require('../../base/connector/constants.js');
|
|
15
|
+
require('jwt-decode');
|
|
16
|
+
var loglevel = require('../../base/loglevel.js');
|
|
17
|
+
require('../../base/plugin/errors.js');
|
|
18
|
+
require('../../base/plugin/IPlugin.js');
|
|
19
|
+
require('@toruslabs/constants');
|
|
20
|
+
require('@toruslabs/http-helpers');
|
|
21
|
+
require('../context/WalletServicesInnerContext.js');
|
|
22
|
+
require('../context/Web3AuthInnerContext.js');
|
|
23
|
+
var useWeb3Auth = require('../hooks/useWeb3Auth.js');
|
|
24
|
+
var useWeb3AuthDisconnect = require('../hooks/useWeb3AuthDisconnect.js');
|
|
25
|
+
var constants = require('./constants.js');
|
|
26
|
+
|
|
27
|
+
const _excluded = ["children"];
|
|
28
|
+
const WEB3AUTH_CONNECTOR_ID = "web3auth";
|
|
29
|
+
// Helper to initialize connectors for the given wallets
|
|
30
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
31
|
+
async function setupConnector(provider, config) {
|
|
32
|
+
let connector = config.connectors.find(c => c.id === WEB3AUTH_CONNECTOR_ID);
|
|
33
|
+
if (connector) return connector;
|
|
34
|
+
// Create new connector if not already existing
|
|
35
|
+
connector = connectors.injected({
|
|
36
|
+
target: {
|
|
37
|
+
provider: provider,
|
|
38
|
+
id: WEB3AUTH_CONNECTOR_ID,
|
|
39
|
+
name: "Web3Auth"
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
const result = config._internal.connectors.setup(connector);
|
|
43
|
+
config._internal.connectors.setState(current => [...current, result]);
|
|
44
|
+
return result;
|
|
45
|
+
}
|
|
46
|
+
// Helper to connect a wallet and update wagmi state
|
|
47
|
+
async function connectWeb3AuthWithWagmi(connector, config) {
|
|
48
|
+
var _config$storage, _config$storage2;
|
|
49
|
+
await Promise.all([(_config$storage = config.storage) === null || _config$storage === void 0 ? void 0 : _config$storage.removeItem(`${connector.id}.disconnected`), (_config$storage2 = config.storage) === null || _config$storage2 === void 0 ? void 0 : _config$storage2.setItem("recentConnectorId", connector.id)]);
|
|
50
|
+
let chainId = await connector.getChainId();
|
|
51
|
+
if (!config.chains.find(c => c.id === chainId)) {
|
|
52
|
+
chainId = config.chains[0].id;
|
|
53
|
+
}
|
|
54
|
+
const accounts = await connector.getAccounts();
|
|
55
|
+
const connections = new Map([[connector.uid, {
|
|
56
|
+
accounts: [accounts[0]],
|
|
57
|
+
chainId,
|
|
58
|
+
connector
|
|
59
|
+
}]]);
|
|
60
|
+
config.setState(state => _objectSpread(_objectSpread({}, state), {}, {
|
|
61
|
+
chainId,
|
|
62
|
+
connections,
|
|
63
|
+
current: connector.uid,
|
|
64
|
+
status: "connected"
|
|
65
|
+
}));
|
|
66
|
+
}
|
|
67
|
+
async function disconnectWeb3AuthFromWagmi(config) {
|
|
68
|
+
config._internal.connectors.setState(prev => prev.filter(c => c.id !== WEB3AUTH_CONNECTOR_ID));
|
|
69
|
+
config.setState(state => _objectSpread(_objectSpread({}, state), {}, {
|
|
70
|
+
chainId: state.chainId,
|
|
71
|
+
connections: new Map(),
|
|
72
|
+
current: undefined,
|
|
73
|
+
status: "disconnected"
|
|
74
|
+
}));
|
|
75
|
+
}
|
|
76
|
+
function Web3AuthWagmiProvider({
|
|
77
|
+
children
|
|
78
|
+
}) {
|
|
79
|
+
const {
|
|
80
|
+
isConnected,
|
|
81
|
+
provider
|
|
82
|
+
} = useWeb3Auth.useWeb3Auth();
|
|
83
|
+
const {
|
|
84
|
+
disconnect
|
|
85
|
+
} = useWeb3AuthDisconnect.useWeb3AuthDisconnect();
|
|
86
|
+
const wagmiConfig = wagmi.useConfig();
|
|
87
|
+
const {
|
|
88
|
+
reconnect
|
|
89
|
+
} = wagmi.useReconnect();
|
|
90
|
+
wagmi.useAccountEffect({
|
|
91
|
+
onDisconnect: async () => {
|
|
92
|
+
loglevel.log.info("Disconnected from wagmi");
|
|
93
|
+
if (isConnected) await disconnect();
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
react.useEffect(() => {
|
|
97
|
+
(async () => {
|
|
98
|
+
if (isConnected && provider) {
|
|
99
|
+
const connector = await setupConnector(provider, wagmiConfig);
|
|
100
|
+
if (!connector) {
|
|
101
|
+
throw new Error("Failed to setup connector");
|
|
102
|
+
}
|
|
103
|
+
await connectWeb3AuthWithWagmi(connector, wagmiConfig);
|
|
104
|
+
reconnect();
|
|
105
|
+
} else if (!isConnected) {
|
|
106
|
+
if (wagmiConfig.state.status === "connected") {
|
|
107
|
+
await disconnectWeb3AuthFromWagmi(wagmiConfig);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
})();
|
|
111
|
+
}, [isConnected, wagmiConfig, provider, reconnect]);
|
|
112
|
+
return react.createElement(react.Fragment, null, children);
|
|
113
|
+
}
|
|
114
|
+
function WagmiProvider(_ref) {
|
|
115
|
+
let {
|
|
116
|
+
children
|
|
117
|
+
} = _ref,
|
|
118
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
119
|
+
const {
|
|
120
|
+
config
|
|
121
|
+
} = props;
|
|
122
|
+
const {
|
|
123
|
+
web3Auth,
|
|
124
|
+
isInitialized
|
|
125
|
+
} = useWeb3Auth.useWeb3Auth();
|
|
126
|
+
const finalConfig = react.useMemo(() => {
|
|
127
|
+
var _web3Auth$coreOptions;
|
|
128
|
+
if (!isInitialized) return constants.defaultWagmiConfig;
|
|
129
|
+
const finalConfig = _objectSpread(_objectSpread({
|
|
130
|
+
ssr: true
|
|
131
|
+
}, config), {}, {
|
|
132
|
+
chains: undefined,
|
|
133
|
+
connectors: [],
|
|
134
|
+
transports: {},
|
|
135
|
+
multiInjectedProviderDiscovery: false,
|
|
136
|
+
client: undefined
|
|
137
|
+
});
|
|
138
|
+
const wagmiChains = [];
|
|
139
|
+
if (isInitialized && web3Auth !== null && web3Auth !== void 0 && (_web3Auth$coreOptions = web3Auth.coreOptions) !== null && _web3Auth$coreOptions !== void 0 && _web3Auth$coreOptions.chains) {
|
|
140
|
+
var _web3Auth$currentChai;
|
|
141
|
+
const defaultChainId = (_web3Auth$currentChai = web3Auth.currentChain) === null || _web3Auth$currentChai === void 0 ? void 0 : _web3Auth$currentChai.chainId;
|
|
142
|
+
const chains = web3Auth.coreOptions.chains.filter(chain => chain.chainNamespace === baseControllers.CHAIN_NAMESPACES.EIP155);
|
|
143
|
+
if (chains.length === 0) throw index.WalletInitializationError.invalidParams("No valid chains found in web3auth config for wagmi.");
|
|
144
|
+
chains.forEach(chain => {
|
|
145
|
+
const wagmiChain = viem.defineChain({
|
|
146
|
+
id: Number.parseInt(chain.chainId, 16),
|
|
147
|
+
// id in number form
|
|
148
|
+
name: chain.displayName,
|
|
149
|
+
rpcUrls: {
|
|
150
|
+
default: {
|
|
151
|
+
http: [chain.rpcTarget],
|
|
152
|
+
webSocket: [chain.wsTarget]
|
|
153
|
+
}
|
|
154
|
+
},
|
|
155
|
+
blockExplorers: chain.blockExplorerUrl ? {
|
|
156
|
+
default: {
|
|
157
|
+
name: "explorer",
|
|
158
|
+
// TODO: correct name if chain config has it
|
|
159
|
+
url: chain.blockExplorerUrl
|
|
160
|
+
}
|
|
161
|
+
} : undefined,
|
|
162
|
+
nativeCurrency: {
|
|
163
|
+
name: chain.tickerName,
|
|
164
|
+
symbol: chain.ticker,
|
|
165
|
+
decimals: chain.decimals || 18
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
if (defaultChainId === chain.chainId) {
|
|
169
|
+
wagmiChains.unshift(wagmiChain);
|
|
170
|
+
} else {
|
|
171
|
+
wagmiChains.push(wagmiChain);
|
|
172
|
+
}
|
|
173
|
+
finalConfig.transports[wagmiChain.id] = chain.wsTarget ? viem.webSocket(chain.wsTarget) : viem.http(chain.rpcTarget);
|
|
174
|
+
});
|
|
175
|
+
finalConfig.chains = [wagmiChains[0], ...wagmiChains.slice(1)];
|
|
176
|
+
}
|
|
177
|
+
if (!finalConfig.chains) return;
|
|
178
|
+
return wagmi.createConfig(finalConfig);
|
|
179
|
+
}, [config, web3Auth, isInitialized]);
|
|
180
|
+
return react.createElement(wagmi.WagmiProvider, // typecast to WagmiProviderPropsBase to avoid type error
|
|
181
|
+
// as we are omitting the config prop from WagmiProviderProps
|
|
182
|
+
// and creating a new config object with the finalConfig
|
|
183
|
+
_objectSpread(_objectSpread({}, props), {}, {
|
|
184
|
+
config: finalConfig,
|
|
185
|
+
reconnectOnMount: false
|
|
186
|
+
}), react.createElement(Web3AuthWagmiProvider, null, children));
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
exports.WagmiProvider = WagmiProvider;
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import { SafeEventEmitter } from "@web3auth/auth";
|
|
2
2
|
import { ConnectorNamespaceType, CustomChainConfig } from "../chain/IChainInterface";
|
|
3
|
-
import
|
|
3
|
+
import { WALLET_CONNECTOR_TYPE } from "../wallet";
|
|
4
|
+
import type { BaseConnectorLoginParams, BaseConnectorSettings, CONNECTOR_CATEGORY_TYPE, CONNECTOR_STATUS_TYPE, ConnectorEvents, ConnectorInitOptions, IConnector, IProvider, UserAuthInfo, UserInfo } from "./interfaces";
|
|
4
5
|
export declare abstract class BaseConnector<T> extends SafeEventEmitter<ConnectorEvents> implements IConnector<T> {
|
|
5
6
|
connectorData?: unknown;
|
|
6
7
|
isInjected?: boolean;
|
|
8
|
+
icon?: string;
|
|
7
9
|
coreOptions: BaseConnectorSettings["coreOptions"];
|
|
8
10
|
protected rehydrated: boolean;
|
|
9
11
|
abstract connectorNamespace: ConnectorNamespaceType;
|
|
10
12
|
abstract type: CONNECTOR_CATEGORY_TYPE;
|
|
11
|
-
abstract name: string;
|
|
13
|
+
abstract name: WALLET_CONNECTOR_TYPE | string;
|
|
12
14
|
abstract status: CONNECTOR_STATUS_TYPE;
|
|
13
15
|
constructor(options: BaseConnectorSettings);
|
|
14
16
|
get connnected(): boolean;
|
|
@@ -23,9 +25,7 @@ export declare abstract class BaseConnector<T> extends SafeEventEmitter<Connecto
|
|
|
23
25
|
}, init?: boolean): void;
|
|
24
26
|
updateConnectorData(data: unknown): void;
|
|
25
27
|
abstract init(options?: ConnectorInitOptions): Promise<void>;
|
|
26
|
-
abstract connect(params: T &
|
|
27
|
-
chainId: string;
|
|
28
|
-
}): Promise<IProvider | null>;
|
|
28
|
+
abstract connect(params: T & BaseConnectorLoginParams): Promise<IProvider | null>;
|
|
29
29
|
abstract disconnect(): Promise<void>;
|
|
30
30
|
abstract getUserInfo(): Promise<Partial<UserInfo>>;
|
|
31
31
|
abstract enableMFA(params?: T): Promise<void>;
|
|
@@ -11,6 +11,8 @@ export declare const CONNECTOR_EVENTS: {
|
|
|
11
11
|
readonly CONNECTOR_DATA_UPDATED: "connector_data_updated";
|
|
12
12
|
readonly CACHE_CLEAR: "cache_clear";
|
|
13
13
|
readonly CONNECTORS_UPDATED: "connectors_updated";
|
|
14
|
+
readonly MFA_ENABLED: "mfa_enabled";
|
|
15
|
+
readonly REHYDRATION_ERROR: "rehydration_error";
|
|
14
16
|
readonly NOT_READY: "not_ready";
|
|
15
17
|
readonly READY: "ready";
|
|
16
18
|
readonly CONNECTING: "connecting";
|
|
@@ -23,7 +25,3 @@ export declare const CONNECTOR_CATEGORY: {
|
|
|
23
25
|
readonly EXTERNAL: "external";
|
|
24
26
|
readonly IN_APP: "in_app";
|
|
25
27
|
};
|
|
26
|
-
export declare const SMART_ACCOUNT_WALLET_SCOPE: {
|
|
27
|
-
readonly EMBEDDED: "embedded";
|
|
28
|
-
readonly ALL: "all";
|
|
29
|
-
};
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { AUTH_CONNECTION_TYPE, AuthUserInfo, ExtraLoginOptions, JRPCRequest, JRPCResponse, Maybe, RequestArguments, SafeEventEmitter, SendCallBack, UX_MODE, type UX_MODE_TYPE, WEB3AUTH_NETWORK, type WEB3AUTH_NETWORK_TYPE } from "@web3auth/auth";
|
|
2
|
-
import { ConnectorNamespaceType, CustomChainConfig } from "../chain/IChainInterface";
|
|
3
|
-
import { IWeb3AuthCoreOptions } from "../core/IWeb3Auth";
|
|
2
|
+
import type { ChainNamespaceType, ConnectorNamespaceType, CustomChainConfig } from "../chain/IChainInterface";
|
|
3
|
+
import type { IWeb3AuthCoreOptions } from "../core/IWeb3Auth";
|
|
4
4
|
import { Web3AuthError } from "../errors";
|
|
5
|
-
import { ProjectConfig } from "../interfaces";
|
|
6
|
-
import { ProviderEvents, SafeEventEmitterProvider } from "../provider/IProvider";
|
|
5
|
+
import type { LoginModeType, ProjectConfig } from "../interfaces";
|
|
6
|
+
import type { ProviderEvents, SafeEventEmitterProvider } from "../provider/IProvider";
|
|
7
|
+
import { WALLET_CONNECTOR_TYPE } from "../wallet";
|
|
7
8
|
import { CONNECTOR_CATEGORY, CONNECTOR_EVENTS, CONNECTOR_STATUS } from "./constants";
|
|
8
9
|
export type UserInfo = AuthUserInfo;
|
|
9
10
|
export { UX_MODE, UX_MODE_TYPE, WEB3AUTH_NETWORK, WEB3AUTH_NETWORK_TYPE };
|
|
@@ -45,12 +46,13 @@ export interface IBaseProvider<T> extends IProvider {
|
|
|
45
46
|
export interface IConnector<T> extends SafeEventEmitter {
|
|
46
47
|
connectorNamespace: ConnectorNamespaceType;
|
|
47
48
|
type: CONNECTOR_CATEGORY_TYPE;
|
|
48
|
-
name: string;
|
|
49
|
+
name: WALLET_CONNECTOR_TYPE | string;
|
|
49
50
|
status: CONNECTOR_STATUS_TYPE;
|
|
50
51
|
provider: IProvider | null;
|
|
51
52
|
connectorData?: unknown;
|
|
52
53
|
connnected: boolean;
|
|
53
54
|
isInjected?: boolean;
|
|
55
|
+
icon?: string;
|
|
54
56
|
init(options?: ConnectorInitOptions): Promise<void>;
|
|
55
57
|
disconnect(options?: {
|
|
56
58
|
cleanup: boolean;
|
|
@@ -65,16 +67,21 @@ export interface IConnector<T> extends SafeEventEmitter {
|
|
|
65
67
|
chainId: string;
|
|
66
68
|
}): Promise<void>;
|
|
67
69
|
authenticateUser(): Promise<UserAuthInfo>;
|
|
70
|
+
cleanup?(): Promise<void>;
|
|
68
71
|
}
|
|
69
72
|
export type ConnectorParams = {
|
|
70
73
|
projectConfig?: ProjectConfig;
|
|
71
74
|
coreOptions: IWeb3AuthCoreOptions;
|
|
72
75
|
};
|
|
76
|
+
export type BaseConnectorLoginParams = {
|
|
77
|
+
chainId: string;
|
|
78
|
+
};
|
|
73
79
|
export type ConnectorFn = (params: ConnectorParams) => IConnector<unknown>;
|
|
74
80
|
export type CONNECTED_EVENT_DATA = {
|
|
75
|
-
connector:
|
|
81
|
+
connector: WALLET_CONNECTOR_TYPE;
|
|
76
82
|
provider: IProvider;
|
|
77
83
|
reconnected: boolean;
|
|
84
|
+
loginMode?: LoginModeType;
|
|
78
85
|
};
|
|
79
86
|
export interface IConnectorDataEvent {
|
|
80
87
|
connectorName: string;
|
|
@@ -89,24 +96,26 @@ export type ConnectorEvents = {
|
|
|
89
96
|
connector: string;
|
|
90
97
|
}) => void;
|
|
91
98
|
[CONNECTOR_EVENTS.ERRORED]: (error: Web3AuthError) => void;
|
|
99
|
+
[CONNECTOR_EVENTS.REHYDRATION_ERROR]: (error: Web3AuthError) => void;
|
|
92
100
|
[CONNECTOR_EVENTS.CONNECTOR_DATA_UPDATED]: (data: IConnectorDataEvent) => void;
|
|
93
101
|
[CONNECTOR_EVENTS.CACHE_CLEAR]: () => void;
|
|
94
102
|
[CONNECTOR_EVENTS.CONNECTORS_UPDATED]: (data: {
|
|
95
103
|
connectors: IConnector<unknown>[];
|
|
96
104
|
}) => void;
|
|
105
|
+
[CONNECTOR_EVENTS.MFA_ENABLED]: (isMFAEnabled: boolean) => void;
|
|
97
106
|
};
|
|
98
107
|
export interface BaseConnectorConfig {
|
|
99
108
|
label: string;
|
|
109
|
+
icon?: string;
|
|
100
110
|
isInjected?: boolean;
|
|
111
|
+
chainNamespaces?: ChainNamespaceType[];
|
|
101
112
|
showOnModal?: boolean;
|
|
102
|
-
showOnMobile?: boolean;
|
|
103
|
-
showOnDesktop?: boolean;
|
|
104
113
|
}
|
|
105
114
|
export type LoginMethodConfig = Partial<Record<AUTH_CONNECTION_TYPE, {
|
|
106
115
|
/**
|
|
107
116
|
* Display Name. If not provided, we use the default for auth app
|
|
108
117
|
*/
|
|
109
|
-
name
|
|
118
|
+
name?: string;
|
|
110
119
|
/**
|
|
111
120
|
* Description for button. If provided, it renders as a full length button. else, icon button
|
|
112
121
|
*/
|
|
@@ -131,14 +140,6 @@ export type LoginMethodConfig = Partial<Record<AUTH_CONNECTION_TYPE, {
|
|
|
131
140
|
* Whether to show the login button on modal or not
|
|
132
141
|
*/
|
|
133
142
|
showOnModal?: boolean;
|
|
134
|
-
/**
|
|
135
|
-
* Whether to show the login button on desktop
|
|
136
|
-
*/
|
|
137
|
-
showOnDesktop?: boolean;
|
|
138
|
-
/**
|
|
139
|
-
* Whether to show the login button on mobile
|
|
140
|
-
*/
|
|
141
|
-
showOnMobile?: boolean;
|
|
142
143
|
/**
|
|
143
144
|
* Auth connection id of the provider.
|
|
144
145
|
*/
|
|
@@ -151,7 +152,23 @@ export type LoginMethodConfig = Partial<Record<AUTH_CONNECTION_TYPE, {
|
|
|
151
152
|
* ExtraLoginOption params to be used for social login.
|
|
152
153
|
*/
|
|
153
154
|
extraLoginOptions?: ExtraLoginOptions;
|
|
155
|
+
/**
|
|
156
|
+
* Auth connection type of the auth connector.
|
|
157
|
+
* Can be different from the original key.
|
|
158
|
+
*
|
|
159
|
+
* Example: This helps in customizing the google login button with auth0 custom connector.
|
|
160
|
+
*/
|
|
161
|
+
authConnection?: AUTH_CONNECTION_TYPE;
|
|
162
|
+
/**
|
|
163
|
+
* Whether is it default connector.
|
|
164
|
+
*
|
|
165
|
+
* @internal
|
|
166
|
+
*/
|
|
167
|
+
isDefault?: boolean;
|
|
154
168
|
}>>;
|
|
155
169
|
export type WalletConnectV2Data = {
|
|
156
170
|
uri: string;
|
|
157
171
|
};
|
|
172
|
+
export type MetaMaskConnectorData = {
|
|
173
|
+
uri: string;
|
|
174
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare const SMART_ACCOUNT_WALLET_SCOPE: {
|
|
2
|
+
readonly EMBEDDED: "embedded";
|
|
3
|
+
readonly ALL: "all";
|
|
4
|
+
};
|
|
5
|
+
export declare const MODAL_SIGN_IN_METHODS: {
|
|
6
|
+
readonly SOCIAL: "social";
|
|
7
|
+
readonly PASSWORDLESS: "passwordless";
|
|
8
|
+
readonly EXTERNAL_WALLETS: "externalWallets";
|
|
9
|
+
};
|
|
10
|
+
export declare const WIDGET_TYPE: {
|
|
11
|
+
readonly MODAL: "modal";
|
|
12
|
+
readonly EMBED: "embed";
|
|
13
|
+
};
|
|
14
|
+
export declare const WEB3AUTH_STATE_STORAGE_KEY = "Web3Auth-state";
|
|
15
|
+
export declare const LOGIN_MODE: {
|
|
16
|
+
readonly MODAL: "modal";
|
|
17
|
+
readonly NO_MODAL: "no-modal";
|
|
18
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { IWeb3AuthState } from "./interfaces";
|
|
2
|
+
export declare const cookieStorage: (options?: {
|
|
3
|
+
expiry?: number;
|
|
4
|
+
}) => {
|
|
5
|
+
getItem(key: string): string;
|
|
6
|
+
setItem(key: string, value: string): void;
|
|
7
|
+
removeItem(key: string): void;
|
|
8
|
+
};
|
|
9
|
+
export declare function cookieToWeb3AuthState(cookie?: string | null): IWeb3AuthState;
|
|
10
|
+
export declare function parseCookie(cookie: string, key: string): string;
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import { type AccountAbstractionMultiChainConfig } from "@toruslabs/ethereum-controllers";
|
|
2
|
-
import { type BUILD_ENV_TYPE, SafeEventEmitter, UX_MODE_TYPE, type WhiteLabelData } from "@web3auth/auth";
|
|
2
|
+
import { type BUILD_ENV_TYPE, type LoginParams, MfaSettings, SafeEventEmitter, UX_MODE_TYPE, type WhiteLabelData } from "@web3auth/auth";
|
|
3
3
|
import { type WsEmbedParams } from "@web3auth/ws-embed";
|
|
4
|
-
import { type CustomChainConfig } from "../chain/IChainInterface";
|
|
4
|
+
import { type ChainNamespaceType, type CustomChainConfig } from "../chain/IChainInterface";
|
|
5
5
|
import { CONNECTOR_EVENTS, type CONNECTOR_STATUS_TYPE, ConnectorEvents, type ConnectorFn, type IBaseProvider, type IConnector, type IProvider, type UserAuthInfo, type UserInfo, type WEB3AUTH_NETWORK_TYPE } from "../connector";
|
|
6
|
-
import { type IPlugin, PluginFn } from "../plugin";
|
|
7
|
-
import { type WALLET_CONNECTOR_TYPE } from "../wallet";
|
|
6
|
+
import { type IPlugin, type PluginFn } from "../plugin";
|
|
7
|
+
import { type WALLET_CONNECTOR_TYPE, WALLET_CONNECTORS } from "../wallet";
|
|
8
|
+
export type AuthLoginParams = LoginParams & {
|
|
9
|
+
loginHint?: string;
|
|
10
|
+
idToken?: string;
|
|
11
|
+
};
|
|
8
12
|
export type WalletServicesConfig = Omit<WsEmbedParams, "buildEnv" | "enableLogging" | "chainId" | "chains" | "confirmationStrategy" | "accountAbstractionConfig"> & {
|
|
9
13
|
/**
|
|
10
14
|
* Determines how to show confirmation screens
|
|
@@ -53,7 +57,7 @@ export interface IWeb3AuthCoreOptions {
|
|
|
53
57
|
*
|
|
54
58
|
* @defaultValue "local"
|
|
55
59
|
*/
|
|
56
|
-
storageType?: "session" | "local";
|
|
60
|
+
storageType?: "session" | "local" | "cookies";
|
|
57
61
|
/**
|
|
58
62
|
* sessionTime (in seconds) for idToken issued by Web3Auth for server side verification.
|
|
59
63
|
* @defaultValue 7 * 86400
|
|
@@ -62,15 +66,14 @@ export interface IWeb3AuthCoreOptions {
|
|
|
62
66
|
*/
|
|
63
67
|
sessionTime?: number;
|
|
64
68
|
/**
|
|
65
|
-
* Web3Auth Network to use for the session
|
|
66
|
-
* @defaultValue sapphire_mainnet
|
|
69
|
+
* Web3Auth Network to use for the session.
|
|
67
70
|
*/
|
|
68
|
-
web3AuthNetwork
|
|
71
|
+
web3AuthNetwork: WEB3AUTH_NETWORK_TYPE;
|
|
69
72
|
/**
|
|
70
73
|
* Uses core-kit key with web3auth provider
|
|
71
74
|
* @defaultValue false
|
|
72
75
|
*/
|
|
73
|
-
|
|
76
|
+
useSFAKey?: boolean;
|
|
74
77
|
/**
|
|
75
78
|
* WhiteLabel options for web3auth
|
|
76
79
|
*/
|
|
@@ -104,20 +107,44 @@ export interface IWeb3AuthCoreOptions {
|
|
|
104
107
|
* Private key provider for xrpl, mpc cases
|
|
105
108
|
*/
|
|
106
109
|
privateKeyProvider?: IBaseProvider<string>;
|
|
110
|
+
/**
|
|
111
|
+
* Whether to enable SSR mode
|
|
112
|
+
*
|
|
113
|
+
* @defaultValue false
|
|
114
|
+
*/
|
|
115
|
+
ssr?: boolean;
|
|
107
116
|
/**
|
|
108
117
|
* Build environment for Auth connector
|
|
109
118
|
* @internal
|
|
110
119
|
* @defaultValue BUILD_ENV.PRODUCTION
|
|
111
120
|
*/
|
|
112
121
|
authBuildEnv?: BUILD_ENV_TYPE;
|
|
122
|
+
/**
|
|
123
|
+
* MFA settings for the auth connector
|
|
124
|
+
*/
|
|
125
|
+
mfaSettings?: MfaSettings;
|
|
113
126
|
}
|
|
127
|
+
export type LoginParamMap = {
|
|
128
|
+
[WALLET_CONNECTORS.AUTH]: Partial<AuthLoginParams>;
|
|
129
|
+
[WALLET_CONNECTORS.METAMASK]: {
|
|
130
|
+
chainNamespace: ChainNamespaceType;
|
|
131
|
+
};
|
|
132
|
+
[WALLET_CONNECTORS.COINBASE]: {
|
|
133
|
+
chainNamespace: ChainNamespaceType;
|
|
134
|
+
};
|
|
135
|
+
[WALLET_CONNECTORS.WALLET_CONNECT_V2]: {
|
|
136
|
+
chainNamespace: ChainNamespaceType;
|
|
137
|
+
};
|
|
138
|
+
};
|
|
114
139
|
export interface IWeb3AuthCore extends SafeEventEmitter {
|
|
115
140
|
readonly coreOptions: IWeb3AuthCoreOptions;
|
|
116
|
-
connectedConnectorName:
|
|
141
|
+
connectedConnectorName: WALLET_CONNECTOR_TYPE | null;
|
|
117
142
|
currentChain: CustomChainConfig | undefined;
|
|
118
143
|
status: CONNECTOR_STATUS_TYPE;
|
|
119
144
|
provider: IProvider | null;
|
|
120
|
-
init(
|
|
145
|
+
init(options?: {
|
|
146
|
+
signal?: AbortSignal;
|
|
147
|
+
}): Promise<void>;
|
|
121
148
|
getConnector(connectorName: WALLET_CONNECTOR_TYPE): IConnector<unknown> | null;
|
|
122
149
|
getPlugin(pluginName: string): IPlugin | null;
|
|
123
150
|
logout(options?: {
|
|
@@ -137,9 +164,10 @@ export interface IWeb3Auth extends IWeb3AuthCore {
|
|
|
137
164
|
* Connect to a specific wallet connector
|
|
138
165
|
* @param walletName - Key of the wallet connector to use.
|
|
139
166
|
*/
|
|
140
|
-
connectTo<T>(walletName:
|
|
167
|
+
connectTo<T extends WALLET_CONNECTOR_TYPE>(walletName: T, loginParams?: LoginParamMap[T]): Promise<IProvider | null>;
|
|
141
168
|
enableMFA<T>(params: T): Promise<void>;
|
|
142
169
|
manageMFA<T>(params: T): Promise<void>;
|
|
170
|
+
cleanup(): Promise<void>;
|
|
143
171
|
}
|
|
144
172
|
export type Web3AuthNoModalEvents = ConnectorEvents & {
|
|
145
173
|
[CONNECTOR_EVENTS.READY]: () => void;
|
|
@@ -8,7 +8,6 @@ export interface IWeb3AuthError extends CustomError {
|
|
|
8
8
|
export type ErrorCodes = {
|
|
9
9
|
[key: number]: string;
|
|
10
10
|
};
|
|
11
|
-
export declare function serializeError(args: unknown[]): [Error, unknown[]];
|
|
12
11
|
export declare abstract class Web3AuthError extends CustomError implements IWeb3AuthError {
|
|
13
12
|
code: number;
|
|
14
13
|
message: string;
|
|
@@ -48,7 +47,7 @@ export declare class WalletLoginError extends Web3AuthError {
|
|
|
48
47
|
static mfaEnabled(extraMessage?: string, cause?: unknown): IWeb3AuthError;
|
|
49
48
|
static chainConfigNotAdded(extraMessage?: string, cause?: unknown): IWeb3AuthError;
|
|
50
49
|
static unsupportedOperation(extraMessage?: string, cause?: unknown): IWeb3AuthError;
|
|
51
|
-
static
|
|
50
|
+
static sfaKeyNotFound(extraMessage?: string, cause?: unknown): IWeb3AuthError;
|
|
52
51
|
static userNotLoggedIn(extraMessage?: string, cause?: unknown): IWeb3AuthError;
|
|
53
52
|
}
|
|
54
53
|
export declare class WalletOperationsError extends Web3AuthError {
|
|
@@ -1,33 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type { AuthUserInfo, LoginParams } from "@web3auth/auth";
|
|
3
|
-
import { CONNECTOR_STATUS_TYPE, IProvider, UserAuthInfo } from "../connector";
|
|
1
|
+
import { CONNECTOR_STATUS_TYPE, IProvider } from "../connector";
|
|
4
2
|
import { IPlugin } from "../plugin";
|
|
5
3
|
export interface IBaseWeb3AuthHookContext {
|
|
6
4
|
isInitialized: boolean;
|
|
7
5
|
isInitializing: boolean;
|
|
8
6
|
initError: unknown;
|
|
9
7
|
isConnected: boolean;
|
|
10
|
-
isConnecting: boolean;
|
|
11
|
-
connectError: unknown;
|
|
12
|
-
provider: IProvider | null;
|
|
13
|
-
userInfo: Partial<AuthUserInfo> | null;
|
|
14
8
|
isMFAEnabled: boolean;
|
|
9
|
+
provider: IProvider | null;
|
|
15
10
|
status: CONNECTOR_STATUS_TYPE | null;
|
|
16
|
-
enableMFA(params?: LoginParams): Promise<void>;
|
|
17
|
-
manageMFA(params?: LoginParams): Promise<void>;
|
|
18
|
-
logout(params?: {
|
|
19
|
-
cleanup: boolean;
|
|
20
|
-
}): Promise<void>;
|
|
21
11
|
getPlugin(pluginName: string): IPlugin | null;
|
|
22
|
-
|
|
23
|
-
switchChain(params: {
|
|
24
|
-
chainId: string;
|
|
25
|
-
}): Promise<void>;
|
|
26
|
-
}
|
|
27
|
-
export interface IBaseWalletServicesHookContext {
|
|
28
|
-
isPluginConnected: boolean;
|
|
29
|
-
showWalletConnectScanner(showWalletConnectParams?: BaseEmbedControllerState["showWalletConnect"]): Promise<void>;
|
|
30
|
-
showSwap(showSwapParams?: BaseEmbedControllerState["showSwap"]): Promise<void>;
|
|
31
|
-
showCheckout(showCheckoutParams?: BaseEmbedControllerState["showCheckout"]): Promise<void>;
|
|
32
|
-
showWalletUI(showWalletUiParams?: BaseEmbedControllerState["showWalletUi"]): Promise<void>;
|
|
12
|
+
setIsMFAEnabled(isMFAEnabled: boolean): void;
|
|
33
13
|
}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
export * from "./chain/config";
|
|
2
1
|
export * from "./chain/IChainInterface";
|
|
3
2
|
export * from "./composables";
|
|
4
3
|
export * from "./connector";
|
|
4
|
+
export * from "./constants";
|
|
5
|
+
export { cookieToWeb3AuthState } from "./cookie";
|
|
5
6
|
export * from "./core/IWeb3Auth";
|
|
6
7
|
export * from "./errors";
|
|
7
8
|
export * from "./hooks";
|
|
@@ -2,11 +2,18 @@ import { type BUTTON_POSITION_TYPE } from "@toruslabs/base-controllers";
|
|
|
2
2
|
import { type SmartAccountType } from "@toruslabs/ethereum-controllers";
|
|
3
3
|
import { AuthConnectionConfigItem, type WhiteLabelData } from "@web3auth/auth";
|
|
4
4
|
import { type ChainNamespaceType, type CustomChainConfig } from "./chain/IChainInterface";
|
|
5
|
-
import { SMART_ACCOUNT_WALLET_SCOPE } from "./
|
|
5
|
+
import { LOGIN_MODE, MODAL_SIGN_IN_METHODS, SMART_ACCOUNT_WALLET_SCOPE, WIDGET_TYPE } from "./constants";
|
|
6
|
+
import { WALLET_CONNECTOR_TYPE } from "./wallet";
|
|
6
7
|
export interface WhitelistResponse {
|
|
7
8
|
urls: string[];
|
|
8
9
|
signed_urls: Record<string, string>;
|
|
9
10
|
}
|
|
11
|
+
export interface IWeb3AuthState {
|
|
12
|
+
cachedConnector: string | null;
|
|
13
|
+
connectedConnectorName: WALLET_CONNECTOR_TYPE | null;
|
|
14
|
+
currentChainId: string;
|
|
15
|
+
idToken: string | null;
|
|
16
|
+
}
|
|
10
17
|
export type ChainsConfig = CustomChainConfig[];
|
|
11
18
|
export interface ExternalWalletsConfig {
|
|
12
19
|
disableAllRecommendedWallets?: boolean;
|
|
@@ -41,15 +48,14 @@ export interface WalletUiConfig {
|
|
|
41
48
|
portfolioWidgetPosition?: BUTTON_POSITION_TYPE;
|
|
42
49
|
defaultPortfolio?: "token" | "nft";
|
|
43
50
|
}
|
|
51
|
+
export type ModalSignInMethodType = (typeof MODAL_SIGN_IN_METHODS)[keyof typeof MODAL_SIGN_IN_METHODS];
|
|
52
|
+
export type WidgetType = (typeof WIDGET_TYPE)[keyof typeof WIDGET_TYPE];
|
|
44
53
|
export interface LoginModalConfig {
|
|
45
|
-
widgetType?:
|
|
54
|
+
widgetType?: WidgetType;
|
|
46
55
|
logoAlignment?: "left" | "center";
|
|
47
56
|
borderRadiusType?: "small" | "medium" | "large";
|
|
48
57
|
buttonRadiusType?: "pill" | "rounded" | "square";
|
|
49
|
-
|
|
50
|
-
privacyPolicy?: string;
|
|
51
|
-
enableMainSocialLoginButton?: boolean;
|
|
52
|
-
signInMethods?: ("social" | "passwordless" | "externalWallets")[];
|
|
58
|
+
signInMethods?: ModalSignInMethodType[];
|
|
53
59
|
addPreviousLoginHint?: boolean;
|
|
54
60
|
displayInstalledExternalWallets?: boolean;
|
|
55
61
|
displayExternalWalletsCount?: boolean;
|
|
@@ -96,6 +102,7 @@ export interface WalletRegistryItem {
|
|
|
96
102
|
}[];
|
|
97
103
|
imgExtension?: string;
|
|
98
104
|
}
|
|
105
|
+
export type LoginModeType = (typeof LOGIN_MODE)[keyof typeof LOGIN_MODE];
|
|
99
106
|
export type WalletRegistry = {
|
|
100
107
|
others: Record<string, WalletRegistryItem>;
|
|
101
108
|
default: Record<string, WalletRegistryItem>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type SafeEventEmitter, WhiteLabelData } from "@web3auth/auth";
|
|
2
2
|
import { type IWeb3AuthCore } from "../core/IWeb3Auth";
|
|
3
|
-
import { WALLET_CONNECTOR_TYPE } from "../wallet";
|
|
3
|
+
import { type WALLET_CONNECTOR_TYPE } from "../wallet";
|
|
4
4
|
export declare const PLUGIN_NAMESPACES: {
|
|
5
5
|
readonly MULTICHAIN: "multichain";
|
|
6
6
|
readonly EIP155: "eip155";
|
|
@@ -1,9 +1,21 @@
|
|
|
1
1
|
import { cloneDeep } from "@toruslabs/base-controllers";
|
|
2
|
+
import { BUILD_ENV_TYPE } from "@web3auth/auth";
|
|
3
|
+
import { type Chain } from "viem";
|
|
4
|
+
import { CustomChainConfig } from "./chain/IChainInterface";
|
|
2
5
|
import { type WEB3AUTH_NETWORK_TYPE } from "./connector";
|
|
3
6
|
import type { ProjectConfig, WalletRegistry } from "./interfaces";
|
|
4
7
|
export declare const isHexStrict: (hex: string) => boolean;
|
|
5
|
-
export declare const signerHost: (web3AuthNetwork?: WEB3AUTH_NETWORK_TYPE) => string;
|
|
6
|
-
export declare const fetchProjectConfig: (clientId
|
|
8
|
+
export declare const signerHost: (web3AuthNetwork?: WEB3AUTH_NETWORK_TYPE, authBuildEnv?: BUILD_ENV_TYPE) => string;
|
|
9
|
+
export declare const fetchProjectConfig: ({ clientId, web3AuthNetwork, aaProvider, authBuildEnv, }: {
|
|
10
|
+
clientId: string;
|
|
11
|
+
web3AuthNetwork: WEB3AUTH_NETWORK_TYPE;
|
|
12
|
+
aaProvider?: string;
|
|
13
|
+
authBuildEnv?: BUILD_ENV_TYPE;
|
|
14
|
+
}) => Promise<ProjectConfig>;
|
|
7
15
|
export declare const fetchWalletRegistry: (url?: string) => Promise<WalletRegistry>;
|
|
8
16
|
export declare const normalizeWalletName: (name: string) => string;
|
|
17
|
+
export declare const fromWagmiChain: (chain: Chain) => CustomChainConfig;
|
|
18
|
+
export declare function withAbort<T>(fn: () => Promise<T>, signal?: AbortSignal, onAbort?: () => void): Promise<T>;
|
|
19
|
+
export declare const isBrowser: () => boolean;
|
|
20
|
+
export declare const fromViemChain: (chain: Chain) => CustomChainConfig;
|
|
9
21
|
export { cloneDeep };
|