@0xsequence/connect 0.0.0-20250314205219
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/LICENSE +219 -0
- package/README.md +290 -0
- package/dist/cjs/chains/index.js +43 -0
- package/dist/cjs/chains/index.js.map +1 -0
- package/dist/cjs/components/CollectibleTileImage/CollectibleTileImage.js +10 -0
- package/dist/cjs/components/CollectibleTileImage/CollectibleTileImage.js.map +1 -0
- package/dist/cjs/components/CollectibleTileImage/index.js +6 -0
- package/dist/cjs/components/CollectibleTileImage/index.js.map +1 -0
- package/dist/cjs/components/Connect/Banner.js +12 -0
- package/dist/cjs/components/Connect/Banner.js.map +1 -0
- package/dist/cjs/components/Connect/Connect.js +296 -0
- package/dist/cjs/components/Connect/Connect.js.map +1 -0
- package/dist/cjs/components/Connect/ConnectedWallets.js +115 -0
- package/dist/cjs/components/Connect/ConnectedWallets.js.map +1 -0
- package/dist/cjs/components/Connect/EmailWaasVerify.js +50 -0
- package/dist/cjs/components/Connect/EmailWaasVerify.js.map +1 -0
- package/dist/cjs/components/Connect/ExtendedWalletList.js +46 -0
- package/dist/cjs/components/Connect/ExtendedWalletList.js.map +1 -0
- package/dist/cjs/components/Connect/WalletListItem.js +17 -0
- package/dist/cjs/components/Connect/WalletListItem.js.map +1 -0
- package/dist/cjs/components/Connect/index.js +6 -0
- package/dist/cjs/components/Connect/index.js.map +1 -0
- package/dist/cjs/components/ConnectButton/ConnectButton.js +100 -0
- package/dist/cjs/components/ConnectButton/ConnectButton.js.map +1 -0
- package/dist/cjs/components/ConnectButton/index.js +10 -0
- package/dist/cjs/components/ConnectButton/index.js.map +1 -0
- package/dist/cjs/components/CryptoOption.js +22 -0
- package/dist/cjs/components/CryptoOption.js.map +1 -0
- package/dist/cjs/components/JsonTreeViewer.js +17 -0
- package/dist/cjs/components/JsonTreeViewer.js.map +1 -0
- package/dist/cjs/components/NetworkBadge/NetworkBadge.js +18 -0
- package/dist/cjs/components/NetworkBadge/NetworkBadge.js.map +1 -0
- package/dist/cjs/components/NetworkBadge/index.js +6 -0
- package/dist/cjs/components/NetworkBadge/index.js.map +1 -0
- package/dist/cjs/components/PageHeading/PageHeading.js +11 -0
- package/dist/cjs/components/PageHeading/PageHeading.js.map +1 -0
- package/dist/cjs/components/PageHeading/index.js +6 -0
- package/dist/cjs/components/PageHeading/index.js.map +1 -0
- package/dist/cjs/components/SelectedIndicator.js +15 -0
- package/dist/cjs/components/SelectedIndicator.js.map +1 -0
- package/dist/cjs/components/SequenceConnect/SequenceConnect.js +26 -0
- package/dist/cjs/components/SequenceConnect/SequenceConnect.js.map +1 -0
- package/dist/cjs/components/SequenceConnect/index.js +6 -0
- package/dist/cjs/components/SequenceConnect/index.js.map +1 -0
- package/dist/cjs/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.js +91 -0
- package/dist/cjs/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.js.map +1 -0
- package/dist/cjs/components/SequenceConnectPreviewProvider/index.js +18 -0
- package/dist/cjs/components/SequenceConnectPreviewProvider/index.js.map +1 -0
- package/dist/cjs/components/SequenceConnectProvider/SequenceConnectProvider.js +150 -0
- package/dist/cjs/components/SequenceConnectProvider/SequenceConnectProvider.js.map +1 -0
- package/dist/cjs/components/SequenceConnectProvider/index.js +6 -0
- package/dist/cjs/components/SequenceConnectProvider/index.js.map +1 -0
- package/dist/cjs/components/SequenceLogo/PoweredBySequence.js +15 -0
- package/dist/cjs/components/SequenceLogo/PoweredBySequence.js.map +1 -0
- package/dist/cjs/components/SequenceLogo/SequenceLogo.js +9 -0
- package/dist/cjs/components/SequenceLogo/SequenceLogo.js.map +1 -0
- package/dist/cjs/components/SequenceLogo/index.js +8 -0
- package/dist/cjs/components/SequenceLogo/index.js.map +1 -0
- package/dist/cjs/components/ShadowRoot/ShadowRoot.js +45 -0
- package/dist/cjs/components/ShadowRoot/ShadowRoot.js.map +1 -0
- package/dist/cjs/components/ShadowRoot/index.js +6 -0
- package/dist/cjs/components/ShadowRoot/index.js.map +1 -0
- package/dist/cjs/components/TxnDetails/TxnDetails.js +92 -0
- package/dist/cjs/components/TxnDetails/TxnDetails.js.map +1 -0
- package/dist/cjs/components/TxnDetails/index.js +6 -0
- package/dist/cjs/components/TxnDetails/index.js.map +1 -0
- package/dist/cjs/config/createConfig.js +27 -0
- package/dist/cjs/config/createConfig.js.map +1 -0
- package/dist/cjs/config/defaultChains.js +20 -0
- package/dist/cjs/config/defaultChains.js.map +1 -0
- package/dist/cjs/config/defaultConnectors.js +162 -0
- package/dist/cjs/config/defaultConnectors.js.map +1 -0
- package/dist/cjs/config/defaultTransports.js +9 -0
- package/dist/cjs/config/defaultTransports.js.map +1 -0
- package/dist/cjs/connectors/apple/AppleLogo.js +21 -0
- package/dist/cjs/connectors/apple/AppleLogo.js.map +1 -0
- package/dist/cjs/connectors/apple/apple.js +32 -0
- package/dist/cjs/connectors/apple/apple.js.map +1 -0
- package/dist/cjs/connectors/apple/appleWaas.js +23 -0
- package/dist/cjs/connectors/apple/appleWaas.js.map +1 -0
- package/dist/cjs/connectors/apple/index.js +18 -0
- package/dist/cjs/connectors/apple/index.js.map +1 -0
- package/dist/cjs/connectors/coinbaseWallet/CoinbaseWalletLogo.js +9 -0
- package/dist/cjs/connectors/coinbaseWallet/CoinbaseWalletLogo.js.map +1 -0
- package/dist/cjs/connectors/coinbaseWallet/coinbaseWallet.js +18 -0
- package/dist/cjs/connectors/coinbaseWallet/coinbaseWallet.js.map +1 -0
- package/dist/cjs/connectors/coinbaseWallet/index.js +18 -0
- package/dist/cjs/connectors/coinbaseWallet/index.js.map +1 -0
- package/dist/cjs/connectors/discord/DiscordLogo.js +13 -0
- package/dist/cjs/connectors/discord/DiscordLogo.js.map +1 -0
- package/dist/cjs/connectors/discord/discord.js +32 -0
- package/dist/cjs/connectors/discord/discord.js.map +1 -0
- package/dist/cjs/connectors/discord/index.js +18 -0
- package/dist/cjs/connectors/discord/index.js.map +1 -0
- package/dist/cjs/connectors/email/EmailLogo.js +13 -0
- package/dist/cjs/connectors/email/EmailLogo.js.map +1 -0
- package/dist/cjs/connectors/email/email.js +30 -0
- package/dist/cjs/connectors/email/email.js.map +1 -0
- package/dist/cjs/connectors/email/emailWaas.js +21 -0
- package/dist/cjs/connectors/email/emailWaas.js.map +1 -0
- package/dist/cjs/connectors/email/index.js +18 -0
- package/dist/cjs/connectors/email/index.js.map +1 -0
- package/dist/cjs/connectors/facebook/FacebookLogo.js +17 -0
- package/dist/cjs/connectors/facebook/FacebookLogo.js.map +1 -0
- package/dist/cjs/connectors/facebook/facebook.js +32 -0
- package/dist/cjs/connectors/facebook/facebook.js.map +1 -0
- package/dist/cjs/connectors/facebook/index.js +18 -0
- package/dist/cjs/connectors/facebook/index.js.map +1 -0
- package/dist/cjs/connectors/google/GoogleLogo.js +17 -0
- package/dist/cjs/connectors/google/GoogleLogo.js.map +1 -0
- package/dist/cjs/connectors/google/google.js +31 -0
- package/dist/cjs/connectors/google/google.js.map +1 -0
- package/dist/cjs/connectors/google/googleWaas.js +23 -0
- package/dist/cjs/connectors/google/googleWaas.js.map +1 -0
- package/dist/cjs/connectors/google/index.js +18 -0
- package/dist/cjs/connectors/google/index.js.map +1 -0
- package/dist/cjs/connectors/metaMask/MetaMaskLogo.js +7 -0
- package/dist/cjs/connectors/metaMask/MetaMaskLogo.js.map +1 -0
- package/dist/cjs/connectors/metaMask/index.js +18 -0
- package/dist/cjs/connectors/metaMask/index.js.map +1 -0
- package/dist/cjs/connectors/metaMask/metaMask.js +18 -0
- package/dist/cjs/connectors/metaMask/metaMask.js.map +1 -0
- package/dist/cjs/connectors/mock/index.js +18 -0
- package/dist/cjs/connectors/mock/index.js.map +1 -0
- package/dist/cjs/connectors/mock/mock.js +20 -0
- package/dist/cjs/connectors/mock/mock.js.map +1 -0
- package/dist/cjs/connectors/sequence/SequenceLogo.js +9 -0
- package/dist/cjs/connectors/sequence/SequenceLogo.js.map +1 -0
- package/dist/cjs/connectors/sequence/index.js +18 -0
- package/dist/cjs/connectors/sequence/index.js.map +1 -0
- package/dist/cjs/connectors/sequence/sequence.js +26 -0
- package/dist/cjs/connectors/sequence/sequence.js.map +1 -0
- package/dist/cjs/connectors/twitch/TwitchLogo.js +19 -0
- package/dist/cjs/connectors/twitch/TwitchLogo.js.map +1 -0
- package/dist/cjs/connectors/twitch/index.js +18 -0
- package/dist/cjs/connectors/twitch/index.js.map +1 -0
- package/dist/cjs/connectors/twitch/twitch.js +32 -0
- package/dist/cjs/connectors/twitch/twitch.js.map +1 -0
- package/dist/cjs/connectors/wagmiConnectors/index.js +19 -0
- package/dist/cjs/connectors/wagmiConnectors/index.js.map +1 -0
- package/dist/cjs/connectors/wagmiConnectors/sequenceConnector.js +152 -0
- package/dist/cjs/connectors/wagmiConnectors/sequenceConnector.js.map +1 -0
- package/dist/cjs/connectors/wagmiConnectors/sequenceWaasConnector.js +397 -0
- package/dist/cjs/connectors/wagmiConnectors/sequenceWaasConnector.js.map +1 -0
- package/dist/cjs/connectors/walletConnect/WalletConnectLogo.js +9 -0
- package/dist/cjs/connectors/walletConnect/WalletConnectLogo.js.map +1 -0
- package/dist/cjs/connectors/walletConnect/index.js +18 -0
- package/dist/cjs/connectors/walletConnect/index.js.map +1 -0
- package/dist/cjs/connectors/walletConnect/walletConnect.js +54 -0
- package/dist/cjs/connectors/walletConnect/walletConnect.js.map +1 -0
- package/dist/cjs/constants/ethAuth.js +6 -0
- package/dist/cjs/constants/ethAuth.js.map +1 -0
- package/dist/cjs/constants/index.js +23 -0
- package/dist/cjs/constants/index.js.map +1 -0
- package/dist/cjs/constants/localStorage.js +35 -0
- package/dist/cjs/constants/localStorage.js.map +1 -0
- package/dist/cjs/constants/queryKeys.js +25 -0
- package/dist/cjs/constants/queryKeys.js.map +1 -0
- package/dist/cjs/constants/swaps.js +6 -0
- package/dist/cjs/constants/swaps.js.map +1 -0
- package/dist/cjs/constants/transactions.js +5 -0
- package/dist/cjs/constants/transactions.js.map +1 -0
- package/dist/cjs/constants/version.js +5 -0
- package/dist/cjs/constants/version.js.map +1 -0
- package/dist/cjs/constants/walletLinking.js +6 -0
- package/dist/cjs/constants/walletLinking.js.map +1 -0
- package/dist/cjs/contexts/Analytics.js +9 -0
- package/dist/cjs/contexts/Analytics.js.map +1 -0
- package/dist/cjs/contexts/ConnectConfig.js +8 -0
- package/dist/cjs/contexts/ConnectConfig.js.map +1 -0
- package/dist/cjs/contexts/ConnectModal.js +9 -0
- package/dist/cjs/contexts/ConnectModal.js.map +1 -0
- package/dist/cjs/contexts/Theme.js +8 -0
- package/dist/cjs/contexts/Theme.js.map +1 -0
- package/dist/cjs/contexts/WalletConfig.js +8 -0
- package/dist/cjs/contexts/WalletConfig.js.map +1 -0
- package/dist/cjs/contexts/genericContext.js +20 -0
- package/dist/cjs/contexts/genericContext.js.map +1 -0
- package/dist/cjs/env.js +6 -0
- package/dist/cjs/env.js.map +1 -0
- package/dist/cjs/hooks/useChain.js +12 -0
- package/dist/cjs/hooks/useChain.js.map +1 -0
- package/dist/cjs/hooks/useCheckWaasFeeOptions.js +28 -0
- package/dist/cjs/hooks/useCheckWaasFeeOptions.js.map +1 -0
- package/dist/cjs/hooks/useOpenConnectModal.js +10 -0
- package/dist/cjs/hooks/useOpenConnectModal.js.map +1 -0
- package/dist/cjs/hooks/useProjectAccessKey.js +10 -0
- package/dist/cjs/hooks/useProjectAccessKey.js.map +1 -0
- package/dist/cjs/hooks/useSignInEmail.js +27 -0
- package/dist/cjs/hooks/useSignInEmail.js.map +1 -0
- package/dist/cjs/hooks/useStorage.js +26 -0
- package/dist/cjs/hooks/useStorage.js.map +1 -0
- package/dist/cjs/hooks/useTheme.js +15 -0
- package/dist/cjs/hooks/useTheme.js.map +1 -0
- package/dist/cjs/hooks/useWaasConfirmationHandler.js +47 -0
- package/dist/cjs/hooks/useWaasConfirmationHandler.js.map +1 -0
- package/dist/cjs/hooks/useWaasEmailAuth.js +91 -0
- package/dist/cjs/hooks/useWaasEmailAuth.js.map +1 -0
- package/dist/cjs/hooks/useWaasEmailConflict.js +63 -0
- package/dist/cjs/hooks/useWaasEmailConflict.js.map +1 -0
- package/dist/cjs/hooks/useWaasFeeOptions.js +142 -0
- package/dist/cjs/hooks/useWaasFeeOptions.js.map +1 -0
- package/dist/cjs/hooks/useWaasGetLinkedWalletsSignature.js +132 -0
- package/dist/cjs/hooks/useWaasGetLinkedWalletsSignature.js.map +1 -0
- package/dist/cjs/hooks/useWaasLinkWallet.js +87 -0
- package/dist/cjs/hooks/useWaasLinkWallet.js.map +1 -0
- package/dist/cjs/hooks/useWaasSignInEmail.js +31 -0
- package/dist/cjs/hooks/useWaasSignInEmail.js.map +1 -0
- package/dist/cjs/hooks/useWalletSettings.js +14 -0
- package/dist/cjs/hooks/useWalletSettings.js.map +1 -0
- package/dist/cjs/hooks/useWallets.js +162 -0
- package/dist/cjs/hooks/useWallets.js.map +1 -0
- package/dist/cjs/index.js +146 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/styles.js +2219 -0
- package/dist/cjs/styles.js.map +1 -0
- package/dist/cjs/types.js +4 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/cjs/utils/adapters.js +30 -0
- package/dist/cjs/utils/adapters.js.map +1 -0
- package/dist/cjs/utils/deferred.js +22 -0
- package/dist/cjs/utils/deferred.js.map +1 -0
- package/dist/cjs/utils/ethAuth.js +47 -0
- package/dist/cjs/utils/ethAuth.js.map +1 -0
- package/dist/cjs/utils/getConnectWallets.js +20 -0
- package/dist/cjs/utils/getConnectWallets.js.map +1 -0
- package/dist/cjs/utils/helpers.js +118 -0
- package/dist/cjs/utils/helpers.js.map +1 -0
- package/dist/cjs/utils/networks.js +65 -0
- package/dist/cjs/utils/networks.js.map +1 -0
- package/dist/cjs/utils/styling.js +48 -0
- package/dist/cjs/utils/styling.js.map +1 -0
- package/dist/cjs/utils/tokens.js +46 -0
- package/dist/cjs/utils/tokens.js.map +1 -0
- package/dist/cjs/utils/transactions.js +169 -0
- package/dist/cjs/utils/transactions.js.map +1 -0
- package/dist/cjs/utils/txnDecoding.js +400 -0
- package/dist/cjs/utils/txnDecoding.js.map +1 -0
- package/dist/esm/chains/index.js +40 -0
- package/dist/esm/chains/index.js.map +1 -0
- package/dist/esm/components/CollectibleTileImage/CollectibleTileImage.js +6 -0
- package/dist/esm/components/CollectibleTileImage/CollectibleTileImage.js.map +1 -0
- package/dist/esm/components/CollectibleTileImage/index.js +2 -0
- package/dist/esm/components/CollectibleTileImage/index.js.map +1 -0
- package/dist/esm/components/Connect/Banner.js +8 -0
- package/dist/esm/components/Connect/Banner.js.map +1 -0
- package/dist/esm/components/Connect/Connect.js +292 -0
- package/dist/esm/components/Connect/Connect.js.map +1 -0
- package/dist/esm/components/Connect/ConnectedWallets.js +111 -0
- package/dist/esm/components/Connect/ConnectedWallets.js.map +1 -0
- package/dist/esm/components/Connect/EmailWaasVerify.js +46 -0
- package/dist/esm/components/Connect/EmailWaasVerify.js.map +1 -0
- package/dist/esm/components/Connect/ExtendedWalletList.js +39 -0
- package/dist/esm/components/Connect/ExtendedWalletList.js.map +1 -0
- package/dist/esm/components/Connect/WalletListItem.js +13 -0
- package/dist/esm/components/Connect/WalletListItem.js.map +1 -0
- package/dist/esm/components/Connect/index.js +2 -0
- package/dist/esm/components/Connect/index.js.map +1 -0
- package/dist/esm/components/ConnectButton/ConnectButton.js +92 -0
- package/dist/esm/components/ConnectButton/ConnectButton.js.map +1 -0
- package/dist/esm/components/ConnectButton/index.js +2 -0
- package/dist/esm/components/ConnectButton/index.js.map +1 -0
- package/dist/esm/components/CryptoOption.js +18 -0
- package/dist/esm/components/CryptoOption.js.map +1 -0
- package/dist/esm/components/JsonTreeViewer.js +13 -0
- package/dist/esm/components/JsonTreeViewer.js.map +1 -0
- package/dist/esm/components/NetworkBadge/NetworkBadge.js +14 -0
- package/dist/esm/components/NetworkBadge/NetworkBadge.js.map +1 -0
- package/dist/esm/components/NetworkBadge/index.js +2 -0
- package/dist/esm/components/NetworkBadge/index.js.map +1 -0
- package/dist/esm/components/PageHeading/PageHeading.js +7 -0
- package/dist/esm/components/PageHeading/PageHeading.js.map +1 -0
- package/dist/esm/components/PageHeading/index.js +2 -0
- package/dist/esm/components/PageHeading/index.js.map +1 -0
- package/dist/esm/components/SelectedIndicator.js +11 -0
- package/dist/esm/components/SelectedIndicator.js.map +1 -0
- package/dist/esm/components/SequenceConnect/SequenceConnect.js +22 -0
- package/dist/esm/components/SequenceConnect/SequenceConnect.js.map +1 -0
- package/dist/esm/components/SequenceConnect/index.js +2 -0
- package/dist/esm/components/SequenceConnect/index.js.map +1 -0
- package/dist/esm/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.js +87 -0
- package/dist/esm/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.js.map +1 -0
- package/dist/esm/components/SequenceConnectPreviewProvider/index.js +2 -0
- package/dist/esm/components/SequenceConnectPreviewProvider/index.js.map +1 -0
- package/dist/esm/components/SequenceConnectProvider/SequenceConnectProvider.js +146 -0
- package/dist/esm/components/SequenceConnectProvider/SequenceConnectProvider.js.map +1 -0
- package/dist/esm/components/SequenceConnectProvider/index.js +2 -0
- package/dist/esm/components/SequenceConnectProvider/index.js.map +1 -0
- package/dist/esm/components/SequenceLogo/PoweredBySequence.js +11 -0
- package/dist/esm/components/SequenceLogo/PoweredBySequence.js.map +1 -0
- package/dist/esm/components/SequenceLogo/SequenceLogo.js +5 -0
- package/dist/esm/components/SequenceLogo/SequenceLogo.js.map +1 -0
- package/dist/esm/components/SequenceLogo/index.js +3 -0
- package/dist/esm/components/SequenceLogo/index.js.map +1 -0
- package/dist/esm/components/ShadowRoot/ShadowRoot.js +41 -0
- package/dist/esm/components/ShadowRoot/ShadowRoot.js.map +1 -0
- package/dist/esm/components/ShadowRoot/index.js +2 -0
- package/dist/esm/components/ShadowRoot/index.js.map +1 -0
- package/dist/esm/components/TxnDetails/TxnDetails.js +87 -0
- package/dist/esm/components/TxnDetails/TxnDetails.js.map +1 -0
- package/dist/esm/components/TxnDetails/index.js +2 -0
- package/dist/esm/components/TxnDetails/index.js.map +1 -0
- package/dist/esm/config/createConfig.js +23 -0
- package/dist/esm/config/createConfig.js.map +1 -0
- package/dist/esm/config/defaultChains.js +16 -0
- package/dist/esm/config/defaultChains.js.map +1 -0
- package/dist/esm/config/defaultConnectors.js +156 -0
- package/dist/esm/config/defaultConnectors.js.map +1 -0
- package/dist/esm/config/defaultTransports.js +5 -0
- package/dist/esm/config/defaultTransports.js.map +1 -0
- package/dist/esm/connectors/apple/AppleLogo.js +16 -0
- package/dist/esm/connectors/apple/AppleLogo.js.map +1 -0
- package/dist/esm/connectors/apple/apple.js +28 -0
- package/dist/esm/connectors/apple/apple.js.map +1 -0
- package/dist/esm/connectors/apple/appleWaas.js +19 -0
- package/dist/esm/connectors/apple/appleWaas.js.map +1 -0
- package/dist/esm/connectors/apple/index.js +2 -0
- package/dist/esm/connectors/apple/index.js.map +1 -0
- package/dist/esm/connectors/coinbaseWallet/CoinbaseWalletLogo.js +5 -0
- package/dist/esm/connectors/coinbaseWallet/CoinbaseWalletLogo.js.map +1 -0
- package/dist/esm/connectors/coinbaseWallet/coinbaseWallet.js +14 -0
- package/dist/esm/connectors/coinbaseWallet/coinbaseWallet.js.map +1 -0
- package/dist/esm/connectors/coinbaseWallet/index.js +2 -0
- package/dist/esm/connectors/coinbaseWallet/index.js.map +1 -0
- package/dist/esm/connectors/discord/DiscordLogo.js +9 -0
- package/dist/esm/connectors/discord/DiscordLogo.js.map +1 -0
- package/dist/esm/connectors/discord/discord.js +28 -0
- package/dist/esm/connectors/discord/discord.js.map +1 -0
- package/dist/esm/connectors/discord/index.js +2 -0
- package/dist/esm/connectors/discord/index.js.map +1 -0
- package/dist/esm/connectors/email/EmailLogo.js +9 -0
- package/dist/esm/connectors/email/EmailLogo.js.map +1 -0
- package/dist/esm/connectors/email/email.js +26 -0
- package/dist/esm/connectors/email/email.js.map +1 -0
- package/dist/esm/connectors/email/emailWaas.js +17 -0
- package/dist/esm/connectors/email/emailWaas.js.map +1 -0
- package/dist/esm/connectors/email/index.js +2 -0
- package/dist/esm/connectors/email/index.js.map +1 -0
- package/dist/esm/connectors/facebook/FacebookLogo.js +12 -0
- package/dist/esm/connectors/facebook/FacebookLogo.js.map +1 -0
- package/dist/esm/connectors/facebook/facebook.js +28 -0
- package/dist/esm/connectors/facebook/facebook.js.map +1 -0
- package/dist/esm/connectors/facebook/index.js +2 -0
- package/dist/esm/connectors/facebook/index.js.map +1 -0
- package/dist/esm/connectors/google/GoogleLogo.js +12 -0
- package/dist/esm/connectors/google/GoogleLogo.js.map +1 -0
- package/dist/esm/connectors/google/google.js +27 -0
- package/dist/esm/connectors/google/google.js.map +1 -0
- package/dist/esm/connectors/google/googleWaas.js +19 -0
- package/dist/esm/connectors/google/googleWaas.js.map +1 -0
- package/dist/esm/connectors/google/index.js +2 -0
- package/dist/esm/connectors/google/index.js.map +1 -0
- package/dist/esm/connectors/metaMask/MetaMaskLogo.js +3 -0
- package/dist/esm/connectors/metaMask/MetaMaskLogo.js.map +1 -0
- package/dist/esm/connectors/metaMask/index.js +2 -0
- package/dist/esm/connectors/metaMask/index.js.map +1 -0
- package/dist/esm/connectors/metaMask/metaMask.js +14 -0
- package/dist/esm/connectors/metaMask/metaMask.js.map +1 -0
- package/dist/esm/connectors/mock/index.js +2 -0
- package/dist/esm/connectors/mock/index.js.map +1 -0
- package/dist/esm/connectors/mock/mock.js +16 -0
- package/dist/esm/connectors/mock/mock.js.map +1 -0
- package/dist/esm/connectors/sequence/SequenceLogo.js +5 -0
- package/dist/esm/connectors/sequence/SequenceLogo.js.map +1 -0
- package/dist/esm/connectors/sequence/index.js +2 -0
- package/dist/esm/connectors/sequence/index.js.map +1 -0
- package/dist/esm/connectors/sequence/sequence.js +22 -0
- package/dist/esm/connectors/sequence/sequence.js.map +1 -0
- package/dist/esm/connectors/twitch/TwitchLogo.js +15 -0
- package/dist/esm/connectors/twitch/TwitchLogo.js.map +1 -0
- package/dist/esm/connectors/twitch/index.js +2 -0
- package/dist/esm/connectors/twitch/index.js.map +1 -0
- package/dist/esm/connectors/twitch/twitch.js +28 -0
- package/dist/esm/connectors/twitch/twitch.js.map +1 -0
- package/dist/esm/connectors/wagmiConnectors/index.js +3 -0
- package/dist/esm/connectors/wagmiConnectors/index.js.map +1 -0
- package/dist/esm/connectors/wagmiConnectors/sequenceConnector.js +149 -0
- package/dist/esm/connectors/wagmiConnectors/sequenceConnector.js.map +1 -0
- package/dist/esm/connectors/wagmiConnectors/sequenceWaasConnector.js +391 -0
- package/dist/esm/connectors/wagmiConnectors/sequenceWaasConnector.js.map +1 -0
- package/dist/esm/connectors/walletConnect/WalletConnectLogo.js +5 -0
- package/dist/esm/connectors/walletConnect/WalletConnectLogo.js.map +1 -0
- package/dist/esm/connectors/walletConnect/index.js +2 -0
- package/dist/esm/connectors/walletConnect/index.js.map +1 -0
- package/dist/esm/connectors/walletConnect/walletConnect.js +50 -0
- package/dist/esm/connectors/walletConnect/walletConnect.js.map +1 -0
- package/dist/esm/constants/ethAuth.js +3 -0
- package/dist/esm/constants/ethAuth.js.map +1 -0
- package/dist/esm/constants/index.js +7 -0
- package/dist/esm/constants/index.js.map +1 -0
- package/dist/esm/constants/localStorage.js +32 -0
- package/dist/esm/constants/localStorage.js.map +1 -0
- package/dist/esm/constants/queryKeys.js +22 -0
- package/dist/esm/constants/queryKeys.js.map +1 -0
- package/dist/esm/constants/swaps.js +3 -0
- package/dist/esm/constants/swaps.js.map +1 -0
- package/dist/esm/constants/transactions.js +2 -0
- package/dist/esm/constants/transactions.js.map +1 -0
- package/dist/esm/constants/version.js +2 -0
- package/dist/esm/constants/version.js.map +1 -0
- package/dist/esm/constants/walletLinking.js +3 -0
- package/dist/esm/constants/walletLinking.js.map +1 -0
- package/dist/esm/contexts/Analytics.js +5 -0
- package/dist/esm/contexts/Analytics.js.map +1 -0
- package/dist/esm/contexts/ConnectConfig.js +4 -0
- package/dist/esm/contexts/ConnectConfig.js.map +1 -0
- package/dist/esm/contexts/ConnectModal.js +5 -0
- package/dist/esm/contexts/ConnectModal.js.map +1 -0
- package/dist/esm/contexts/Theme.js +4 -0
- package/dist/esm/contexts/Theme.js.map +1 -0
- package/dist/esm/contexts/WalletConfig.js +4 -0
- package/dist/esm/contexts/WalletConfig.js.map +1 -0
- package/dist/esm/contexts/genericContext.js +16 -0
- package/dist/esm/contexts/genericContext.js.map +1 -0
- package/dist/esm/env.js +3 -0
- package/dist/esm/env.js.map +1 -0
- package/dist/esm/hooks/useChain.js +8 -0
- package/dist/esm/hooks/useChain.js.map +1 -0
- package/dist/esm/hooks/useCheckWaasFeeOptions.js +25 -0
- package/dist/esm/hooks/useCheckWaasFeeOptions.js.map +1 -0
- package/dist/esm/hooks/useOpenConnectModal.js +6 -0
- package/dist/esm/hooks/useOpenConnectModal.js.map +1 -0
- package/dist/esm/hooks/useProjectAccessKey.js +6 -0
- package/dist/esm/hooks/useProjectAccessKey.js.map +1 -0
- package/dist/esm/hooks/useSignInEmail.js +23 -0
- package/dist/esm/hooks/useSignInEmail.js.map +1 -0
- package/dist/esm/hooks/useStorage.js +21 -0
- package/dist/esm/hooks/useStorage.js.map +1 -0
- package/dist/esm/hooks/useTheme.js +11 -0
- package/dist/esm/hooks/useTheme.js.map +1 -0
- package/dist/esm/hooks/useWaasConfirmationHandler.js +44 -0
- package/dist/esm/hooks/useWaasConfirmationHandler.js.map +1 -0
- package/dist/esm/hooks/useWaasEmailAuth.js +88 -0
- package/dist/esm/hooks/useWaasEmailAuth.js.map +1 -0
- package/dist/esm/hooks/useWaasEmailConflict.js +59 -0
- package/dist/esm/hooks/useWaasEmailConflict.js.map +1 -0
- package/dist/esm/hooks/useWaasFeeOptions.js +139 -0
- package/dist/esm/hooks/useWaasFeeOptions.js.map +1 -0
- package/dist/esm/hooks/useWaasGetLinkedWalletsSignature.js +128 -0
- package/dist/esm/hooks/useWaasGetLinkedWalletsSignature.js.map +1 -0
- package/dist/esm/hooks/useWaasLinkWallet.js +83 -0
- package/dist/esm/hooks/useWaasLinkWallet.js.map +1 -0
- package/dist/esm/hooks/useWaasSignInEmail.js +27 -0
- package/dist/esm/hooks/useWaasSignInEmail.js.map +1 -0
- package/dist/esm/hooks/useWalletSettings.js +10 -0
- package/dist/esm/hooks/useWalletSettings.js.map +1 -0
- package/dist/esm/hooks/useWallets.js +157 -0
- package/dist/esm/hooks/useWallets.js.map +1 -0
- package/dist/esm/index.js +64 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/styles.js +2216 -0
- package/dist/esm/styles.js.map +1 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utils/adapters.js +25 -0
- package/dist/esm/utils/adapters.js.map +1 -0
- package/dist/esm/utils/deferred.js +18 -0
- package/dist/esm/utils/deferred.js.map +1 -0
- package/dist/esm/utils/ethAuth.js +42 -0
- package/dist/esm/utils/ethAuth.js.map +1 -0
- package/dist/esm/utils/getConnectWallets.js +16 -0
- package/dist/esm/utils/getConnectWallets.js.map +1 -0
- package/dist/esm/utils/helpers.js +108 -0
- package/dist/esm/utils/helpers.js.map +1 -0
- package/dist/esm/utils/networks.js +59 -0
- package/dist/esm/utils/networks.js.map +1 -0
- package/dist/esm/utils/styling.js +44 -0
- package/dist/esm/utils/styling.js.map +1 -0
- package/dist/esm/utils/tokens.js +41 -0
- package/dist/esm/utils/tokens.js.map +1 -0
- package/dist/esm/utils/transactions.js +164 -0
- package/dist/esm/utils/transactions.js.map +1 -0
- package/dist/esm/utils/txnDecoding.js +395 -0
- package/dist/esm/utils/txnDecoding.js.map +1 -0
- package/dist/types/chains/index.d.ts +3 -0
- package/dist/types/chains/index.d.ts.map +1 -0
- package/dist/types/components/CollectibleTileImage/CollectibleTileImage.d.ts +6 -0
- package/dist/types/components/CollectibleTileImage/CollectibleTileImage.d.ts.map +1 -0
- package/dist/types/components/CollectibleTileImage/index.d.ts +2 -0
- package/dist/types/components/CollectibleTileImage/index.d.ts.map +1 -0
- package/dist/types/components/Connect/Banner.d.ts +7 -0
- package/dist/types/components/Connect/Banner.d.ts.map +1 -0
- package/dist/types/components/Connect/Connect.d.ts +11 -0
- package/dist/types/components/Connect/Connect.d.ts.map +1 -0
- package/dist/types/components/Connect/ConnectedWallets.d.ts +12 -0
- package/dist/types/components/Connect/ConnectedWallets.d.ts.map +1 -0
- package/dist/types/components/Connect/EmailWaasVerify.d.ts +10 -0
- package/dist/types/components/Connect/EmailWaasVerify.d.ts.map +1 -0
- package/dist/types/components/Connect/ExtendedWalletList.d.ts +11 -0
- package/dist/types/components/Connect/ExtendedWalletList.d.ts.map +1 -0
- package/dist/types/components/Connect/WalletListItem.d.ts +13 -0
- package/dist/types/components/Connect/WalletListItem.d.ts.map +1 -0
- package/dist/types/components/Connect/index.d.ts +2 -0
- package/dist/types/components/Connect/index.d.ts.map +1 -0
- package/dist/types/components/ConnectButton/ConnectButton.d.ts +17 -0
- package/dist/types/components/ConnectButton/ConnectButton.d.ts.map +1 -0
- package/dist/types/components/ConnectButton/index.d.ts +2 -0
- package/dist/types/components/ConnectButton/index.d.ts.map +1 -0
- package/dist/types/components/CryptoOption.d.ts +14 -0
- package/dist/types/components/CryptoOption.d.ts.map +1 -0
- package/dist/types/components/JsonTreeViewer.d.ts +7 -0
- package/dist/types/components/JsonTreeViewer.d.ts.map +1 -0
- package/dist/types/components/NetworkBadge/NetworkBadge.d.ts +6 -0
- package/dist/types/components/NetworkBadge/NetworkBadge.d.ts.map +1 -0
- package/dist/types/components/NetworkBadge/index.d.ts +2 -0
- package/dist/types/components/NetworkBadge/index.d.ts.map +1 -0
- package/dist/types/components/PageHeading/PageHeading.d.ts +7 -0
- package/dist/types/components/PageHeading/PageHeading.d.ts.map +1 -0
- package/dist/types/components/PageHeading/index.d.ts +2 -0
- package/dist/types/components/PageHeading/index.d.ts.map +1 -0
- package/dist/types/components/SelectedIndicator.d.ts +6 -0
- package/dist/types/components/SelectedIndicator.d.ts.map +1 -0
- package/dist/types/components/SequenceConnect/SequenceConnect.d.ts +12 -0
- package/dist/types/components/SequenceConnect/SequenceConnect.d.ts.map +1 -0
- package/dist/types/components/SequenceConnect/index.d.ts +2 -0
- package/dist/types/components/SequenceConnect/index.d.ts.map +1 -0
- package/dist/types/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.d.ts +8 -0
- package/dist/types/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.d.ts.map +1 -0
- package/dist/types/components/SequenceConnectPreviewProvider/index.d.ts +2 -0
- package/dist/types/components/SequenceConnectPreviewProvider/index.d.ts.map +1 -0
- package/dist/types/components/SequenceConnectProvider/SequenceConnectProvider.d.ts +8 -0
- package/dist/types/components/SequenceConnectProvider/SequenceConnectProvider.d.ts.map +1 -0
- package/dist/types/components/SequenceConnectProvider/index.d.ts +2 -0
- package/dist/types/components/SequenceConnectProvider/index.d.ts.map +1 -0
- package/dist/types/components/SequenceLogo/PoweredBySequence.d.ts +2 -0
- package/dist/types/components/SequenceLogo/PoweredBySequence.d.ts.map +1 -0
- package/dist/types/components/SequenceLogo/SequenceLogo.d.ts +2 -0
- package/dist/types/components/SequenceLogo/SequenceLogo.d.ts.map +1 -0
- package/dist/types/components/SequenceLogo/index.d.ts +3 -0
- package/dist/types/components/SequenceLogo/index.d.ts.map +1 -0
- package/dist/types/components/ShadowRoot/ShadowRoot.d.ts +9 -0
- package/dist/types/components/ShadowRoot/ShadowRoot.d.ts.map +1 -0
- package/dist/types/components/ShadowRoot/index.d.ts +2 -0
- package/dist/types/components/ShadowRoot/index.d.ts.map +1 -0
- package/dist/types/components/TxnDetails/TxnDetails.d.ts +10 -0
- package/dist/types/components/TxnDetails/TxnDetails.d.ts.map +1 -0
- package/dist/types/components/TxnDetails/index.d.ts +2 -0
- package/dist/types/components/TxnDetails/index.d.ts.map +1 -0
- package/dist/types/config/createConfig.d.ts +13 -0
- package/dist/types/config/createConfig.d.ts.map +1 -0
- package/dist/types/config/defaultChains.d.ts +3 -0
- package/dist/types/config/defaultChains.d.ts.map +1 -0
- package/dist/types/config/defaultConnectors.d.ts +62 -0
- package/dist/types/config/defaultConnectors.d.ts.map +1 -0
- package/dist/types/config/defaultTransports.d.ts +5 -0
- package/dist/types/config/defaultTransports.d.ts.map +1 -0
- package/dist/types/connectors/apple/AppleLogo.d.ts +11 -0
- package/dist/types/connectors/apple/AppleLogo.d.ts.map +1 -0
- package/dist/types/connectors/apple/apple.d.ts +5 -0
- package/dist/types/connectors/apple/apple.d.ts.map +1 -0
- package/dist/types/connectors/apple/appleWaas.d.ts +5 -0
- package/dist/types/connectors/apple/appleWaas.d.ts.map +1 -0
- package/dist/types/connectors/apple/index.d.ts +2 -0
- package/dist/types/connectors/apple/index.d.ts.map +1 -0
- package/dist/types/connectors/coinbaseWallet/CoinbaseWalletLogo.d.ts +4 -0
- package/dist/types/connectors/coinbaseWallet/CoinbaseWalletLogo.d.ts.map +1 -0
- package/dist/types/connectors/coinbaseWallet/coinbaseWallet.d.ts +4 -0
- package/dist/types/connectors/coinbaseWallet/coinbaseWallet.d.ts.map +1 -0
- package/dist/types/connectors/coinbaseWallet/index.d.ts +2 -0
- package/dist/types/connectors/coinbaseWallet/index.d.ts.map +1 -0
- package/dist/types/connectors/discord/DiscordLogo.d.ts +7 -0
- package/dist/types/connectors/discord/DiscordLogo.d.ts.map +1 -0
- package/dist/types/connectors/discord/discord.d.ts +6 -0
- package/dist/types/connectors/discord/discord.d.ts.map +1 -0
- package/dist/types/connectors/discord/index.d.ts +2 -0
- package/dist/types/connectors/discord/index.d.ts.map +1 -0
- package/dist/types/connectors/email/EmailLogo.d.ts +7 -0
- package/dist/types/connectors/email/EmailLogo.d.ts.map +1 -0
- package/dist/types/connectors/email/email.d.ts +6 -0
- package/dist/types/connectors/email/email.d.ts.map +1 -0
- package/dist/types/connectors/email/emailWaas.d.ts +5 -0
- package/dist/types/connectors/email/emailWaas.d.ts.map +1 -0
- package/dist/types/connectors/email/index.d.ts +2 -0
- package/dist/types/connectors/email/index.d.ts.map +1 -0
- package/dist/types/connectors/facebook/FacebookLogo.d.ts +8 -0
- package/dist/types/connectors/facebook/FacebookLogo.d.ts.map +1 -0
- package/dist/types/connectors/facebook/facebook.d.ts +6 -0
- package/dist/types/connectors/facebook/facebook.d.ts.map +1 -0
- package/dist/types/connectors/facebook/index.d.ts +2 -0
- package/dist/types/connectors/facebook/index.d.ts.map +1 -0
- package/dist/types/connectors/google/GoogleLogo.d.ts +8 -0
- package/dist/types/connectors/google/GoogleLogo.d.ts.map +1 -0
- package/dist/types/connectors/google/google.d.ts +5 -0
- package/dist/types/connectors/google/google.d.ts.map +1 -0
- package/dist/types/connectors/google/googleWaas.d.ts +5 -0
- package/dist/types/connectors/google/googleWaas.d.ts.map +1 -0
- package/dist/types/connectors/google/index.d.ts +2 -0
- package/dist/types/connectors/google/index.d.ts.map +1 -0
- package/dist/types/connectors/metaMask/MetaMaskLogo.d.ts +4 -0
- package/dist/types/connectors/metaMask/MetaMaskLogo.d.ts.map +1 -0
- package/dist/types/connectors/metaMask/index.d.ts +2 -0
- package/dist/types/connectors/metaMask/index.d.ts.map +1 -0
- package/dist/types/connectors/metaMask/metaMask.d.ts +4 -0
- package/dist/types/connectors/metaMask/metaMask.d.ts.map +1 -0
- package/dist/types/connectors/mock/index.d.ts +2 -0
- package/dist/types/connectors/mock/index.d.ts.map +1 -0
- package/dist/types/connectors/mock/mock.d.ts +4 -0
- package/dist/types/connectors/mock/mock.d.ts.map +1 -0
- package/dist/types/connectors/sequence/SequenceLogo.d.ts +3 -0
- package/dist/types/connectors/sequence/SequenceLogo.d.ts.map +1 -0
- package/dist/types/connectors/sequence/index.d.ts +2 -0
- package/dist/types/connectors/sequence/index.d.ts.map +1 -0
- package/dist/types/connectors/sequence/sequence.d.ts +6 -0
- package/dist/types/connectors/sequence/sequence.d.ts.map +1 -0
- package/dist/types/connectors/twitch/TwitchLogo.d.ts +7 -0
- package/dist/types/connectors/twitch/TwitchLogo.d.ts.map +1 -0
- package/dist/types/connectors/twitch/index.d.ts +2 -0
- package/dist/types/connectors/twitch/index.d.ts.map +1 -0
- package/dist/types/connectors/twitch/twitch.d.ts +6 -0
- package/dist/types/connectors/twitch/twitch.d.ts.map +1 -0
- package/dist/types/connectors/wagmiConnectors/index.d.ts +3 -0
- package/dist/types/connectors/wagmiConnectors/index.d.ts.map +1 -0
- package/dist/types/connectors/wagmiConnectors/sequenceConnector.d.ts +23 -0
- package/dist/types/connectors/wagmiConnectors/sequenceConnector.d.ts.map +1 -0
- package/dist/types/connectors/wagmiConnectors/sequenceWaasConnector.d.ts +72 -0
- package/dist/types/connectors/wagmiConnectors/sequenceWaasConnector.d.ts.map +1 -0
- package/dist/types/connectors/walletConnect/WalletConnectLogo.d.ts +3 -0
- package/dist/types/connectors/walletConnect/WalletConnectLogo.d.ts.map +1 -0
- package/dist/types/connectors/walletConnect/index.d.ts +2 -0
- package/dist/types/connectors/walletConnect/index.d.ts.map +1 -0
- package/dist/types/connectors/walletConnect/walletConnect.d.ts +8 -0
- package/dist/types/connectors/walletConnect/walletConnect.d.ts.map +1 -0
- package/dist/types/constants/ethAuth.d.ts +2 -0
- package/dist/types/constants/ethAuth.d.ts.map +1 -0
- package/dist/types/constants/index.d.ts +7 -0
- package/dist/types/constants/index.d.ts.map +1 -0
- package/dist/types/constants/localStorage.d.ts +16 -0
- package/dist/types/constants/localStorage.d.ts.map +1 -0
- package/dist/types/constants/queryKeys.d.ts +22 -0
- package/dist/types/constants/queryKeys.d.ts.map +1 -0
- package/dist/types/constants/swaps.d.ts +2 -0
- package/dist/types/constants/swaps.d.ts.map +1 -0
- package/dist/types/constants/transactions.d.ts +2 -0
- package/dist/types/constants/transactions.d.ts.map +1 -0
- package/dist/types/constants/version.d.ts +2 -0
- package/dist/types/constants/version.d.ts.map +1 -0
- package/dist/types/constants/walletLinking.d.ts +2 -0
- package/dist/types/constants/walletLinking.d.ts.map +1 -0
- package/dist/types/contexts/Analytics.d.ts +9 -0
- package/dist/types/contexts/Analytics.d.ts.map +1 -0
- package/dist/types/contexts/ConnectConfig.d.ts +3 -0
- package/dist/types/contexts/ConnectConfig.d.ts.map +1 -0
- package/dist/types/contexts/ConnectModal.d.ts +8 -0
- package/dist/types/contexts/ConnectModal.d.ts.map +1 -0
- package/dist/types/contexts/Theme.d.ts +12 -0
- package/dist/types/contexts/Theme.d.ts.map +1 -0
- package/dist/types/contexts/WalletConfig.d.ts +9 -0
- package/dist/types/contexts/WalletConfig.d.ts.map +1 -0
- package/dist/types/contexts/genericContext.d.ts +2 -0
- package/dist/types/contexts/genericContext.d.ts.map +1 -0
- package/dist/types/env.d.ts +2 -0
- package/dist/types/env.d.ts.map +1 -0
- package/dist/types/hooks/useChain.d.ts +2 -0
- package/dist/types/hooks/useChain.d.ts.map +1 -0
- package/dist/types/hooks/useCheckWaasFeeOptions.d.ts +10 -0
- package/dist/types/hooks/useCheckWaasFeeOptions.d.ts.map +1 -0
- package/dist/types/hooks/useOpenConnectModal.d.ts +5 -0
- package/dist/types/hooks/useOpenConnectModal.d.ts.map +1 -0
- package/dist/types/hooks/useProjectAccessKey.d.ts +2 -0
- package/dist/types/hooks/useProjectAccessKey.d.ts.map +1 -0
- package/dist/types/hooks/useSignInEmail.d.ts +2 -0
- package/dist/types/hooks/useSignInEmail.d.ts.map +1 -0
- package/dist/types/hooks/useStorage.d.ts +6 -0
- package/dist/types/hooks/useStorage.d.ts.map +1 -0
- package/dist/types/hooks/useTheme.d.ts +7 -0
- package/dist/types/hooks/useTheme.d.ts.map +1 -0
- package/dist/types/hooks/useWaasConfirmationHandler.d.ts +10 -0
- package/dist/types/hooks/useWaasConfirmationHandler.d.ts.map +1 -0
- package/dist/types/hooks/useWaasEmailAuth.d.ts +32 -0
- package/dist/types/hooks/useWaasEmailAuth.d.ts.map +1 -0
- package/dist/types/hooks/useWaasEmailConflict.d.ts +11 -0
- package/dist/types/hooks/useWaasEmailConflict.d.ts.map +1 -0
- package/dist/types/hooks/useWaasFeeOptions.d.ts +76 -0
- package/dist/types/hooks/useWaasFeeOptions.d.ts.map +1 -0
- package/dist/types/hooks/useWaasGetLinkedWalletsSignature.d.ts +17 -0
- package/dist/types/hooks/useWaasGetLinkedWalletsSignature.d.ts.map +1 -0
- package/dist/types/hooks/useWaasLinkWallet.d.ts +17 -0
- package/dist/types/hooks/useWaasLinkWallet.d.ts.map +1 -0
- package/dist/types/hooks/useWaasSignInEmail.d.ts +5 -0
- package/dist/types/hooks/useWaasSignInEmail.d.ts.map +1 -0
- package/dist/types/hooks/useWalletSettings.d.ts +6 -0
- package/dist/types/hooks/useWalletSettings.d.ts.map +1 -0
- package/dist/types/hooks/useWallets.d.ts +28 -0
- package/dist/types/hooks/useWallets.d.ts.map +1 -0
- package/dist/types/index.d.ts +57 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/styles.d.ts +2 -0
- package/dist/types/styles.d.ts.map +1 -0
- package/dist/types/types.d.ts +72 -0
- package/dist/types/types.d.ts.map +1 -0
- package/dist/types/utils/adapters.d.ts +5 -0
- package/dist/types/utils/adapters.d.ts.map +1 -0
- package/dist/types/utils/deferred.d.ts +9 -0
- package/dist/types/utils/deferred.d.ts.map +1 -0
- package/dist/types/utils/ethAuth.d.ts +7 -0
- package/dist/types/utils/ethAuth.d.ts.map +1 -0
- package/dist/types/utils/getConnectWallets.d.ts +4 -0
- package/dist/types/utils/getConnectWallets.d.ts.map +1 -0
- package/dist/types/utils/helpers.d.ts +15 -0
- package/dist/types/utils/helpers.d.ts.map +1 -0
- package/dist/types/utils/networks.d.ts +4 -0
- package/dist/types/utils/networks.d.ts.map +1 -0
- package/dist/types/utils/styling.d.ts +54 -0
- package/dist/types/utils/styling.d.ts.map +1 -0
- package/dist/types/utils/tokens.d.ts +14 -0
- package/dist/types/utils/tokens.d.ts.map +1 -0
- package/dist/types/utils/transactions.d.ts +29 -0
- package/dist/types/utils/transactions.d.ts.map +1 -0
- package/dist/types/utils/txnDecoding.d.ts +96 -0
- package/dist/types/utils/txnDecoding.d.ts.map +1 -0
- package/package.json +81 -0
- package/src/chains/index.ts +44 -0
- package/src/components/CollectibleTileImage/CollectibleTileImage.tsx +14 -0
- package/src/components/CollectibleTileImage/index.ts +1 -0
- package/src/components/Connect/Banner.tsx +22 -0
- package/src/components/Connect/Connect.tsx +520 -0
- package/src/components/Connect/ConnectedWallets.tsx +179 -0
- package/src/components/Connect/EmailWaasVerify.tsx +118 -0
- package/src/components/Connect/ExtendedWalletList.tsx +122 -0
- package/src/components/Connect/WalletListItem.tsx +93 -0
- package/src/components/Connect/index.ts +1 -0
- package/src/components/ConnectButton/ConnectButton.tsx +197 -0
- package/src/components/ConnectButton/index.ts +1 -0
- package/src/components/CryptoOption.tsx +80 -0
- package/src/components/JsonTreeViewer.tsx +63 -0
- package/src/components/NetworkBadge/NetworkBadge.tsx +36 -0
- package/src/components/NetworkBadge/index.ts +1 -0
- package/src/components/PageHeading/PageHeading.tsx +16 -0
- package/src/components/PageHeading/index.tsx +1 -0
- package/src/components/SelectedIndicator.tsx +21 -0
- package/src/components/SequenceConnect/SequenceConnect.tsx +42 -0
- package/src/components/SequenceConnect/index.ts +1 -0
- package/src/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.tsx +143 -0
- package/src/components/SequenceConnectPreviewProvider/index.ts +1 -0
- package/src/components/SequenceConnectProvider/SequenceConnectProvider.tsx +333 -0
- package/src/components/SequenceConnectProvider/index.ts +1 -0
- package/src/components/SequenceLogo/PoweredBySequence.tsx +21 -0
- package/src/components/SequenceLogo/SequenceLogo.tsx +23 -0
- package/src/components/SequenceLogo/index.ts +2 -0
- package/src/components/ShadowRoot/ShadowRoot.tsx +64 -0
- package/src/components/ShadowRoot/index.ts +1 -0
- package/src/components/TxnDetails/TxnDetails.tsx +225 -0
- package/src/components/TxnDetails/index.ts +1 -0
- package/src/config/createConfig.ts +39 -0
- package/src/config/defaultChains.ts +21 -0
- package/src/config/defaultConnectors.ts +290 -0
- package/src/config/defaultTransports.ts +5 -0
- package/src/connectors/apple/AppleLogo.tsx +52 -0
- package/src/connectors/apple/apple.ts +32 -0
- package/src/connectors/apple/appleWaas.ts +23 -0
- package/src/connectors/apple/index.ts +1 -0
- package/src/connectors/coinbaseWallet/CoinbaseWalletLogo.tsx +17 -0
- package/src/connectors/coinbaseWallet/coinbaseWallet.ts +18 -0
- package/src/connectors/coinbaseWallet/index.ts +1 -0
- package/src/connectors/discord/DiscordLogo.tsx +31 -0
- package/src/connectors/discord/discord.ts +32 -0
- package/src/connectors/discord/index.ts +1 -0
- package/src/connectors/email/EmailLogo.tsx +28 -0
- package/src/connectors/email/email.ts +31 -0
- package/src/connectors/email/emailWaas.ts +21 -0
- package/src/connectors/email/index.ts +1 -0
- package/src/connectors/facebook/FacebookLogo.tsx +52 -0
- package/src/connectors/facebook/facebook.ts +32 -0
- package/src/connectors/facebook/index.ts +1 -0
- package/src/connectors/google/GoogleLogo.tsx +57 -0
- package/src/connectors/google/google.ts +31 -0
- package/src/connectors/google/googleWaas.ts +23 -0
- package/src/connectors/google/index.ts +1 -0
- package/src/connectors/metaMask/MetaMaskLogo.tsx +56 -0
- package/src/connectors/metaMask/index.ts +1 -0
- package/src/connectors/metaMask/metaMask.ts +18 -0
- package/src/connectors/mock/index.ts +1 -0
- package/src/connectors/mock/mock.ts +18 -0
- package/src/connectors/sequence/SequenceLogo.tsx +138 -0
- package/src/connectors/sequence/index.ts +1 -0
- package/src/connectors/sequence/sequence.ts +26 -0
- package/src/connectors/twitch/TwitchLogo.tsx +44 -0
- package/src/connectors/twitch/index.ts +1 -0
- package/src/connectors/twitch/twitch.ts +32 -0
- package/src/connectors/wagmiConnectors/index.ts +2 -0
- package/src/connectors/wagmiConnectors/sequenceConnector.ts +230 -0
- package/src/connectors/wagmiConnectors/sequenceWaasConnector.ts +546 -0
- package/src/connectors/walletConnect/WalletConnectLogo.tsx +14 -0
- package/src/connectors/walletConnect/index.ts +1 -0
- package/src/connectors/walletConnect/walletConnect.ts +64 -0
- package/src/constants/ethAuth.ts +2 -0
- package/src/constants/index.ts +6 -0
- package/src/constants/localStorage.ts +31 -0
- package/src/constants/queryKeys.ts +21 -0
- package/src/constants/swaps.ts +2 -0
- package/src/constants/transactions.ts +1 -0
- package/src/constants/version.ts +1 -0
- package/src/constants/walletLinking.ts +2 -0
- package/src/contexts/Analytics.ts +14 -0
- package/src/contexts/ConnectConfig.ts +7 -0
- package/src/contexts/ConnectModal.ts +13 -0
- package/src/contexts/Theme.ts +17 -0
- package/src/contexts/WalletConfig.ts +13 -0
- package/src/contexts/genericContext.ts +19 -0
- package/src/env.ts +2 -0
- package/src/hooks/useChain.ts +9 -0
- package/src/hooks/useCheckWaasFeeOptions.ts +34 -0
- package/src/hooks/useOpenConnectModal.ts +7 -0
- package/src/hooks/useProjectAccessKey.ts +7 -0
- package/src/hooks/useSignInEmail.ts +28 -0
- package/src/hooks/useStorage.ts +27 -0
- package/src/hooks/useTheme.ts +12 -0
- package/src/hooks/useWaasConfirmationHandler.ts +68 -0
- package/src/hooks/useWaasEmailAuth.ts +123 -0
- package/src/hooks/useWaasEmailConflict.ts +75 -0
- package/src/hooks/useWaasFeeOptions.ts +203 -0
- package/src/hooks/useWaasGetLinkedWalletsSignature.ts +166 -0
- package/src/hooks/useWaasLinkWallet.ts +117 -0
- package/src/hooks/useWaasSignInEmail.ts +32 -0
- package/src/hooks/useWalletSettings.ts +11 -0
- package/src/hooks/useWallets.ts +227 -0
- package/src/index.css +5 -0
- package/src/index.ts +108 -0
- package/src/styles.ts +2215 -0
- package/src/types/provider.d.ts +9 -0
- package/src/types.ts +92 -0
- package/src/utils/adapters.ts +29 -0
- package/src/utils/deferred.ts +21 -0
- package/src/utils/ethAuth.ts +70 -0
- package/src/utils/getConnectWallets.ts +25 -0
- package/src/utils/helpers.ts +124 -0
- package/src/utils/networks.ts +63 -0
- package/src/utils/styling.ts +52 -0
- package/src/utils/tokens.ts +56 -0
- package/src/utils/transactions.ts +246 -0
- package/src/utils/txnDecoding.ts +554 -0
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
|
|
3
|
+
import { ContractVerificationStatus } from '@0xsequence/indexer'
|
|
4
|
+
import { useIndexerClient } from '@0xsequence/react-hooks'
|
|
5
|
+
import type { FeeOption } from '@0xsequence/waas'
|
|
6
|
+
import { type ethers } from 'ethers'
|
|
7
|
+
import { useState, useEffect, useRef } from 'react'
|
|
8
|
+
import { formatUnits } from 'viem'
|
|
9
|
+
import type { Connector } from 'wagmi'
|
|
10
|
+
import { useConnections } from 'wagmi'
|
|
11
|
+
|
|
12
|
+
import { Deferred } from '../utils/deferred'
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Extended FeeOption type that includes balance information
|
|
16
|
+
*/
|
|
17
|
+
export type FeeOptionExtended = FeeOption & {
|
|
18
|
+
/** Raw balance string */
|
|
19
|
+
balance: string
|
|
20
|
+
/** Formatted balance with proper decimals */
|
|
21
|
+
balanceFormatted: string
|
|
22
|
+
/** Indicates if the wallet has enough balance to pay the fee */
|
|
23
|
+
hasEnoughBalanceForFee: boolean
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Fee option confirmation data structure
|
|
28
|
+
*/
|
|
29
|
+
export type WaasFeeOptionConfirmation = {
|
|
30
|
+
/** Unique identifier for the fee confirmation */
|
|
31
|
+
id: string
|
|
32
|
+
/** Available fee options with balance information */
|
|
33
|
+
options: FeeOptionExtended[] | FeeOption[]
|
|
34
|
+
/** Chain ID where the transaction will be executed */
|
|
35
|
+
chainId: number
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Return type for the useWaasFeeOptions hook
|
|
40
|
+
*/
|
|
41
|
+
export type UseWaasFeeOptionsReturn = [
|
|
42
|
+
pendingFeeOptionConfirmation: WaasFeeOptionConfirmation | undefined,
|
|
43
|
+
confirmPendingFeeOption: (id: string, feeTokenAddress: string | null) => void,
|
|
44
|
+
rejectPendingFeeOption: (id: string) => void
|
|
45
|
+
]
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Options for the useWaasFeeOptions hook
|
|
49
|
+
*/
|
|
50
|
+
export interface WaasFeeOptionsConfig {
|
|
51
|
+
/** Whether to skip checking token balances (default: false) */
|
|
52
|
+
skipFeeBalanceCheck?: boolean
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Hook for handling WaaS (Wallet as a Service) fee options for unsponsored transactions
|
|
57
|
+
*
|
|
58
|
+
* This hook provides functionality to:
|
|
59
|
+
* - Get available fee options for a transaction in Native Token and ERC20's
|
|
60
|
+
* - Provide user wallet balances for each fee option
|
|
61
|
+
* - Confirm or reject fee selections
|
|
62
|
+
*
|
|
63
|
+
* @param options - Configuration options for the hook
|
|
64
|
+
* @returns {UseWaasFeeOptionsReturn} Array containing the confirmation state and control functions
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```tsx
|
|
68
|
+
* // Use the hook with default balance checking, this will fetch the user's wallet balances for each fee option and provide them in the UseWaasFeeOptionsReturn
|
|
69
|
+
* const [
|
|
70
|
+
* pendingFeeOptionConfirmation,
|
|
71
|
+
* confirmPendingFeeOption,
|
|
72
|
+
* rejectPendingFeeOption
|
|
73
|
+
* ] = useWaasFeeOptions();
|
|
74
|
+
*
|
|
75
|
+
* // Or skip balance checking if needed
|
|
76
|
+
* // const [pendingFeeOptionConfirmation, confirmPendingFeeOption, rejectPendingFeeOption] =
|
|
77
|
+
* // useWaasFeeOptions({ skipFeeBalanceCheck: true });
|
|
78
|
+
*
|
|
79
|
+
* const [selectedFeeOptionTokenName, setSelectedFeeOptionTokenName] = useState<string>();
|
|
80
|
+
* const [feeOptionAlert, setFeeOptionAlert] = useState<AlertProps>();
|
|
81
|
+
*
|
|
82
|
+
* // Initialize with first option when fee options become available
|
|
83
|
+
* useEffect(() => {
|
|
84
|
+
* if (pendingFeeOptionConfirmation) {
|
|
85
|
+
* console.log('Pending fee options: ', pendingFeeOptionConfirmation.options)
|
|
86
|
+
* }
|
|
87
|
+
* }, [pendingFeeOptionConfirmation]);
|
|
88
|
+
*
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
export function useWaasFeeOptions(options?: WaasFeeOptionsConfig): UseWaasFeeOptionsReturn {
|
|
92
|
+
const { skipFeeBalanceCheck = false } = options || {}
|
|
93
|
+
const connections = useConnections()
|
|
94
|
+
const waasConnector: Connector | undefined = connections.find((c: any) => c.connector.id.includes('waas'))?.connector
|
|
95
|
+
const [pendingFeeOptionConfirmation, setPendingFeeOptionConfirmation] = useState<WaasFeeOptionConfirmation | undefined>()
|
|
96
|
+
const pendingConfirmationRef = useRef<
|
|
97
|
+
Deferred<{ id: string; feeTokenAddress?: string | null; confirmed: boolean }> | undefined
|
|
98
|
+
>(undefined)
|
|
99
|
+
const indexerClient = useIndexerClient(connections[0].chainId ?? 1)
|
|
100
|
+
|
|
101
|
+
// Reset state when chainId changes
|
|
102
|
+
useEffect(() => {
|
|
103
|
+
setPendingFeeOptionConfirmation(undefined)
|
|
104
|
+
pendingConfirmationRef.current = undefined
|
|
105
|
+
}, [])
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Confirms the selected fee option
|
|
109
|
+
* @param id - The fee confirmation ID
|
|
110
|
+
* @param feeTokenAddress - The address of the token to use for fee payment (null for native token)
|
|
111
|
+
*/
|
|
112
|
+
function confirmPendingFeeOption(id: string, feeTokenAddress: string | null) {
|
|
113
|
+
if (pendingConfirmationRef.current) {
|
|
114
|
+
pendingConfirmationRef.current.resolve({ id, feeTokenAddress, confirmed: true })
|
|
115
|
+
setPendingFeeOptionConfirmation(undefined)
|
|
116
|
+
pendingConfirmationRef.current = undefined
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* Rejects the current fee option confirmation
|
|
122
|
+
* @param id - The fee confirmation ID to reject
|
|
123
|
+
*/
|
|
124
|
+
function rejectPendingFeeOption(id: string) {
|
|
125
|
+
if (pendingConfirmationRef.current) {
|
|
126
|
+
pendingConfirmationRef.current.resolve({ id, feeTokenAddress: undefined, confirmed: false })
|
|
127
|
+
setPendingFeeOptionConfirmation(undefined)
|
|
128
|
+
pendingConfirmationRef.current = undefined
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
useEffect(() => {
|
|
133
|
+
if (!waasConnector) {
|
|
134
|
+
return
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
const waasProvider = (waasConnector as any).sequenceWaasProvider
|
|
138
|
+
if (!waasProvider) {
|
|
139
|
+
return
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
const originalHandler = waasProvider.feeConfirmationHandler
|
|
143
|
+
|
|
144
|
+
waasProvider.feeConfirmationHandler = {
|
|
145
|
+
async confirmFeeOption(
|
|
146
|
+
id: string,
|
|
147
|
+
options: FeeOption[],
|
|
148
|
+
txs: ethers.Transaction[],
|
|
149
|
+
chainId: number
|
|
150
|
+
): Promise<{ id: string; feeTokenAddress?: string | null; confirmed: boolean }> {
|
|
151
|
+
const pending = new Deferred<{ id: string; feeTokenAddress?: string | null; confirmed: boolean }>()
|
|
152
|
+
pendingConfirmationRef.current = pending
|
|
153
|
+
const accountAddress = connections[0]?.accounts[0]
|
|
154
|
+
if (!accountAddress) {
|
|
155
|
+
throw new Error('No account address available')
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
if (!skipFeeBalanceCheck) {
|
|
159
|
+
const optionsWithBalances = await Promise.all(
|
|
160
|
+
options.map(async option => {
|
|
161
|
+
if (option.token.contractAddress) {
|
|
162
|
+
const tokenBalances = await indexerClient.getTokenBalancesByContract({
|
|
163
|
+
filter: {
|
|
164
|
+
accountAddresses: [accountAddress],
|
|
165
|
+
contractStatus: ContractVerificationStatus.ALL,
|
|
166
|
+
contractAddresses: [option.token.contractAddress]
|
|
167
|
+
},
|
|
168
|
+
omitMetadata: true
|
|
169
|
+
})
|
|
170
|
+
const tokenBalance = tokenBalances.balances[0]?.balance
|
|
171
|
+
return {
|
|
172
|
+
...option,
|
|
173
|
+
balanceFormatted: option.token.decimals
|
|
174
|
+
? formatUnits(BigInt(tokenBalances.balances[0]?.balance ?? '0'), option.token.decimals)
|
|
175
|
+
: (tokenBalances.balances[0]?.balance ?? '0'),
|
|
176
|
+
balance: tokenBalances.balances[0]?.balance ?? '0',
|
|
177
|
+
hasEnoughBalanceForFee: tokenBalance ? BigInt(option.value) <= BigInt(tokenBalance) : false
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
const nativeBalance = await indexerClient.getNativeTokenBalance({ accountAddress })
|
|
181
|
+
return {
|
|
182
|
+
...option,
|
|
183
|
+
balanceFormatted: formatUnits(BigInt(nativeBalance.balance.balance), 18),
|
|
184
|
+
balance: nativeBalance.balance.balance,
|
|
185
|
+
hasEnoughBalanceForFee: BigInt(option.value) <= BigInt(nativeBalance.balance.balance)
|
|
186
|
+
}
|
|
187
|
+
})
|
|
188
|
+
)
|
|
189
|
+
setPendingFeeOptionConfirmation({ id, options: optionsWithBalances, chainId })
|
|
190
|
+
} else {
|
|
191
|
+
setPendingFeeOptionConfirmation({ id, options, chainId })
|
|
192
|
+
}
|
|
193
|
+
return pending.promise
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
return () => {
|
|
198
|
+
waasProvider.feeConfirmationHandler = originalHandler
|
|
199
|
+
}
|
|
200
|
+
}, [waasConnector, indexerClient])
|
|
201
|
+
|
|
202
|
+
return [pendingFeeOptionConfirmation, confirmPendingFeeOption, rejectPendingFeeOption]
|
|
203
|
+
}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
|
|
3
|
+
import { SequenceWaaS } from '@0xsequence/waas'
|
|
4
|
+
import { useState, useEffect } from 'react'
|
|
5
|
+
import { Address } from 'viem'
|
|
6
|
+
import { Connector } from 'wagmi'
|
|
7
|
+
|
|
8
|
+
import { CHAIN_ID_FOR_SIGNATURE } from '../constants/walletLinking'
|
|
9
|
+
|
|
10
|
+
interface UseWaasSignatureForLinkingResult {
|
|
11
|
+
message: string | undefined
|
|
12
|
+
signature: string | undefined
|
|
13
|
+
address: string | undefined
|
|
14
|
+
chainId: number
|
|
15
|
+
loading: boolean
|
|
16
|
+
error: Error | null
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
const WAAS_SIGNATURE_PREFIX = '@0xsequence.waas_signature-'
|
|
20
|
+
const getSignatureKey = (address: string) => `${WAAS_SIGNATURE_PREFIX}${address}`
|
|
21
|
+
|
|
22
|
+
export const useWaasGetLinkedWalletsSignature = (
|
|
23
|
+
connection:
|
|
24
|
+
| {
|
|
25
|
+
accounts: readonly [Address, ...Address[]]
|
|
26
|
+
chainId: number
|
|
27
|
+
connector: Connector
|
|
28
|
+
}
|
|
29
|
+
| undefined
|
|
30
|
+
): UseWaasSignatureForLinkingResult => {
|
|
31
|
+
const sequenceWaas: SequenceWaaS | undefined = (connection as any)?.connector?.sequenceWaas
|
|
32
|
+
const address = connection?.accounts[0]
|
|
33
|
+
|
|
34
|
+
// Try to get cached signature during initial state setup
|
|
35
|
+
const initialState = (): UseWaasSignatureForLinkingResult => {
|
|
36
|
+
if (address) {
|
|
37
|
+
const cached = localStorage.getItem(getSignatureKey(address))
|
|
38
|
+
if (cached) {
|
|
39
|
+
try {
|
|
40
|
+
const parsed = JSON.parse(cached)
|
|
41
|
+
const timestamp = parsed.timestamp || 0
|
|
42
|
+
const age = Date.now() - timestamp
|
|
43
|
+
const MAX_AGE = 24 * 60 * 60 * 1000 // 24 hours in milliseconds
|
|
44
|
+
|
|
45
|
+
if (age < MAX_AGE) {
|
|
46
|
+
return {
|
|
47
|
+
message: parsed.message,
|
|
48
|
+
signature: parsed.signature,
|
|
49
|
+
address: parsed.address,
|
|
50
|
+
chainId: CHAIN_ID_FOR_SIGNATURE,
|
|
51
|
+
loading: false,
|
|
52
|
+
error: null
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
localStorage.removeItem(getSignatureKey(address))
|
|
56
|
+
} catch (e) {
|
|
57
|
+
localStorage.removeItem(getSignatureKey(address))
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
return {
|
|
63
|
+
message: undefined,
|
|
64
|
+
signature: undefined,
|
|
65
|
+
address: address,
|
|
66
|
+
chainId: CHAIN_ID_FOR_SIGNATURE,
|
|
67
|
+
loading: false,
|
|
68
|
+
error: null
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
const [result, setResult] = useState<UseWaasSignatureForLinkingResult>(initialState)
|
|
73
|
+
|
|
74
|
+
useEffect(() => {
|
|
75
|
+
if (!sequenceWaas) {
|
|
76
|
+
return
|
|
77
|
+
}
|
|
78
|
+
if (!address) {
|
|
79
|
+
return
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
// Clean up signatures from other addresses
|
|
83
|
+
Object.keys(localStorage)
|
|
84
|
+
.filter(key => key.startsWith(WAAS_SIGNATURE_PREFIX) && key !== getSignatureKey(address))
|
|
85
|
+
.forEach(key => localStorage.removeItem(key))
|
|
86
|
+
|
|
87
|
+
// Try to get cached signature for current address
|
|
88
|
+
const cached = localStorage.getItem(getSignatureKey(address))
|
|
89
|
+
if (cached) {
|
|
90
|
+
try {
|
|
91
|
+
const parsed = JSON.parse(cached)
|
|
92
|
+
const timestamp = parsed.timestamp || 0
|
|
93
|
+
const age = Date.now() - timestamp
|
|
94
|
+
const MAX_AGE = 24 * 60 * 60 * 1000 // 24 hours in milliseconds
|
|
95
|
+
|
|
96
|
+
if (age < MAX_AGE) {
|
|
97
|
+
setResult({
|
|
98
|
+
message: parsed.message,
|
|
99
|
+
signature: parsed.signature,
|
|
100
|
+
address: parsed.address,
|
|
101
|
+
chainId: CHAIN_ID_FOR_SIGNATURE,
|
|
102
|
+
loading: false,
|
|
103
|
+
error: null
|
|
104
|
+
})
|
|
105
|
+
return
|
|
106
|
+
} else {
|
|
107
|
+
localStorage.removeItem(getSignatureKey(address))
|
|
108
|
+
}
|
|
109
|
+
} catch (e) {
|
|
110
|
+
localStorage.removeItem(getSignatureKey(address))
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
// Generate new signature if no valid cached one exists
|
|
115
|
+
const getSignature = async () => {
|
|
116
|
+
try {
|
|
117
|
+
setResult(prev => ({ ...prev, loading: true, error: null }))
|
|
118
|
+
|
|
119
|
+
const message = `parent wallet with address ${address}`
|
|
120
|
+
const signedMessage = await sequenceWaas?.signMessage({
|
|
121
|
+
message,
|
|
122
|
+
network: CHAIN_ID_FOR_SIGNATURE
|
|
123
|
+
})
|
|
124
|
+
|
|
125
|
+
if (!signedMessage) {
|
|
126
|
+
throw new Error('Failed to sign message')
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
const newResult = {
|
|
130
|
+
message,
|
|
131
|
+
signature: signedMessage.data.signature,
|
|
132
|
+
address,
|
|
133
|
+
chainId: CHAIN_ID_FOR_SIGNATURE,
|
|
134
|
+
loading: false,
|
|
135
|
+
error: null
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
// Cache the signature in localStorage with timestamp
|
|
139
|
+
localStorage.setItem(
|
|
140
|
+
getSignatureKey(address),
|
|
141
|
+
JSON.stringify({
|
|
142
|
+
message,
|
|
143
|
+
signature: signedMessage.data.signature,
|
|
144
|
+
address,
|
|
145
|
+
timestamp: Date.now()
|
|
146
|
+
})
|
|
147
|
+
)
|
|
148
|
+
|
|
149
|
+
setResult(newResult)
|
|
150
|
+
} catch (error) {
|
|
151
|
+
setResult({
|
|
152
|
+
message: undefined,
|
|
153
|
+
signature: undefined,
|
|
154
|
+
address: undefined,
|
|
155
|
+
chainId: CHAIN_ID_FOR_SIGNATURE,
|
|
156
|
+
loading: false,
|
|
157
|
+
error: error as Error
|
|
158
|
+
})
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
getSignature()
|
|
163
|
+
}, [address]) // Only regenerate when address changes
|
|
164
|
+
|
|
165
|
+
return result
|
|
166
|
+
}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
|
|
3
|
+
import { useAPIClient } from '@0xsequence/react-hooks'
|
|
4
|
+
import { SequenceWaaS } from '@0xsequence/waas'
|
|
5
|
+
import { useState } from 'react'
|
|
6
|
+
import { Connector } from 'wagmi'
|
|
7
|
+
|
|
8
|
+
import { CHAIN_ID_FOR_SIGNATURE } from '../constants/walletLinking'
|
|
9
|
+
|
|
10
|
+
interface LinkWalletParams {
|
|
11
|
+
signatureChainId: number
|
|
12
|
+
connectorName: string
|
|
13
|
+
childWalletAddress: string
|
|
14
|
+
childMessage: string
|
|
15
|
+
childSignature: string
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
interface UseWaasLinkWalletResult {
|
|
19
|
+
linkWallet: (params: LinkWalletParams) => Promise<void>
|
|
20
|
+
removeLinkedWallet: (linkedWalletAddress: string) => Promise<void>
|
|
21
|
+
loading: boolean
|
|
22
|
+
error: Error | null
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export const useWaasLinkWallet = (connector: Connector | undefined): UseWaasLinkWalletResult => {
|
|
26
|
+
const [loading, setLoading] = useState(false)
|
|
27
|
+
const [error, setError] = useState<Error | null>(null)
|
|
28
|
+
const apiClient = useAPIClient()
|
|
29
|
+
|
|
30
|
+
const linkWallet = async ({
|
|
31
|
+
signatureChainId,
|
|
32
|
+
connectorName,
|
|
33
|
+
childWalletAddress,
|
|
34
|
+
childMessage,
|
|
35
|
+
childSignature
|
|
36
|
+
}: LinkWalletParams) => {
|
|
37
|
+
const sequenceWaas: SequenceWaaS | undefined = (connector as any)?.sequenceWaas
|
|
38
|
+
|
|
39
|
+
try {
|
|
40
|
+
setLoading(true)
|
|
41
|
+
setError(null)
|
|
42
|
+
|
|
43
|
+
const parentWalletAddress = await sequenceWaas?.getAddress()
|
|
44
|
+
if (!parentWalletAddress) {
|
|
45
|
+
throw new Error('Failed to fetch WaaS address')
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
const parentWalletMessage = 'Link child wallet with address: ' + childWalletAddress
|
|
49
|
+
const parentWalletSignature = await sequenceWaas?.signMessage({
|
|
50
|
+
message: parentWalletMessage,
|
|
51
|
+
network: CHAIN_ID_FOR_SIGNATURE
|
|
52
|
+
})
|
|
53
|
+
|
|
54
|
+
if (!parentWalletSignature) {
|
|
55
|
+
throw new Error('Failed to sign message')
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
await apiClient.linkWallet({
|
|
59
|
+
signatureChainId: String(signatureChainId),
|
|
60
|
+
linkedWalletType: connectorName,
|
|
61
|
+
parentWalletAddress,
|
|
62
|
+
parentWalletMessage,
|
|
63
|
+
parentWalletSignature: parentWalletSignature.data.signature,
|
|
64
|
+
linkedWalletAddress: childWalletAddress,
|
|
65
|
+
linkedWalletMessage: childMessage,
|
|
66
|
+
linkedWalletSignature: childSignature
|
|
67
|
+
})
|
|
68
|
+
} catch (err) {
|
|
69
|
+
setError(err as Error)
|
|
70
|
+
} finally {
|
|
71
|
+
setLoading(false)
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
const removeLinkedWallet = async (linkedWalletAddress: string) => {
|
|
76
|
+
const sequenceWaas: SequenceWaaS | undefined = (connector as any)?.sequenceWaas
|
|
77
|
+
|
|
78
|
+
try {
|
|
79
|
+
setLoading(true)
|
|
80
|
+
setError(null)
|
|
81
|
+
|
|
82
|
+
const parentWalletAddress = await sequenceWaas?.getAddress()
|
|
83
|
+
if (!parentWalletAddress) {
|
|
84
|
+
throw new Error('Failed to fetch WaaS address')
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
const parentWalletMessage = 'Remove linked wallet with address: ' + linkedWalletAddress
|
|
88
|
+
const parentWalletSignature = await sequenceWaas?.signMessage({
|
|
89
|
+
message: parentWalletMessage,
|
|
90
|
+
network: CHAIN_ID_FOR_SIGNATURE
|
|
91
|
+
})
|
|
92
|
+
|
|
93
|
+
if (!parentWalletSignature) {
|
|
94
|
+
throw new Error('Failed to sign message')
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
await apiClient.removeLinkedWallet({
|
|
98
|
+
parentWalletAddress,
|
|
99
|
+
parentWalletMessage,
|
|
100
|
+
parentWalletSignature: parentWalletSignature.data.signature,
|
|
101
|
+
linkedWalletAddress,
|
|
102
|
+
signatureChainId: String(CHAIN_ID_FOR_SIGNATURE)
|
|
103
|
+
})
|
|
104
|
+
} catch (err) {
|
|
105
|
+
setError(err as Error)
|
|
106
|
+
} finally {
|
|
107
|
+
setLoading(false)
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
return {
|
|
112
|
+
linkWallet,
|
|
113
|
+
removeLinkedWallet,
|
|
114
|
+
loading,
|
|
115
|
+
error
|
|
116
|
+
}
|
|
117
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
|
|
3
|
+
import { useEffect, useState } from 'react'
|
|
4
|
+
import { useConfig, useAccount } from 'wagmi'
|
|
5
|
+
|
|
6
|
+
import { LocalStorageKey } from '../constants/localStorage'
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* @deprecated use useSignInEmail instead
|
|
10
|
+
*/
|
|
11
|
+
export const useWaasSignInEmail = () => {
|
|
12
|
+
const { storage } = useConfig()
|
|
13
|
+
const { isConnected } = useAccount()
|
|
14
|
+
const [email, setEmail] = useState<null | string>(null)
|
|
15
|
+
|
|
16
|
+
const storeEmail = async () => {
|
|
17
|
+
const key = LocalStorageKey.WaasSignInEmail
|
|
18
|
+
const storedEmail = await storage?.getItem(key as any)
|
|
19
|
+
|
|
20
|
+
setEmail(storedEmail as string)
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
useEffect(() => {
|
|
24
|
+
if (isConnected) {
|
|
25
|
+
storeEmail()
|
|
26
|
+
} else {
|
|
27
|
+
setEmail(null)
|
|
28
|
+
}
|
|
29
|
+
}, [isConnected])
|
|
30
|
+
|
|
31
|
+
return email
|
|
32
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { useWalletConfigContext } from '../contexts/WalletConfig'
|
|
2
|
+
|
|
3
|
+
export const useWalletSettings = () => {
|
|
4
|
+
const { setDisplayedAssets, displayedAssets, readOnlyNetworks } = useWalletConfigContext()
|
|
5
|
+
|
|
6
|
+
return {
|
|
7
|
+
displayedAssets,
|
|
8
|
+
readOnlyNetworks,
|
|
9
|
+
setDisplayedAssets
|
|
10
|
+
}
|
|
11
|
+
}
|