@0xsequence/connect 5.4.7 → 6.0.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +108 -191
- package/dist/cjs/components/Connect/Banner.js +1 -1
- package/dist/cjs/components/Connect/Banner.js.map +1 -1
- package/dist/cjs/components/Connect/Connect.d.ts +7 -1
- package/dist/cjs/components/Connect/Connect.d.ts.map +1 -1
- package/dist/cjs/components/Connect/Connect.js +381 -45
- package/dist/cjs/components/Connect/Connect.js.map +1 -1
- package/dist/cjs/components/Connect/ConnectedWallets.d.ts.map +1 -1
- package/dist/cjs/components/Connect/ConnectedWallets.js +4 -3
- package/dist/cjs/components/Connect/ConnectedWallets.js.map +1 -1
- package/dist/cjs/components/Connect/EmailWaasVerify.d.ts.map +1 -1
- package/dist/cjs/components/Connect/EmailWaasVerify.js +1 -0
- package/dist/cjs/components/Connect/EmailWaasVerify.js.map +1 -1
- package/dist/cjs/components/Connect/ExtendedWalletList.d.ts +2 -1
- package/dist/cjs/components/Connect/ExtendedWalletList.d.ts.map +1 -1
- package/dist/cjs/components/Connect/ExtendedWalletList.js +6 -4
- package/dist/cjs/components/Connect/ExtendedWalletList.js.map +1 -1
- package/dist/cjs/components/Connect/WalletListItem.js +1 -1
- package/dist/cjs/components/Connect/WalletListItem.js.map +1 -1
- package/dist/cjs/components/ConnectButton/ConnectButton.d.ts.map +1 -1
- package/dist/cjs/components/ConnectButton/ConnectButton.js +11 -6
- package/dist/cjs/components/ConnectButton/ConnectButton.js.map +1 -1
- package/dist/cjs/components/ConnectButton/index.d.ts +1 -1
- package/dist/cjs/components/ConnectButton/index.d.ts.map +1 -1
- package/dist/cjs/components/ConnectButton/index.js +3 -1
- package/dist/cjs/components/ConnectButton/index.js.map +1 -1
- package/dist/cjs/components/CryptoOption.js +1 -1
- package/dist/cjs/components/CryptoOption.js.map +1 -1
- package/dist/cjs/components/EpicAuthProvider/EpicAuthProvider.d.ts +2 -1
- package/dist/cjs/components/EpicAuthProvider/EpicAuthProvider.d.ts.map +1 -1
- package/dist/cjs/components/EpicAuthProvider/EpicAuthProvider.js +7 -10
- package/dist/cjs/components/EpicAuthProvider/EpicAuthProvider.js.map +1 -1
- package/dist/cjs/components/SequenceConnectInlineProvider/SequenceConnectInlineProvider.d.ts.map +1 -1
- package/dist/cjs/components/SequenceConnectInlineProvider/SequenceConnectInlineProvider.js +24 -6
- package/dist/cjs/components/SequenceConnectInlineProvider/SequenceConnectInlineProvider.js.map +1 -1
- package/dist/cjs/components/SequenceConnectPreview/SequenceConnectPreviewProvider.d.ts.map +1 -1
- package/dist/cjs/components/SequenceConnectPreview/SequenceConnectPreviewProvider.js +19 -2
- package/dist/cjs/components/SequenceConnectPreview/SequenceConnectPreviewProvider.js.map +1 -1
- package/dist/cjs/components/SequenceConnectProvider/SequenceConnectProvider.d.ts.map +1 -1
- package/dist/cjs/components/SequenceConnectProvider/SequenceConnectProvider.js +21 -11
- package/dist/cjs/components/SequenceConnectProvider/SequenceConnectProvider.js.map +1 -1
- package/dist/cjs/components/SocialLink/SocialLink.d.ts.map +1 -1
- package/dist/cjs/components/SocialLink/SocialLink.js +28 -28
- package/dist/cjs/components/SocialLink/SocialLink.js.map +1 -1
- package/dist/cjs/config/createConfig.d.ts +2 -1
- package/dist/cjs/config/createConfig.d.ts.map +1 -1
- package/dist/cjs/config/createConfig.js +8 -4
- package/dist/cjs/config/createConfig.js.map +1 -1
- package/dist/cjs/config/defaultConnectors.d.ts +28 -27
- package/dist/cjs/config/defaultConnectors.d.ts.map +1 -1
- package/dist/cjs/config/defaultConnectors.js +94 -65
- package/dist/cjs/config/defaultConnectors.js.map +1 -1
- package/dist/cjs/connectors/X/XAuth.d.ts.map +1 -1
- package/dist/cjs/connectors/X/XAuth.js +0 -2
- package/dist/cjs/connectors/X/XAuth.js.map +1 -1
- package/dist/cjs/connectors/X/XWaas.d.ts +1 -1
- package/dist/cjs/connectors/X/XWaas.d.ts.map +1 -1
- package/dist/cjs/connectors/X/XWaas.js +2 -2
- package/dist/cjs/connectors/X/XWaas.js.map +1 -1
- package/dist/cjs/connectors/apple/AppleLogo.d.ts +1 -1
- package/dist/cjs/connectors/apple/AppleLogo.d.ts.map +1 -1
- package/dist/cjs/connectors/apple/AppleLogo.js +5 -5
- package/dist/cjs/connectors/apple/AppleLogo.js.map +1 -1
- package/dist/cjs/connectors/apple/appleWaas.js +2 -2
- package/dist/cjs/connectors/apple/applev3.d.ts +5 -0
- package/dist/cjs/connectors/apple/applev3.d.ts.map +1 -0
- package/dist/cjs/connectors/apple/applev3.js +23 -0
- package/dist/cjs/connectors/apple/applev3.js.map +1 -0
- package/dist/cjs/connectors/apple/index.d.ts +2 -1
- package/dist/cjs/connectors/apple/index.d.ts.map +1 -1
- package/dist/cjs/connectors/apple/index.js +2 -1
- package/dist/cjs/connectors/apple/index.js.map +1 -1
- package/dist/cjs/connectors/ecosystem/ecosystemV3.d.ts +11 -0
- package/dist/cjs/connectors/ecosystem/ecosystemV3.d.ts.map +1 -0
- package/dist/cjs/connectors/ecosystem/ecosystemV3.js +52 -0
- package/dist/cjs/connectors/ecosystem/ecosystemV3.js.map +1 -0
- package/dist/cjs/connectors/email/emailv3.d.ts +5 -0
- package/dist/cjs/connectors/email/emailv3.d.ts.map +1 -0
- package/dist/cjs/connectors/email/emailv3.js +21 -0
- package/dist/cjs/connectors/email/emailv3.js.map +1 -0
- package/dist/cjs/connectors/email/index.d.ts +2 -1
- package/dist/cjs/connectors/email/index.d.ts.map +1 -1
- package/dist/cjs/connectors/email/index.js +2 -1
- package/dist/cjs/connectors/email/index.js.map +1 -1
- package/dist/cjs/connectors/epic/EpicLogo.d.ts +5 -4
- package/dist/cjs/connectors/epic/EpicLogo.d.ts.map +1 -1
- package/dist/cjs/connectors/epic/EpicLogo.js +1 -1
- package/dist/cjs/connectors/epic/EpicLogo.js.map +1 -1
- package/dist/cjs/connectors/epic/epicWaas.d.ts.map +1 -1
- package/dist/cjs/connectors/epic/epicWaas.js +2 -3
- package/dist/cjs/connectors/epic/epicWaas.js.map +1 -1
- package/dist/cjs/connectors/google/googleV3.d.ts +5 -0
- package/dist/cjs/connectors/google/googleV3.d.ts.map +1 -0
- package/dist/cjs/connectors/google/googleV3.js +23 -0
- package/dist/cjs/connectors/google/googleV3.js.map +1 -0
- package/dist/cjs/connectors/google/index.d.ts +2 -1
- package/dist/cjs/connectors/google/index.d.ts.map +1 -1
- package/dist/cjs/connectors/google/index.js +2 -1
- package/dist/cjs/connectors/google/index.js.map +1 -1
- package/dist/cjs/connectors/guest/guestWaas.d.ts.map +1 -1
- package/dist/cjs/connectors/guest/guestWaas.js +3 -2
- package/dist/cjs/connectors/guest/guestWaas.js.map +1 -1
- package/dist/cjs/connectors/guest/index.d.ts +2 -0
- package/dist/cjs/connectors/guest/index.d.ts.map +1 -0
- package/dist/cjs/connectors/{sequence → guest}/index.js +1 -1
- package/dist/cjs/connectors/guest/index.js.map +1 -0
- package/dist/cjs/connectors/mock/SequenceLogo.d.ts.map +1 -0
- package/dist/cjs/connectors/mock/SequenceLogo.js.map +1 -0
- package/dist/cjs/connectors/mock/mock.d.ts.map +1 -1
- package/dist/cjs/connectors/mock/mock.js +1 -1
- package/dist/cjs/connectors/mock/mock.js.map +1 -1
- package/dist/cjs/connectors/passkey/PasskeyLogo.d.ts +9 -0
- package/dist/cjs/connectors/passkey/PasskeyLogo.d.ts.map +1 -0
- package/dist/cjs/connectors/passkey/PasskeyLogo.js +13 -0
- package/dist/cjs/connectors/passkey/PasskeyLogo.js.map +1 -0
- package/dist/cjs/connectors/passkey/passkeyV3.d.ts +5 -0
- package/dist/cjs/connectors/passkey/passkeyV3.d.ts.map +1 -0
- package/dist/cjs/connectors/passkey/passkeyV3.js +21 -0
- package/dist/cjs/connectors/passkey/passkeyV3.js.map +1 -0
- package/dist/cjs/connectors/wagmiConnectors/index.d.ts +1 -1
- package/dist/cjs/connectors/wagmiConnectors/index.d.ts.map +1 -1
- package/dist/cjs/connectors/wagmiConnectors/index.js +1 -1
- package/dist/cjs/connectors/wagmiConnectors/index.js.map +1 -1
- package/dist/cjs/connectors/wagmiConnectors/sequenceV3Connector.d.ts +69 -0
- package/dist/cjs/connectors/wagmiConnectors/sequenceV3Connector.d.ts.map +1 -0
- package/dist/cjs/connectors/wagmiConnectors/sequenceV3Connector.js +468 -0
- package/dist/cjs/connectors/wagmiConnectors/sequenceV3Connector.js.map +1 -0
- package/dist/cjs/connectors/wagmiConnectors/sequenceWaasConnector.d.ts +15 -8
- package/dist/cjs/connectors/wagmiConnectors/sequenceWaasConnector.d.ts.map +1 -1
- package/dist/cjs/connectors/wagmiConnectors/sequenceWaasConnector.js +153 -40
- package/dist/cjs/connectors/wagmiConnectors/sequenceWaasConnector.js.map +1 -1
- package/dist/cjs/connectors/walletConnect/walletConnect.d.ts.map +1 -1
- package/dist/cjs/connectors/walletConnect/walletConnect.js +1 -1
- package/dist/cjs/connectors/walletConnect/walletConnect.js.map +1 -1
- package/dist/cjs/constants/localStorage.d.ts +2 -1
- package/dist/cjs/constants/localStorage.d.ts.map +1 -1
- package/dist/cjs/constants/localStorage.js +2 -0
- package/dist/cjs/constants/localStorage.js.map +1 -1
- package/dist/cjs/constants/version.d.ts +1 -1
- package/dist/cjs/constants/version.d.ts.map +1 -1
- package/dist/cjs/constants/version.js +1 -1
- package/dist/cjs/constants/version.js.map +1 -1
- package/dist/cjs/constants.d.ts +38 -0
- package/dist/cjs/constants.d.ts.map +1 -0
- package/dist/cjs/constants.js +41 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/contexts/ConnectConfig.d.ts +3 -2
- package/dist/cjs/contexts/ConnectConfig.d.ts.map +1 -1
- package/dist/cjs/contexts/ConnectConfig.js +15 -4
- package/dist/cjs/contexts/ConnectConfig.js.map +1 -1
- package/dist/cjs/hooks/useAuthStatus.d.ts +55 -0
- package/dist/cjs/hooks/useAuthStatus.d.ts.map +1 -0
- package/dist/cjs/hooks/useAuthStatus.js +80 -0
- package/dist/cjs/hooks/useAuthStatus.js.map +1 -0
- package/dist/cjs/hooks/useExplicitSessions.d.ts +76 -0
- package/dist/cjs/hooks/useExplicitSessions.d.ts.map +1 -0
- package/dist/cjs/hooks/useExplicitSessions.js +109 -0
- package/dist/cjs/hooks/useExplicitSessions.js.map +1 -0
- package/dist/cjs/hooks/useFeeOptions.d.ts +74 -0
- package/dist/cjs/hooks/useFeeOptions.d.ts.map +1 -0
- package/dist/cjs/hooks/useFeeOptions.js +155 -0
- package/dist/cjs/hooks/useFeeOptions.js.map +1 -0
- package/dist/cjs/hooks/useResolvedConnectConfig.d.ts +14 -0
- package/dist/cjs/hooks/useResolvedConnectConfig.d.ts.map +1 -0
- package/dist/cjs/hooks/useResolvedConnectConfig.js +101 -0
- package/dist/cjs/hooks/useResolvedConnectConfig.js.map +1 -0
- package/dist/cjs/hooks/useSequenceSessionState.d.ts +11 -0
- package/dist/cjs/hooks/useSequenceSessionState.d.ts.map +1 -0
- package/dist/cjs/hooks/useSequenceSessionState.js +37 -0
- package/dist/cjs/hooks/useSequenceSessionState.js.map +1 -0
- package/dist/cjs/hooks/useSignInEmail.d.ts.map +1 -1
- package/dist/cjs/hooks/useSignInEmail.js +2 -2
- package/dist/cjs/hooks/useSignInEmail.js.map +1 -1
- package/dist/cjs/hooks/useSyncWagmiChains.d.ts +4 -0
- package/dist/cjs/hooks/useSyncWagmiChains.d.ts.map +1 -0
- package/dist/cjs/hooks/useSyncWagmiChains.js +47 -0
- package/dist/cjs/hooks/useSyncWagmiChains.js.map +1 -0
- package/dist/cjs/hooks/useWaasEmailAuth.d.ts.map +1 -1
- package/dist/cjs/hooks/useWaasEmailAuth.js +1 -0
- package/dist/cjs/hooks/useWaasEmailAuth.js.map +1 -1
- package/dist/cjs/hooks/useWaasEmailConflict.d.ts +0 -39
- package/dist/cjs/hooks/useWaasEmailConflict.d.ts.map +1 -1
- package/dist/cjs/hooks/useWaasEmailConflict.js +2 -42
- package/dist/cjs/hooks/useWaasEmailConflict.js.map +1 -1
- package/dist/cjs/hooks/useWaasFeeOptions.d.ts +17 -58
- package/dist/cjs/hooks/useWaasFeeOptions.d.ts.map +1 -1
- package/dist/cjs/hooks/useWaasFeeOptions.js +129 -120
- package/dist/cjs/hooks/useWaasFeeOptions.js.map +1 -1
- package/dist/cjs/hooks/useWaasSignInEmail.d.ts +0 -3
- package/dist/cjs/hooks/useWaasSignInEmail.d.ts.map +1 -1
- package/dist/cjs/hooks/useWaasSignInEmail.js +2 -6
- package/dist/cjs/hooks/useWaasSignInEmail.js.map +1 -1
- package/dist/cjs/hooks/useWallets.d.ts.map +1 -1
- package/dist/cjs/hooks/useWallets.js +199 -22
- package/dist/cjs/hooks/useWallets.js.map +1 -1
- package/dist/cjs/index.d.ts +26 -21
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +62 -41
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/styles.d.ts.map +1 -1
- package/dist/cjs/styles.js +20 -59
- package/dist/cjs/styles.js.map +1 -1
- package/dist/cjs/types.d.ts +8 -3
- package/dist/cjs/types.d.ts.map +1 -1
- package/dist/cjs/utils/checkAuthStatus.d.ts +39 -0
- package/dist/cjs/utils/checkAuthStatus.d.ts.map +1 -0
- package/dist/cjs/utils/checkAuthStatus.js +115 -0
- package/dist/cjs/utils/checkAuthStatus.js.map +1 -0
- package/dist/cjs/utils/ethAuth.d.ts.map +1 -1
- package/dist/cjs/utils/ethAuth.js +77 -24
- package/dist/cjs/utils/ethAuth.js.map +1 -1
- package/dist/cjs/utils/session/constants.d.ts +8 -0
- package/dist/cjs/utils/session/constants.d.ts.map +1 -0
- package/dist/cjs/utils/session/constants.js +12 -0
- package/dist/cjs/utils/session/constants.js.map +1 -0
- package/dist/cjs/utils/session/createContractPermission.d.ts +79 -0
- package/dist/cjs/utils/session/createContractPermission.d.ts.map +1 -0
- package/dist/cjs/utils/session/createContractPermission.js +194 -0
- package/dist/cjs/utils/session/createContractPermission.js.map +1 -0
- package/dist/cjs/utils/session/createExplicitSessionParams.d.ts +14 -0
- package/dist/cjs/utils/session/createExplicitSessionParams.d.ts.map +1 -0
- package/dist/cjs/utils/session/createExplicitSessionParams.js +39 -0
- package/dist/cjs/utils/session/createExplicitSessionParams.js.map +1 -0
- package/dist/cjs/utils/session/index.d.ts +5 -0
- package/dist/cjs/utils/session/index.d.ts.map +1 -0
- package/dist/cjs/{connectors/twitch → utils/session}/index.js +4 -1
- package/dist/cjs/utils/session/index.js.map +1 -0
- package/dist/cjs/utils/session/types.d.ts +108 -0
- package/dist/cjs/utils/session/types.d.ts.map +1 -0
- package/dist/cjs/utils/session/types.js +3 -0
- package/dist/cjs/utils/session/types.js.map +1 -0
- package/dist/cjs/utils/setChains.d.ts +22 -0
- package/dist/cjs/utils/setChains.d.ts.map +1 -0
- package/dist/cjs/utils/setChains.js +49 -0
- package/dist/cjs/utils/setChains.js.map +1 -0
- package/dist/cjs/utils/walletConfiguration.d.ts +47 -0
- package/dist/cjs/utils/walletConfiguration.d.ts.map +1 -0
- package/dist/cjs/utils/walletConfiguration.js +152 -0
- package/dist/cjs/utils/walletConfiguration.js.map +1 -0
- package/dist/cjs/utils/wordlist.d.ts +3 -0
- package/dist/cjs/utils/wordlist.d.ts.map +1 -0
- package/dist/cjs/utils/wordlist.js +16 -0
- package/dist/cjs/utils/wordlist.js.map +1 -0
- package/dist/esm/components/Connect/Banner.js +1 -1
- package/dist/esm/components/Connect/Banner.js.map +1 -1
- package/dist/esm/components/Connect/Connect.d.ts +7 -1
- package/dist/esm/components/Connect/Connect.d.ts.map +1 -1
- package/dist/esm/components/Connect/Connect.js +385 -49
- package/dist/esm/components/Connect/Connect.js.map +1 -1
- package/dist/esm/components/Connect/ConnectedWallets.d.ts.map +1 -1
- package/dist/esm/components/Connect/ConnectedWallets.js +4 -3
- package/dist/esm/components/Connect/ConnectedWallets.js.map +1 -1
- package/dist/esm/components/Connect/EmailWaasVerify.d.ts.map +1 -1
- package/dist/esm/components/Connect/EmailWaasVerify.js +1 -0
- package/dist/esm/components/Connect/EmailWaasVerify.js.map +1 -1
- package/dist/esm/components/Connect/ExtendedWalletList.d.ts +2 -1
- package/dist/esm/components/Connect/ExtendedWalletList.d.ts.map +1 -1
- package/dist/esm/components/Connect/ExtendedWalletList.js +6 -4
- package/dist/esm/components/Connect/ExtendedWalletList.js.map +1 -1
- package/dist/esm/components/Connect/WalletListItem.js +1 -1
- package/dist/esm/components/Connect/WalletListItem.js.map +1 -1
- package/dist/esm/components/ConnectButton/ConnectButton.d.ts.map +1 -1
- package/dist/esm/components/ConnectButton/ConnectButton.js +11 -6
- package/dist/esm/components/ConnectButton/ConnectButton.js.map +1 -1
- package/dist/esm/components/ConnectButton/index.d.ts +1 -1
- package/dist/esm/components/ConnectButton/index.d.ts.map +1 -1
- package/dist/esm/components/ConnectButton/index.js +1 -1
- package/dist/esm/components/ConnectButton/index.js.map +1 -1
- package/dist/esm/components/CryptoOption.js +1 -1
- package/dist/esm/components/CryptoOption.js.map +1 -1
- package/dist/esm/components/EpicAuthProvider/EpicAuthProvider.d.ts +2 -1
- package/dist/esm/components/EpicAuthProvider/EpicAuthProvider.d.ts.map +1 -1
- package/dist/esm/components/EpicAuthProvider/EpicAuthProvider.js +8 -11
- package/dist/esm/components/EpicAuthProvider/EpicAuthProvider.js.map +1 -1
- package/dist/esm/components/SequenceConnectInlineProvider/SequenceConnectInlineProvider.d.ts.map +1 -1
- package/dist/esm/components/SequenceConnectInlineProvider/SequenceConnectInlineProvider.js +26 -8
- package/dist/esm/components/SequenceConnectInlineProvider/SequenceConnectInlineProvider.js.map +1 -1
- package/dist/esm/components/SequenceConnectPreview/SequenceConnectPreviewProvider.d.ts.map +1 -1
- package/dist/esm/components/SequenceConnectPreview/SequenceConnectPreviewProvider.js +20 -3
- package/dist/esm/components/SequenceConnectPreview/SequenceConnectPreviewProvider.js.map +1 -1
- package/dist/esm/components/SequenceConnectProvider/SequenceConnectProvider.d.ts.map +1 -1
- package/dist/esm/components/SequenceConnectProvider/SequenceConnectProvider.js +23 -13
- package/dist/esm/components/SequenceConnectProvider/SequenceConnectProvider.js.map +1 -1
- package/dist/esm/components/SocialLink/SocialLink.d.ts.map +1 -1
- package/dist/esm/components/SocialLink/SocialLink.js +30 -30
- package/dist/esm/components/SocialLink/SocialLink.js.map +1 -1
- package/dist/esm/config/createConfig.d.ts +2 -1
- package/dist/esm/config/createConfig.d.ts.map +1 -1
- package/dist/esm/config/createConfig.js +7 -2
- package/dist/esm/config/createConfig.js.map +1 -1
- package/dist/esm/config/defaultConnectors.d.ts +28 -27
- package/dist/esm/config/defaultConnectors.d.ts.map +1 -1
- package/dist/esm/config/defaultConnectors.js +92 -63
- package/dist/esm/config/defaultConnectors.js.map +1 -1
- package/dist/esm/connectors/X/XAuth.d.ts.map +1 -1
- package/dist/esm/connectors/X/XAuth.js +0 -2
- package/dist/esm/connectors/X/XAuth.js.map +1 -1
- package/dist/esm/connectors/X/XWaas.d.ts +1 -1
- package/dist/esm/connectors/X/XWaas.d.ts.map +1 -1
- package/dist/esm/connectors/X/XWaas.js +1 -1
- package/dist/esm/connectors/X/XWaas.js.map +1 -1
- package/dist/esm/connectors/apple/AppleLogo.d.ts +1 -1
- package/dist/esm/connectors/apple/AppleLogo.d.ts.map +1 -1
- package/dist/esm/connectors/apple/AppleLogo.js +4 -4
- package/dist/esm/connectors/apple/AppleLogo.js.map +1 -1
- package/dist/esm/connectors/apple/appleWaas.js +3 -3
- package/dist/esm/connectors/apple/applev3.d.ts +5 -0
- package/dist/esm/connectors/apple/applev3.d.ts.map +1 -0
- package/dist/esm/connectors/apple/applev3.js +19 -0
- package/dist/esm/connectors/apple/applev3.js.map +1 -0
- package/dist/esm/connectors/apple/index.d.ts +2 -1
- package/dist/esm/connectors/apple/index.d.ts.map +1 -1
- package/dist/esm/connectors/apple/index.js +2 -1
- package/dist/esm/connectors/apple/index.js.map +1 -1
- package/dist/esm/connectors/ecosystem/ecosystemV3.d.ts +11 -0
- package/dist/esm/connectors/ecosystem/ecosystemV3.d.ts.map +1 -0
- package/dist/esm/connectors/ecosystem/ecosystemV3.js +48 -0
- package/dist/esm/connectors/ecosystem/ecosystemV3.js.map +1 -0
- package/dist/esm/connectors/email/emailv3.d.ts +5 -0
- package/dist/esm/connectors/email/emailv3.d.ts.map +1 -0
- package/dist/esm/connectors/email/emailv3.js +17 -0
- package/dist/esm/connectors/email/emailv3.js.map +1 -0
- package/dist/esm/connectors/email/index.d.ts +2 -1
- package/dist/esm/connectors/email/index.d.ts.map +1 -1
- package/dist/esm/connectors/email/index.js +2 -1
- package/dist/esm/connectors/email/index.js.map +1 -1
- package/dist/esm/connectors/epic/EpicLogo.d.ts +5 -4
- package/dist/esm/connectors/epic/EpicLogo.d.ts.map +1 -1
- package/dist/esm/connectors/epic/EpicLogo.js +1 -1
- package/dist/esm/connectors/epic/EpicLogo.js.map +1 -1
- package/dist/esm/connectors/epic/epicWaas.d.ts.map +1 -1
- package/dist/esm/connectors/epic/epicWaas.js +1 -2
- package/dist/esm/connectors/epic/epicWaas.js.map +1 -1
- package/dist/esm/connectors/google/googleV3.d.ts +5 -0
- package/dist/esm/connectors/google/googleV3.d.ts.map +1 -0
- package/dist/esm/connectors/google/googleV3.js +19 -0
- package/dist/esm/connectors/google/googleV3.js.map +1 -0
- package/dist/esm/connectors/google/index.d.ts +2 -1
- package/dist/esm/connectors/google/index.d.ts.map +1 -1
- package/dist/esm/connectors/google/index.js +2 -1
- package/dist/esm/connectors/google/index.js.map +1 -1
- package/dist/esm/connectors/guest/guestWaas.d.ts.map +1 -1
- package/dist/esm/connectors/guest/guestWaas.js +3 -2
- package/dist/esm/connectors/guest/guestWaas.js.map +1 -1
- package/dist/esm/connectors/guest/index.d.ts +2 -0
- package/dist/esm/connectors/guest/index.d.ts.map +1 -0
- package/dist/esm/connectors/guest/index.js +2 -0
- package/dist/esm/connectors/guest/index.js.map +1 -0
- package/dist/esm/connectors/mock/SequenceLogo.d.ts.map +1 -0
- package/dist/esm/connectors/mock/SequenceLogo.js.map +1 -0
- package/dist/esm/connectors/mock/mock.d.ts.map +1 -1
- package/dist/esm/connectors/mock/mock.js +1 -1
- package/dist/esm/connectors/mock/mock.js.map +1 -1
- package/dist/esm/connectors/passkey/PasskeyLogo.d.ts +9 -0
- package/dist/esm/connectors/passkey/PasskeyLogo.d.ts.map +1 -0
- package/dist/esm/connectors/passkey/PasskeyLogo.js +9 -0
- package/dist/esm/connectors/passkey/PasskeyLogo.js.map +1 -0
- package/dist/esm/connectors/passkey/passkeyV3.d.ts +5 -0
- package/dist/esm/connectors/passkey/passkeyV3.d.ts.map +1 -0
- package/dist/esm/connectors/passkey/passkeyV3.js +17 -0
- package/dist/esm/connectors/passkey/passkeyV3.js.map +1 -0
- package/dist/esm/connectors/wagmiConnectors/index.d.ts +1 -1
- package/dist/esm/connectors/wagmiConnectors/index.d.ts.map +1 -1
- package/dist/esm/connectors/wagmiConnectors/index.js +1 -1
- package/dist/esm/connectors/wagmiConnectors/index.js.map +1 -1
- package/dist/esm/connectors/wagmiConnectors/sequenceV3Connector.d.ts +69 -0
- package/dist/esm/connectors/wagmiConnectors/sequenceV3Connector.d.ts.map +1 -0
- package/dist/esm/connectors/wagmiConnectors/sequenceV3Connector.js +463 -0
- package/dist/esm/connectors/wagmiConnectors/sequenceV3Connector.js.map +1 -0
- package/dist/esm/connectors/wagmiConnectors/sequenceWaasConnector.d.ts +15 -8
- package/dist/esm/connectors/wagmiConnectors/sequenceWaasConnector.d.ts.map +1 -1
- package/dist/esm/connectors/wagmiConnectors/sequenceWaasConnector.js +153 -40
- package/dist/esm/connectors/wagmiConnectors/sequenceWaasConnector.js.map +1 -1
- package/dist/esm/connectors/walletConnect/walletConnect.d.ts.map +1 -1
- package/dist/esm/connectors/walletConnect/walletConnect.js +1 -1
- package/dist/esm/connectors/walletConnect/walletConnect.js.map +1 -1
- package/dist/esm/constants/localStorage.d.ts +2 -1
- package/dist/esm/constants/localStorage.d.ts.map +1 -1
- package/dist/esm/constants/localStorage.js +2 -0
- package/dist/esm/constants/localStorage.js.map +1 -1
- package/dist/esm/constants/version.d.ts +1 -1
- package/dist/esm/constants/version.d.ts.map +1 -1
- package/dist/esm/constants/version.js +1 -1
- package/dist/esm/constants/version.js.map +1 -1
- package/dist/esm/constants.d.ts +38 -0
- package/dist/esm/constants.d.ts.map +1 -0
- package/dist/esm/constants.js +38 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/contexts/ConnectConfig.d.ts +3 -2
- package/dist/esm/contexts/ConnectConfig.d.ts.map +1 -1
- package/dist/esm/contexts/ConnectConfig.js +13 -3
- package/dist/esm/contexts/ConnectConfig.js.map +1 -1
- package/dist/esm/hooks/useAuthStatus.d.ts +55 -0
- package/dist/esm/hooks/useAuthStatus.d.ts.map +1 -0
- package/dist/esm/hooks/useAuthStatus.js +76 -0
- package/dist/esm/hooks/useAuthStatus.js.map +1 -0
- package/dist/esm/hooks/useExplicitSessions.d.ts +76 -0
- package/dist/esm/hooks/useExplicitSessions.d.ts.map +1 -0
- package/dist/esm/hooks/useExplicitSessions.js +106 -0
- package/dist/esm/hooks/useExplicitSessions.js.map +1 -0
- package/dist/esm/hooks/useFeeOptions.d.ts +74 -0
- package/dist/esm/hooks/useFeeOptions.d.ts.map +1 -0
- package/dist/esm/hooks/useFeeOptions.js +152 -0
- package/dist/esm/hooks/useFeeOptions.js.map +1 -0
- package/dist/esm/hooks/useResolvedConnectConfig.d.ts +14 -0
- package/dist/esm/hooks/useResolvedConnectConfig.d.ts.map +1 -0
- package/dist/esm/hooks/useResolvedConnectConfig.js +97 -0
- package/dist/esm/hooks/useResolvedConnectConfig.js.map +1 -0
- package/dist/esm/hooks/useSequenceSessionState.d.ts +11 -0
- package/dist/esm/hooks/useSequenceSessionState.d.ts.map +1 -0
- package/dist/esm/hooks/useSequenceSessionState.js +34 -0
- package/dist/esm/hooks/useSequenceSessionState.js.map +1 -0
- package/dist/esm/hooks/useSignInEmail.d.ts.map +1 -1
- package/dist/esm/hooks/useSignInEmail.js +3 -3
- package/dist/esm/hooks/useSignInEmail.js.map +1 -1
- package/dist/esm/hooks/useSyncWagmiChains.d.ts +4 -0
- package/dist/esm/hooks/useSyncWagmiChains.d.ts.map +1 -0
- package/dist/esm/hooks/useSyncWagmiChains.js +43 -0
- package/dist/esm/hooks/useSyncWagmiChains.js.map +1 -0
- package/dist/esm/hooks/useWaasEmailAuth.d.ts.map +1 -1
- package/dist/esm/hooks/useWaasEmailAuth.js +1 -0
- package/dist/esm/hooks/useWaasEmailAuth.js.map +1 -1
- package/dist/esm/hooks/useWaasEmailConflict.d.ts +0 -39
- package/dist/esm/hooks/useWaasEmailConflict.d.ts.map +1 -1
- package/dist/esm/hooks/useWaasEmailConflict.js +3 -43
- package/dist/esm/hooks/useWaasEmailConflict.js.map +1 -1
- package/dist/esm/hooks/useWaasFeeOptions.d.ts +17 -58
- package/dist/esm/hooks/useWaasFeeOptions.d.ts.map +1 -1
- package/dist/esm/hooks/useWaasFeeOptions.js +126 -120
- package/dist/esm/hooks/useWaasFeeOptions.js.map +1 -1
- package/dist/esm/hooks/useWaasSignInEmail.d.ts +0 -3
- package/dist/esm/hooks/useWaasSignInEmail.d.ts.map +1 -1
- package/dist/esm/hooks/useWaasSignInEmail.js +3 -7
- package/dist/esm/hooks/useWaasSignInEmail.js.map +1 -1
- package/dist/esm/hooks/useWallets.d.ts.map +1 -1
- package/dist/esm/hooks/useWallets.js +201 -24
- package/dist/esm/hooks/useWallets.js.map +1 -1
- package/dist/esm/index.d.ts +26 -21
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +24 -21
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/styles.d.ts.map +1 -1
- package/dist/esm/styles.js +20 -59
- package/dist/esm/styles.js.map +1 -1
- package/dist/esm/types.d.ts +8 -3
- package/dist/esm/types.d.ts.map +1 -1
- package/dist/esm/utils/checkAuthStatus.d.ts +39 -0
- package/dist/esm/utils/checkAuthStatus.d.ts.map +1 -0
- package/dist/esm/utils/checkAuthStatus.js +111 -0
- package/dist/esm/utils/checkAuthStatus.js.map +1 -0
- package/dist/esm/utils/ethAuth.d.ts.map +1 -1
- package/dist/esm/utils/ethAuth.js +77 -24
- package/dist/esm/utils/ethAuth.js.map +1 -1
- package/dist/esm/utils/session/constants.d.ts +9 -0
- package/dist/esm/utils/session/constants.d.ts.map +1 -0
- package/dist/esm/utils/session/constants.js +9 -0
- package/dist/esm/utils/session/constants.js.map +1 -0
- package/dist/esm/utils/session/createContractPermission.d.ts +79 -0
- package/dist/esm/utils/session/createContractPermission.d.ts.map +1 -0
- package/dist/esm/utils/session/createContractPermission.js +191 -0
- package/dist/esm/utils/session/createContractPermission.js.map +1 -0
- package/dist/esm/utils/session/createExplicitSessionParams.d.ts +14 -0
- package/dist/esm/utils/session/createExplicitSessionParams.d.ts.map +1 -0
- package/dist/esm/utils/session/createExplicitSessionParams.js +36 -0
- package/dist/esm/utils/session/createExplicitSessionParams.js.map +1 -0
- package/dist/esm/utils/session/index.d.ts +5 -0
- package/dist/esm/utils/session/index.d.ts.map +1 -0
- package/dist/esm/utils/session/index.js +5 -0
- package/dist/esm/utils/session/index.js.map +1 -0
- package/dist/esm/utils/session/types.d.ts +108 -0
- package/dist/esm/utils/session/types.d.ts.map +1 -0
- package/dist/esm/utils/session/types.js +2 -0
- package/dist/esm/utils/session/types.js.map +1 -0
- package/dist/esm/utils/setChains.d.ts +22 -0
- package/dist/esm/utils/setChains.d.ts.map +1 -0
- package/dist/esm/utils/setChains.js +46 -0
- package/dist/esm/utils/setChains.js.map +1 -0
- package/dist/esm/utils/walletConfiguration.d.ts +47 -0
- package/dist/esm/utils/walletConfiguration.d.ts.map +1 -0
- package/dist/esm/utils/walletConfiguration.js +143 -0
- package/dist/esm/utils/walletConfiguration.js.map +1 -0
- package/dist/esm/utils/wordlist.d.ts +3 -0
- package/dist/esm/utils/wordlist.d.ts.map +1 -0
- package/dist/esm/utils/wordlist.js +11 -0
- package/dist/esm/utils/wordlist.js.map +1 -0
- package/package.json +37 -19
- package/dist/cjs/connectors/apple/apple.d.ts +0 -5
- package/dist/cjs/connectors/apple/apple.d.ts.map +0 -1
- package/dist/cjs/connectors/apple/apple.js +0 -32
- package/dist/cjs/connectors/apple/apple.js.map +0 -1
- package/dist/cjs/connectors/discord/DiscordLogo.d.ts +0 -8
- package/dist/cjs/connectors/discord/DiscordLogo.d.ts.map +0 -1
- package/dist/cjs/connectors/discord/DiscordLogo.js +0 -13
- package/dist/cjs/connectors/discord/DiscordLogo.js.map +0 -1
- package/dist/cjs/connectors/discord/discord.d.ts +0 -6
- package/dist/cjs/connectors/discord/discord.d.ts.map +0 -1
- package/dist/cjs/connectors/discord/discord.js +0 -32
- package/dist/cjs/connectors/discord/discord.js.map +0 -1
- package/dist/cjs/connectors/discord/index.d.ts +0 -2
- package/dist/cjs/connectors/discord/index.d.ts.map +0 -1
- package/dist/cjs/connectors/discord/index.js +0 -18
- package/dist/cjs/connectors/discord/index.js.map +0 -1
- package/dist/cjs/connectors/ecosystem/ecosystemWallet.d.ts +0 -20
- package/dist/cjs/connectors/ecosystem/ecosystemWallet.d.ts.map +0 -1
- package/dist/cjs/connectors/ecosystem/ecosystemWallet.js +0 -90
- package/dist/cjs/connectors/ecosystem/ecosystemWallet.js.map +0 -1
- package/dist/cjs/connectors/ecosystem/index.d.ts +0 -7
- package/dist/cjs/connectors/ecosystem/index.d.ts.map +0 -1
- package/dist/cjs/connectors/ecosystem/index.js +0 -14
- package/dist/cjs/connectors/ecosystem/index.js.map +0 -1
- package/dist/cjs/connectors/ecosystem/provider.d.ts +0 -21
- package/dist/cjs/connectors/ecosystem/provider.d.ts.map +0 -1
- package/dist/cjs/connectors/ecosystem/provider.js +0 -105
- package/dist/cjs/connectors/ecosystem/provider.js.map +0 -1
- package/dist/cjs/connectors/ecosystem/providerTransport.d.ts +0 -27
- package/dist/cjs/connectors/ecosystem/providerTransport.d.ts.map +0 -1
- package/dist/cjs/connectors/ecosystem/providerTransport.js +0 -232
- package/dist/cjs/connectors/ecosystem/providerTransport.js.map +0 -1
- package/dist/cjs/connectors/email/email.d.ts +0 -6
- package/dist/cjs/connectors/email/email.d.ts.map +0 -1
- package/dist/cjs/connectors/email/email.js +0 -30
- package/dist/cjs/connectors/email/email.js.map +0 -1
- package/dist/cjs/connectors/facebook/FacebookLogo.d.ts +0 -9
- package/dist/cjs/connectors/facebook/FacebookLogo.d.ts.map +0 -1
- package/dist/cjs/connectors/facebook/FacebookLogo.js +0 -17
- package/dist/cjs/connectors/facebook/FacebookLogo.js.map +0 -1
- package/dist/cjs/connectors/facebook/facebook.d.ts +0 -6
- package/dist/cjs/connectors/facebook/facebook.d.ts.map +0 -1
- package/dist/cjs/connectors/facebook/facebook.js +0 -32
- package/dist/cjs/connectors/facebook/facebook.js.map +0 -1
- package/dist/cjs/connectors/facebook/index.d.ts +0 -2
- package/dist/cjs/connectors/facebook/index.d.ts.map +0 -1
- package/dist/cjs/connectors/facebook/index.js +0 -18
- package/dist/cjs/connectors/facebook/index.js.map +0 -1
- package/dist/cjs/connectors/google/google.d.ts +0 -5
- package/dist/cjs/connectors/google/google.d.ts.map +0 -1
- package/dist/cjs/connectors/google/google.js +0 -31
- package/dist/cjs/connectors/google/google.js.map +0 -1
- package/dist/cjs/connectors/sequence/SequenceLogo.d.ts.map +0 -1
- package/dist/cjs/connectors/sequence/SequenceLogo.js.map +0 -1
- package/dist/cjs/connectors/sequence/index.d.ts +0 -2
- package/dist/cjs/connectors/sequence/index.d.ts.map +0 -1
- package/dist/cjs/connectors/sequence/index.js.map +0 -1
- package/dist/cjs/connectors/sequence/sequence.d.ts +0 -6
- package/dist/cjs/connectors/sequence/sequence.d.ts.map +0 -1
- package/dist/cjs/connectors/sequence/sequence.js +0 -26
- package/dist/cjs/connectors/sequence/sequence.js.map +0 -1
- package/dist/cjs/connectors/twitch/TwitchLogo.d.ts +0 -8
- package/dist/cjs/connectors/twitch/TwitchLogo.d.ts.map +0 -1
- package/dist/cjs/connectors/twitch/TwitchLogo.js +0 -19
- package/dist/cjs/connectors/twitch/TwitchLogo.js.map +0 -1
- package/dist/cjs/connectors/twitch/index.d.ts +0 -2
- package/dist/cjs/connectors/twitch/index.d.ts.map +0 -1
- package/dist/cjs/connectors/twitch/index.js.map +0 -1
- package/dist/cjs/connectors/twitch/twitch.d.ts +0 -6
- package/dist/cjs/connectors/twitch/twitch.d.ts.map +0 -1
- package/dist/cjs/connectors/twitch/twitch.js +0 -32
- package/dist/cjs/connectors/twitch/twitch.js.map +0 -1
- package/dist/cjs/connectors/wagmiConnectors/sequenceConnector.d.ts +0 -23
- package/dist/cjs/connectors/wagmiConnectors/sequenceConnector.d.ts.map +0 -1
- package/dist/cjs/connectors/wagmiConnectors/sequenceConnector.js +0 -141
- package/dist/cjs/connectors/wagmiConnectors/sequenceConnector.js.map +0 -1
- package/dist/cjs/hooks/useDirectEcosystemConnect.d.ts +0 -34
- package/dist/cjs/hooks/useDirectEcosystemConnect.d.ts.map +0 -1
- package/dist/cjs/hooks/useDirectEcosystemConnect.js +0 -52
- package/dist/cjs/hooks/useDirectEcosystemConnect.js.map +0 -1
- package/dist/cjs/utils/adapters.d.ts +0 -5
- package/dist/cjs/utils/adapters.d.ts.map +0 -1
- package/dist/cjs/utils/adapters.js +0 -30
- package/dist/cjs/utils/adapters.js.map +0 -1
- package/dist/esm/connectors/apple/apple.d.ts +0 -5
- package/dist/esm/connectors/apple/apple.d.ts.map +0 -1
- package/dist/esm/connectors/apple/apple.js +0 -28
- package/dist/esm/connectors/apple/apple.js.map +0 -1
- package/dist/esm/connectors/discord/DiscordLogo.d.ts +0 -8
- package/dist/esm/connectors/discord/DiscordLogo.d.ts.map +0 -1
- package/dist/esm/connectors/discord/DiscordLogo.js +0 -9
- package/dist/esm/connectors/discord/DiscordLogo.js.map +0 -1
- package/dist/esm/connectors/discord/discord.d.ts +0 -6
- package/dist/esm/connectors/discord/discord.d.ts.map +0 -1
- package/dist/esm/connectors/discord/discord.js +0 -28
- package/dist/esm/connectors/discord/discord.js.map +0 -1
- package/dist/esm/connectors/discord/index.d.ts +0 -2
- package/dist/esm/connectors/discord/index.d.ts.map +0 -1
- package/dist/esm/connectors/discord/index.js +0 -2
- package/dist/esm/connectors/discord/index.js.map +0 -1
- package/dist/esm/connectors/ecosystem/ecosystemWallet.d.ts +0 -20
- package/dist/esm/connectors/ecosystem/ecosystemWallet.d.ts.map +0 -1
- package/dist/esm/connectors/ecosystem/ecosystemWallet.js +0 -87
- package/dist/esm/connectors/ecosystem/ecosystemWallet.js.map +0 -1
- package/dist/esm/connectors/ecosystem/index.d.ts +0 -7
- package/dist/esm/connectors/ecosystem/index.d.ts.map +0 -1
- package/dist/esm/connectors/ecosystem/index.js +0 -10
- package/dist/esm/connectors/ecosystem/index.js.map +0 -1
- package/dist/esm/connectors/ecosystem/provider.d.ts +0 -21
- package/dist/esm/connectors/ecosystem/provider.d.ts.map +0 -1
- package/dist/esm/connectors/ecosystem/provider.js +0 -101
- package/dist/esm/connectors/ecosystem/provider.js.map +0 -1
- package/dist/esm/connectors/ecosystem/providerTransport.d.ts +0 -27
- package/dist/esm/connectors/ecosystem/providerTransport.d.ts.map +0 -1
- package/dist/esm/connectors/ecosystem/providerTransport.js +0 -228
- package/dist/esm/connectors/ecosystem/providerTransport.js.map +0 -1
- package/dist/esm/connectors/email/email.d.ts +0 -6
- package/dist/esm/connectors/email/email.d.ts.map +0 -1
- package/dist/esm/connectors/email/email.js +0 -26
- package/dist/esm/connectors/email/email.js.map +0 -1
- package/dist/esm/connectors/facebook/FacebookLogo.d.ts +0 -9
- package/dist/esm/connectors/facebook/FacebookLogo.d.ts.map +0 -1
- package/dist/esm/connectors/facebook/FacebookLogo.js +0 -12
- package/dist/esm/connectors/facebook/FacebookLogo.js.map +0 -1
- package/dist/esm/connectors/facebook/facebook.d.ts +0 -6
- package/dist/esm/connectors/facebook/facebook.d.ts.map +0 -1
- package/dist/esm/connectors/facebook/facebook.js +0 -28
- package/dist/esm/connectors/facebook/facebook.js.map +0 -1
- package/dist/esm/connectors/facebook/index.d.ts +0 -2
- package/dist/esm/connectors/facebook/index.d.ts.map +0 -1
- package/dist/esm/connectors/facebook/index.js +0 -2
- package/dist/esm/connectors/facebook/index.js.map +0 -1
- package/dist/esm/connectors/google/google.d.ts +0 -5
- package/dist/esm/connectors/google/google.d.ts.map +0 -1
- package/dist/esm/connectors/google/google.js +0 -27
- package/dist/esm/connectors/google/google.js.map +0 -1
- package/dist/esm/connectors/sequence/SequenceLogo.d.ts.map +0 -1
- package/dist/esm/connectors/sequence/SequenceLogo.js.map +0 -1
- package/dist/esm/connectors/sequence/index.d.ts +0 -2
- package/dist/esm/connectors/sequence/index.d.ts.map +0 -1
- package/dist/esm/connectors/sequence/index.js +0 -2
- package/dist/esm/connectors/sequence/index.js.map +0 -1
- package/dist/esm/connectors/sequence/sequence.d.ts +0 -6
- package/dist/esm/connectors/sequence/sequence.d.ts.map +0 -1
- package/dist/esm/connectors/sequence/sequence.js +0 -22
- package/dist/esm/connectors/sequence/sequence.js.map +0 -1
- package/dist/esm/connectors/twitch/TwitchLogo.d.ts +0 -8
- package/dist/esm/connectors/twitch/TwitchLogo.d.ts.map +0 -1
- package/dist/esm/connectors/twitch/TwitchLogo.js +0 -15
- package/dist/esm/connectors/twitch/TwitchLogo.js.map +0 -1
- package/dist/esm/connectors/twitch/index.d.ts +0 -2
- package/dist/esm/connectors/twitch/index.d.ts.map +0 -1
- package/dist/esm/connectors/twitch/index.js +0 -2
- package/dist/esm/connectors/twitch/index.js.map +0 -1
- package/dist/esm/connectors/twitch/twitch.d.ts +0 -6
- package/dist/esm/connectors/twitch/twitch.d.ts.map +0 -1
- package/dist/esm/connectors/twitch/twitch.js +0 -28
- package/dist/esm/connectors/twitch/twitch.js.map +0 -1
- package/dist/esm/connectors/wagmiConnectors/sequenceConnector.d.ts +0 -23
- package/dist/esm/connectors/wagmiConnectors/sequenceConnector.d.ts.map +0 -1
- package/dist/esm/connectors/wagmiConnectors/sequenceConnector.js +0 -138
- package/dist/esm/connectors/wagmiConnectors/sequenceConnector.js.map +0 -1
- package/dist/esm/hooks/useDirectEcosystemConnect.d.ts +0 -34
- package/dist/esm/hooks/useDirectEcosystemConnect.d.ts.map +0 -1
- package/dist/esm/hooks/useDirectEcosystemConnect.js +0 -48
- package/dist/esm/hooks/useDirectEcosystemConnect.js.map +0 -1
- package/dist/esm/utils/adapters.d.ts +0 -5
- package/dist/esm/utils/adapters.d.ts.map +0 -1
- package/dist/esm/utils/adapters.js +0 -25
- package/dist/esm/utils/adapters.js.map +0 -1
- /package/dist/cjs/connectors/{sequence → mock}/SequenceLogo.d.ts +0 -0
- /package/dist/cjs/connectors/{sequence → mock}/SequenceLogo.js +0 -0
- /package/dist/esm/connectors/{sequence → mock}/SequenceLogo.d.ts +0 -0
- /package/dist/esm/connectors/{sequence → mock}/SequenceLogo.js +0 -0
|
@@ -1,88 +1,27 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { useIndexerClient } from '@0xsequence/hooks';
|
|
3
|
-
import { ContractVerificationStatus } from '@0xsequence/indexer';
|
|
4
3
|
import { useEffect, useState } from 'react';
|
|
5
4
|
import { formatUnits } from 'viem';
|
|
6
5
|
import { useConnections } from 'wagmi';
|
|
7
6
|
import { Deferred } from '../utils/deferred.js';
|
|
8
|
-
//
|
|
7
|
+
// Shared state across hook instances
|
|
9
8
|
let sharedPendingConfirmation = undefined;
|
|
10
9
|
let sharedDeferred = undefined;
|
|
11
10
|
let listeners = [];
|
|
12
11
|
const notifyListeners = (state) => listeners.forEach(listener => listener(state));
|
|
13
|
-
/**
|
|
14
|
-
* Hook for handling WaaS (Wallet as a Service) fee options for unsponsored transactions
|
|
15
|
-
*
|
|
16
|
-
* This hook provides functionality to:
|
|
17
|
-
* - Get available fee options for a transaction in Native Token and ERC20's
|
|
18
|
-
* - Provide user wallet balances for each fee option
|
|
19
|
-
* - Confirm or reject fee selections
|
|
20
|
-
*
|
|
21
|
-
* @param options - Configuration options for the hook {@link WaasFeeOptionsConfig}
|
|
22
|
-
* @returns Array containing the confirmation state and control functions {@link UseWaasFeeOptionsReturnType}
|
|
23
|
-
*
|
|
24
|
-
* @example
|
|
25
|
-
* ```tsx
|
|
26
|
-
* // 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
|
|
27
|
-
* const [
|
|
28
|
-
* pendingFeeOptionConfirmation,
|
|
29
|
-
* confirmPendingFeeOption,
|
|
30
|
-
* rejectPendingFeeOption
|
|
31
|
-
* ] = useWaasFeeOptions();
|
|
32
|
-
*
|
|
33
|
-
* // Or skip balance checking if needed
|
|
34
|
-
* // const [pendingFeeOptionConfirmation, confirmPendingFeeOption, rejectPendingFeeOption] =
|
|
35
|
-
* // useWaasFeeOptions({ skipFeeBalanceCheck: true });
|
|
36
|
-
*
|
|
37
|
-
* const [selectedFeeOptionTokenName, setSelectedFeeOptionTokenName] = useState<string>();
|
|
38
|
-
* const [feeOptionAlert, setFeeOptionAlert] = useState<AlertProps>();
|
|
39
|
-
*
|
|
40
|
-
* // Initialize with first option when fee options become available
|
|
41
|
-
* useEffect(() => {
|
|
42
|
-
* if (pendingFeeOptionConfirmation) {
|
|
43
|
-
* console.log('Pending fee options: ', pendingFeeOptionConfirmation.options)
|
|
44
|
-
* }
|
|
45
|
-
* }, [pendingFeeOptionConfirmation]);
|
|
46
|
-
*
|
|
47
|
-
* ```
|
|
48
|
-
*/
|
|
49
12
|
export function useWaasFeeOptions(options) {
|
|
50
|
-
const { skipFeeBalanceCheck = false } = options
|
|
51
|
-
const connections = useConnections();
|
|
52
|
-
const waasConnector = connections.find((c) => c.connector.id.includes('waas'))?.connector;
|
|
13
|
+
const { skipFeeBalanceCheck = false, chainIdOverride } = options ?? {};
|
|
53
14
|
const [pendingFeeOptionConfirmation, setPendingFeeOptionConfirmation] = useState(sharedPendingConfirmation);
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
function confirmPendingFeeOption(id, feeTokenAddress) {
|
|
61
|
-
if (sharedDeferred && sharedPendingConfirmation?.id === id) {
|
|
62
|
-
sharedDeferred.resolve({ id, feeTokenAddress, confirmed: true });
|
|
63
|
-
sharedDeferred = undefined;
|
|
64
|
-
notifyListeners(undefined);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Rejects the current fee option confirmation
|
|
69
|
-
* @param id - The fee confirmation ID to reject
|
|
70
|
-
*/
|
|
71
|
-
function rejectPendingFeeOption(id) {
|
|
72
|
-
if (sharedDeferred && sharedPendingConfirmation?.id === id) {
|
|
73
|
-
sharedDeferred.resolve({ id, feeTokenAddress: undefined, confirmed: false });
|
|
74
|
-
sharedDeferred = undefined;
|
|
75
|
-
sharedPendingConfirmation = undefined;
|
|
76
|
-
notifyListeners(undefined);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
15
|
+
const [confirmPromise, setConfirmPromise] = useState(null);
|
|
16
|
+
const connections = useConnections();
|
|
17
|
+
const waasConnection = connections.find(c => c.connector.id.includes('waas'));
|
|
18
|
+
const waasConnector = waasConnection?.connector;
|
|
19
|
+
const chainIdForIndexer = chainIdOverride ?? waasConnection?.chainId ?? 1;
|
|
20
|
+
const indexerClient = useIndexerClient(chainIdForIndexer);
|
|
79
21
|
useEffect(() => {
|
|
80
|
-
// Subscribe to shared state changes
|
|
81
22
|
listeners.push(setPendingFeeOptionConfirmation);
|
|
82
|
-
// Set initial state in case it changed between component initialization and effect execution
|
|
83
|
-
setPendingFeeOptionConfirmation(sharedPendingConfirmation);
|
|
84
23
|
return () => {
|
|
85
|
-
listeners = listeners.filter(
|
|
24
|
+
listeners = listeners.filter(listener => listener !== setPendingFeeOptionConfirmation);
|
|
86
25
|
};
|
|
87
26
|
}, []);
|
|
88
27
|
useEffect(() => {
|
|
@@ -93,62 +32,129 @@ export function useWaasFeeOptions(options) {
|
|
|
93
32
|
if (!waasProvider) {
|
|
94
33
|
return;
|
|
95
34
|
}
|
|
96
|
-
const originalHandler = waasProvider.feeConfirmationHandler;
|
|
97
35
|
waasProvider.feeConfirmationHandler = {
|
|
98
|
-
async
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
// Clear any previous stale state immediately
|
|
103
|
-
sharedPendingConfirmation = undefined;
|
|
104
|
-
notifyListeners(undefined);
|
|
105
|
-
const accountAddress = connections[0]?.accounts[0];
|
|
106
|
-
if (!accountAddress) {
|
|
107
|
-
throw new Error('No account address available');
|
|
108
|
-
}
|
|
109
|
-
if (!skipFeeBalanceCheck) {
|
|
110
|
-
const optionsWithBalances = await Promise.all(options.map(async (option) => {
|
|
111
|
-
if (option.token.contractAddress) {
|
|
112
|
-
const tokenBalances = await indexerClient.getTokenBalancesByContract({
|
|
113
|
-
filter: {
|
|
114
|
-
accountAddresses: [accountAddress],
|
|
115
|
-
contractStatus: ContractVerificationStatus.ALL,
|
|
116
|
-
contractAddresses: [option.token.contractAddress]
|
|
117
|
-
},
|
|
118
|
-
omitMetadata: true
|
|
119
|
-
});
|
|
120
|
-
const tokenBalance = tokenBalances.balances[0]?.balance;
|
|
121
|
-
return {
|
|
122
|
-
...option,
|
|
123
|
-
balanceFormatted: option.token.decimals
|
|
124
|
-
? formatUnits(BigInt(tokenBalances.balances[0]?.balance ?? '0'), option.token.decimals)
|
|
125
|
-
: (tokenBalances.balances[0]?.balance ?? '0'),
|
|
126
|
-
balance: tokenBalances.balances[0]?.balance ?? '0',
|
|
127
|
-
hasEnoughBalanceForFee: tokenBalance ? BigInt(option.value) <= BigInt(tokenBalance) : false
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
const nativeBalance = await indexerClient.getNativeTokenBalance({ accountAddress });
|
|
131
|
-
return {
|
|
132
|
-
...option,
|
|
133
|
-
balanceFormatted: formatUnits(BigInt(nativeBalance.balance.balance), 18),
|
|
134
|
-
balance: nativeBalance.balance.balance,
|
|
135
|
-
hasEnoughBalanceForFee: BigInt(option.value) <= BigInt(nativeBalance.balance.balance)
|
|
136
|
-
};
|
|
137
|
-
}));
|
|
138
|
-
sharedPendingConfirmation = { id, options: optionsWithBalances, chainId };
|
|
36
|
+
confirmFeeOption: async (id, options, _txs, chainId) => {
|
|
37
|
+
if (skipFeeBalanceCheck) {
|
|
38
|
+
sharedPendingConfirmation = { id, options, chainId: chainIdOverride ?? chainId };
|
|
39
|
+
sharedDeferred = new Deferred();
|
|
139
40
|
notifyListeners(sharedPendingConfirmation);
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
41
|
+
const confirmation = await sharedDeferred.promise;
|
|
42
|
+
sharedPendingConfirmation = undefined;
|
|
43
|
+
sharedDeferred = undefined;
|
|
143
44
|
notifyListeners(sharedPendingConfirmation);
|
|
45
|
+
return confirmation;
|
|
144
46
|
}
|
|
145
|
-
|
|
47
|
+
const accountAddress = waasConnection?.accounts?.[0];
|
|
48
|
+
const balances = await indexerClient.getTokenBalancesDetails({
|
|
49
|
+
filter: {
|
|
50
|
+
accountAddresses: accountAddress ? [accountAddress] : [],
|
|
51
|
+
omitNativeBalances: false
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
const optionsWithBalances = options.map((option) => {
|
|
55
|
+
const { token, value } = option;
|
|
56
|
+
const decimals = token.decimals ?? 18;
|
|
57
|
+
const rawValue = BigInt(value);
|
|
58
|
+
const balance = token.contractAddress
|
|
59
|
+
? BigInt(balances.balances.find(({ contractAddress }) => contractAddress === token.contractAddress)?.balance ?? '0')
|
|
60
|
+
: BigInt(balances.nativeBalances?.[0]?.balance ?? '0');
|
|
61
|
+
return {
|
|
62
|
+
...option,
|
|
63
|
+
balance: balance.toString(),
|
|
64
|
+
balanceFormatted: formatUnits(balance, decimals),
|
|
65
|
+
hasEnoughBalanceForFee: balance >= rawValue
|
|
66
|
+
};
|
|
67
|
+
});
|
|
68
|
+
if (optionsWithBalances.length === 0) {
|
|
69
|
+
throw new Error('No fee options with user balance available');
|
|
70
|
+
}
|
|
71
|
+
sharedPendingConfirmation = {
|
|
72
|
+
id,
|
|
73
|
+
options: optionsWithBalances,
|
|
74
|
+
chainId: chainIdOverride ?? chainId
|
|
75
|
+
};
|
|
76
|
+
sharedDeferred = new Deferred();
|
|
77
|
+
notifyListeners(sharedPendingConfirmation);
|
|
78
|
+
const confirmation = await sharedDeferred.promise;
|
|
79
|
+
sharedPendingConfirmation = undefined;
|
|
80
|
+
sharedDeferred = undefined;
|
|
81
|
+
notifyListeners(sharedPendingConfirmation);
|
|
82
|
+
return confirmation;
|
|
146
83
|
}
|
|
147
84
|
};
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
85
|
+
}, [waasConnector, indexerClient, skipFeeBalanceCheck, chainIdOverride]);
|
|
86
|
+
useEffect(() => {
|
|
87
|
+
if (!pendingFeeOptionConfirmation) {
|
|
88
|
+
setConfirmPromise(null);
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
setConfirmPromise(sharedDeferred ?? null);
|
|
92
|
+
}, [pendingFeeOptionConfirmation]);
|
|
93
|
+
const confirmPendingFeeOption = (id, feeTokenAddress) => {
|
|
94
|
+
if (!confirmPromise) {
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
confirmPromise.resolve({ id, feeTokenAddress, confirmed: true });
|
|
98
|
+
};
|
|
99
|
+
const rejectPendingFeeOption = (id) => {
|
|
100
|
+
if (!confirmPromise) {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
confirmPromise.resolve({ id, confirmed: false });
|
|
104
|
+
};
|
|
152
105
|
return [pendingFeeOptionConfirmation, confirmPendingFeeOption, rejectPendingFeeOption];
|
|
153
106
|
}
|
|
107
|
+
export const getTokenName = (txs, tokenAddress) => {
|
|
108
|
+
const isNativeToken = tokenAddress == null;
|
|
109
|
+
const token = isNativeToken
|
|
110
|
+
? { symbol: 'ETH', address: tokenAddress, decimal: 18 }
|
|
111
|
+
: {
|
|
112
|
+
symbol: txs[0]?.data?.token?.symbol,
|
|
113
|
+
address: txs[0]?.data?.token?.contractAddress,
|
|
114
|
+
decimal: txs[0]?.data?.token?.decimals
|
|
115
|
+
};
|
|
116
|
+
return token?.symbol;
|
|
117
|
+
};
|
|
118
|
+
export const getTransactionMetadata = async (txs, connector, chainId) => {
|
|
119
|
+
const metadata = await Promise.all(txs.map(async (tx) => {
|
|
120
|
+
const txData = tx;
|
|
121
|
+
const erc20TokenAddress = txData?.data?.token?.contractAddress;
|
|
122
|
+
const res = {
|
|
123
|
+
chainId,
|
|
124
|
+
tokenName: getTokenName(txs, erc20TokenAddress),
|
|
125
|
+
isNativeToken: erc20TokenAddress == null,
|
|
126
|
+
erc20TokenAddress,
|
|
127
|
+
erc20TokenDecimals: txData?.data?.token?.decimals,
|
|
128
|
+
recipient: await connector?.getAccount?.(),
|
|
129
|
+
isContract: undefined,
|
|
130
|
+
verificationStatus: undefined,
|
|
131
|
+
abi: txData?.data?.contractMetadata?.abi,
|
|
132
|
+
functionName: txData?.data?.functionSignature?.functionName,
|
|
133
|
+
functionSignature: txData?.data?.functionSignature?.functionSignature
|
|
134
|
+
};
|
|
135
|
+
const receiver = txData?.to;
|
|
136
|
+
if (!receiver) {
|
|
137
|
+
return res;
|
|
138
|
+
}
|
|
139
|
+
try {
|
|
140
|
+
const rc = await connector?.getPublicClient?.({ chainId })?.getBytecode({ address: receiver });
|
|
141
|
+
if (rc && rc.length > 2) {
|
|
142
|
+
res.isContract = true;
|
|
143
|
+
const { verifiedContractAddress, contractInfo } = txData?.data?.contractMetadata || txData?.data?.contractMetadataPreview || {};
|
|
144
|
+
if (verifiedContractAddress && contractInfo?.status) {
|
|
145
|
+
res.verificationStatus = contractInfo.status;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
res.isContract = false;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
catch (error) {
|
|
153
|
+
console.log('error checking if address is a contract: ', error);
|
|
154
|
+
res.isContract = false;
|
|
155
|
+
}
|
|
156
|
+
return res;
|
|
157
|
+
}));
|
|
158
|
+
return metadata;
|
|
159
|
+
};
|
|
154
160
|
//# sourceMappingURL=useWaasFeeOptions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWaasFeeOptions.js","sourceRoot":"","sources":["../../../src/hooks/useWaasFeeOptions.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"useWaasFeeOptions.js","sourceRoot":"","sources":["../../../src/hooks/useWaasFeeOptions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWaasSignInEmail.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWaasSignInEmail.ts"],"names":[],"mappings":"AAOA
|
|
1
|
+
{"version":3,"file":"useWaasSignInEmail.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWaasSignInEmail.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,kBAAkB,qBAmB9B,CAAA"}
|
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { useEffect, useState } from 'react';
|
|
3
|
-
import {
|
|
3
|
+
import { useConfig, useConnection } from 'wagmi';
|
|
4
4
|
import { LocalStorageKey } from '../constants/localStorage.js';
|
|
5
|
-
/**
|
|
6
|
-
* @deprecated use useSignInEmail instead
|
|
7
|
-
*/
|
|
8
5
|
export const useWaasSignInEmail = () => {
|
|
9
6
|
const { storage } = useConfig();
|
|
10
|
-
const { isConnected } =
|
|
7
|
+
const { isConnected } = useConnection();
|
|
11
8
|
const [email, setEmail] = useState(null);
|
|
12
9
|
const storeEmail = async () => {
|
|
13
|
-
const
|
|
14
|
-
const storedEmail = await storage?.getItem(key);
|
|
10
|
+
const storedEmail = await storage?.getItem(LocalStorageKey.WaasSignInEmail);
|
|
15
11
|
setEmail(storedEmail);
|
|
16
12
|
};
|
|
17
13
|
useEffect(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWaasSignInEmail.js","sourceRoot":"","sources":["../../../src/hooks/useWaasSignInEmail.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useWaasSignInEmail.js","sourceRoot":"","sources":["../../../src/hooks/useWaasSignInEmail.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAE9D,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAA;IAC/B,MAAM,EAAE,WAAW,EAAE,GAAG,aAAa,EAAE,CAAA;IACvC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IAEvD,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE;QAC5B,MAAM,WAAW,GAAG,MAAM,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,eAAe,CAAC,CAAA;QAC3E,QAAQ,CAAC,WAAqB,CAAC,CAAA;IACjC,CAAC,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,WAAW,EAAE,CAAC;YAChB,UAAU,EAAE,CAAA;QACd,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,IAAI,CAAC,CAAA;QAChB,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAA;IAEjB,OAAO,KAAK,CAAA;AACd,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWallets.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWallets.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqB,KAAK,uBAAuB,EAAE,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"useWallets.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWallets.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqB,KAAK,uBAAuB,EAAE,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAYpG,UAAU,uBAAuB;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AA6CD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,YAAY,EAAE,GAAG,SAAS,CAAA;IAChC,SAAS,EAAE,OAAO,CAAA;IAClB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;IACnB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,UAAU,EAAE,MAAM,IAAI,CAAA;CACvB;AAYD,eAAO,MAAM,gBAAgB,GAC3B,MAAM,uBAAuB,EAC7B,UAAS,uBAA4B,KACpC,sBAoEF,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,OAAO,CAAA;IACjB,UAAU,EAAE,OAAO,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;CACrB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,eAAe,EAAE,CAAA;IAC1B,aAAa,EAAE,YAAY,EAAE,GAAG,SAAS,CAAA;IACzC,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACnD,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACpD,oBAAoB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,eAAO,MAAM,UAAU,QAAO,oBAuN7B,CAAA"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { useAPIClient } from '@0xsequence/hooks';
|
|
3
|
-
import { useCallback, useEffect, useRef, useState } from 'react';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
4
|
+
import { useConnect, useConnection, useConnections, useDisconnect } from 'wagmi';
|
|
5
|
+
import { WALLET_LIST_DEBOUNCE_MS } from '../constants.js';
|
|
6
|
+
import { useOptionalConnectConfigContext } from '../contexts/ConnectConfig.js';
|
|
7
|
+
import { getCachedProjectName, normalizeWalletUrl } from '../utils/walletConfiguration.js';
|
|
6
8
|
import { useWaasGetLinkedWalletsSignature } from './useWaasGetLinkedWalletsSignature.js';
|
|
7
9
|
// Create a stable storage key from args
|
|
8
10
|
const createStorageKey = (args) => `@0xsequence.linked_wallets-${args.parentWalletAddress}-${args.signatureChainId}`;
|
|
@@ -148,10 +150,13 @@ export const useLinkedWallets = (args, options = {}) => {
|
|
|
148
150
|
* ```
|
|
149
151
|
*/
|
|
150
152
|
export const useWallets = () => {
|
|
151
|
-
const { address } =
|
|
153
|
+
const { address, status: accountStatus } = useConnection();
|
|
152
154
|
const connections = useConnections();
|
|
153
|
-
const
|
|
154
|
-
const
|
|
155
|
+
const connect = useConnect();
|
|
156
|
+
const disconnect = useDisconnect();
|
|
157
|
+
const connectConfig = useOptionalConnectConfigContext();
|
|
158
|
+
const normalizedWalletUrl = connectConfig?.walletUrl ? normalizeWalletUrl(connectConfig.walletUrl) : '';
|
|
159
|
+
const sequenceProjectName = normalizedWalletUrl ? getCachedProjectName(normalizedWalletUrl) : undefined;
|
|
155
160
|
const waasConnection = connections.find(c => c.connector?.type === 'sequence-waas');
|
|
156
161
|
const { message: linkedWalletsMessage, signature: linkedWalletsSignature, address: linkedWalletsWaasAddress, chainId: linkedWalletsSigChainId } = useWaasGetLinkedWalletsSignature(waasConnection);
|
|
157
162
|
// Only fetch if we have valid data
|
|
@@ -164,26 +169,124 @@ export const useWallets = () => {
|
|
|
164
169
|
}, {
|
|
165
170
|
enabled: hasValidData
|
|
166
171
|
});
|
|
167
|
-
const
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
172
|
+
const ecosystemProjectName = connectConfig?.signIn?.projectName;
|
|
173
|
+
const [loginMethodVersion, setLoginMethodVersion] = useState(0);
|
|
174
|
+
// Keep track of the last non-empty connections list so we can present stable data while wagmi reconnects.
|
|
175
|
+
const lastKnownConnectionsRef = useRef([]);
|
|
176
|
+
useEffect(() => {
|
|
177
|
+
const isRecovering = accountStatus === 'connecting' || accountStatus === 'reconnecting';
|
|
178
|
+
if (accountStatus === 'disconnected') {
|
|
179
|
+
lastKnownConnectionsRef.current = [];
|
|
180
|
+
return;
|
|
181
|
+
}
|
|
182
|
+
if (connections.length === 0) {
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
185
|
+
// Do not downgrade the cache while wagmi is recovering; otherwise we risk flickering counts.
|
|
186
|
+
if (connections.length < lastKnownConnectionsRef.current.length && isRecovering) {
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
lastKnownConnectionsRef.current = connections;
|
|
190
|
+
}, [connections, accountStatus]);
|
|
191
|
+
const baseConnections = useMemo(() => {
|
|
192
|
+
const isRecovering = accountStatus === 'connecting' || accountStatus === 'reconnecting';
|
|
193
|
+
const shouldUseCache = isRecovering &&
|
|
194
|
+
lastKnownConnectionsRef.current.length > 0 &&
|
|
195
|
+
(connections.length === 0 || connections.length < lastKnownConnectionsRef.current.length);
|
|
196
|
+
if (shouldUseCache) {
|
|
197
|
+
return lastKnownConnectionsRef.current;
|
|
198
|
+
}
|
|
199
|
+
return connections;
|
|
200
|
+
}, [connections, accountStatus]);
|
|
201
|
+
useEffect(() => {
|
|
202
|
+
const unsubscribers = [];
|
|
203
|
+
baseConnections.forEach(connection => {
|
|
204
|
+
if (connection.connector.type === 'sequence-v3-wallet') {
|
|
205
|
+
const client = connection.connector?.client;
|
|
206
|
+
if (client?.on) {
|
|
207
|
+
const handler = () => setLoginMethodVersion(v => v + 1);
|
|
208
|
+
const unsubscribe = client.on('sessionsUpdated', handler);
|
|
209
|
+
if (unsubscribe) {
|
|
210
|
+
unsubscribers.push(unsubscribe);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
});
|
|
215
|
+
return () => {
|
|
216
|
+
unsubscribers.forEach(unsub => {
|
|
217
|
+
try {
|
|
218
|
+
unsub();
|
|
219
|
+
}
|
|
220
|
+
catch {
|
|
221
|
+
// ignore
|
|
222
|
+
}
|
|
223
|
+
});
|
|
224
|
+
};
|
|
225
|
+
}, [baseConnections]);
|
|
226
|
+
const walletsFromConnections = useMemo(() => {
|
|
227
|
+
let hasPendingV3LoginMethod = false;
|
|
228
|
+
const list = baseConnections.map((connection) => {
|
|
229
|
+
const signInMethod = getSignInMethod(connection);
|
|
230
|
+
if (connection.connector.type === 'sequence-v3-wallet' && signInMethod === 'unknown') {
|
|
231
|
+
hasPendingV3LoginMethod = true;
|
|
232
|
+
}
|
|
233
|
+
return {
|
|
234
|
+
id: connection.connector.id,
|
|
235
|
+
name: getConnectorName(connection.connector, sequenceProjectName, ecosystemProjectName),
|
|
236
|
+
address: connection.accounts[0],
|
|
237
|
+
isActive: connection.accounts[0] === address,
|
|
238
|
+
isEmbedded: connection.connector.id.includes('waas'),
|
|
239
|
+
signInMethod
|
|
240
|
+
};
|
|
241
|
+
});
|
|
242
|
+
const sorted = list.sort((a, b) => {
|
|
243
|
+
if (a.id !== b.id) {
|
|
244
|
+
return a.id.localeCompare(b.id);
|
|
245
|
+
}
|
|
246
|
+
return a.address.toLowerCase().localeCompare(b.address.toLowerCase());
|
|
247
|
+
});
|
|
248
|
+
return { list: sorted, hasPendingV3LoginMethod };
|
|
249
|
+
}, [baseConnections, sequenceProjectName, ecosystemProjectName, address, loginMethodVersion]);
|
|
250
|
+
// Preserve the last non-empty wallet list while wagmi is reconnecting to avoid UI flicker on refresh.
|
|
251
|
+
const [stableWallets, setStableWallets] = useState(walletsFromConnections.hasPendingV3LoginMethod || walletsFromConnections.list.length === 0 ? [] : walletsFromConnections.list);
|
|
252
|
+
useEffect(() => {
|
|
253
|
+
if (walletsFromConnections.hasPendingV3LoginMethod) {
|
|
254
|
+
return;
|
|
255
|
+
}
|
|
256
|
+
const nextList = walletsFromConnections.list;
|
|
257
|
+
if (nextList.length === 0) {
|
|
258
|
+
// When there are no connections and wagmi isn't reconnecting, clear the stable list.
|
|
259
|
+
if (accountStatus !== 'connecting' && accountStatus !== 'reconnecting') {
|
|
260
|
+
setStableWallets(prev => (prev.length === 0 ? prev : []));
|
|
261
|
+
}
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
264
|
+
// If we have wallets and the stable list is empty, hydrate immediately to avoid an empty emission.
|
|
265
|
+
if (stableWallets.length === 0) {
|
|
266
|
+
setStableWallets(nextList);
|
|
267
|
+
return;
|
|
268
|
+
}
|
|
269
|
+
const timer = setTimeout(() => {
|
|
270
|
+
setStableWallets(prev => (areWalletListsEqual(prev, nextList) ? prev : nextList));
|
|
271
|
+
}, WALLET_LIST_DEBOUNCE_MS);
|
|
272
|
+
return () => {
|
|
273
|
+
clearTimeout(timer);
|
|
274
|
+
};
|
|
275
|
+
}, [walletsFromConnections, accountStatus, stableWallets.length]);
|
|
175
276
|
const setActiveWallet = async (walletAddress) => {
|
|
176
277
|
const connection = connections.find((c) => c.accounts[0].toLowerCase() === walletAddress.toLowerCase());
|
|
177
|
-
|
|
278
|
+
const connectionFromCache = lastKnownConnectionsRef.current.find((c) => c.accounts[0].toLowerCase() === walletAddress.toLowerCase());
|
|
279
|
+
const connectionToUse = connection || connectionFromCache;
|
|
280
|
+
if (!connectionToUse) {
|
|
178
281
|
console.error('No connection found for wallet address:', walletAddress);
|
|
179
282
|
return;
|
|
180
283
|
}
|
|
181
284
|
// Do not try to change if it's already active
|
|
182
|
-
if (
|
|
285
|
+
if (stableWallets.find((w) => w.address.toLowerCase() === walletAddress.toLowerCase())?.isActive) {
|
|
183
286
|
return;
|
|
184
287
|
}
|
|
185
288
|
try {
|
|
186
|
-
await
|
|
289
|
+
await connect.mutateAsync({ connector: connectionToUse.connector });
|
|
187
290
|
}
|
|
188
291
|
catch (error) {
|
|
189
292
|
console.error('Failed to set active wallet:', error);
|
|
@@ -199,26 +302,100 @@ export const useWallets = () => {
|
|
|
199
302
|
clearLinkedWalletsCache();
|
|
200
303
|
}
|
|
201
304
|
try {
|
|
202
|
-
await
|
|
305
|
+
await disconnect.mutateAsync({ connector: connection.connector });
|
|
203
306
|
}
|
|
204
307
|
catch (error) {
|
|
205
308
|
console.error('Failed to disconnect wallet:', error);
|
|
206
309
|
}
|
|
207
310
|
};
|
|
208
311
|
return {
|
|
209
|
-
wallets,
|
|
312
|
+
wallets: stableWallets,
|
|
210
313
|
linkedWallets,
|
|
211
314
|
setActiveWallet,
|
|
212
315
|
disconnectWallet,
|
|
213
316
|
refetchLinkedWallets
|
|
214
317
|
};
|
|
215
318
|
};
|
|
216
|
-
const getConnectorName = (connector) => {
|
|
319
|
+
const getConnectorName = (connector, sequenceProjectName, ecosystemProjectName) => {
|
|
217
320
|
const connectorName = connector.name;
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
321
|
+
if (sequenceProjectName && connector.type === 'sequence-v3-wallet') {
|
|
322
|
+
return sequenceProjectName;
|
|
323
|
+
}
|
|
324
|
+
if (connector._wallet?.isEcosystemWallet && ecosystemProjectName) {
|
|
325
|
+
return ecosystemProjectName;
|
|
326
|
+
}
|
|
327
|
+
return connectorName;
|
|
328
|
+
};
|
|
329
|
+
const getSignInMethod = (connection) => {
|
|
330
|
+
const walletId = connection.connector._wallet?.id;
|
|
331
|
+
const connectorId = connection.connector.id;
|
|
332
|
+
const lowerId = connectorId.toLowerCase();
|
|
333
|
+
const address = connection.accounts[0];
|
|
334
|
+
if (connection.connector.type === 'sequence-v3-wallet') {
|
|
335
|
+
const fromV3Client = connection.connector?.loginMethod ||
|
|
336
|
+
connection.connector?.client?.loginMethod;
|
|
337
|
+
if (fromV3Client) {
|
|
338
|
+
setCachedLoginMethod(connectorId, address, fromV3Client);
|
|
339
|
+
return fromV3Client;
|
|
340
|
+
}
|
|
341
|
+
const cached = getCachedLoginMethod(connectorId, address);
|
|
342
|
+
return cached ?? 'unknown';
|
|
343
|
+
}
|
|
344
|
+
return (walletId ||
|
|
345
|
+
(lowerId.includes('metamask') ? 'metamask-wallet' : lowerId.includes('coinbase') ? 'coinbase-wallet' : connectorId));
|
|
346
|
+
};
|
|
347
|
+
const areWalletListsEqual = (a, b) => {
|
|
348
|
+
if (a === b) {
|
|
349
|
+
return true;
|
|
350
|
+
}
|
|
351
|
+
if (a.length !== b.length) {
|
|
352
|
+
return false;
|
|
353
|
+
}
|
|
354
|
+
for (let i = 0; i < a.length; i++) {
|
|
355
|
+
if (a[i].address.toLowerCase() !== b[i].address.toLowerCase()) {
|
|
356
|
+
return false;
|
|
357
|
+
}
|
|
358
|
+
if (a[i].id !== b[i].id) {
|
|
359
|
+
return false;
|
|
360
|
+
}
|
|
361
|
+
if (a[i].isActive !== b[i].isActive) {
|
|
362
|
+
return false;
|
|
363
|
+
}
|
|
364
|
+
if (a[i].name !== b[i].name) {
|
|
365
|
+
return false;
|
|
366
|
+
}
|
|
367
|
+
if (a[i].signInMethod !== b[i].signInMethod) {
|
|
368
|
+
return false;
|
|
369
|
+
}
|
|
370
|
+
if (a[i].isEmbedded !== b[i].isEmbedded) {
|
|
371
|
+
return false;
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
return true;
|
|
375
|
+
};
|
|
376
|
+
const LOGIN_METHOD_CACHE_PREFIX = '@0xsequence.loginMethod';
|
|
377
|
+
const getCachedLoginMethod = (connectorId, address) => {
|
|
378
|
+
try {
|
|
379
|
+
if (typeof window === 'undefined') {
|
|
380
|
+
return undefined;
|
|
381
|
+
}
|
|
382
|
+
const key = `${LOGIN_METHOD_CACHE_PREFIX}:${connectorId}:${address.toLowerCase()}`;
|
|
383
|
+
return window.localStorage.getItem(key) || undefined;
|
|
384
|
+
}
|
|
385
|
+
catch {
|
|
386
|
+
return undefined;
|
|
387
|
+
}
|
|
388
|
+
};
|
|
389
|
+
const setCachedLoginMethod = (connectorId, address, value) => {
|
|
390
|
+
try {
|
|
391
|
+
if (typeof window === 'undefined') {
|
|
392
|
+
return;
|
|
393
|
+
}
|
|
394
|
+
const key = `${LOGIN_METHOD_CACHE_PREFIX}:${connectorId}:${address.toLowerCase()}`;
|
|
395
|
+
window.localStorage.setItem(key, value);
|
|
396
|
+
}
|
|
397
|
+
catch {
|
|
398
|
+
// ignore
|
|
221
399
|
}
|
|
222
|
-
return connectorWalletName ?? connectorName;
|
|
223
400
|
};
|
|
224
401
|
//# sourceMappingURL=useWallets.js.map
|