@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
|
@@ -1,26 +1,20 @@
|
|
|
1
|
+
import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
1
2
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
3
|
import { MetaMaskSDK } from '@metamask/sdk';
|
|
3
4
|
import deepmerge from 'deepmerge';
|
|
5
|
+
import { getSiteIcon, getSiteName } from '../utils.js';
|
|
6
|
+
import { BaseEvmConnector } from '../base-evm-connector/baseEvmConnector.js';
|
|
4
7
|
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
8
|
import { CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
|
|
14
|
-
import '
|
|
15
|
-
import '
|
|
16
|
-
import {
|
|
17
|
-
import { getSiteIcon, getSiteName } from '../utils.js';
|
|
9
|
+
import { CONNECTOR_CATEGORY, CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
|
|
10
|
+
import { WALLET_CONNECTORS } from '../../base/wallet/index.js';
|
|
11
|
+
import { WalletLoginError, Web3AuthError } from '../../base/errors/index.js';
|
|
18
12
|
|
|
19
13
|
class MetaMaskConnector extends BaseEvmConnector {
|
|
20
14
|
constructor(connectorOptions) {
|
|
21
15
|
super(connectorOptions);
|
|
22
|
-
_defineProperty(this, "connectorNamespace", CONNECTOR_NAMESPACES.
|
|
23
|
-
_defineProperty(this, "currentChainNamespace", CHAIN_NAMESPACES.
|
|
16
|
+
_defineProperty(this, "connectorNamespace", CONNECTOR_NAMESPACES.MULTICHAIN);
|
|
17
|
+
_defineProperty(this, "currentChainNamespace", CHAIN_NAMESPACES.OTHER);
|
|
24
18
|
_defineProperty(this, "type", CONNECTOR_CATEGORY.EXTERNAL);
|
|
25
19
|
_defineProperty(this, "name", WALLET_CONNECTORS.METAMASK);
|
|
26
20
|
_defineProperty(this, "status", CONNECTOR_STATUS.NOT_READY);
|
|
@@ -39,34 +33,52 @@ class MetaMaskConnector extends BaseEvmConnector {
|
|
|
39
33
|
throw new Error("Not implemented");
|
|
40
34
|
}
|
|
41
35
|
async init(options) {
|
|
36
|
+
var _metamaskOptions$useD;
|
|
42
37
|
await super.init(options);
|
|
43
38
|
const chainConfig = this.coreOptions.chains.find(x => x.chainId === options.chainId);
|
|
44
39
|
super.checkInitializationRequirements({
|
|
45
40
|
chainConfig
|
|
46
41
|
});
|
|
42
|
+
|
|
47
43
|
// Detect app metadata
|
|
48
44
|
const iconUrl = await getSiteIcon(window);
|
|
45
|
+
// TODO: handle ssr
|
|
49
46
|
const appMetadata = {
|
|
50
|
-
name: getSiteName(window),
|
|
51
|
-
url: window.location.origin,
|
|
47
|
+
name: getSiteName(window) || "web3auth",
|
|
48
|
+
url: window.location.origin || "https://web3auth.io",
|
|
52
49
|
iconUrl
|
|
53
50
|
};
|
|
54
|
-
|
|
51
|
+
|
|
52
|
+
// initialize the MetaMask SDK
|
|
55
53
|
const metamaskOptions = deepmerge(this.metamaskOptions || {}, {
|
|
56
54
|
dappMetadata: appMetadata
|
|
57
55
|
});
|
|
58
|
-
this.metamaskSDK = new MetaMaskSDK(metamaskOptions)
|
|
56
|
+
this.metamaskSDK = new MetaMaskSDK(_objectSpread(_objectSpread({}, metamaskOptions), {}, {
|
|
57
|
+
_source: "web3auth",
|
|
58
|
+
useDeeplink: (_metamaskOptions$useD = metamaskOptions.useDeeplink) !== null && _metamaskOptions$useD !== void 0 ? _metamaskOptions$useD : true
|
|
59
|
+
}));
|
|
60
|
+
// Work around: in case there is an existing SDK instance in memory (window.mmsdk exists), it won't initialize the new SDK instance again
|
|
61
|
+
// and return the existing instance instead of undefined (this is an assumption, not sure if it's a bug or feature of the MetaMask SDK)
|
|
62
|
+
const initResult = await this.metamaskSDK.init();
|
|
63
|
+
if (initResult) {
|
|
64
|
+
this.metamaskSDK = initResult;
|
|
65
|
+
}
|
|
66
|
+
this.isInjected = this.metamaskSDK.isExtensionActive();
|
|
59
67
|
this.status = CONNECTOR_STATUS.READY;
|
|
60
68
|
this.emit(CONNECTOR_EVENTS.READY, WALLET_CONNECTORS.METAMASK);
|
|
61
69
|
try {
|
|
62
70
|
if (options.autoConnect) {
|
|
63
71
|
this.rehydrated = true;
|
|
64
|
-
await this.connect({
|
|
72
|
+
const provider = await this.connect({
|
|
65
73
|
chainId: options.chainId
|
|
66
74
|
});
|
|
75
|
+
if (!provider) {
|
|
76
|
+
this.rehydrated = false;
|
|
77
|
+
throw WalletLoginError.connectionError("Failed to rehydrate.");
|
|
78
|
+
}
|
|
67
79
|
}
|
|
68
80
|
} catch (error) {
|
|
69
|
-
this.emit(CONNECTOR_EVENTS.
|
|
81
|
+
this.emit(CONNECTOR_EVENTS.REHYDRATION_ERROR, error);
|
|
70
82
|
}
|
|
71
83
|
}
|
|
72
84
|
async connect({
|
|
@@ -76,14 +88,26 @@ class MetaMaskConnector extends BaseEvmConnector {
|
|
|
76
88
|
if (!this.metamaskSDK) throw WalletLoginError.notConnectedError("Connector is not initialized");
|
|
77
89
|
const chainConfig = this.coreOptions.chains.find(x => x.chainId === chainId);
|
|
78
90
|
if (!chainConfig) throw WalletLoginError.connectionError("Chain config is not available");
|
|
79
|
-
this.status = CONNECTOR_STATUS.CONNECTING;
|
|
80
|
-
this.emit(CONNECTOR_EVENTS.CONNECTING, {
|
|
81
|
-
connector: WALLET_CONNECTORS.METAMASK
|
|
82
|
-
});
|
|
83
91
|
try {
|
|
84
|
-
|
|
92
|
+
if (this.status !== CONNECTOR_STATUS.CONNECTING) {
|
|
93
|
+
var _this$metamaskOptions;
|
|
94
|
+
this.status = CONNECTOR_STATUS.CONNECTING;
|
|
95
|
+
this.emit(CONNECTOR_EVENTS.CONNECTING, {
|
|
96
|
+
connector: WALLET_CONNECTORS.METAMASK
|
|
97
|
+
});
|
|
98
|
+
if (!this.metamaskSDK.isExtensionActive() && (_this$metamaskOptions = this.metamaskOptions) !== null && _this$metamaskOptions !== void 0 && _this$metamaskOptions.headless) {
|
|
99
|
+
// when metamask is not injected and headless is true, broadcast the uri to the login modal
|
|
100
|
+
this.metamaskSDK.getProvider().on("display_uri", uri => {
|
|
101
|
+
this.updateConnectorData({
|
|
102
|
+
uri
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
await this.metamaskSDK.connect();
|
|
107
|
+
}
|
|
85
108
|
this.metamaskProvider = this.metamaskSDK.getProvider();
|
|
86
109
|
if (!this.metamaskProvider) throw WalletLoginError.notConnectedError("Failed to connect with provider");
|
|
110
|
+
|
|
87
111
|
// switch chain if not connected to the right chain
|
|
88
112
|
const currentChainId = await this.metamaskProvider.request({
|
|
89
113
|
method: "eth_chainId"
|
|
@@ -91,6 +115,7 @@ class MetaMaskConnector extends BaseEvmConnector {
|
|
|
91
115
|
if (currentChainId !== chainConfig.chainId) {
|
|
92
116
|
await this.switchChain(chainConfig, true);
|
|
93
117
|
}
|
|
118
|
+
|
|
94
119
|
// handle disconnect event
|
|
95
120
|
const accountDisconnectHandler = accounts => {
|
|
96
121
|
if (accounts.length === 0) this.disconnect();
|
|
@@ -109,8 +134,8 @@ class MetaMaskConnector extends BaseEvmConnector {
|
|
|
109
134
|
} catch (error) {
|
|
110
135
|
// ready again to be connected
|
|
111
136
|
this.status = CONNECTOR_STATUS.READY;
|
|
137
|
+
if (!this.rehydrated) this.emit(CONNECTOR_EVENTS.ERRORED, error);
|
|
112
138
|
this.rehydrated = false;
|
|
113
|
-
this.emit(CONNECTOR_EVENTS.ERRORED, error);
|
|
114
139
|
if (error instanceof Web3AuthError) throw error;
|
|
115
140
|
throw WalletLoginError.connectionError("Failed to login with MetaMask wallet", error);
|
|
116
141
|
}
|
|
@@ -148,7 +173,7 @@ class MetaMaskConnector extends BaseEvmConnector {
|
|
|
148
173
|
} catch (error) {
|
|
149
174
|
// If the error code is 4902, the network needs to be added
|
|
150
175
|
if ((error === null || error === void 0 ? void 0 : error.code) === 4902) {
|
|
151
|
-
const chainConfig = this.coreOptions.chains.find(x => x.chainId === params.chainId && x.chainNamespace
|
|
176
|
+
const chainConfig = this.coreOptions.chains.find(x => x.chainId === params.chainId && [CHAIN_NAMESPACES.EIP155, CHAIN_NAMESPACES.SOLANA].includes(x.chainNamespace));
|
|
152
177
|
await this.addChain(chainConfig);
|
|
153
178
|
await requestSwitchChain();
|
|
154
179
|
} else {
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { safeatob } from '@web3auth/auth';
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* Extracts a name for the site from the DOM
|
|
3
5
|
*/
|
|
@@ -18,6 +20,7 @@ const getSiteName = window => {
|
|
|
18
20
|
}
|
|
19
21
|
return window.location.hostname;
|
|
20
22
|
};
|
|
23
|
+
|
|
21
24
|
/**
|
|
22
25
|
* Returns whether the given image URL exists
|
|
23
26
|
* @param url - the url of the image
|
|
@@ -35,6 +38,7 @@ function imgExists(url) {
|
|
|
35
38
|
}
|
|
36
39
|
});
|
|
37
40
|
}
|
|
41
|
+
|
|
38
42
|
/**
|
|
39
43
|
* Extracts an icon for the site from the DOM
|
|
40
44
|
*/
|
|
@@ -42,11 +46,13 @@ async function getSiteIcon(window) {
|
|
|
42
46
|
const {
|
|
43
47
|
document
|
|
44
48
|
} = window;
|
|
49
|
+
|
|
45
50
|
// Use the site's favicon if it exists
|
|
46
51
|
let icon = document.querySelector('head > link[rel="shortcut icon"]');
|
|
47
52
|
if (icon && (await imgExists(icon.href))) {
|
|
48
53
|
return icon.href;
|
|
49
54
|
}
|
|
55
|
+
|
|
50
56
|
// Search through available icons in no particular order
|
|
51
57
|
icon = Array.from(document.querySelectorAll('head > link[rel="icon"]')).find(_icon => Boolean(_icon.href)) || null;
|
|
52
58
|
if (icon && (await imgExists(icon.href))) {
|
|
@@ -54,5 +60,12 @@ async function getSiteIcon(window) {
|
|
|
54
60
|
}
|
|
55
61
|
return null;
|
|
56
62
|
}
|
|
63
|
+
function parseToken(token) {
|
|
64
|
+
const [header, payload] = token.split(".");
|
|
65
|
+
return {
|
|
66
|
+
header: JSON.parse(safeatob(header)),
|
|
67
|
+
payload: JSON.parse(safeatob(payload))
|
|
68
|
+
};
|
|
69
|
+
}
|
|
57
70
|
|
|
58
|
-
export { getSiteIcon, getSiteName };
|
|
71
|
+
export { getSiteIcon, getSiteName, parseToken };
|
|
@@ -2,34 +2,15 @@ import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
|
2
2
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
3
3
|
import { getAccountsFromNamespaces, parseAccountId } from '@walletconnect/utils';
|
|
4
4
|
import { providerErrors, JRPCEngine, providerFromEngine } from '@web3auth/auth';
|
|
5
|
-
import {
|
|
6
|
-
import { WalletLoginError } from '../../base/errors/index.js';
|
|
7
|
-
import '../../base/wallet/index.js';
|
|
8
|
-
import '../../base/connector/constants.js';
|
|
9
|
-
import 'jwt-decode';
|
|
10
|
-
import { log } from '../../base/loglevel.js';
|
|
11
|
-
import '../../base/plugin/errors.js';
|
|
12
|
-
import '../../base/plugin/IPlugin.js';
|
|
13
|
-
import '@toruslabs/constants';
|
|
14
|
-
import '@toruslabs/http-helpers';
|
|
15
|
-
import { BaseProvider } from '../../providers/base-provider/baseProvider.js';
|
|
16
|
-
import '../../providers/base-provider/CommonJRPCProvider.js';
|
|
17
|
-
import '../../providers/base-provider/commonPrivateKeyProvider.js';
|
|
18
|
-
import '../../providers/base-provider/utils.js';
|
|
19
|
-
import '@ethereumjs/util';
|
|
20
|
-
import 'bignumber.js';
|
|
21
|
-
import '../../providers/ethereum-provider/providers/converter.js';
|
|
22
|
-
import 'bn.js';
|
|
23
|
-
import '../../providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js';
|
|
5
|
+
import { switchChain, getAccounts, getEthProviderHandlers, getSolProviderHandlers } from './walletConnectV2Utils.js';
|
|
24
6
|
import { createEthMiddleware, createEthChainSwitchMiddleware } from '../../providers/ethereum-provider/rpc/ethRpcMiddlewares.js';
|
|
25
7
|
import { createEthJsonRpcClient } from '../../providers/ethereum-provider/rpc/jrpcClient.js';
|
|
26
|
-
import '@solana/wallet-standard-features';
|
|
27
|
-
import '@solana/web3.js';
|
|
28
|
-
import '@toruslabs/bs58';
|
|
29
|
-
import { createSolanaJsonRpcClient } from '../../providers/solana-provider/rpc/JrpcClient.js';
|
|
30
8
|
import { createSolanaMiddleware } from '../../providers/solana-provider/rpc/solanaRpcMiddlewares.js';
|
|
31
|
-
import '
|
|
32
|
-
import {
|
|
9
|
+
import { createSolanaJsonRpcClient } from '../../providers/solana-provider/rpc/JrpcClient.js';
|
|
10
|
+
import { BaseProvider } from '../../providers/base-provider/baseProvider.js';
|
|
11
|
+
import { CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
|
|
12
|
+
import { WalletLoginError } from '../../base/errors/index.js';
|
|
13
|
+
import { log } from '../../base/loglevel.js';
|
|
33
14
|
|
|
34
15
|
var _WalletConnectV2Provider;
|
|
35
16
|
class WalletConnectV2Provider extends BaseProvider {
|
|
@@ -89,6 +70,7 @@ class WalletConnectV2Provider extends BaseProvider {
|
|
|
89
70
|
chainId
|
|
90
71
|
});
|
|
91
72
|
}
|
|
73
|
+
|
|
92
74
|
// no need to implement this method in wallet connect v2.
|
|
93
75
|
async lookupNetwork(_, chainId) {
|
|
94
76
|
return chainId;
|
|
@@ -215,6 +197,7 @@ class WalletConnectV2Provider extends BaseProvider {
|
|
|
215
197
|
if (!data) return;
|
|
216
198
|
const connectedChainId = data;
|
|
217
199
|
const connectedHexChainId = `0x${connectedChainId.toString(16)}`;
|
|
200
|
+
|
|
218
201
|
// Check if chainId changed and trigger event
|
|
219
202
|
const {
|
|
220
203
|
currentChain
|
|
@@ -1,19 +1,7 @@
|
|
|
1
|
-
import { CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
|
|
2
|
-
import '@babel/runtime/helpers/defineProperty';
|
|
3
|
-
import '@web3auth/auth';
|
|
4
|
-
import '../../base/errors/index.js';
|
|
5
|
-
import '../../base/wallet/index.js';
|
|
6
|
-
import '../../base/connector/constants.js';
|
|
7
|
-
import 'jwt-decode';
|
|
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
1
|
import { getSiteIcon, getSiteName } from '../utils.js';
|
|
2
|
+
import { CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
|
|
14
3
|
|
|
15
|
-
|
|
16
|
-
(function (DEFAULT_EIP155_METHODS) {
|
|
4
|
+
let DEFAULT_EIP155_METHODS = /*#__PURE__*/function (DEFAULT_EIP155_METHODS) {
|
|
17
5
|
DEFAULT_EIP155_METHODS["ETH_SEND_TRANSACTION"] = "eth_sendTransaction";
|
|
18
6
|
DEFAULT_EIP155_METHODS["ETH_SIGN_TRANSACTION"] = "eth_signTransaction";
|
|
19
7
|
DEFAULT_EIP155_METHODS["ETH_SIGN"] = "eth_sign";
|
|
@@ -23,27 +11,29 @@ var DEFAULT_EIP155_METHODS;
|
|
|
23
11
|
DEFAULT_EIP155_METHODS["ETH_SIGN_TYPED_DATA_V4"] = "eth_signTypedData_v4";
|
|
24
12
|
DEFAULT_EIP155_METHODS["ADD_ETHEREUM_CHAIN"] = "wallet_addEthereumChain";
|
|
25
13
|
DEFAULT_EIP155_METHODS["SWITCH_ETHEREUM_CHAIN"] = "wallet_switchEthereumChain";
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
14
|
+
return DEFAULT_EIP155_METHODS;
|
|
15
|
+
}({});
|
|
16
|
+
let DEFAULT_SOLANA_METHODS = /*#__PURE__*/function (DEFAULT_SOLANA_METHODS) {
|
|
29
17
|
DEFAULT_SOLANA_METHODS["SIGN_TRANSACTION"] = "solana_signTransaction";
|
|
30
18
|
DEFAULT_SOLANA_METHODS["SIGN_MESSAGE"] = "solana_signMessage";
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
19
|
+
return DEFAULT_SOLANA_METHODS;
|
|
20
|
+
}({});
|
|
21
|
+
let DEFAULT_EIP_155_EVENTS = /*#__PURE__*/function (DEFAULT_EIP_155_EVENTS) {
|
|
34
22
|
DEFAULT_EIP_155_EVENTS["ETH_CHAIN_CHANGED"] = "chainChanged";
|
|
35
23
|
DEFAULT_EIP_155_EVENTS["ETH_ACCOUNTS_CHANGED"] = "accountsChanged";
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
24
|
+
return DEFAULT_EIP_155_EVENTS;
|
|
25
|
+
}({});
|
|
26
|
+
let DEFAULT_SOLANA_EVENTS = /*#__PURE__*/function (DEFAULT_SOLANA_EVENTS) {
|
|
39
27
|
DEFAULT_SOLANA_EVENTS["SOL_CHAIN_CHANGED"] = "chainChanged";
|
|
40
28
|
DEFAULT_SOLANA_EVENTS["SOL_ACCOUNTS_CHANGED"] = "accountsChanged";
|
|
41
|
-
|
|
29
|
+
return DEFAULT_SOLANA_EVENTS;
|
|
30
|
+
}({});
|
|
42
31
|
const SOLANA_CAIP_CHAIN_MAP = {
|
|
43
32
|
"0x65": "5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
|
|
44
33
|
"0x66": "4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z",
|
|
45
34
|
"0x67": "EtWTRABZaYq6iMfeYKouRu166VU2xqa1"
|
|
46
35
|
};
|
|
36
|
+
|
|
47
37
|
/**
|
|
48
38
|
* Gets site metadata and returns it
|
|
49
39
|
*
|
|
@@ -105,7 +95,12 @@ const getWalletConnectV2Settings = async (chains, projectID) => {
|
|
|
105
95
|
}
|
|
106
96
|
};
|
|
107
97
|
const chainNamespaces = chains.map(chain => {
|
|
108
|
-
|
|
98
|
+
if (chain.chainNamespace === CHAIN_NAMESPACES.SOLANA) {
|
|
99
|
+
return `${chain.chainNamespace}:${SOLANA_CAIP_CHAIN_MAP[chain.chainId]}`;
|
|
100
|
+
} else if (chain.chainNamespace === CHAIN_NAMESPACES.EIP155) {
|
|
101
|
+
return `${chain.chainNamespace}:${parseInt(chain.chainId, 16)}`;
|
|
102
|
+
}
|
|
103
|
+
throw new Error(`Unsupported chain namespace: ${chain.chainNamespace}`);
|
|
109
104
|
});
|
|
110
105
|
const loginSettings = {
|
|
111
106
|
optionalNamespaces: getRequiredNamespaces(chainNamespaces)
|
|
@@ -5,20 +5,15 @@ import Client from '@walletconnect/sign-client';
|
|
|
5
5
|
import { isValidArray, getSdkError } from '@walletconnect/utils';
|
|
6
6
|
import { EVM_METHOD_TYPES, SOLANA_METHOD_TYPES } from '@web3auth/ws-embed';
|
|
7
7
|
import deepmerge from 'deepmerge';
|
|
8
|
-
import {
|
|
8
|
+
import { getWalletConnectV2Settings } from './config.js';
|
|
9
|
+
import { WalletConnectV2Provider } from './WalletConnectV2Provider.js';
|
|
9
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';
|
|
10
13
|
import { CONNECTOR_CATEGORY, CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
|
|
11
|
-
import '
|
|
12
|
-
import { getSavedToken, checkIfTokenIsExpired, saveToken } from '../../base/connector/utils.js';
|
|
13
|
-
import { WalletLoginError, WalletInitializationError, Web3AuthError } from '../../base/errors/index.js';
|
|
14
|
+
import { WalletInitializationError, WalletLoginError, Web3AuthError } from '../../base/errors/index.js';
|
|
14
15
|
import { log } from '../../base/loglevel.js';
|
|
15
|
-
import '../../base/
|
|
16
|
-
import '../../base/plugin/IPlugin.js';
|
|
17
|
-
import '@toruslabs/constants';
|
|
18
|
-
import '@toruslabs/http-helpers';
|
|
19
|
-
import { WALLET_CONNECTORS } from '../../base/wallet/index.js';
|
|
20
|
-
import { getWalletConnectV2Settings } from './config.js';
|
|
21
|
-
import { WalletConnectV2Provider } from './WalletConnectV2Provider.js';
|
|
16
|
+
import { getSavedToken, checkIfTokenIsExpired, saveToken } from '../../base/connector/utils.js';
|
|
22
17
|
|
|
23
18
|
class WalletConnectV2Connector extends BaseConnector {
|
|
24
19
|
constructor(options) {
|
|
@@ -71,7 +66,11 @@ class WalletConnectV2Connector extends BaseConnector {
|
|
|
71
66
|
chainConfig
|
|
72
67
|
});
|
|
73
68
|
const projectId = (_this$connectorOption6 = this.connectorOptions.connectorSettings) === null || _this$connectorOption6 === void 0 || (_this$connectorOption6 = _this$connectorOption6.walletConnectInitOptions) === null || _this$connectorOption6 === void 0 ? void 0 : _this$connectorOption6.projectId;
|
|
74
|
-
const
|
|
69
|
+
const filteredChains = this.coreOptions.chains.filter(x => x.chainNamespace === CHAIN_NAMESPACES.EIP155 || x.chainNamespace === CHAIN_NAMESPACES.SOLANA);
|
|
70
|
+
if (filteredChains.length === 0) {
|
|
71
|
+
throw WalletInitializationError.invalidParams("No supported chains found");
|
|
72
|
+
}
|
|
73
|
+
const wc2Settings = await getWalletConnectV2Settings(filteredChains, projectId);
|
|
75
74
|
if (!this.connectorOptions.loginSettings || Object.keys(this.connectorOptions.loginSettings).length === 0) {
|
|
76
75
|
this.connectorOptions.loginSettings = wc2Settings.loginSettings;
|
|
77
76
|
}
|
|
@@ -100,7 +99,7 @@ class WalletConnectV2Connector extends BaseConnector {
|
|
|
100
99
|
});
|
|
101
100
|
} catch (error) {
|
|
102
101
|
log.error("wallet auto connect", error);
|
|
103
|
-
this.emit(CONNECTOR_EVENTS.
|
|
102
|
+
this.emit(CONNECTOR_EVENTS.REHYDRATION_ERROR, error);
|
|
104
103
|
}
|
|
105
104
|
} else {
|
|
106
105
|
this.status = CONNECTOR_STATUS.NOT_READY;
|
|
@@ -292,6 +291,7 @@ class WalletConnectV2Connector extends BaseConnector {
|
|
|
292
291
|
}
|
|
293
292
|
}
|
|
294
293
|
log.info("awaiting session approval from wallet");
|
|
294
|
+
|
|
295
295
|
// Await session approval from the wallet.
|
|
296
296
|
const session = await approval();
|
|
297
297
|
this.activeSession = session;
|
|
@@ -303,8 +303,8 @@ class WalletConnectV2Connector extends BaseConnector {
|
|
|
303
303
|
qrcodeModal.closeModal();
|
|
304
304
|
}
|
|
305
305
|
} catch (error) {
|
|
306
|
-
var
|
|
307
|
-
if ((
|
|
306
|
+
var _message;
|
|
307
|
+
if ((_message = error.message) !== null && _message !== void 0 && _message.toLowerCase().includes("proposal expired")) {
|
|
308
308
|
// Retry if connector status is still connecting
|
|
309
309
|
log.info("current connector status: ", this.status);
|
|
310
310
|
if (this.status === CONNECTOR_STATUS.CONNECTING) {
|
|
@@ -3,18 +3,8 @@ import { bs58 } from '@toruslabs/bs58';
|
|
|
3
3
|
import { getAccountsFromNamespaces, parseAccountId } from '@walletconnect/utils';
|
|
4
4
|
import { providerErrors, rpcErrors } from '@web3auth/auth';
|
|
5
5
|
import { EVM_METHOD_TYPES, SOLANA_METHOD_TYPES } from '@web3auth/ws-embed';
|
|
6
|
-
import '@toruslabs/base-controllers';
|
|
7
|
-
import '@babel/runtime/helpers/defineProperty';
|
|
8
|
-
import { WalletLoginError } from '../../base/errors/index.js';
|
|
9
|
-
import '../../base/wallet/index.js';
|
|
10
|
-
import '../../base/connector/constants.js';
|
|
11
|
-
import 'jwt-decode';
|
|
12
|
-
import '../../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
6
|
import { SOLANA_CAIP_CHAIN_MAP } from './config.js';
|
|
7
|
+
import { WalletLoginError } from '../../base/errors/index.js';
|
|
18
8
|
|
|
19
9
|
async function getLastActiveSession(signClient) {
|
|
20
10
|
if (signClient.session.length) {
|
package/dist/lib.esm/index.js
CHANGED
|
@@ -1,38 +1,42 @@
|
|
|
1
|
+
export { Web3AuthNoModal } from './noModal.js';
|
|
2
|
+
export { cookieToWeb3AuthState } from './base/cookie.js';
|
|
1
3
|
export { CONNECTOR_NAMESPACES } from './base/chain/IChainInterface.js';
|
|
4
|
+
export { CHAIN_NAMESPACES, cloneDeep } from '@toruslabs/base-controllers';
|
|
2
5
|
export { Web3AuthContextKey } from './base/composables/index.js';
|
|
3
6
|
export { BaseConnector } from './base/connector/baseConnector.js';
|
|
4
7
|
export { CONNECTOR_CATEGORY, CONNECTOR_EVENTS, CONNECTOR_STATUS } from './base/connector/constants.js';
|
|
5
8
|
export { AUTH_CONNECTION, MFA_FACTOR, MFA_LEVELS, UX_MODE, WEB3AUTH_NETWORK, getED25519Key } from '@web3auth/auth';
|
|
6
9
|
export { checkIfTokenIsExpired, clearToken, getSavedToken, saveToken, storageAvailable } from './base/connector/utils.js';
|
|
7
|
-
export { MODAL_SIGN_IN_METHODS, SMART_ACCOUNT_WALLET_SCOPE, WIDGET_TYPE } from './base/constants.js';
|
|
8
|
-
export { WalletInitializationError, WalletLoginError, WalletOperationsError, WalletProviderError, Web3AuthError
|
|
10
|
+
export { LOGIN_MODE, MODAL_SIGN_IN_METHODS, SMART_ACCOUNT_WALLET_SCOPE, WEB3AUTH_STATE_STORAGE_KEY, WIDGET_TYPE } from './base/constants.js';
|
|
11
|
+
export { WalletInitializationError, WalletLoginError, WalletOperationsError, WalletProviderError, Web3AuthError } from './base/errors/index.js';
|
|
9
12
|
export { log } from './base/loglevel.js';
|
|
10
13
|
export { NFTCheckoutPluginError, WalletServicesPluginError } from './base/plugin/errors.js';
|
|
11
14
|
export { EVM_PLUGINS, PLUGIN_EVENTS, PLUGIN_NAMESPACES, PLUGIN_STATUS, SOLANA_PLUGINS, WALLET_PLUGINS } from './base/plugin/IPlugin.js';
|
|
12
15
|
export { PROVIDER_EVENTS } from './base/provider/IProvider.js';
|
|
13
|
-
export { fetchProjectConfig, fetchWalletRegistry, fromViemChain, fromWagmiChain, isHexStrict, normalizeWalletName, signerHost } from './base/utils.js';
|
|
16
|
+
export { fetchProjectConfig, fetchWalletRegistry, fromViemChain, fromWagmiChain, isBrowser, isHexStrict, normalizeWalletName, signerHost, withAbort } from './base/utils.js';
|
|
14
17
|
export { CONNECTOR_NAMES, EVM_CONNECTORS, MULTI_CHAIN_CONNECTORS, SOLANA_CONNECTORS, WALLET_CONNECTORS } from './base/wallet/index.js';
|
|
15
18
|
export { authConnector } from './connectors/auth-connector/authConnector.js';
|
|
16
19
|
export { BaseEvmConnector } from './connectors/base-evm-connector/baseEvmConnector.js';
|
|
17
20
|
export { BaseSolanaConnector } from './connectors/base-solana-connector/baseSolanaConnector.js';
|
|
18
|
-
export { coinbaseConnector } from './connectors/coinbase-connector/coinbaseConnector.js';
|
|
19
21
|
export { injectedEvmConnector } from './connectors/injected-evm-connector/injectedEvmConnector.js';
|
|
20
22
|
export { createStore as createMipd } from 'mipd';
|
|
23
|
+
export { getWallets as createSolanaMipd } from '@wallet-standard/app';
|
|
21
24
|
export { hasSolanaWalletStandardFeatures } from './connectors/injected-solana-connector/index.js';
|
|
25
|
+
export { walletStandardConnector } from './connectors/injected-solana-connector/walletStandardConnector.js';
|
|
26
|
+
export { metaMaskConnector } from './connectors/metamask-connector/metamaskConnector.js';
|
|
22
27
|
export { DEFAULT_EIP155_METHODS, DEFAULT_EIP_155_EVENTS, DEFAULT_SOLANA_EVENTS, DEFAULT_SOLANA_METHODS, SOLANA_CAIP_CHAIN_MAP, getNamespacesFromChains, getRequiredNamespaces, getSupportedEventsByNamespace, getSupportedMethodsByNamespace, getWalletConnectV2Settings } from './connectors/wallet-connect-v2-connector/config.js';
|
|
23
28
|
export { walletConnectV2Connector } from './connectors/wallet-connect-v2-connector/walletConnectV2Connector.js';
|
|
24
29
|
export { WalletConnectV2Provider } from './connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js';
|
|
25
|
-
export { Web3AuthNoModal } from './noModal.js';
|
|
26
30
|
export { NFTCheckoutEmbed } from './plugins/nft-checkout-plugin/embed.js';
|
|
27
31
|
export { nftCheckoutPlugin } from './plugins/nft-checkout-plugin/plugin.js';
|
|
32
|
+
export { BUTTON_POSITION, CONFIRMATION_STRATEGY } from '@web3auth/ws-embed';
|
|
28
33
|
export { walletServicesPlugin } from './plugins/wallet-services-plugin/plugin.js';
|
|
29
|
-
export { accountAbstractionProvider } from './providers/account-abstraction-provider/providers/AccountAbstractionProvider.js';
|
|
30
|
-
export { BiconomySmartAccount, KernelSmartAccount, NexusSmartAccount, SMART_ACCOUNT, SafeSmartAccount, TrustSmartAccount } from '@toruslabs/ethereum-controllers';
|
|
34
|
+
export { accountAbstractionProvider, toEoaProvider } from './providers/account-abstraction-provider/providers/AccountAbstractionProvider.js';
|
|
35
|
+
export { BiconomySmartAccount, KernelSmartAccount, MetamaskSmartAccount, NexusSmartAccount, SMART_ACCOUNT, SafeSmartAccount, TrustSmartAccount } from '@toruslabs/ethereum-controllers';
|
|
31
36
|
export { BaseProvider } from './providers/base-provider/baseProvider.js';
|
|
32
37
|
export { CommonJRPCProvider } from './providers/base-provider/CommonJRPCProvider.js';
|
|
33
38
|
export { CommonPrivateKeyProvider } from './providers/base-provider/commonPrivateKeyProvider.js';
|
|
34
39
|
export { EIP1193_EVENTS, createRandomId } from './providers/base-provider/utils.js';
|
|
35
|
-
export { EthereumSigningProvider } from './providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js';
|
|
36
40
|
export { EIP1559APIEndpoint, GAS_ESTIMATE_TYPES, LegacyGasAPIEndpoint, TRANSACTION_ENVELOPE_TYPES, TRANSACTION_TYPES } from './providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.js';
|
|
37
41
|
export { TransactionFormatter } from './providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js';
|
|
38
42
|
export { SignTypedDataVersion } from './providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js';
|
|
@@ -45,9 +49,3 @@ export { WalletStandardProvider } from './providers/solana-provider/providers/in
|
|
|
45
49
|
export { createConfigMiddleware, createSolanaChainIdMiddleware, createSolanaJsonRpcClient, createSolanaProviderConfigMiddleware } from './providers/solana-provider/rpc/JrpcClient.js';
|
|
46
50
|
export { createGenericJRPCMiddleware, createGetAccountsMiddleware, createGetPublicKeyMiddleware, createRequestAccountsMiddleware, createSolanaAccountMiddleware, createSolanaChainSwitchMiddleware, createSolanaMiddleware } from './providers/solana-provider/rpc/solanaRpcMiddlewares.js';
|
|
47
51
|
export { SolanaWallet } from './providers/solana-provider/solanaWallet.js';
|
|
48
|
-
export { XrplPrivateKeyProvider } from './providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js';
|
|
49
|
-
export { getProviderHandlers } from './providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.js';
|
|
50
|
-
export { CHAIN_NAMESPACES, cloneDeep } from '@toruslabs/base-controllers';
|
|
51
|
-
export { getWallets as createSolanaMipd } from '@wallet-standard/app';
|
|
52
|
-
export { walletStandardConnector } from './connectors/injected-solana-connector/walletStandardConnector.js';
|
|
53
|
-
export { BUTTON_POSITION, CONFIRMATION_STRATEGY } from '@web3auth/ws-embed';
|