@dynamic-labs/sdk-react-core 1.0.0-alpha.8 → 1.0.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/CHANGELOG.md +69 -0
- package/package.cjs +3 -3
- package/package.js +3 -3
- package/package.json +12 -11
- package/src/index.cjs +41 -34
- package/src/index.d.ts +3 -1
- package/src/index.js +26 -22
- package/src/lib/Main.cjs +24 -22
- package/src/lib/Main.js +24 -22
- package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.cjs +18 -17
- package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.js +18 -17
- package/src/lib/components/AnimatePresence/AnimatePresence.cjs +19 -18
- package/src/lib/components/AnimatePresence/AnimatePresence.js +19 -18
- package/src/lib/components/AuthProviderIcon/AuthProviderIcon.cjs +15 -14
- package/src/lib/components/AuthProviderIcon/AuthProviderIcon.js +15 -14
- package/src/lib/components/Divider/Divider.cjs +16 -15
- package/src/lib/components/Divider/Divider.js +16 -15
- package/src/lib/components/MenuList/Dropdown/Dropdown.cjs +16 -15
- package/src/lib/components/MenuList/Dropdown/Dropdown.js +16 -15
- package/src/lib/components/Modal/Modal.cjs +17 -16
- package/src/lib/components/Modal/Modal.js +17 -16
- package/src/lib/components/NeedHelpSection/NeedHelpSection.cjs +21 -19
- package/src/lib/components/NeedHelpSection/NeedHelpSection.js +21 -19
- package/src/lib/components/NetworkPicker/NetworkPicker.cjs +17 -16
- package/src/lib/components/NetworkPicker/NetworkPicker.js +17 -16
- package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.cjs +15 -14
- package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.js +15 -14
- package/src/lib/components/NetworkPicker/components/Network/Network.cjs +17 -16
- package/src/lib/components/NetworkPicker/components/Network/Network.js +17 -16
- package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.cjs +16 -15
- package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.js +16 -15
- package/src/lib/components/OTPVerificationView/OTPVerificationView.cjs +16 -15
- package/src/lib/components/OTPVerificationView/OTPVerificationView.js +16 -15
- package/src/lib/components/OverlayCard/OverlayCard.cjs +17 -16
- package/src/lib/components/OverlayCard/OverlayCard.js +17 -16
- package/src/lib/components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.cjs +16 -15
- package/src/lib/components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.js +16 -15
- package/src/lib/components/Popper/PopperContext/PopperContext.js +1 -1
- package/src/lib/components/Portal/Portal.cjs +17 -16
- package/src/lib/components/Portal/Portal.js +17 -16
- package/src/lib/components/SecureTurnkeyWalletCard/SecureTurnkeyWalletCard.cjs +1 -1
- package/src/lib/components/SecureTurnkeyWalletCard/SecureTurnkeyWalletCard.js +1 -1
- package/src/lib/components/SendBalancePageLayout/components/TokenBalanceCard/TokenBalanceCard.cjs +2 -1
- package/src/lib/components/SendBalancePageLayout/components/TokenBalanceCard/TokenBalanceCard.js +2 -1
- package/src/lib/components/SocialSignIn/SocialSignIn.cjs +16 -15
- package/src/lib/components/SocialSignIn/SocialSignIn.js +16 -15
- package/src/lib/components/SyncPasskeyFlow/SyncPasskeyFlow.cjs +15 -14
- package/src/lib/components/SyncPasskeyFlow/SyncPasskeyFlow.js +15 -14
- package/src/lib/components/Tooltip/Tooltip.cjs +15 -14
- package/src/lib/components/Tooltip/Tooltip.js +15 -14
- package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.cjs +14 -13
- package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.js +14 -13
- package/src/lib/components/Transition/VerticalDrawerTransition/VerticalDrawerTransition.cjs +18 -17
- package/src/lib/components/Transition/VerticalDrawerTransition/VerticalDrawerTransition.js +18 -17
- package/src/lib/components/UserAddress/UserAddress.cjs +16 -15
- package/src/lib/components/UserAddress/UserAddress.js +16 -15
- package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.cjs +16 -15
- package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.js +16 -15
- package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.cjs +16 -15
- package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.js +16 -15
- package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.cjs +16 -15
- package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.js +16 -15
- package/src/lib/context/AccessDeniedContext/AccessDeniedContext.js +1 -1
- package/src/lib/context/AccountExistsContext/AccountExistsContext.js +1 -1
- package/src/lib/context/CaptchaContext/CaptchaContext.js +1 -1
- package/src/lib/context/DynamicContext/DynamicContext.cjs +44 -38
- package/src/lib/context/DynamicContext/DynamicContext.d.ts +5 -2
- package/src/lib/context/DynamicContext/DynamicContext.js +44 -39
- package/src/lib/context/DynamicContext/hooks/useSelectedWalletConnector/useSelectedWalletConnector.cjs +3 -3
- package/src/lib/context/DynamicContext/hooks/useSelectedWalletConnector/useSelectedWalletConnector.d.ts +2 -2
- package/src/lib/context/DynamicContext/hooks/useSelectedWalletConnector/useSelectedWalletConnector.js +3 -3
- package/src/lib/context/DynamicContext/hooks/useSetShowAuthFlowWithInit/useSetShowAuthFlowWithInit.cjs +3 -3
- package/src/lib/context/DynamicContext/hooks/useSetShowAuthFlowWithInit/useSetShowAuthFlowWithInit.d.ts +2 -2
- package/src/lib/context/DynamicContext/hooks/useSetShowAuthFlowWithInit/useSetShowAuthFlowWithInit.js +3 -3
- package/src/lib/context/DynamicContext/types/index.d.ts +1 -2
- package/src/lib/context/DynamicContext/useCustomerCallbacks/types.d.ts +1 -1
- package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.cjs +18 -17
- package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.js +18 -17
- package/src/lib/context/DynamicContext/useDynamicContext.cjs +2 -5
- package/src/lib/context/DynamicContext/useDynamicContext.d.ts +1 -1
- package/src/lib/context/DynamicContext/useDynamicContext.js +2 -5
- package/src/lib/context/EmailVerificationContext/EmailVerificationContext.js +1 -1
- package/src/lib/context/FundingContext/FundingContext.cjs +35 -27
- package/src/lib/context/FundingContext/FundingContext.d.ts +4 -0
- package/src/lib/context/FundingContext/FundingContext.js +36 -28
- package/src/lib/context/FundingContext/index.d.ts +1 -0
- package/src/lib/context/FundingContext/useFunding/index.d.ts +1 -0
- package/src/lib/context/FundingContext/useFunding/useFunding.cjs +39 -0
- package/src/lib/context/FundingContext/useFunding/useFunding.d.ts +9 -0
- package/src/lib/context/FundingContext/useFunding/useFunding.js +35 -0
- package/src/lib/context/LoadingContext/LoadingContext.js +1 -1
- package/src/lib/context/MockContext/MockContext.cjs +13 -11
- package/src/lib/context/MockContext/MockContext.js +13 -11
- package/src/lib/context/QrCodeContext/QrCodeContext.cjs +18 -17
- package/src/lib/context/QrCodeContext/QrCodeContext.js +18 -17
- package/src/lib/context/SendBalanceContext/SendBalanceContext.cjs +15 -14
- package/src/lib/context/SendBalanceContext/SendBalanceContext.js +15 -14
- package/src/lib/context/SocialRedirectContext/SocialRedirectContext.cjs +31 -16
- package/src/lib/context/SocialRedirectContext/SocialRedirectContext.js +32 -17
- package/src/lib/context/UserFieldEditorContext/UserFieldEditorContext.cjs +16 -15
- package/src/lib/context/UserFieldEditorContext/UserFieldEditorContext.js +16 -15
- package/src/lib/context/UserWalletsContext/UserWalletsContext.cjs +52 -0
- package/src/lib/context/UserWalletsContext/UserWalletsContext.d.ts +21 -0
- package/src/lib/context/UserWalletsContext/UserWalletsContext.js +45 -0
- package/src/lib/context/UserWalletsContext/index.d.ts +1 -0
- package/src/lib/context/ViewContext/ViewContext.js +1 -1
- package/src/lib/data/api.js +1 -1
- package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.cjs +16 -15
- package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.js +16 -15
- package/src/lib/layout/DynamicAuthLayout/Header/header.cjs +16 -15
- package/src/lib/layout/DynamicAuthLayout/Header/header.js +16 -15
- package/src/lib/layout/DynamicAuthLayout/HelpContent/HelpHeader/HelpHeader.cjs +16 -15
- package/src/lib/layout/DynamicAuthLayout/HelpContent/HelpHeader/HelpHeader.js +16 -15
- package/src/lib/layout/DynamicAuthLayout/HelpContent/PasskeyInfoHelper/PasskeyInfoHelper.cjs +14 -13
- package/src/lib/layout/DynamicAuthLayout/HelpContent/PasskeyInfoHelper/PasskeyInfoHelper.js +14 -13
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/Item/Item.cjs +16 -15
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/Item/Item.js +16 -15
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.cjs +16 -15
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.js +16 -15
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletListHelpContent.cjs +15 -14
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletListHelpContent.js +15 -14
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletMoreInfoContent/WalletMoreInfoContent.cjs +15 -14
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletMoreInfoContent/WalletMoreInfoContent.js +15 -14
- package/src/lib/layout/DynamicAuthLayout/ToSFooter/ToSFooter.cjs +16 -15
- package/src/lib/layout/DynamicAuthLayout/ToSFooter/ToSFooter.js +16 -15
- package/src/lib/layout/DynamicAuthLayout/WalletProgressStepper/WalletProgressStepper.cjs +15 -14
- package/src/lib/layout/DynamicAuthLayout/WalletProgressStepper/WalletProgressStepper.js +15 -14
- package/src/lib/layout/DynamicUserProfileLayout/DynamicUserProfileLayout.cjs +17 -15
- package/src/lib/layout/DynamicUserProfileLayout/DynamicUserProfileLayout.js +17 -15
- package/src/lib/layouts/BridgeNextWalletToConnectLayout/BridgeNextWalletToConnectLayout.cjs +16 -15
- package/src/lib/layouts/BridgeNextWalletToConnectLayout/BridgeNextWalletToConnectLayout.js +16 -15
- package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.cjs +16 -15
- package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.js +16 -15
- package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.cjs +16 -15
- package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.js +16 -15
- package/src/lib/locale/en/translation.cjs +4 -4
- package/src/lib/locale/en/translation.d.ts +2 -2
- package/src/lib/locale/en/translation.js +4 -4
- package/src/lib/modals/DynamicAuthModal/DynamicAuthModal.cjs +16 -15
- package/src/lib/modals/DynamicAuthModal/DynamicAuthModal.js +16 -15
- package/src/lib/modals/SendBalanceModal/SendBalanceModal.cjs +16 -15
- package/src/lib/modals/SendBalanceModal/SendBalanceModal.js +16 -15
- package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.cjs +17 -16
- package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.js +17 -16
- package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.types.d.ts +1 -1
- package/src/lib/modals/SignMessageConfirmationModal/getProperErrorMessage.cjs +15 -10
- package/src/lib/modals/SignMessageConfirmationModal/getProperErrorMessage.d.ts +4 -2
- package/src/lib/modals/SignMessageConfirmationModal/getProperErrorMessage.js +15 -10
- package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs +16 -16
- package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.js +16 -16
- package/src/lib/modals/UserFieldEditorModal/UserFieldEditorModal.cjs +16 -15
- package/src/lib/modals/UserFieldEditorModal/UserFieldEditorModal.js +16 -15
- package/src/lib/shared/types/index.d.ts +9 -0
- package/src/lib/shared/utils/hooks/useGlobalLoading/useGlobalLoading.cjs +4 -2
- package/src/lib/shared/utils/hooks/useGlobalLoading/useGlobalLoading.d.ts +2 -2
- package/src/lib/shared/utils/hooks/useGlobalLoading/useGlobalLoading.js +4 -2
- package/src/lib/styles/index.shadow.cjs +1 -1
- package/src/lib/styles/index.shadow.js +1 -1
- package/src/lib/utils/functions/createOwnerWallet/createOwnerWallet.cjs +39 -0
- package/src/lib/utils/functions/createOwnerWallet/createOwnerWallet.d.ts +3 -0
- package/src/lib/utils/functions/createOwnerWallet/createOwnerWallet.js +35 -0
- package/src/lib/utils/functions/createOwnerWallet/index.d.ts +1 -0
- package/src/lib/utils/functions/getOauthLoginUrl/getOauthLoginUrl.cjs +1 -1
- package/src/lib/utils/functions/getOauthLoginUrl/getOauthLoginUrl.js +1 -1
- package/src/lib/utils/functions/index.d.ts +2 -0
- package/src/lib/utils/functions/isAccountAbstractionWallet/index.d.ts +1 -0
- package/src/lib/utils/functions/isAccountAbstractionWallet/isAccountAbstractionWallet.cjs +18 -0
- package/src/lib/utils/functions/isAccountAbstractionWallet/isAccountAbstractionWallet.d.ts +2 -0
- package/src/lib/utils/functions/isAccountAbstractionWallet/isAccountAbstractionWallet.js +14 -0
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.cjs +9 -2
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.js +9 -2
- package/src/lib/utils/hooks/index.d.ts +35 -35
- package/src/lib/utils/hooks/useAuthenticateConnectedUser/useAuthenticateConnectedUser.cjs +4 -3
- package/src/lib/utils/hooks/useAuthenticateConnectedUser/useAuthenticateConnectedUser.js +4 -3
- package/src/lib/utils/hooks/useConnectWallet/updateUserWalletsFromConnectedWallets/index.d.ts +1 -0
- package/src/lib/utils/hooks/useConnectWallet/updateUserWalletsFromConnectedWallets/updateUserWalletsFromConnectedWallets.cjs +37 -0
- package/src/lib/utils/hooks/useConnectWallet/updateUserWalletsFromConnectedWallets/updateUserWalletsFromConnectedWallets.d.ts +8 -0
- package/src/lib/utils/hooks/useConnectWallet/updateUserWalletsFromConnectedWallets/updateUserWalletsFromConnectedWallets.js +33 -0
- package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +14 -7
- package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.d.ts +2 -3
- package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +14 -7
- package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.cjs +8 -5
- package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.d.ts +1 -1
- package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.js +8 -5
- package/src/lib/utils/hooks/useEmailProvider/useEmailProvider.cjs +6 -3
- package/src/lib/utils/hooks/useEmailProvider/useEmailProvider.js +6 -3
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.cjs +14 -11
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.js +14 -11
- package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs +16 -1
- package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js +16 -1
- package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.cjs +2 -2
- package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.js +2 -2
- package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.cjs +6 -1
- package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.js +7 -2
- package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +2 -2
- package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +2 -2
- package/src/lib/utils/hooks/useWalletConnectorEvent/useWalletConnectorEvent.cjs +34 -5
- package/src/lib/utils/hooks/useWalletConnectorEvent/useWalletConnectorEvent.d.ts +33 -1
- package/src/lib/utils/hooks/useWalletConnectorEvent/useWalletConnectorEvent.js +34 -5
- package/src/lib/utils/hooks/useWalletConnectorOptions/index.d.ts +1 -0
- package/src/lib/utils/hooks/{useWallets/useWallets.cjs → useWalletConnectorOptions/useWalletConnectorOptions.cjs} +8 -8
- package/src/lib/utils/hooks/{useWallets/useWallets.d.ts → useWalletConnectorOptions/useWalletConnectorOptions.d.ts} +2 -2
- package/src/lib/utils/hooks/{useWallets/useWallets.js → useWalletConnectorOptions/useWalletConnectorOptions.js} +8 -8
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/errors/ConnectorSetupError.cjs +13 -0
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/errors/ConnectorSetupError.d.ts +4 -0
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/errors/ConnectorSetupError.js +9 -0
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/errors/index.d.ts +1 -0
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/index.d.ts +1 -0
- package/src/lib/utils/hooks/{useWallets → useWalletConnectorOptions}/utils/verifyMagicIsSetup/verifyMagicIsSetup.cjs +3 -5
- package/src/lib/utils/hooks/{useWallets → useWalletConnectorOptions}/utils/verifyMagicIsSetup/verifyMagicIsSetup.d.ts +0 -3
- package/src/lib/utils/hooks/{useWallets → useWalletConnectorOptions}/utils/verifyMagicIsSetup/verifyMagicIsSetup.js +4 -4
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyRequiredConnectorsAreSetup/index.d.ts +1 -0
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyRequiredConnectorsAreSetup/verifyRequiredConnectorsAreSetup.cjs +13 -0
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyRequiredConnectorsAreSetup/verifyRequiredConnectorsAreSetup.d.ts +3 -0
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyRequiredConnectorsAreSetup/verifyRequiredConnectorsAreSetup.js +9 -0
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyZeroDevIsSetup/index.d.ts +1 -0
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.cjs +32 -0
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.d.ts +3 -0
- package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.js +28 -0
- package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.cjs +17 -15
- package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.d.ts +3 -7
- package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.js +17 -15
- package/src/lib/utils/hooks/useWalletConnectors/utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.cjs +5 -4
- package/src/lib/utils/hooks/useWalletConnectors/utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.d.ts +2 -2
- package/src/lib/utils/hooks/useWalletConnectors/utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.js +5 -4
- package/src/lib/utils/hooks/useWalletConnectors/utils/smartWallet/smartWallet.cjs +3 -3
- package/src/lib/utils/hooks/useWalletConnectors/utils/smartWallet/smartWallet.d.ts +2 -2
- package/src/lib/utils/hooks/useWalletConnectors/utils/smartWallet/smartWallet.js +3 -3
- package/src/lib/utils/hooks/useWalletConnectors/utils/updateUserWalletsFromLinkedWallets/index.d.ts +1 -0
- package/src/lib/utils/hooks/useWalletConnectors/utils/updateUserWalletsFromLinkedWallets/updateUserWalletsFromLinkedWallets.cjs +34 -0
- package/src/lib/utils/hooks/useWalletConnectors/utils/updateUserWalletsFromLinkedWallets/updateUserWalletsFromLinkedWallets.d.ts +8 -0
- package/src/lib/utils/hooks/useWalletConnectors/utils/updateUserWalletsFromLinkedWallets/updateUserWalletsFromLinkedWallets.js +30 -0
- package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +4 -4
- package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +4 -4
- package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.cjs +9 -8
- package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.js +9 -8
- package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.cjs +13 -12
- package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.js +13 -12
- package/src/lib/views/AccountExistsView/AccountExistsView.cjs +18 -17
- package/src/lib/views/AccountExistsView/AccountExistsView.js +18 -17
- package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.cjs +16 -15
- package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.js +16 -15
- package/src/lib/views/CollectUserDataView/CollectUserDataView.cjs +17 -16
- package/src/lib/views/CollectUserDataView/CollectUserDataView.js +17 -16
- package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.cjs +19 -18
- package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.js +19 -18
- package/src/lib/views/CollectUserDataView/UserDataFields/index.cjs +17 -16
- package/src/lib/views/CollectUserDataView/UserDataFields/index.js +17 -16
- package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.cjs +17 -16
- package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.js +17 -16
- package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.cjs +15 -14
- package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.js +15 -14
- package/src/lib/views/EmailUpdate/EmailUpdate.cjs +16 -15
- package/src/lib/views/EmailUpdate/EmailUpdate.js +16 -15
- package/src/lib/views/EmailVerification/EmailVerification.cjs +20 -19
- package/src/lib/views/EmailVerification/EmailVerification.js +20 -19
- package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.cjs +15 -14
- package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.js +15 -14
- package/src/lib/views/LoginView/sections/EmailSignInSection/LoginEmailForm.cjs +17 -16
- package/src/lib/views/LoginView/sections/EmailSignInSection/LoginEmailForm.js +17 -16
- package/src/lib/views/LoginView/sections/SocialSignInSection/DynamicSocialSignIn/DynamicSocialSignIn.cjs +17 -16
- package/src/lib/views/LoginView/sections/SocialSignInSection/DynamicSocialSignIn/DynamicSocialSignIn.js +17 -16
- package/src/lib/views/LoginView/sections/SocialSignInSection/MagicSocialSignIn/MagicSocialSignIn.cjs +17 -16
- package/src/lib/views/LoginView/sections/SocialSignInSection/MagicSocialSignIn/MagicSocialSignIn.js +17 -16
- package/src/lib/views/LoginView/sections/WalletSignInSection/ListItemButton/ListItemButton.cjs +15 -14
- package/src/lib/views/LoginView/sections/WalletSignInSection/ListItemButton/ListItemButton.js +15 -14
- package/src/lib/views/LoginView/sections/WalletSignInSection/WalletSignInSection.cjs +16 -15
- package/src/lib/views/LoginView/sections/WalletSignInSection/WalletSignInSection.js +16 -15
- package/src/lib/views/LoginView/sections/WalletSignInSection/WalletSimpleSignIn/WalletSimpleSignIn.cjs +2 -2
- package/src/lib/views/LoginView/sections/WalletSignInSection/WalletSimpleSignIn/WalletSimpleSignIn.js +2 -2
- package/src/lib/views/LoginView/useLoginView.cjs +9 -2
- package/src/lib/views/LoginView/useLoginView.js +9 -2
- package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.cjs +16 -15
- package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.js +16 -15
- package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +19 -18
- package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +19 -18
- package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.cjs +19 -18
- package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.js +19 -18
- package/src/lib/views/NoAccess/NoAccess.cjs +16 -15
- package/src/lib/views/NoAccess/NoAccess.js +16 -15
- package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.cjs +16 -15
- package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.js +16 -15
- package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.cjs +16 -15
- package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.js +16 -15
- package/src/lib/views/Passkey/PasskeyDeviceIcon/PasskeyDeviceIcon.cjs +16 -15
- package/src/lib/views/Passkey/PasskeyDeviceIcon/PasskeyDeviceIcon.js +16 -15
- package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.cjs +21 -20
- package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.js +21 -20
- package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.cjs +37 -20
- package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.js +38 -21
- package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.cjs +24 -18
- package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.js +24 -18
- package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.cjs +26 -20
- package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.js +26 -20
- package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.cjs +12 -7
- package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.d.ts +2 -1
- package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.js +12 -7
- package/src/lib/views/PendingConnectView/PendingConnectView.cjs +16 -15
- package/src/lib/views/PendingConnectView/PendingConnectView.js +16 -15
- package/src/lib/views/PendingSignatureView/PendingSignatureView.cjs +16 -15
- package/src/lib/views/PendingSignatureView/PendingSignatureView.js +16 -15
- package/src/lib/views/QrCodeView/QRCode.cjs +17 -16
- package/src/lib/views/QrCodeView/QRCode.js +17 -16
- package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.cjs +14 -13
- package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.js +14 -13
- package/src/lib/views/QrCodeView/QrCodeView.cjs +14 -13
- package/src/lib/views/QrCodeView/QrCodeView.js +14 -13
- package/src/lib/views/SendBalanceView/SendBalanceView.cjs +17 -16
- package/src/lib/views/SendBalanceView/SendBalanceView.js +17 -16
- package/src/lib/views/SendBalanceView/components/TransactionStage/TransactionStage.cjs +17 -17
- package/src/lib/views/SendBalanceView/components/TransactionStage/TransactionStage.js +17 -17
- package/src/lib/views/SocialRedirectView/SocialRedirectView.cjs +17 -16
- package/src/lib/views/SocialRedirectView/SocialRedirectView.js +17 -16
- package/src/lib/views/SocialWrongAccountView/SocialWrongAccountView.cjs +17 -16
- package/src/lib/views/SocialWrongAccountView/SocialWrongAccountView.js +17 -16
- package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.cjs +21 -25
- package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.js +21 -25
- package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.types.d.ts +4 -0
- package/src/lib/views/TransactionConfirmationView/helpers/transactionErrorMessage.cjs +19 -12
- package/src/lib/views/TransactionConfirmationView/helpers/transactionErrorMessage.d.ts +2 -11
- package/src/lib/views/TransactionConfirmationView/helpers/transactionErrorMessage.js +19 -12
- package/src/lib/views/TransactionConfirmationView/hooks/useTransactionGas/useTransactionGas.cjs +19 -18
- package/src/lib/views/TransactionConfirmationView/hooks/useTransactionGas/useTransactionGas.js +19 -18
- package/src/lib/views/UserFieldEditorView/UserFieldEditorView.cjs +16 -15
- package/src/lib/views/UserFieldEditorView/UserFieldEditorView.js +16 -15
- package/src/lib/views/WalletCannotBeTransferredView/WalletCannotBeTransferredView.cjs +16 -15
- package/src/lib/views/WalletCannotBeTransferredView/WalletCannotBeTransferredView.js +16 -15
- package/src/lib/views/WalletList/SearchNotFoundMessage/SearchNotFoundMessage.cjs +16 -15
- package/src/lib/views/WalletList/SearchNotFoundMessage/SearchNotFoundMessage.js +16 -15
- package/src/lib/views/WalletList/WalletList.cjs +4 -4
- package/src/lib/views/WalletList/WalletList.js +4 -4
- package/src/lib/views/WalletList/WalletListItem/WalletListItem.cjs +16 -15
- package/src/lib/views/WalletList/WalletListItem/WalletListItem.js +16 -15
- package/src/lib/views/WalletLockedView/WalletLockedView.cjs +16 -15
- package/src/lib/views/WalletLockedView/WalletLockedView.js +16 -15
- package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.cjs +14 -13
- package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.js +14 -13
- package/src/lib/views/WalletUsedView/WalletUsedView.cjs +18 -17
- package/src/lib/views/WalletUsedView/WalletUsedView.js +18 -17
- package/src/lib/widgets/DynamicBridgeWidget/DynamicBridgeWidget.cjs +16 -15
- package/src/lib/widgets/DynamicBridgeWidget/DynamicBridgeWidget.js +16 -15
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeUserProfile/DynamicBridgeUserProfile.cjs +17 -16
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeUserProfile/DynamicBridgeUserProfile.js +17 -16
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCard/DynamicBridgeWalletCard.cjs +16 -15
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCard/DynamicBridgeWalletCard.js +16 -15
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCardBody/DynamicBridgeWalletCardBody.cjs +16 -15
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCardBody/DynamicBridgeWalletCardBody.js +16 -15
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetEmptyCard/DynamicBridgeWidgetEmptyCard.cjs +13 -12
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetEmptyCard/DynamicBridgeWidgetEmptyCard.js +13 -12
- package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/WalletsView.cjs +15 -14
- package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/WalletsView.js +15 -14
- package/src/lib/widgets/DynamicEmbeddedWidget/DynamicEmbeddedAuthFlow/DynamicEmbeddedAuthFlow.cjs +17 -16
- package/src/lib/widgets/DynamicEmbeddedWidget/DynamicEmbeddedAuthFlow/DynamicEmbeddedAuthFlow.js +17 -16
- package/src/lib/widgets/DynamicEmbeddedWidget/DynamicEmbeddedUserProfile/DynamicEmbeddedUserProfile.cjs +18 -16
- package/src/lib/widgets/DynamicEmbeddedWidget/DynamicEmbeddedUserProfile/DynamicEmbeddedUserProfile.js +18 -16
- package/src/lib/widgets/DynamicWidget/DynamicWidget.cjs +17 -16
- package/src/lib/widgets/DynamicWidget/DynamicWidget.js +17 -16
- package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.cjs +13 -12
- package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.js +13 -12
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs +24 -18
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js +24 -18
- package/src/lib/widgets/DynamicWidget/components/Balance/Balance.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/components/Balance/Balance.js +16 -15
- package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.js +16 -15
- package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.js +16 -15
- package/src/lib/widgets/DynamicWidget/components/DynamicNav/DynamicNav.cjs +15 -14
- package/src/lib/widgets/DynamicWidget/components/DynamicNav/DynamicNav.js +15 -14
- package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.cjs +17 -15
- package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.js +17 -15
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs +18 -17
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js +18 -17
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.js +16 -15
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetDropdown/DynamicWidgetDropdown.cjs +17 -16
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetDropdown/DynamicWidgetDropdown.js +17 -16
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.js +16 -15
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.js +16 -15
- package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.js +16 -15
- package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.cjs +17 -16
- package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.js +17 -16
- package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.js +16 -15
- package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.js +16 -15
- package/src/lib/widgets/DynamicWidget/components/UnknownWalletInformation/UnknownWalletInformation.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/components/UnknownWalletInformation/UnknownWalletInformation.js +16 -15
- package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.cjs +13 -12
- package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.js +13 -12
- package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.js +16 -15
- package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.cjs +17 -16
- package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.js +17 -16
- package/src/lib/widgets/DynamicWidget/helpers/helpers.cjs +7 -7
- package/src/lib/widgets/DynamicWidget/helpers/helpers.d.ts +1 -1
- package/src/lib/widgets/DynamicWidget/helpers/helpers.js +7 -7
- package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.js +16 -15
- package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.cjs +13 -12
- package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.js +13 -12
- package/src/lib/widgets/DynamicWidget/prompts/NoQrNotInstalledModalView/NoQrNotInstalledModalView.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/prompts/NoQrNotInstalledModalView/NoQrNotInstalledModalView.js +16 -15
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.js +16 -15
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.js +16 -15
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.cjs +15 -14
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.js +15 -14
- package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.cjs +14 -13
- package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.js +14 -13
- package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.js +16 -15
- package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.js +16 -15
- package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.cjs +15 -14
- package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.js +15 -14
- package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.cjs +15 -14
- package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.js +15 -14
- package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.cjs +18 -17
- package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.js +18 -17
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/ManagePasskeysWidgetView.cjs +28 -29
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/ManagePasskeysWidgetView.js +28 -29
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs +17 -16
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js +17 -16
- package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.cjs +16 -15
- package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.js +16 -15
- package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.cjs +17 -16
- package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.js +17 -16
- package/src/lib/widgets/FundingWidget/views/FundWalletView/FundWalletView.cjs +16 -15
- package/src/lib/widgets/FundingWidget/views/FundWalletView/FundWalletView.js +16 -15
- package/src/lib/utils/hooks/useWallets/index.d.ts +0 -1
- package/src/lib/utils/hooks/useWallets/utils/index.d.ts +0 -1
- package/src/lib/views/Passkey/passkey.types.d.ts +0 -8
- /package/src/lib/utils/hooks/{useWallets → useWalletConnectorOptions}/utils/verifyMagicIsSetup/index.d.ts +0 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { isAccountAbstractionConnector } from '@dynamic-labs/wallet-connector-core';
|
|
2
|
+
|
|
3
|
+
const isAccountAbstractionWallet = (wallet) => {
|
|
4
|
+
if (!wallet ||
|
|
5
|
+
wallet === undefined ||
|
|
6
|
+
wallet === null ||
|
|
7
|
+
typeof wallet !== 'object' ||
|
|
8
|
+
!('connector' in wallet)) {
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
return isAccountAbstractionConnector(wallet.connector);
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export { isAccountAbstractionWallet };
|
|
@@ -88,15 +88,22 @@ const useConnectAndSign = ({ shouldUpdateWallets = true, shouldCallCallback = tr
|
|
|
88
88
|
}
|
|
89
89
|
const { address, id } = connectionResult;
|
|
90
90
|
const walletNetwork = yield walletConnector.getNetwork();
|
|
91
|
+
// When we switch networks on MM/walletconnect, it breaks the flow and doesn't always display the sign message
|
|
92
|
+
// Since it the network doesn't matter for the sign, we don't need to force the user to switch to the supported
|
|
93
|
+
// network at this stage and they can switch when doing a transaction
|
|
94
|
+
// Note: not checking specifically for MM since user can choose walletconnect connector to use with MM
|
|
95
|
+
const shouldForceSupportedNetwork = !walletConnector.isWalletConnect;
|
|
91
96
|
const usesSupportedNetwork = isSupportedNetwork.isSupportedNetwork({
|
|
92
97
|
network: walletNetwork,
|
|
93
98
|
walletConnector,
|
|
94
99
|
});
|
|
95
100
|
if (!usesSupportedNetwork) {
|
|
96
|
-
if (isProgrammableNetworkSwitchSupported.isProgrammableNetworkSwitchSupported(walletConnector)) {
|
|
101
|
+
if (!isProgrammableNetworkSwitchSupported.isProgrammableNetworkSwitchSupported(walletConnector)) {
|
|
102
|
+
return setView('network-not-supported-manual');
|
|
103
|
+
}
|
|
104
|
+
if (shouldForceSupportedNetwork) {
|
|
97
105
|
return setView('network-not-supported');
|
|
98
106
|
}
|
|
99
|
-
return setView('network-not-supported-manual');
|
|
100
107
|
}
|
|
101
108
|
setCallback('connectSuccess', {
|
|
102
109
|
walletId: id,
|
|
@@ -84,15 +84,22 @@ const useConnectAndSign = ({ shouldUpdateWallets = true, shouldCallCallback = tr
|
|
|
84
84
|
}
|
|
85
85
|
const { address, id } = connectionResult;
|
|
86
86
|
const walletNetwork = yield walletConnector.getNetwork();
|
|
87
|
+
// When we switch networks on MM/walletconnect, it breaks the flow and doesn't always display the sign message
|
|
88
|
+
// Since it the network doesn't matter for the sign, we don't need to force the user to switch to the supported
|
|
89
|
+
// network at this stage and they can switch when doing a transaction
|
|
90
|
+
// Note: not checking specifically for MM since user can choose walletconnect connector to use with MM
|
|
91
|
+
const shouldForceSupportedNetwork = !walletConnector.isWalletConnect;
|
|
87
92
|
const usesSupportedNetwork = isSupportedNetwork({
|
|
88
93
|
network: walletNetwork,
|
|
89
94
|
walletConnector,
|
|
90
95
|
});
|
|
91
96
|
if (!usesSupportedNetwork) {
|
|
92
|
-
if (isProgrammableNetworkSwitchSupported(walletConnector)) {
|
|
97
|
+
if (!isProgrammableNetworkSwitchSupported(walletConnector)) {
|
|
98
|
+
return setView('network-not-supported-manual');
|
|
99
|
+
}
|
|
100
|
+
if (shouldForceSupportedNetwork) {
|
|
93
101
|
return setView('network-not-supported');
|
|
94
102
|
}
|
|
95
|
-
return setView('network-not-supported-manual');
|
|
96
103
|
}
|
|
97
104
|
setCallback('connectSuccess', {
|
|
98
105
|
walletId: id,
|
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export {
|
|
3
|
-
export { useWallets } from './useWallets';
|
|
4
|
-
export { useWalletConnectors } from './useWalletConnectors';
|
|
5
|
-
export { useVerifyWallet } from './useVerifyWallet';
|
|
6
|
-
export { useKeyboardHeight } from './useKeyboardHeight';
|
|
7
|
-
export { useElementById } from './useElementById';
|
|
8
|
-
export { useResizeObserver } from './useResizeObserver';
|
|
9
|
-
export { useIsFirstRender } from './useIsFirstRender';
|
|
10
|
-
export { useUpdateEffect } from './useUpdateEffect';
|
|
11
|
-
export { useTransition } from './useTransition';
|
|
12
|
-
export { usePrevious } from './usePrevious';
|
|
1
|
+
export { useAuthenticateConnectedUser } from './useAuthenticateConnectedUser';
|
|
2
|
+
export { useColorSchemePreference } from './useColorSchemePreference';
|
|
13
3
|
export { useConfirmationModal } from './useConfirmationModal';
|
|
14
|
-
export {
|
|
15
|
-
export
|
|
16
|
-
export { useKYCFlag } from './useKYCFlag';
|
|
4
|
+
export { useCountdown } from './useCountdown/useCountdown';
|
|
5
|
+
export * from './useCreateDynamicEmbeddedWalletMutation';
|
|
17
6
|
export { useDefaultQrCode } from './useDefaultQrCode';
|
|
18
|
-
export {
|
|
19
|
-
export {
|
|
20
|
-
export {
|
|
21
|
-
export {
|
|
7
|
+
export { useDynamicScopes } from './useDynamicScopes';
|
|
8
|
+
export { useElementById } from './useElementById';
|
|
9
|
+
export { useEmbeddedWallet } from './useEmbeddedWallet';
|
|
10
|
+
export { useEventListener } from './useEventListener';
|
|
11
|
+
export { useFetchNonce } from './useFetchNonce';
|
|
12
|
+
export { useFetchProjectSettings } from './useFetchProjectSettings';
|
|
22
13
|
export { useFindSocialIcon } from './useFindSocialIcon';
|
|
14
|
+
export { useForceUpdate } from './useForceUpdate';
|
|
23
15
|
export { useIconThemeVariant } from './useIconThemeVariant';
|
|
24
16
|
export type { IconThemeVariant } from './useIconThemeVariant';
|
|
17
|
+
export { useInterval } from './useInterval/useInterval';
|
|
18
|
+
export { useIsFirstRender } from './useIsFirstRender';
|
|
19
|
+
export * from './useIsLoggedIn';
|
|
25
20
|
export { useIsomorphicLayoutEffect } from './useIsomorphicLayoutEffect/useIsomorphicLayoutEffect';
|
|
21
|
+
export { useKYCFlag } from './useKYCFlag';
|
|
22
|
+
export { useKeyboardHeight } from './useKeyboardHeight';
|
|
23
|
+
export { useMutation } from './useMutation';
|
|
24
|
+
export * from './useOnUnmount';
|
|
25
|
+
export { usePasskeyRecovery } from './usePasskeyRecovery';
|
|
26
|
+
export { usePrevious } from './usePrevious';
|
|
27
|
+
export { usePromise } from './usePromise';
|
|
28
|
+
export { useResizeObserver } from './useResizeObserver';
|
|
29
|
+
export { useSetWalletConnectorVerifiedCredentials } from './useSetWalletConnectorVerifiedCredentials';
|
|
30
|
+
export { useSocialAccounts } from './useSocialAccounts';
|
|
26
31
|
export { useTimeout } from './useTimeout/useTimeout';
|
|
27
|
-
export { useInterval } from './useInterval/useInterval';
|
|
28
|
-
export { useCountdown } from './useCountdown/useCountdown';
|
|
29
|
-
export { useValidateSession } from './useValidateSession';
|
|
30
|
-
export { useEventListener } from './useEventListener';
|
|
31
|
-
export { useWalletConnectorEvent } from './useWalletConnectorEvent';
|
|
32
|
-
export { useTransactionWithGasPrice } from './useTransactionWithGasPrice';
|
|
33
32
|
export { useTransactionEstimatedGas } from './useTransactionEstimatedGas';
|
|
34
|
-
export {
|
|
35
|
-
export {
|
|
36
|
-
export {
|
|
37
|
-
export * from './useUserUpdateRequest';
|
|
33
|
+
export { useTransactionWithGasPrice } from './useTransactionWithGasPrice';
|
|
34
|
+
export { useTransition } from './useTransition';
|
|
35
|
+
export { useUpdateEffect } from './useUpdateEffect';
|
|
38
36
|
export * from './useUserDataForm';
|
|
39
|
-
export * from './
|
|
40
|
-
export {
|
|
41
|
-
export {
|
|
42
|
-
export
|
|
43
|
-
export {
|
|
44
|
-
export
|
|
37
|
+
export * from './useUserUpdateRequest';
|
|
38
|
+
export { useValidateSession } from './useValidateSession';
|
|
39
|
+
export { useVerifyWallet } from './useVerifyWallet';
|
|
40
|
+
export { useWalletConnectorEvent } from './useWalletConnectorEvent';
|
|
41
|
+
export { useWalletConnectorOptions } from './useWalletConnectorOptions';
|
|
42
|
+
export { useWalletConnectors } from './useWalletConnectors';
|
|
43
|
+
export { useWalletItemActions } from './useWalletItemActions';
|
|
44
|
+
export { useWalletUiUtils } from './useWalletUiUtils';
|
|
@@ -28,21 +28,22 @@ require('../../../context/EmailVerificationContext/EmailVerificationContext.cjs'
|
|
|
28
28
|
|
|
29
29
|
const useAuthenticateConnectedUser = () => {
|
|
30
30
|
const signConnectOnlyUser = useSignConnectOnlyUser.useSignConnectOnlyUser();
|
|
31
|
-
const {
|
|
31
|
+
const { connectedWallets, user } = useInternalDynamicContext.useInternalDynamicContext();
|
|
32
32
|
const [isAuthenticating, setIsAuthenticating] = React.useState(false);
|
|
33
33
|
const authenticateUser = React.useCallback(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
34
34
|
if (user) {
|
|
35
35
|
throw new utils.DynamicError('User is already authenticated');
|
|
36
36
|
}
|
|
37
|
-
if (
|
|
37
|
+
if (connectedWallets.length === 0) {
|
|
38
38
|
throw new utils.DynamicError('No connected wallet');
|
|
39
39
|
}
|
|
40
|
+
const connectedWallet = connectedWallets[0];
|
|
40
41
|
setIsAuthenticating(true);
|
|
41
42
|
yield signConnectOnlyUser({
|
|
42
43
|
walletConnector: connectedWallet.connector,
|
|
43
44
|
});
|
|
44
45
|
setIsAuthenticating(false);
|
|
45
|
-
}), [
|
|
46
|
+
}), [connectedWallets, signConnectOnlyUser, user]);
|
|
46
47
|
return { authenticateUser, isAuthenticating };
|
|
47
48
|
};
|
|
48
49
|
|
|
@@ -24,21 +24,22 @@ import '../../../context/EmailVerificationContext/EmailVerificationContext.js';
|
|
|
24
24
|
|
|
25
25
|
const useAuthenticateConnectedUser = () => {
|
|
26
26
|
const signConnectOnlyUser = useSignConnectOnlyUser();
|
|
27
|
-
const {
|
|
27
|
+
const { connectedWallets, user } = useInternalDynamicContext();
|
|
28
28
|
const [isAuthenticating, setIsAuthenticating] = useState(false);
|
|
29
29
|
const authenticateUser = useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
30
30
|
if (user) {
|
|
31
31
|
throw new DynamicError('User is already authenticated');
|
|
32
32
|
}
|
|
33
|
-
if (
|
|
33
|
+
if (connectedWallets.length === 0) {
|
|
34
34
|
throw new DynamicError('No connected wallet');
|
|
35
35
|
}
|
|
36
|
+
const connectedWallet = connectedWallets[0];
|
|
36
37
|
setIsAuthenticating(true);
|
|
37
38
|
yield signConnectOnlyUser({
|
|
38
39
|
walletConnector: connectedWallet.connector,
|
|
39
40
|
});
|
|
40
41
|
setIsAuthenticating(false);
|
|
41
|
-
}), [
|
|
42
|
+
}), [connectedWallets, signConnectOnlyUser, user]);
|
|
42
43
|
return { authenticateUser, isAuthenticating };
|
|
43
44
|
};
|
|
44
45
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './updateUserWalletsFromConnectedWallets';
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* This takes a userWallets and connectedWallets array, and returns a new userWallets array
|
|
7
|
+
* updated to match the connectedWallets array.
|
|
8
|
+
* It will add any missing wallets, update properties that don't match, and remove wallets that aren't
|
|
9
|
+
* in the connectedWallets and is not linked to the user.
|
|
10
|
+
*/
|
|
11
|
+
const updateUserWalletsFromConnectedWallets = (userWallets, connectedWallets) => {
|
|
12
|
+
const userWalletsCopy = [...userWallets];
|
|
13
|
+
/** We will use this to find wallets addresses that were removed */
|
|
14
|
+
const newWalletsAddresses = new Set();
|
|
15
|
+
// First pass: add missing wallets and update changed properties
|
|
16
|
+
for (const connectedWallet of connectedWallets) {
|
|
17
|
+
newWalletsAddresses.add(connectedWallet.address);
|
|
18
|
+
const userWallet = userWalletsCopy.find((wallet) => wallet.address === connectedWallet.address);
|
|
19
|
+
// Catch new wallets
|
|
20
|
+
if (!userWallet) {
|
|
21
|
+
userWalletsCopy.push(connectedWallet);
|
|
22
|
+
continue;
|
|
23
|
+
}
|
|
24
|
+
// If already present, just update properties that might have changed
|
|
25
|
+
userWallet.connected = connectedWallet.connected;
|
|
26
|
+
userWallet.network = connectedWallet.network;
|
|
27
|
+
}
|
|
28
|
+
// This filter is to remove a wallet that was previously added to userWallets but is not present
|
|
29
|
+
// among the connected wallets (it should not be removed if it's authenticated to the suer tho)
|
|
30
|
+
return userWalletsCopy.filter((userWallet) =>
|
|
31
|
+
// Keep wallets that are still in the new list
|
|
32
|
+
newWalletsAddresses.has(userWallet.address) ||
|
|
33
|
+
// Or are linked to the current user
|
|
34
|
+
userWallet.authenticated);
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
exports.updateUserWalletsFromConnectedWallets = updateUserWalletsFromConnectedWallets;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Wallet } from '../../../../shared';
|
|
2
|
+
/**
|
|
3
|
+
* This takes a userWallets and connectedWallets array, and returns a new userWallets array
|
|
4
|
+
* updated to match the connectedWallets array.
|
|
5
|
+
* It will add any missing wallets, update properties that don't match, and remove wallets that aren't
|
|
6
|
+
* in the connectedWallets and is not linked to the user.
|
|
7
|
+
*/
|
|
8
|
+
export declare const updateUserWalletsFromConnectedWallets: (userWallets: Wallet[], connectedWallets: Wallet[]) => Wallet[];
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This takes a userWallets and connectedWallets array, and returns a new userWallets array
|
|
3
|
+
* updated to match the connectedWallets array.
|
|
4
|
+
* It will add any missing wallets, update properties that don't match, and remove wallets that aren't
|
|
5
|
+
* in the connectedWallets and is not linked to the user.
|
|
6
|
+
*/
|
|
7
|
+
const updateUserWalletsFromConnectedWallets = (userWallets, connectedWallets) => {
|
|
8
|
+
const userWalletsCopy = [...userWallets];
|
|
9
|
+
/** We will use this to find wallets addresses that were removed */
|
|
10
|
+
const newWalletsAddresses = new Set();
|
|
11
|
+
// First pass: add missing wallets and update changed properties
|
|
12
|
+
for (const connectedWallet of connectedWallets) {
|
|
13
|
+
newWalletsAddresses.add(connectedWallet.address);
|
|
14
|
+
const userWallet = userWalletsCopy.find((wallet) => wallet.address === connectedWallet.address);
|
|
15
|
+
// Catch new wallets
|
|
16
|
+
if (!userWallet) {
|
|
17
|
+
userWalletsCopy.push(connectedWallet);
|
|
18
|
+
continue;
|
|
19
|
+
}
|
|
20
|
+
// If already present, just update properties that might have changed
|
|
21
|
+
userWallet.connected = connectedWallet.connected;
|
|
22
|
+
userWallet.network = connectedWallet.network;
|
|
23
|
+
}
|
|
24
|
+
// This filter is to remove a wallet that was previously added to userWallets but is not present
|
|
25
|
+
// among the connected wallets (it should not be removed if it's authenticated to the suer tho)
|
|
26
|
+
return userWalletsCopy.filter((userWallet) =>
|
|
27
|
+
// Keep wallets that are still in the new list
|
|
28
|
+
newWalletsAddresses.has(userWallet.address) ||
|
|
29
|
+
// Or are linked to the current user
|
|
30
|
+
userWallet.authenticated);
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
export { updateUserWalletsFromConnectedWallets };
|
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var _tslib = require('../../../../../_virtual/_tslib.cjs');
|
|
6
6
|
var React = require('react');
|
|
7
7
|
var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
|
|
8
|
+
var UserWalletsContext = require('../../../context/UserWalletsContext/UserWalletsContext.cjs');
|
|
8
9
|
var api = require('../../../data/api.cjs');
|
|
9
10
|
require('@dynamic-labs/sdk-api');
|
|
10
11
|
require('../../../shared/logger.cjs');
|
|
@@ -22,10 +23,17 @@ require('../../../shared/consts/index.cjs');
|
|
|
22
23
|
require('@dynamic-labs/multi-wallet');
|
|
23
24
|
var shouldManuallyReconnectOnRefresh = require('../../functions/shouldManuallyReconnectOnRefresh/shouldManuallyReconnectOnRefresh.cjs');
|
|
24
25
|
var getWalletProvider = require('../../functions/getWalletProvider/getWalletProvider.cjs');
|
|
26
|
+
var updateUserWalletsFromConnectedWallets = require('./updateUserWalletsFromConnectedWallets/updateUserWalletsFromConnectedWallets.cjs');
|
|
25
27
|
|
|
26
|
-
const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId,
|
|
28
|
+
const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, walletConnectorOptions, onDisconnect, onBeforeConnectSuccessConfirmation, setShowAuthFlow, isBridgeFlow, }) => {
|
|
27
29
|
const [connectedWalletsInfo, setConnectedWalletsInfo, removeConnectedWalletsInfo,] = useLocalStorage.useLocalStorage(localStorage.CONNECTED_WALLETS_INFO, []);
|
|
28
|
-
const [connectedWallets,
|
|
30
|
+
const [connectedWallets, _setConnectedWallets] = React.useState([]);
|
|
31
|
+
const { setUserWallets } = UserWalletsContext.useInternalUserWallets();
|
|
32
|
+
/** This wrapper is to ensure userWallets is always properly updated alongside connectedWallets */
|
|
33
|
+
const setConnectedWallets = (newWallets) => {
|
|
34
|
+
_setConnectedWallets(newWallets);
|
|
35
|
+
setUserWallets((userWallets) => updateUserWalletsFromConnectedWallets.updateUserWalletsFromConnectedWallets(userWallets, newWallets));
|
|
36
|
+
};
|
|
29
37
|
const disconnectWallet = React.useCallback((walletId) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
30
38
|
const walletToDisconnect = connectedWallets.find((wallet) => wallet.id === walletId);
|
|
31
39
|
yield (walletToDisconnect === null || walletToDisconnect === void 0 ? void 0 : walletToDisconnect.connector.endSession());
|
|
@@ -58,7 +66,7 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
|
|
|
58
66
|
// The event listeners are updating `connectedWallets` list.
|
|
59
67
|
// It should be called on the first render and when connectedWalletsInfo updates
|
|
60
68
|
const updateConnectedWalletsList = React.useCallback(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
61
|
-
const walletConnectors =
|
|
69
|
+
const walletConnectors = walletConnectorOptions.map((wallet) => wallet.walletConnector);
|
|
62
70
|
if (!walletConnectors.length) {
|
|
63
71
|
return;
|
|
64
72
|
}
|
|
@@ -79,6 +87,7 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
|
|
|
79
87
|
const walletChain = walletConnector.connectedChain;
|
|
80
88
|
const walletObject = {
|
|
81
89
|
address: walletAddress || '',
|
|
90
|
+
authenticated: false,
|
|
82
91
|
chain: walletChain || '',
|
|
83
92
|
connected: true,
|
|
84
93
|
connector: walletConnector,
|
|
@@ -88,12 +97,12 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
|
|
|
88
97
|
return walletObject;
|
|
89
98
|
})))).filter((wallet) => Boolean(wallet));
|
|
90
99
|
setConnectedWallets(updatedConnectedWallets);
|
|
91
|
-
}), [connectedWalletsInfo, disconnectWallet,
|
|
100
|
+
}), [connectedWalletsInfo, disconnectWallet, walletConnectorOptions]);
|
|
92
101
|
// Generate the connectedWallets list when connectedWalletsInfo (localStorage) or memoized wallet connector updates
|
|
93
102
|
React.useEffect(() => {
|
|
94
103
|
updateConnectedWalletsList();
|
|
95
104
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
96
|
-
}, [connectedWalletsInfo,
|
|
105
|
+
}, [connectedWalletsInfo, walletConnectorOptions]);
|
|
97
106
|
const getNextIdAvailable = React.useCallback((currentWallets) => {
|
|
98
107
|
const existingIds = currentWallets.map(({ id }) => id);
|
|
99
108
|
const sortedIds = existingIds
|
|
@@ -114,7 +123,6 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
|
|
|
114
123
|
setConnectedWallets(clonedConnectedWalletsList);
|
|
115
124
|
}
|
|
116
125
|
}, [connectedWallets]);
|
|
117
|
-
const connectedWallet = connectedWallets[0] || null;
|
|
118
126
|
// Keeps connected wallet data inside localStorage
|
|
119
127
|
const applyConnectedWalletToStore = ({ walletId, walletConnectorKey, walletChain, provider, }) => {
|
|
120
128
|
const updatedConnectedWalletsInfo = [...connectedWalletsInfo];
|
|
@@ -210,7 +218,6 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
|
|
|
210
218
|
const getConnectedWalletById = React.useCallback((walletId) => connectedWallets.find((wallet) => wallet.id === walletId), [connectedWallets]);
|
|
211
219
|
return {
|
|
212
220
|
connectWallet,
|
|
213
|
-
connectedWallet,
|
|
214
221
|
connectedWallets,
|
|
215
222
|
connectedWalletsInfo,
|
|
216
223
|
disconnectWallet,
|
|
@@ -15,7 +15,7 @@ type Props = {
|
|
|
15
15
|
environmentId: string;
|
|
16
16
|
primaryWalletId: string | undefined;
|
|
17
17
|
setPrimaryWalletId: (walletId: string) => void;
|
|
18
|
-
|
|
18
|
+
walletConnectorOptions: WalletOption[];
|
|
19
19
|
onDisconnect: (connectedWalletsInfo: ConnectedWalletConnectorType[], wallet?: Wallet) => void;
|
|
20
20
|
onBeforeConnectSuccessConfirmation: OnBeforeConnectSuccessConfirmation | undefined;
|
|
21
21
|
setShowAuthFlow: Dispatch<SetStateAction<boolean>>;
|
|
@@ -23,7 +23,6 @@ type Props = {
|
|
|
23
23
|
};
|
|
24
24
|
type UseConnectWalletValue = {
|
|
25
25
|
connectWallet: (walletConnector: WalletConnector, fetchPublicAddressOpts?: FetchPublicAddressOpts, shouldCallCallback?: boolean) => Promise<ConnectWalletResult | undefined>;
|
|
26
|
-
connectedWallet: Wallet | null;
|
|
27
26
|
connectedWallets: Wallet[];
|
|
28
27
|
connectedWalletsInfo: ConnectedWalletConnectorType[];
|
|
29
28
|
getConnectedWalletById: (walletId: string) => Wallet | undefined;
|
|
@@ -31,5 +30,5 @@ type UseConnectWalletValue = {
|
|
|
31
30
|
removeConnectedWalletsInfo: () => void;
|
|
32
31
|
disconnectWallet: (walletId: string) => Promise<void>;
|
|
33
32
|
};
|
|
34
|
-
export declare const useConnectWallet: ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId,
|
|
33
|
+
export declare const useConnectWallet: ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, walletConnectorOptions, onDisconnect, onBeforeConnectSuccessConfirmation, setShowAuthFlow, isBridgeFlow, }: Props) => UseConnectWalletValue;
|
|
35
34
|
export {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { __awaiter } from '../../../../../_virtual/_tslib.js';
|
|
2
2
|
import { useState, useCallback, useEffect } from 'react';
|
|
3
3
|
import { getWalletConnectorByKey, logger } from '@dynamic-labs/wallet-connector-core';
|
|
4
|
+
import { useInternalUserWallets } from '../../../context/UserWalletsContext/UserWalletsContext.js';
|
|
4
5
|
import { createVisit } from '../../../data/api.js';
|
|
5
6
|
import '@dynamic-labs/sdk-api';
|
|
6
7
|
import '../../../shared/logger.js';
|
|
@@ -18,10 +19,17 @@ import '../../../shared/consts/index.js';
|
|
|
18
19
|
import '@dynamic-labs/multi-wallet';
|
|
19
20
|
import { shouldManuallyReconnectOnRefresh } from '../../functions/shouldManuallyReconnectOnRefresh/shouldManuallyReconnectOnRefresh.js';
|
|
20
21
|
import { getWalletProvider } from '../../functions/getWalletProvider/getWalletProvider.js';
|
|
22
|
+
import { updateUserWalletsFromConnectedWallets } from './updateUserWalletsFromConnectedWallets/updateUserWalletsFromConnectedWallets.js';
|
|
21
23
|
|
|
22
|
-
const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId,
|
|
24
|
+
const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, walletConnectorOptions, onDisconnect, onBeforeConnectSuccessConfirmation, setShowAuthFlow, isBridgeFlow, }) => {
|
|
23
25
|
const [connectedWalletsInfo, setConnectedWalletsInfo, removeConnectedWalletsInfo,] = useLocalStorage(CONNECTED_WALLETS_INFO, []);
|
|
24
|
-
const [connectedWallets,
|
|
26
|
+
const [connectedWallets, _setConnectedWallets] = useState([]);
|
|
27
|
+
const { setUserWallets } = useInternalUserWallets();
|
|
28
|
+
/** This wrapper is to ensure userWallets is always properly updated alongside connectedWallets */
|
|
29
|
+
const setConnectedWallets = (newWallets) => {
|
|
30
|
+
_setConnectedWallets(newWallets);
|
|
31
|
+
setUserWallets((userWallets) => updateUserWalletsFromConnectedWallets(userWallets, newWallets));
|
|
32
|
+
};
|
|
25
33
|
const disconnectWallet = useCallback((walletId) => __awaiter(void 0, void 0, void 0, function* () {
|
|
26
34
|
const walletToDisconnect = connectedWallets.find((wallet) => wallet.id === walletId);
|
|
27
35
|
yield (walletToDisconnect === null || walletToDisconnect === void 0 ? void 0 : walletToDisconnect.connector.endSession());
|
|
@@ -54,7 +62,7 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
|
|
|
54
62
|
// The event listeners are updating `connectedWallets` list.
|
|
55
63
|
// It should be called on the first render and when connectedWalletsInfo updates
|
|
56
64
|
const updateConnectedWalletsList = useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
57
|
-
const walletConnectors =
|
|
65
|
+
const walletConnectors = walletConnectorOptions.map((wallet) => wallet.walletConnector);
|
|
58
66
|
if (!walletConnectors.length) {
|
|
59
67
|
return;
|
|
60
68
|
}
|
|
@@ -75,6 +83,7 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
|
|
|
75
83
|
const walletChain = walletConnector.connectedChain;
|
|
76
84
|
const walletObject = {
|
|
77
85
|
address: walletAddress || '',
|
|
86
|
+
authenticated: false,
|
|
78
87
|
chain: walletChain || '',
|
|
79
88
|
connected: true,
|
|
80
89
|
connector: walletConnector,
|
|
@@ -84,12 +93,12 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
|
|
|
84
93
|
return walletObject;
|
|
85
94
|
})))).filter((wallet) => Boolean(wallet));
|
|
86
95
|
setConnectedWallets(updatedConnectedWallets);
|
|
87
|
-
}), [connectedWalletsInfo, disconnectWallet,
|
|
96
|
+
}), [connectedWalletsInfo, disconnectWallet, walletConnectorOptions]);
|
|
88
97
|
// Generate the connectedWallets list when connectedWalletsInfo (localStorage) or memoized wallet connector updates
|
|
89
98
|
useEffect(() => {
|
|
90
99
|
updateConnectedWalletsList();
|
|
91
100
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
92
|
-
}, [connectedWalletsInfo,
|
|
101
|
+
}, [connectedWalletsInfo, walletConnectorOptions]);
|
|
93
102
|
const getNextIdAvailable = useCallback((currentWallets) => {
|
|
94
103
|
const existingIds = currentWallets.map(({ id }) => id);
|
|
95
104
|
const sortedIds = existingIds
|
|
@@ -110,7 +119,6 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
|
|
|
110
119
|
setConnectedWallets(clonedConnectedWalletsList);
|
|
111
120
|
}
|
|
112
121
|
}, [connectedWallets]);
|
|
113
|
-
const connectedWallet = connectedWallets[0] || null;
|
|
114
122
|
// Keeps connected wallet data inside localStorage
|
|
115
123
|
const applyConnectedWalletToStore = ({ walletId, walletConnectorKey, walletChain, provider, }) => {
|
|
116
124
|
const updatedConnectedWalletsInfo = [...connectedWalletsInfo];
|
|
@@ -206,7 +214,6 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
|
|
|
206
214
|
const getConnectedWalletById = useCallback((walletId) => connectedWallets.find((wallet) => wallet.id === walletId), [connectedWallets]);
|
|
207
215
|
return {
|
|
208
216
|
connectWallet,
|
|
209
|
-
connectedWallet,
|
|
210
217
|
connectedWallets,
|
|
211
218
|
connectedWalletsInfo,
|
|
212
219
|
disconnectWallet,
|
|
@@ -28,8 +28,8 @@ var useMutation = require('../useMutation/useMutation.cjs');
|
|
|
28
28
|
|
|
29
29
|
const useCreateDynamicEmbeddedWalletMutation = () => {
|
|
30
30
|
const { setPrimaryWalletId, internalEvents, setCallback, setUser, user, setShowAuthFlow, } = useInternalDynamicContext.useInternalDynamicContext();
|
|
31
|
-
const { mutate: createDynamicEmbeddedWalletMutation, isLoading, error, } = useMutation.useMutation(({ authToken, decodedJwt, environmentId,
|
|
32
|
-
var _a;
|
|
31
|
+
const { mutate: createDynamicEmbeddedWalletMutation, isLoading, error, } = useMutation.useMutation(({ authToken, decodedJwt, environmentId, walletConnectorOptions, withAuthenticator, }) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
32
|
+
var _a, _b;
|
|
33
33
|
const createEmbeddedWalletMethodToUse = withAuthenticator
|
|
34
34
|
? createEmbeddedWalletWithPasskey.createEmbeddedWalletWithPasskey
|
|
35
35
|
: createPregeneratedWallet.createPregeneratedWallet;
|
|
@@ -37,10 +37,14 @@ const useCreateDynamicEmbeddedWalletMutation = () => {
|
|
|
37
37
|
authToken,
|
|
38
38
|
environmentId,
|
|
39
39
|
user: user !== null && user !== void 0 ? user : createUserProfile.createUserProfile(decodedJwt),
|
|
40
|
-
walletConnector: findPasskeyEmailWalletConnector.findPasskeyEmailWalletConnector(
|
|
40
|
+
walletConnector: findPasskeyEmailWalletConnector.findPasskeyEmailWalletConnector(walletConnectorOptions),
|
|
41
41
|
});
|
|
42
|
+
const turnkeyVerifiedCredentials = (_a = updatedDecodedJwt === null || updatedDecodedJwt === void 0 ? void 0 : updatedDecodedJwt.verifiedCredentials) === null || _a === void 0 ? void 0 : _a.find(({ walletName }) => walletName === null || walletName === void 0 ? void 0 : walletName.startsWith('turnkey'));
|
|
43
|
+
/** It's not authenticated if it's a turnkey wallet that still hasn't created a passkey */
|
|
44
|
+
const authenticated = Boolean((_b = turnkeyVerifiedCredentials === null || turnkeyVerifiedCredentials === void 0 ? void 0 : turnkeyVerifiedCredentials.walletProperties) === null || _b === void 0 ? void 0 : _b.isAuthenticatorAttached);
|
|
42
45
|
const passkeyWallet = {
|
|
43
46
|
address: (yield walletConnector.fetchPublicAddress()) || '',
|
|
47
|
+
authenticated,
|
|
44
48
|
chain: walletConnector.connectedChain || '',
|
|
45
49
|
connected: true,
|
|
46
50
|
connector: walletConnector,
|
|
@@ -52,7 +56,7 @@ const useCreateDynamicEmbeddedWalletMutation = () => {
|
|
|
52
56
|
yield smartWallet.initializeSmartWallet({
|
|
53
57
|
account: smartWallet$1,
|
|
54
58
|
verifiedCredentials: updatedDecodedJwt.verifiedCredentials,
|
|
55
|
-
|
|
59
|
+
walletConnectorOptions,
|
|
56
60
|
});
|
|
57
61
|
setPrimaryWalletId(smartWallet$1.id);
|
|
58
62
|
}
|
|
@@ -62,7 +66,6 @@ const useCreateDynamicEmbeddedWalletMutation = () => {
|
|
|
62
66
|
index.storeAuthToken(jwt);
|
|
63
67
|
setUser(createUserProfile.createUserProfile(updatedDecodedJwt));
|
|
64
68
|
setShowAuthFlow(false);
|
|
65
|
-
const turnkeyVerifiedCredentials = (_a = updatedDecodedJwt === null || updatedDecodedJwt === void 0 ? void 0 : updatedDecodedJwt.verifiedCredentials) === null || _a === void 0 ? void 0 : _a.find(({ walletName }) => walletName === null || walletName === void 0 ? void 0 : walletName.startsWith('turnkey'));
|
|
66
69
|
setCallback('embeddedWalletCreated', {
|
|
67
70
|
email: (turnkeyVerifiedCredentials === null || turnkeyVerifiedCredentials === void 0 ? void 0 : turnkeyVerifiedCredentials.email) || '',
|
|
68
71
|
verifiedCredential: turnkeyVerifiedCredentials,
|
|
@@ -24,8 +24,8 @@ import { useMutation } from '../useMutation/useMutation.js';
|
|
|
24
24
|
|
|
25
25
|
const useCreateDynamicEmbeddedWalletMutation = () => {
|
|
26
26
|
const { setPrimaryWalletId, internalEvents, setCallback, setUser, user, setShowAuthFlow, } = useInternalDynamicContext();
|
|
27
|
-
const { mutate: createDynamicEmbeddedWalletMutation, isLoading, error, } = useMutation(({ authToken, decodedJwt, environmentId,
|
|
28
|
-
var _a;
|
|
27
|
+
const { mutate: createDynamicEmbeddedWalletMutation, isLoading, error, } = useMutation(({ authToken, decodedJwt, environmentId, walletConnectorOptions, withAuthenticator, }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
28
|
+
var _a, _b;
|
|
29
29
|
const createEmbeddedWalletMethodToUse = withAuthenticator
|
|
30
30
|
? createEmbeddedWalletWithPasskey
|
|
31
31
|
: createPregeneratedWallet;
|
|
@@ -33,10 +33,14 @@ const useCreateDynamicEmbeddedWalletMutation = () => {
|
|
|
33
33
|
authToken,
|
|
34
34
|
environmentId,
|
|
35
35
|
user: user !== null && user !== void 0 ? user : createUserProfile(decodedJwt),
|
|
36
|
-
walletConnector: findPasskeyEmailWalletConnector(
|
|
36
|
+
walletConnector: findPasskeyEmailWalletConnector(walletConnectorOptions),
|
|
37
37
|
});
|
|
38
|
+
const turnkeyVerifiedCredentials = (_a = updatedDecodedJwt === null || updatedDecodedJwt === void 0 ? void 0 : updatedDecodedJwt.verifiedCredentials) === null || _a === void 0 ? void 0 : _a.find(({ walletName }) => walletName === null || walletName === void 0 ? void 0 : walletName.startsWith('turnkey'));
|
|
39
|
+
/** It's not authenticated if it's a turnkey wallet that still hasn't created a passkey */
|
|
40
|
+
const authenticated = Boolean((_b = turnkeyVerifiedCredentials === null || turnkeyVerifiedCredentials === void 0 ? void 0 : turnkeyVerifiedCredentials.walletProperties) === null || _b === void 0 ? void 0 : _b.isAuthenticatorAttached);
|
|
38
41
|
const passkeyWallet = {
|
|
39
42
|
address: (yield walletConnector.fetchPublicAddress()) || '',
|
|
43
|
+
authenticated,
|
|
40
44
|
chain: walletConnector.connectedChain || '',
|
|
41
45
|
connected: true,
|
|
42
46
|
connector: walletConnector,
|
|
@@ -48,7 +52,7 @@ const useCreateDynamicEmbeddedWalletMutation = () => {
|
|
|
48
52
|
yield initializeSmartWallet({
|
|
49
53
|
account: smartWallet,
|
|
50
54
|
verifiedCredentials: updatedDecodedJwt.verifiedCredentials,
|
|
51
|
-
|
|
55
|
+
walletConnectorOptions,
|
|
52
56
|
});
|
|
53
57
|
setPrimaryWalletId(smartWallet.id);
|
|
54
58
|
}
|
|
@@ -58,7 +62,6 @@ const useCreateDynamicEmbeddedWalletMutation = () => {
|
|
|
58
62
|
storeAuthToken(jwt);
|
|
59
63
|
setUser(createUserProfile(updatedDecodedJwt));
|
|
60
64
|
setShowAuthFlow(false);
|
|
61
|
-
const turnkeyVerifiedCredentials = (_a = updatedDecodedJwt === null || updatedDecodedJwt === void 0 ? void 0 : updatedDecodedJwt.verifiedCredentials) === null || _a === void 0 ? void 0 : _a.find(({ walletName }) => walletName === null || walletName === void 0 ? void 0 : walletName.startsWith('turnkey'));
|
|
62
65
|
setCallback('embeddedWalletCreated', {
|
|
63
66
|
email: (turnkeyVerifiedCredentials === null || turnkeyVerifiedCredentials === void 0 ? void 0 : turnkeyVerifiedCredentials.email) || '',
|
|
64
67
|
verifiedCredential: turnkeyVerifiedCredentials,
|
|
@@ -35,10 +35,13 @@ const useEmailProvider = ({ emailWalletConnector }) => {
|
|
|
35
35
|
});
|
|
36
36
|
const { providers } = projectSettings || {};
|
|
37
37
|
const isInjectedWalletProviderEnabled = emailWalletConnector !== undefined;
|
|
38
|
+
// this is enabled in the sense that we could use the given provider in the email form
|
|
39
|
+
// for magic, as long as there are magic credentials available, then could have an email
|
|
40
|
+
// address that is a magic address, even if magic was previously turned off in dashboard
|
|
38
41
|
const isMagicOrBloctoEnabled = isInjectedWalletProviderEnabled &&
|
|
39
|
-
Boolean(providers === null || providers === void 0 ? void 0 : providers.filter((provider) => provider.
|
|
40
|
-
(provider.
|
|
41
|
-
|
|
42
|
+
Boolean(providers === null || providers === void 0 ? void 0 : providers.filter((provider) => (provider.provider === sdkApi.ProviderEnum.MagicLink &&
|
|
43
|
+
Boolean(provider.providerProjectId)) ||
|
|
44
|
+
(provider.enabledAt && provider.provider === sdkApi.ProviderEnum.Blocto)).length);
|
|
42
45
|
const handleEmailOnlyLoginSubmit = (emailInput, captchaToken) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
43
46
|
const { email, verificationUUID } = yield api.createEmailVerification({
|
|
44
47
|
captchaToken,
|
|
@@ -31,10 +31,13 @@ const useEmailProvider = ({ emailWalletConnector }) => {
|
|
|
31
31
|
});
|
|
32
32
|
const { providers } = projectSettings || {};
|
|
33
33
|
const isInjectedWalletProviderEnabled = emailWalletConnector !== undefined;
|
|
34
|
+
// this is enabled in the sense that we could use the given provider in the email form
|
|
35
|
+
// for magic, as long as there are magic credentials available, then could have an email
|
|
36
|
+
// address that is a magic address, even if magic was previously turned off in dashboard
|
|
34
37
|
const isMagicOrBloctoEnabled = isInjectedWalletProviderEnabled &&
|
|
35
|
-
Boolean(providers === null || providers === void 0 ? void 0 : providers.filter((provider) => provider.
|
|
36
|
-
(provider.
|
|
37
|
-
|
|
38
|
+
Boolean(providers === null || providers === void 0 ? void 0 : providers.filter((provider) => (provider.provider === ProviderEnum.MagicLink &&
|
|
39
|
+
Boolean(provider.providerProjectId)) ||
|
|
40
|
+
(provider.enabledAt && provider.provider === ProviderEnum.Blocto)).length);
|
|
38
41
|
const handleEmailOnlyLoginSubmit = (emailInput, captchaToken) => __awaiter(void 0, void 0, void 0, function* () {
|
|
39
42
|
const { email, verificationUUID } = yield createEmailVerification({
|
|
40
43
|
captchaToken,
|