@web3auth/no-modal 10.0.0-beta.1 → 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 +2 -1
- package/dist/lib.cjs/base/connector/constants.js +3 -1
- package/dist/lib.cjs/base/constants.js +7 -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/utils.js +24 -6
- package/dist/lib.cjs/base/wallet/index.js +2 -4
- package/dist/lib.cjs/connectors/auth-connector/authConnector.js +63 -20
- package/dist/lib.cjs/connectors/coinbase-connector/coinbaseConnector.js +13 -5
- package/dist/lib.cjs/connectors/coinbase-connector/index.js +7 -0
- package/dist/lib.cjs/connectors/injected-evm-connector/injectedEvmConnector.js +7 -3
- package/dist/lib.cjs/connectors/injected-solana-connector/walletStandardConnector.js +7 -4
- package/dist/lib.cjs/connectors/metamask-connector/metamaskConnector.js +43 -15
- package/dist/lib.cjs/connectors/utils.js +10 -0
- package/dist/lib.cjs/connectors/wallet-connect-v2-connector/config.js +6 -1
- package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +6 -2
- package/dist/lib.cjs/index.js +13 -9
- package/dist/lib.cjs/noModal.js +190 -69
- package/dist/lib.cjs/plugins/nft-checkout-plugin/plugin.js +2 -2
- package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +1 -1
- package/dist/lib.cjs/providers/account-abstraction-provider/index.js +5 -0
- package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +29 -2
- 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/xrpl-provider/index.js +9 -0
- package/dist/lib.cjs/react/Web3AuthProvider.js +19 -0
- package/dist/lib.cjs/react/{wallet-services-plugin/WalletServicesContext.js → context/WalletServicesInnerContext.js} +18 -33
- package/dist/lib.cjs/react/{no-modal → context}/Web3AuthInnerContext.js +37 -95
- 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 +4 -5
- package/dist/lib.cjs/types/base/connector/constants.d.ts +2 -0
- package/dist/lib.cjs/types/base/connector/interfaces.d.ts +18 -16
- package/dist/lib.cjs/types/base/constants.d.ts +5 -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 +1 -0
- package/dist/lib.cjs/types/base/interfaces.d.ts +9 -4
- package/dist/lib.cjs/types/base/plugin/IPlugin.d.ts +1 -1
- package/dist/lib.cjs/types/base/utils.d.ts +3 -1
- 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 +3 -2
- 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/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 +6 -1
- package/dist/lib.esm/base/connector/constants.js +3 -1
- package/dist/lib.esm/base/constants.js +6 -1
- 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/plugin/errors.js +2 -0
- package/dist/lib.esm/base/utils.js +28 -12
- package/dist/lib.esm/base/wallet/index.js +2 -4
- package/dist/lib.esm/connectors/auth-connector/authConnector.js +83 -30
- package/dist/lib.esm/connectors/base-evm-connector/baseEvmConnector.js +1 -8
- 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 +11 -12
- package/dist/lib.esm/connectors/injected-solana-connector/walletStandardConnector.js +13 -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 +12 -14
- package/dist/lib.esm/noModal.js +217 -80
- 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 +37 -20
- 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 +4 -17
- 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 +79 -20
- 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/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/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
|
@@ -2,19 +2,17 @@ import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
|
2
2
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
3
3
|
import { cloneDeep, BUTTON_POSITION, CONFIRMATION_STRATEGY, CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
|
|
4
4
|
import { SecurePubSub } from '@toruslabs/secure-pub-sub';
|
|
5
|
-
import { BUILD_ENV, UX_MODE, Auth, SDK_MODE, SUPPORTED_KEY_CURVES, randomId, createHandler, PopupHandler } from '@web3auth/auth';
|
|
5
|
+
import { BUILD_ENV, UX_MODE, Auth, SDK_MODE, SUPPORTED_KEY_CURVES, randomId, createHandler, PopupHandler, getUserId } from '@web3auth/auth';
|
|
6
6
|
import deepmerge from 'deepmerge';
|
|
7
|
-
import {
|
|
7
|
+
import { parseToken } from '../utils.js';
|
|
8
|
+
import '@toruslabs/constants';
|
|
9
|
+
import '@toruslabs/http-helpers';
|
|
8
10
|
import { BaseConnector } from '../../base/connector/baseConnector.js';
|
|
11
|
+
import { WALLET_CONNECTORS } from '../../base/wallet/index.js';
|
|
12
|
+
import { CONNECTOR_NAMESPACES } from '../../base/chain/IChainInterface.js';
|
|
9
13
|
import { CONNECTOR_CATEGORY, CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
|
|
10
|
-
import 'jwt-decode';
|
|
11
14
|
import { WalletInitializationError, WalletLoginError, Web3AuthError } from '../../base/errors/index.js';
|
|
12
15
|
import { log } from '../../base/loglevel.js';
|
|
13
|
-
import '../../base/plugin/errors.js';
|
|
14
|
-
import '../../base/plugin/IPlugin.js';
|
|
15
|
-
import '@toruslabs/constants';
|
|
16
|
-
import '@toruslabs/http-helpers';
|
|
17
|
-
import { WALLET_CONNECTORS } from '../../base/wallet/index.js';
|
|
18
16
|
|
|
19
17
|
class AuthConnector extends BaseConnector {
|
|
20
18
|
constructor(params) {
|
|
@@ -32,6 +30,7 @@ class AuthConnector extends BaseConnector {
|
|
|
32
30
|
_defineProperty(this, "wsSettings", void 0);
|
|
33
31
|
_defineProperty(this, "wsEmbedInstance", null);
|
|
34
32
|
_defineProperty(this, "authConnectionConfig", []);
|
|
33
|
+
_defineProperty(this, "wsEmbedInstancePromise", null);
|
|
35
34
|
this.authOptions = params.connectorSettings;
|
|
36
35
|
this.loginSettings = params.loginSettings || {
|
|
37
36
|
authConnection: ""
|
|
@@ -71,7 +70,7 @@ class AuthConnector extends BaseConnector {
|
|
|
71
70
|
const isRedirectResult = this.authOptions.uxMode === UX_MODE.REDIRECT;
|
|
72
71
|
this.authOptions = _objectSpread(_objectSpread({}, this.authOptions), {}, {
|
|
73
72
|
replaceUrlOnRedirect: isRedirectResult,
|
|
74
|
-
useCoreKitKey: this.coreOptions.
|
|
73
|
+
useCoreKitKey: this.coreOptions.useSFAKey
|
|
75
74
|
});
|
|
76
75
|
this.authInstance = new Auth(_objectSpread(_objectSpread({}, this.authOptions), {}, {
|
|
77
76
|
clientId: this.coreOptions.clientId,
|
|
@@ -80,7 +79,10 @@ class AuthConnector extends BaseConnector {
|
|
|
80
79
|
authConnectionConfig: this.authConnectionConfig.filter(x => !x.isDefault)
|
|
81
80
|
}));
|
|
82
81
|
log.debug("initializing auth connector init", this.authOptions);
|
|
83
|
-
|
|
82
|
+
|
|
83
|
+
// making it async here to initialize provider.
|
|
84
|
+
const authInstancePromise = this.authInstance.init();
|
|
85
|
+
|
|
84
86
|
// Use this for xrpl, mpc cases
|
|
85
87
|
if (this.coreOptions.privateKeyProvider) {
|
|
86
88
|
this.privateKeyProvider = this.coreOptions.privateKeyProvider;
|
|
@@ -99,11 +101,14 @@ class AuthConnector extends BaseConnector {
|
|
|
99
101
|
modalZIndex: this.wsSettings.modalZIndex
|
|
100
102
|
});
|
|
101
103
|
const wsSupportedChains = chains.filter(x => x.chainNamespace === CHAIN_NAMESPACES.EIP155 || x.chainNamespace === CHAIN_NAMESPACES.SOLANA);
|
|
102
|
-
|
|
104
|
+
this.wsEmbedInstancePromise = this.wsEmbedInstance.init(_objectSpread(_objectSpread({}, this.wsSettings), {}, {
|
|
103
105
|
chains: wsSupportedChains,
|
|
104
106
|
chainId,
|
|
105
107
|
whiteLabel: _objectSpread(_objectSpread({}, this.authOptions.whiteLabel), this.wsSettings.whiteLabel)
|
|
106
|
-
}))
|
|
108
|
+
})).then(() => {
|
|
109
|
+
this.wsEmbedInstancePromise = null;
|
|
110
|
+
return;
|
|
111
|
+
});
|
|
107
112
|
break;
|
|
108
113
|
}
|
|
109
114
|
case CHAIN_NAMESPACES.XRPL:
|
|
@@ -122,10 +127,13 @@ class AuthConnector extends BaseConnector {
|
|
|
122
127
|
}
|
|
123
128
|
}
|
|
124
129
|
}
|
|
130
|
+
|
|
131
|
+
// wait for auth instance to be ready.
|
|
132
|
+
log.debug("initializing auth connector");
|
|
133
|
+
await authInstancePromise;
|
|
125
134
|
this.status = CONNECTOR_STATUS.READY;
|
|
126
135
|
this.emit(CONNECTOR_EVENTS.READY, WALLET_CONNECTORS.AUTH);
|
|
127
136
|
try {
|
|
128
|
-
log.debug("initializing auth connector");
|
|
129
137
|
const {
|
|
130
138
|
sessionId
|
|
131
139
|
} = this.authInstance || {};
|
|
@@ -135,10 +143,14 @@ class AuthConnector extends BaseConnector {
|
|
|
135
143
|
await this.connect({
|
|
136
144
|
chainId: options.chainId
|
|
137
145
|
});
|
|
146
|
+
} else if (!sessionId && options.autoConnect) {
|
|
147
|
+
// if here, this means that the connector is cached but the sessionId is not available.
|
|
148
|
+
// this can happen if the sessionId has expired.
|
|
149
|
+
// we are throwing an error to reset the cached state.
|
|
150
|
+
throw WalletLoginError.connectionError("Failed to rehydrate");
|
|
138
151
|
}
|
|
139
152
|
} catch (error) {
|
|
140
|
-
|
|
141
|
-
this.emit(CONNECTOR_EVENTS.ERRORED, error);
|
|
153
|
+
this.emit(CONNECTOR_EVENTS.REHYDRATION_ERROR, error);
|
|
142
154
|
}
|
|
143
155
|
}
|
|
144
156
|
async connect(params) {
|
|
@@ -151,12 +163,12 @@ class AuthConnector extends BaseConnector {
|
|
|
151
163
|
await this.connectWithProvider(params);
|
|
152
164
|
return this.provider;
|
|
153
165
|
} catch (error) {
|
|
154
|
-
var
|
|
166
|
+
var _message;
|
|
155
167
|
log.error("Failed to connect with auth provider", error);
|
|
156
168
|
// ready again to be connected
|
|
157
169
|
this.status = CONNECTOR_STATUS.READY;
|
|
158
170
|
this.emit(CONNECTOR_EVENTS.ERRORED, error);
|
|
159
|
-
if (error !== null && error !== void 0 && (
|
|
171
|
+
if (error !== null && error !== void 0 && (_message = error.message) !== null && _message !== void 0 && _message.includes("user closed popup")) {
|
|
160
172
|
throw WalletLoginError.popupClosed();
|
|
161
173
|
} else if (error instanceof Web3AuthError) {
|
|
162
174
|
throw error;
|
|
@@ -170,7 +182,9 @@ class AuthConnector extends BaseConnector {
|
|
|
170
182
|
if (this.status !== CONNECTOR_STATUS.CONNECTED) throw WalletLoginError.notConnectedError("Not connected with wallet");
|
|
171
183
|
if (!this.authInstance) throw WalletInitializationError.notReady("authInstance is not ready");
|
|
172
184
|
try {
|
|
173
|
-
await this.authInstance.enableMFA(params);
|
|
185
|
+
const result = await this.authInstance.enableMFA(params);
|
|
186
|
+
// In redirect mode, the result is not available immediately, so we emit the event when the result is available.
|
|
187
|
+
if (result) this.emit(CONNECTOR_EVENTS.MFA_ENABLED, result);
|
|
174
188
|
} catch (error) {
|
|
175
189
|
log.error("Failed to enable MFA with auth provider", error);
|
|
176
190
|
if (error instanceof Web3AuthError) {
|
|
@@ -227,6 +241,7 @@ class AuthConnector extends BaseConnector {
|
|
|
227
241
|
const userInfo = this.authInstance.getUserInfo();
|
|
228
242
|
return userInfo;
|
|
229
243
|
}
|
|
244
|
+
|
|
230
245
|
// we don't support switching between different namespaces, except for solana and evm
|
|
231
246
|
async switchChain(params, init = false) {
|
|
232
247
|
super.checkSwitchChainRequirements(params, init);
|
|
@@ -243,6 +258,7 @@ class AuthConnector extends BaseConnector {
|
|
|
243
258
|
const {
|
|
244
259
|
chainNamespace: newNamespace
|
|
245
260
|
} = this.getChain(newChainId);
|
|
261
|
+
|
|
246
262
|
// skip if chainId is the same
|
|
247
263
|
if (currentChainId === newChainId) return;
|
|
248
264
|
if (currentNamespace === CHAIN_NAMESPACES.SOLANA || currentNamespace === CHAIN_NAMESPACES.EIP155) {
|
|
@@ -263,19 +279,26 @@ class AuthConnector extends BaseConnector {
|
|
|
263
279
|
await ((_this$privateKeyProvi = this.privateKeyProvider) === null || _this$privateKeyProvi === void 0 ? void 0 : _this$privateKeyProvi.switchChain(params));
|
|
264
280
|
}
|
|
265
281
|
}
|
|
282
|
+
async cleanup() {
|
|
283
|
+
if (!this.authInstance) throw WalletInitializationError.notReady("authInstance is not ready");
|
|
284
|
+
await this.authInstance.cleanup();
|
|
285
|
+
if (this.wsEmbedInstance) {
|
|
286
|
+
this.wsEmbedInstance.clearInit();
|
|
287
|
+
}
|
|
288
|
+
}
|
|
266
289
|
getChain(chainId) {
|
|
267
290
|
return this.coreOptions.chains.find(x => x.chainId === chainId);
|
|
268
291
|
}
|
|
269
292
|
_getFinalPrivKey() {
|
|
270
293
|
if (!this.authInstance) return "";
|
|
271
294
|
let finalPrivKey = this.authInstance.privKey;
|
|
272
|
-
// coreKitKey is available only for custom
|
|
273
|
-
if (this.coreOptions.
|
|
295
|
+
// coreKitKey is available only for custom connections by default
|
|
296
|
+
if (this.coreOptions.useSFAKey) {
|
|
274
297
|
// this is to check if the user has already logged in but coreKitKey is not available.
|
|
275
|
-
// when
|
|
298
|
+
// when useSFAKey is set to true.
|
|
276
299
|
// This is to ensure that when there is no user session active, we don't throw an exception.
|
|
277
300
|
if (this.authInstance.privKey && !this.authInstance.coreKitKey) {
|
|
278
|
-
throw WalletLoginError.
|
|
301
|
+
throw WalletLoginError.sfaKeyNotFound();
|
|
279
302
|
}
|
|
280
303
|
finalPrivKey = this.authInstance.coreKitKey;
|
|
281
304
|
}
|
|
@@ -289,8 +312,12 @@ class AuthConnector extends BaseConnector {
|
|
|
289
312
|
const {
|
|
290
313
|
chainNamespace
|
|
291
314
|
} = chainConfig;
|
|
315
|
+
|
|
292
316
|
// if not logged in then login
|
|
293
317
|
const keyAvailable = chainNamespace === CHAIN_NAMESPACES.EIP155 || chainNamespace === CHAIN_NAMESPACES.SOLANA ? (_this$authInstance = this.authInstance) === null || _this$authInstance === void 0 ? void 0 : _this$authInstance.sessionId : this._getFinalPrivKey();
|
|
318
|
+
if (params.idToken) params.extraLoginOptions = _objectSpread(_objectSpread({}, params.extraLoginOptions), {}, {
|
|
319
|
+
id_token: params.idToken
|
|
320
|
+
});
|
|
294
321
|
if (!keyAvailable || (_params$extraLoginOpt = params.extraLoginOptions) !== null && _params$extraLoginOpt !== void 0 && _params$extraLoginOpt.id_token) {
|
|
295
322
|
var _params$extraLoginOpt2;
|
|
296
323
|
// always use "other" curve to return token with all keys encoded so wallet service can switch between evm and solana namespace
|
|
@@ -302,8 +329,11 @@ class AuthConnector extends BaseConnector {
|
|
|
302
329
|
await this.connectWithSocialLogin(loginParams);
|
|
303
330
|
}
|
|
304
331
|
}
|
|
332
|
+
|
|
305
333
|
// setup WS embed if chainNamespace is EIP155 or SOLANA
|
|
306
334
|
if (chainNamespace === CHAIN_NAMESPACES.EIP155 || chainNamespace === CHAIN_NAMESPACES.SOLANA) {
|
|
335
|
+
// wait for ws embed instance to be ready.
|
|
336
|
+
if (this.wsEmbedInstancePromise) await this.wsEmbedInstancePromise;
|
|
307
337
|
const {
|
|
308
338
|
sessionId,
|
|
309
339
|
sessionNamespace
|
|
@@ -352,19 +382,20 @@ class AuthConnector extends BaseConnector {
|
|
|
352
382
|
});
|
|
353
383
|
if (!(providerConfig !== null && providerConfig !== void 0 && providerConfig.authConnection)) throw WalletLoginError.connectionError("Invalid auth connection.");
|
|
354
384
|
const jwtParams = _objectSpread(_objectSpread(_objectSpread({}, providerConfig.jwtParameters || {}), params.extraLoginOptions || {}), {}, {
|
|
355
|
-
login_hint: params.
|
|
385
|
+
login_hint: params.loginHint || ((_params$extraLoginOpt3 = params.extraLoginOptions) === null || _params$extraLoginOpt3 === void 0 ? void 0 : _params$extraLoginOpt3.login_hint)
|
|
356
386
|
});
|
|
357
387
|
const nonce = randomId();
|
|
388
|
+
|
|
358
389
|
// post a message to the auth provider to indicate that login has been initiated.
|
|
359
390
|
const loginParams = cloneDeep(params);
|
|
360
391
|
loginParams.extraLoginOptions = _objectSpread(_objectSpread({}, loginParams.extraLoginOptions || {}), {}, {
|
|
361
|
-
login_hint: params.
|
|
392
|
+
login_hint: params.loginHint || ((_params$extraLoginOpt4 = params.extraLoginOptions) === null || _params$extraLoginOpt4 === void 0 ? void 0 : _params$extraLoginOpt4.login_hint)
|
|
362
393
|
});
|
|
363
394
|
delete loginParams.chainId;
|
|
364
395
|
const popupParams = {
|
|
365
396
|
authConnection: params.authConnection,
|
|
366
397
|
authConnectionId: providerConfig.authConnectionId,
|
|
367
|
-
clientId: providerConfig.clientId,
|
|
398
|
+
clientId: providerConfig.clientId || jwtParams.client_id,
|
|
368
399
|
groupedAuthConnectionId: providerConfig.groupedAuthConnectionId,
|
|
369
400
|
redirect_uri: `${this.authInstance.baseUrl}/auth`,
|
|
370
401
|
jwtParams,
|
|
@@ -393,6 +424,7 @@ class AuthConnector extends BaseConnector {
|
|
|
393
424
|
this.authInstance.postLoginCancelledMessage(nonce);
|
|
394
425
|
reject(error);
|
|
395
426
|
});
|
|
427
|
+
|
|
396
428
|
// this is to close the popup when the login is finished.
|
|
397
429
|
const securePubSub = new SecurePubSub({
|
|
398
430
|
sameIpCheck: true
|
|
@@ -424,12 +456,13 @@ class AuthConnector extends BaseConnector {
|
|
|
424
456
|
});
|
|
425
457
|
}
|
|
426
458
|
connectWithJwtLogin(params) {
|
|
427
|
-
var _params$extraLoginOpt5;
|
|
459
|
+
var _params$extraLoginOpt5, _params$extraLoginOpt7;
|
|
428
460
|
const loginConfig = this.getOAuthProviderConfig({
|
|
429
461
|
authConnection: params.authConnection,
|
|
430
462
|
authConnectionId: params.authConnectionId,
|
|
431
463
|
groupedAuthConnectionId: params.groupedAuthConnectionId
|
|
432
464
|
});
|
|
465
|
+
|
|
433
466
|
// throw error only when we cannot find the login config and authConnectionId is not provided in the params.
|
|
434
467
|
// otherwise, we will use the params to create a new auth connection config in the auth instance.
|
|
435
468
|
if (!(loginConfig !== null && loginConfig !== void 0 && loginConfig.authConnection) && !params.authConnectionId) throw WalletLoginError.connectionError("Invalid auth connection.");
|
|
@@ -441,8 +474,26 @@ class AuthConnector extends BaseConnector {
|
|
|
441
474
|
});
|
|
442
475
|
}
|
|
443
476
|
const loginParams = cloneDeep(params);
|
|
444
|
-
|
|
445
|
-
|
|
477
|
+
const finalExtraLoginOptions = _objectSpread(_objectSpread({}, (loginConfig === null || loginConfig === void 0 ? void 0 : loginConfig.jwtParameters) || {}), params.extraLoginOptions || {});
|
|
478
|
+
let finalUserId;
|
|
479
|
+
if (params.loginHint || (_params$extraLoginOpt5 = params.extraLoginOptions) !== null && _params$extraLoginOpt5 !== void 0 && _params$extraLoginOpt5.login_hint) {
|
|
480
|
+
var _params$extraLoginOpt6;
|
|
481
|
+
finalUserId = params.loginHint || ((_params$extraLoginOpt6 = params.extraLoginOptions) === null || _params$extraLoginOpt6 === void 0 ? void 0 : _params$extraLoginOpt6.login_hint);
|
|
482
|
+
} else if ((_params$extraLoginOpt7 = params.extraLoginOptions) !== null && _params$extraLoginOpt7 !== void 0 && _params$extraLoginOpt7.id_token) {
|
|
483
|
+
if (typeof finalExtraLoginOptions.isUserIdCaseSensitive === "undefined") {
|
|
484
|
+
throw WalletInitializationError.invalidParams(`isUserIdCaseSensitive is required for this connection: ${finalExtraLoginOptions.authConnection}`);
|
|
485
|
+
}
|
|
486
|
+
const {
|
|
487
|
+
payload
|
|
488
|
+
} = parseToken(params.extraLoginOptions.id_token);
|
|
489
|
+
finalUserId = getUserId(payload, loginParams.authConnection, finalExtraLoginOptions.userIdField, finalExtraLoginOptions.isUserIdCaseSensitive);
|
|
490
|
+
} else {
|
|
491
|
+
throw WalletLoginError.connectionError("Invalid login hint or id_token");
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
// Adds the login_hint to the extraLoginOptions.
|
|
495
|
+
loginParams.extraLoginOptions = _objectSpread(_objectSpread({}, finalExtraLoginOptions), {}, {
|
|
496
|
+
login_hint: finalUserId
|
|
446
497
|
});
|
|
447
498
|
delete loginParams.chainId;
|
|
448
499
|
return this.authInstance.postLoginInitiatedMessage(loginParams);
|
|
@@ -491,6 +542,7 @@ const authConnector = params => {
|
|
|
491
542
|
},
|
|
492
543
|
// default settings
|
|
493
544
|
connectorSettings, (params === null || params === void 0 ? void 0 : params.connectorSettings) || {}]);
|
|
545
|
+
|
|
494
546
|
// WS settings
|
|
495
547
|
const {
|
|
496
548
|
enableKeyExport,
|
|
@@ -533,6 +585,7 @@ const authConnector = params => {
|
|
|
533
585
|
enableLogging: coreOptions.enableLogging,
|
|
534
586
|
enableKeyExport: enableKeyExport
|
|
535
587
|
});
|
|
588
|
+
|
|
536
589
|
// Core options
|
|
537
590
|
if (coreOptions.privateKeyProvider) coreOptions.privateKeyProvider.setKeyExportFlag(isKeyExportEnabled);
|
|
538
591
|
return new AuthConnector({
|
|
@@ -540,8 +593,8 @@ const authConnector = params => {
|
|
|
540
593
|
walletServicesSettings: finalWsSettings,
|
|
541
594
|
loginSettings: params === null || params === void 0 ? void 0 : params.loginSettings,
|
|
542
595
|
coreOptions,
|
|
543
|
-
|
|
544
|
-
|
|
596
|
+
authConnectionConfig: projectConfig.embeddedWalletAuth,
|
|
597
|
+
mfaSettings: coreOptions.mfaSettings
|
|
545
598
|
});
|
|
546
599
|
};
|
|
547
600
|
};
|
|
@@ -1,16 +1,9 @@
|
|
|
1
1
|
import { signChallenge, verifySignedChallenge } from '@toruslabs/base-controllers';
|
|
2
2
|
import { EVM_METHOD_TYPES } from '@web3auth/ws-embed';
|
|
3
|
+
import { getSavedToken, checkIfTokenIsExpired, saveToken, clearToken } from '../../base/connector/utils.js';
|
|
3
4
|
import { BaseConnector } from '../../base/connector/baseConnector.js';
|
|
4
5
|
import { CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
|
|
5
|
-
import '@web3auth/auth';
|
|
6
|
-
import { getSavedToken, checkIfTokenIsExpired, saveToken, clearToken } from '../../base/connector/utils.js';
|
|
7
6
|
import { WalletLoginError, WalletInitializationError } from '../../base/errors/index.js';
|
|
8
|
-
import '../../base/loglevel.js';
|
|
9
|
-
import '../../base/plugin/errors.js';
|
|
10
|
-
import '../../base/plugin/IPlugin.js';
|
|
11
|
-
import '@toruslabs/constants';
|
|
12
|
-
import '@toruslabs/http-helpers';
|
|
13
|
-
import '../../base/wallet/index.js';
|
|
14
7
|
|
|
15
8
|
class BaseEvmConnector extends BaseConnector {
|
|
16
9
|
async init(_) {}
|
|
@@ -2,15 +2,8 @@ import { signChallenge, verifySignedChallenge } from '@toruslabs/base-controller
|
|
|
2
2
|
import { SOLANA_METHOD_TYPES } from '@web3auth/ws-embed';
|
|
3
3
|
import { BaseConnector } from '../../base/connector/baseConnector.js';
|
|
4
4
|
import { CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
|
|
5
|
-
import '@web3auth/auth';
|
|
6
|
-
import { getSavedToken, checkIfTokenIsExpired, saveToken, clearToken } from '../../base/connector/utils.js';
|
|
7
5
|
import { WalletLoginError, WalletInitializationError } from '../../base/errors/index.js';
|
|
8
|
-
import '../../base/
|
|
9
|
-
import '../../base/plugin/errors.js';
|
|
10
|
-
import '../../base/plugin/IPlugin.js';
|
|
11
|
-
import '@toruslabs/constants';
|
|
12
|
-
import '@toruslabs/http-helpers';
|
|
13
|
-
import '../../base/wallet/index.js';
|
|
6
|
+
import { getSavedToken, checkIfTokenIsExpired, saveToken, clearToken } from '../../base/connector/utils.js';
|
|
14
7
|
|
|
15
8
|
class BaseSolanaConnector extends BaseConnector {
|
|
16
9
|
async init(_) {}
|
|
@@ -1,19 +1,11 @@
|
|
|
1
1
|
import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
2
2
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
3
|
-
import {
|
|
3
|
+
import { BaseEvmConnector } from '../base-evm-connector/baseEvmConnector.js';
|
|
4
4
|
import { CONNECTOR_NAMESPACES } from '../../base/chain/IChainInterface.js';
|
|
5
|
-
import '@web3auth/auth';
|
|
6
|
-
import { WalletLoginError, Web3AuthError } from '../../base/errors/index.js';
|
|
7
|
-
import { WALLET_CONNECTORS } from '../../base/wallet/index.js';
|
|
8
|
-
import { CONNECTOR_CATEGORY, CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
|
|
9
|
-
import 'jwt-decode';
|
|
10
|
-
import '../../base/loglevel.js';
|
|
11
|
-
import '../../base/plugin/errors.js';
|
|
12
|
-
import '../../base/plugin/IPlugin.js';
|
|
13
5
|
import { CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
|
|
14
|
-
import '
|
|
15
|
-
import '
|
|
16
|
-
import {
|
|
6
|
+
import { CONNECTOR_CATEGORY, CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
|
|
7
|
+
import { WALLET_CONNECTORS } from '../../base/wallet/index.js';
|
|
8
|
+
import { WalletLoginError, Web3AuthError } from '../../base/errors/index.js';
|
|
17
9
|
|
|
18
10
|
class CoinbaseConnector extends BaseEvmConnector {
|
|
19
11
|
constructor(connectorOptions) {
|
|
@@ -44,6 +36,9 @@ class CoinbaseConnector extends BaseEvmConnector {
|
|
|
44
36
|
super.checkInitializationRequirements({
|
|
45
37
|
chainConfig
|
|
46
38
|
});
|
|
39
|
+
const {
|
|
40
|
+
createCoinbaseWalletSDK
|
|
41
|
+
} = await import('@coinbase/wallet-sdk');
|
|
47
42
|
const coinbaseInstance = createCoinbaseWalletSDK(_objectSpread(_objectSpread({}, this.coinbaseOptions), {}, {
|
|
48
43
|
preference: {
|
|
49
44
|
options: this.coinbaseOptions.options || "smartWalletOnly"
|
|
@@ -58,12 +53,17 @@ class CoinbaseConnector extends BaseEvmConnector {
|
|
|
58
53
|
try {
|
|
59
54
|
if (options.autoConnect) {
|
|
60
55
|
this.rehydrated = true;
|
|
61
|
-
await this.connect({
|
|
56
|
+
const provider = await this.connect({
|
|
62
57
|
chainId: options.chainId
|
|
63
58
|
});
|
|
59
|
+
// the connect function could fail silently as well.
|
|
60
|
+
if (!provider) {
|
|
61
|
+
this.rehydrated = false;
|
|
62
|
+
throw WalletLoginError.connectionError("Failed to rehydrate.");
|
|
63
|
+
}
|
|
64
64
|
}
|
|
65
65
|
} catch (error) {
|
|
66
|
-
this.emit(CONNECTOR_EVENTS.
|
|
66
|
+
this.emit(CONNECTOR_EVENTS.REHYDRATION_ERROR, error);
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
async connect({
|
|
@@ -102,8 +102,9 @@ class CoinbaseConnector extends BaseEvmConnector {
|
|
|
102
102
|
} catch (error) {
|
|
103
103
|
// ready again to be connected
|
|
104
104
|
this.status = CONNECTOR_STATUS.READY;
|
|
105
|
+
// only throw error if the connector is not rehydrated.
|
|
106
|
+
if (!this.rehydrated) this.emit(CONNECTOR_EVENTS.ERRORED, error);
|
|
105
107
|
this.rehydrated = false;
|
|
106
|
-
this.emit(CONNECTOR_EVENTS.ERRORED, error);
|
|
107
108
|
if (error instanceof Web3AuthError) throw error;
|
|
108
109
|
throw WalletLoginError.connectionError("Failed to login with coinbase wallet", error);
|
|
109
110
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { coinbaseConnector } from './coinbaseConnector.js';
|
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
-
import { CONNECTOR_NAMESPACES } from '../../base/chain/IChainInterface.js';
|
|
3
|
-
import '@web3auth/auth';
|
|
4
|
-
import { WalletLoginError, Web3AuthError } from '../../base/errors/index.js';
|
|
5
|
-
import '../../base/wallet/index.js';
|
|
6
|
-
import { CONNECTOR_CATEGORY, CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
|
|
7
|
-
import 'jwt-decode';
|
|
8
|
-
import { log } from '../../base/loglevel.js';
|
|
9
|
-
import '../../base/plugin/errors.js';
|
|
10
|
-
import '../../base/plugin/IPlugin.js';
|
|
11
2
|
import { normalizeWalletName } from '../../base/utils.js';
|
|
12
3
|
import { BaseEvmConnector } from '../base-evm-connector/baseEvmConnector.js';
|
|
4
|
+
import { CONNECTOR_NAMESPACES } from '../../base/chain/IChainInterface.js';
|
|
13
5
|
import { CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
|
|
6
|
+
import { CONNECTOR_CATEGORY, CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
|
|
7
|
+
import { log } from '../../base/loglevel.js';
|
|
8
|
+
import { WalletLoginError, Web3AuthError } from '../../base/errors/index.js';
|
|
14
9
|
|
|
15
10
|
class InjectedEvmConnector extends BaseEvmConnector {
|
|
16
11
|
constructor(options) {
|
|
@@ -47,12 +42,16 @@ class InjectedEvmConnector extends BaseEvmConnector {
|
|
|
47
42
|
log.debug(`initializing ${this.name} injected connector`);
|
|
48
43
|
if (options.autoConnect) {
|
|
49
44
|
this.rehydrated = true;
|
|
50
|
-
await this.connect({
|
|
45
|
+
const provider = await this.connect({
|
|
51
46
|
chainId: options.chainId
|
|
52
47
|
});
|
|
48
|
+
if (!provider) {
|
|
49
|
+
this.rehydrated = false;
|
|
50
|
+
throw WalletLoginError.connectionError("Failed to rehydrate.");
|
|
51
|
+
}
|
|
53
52
|
}
|
|
54
53
|
} catch (error) {
|
|
55
|
-
this.emit(CONNECTOR_EVENTS.
|
|
54
|
+
this.emit(CONNECTOR_EVENTS.REHYDRATION_ERROR, error);
|
|
56
55
|
}
|
|
57
56
|
}
|
|
58
57
|
async connect({
|
|
@@ -97,8 +96,8 @@ class InjectedEvmConnector extends BaseEvmConnector {
|
|
|
97
96
|
} catch (error) {
|
|
98
97
|
// ready again to be connected
|
|
99
98
|
this.status = CONNECTOR_STATUS.READY;
|
|
99
|
+
if (!this.rehydrated) this.emit(CONNECTOR_EVENTS.ERRORED, error);
|
|
100
100
|
this.rehydrated = false;
|
|
101
|
-
this.emit(CONNECTOR_EVENTS.ERRORED, error);
|
|
102
101
|
if (error instanceof Web3AuthError) throw error;
|
|
103
102
|
throw WalletLoginError.connectionError(`Failed to login with ${this.name} injected wallet`);
|
|
104
103
|
}
|
|
@@ -1,21 +1,14 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
2
|
import { StandardConnect, StandardDisconnect } from '@wallet-standard/features';
|
|
3
|
+
import { BaseSolanaConnector } from '../base-solana-connector/baseSolanaConnector.js';
|
|
4
|
+
import { WalletStandardProvider } from '../../providers/solana-provider/providers/injectedProviders/walletStandardProvider.js';
|
|
5
|
+
import { getSolanaChainByChainConfig } from '../../providers/solana-provider/providers/injectedProviders/utils.js';
|
|
6
|
+
import { normalizeWalletName } from '../../base/utils.js';
|
|
3
7
|
import { CONNECTOR_NAMESPACES } from '../../base/chain/IChainInterface.js';
|
|
4
|
-
import '@
|
|
5
|
-
import { WalletLoginError } from '../../base/errors/index.js';
|
|
6
|
-
import '../../base/wallet/index.js';
|
|
8
|
+
import { CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
|
|
7
9
|
import { CONNECTOR_CATEGORY, CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
|
|
8
|
-
import 'jwt-decode';
|
|
9
10
|
import { log } from '../../base/loglevel.js';
|
|
10
|
-
import '../../base/
|
|
11
|
-
import '../../base/plugin/IPlugin.js';
|
|
12
|
-
import { normalizeWalletName } from '../../base/utils.js';
|
|
13
|
-
import { getSolanaChainByChainConfig } from '../../providers/solana-provider/providers/injectedProviders/utils.js';
|
|
14
|
-
import { WalletStandardProvider } from '../../providers/solana-provider/providers/injectedProviders/walletStandardProvider.js';
|
|
15
|
-
import { CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
|
|
16
|
-
import '@web3auth/ws-embed';
|
|
17
|
-
import '@solana/web3.js';
|
|
18
|
-
import { BaseSolanaConnector } from '../base-solana-connector/baseSolanaConnector.js';
|
|
11
|
+
import { WalletLoginError } from '../../base/errors/index.js';
|
|
19
12
|
|
|
20
13
|
class WalletStandardConnector extends BaseSolanaConnector {
|
|
21
14
|
constructor(options) {
|
|
@@ -63,13 +56,16 @@ class WalletStandardConnector extends BaseSolanaConnector {
|
|
|
63
56
|
log.debug("initializing solana injected connector");
|
|
64
57
|
if (options.autoConnect) {
|
|
65
58
|
this.rehydrated = true;
|
|
66
|
-
await this.connect({
|
|
59
|
+
const provider = await this.connect({
|
|
67
60
|
chainId: options.chainId
|
|
68
61
|
});
|
|
62
|
+
if (!provider) {
|
|
63
|
+
this.rehydrated = false;
|
|
64
|
+
throw WalletLoginError.connectionError("Failed to rehydrate.");
|
|
65
|
+
}
|
|
69
66
|
}
|
|
70
67
|
} catch (error) {
|
|
71
|
-
|
|
72
|
-
this.emit(CONNECTOR_EVENTS.ERRORED, error);
|
|
68
|
+
this.emit(CONNECTOR_EVENTS.REHYDRATION_ERROR, error);
|
|
73
69
|
}
|
|
74
70
|
}
|
|
75
71
|
async connect({
|
|
@@ -99,8 +95,8 @@ class WalletStandardConnector extends BaseSolanaConnector {
|
|
|
99
95
|
} catch (error) {
|
|
100
96
|
// ready again to be connected
|
|
101
97
|
this.status = CONNECTOR_STATUS.READY;
|
|
98
|
+
if (!this.rehydrated) this.emit(CONNECTOR_EVENTS.ERRORED, error);
|
|
102
99
|
this.rehydrated = false;
|
|
103
|
-
this.emit(CONNECTOR_EVENTS.ERRORED, error);
|
|
104
100
|
throw error;
|
|
105
101
|
}
|
|
106
102
|
}
|