@dynamic-labs/sdk-react-core 0.19.0-alpha.0 → 0.19.0-alpha.2
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 +78 -0
- package/package.cjs +3 -3
- package/package.js +3 -3
- package/package.json +11 -10
- package/src/index.cjs +40 -12
- package/src/index.d.ts +4 -7
- package/src/index.js +22 -6
- package/src/lib/Main.cjs +14 -3
- package/src/lib/Main.js +14 -3
- package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.cjs +5 -1
- package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.js +5 -1
- package/src/lib/components/AnimatePresence/AnimatePresence.cjs +6 -2
- package/src/lib/components/AnimatePresence/AnimatePresence.js +6 -2
- package/src/lib/components/AuthProviderIcon/AuthProviderIcon.cjs +14 -7
- package/src/lib/components/AuthProviderIcon/AuthProviderIcon.js +14 -7
- package/src/lib/components/Button/Button.cjs +10 -7
- package/src/lib/components/Button/Button.d.ts +3 -3
- package/src/lib/components/Button/Button.js +10 -7
- package/src/lib/components/Divider/Divider.cjs +7 -3
- package/src/lib/components/Divider/Divider.js +7 -3
- package/src/lib/components/DynamicConnectButton/components/ConnectButton.cjs +1 -1
- package/src/lib/components/DynamicConnectButton/components/ConnectButton.js +1 -1
- package/src/lib/components/ErrorContainer/ErrorContainer.d.ts +1 -1
- package/src/lib/components/Icon/Icon.cjs +1 -0
- package/src/lib/components/Icon/Icon.js +1 -0
- package/src/lib/components/Icon/Icon.types.d.ts +1 -1
- package/src/lib/components/IconWithSpinner/IconWithSpinner.d.ts +1 -1
- package/src/lib/components/ListTile/ListTile.cjs +1 -1
- package/src/lib/components/ListTile/ListTile.js +1 -1
- package/src/lib/components/ListTile/ListTile.types.d.ts +1 -0
- package/src/lib/components/MenuList/Dropdown/Dropdown.cjs +5 -1
- package/src/lib/components/MenuList/Dropdown/Dropdown.js +5 -1
- package/src/lib/components/Modal/Modal.cjs +5 -1
- package/src/lib/components/Modal/Modal.js +5 -1
- package/src/lib/components/ModalHeader/ModalHeader.cjs +2 -2
- package/src/lib/components/ModalHeader/ModalHeader.js +2 -2
- package/src/lib/components/ModalHeader/ModalHeader.types.d.ts +2 -1
- package/src/lib/components/ModalHeaderBanner/ModalHeaderBanner.cjs +4 -2
- package/src/lib/components/ModalHeaderBanner/ModalHeaderBanner.d.ts +2 -1
- package/src/lib/components/ModalHeaderBanner/ModalHeaderBanner.js +4 -2
- package/src/lib/components/NetworkPicker/NetworkPicker.cjs +6 -2
- package/src/lib/components/NetworkPicker/NetworkPicker.js +6 -2
- package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.cjs +7 -3
- package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.js +7 -3
- package/src/lib/components/NetworkPicker/components/Network/Network.cjs +7 -3
- package/src/lib/components/NetworkPicker/components/Network/Network.js +7 -3
- package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.cjs +7 -3
- package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.js +7 -3
- package/src/lib/components/OTPVerificationView/OTPVerificationView.cjs +12 -6
- package/src/lib/components/OTPVerificationView/OTPVerificationView.d.ts +2 -0
- package/src/lib/components/OTPVerificationView/OTPVerificationView.js +12 -6
- package/src/lib/components/OverlayCard/OverlayCard.cjs +5 -1
- package/src/lib/components/OverlayCard/OverlayCard.js +5 -1
- package/src/lib/components/Portal/Portal.cjs +5 -1
- package/src/lib/components/Portal/Portal.js +5 -1
- package/src/lib/components/PoweredByDynamic/PoweredByDynamic.cjs +6 -2
- package/src/lib/components/PoweredByDynamic/PoweredByDynamic.d.ts +1 -0
- package/src/lib/components/PoweredByDynamic/PoweredByDynamic.js +6 -2
- package/src/lib/components/Tooltip/Tooltip.cjs +5 -1
- package/src/lib/components/Tooltip/Tooltip.js +5 -1
- package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.cjs +3 -1
- package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.js +3 -1
- package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.cjs +7 -3
- package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.js +7 -3
- package/src/lib/components/Transition/VerticalDrawerTransition/VerticalDrawerTransition.cjs +5 -1
- package/src/lib/components/Transition/VerticalDrawerTransition/VerticalDrawerTransition.js +5 -1
- package/src/lib/components/Typography/Typography.cjs +1 -0
- package/src/lib/components/Typography/Typography.js +1 -0
- package/src/lib/components/Typography/Typography.types.d.ts +1 -1
- package/src/lib/components/UserAddress/UserAddress.cjs +5 -1
- package/src/lib/components/UserAddress/UserAddress.js +5 -1
- package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.cjs +7 -3
- package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.js +7 -3
- package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.cjs +7 -3
- package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.js +7 -3
- package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.cjs +7 -4
- package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.js +7 -4
- package/src/lib/components/UserProfileForm/UserProfileForm.cjs +26 -14
- package/src/lib/components/UserProfileForm/UserProfileForm.d.ts +14 -3
- package/src/lib/components/UserProfileForm/UserProfileForm.js +27 -15
- package/src/lib/components/UserProfileForm/index.d.ts +1 -0
- package/src/lib/context/DynamicContext/DynamicContext.cjs +40 -11
- package/src/lib/context/DynamicContext/DynamicContext.js +42 -13
- package/src/lib/context/DynamicContext/hooks/useVerificationInProgress/useVerificationInProgress.cjs +13 -3
- package/src/lib/context/DynamicContext/hooks/useVerificationInProgress/useVerificationInProgress.js +13 -3
- package/src/lib/context/DynamicContext/internalEvents/index.d.ts +1 -0
- package/src/lib/context/DynamicContext/internalEvents/internalEvents.cjs +14 -0
- package/src/lib/context/DynamicContext/internalEvents/internalEvents.d.ts +8 -0
- package/src/lib/context/DynamicContext/internalEvents/internalEvents.js +6 -0
- package/src/lib/context/DynamicContext/types/index.d.ts +8 -5
- package/src/lib/context/DynamicContext/useCustomerCallbacks/types.d.ts +9 -2
- package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.cjs +5 -1
- package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.js +5 -1
- package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerCallbacks.cjs +64 -33
- package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerCallbacks.d.ts +3 -3
- package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerCallbacks.js +64 -33
- package/src/lib/context/DynamicContext/useDynamicContext.cjs +2 -1
- package/src/lib/context/DynamicContext/useDynamicContext.d.ts +1 -1
- package/src/lib/context/DynamicContext/useDynamicContext.js +2 -1
- package/src/lib/context/MockContext/MockContext.cjs +7 -3
- package/src/lib/context/MockContext/MockContext.js +7 -3
- package/src/lib/context/QrCodeContext/QrCodeContext.cjs +6 -2
- package/src/lib/context/QrCodeContext/QrCodeContext.js +6 -2
- package/src/lib/context/SendBalanceContext/SendBalanceContext.cjs +5 -1
- package/src/lib/context/SendBalanceContext/SendBalanceContext.js +5 -1
- package/src/lib/context/SocialRedirectContext/SocialRedirectContext.cjs +8 -3
- package/src/lib/context/SocialRedirectContext/SocialRedirectContext.js +8 -3
- package/src/lib/context/UserFieldEditorContext/UserFieldEditorContext.cjs +67 -0
- package/src/lib/context/UserFieldEditorContext/UserFieldEditorContext.d.ts +14 -0
- package/src/lib/context/UserFieldEditorContext/UserFieldEditorContext.js +62 -0
- package/src/lib/context/UserFieldEditorContext/index.d.ts +1 -0
- package/src/lib/context/ViewContext/ViewContext.d.ts +1 -1
- package/src/lib/context/WalletContext/WalletContext.cjs +1 -0
- package/src/lib/context/WalletContext/WalletContext.js +1 -0
- package/src/lib/data/api.cjs +33 -1
- package/src/lib/data/api.d.ts +3 -1
- package/src/lib/data/api.js +34 -4
- package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.cjs +7 -3
- package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.js +7 -3
- package/src/lib/layout/DynamicAuthLayout/Header/header.cjs +18 -6
- package/src/lib/layout/DynamicAuthLayout/Header/header.js +18 -6
- package/src/lib/layout/DynamicAuthLayout/HelpContent/HelpHeader/HelpHeader.cjs +7 -3
- package/src/lib/layout/DynamicAuthLayout/HelpContent/HelpHeader/HelpHeader.js +7 -3
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/Item/Item.cjs +7 -3
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/Item/Item.js +7 -3
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.cjs +7 -3
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.js +7 -3
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletListHelpContent.cjs +7 -3
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletListHelpContent.js +7 -3
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletMoreInfoContent/WalletMoreInfoContent.cjs +7 -3
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletMoreInfoContent/WalletMoreInfoContent.js +7 -3
- package/src/lib/layout/DynamicAuthLayout/ToSFooter/ToSFooter.cjs +7 -3
- package/src/lib/layout/DynamicAuthLayout/ToSFooter/ToSFooter.js +7 -3
- package/src/lib/layout/DynamicAuthLayout/WalletProgressStepper/WalletProgressStepper.cjs +7 -3
- package/src/lib/layout/DynamicAuthLayout/WalletProgressStepper/WalletProgressStepper.js +7 -3
- package/src/lib/layouts/BridgeNextWalletToConnectLayout/BridgeNextWalletToConnectLayout.cjs +7 -3
- package/src/lib/layouts/BridgeNextWalletToConnectLayout/BridgeNextWalletToConnectLayout.js +7 -3
- package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.cjs +7 -3
- package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.js +7 -3
- package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.cjs +7 -3
- package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.js +7 -3
- package/src/lib/modals/SendBalanceModal/SendBalanceModal.cjs +7 -3
- package/src/lib/modals/SendBalanceModal/SendBalanceModal.js +7 -3
- package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.cjs +7 -3
- package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.js +7 -3
- package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs +18 -5
- package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.js +18 -5
- package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.types.d.ts +2 -0
- package/src/lib/modals/UserFieldEditorModal/UserFieldEditorModal.cjs +76 -0
- package/src/lib/modals/UserFieldEditorModal/UserFieldEditorModal.d.ts +10 -0
- package/src/lib/modals/UserFieldEditorModal/UserFieldEditorModal.js +72 -0
- package/src/lib/modals/UserFieldEditorModal/index.d.ts +1 -0
- package/src/lib/modals/index.d.ts +1 -0
- package/src/lib/shared/assets/at.cjs +53 -0
- package/src/lib/shared/assets/at.js +29 -0
- package/src/lib/shared/assets/double-arrow-right.cjs +53 -0
- package/src/lib/shared/assets/double-arrow-right.js +29 -0
- package/src/lib/shared/assets/index.d.ts +11 -0
- package/src/lib/shared/assets/justified-text.cjs +53 -0
- package/src/lib/shared/assets/justified-text.js +29 -0
- package/src/lib/shared/assets/location.cjs +53 -0
- package/src/lib/shared/assets/location.js +29 -0
- package/src/lib/shared/assets/mail.cjs +53 -0
- package/src/lib/shared/assets/mail.js +29 -0
- package/src/lib/shared/assets/phone.cjs +53 -0
- package/src/lib/shared/assets/phone.js +29 -0
- package/src/lib/shared/assets/size-labels.cjs +53 -0
- package/src/lib/shared/assets/size-labels.js +29 -0
- package/src/lib/shared/assets/sparkles.cjs +53 -0
- package/src/lib/shared/assets/sparkles.js +29 -0
- package/src/lib/shared/assets/user-card.cjs +53 -0
- package/src/lib/shared/assets/user-card.js +29 -0
- package/src/lib/shared/assets/user.cjs +53 -0
- package/src/lib/shared/assets/user.js +29 -0
- package/src/lib/shared/assets/work-suitcase.cjs +53 -0
- package/src/lib/shared/assets/work-suitcase.js +29 -0
- package/src/lib/shared/types/index.d.ts +4 -0
- package/src/lib/shared/utils/functions/splitCamelCase/index.d.ts +1 -0
- package/src/lib/shared/utils/functions/splitCamelCase/splitCamelCase.cjs +8 -0
- package/src/lib/shared/utils/functions/splitCamelCase/splitCamelCase.d.ts +1 -0
- package/src/lib/shared/utils/functions/splitCamelCase/splitCamelCase.js +4 -0
- package/src/lib/styles/index.shadow.cjs +1 -1
- package/src/lib/styles/index.shadow.js +1 -1
- package/src/lib/utils/constants/errors.cjs +7 -0
- package/src/lib/utils/constants/errors.d.ts +1 -0
- package/src/lib/utils/constants/errors.js +3 -0
- package/src/lib/utils/constants/index.d.ts +1 -1
- package/src/lib/utils/constants/localStorage.cjs +3 -1
- package/src/lib/utils/constants/localStorage.d.ts +1 -0
- package/src/lib/utils/constants/localStorage.js +3 -2
- package/src/lib/utils/functions/digestSHA256/digestSHA256.cjs +11 -0
- package/src/lib/utils/functions/digestSHA256/digestSHA256.d.ts +1 -0
- package/src/lib/utils/functions/digestSHA256/digestSHA256.js +7 -0
- package/src/lib/utils/functions/digestSHA256/index.d.ts +1 -0
- package/src/lib/utils/functions/encodeBase64URL/encodeBase64URL.cjs +14 -0
- package/src/lib/utils/functions/encodeBase64URL/encodeBase64URL.d.ts +1 -0
- package/src/lib/utils/functions/encodeBase64URL/encodeBase64URL.js +10 -0
- package/src/lib/utils/functions/encodeBase64URL/index.d.ts +1 -0
- package/src/lib/utils/functions/getDynamicLayoutData/getDynamicLayoutData.cjs +1 -1
- package/src/lib/utils/functions/getDynamicLayoutData/getDynamicLayoutData.js +1 -1
- package/src/lib/utils/functions/getRedirectURIOrigin/getRedirectURIOrigin.cjs +33 -0
- package/src/lib/utils/functions/getRedirectURIOrigin/getRedirectURIOrigin.d.ts +1 -0
- package/src/lib/utils/functions/getRedirectURIOrigin/getRedirectURIOrigin.js +29 -0
- package/src/lib/utils/functions/getRedirectURIOrigin/index.d.ts +1 -0
- package/src/lib/utils/functions/getUserProfileFields/getUserProfileFields.cjs +14 -2
- package/src/lib/utils/functions/getUserProfileFields/getUserProfileFields.d.ts +3 -2
- package/src/lib/utils/functions/getUserProfileFields/getUserProfileFields.js +14 -2
- package/src/lib/utils/functions/getUserProfileFields/index.d.ts +1 -0
- package/src/lib/utils/functions/index.d.ts +8 -0
- package/src/lib/utils/functions/isMagicConnector/index.d.ts +1 -0
- package/src/lib/utils/functions/isMagicConnector/isMagicConnector.cjs +10 -0
- package/src/lib/utils/functions/isMagicConnector/isMagicConnector.d.ts +2 -0
- package/src/lib/utils/functions/isMagicConnector/isMagicConnector.js +6 -0
- package/src/lib/utils/functions/randomString/index.d.ts +1 -0
- package/src/lib/utils/functions/randomString/randomString.cjs +14 -0
- package/src/lib/utils/functions/randomString/randomString.d.ts +1 -0
- package/src/lib/utils/functions/randomString/randomString.js +10 -0
- package/src/lib/utils/functions/sendTransactionWithAutoNonce/index.d.ts +1 -0
- package/src/lib/utils/functions/sendTransactionWithAutoNonce/sendTransactionWithAutoNonce.cjs +45 -0
- package/src/lib/utils/functions/sendTransactionWithAutoNonce/sendTransactionWithAutoNonce.d.ts +17 -0
- package/src/lib/utils/functions/sendTransactionWithAutoNonce/sendTransactionWithAutoNonce.js +40 -0
- package/src/lib/utils/functions/stringifyURIQuery/index.d.ts +1 -0
- package/src/lib/utils/functions/stringifyURIQuery/stringifyURIQuery.cjs +13 -0
- package/src/lib/utils/functions/stringifyURIQuery/stringifyURIQuery.d.ts +1 -0
- package/src/lib/utils/functions/stringifyURIQuery/stringifyURIQuery.js +9 -0
- package/src/lib/utils/hooks/authenticationHooks/index.d.ts +1 -0
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.cjs +7 -5
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.d.ts +4 -1
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.js +7 -5
- package/src/lib/utils/hooks/index.d.ts +10 -2
- package/src/lib/utils/hooks/multiWallet/useMultiWallet/useMultiWallet.cjs +19 -3
- package/src/lib/utils/hooks/multiWallet/useMultiWallet/useMultiWallet.d.ts +1 -2
- package/src/lib/utils/hooks/multiWallet/useMultiWallet/useMultiWallet.js +20 -4
- package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.cjs +11 -9
- package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.d.ts +1 -1
- package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.js +11 -9
- package/src/lib/utils/hooks/multiWallet/useVerifyOnAwaitingSignature/useVerifyOnAwaitingSignature.cjs +1 -0
- package/src/lib/utils/hooks/multiWallet/useVerifyOnAwaitingSignature/useVerifyOnAwaitingSignature.js +1 -0
- package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.cjs +2 -1
- package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.js +2 -1
- package/src/lib/utils/hooks/useAuthenticateConnectedUser/useAuthenticateConnectedUser.cjs +1 -0
- package/src/lib/utils/hooks/useAuthenticateConnectedUser/useAuthenticateConnectedUser.js +1 -0
- package/src/lib/utils/hooks/useConfirmationModal/useConfirmationModal.cjs +7 -0
- package/src/lib/utils/hooks/useConfirmationModal/useConfirmationModal.d.ts +6 -0
- package/src/lib/utils/hooks/useConfirmationModal/useConfirmationModal.js +7 -0
- package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +2 -2
- package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.d.ts +1 -1
- package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +2 -2
- package/src/lib/utils/hooks/useConnectedWalletsNetworkValidation/useConnectedWalletsNetworkValidation.cjs +7 -6
- package/src/lib/utils/hooks/useConnectedWalletsNetworkValidation/useConnectedWalletsNetworkValidation.js +7 -6
- package/src/lib/utils/hooks/useFetchNetworkConfigurations/useFetchNetworkConfigurations.cjs +2 -7
- package/src/lib/utils/hooks/useFetchNetworkConfigurations/useFetchNetworkConfigurations.js +2 -7
- package/src/lib/utils/hooks/useFetchNetworkConfigurations/utils/index.d.ts +1 -0
- package/src/lib/utils/hooks/useFetchNetworkConfigurations/utils/mergeCustomerEvmNetworksWithServerNetworks/index.d.ts +1 -0
- package/src/lib/utils/hooks/useFetchNetworkConfigurations/utils/mergeCustomerEvmNetworksWithServerNetworks/mergeCustomerEvmNetworksWithServerNetworks.cjs +16 -0
- package/src/lib/utils/hooks/useFetchNetworkConfigurations/utils/mergeCustomerEvmNetworksWithServerNetworks/mergeCustomerEvmNetworksWithServerNetworks.d.ts +2 -0
- package/src/lib/utils/hooks/useFetchNetworkConfigurations/utils/mergeCustomerEvmNetworksWithServerNetworks/mergeCustomerEvmNetworksWithServerNetworks.js +12 -0
- package/src/lib/utils/hooks/useFindSocialIcon/index.d.ts +1 -0
- package/src/lib/utils/hooks/{useGetSocialIcon/useGetSocialIcon.cjs → useFindSocialIcon/useFindSocialIcon.cjs} +3 -3
- package/src/lib/utils/hooks/useFindSocialIcon/useFindSocialIcon.d.ts +3 -0
- package/src/lib/utils/hooks/useFindSocialIcon/useFindSocialIcon.js +10 -0
- package/src/lib/utils/hooks/useOnUnmount/index.d.ts +1 -0
- package/src/lib/utils/hooks/useOnUnmount/useOnUnmount.cjs +21 -0
- package/src/lib/utils/hooks/useOnUnmount/useOnUnmount.d.ts +1 -0
- package/src/lib/utils/hooks/useOnUnmount/useOnUnmount.js +17 -0
- package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.cjs +6 -2
- package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.d.ts +2 -1
- package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.js +6 -2
- package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.cjs +164 -35
- package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.d.ts +7 -3
- package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.js +166 -37
- package/src/lib/utils/hooks/useTransactionEstimatedGas/index.d.ts +1 -0
- package/src/lib/utils/hooks/useTransactionEstimatedGas/useTransactionEstimatedGas.cjs +61 -0
- package/src/lib/utils/hooks/useTransactionEstimatedGas/useTransactionEstimatedGas.d.ts +20 -0
- package/src/lib/utils/hooks/useTransactionEstimatedGas/useTransactionEstimatedGas.js +57 -0
- package/src/lib/utils/hooks/useTransactionWithGasPrice/index.d.ts +1 -0
- package/src/lib/utils/hooks/useTransactionWithGasPrice/useTransactionWithGasPrice.cjs +47 -0
- package/src/lib/utils/hooks/useTransactionWithGasPrice/useTransactionWithGasPrice.d.ts +32 -0
- package/src/lib/utils/hooks/useTransactionWithGasPrice/useTransactionWithGasPrice.js +43 -0
- package/src/lib/utils/hooks/useUserDataForm/index.d.ts +1 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/index.d.ts +3 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUser/index.d.ts +1 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs +107 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.d.ts +9 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js +103 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUserWithModal/index.d.ts +2 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUserWithModal/types.d.ts +7 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUserWithModal/useUpdateUserWithModal.cjs +73 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUserWithModal/useUpdateUserWithModal.d.ts +7 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUserWithModal/useUpdateUserWithModal.js +69 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUserWithModal/validateUpdateRequest/index.d.ts +1 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUserWithModal/validateUpdateRequest/validateUpdateRequest.cjs +31 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUserWithModal/validateUpdateRequest/validateUpdateRequest.d.ts +6 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUserWithModal/validateUpdateRequest/validateUpdateRequest.js +27 -0
- package/src/lib/utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs +7 -94
- package/src/lib/utils/hooks/useUserUpdateRequest/useUserUpdateRequest.d.ts +4 -24
- package/src/lib/utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js +7 -94
- package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +2 -0
- package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +2 -0
- package/src/lib/utils/hooks/useWalletConnectorEvent/index.d.ts +1 -0
- package/src/lib/utils/hooks/useWalletConnectorEvent/useWalletConnectorEvent.cjs +42 -0
- package/src/lib/utils/hooks/useWalletConnectorEvent/useWalletConnectorEvent.d.ts +12 -0
- package/src/lib/utils/hooks/useWalletConnectorEvent/useWalletConnectorEvent.js +38 -0
- package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.cjs +12 -0
- package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.js +12 -0
- package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +91 -136
- package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.d.ts +1 -1
- package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +92 -137
- package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.cjs +1 -0
- package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.js +1 -0
- package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.cjs +8 -4
- package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.d.ts +5 -1
- package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.js +8 -4
- package/src/lib/utils/hooks/useWallets/useWallets.d.ts +2 -2
- package/src/lib/views/AccountExistsView/AccountExistsView.cjs +10 -6
- package/src/lib/views/AccountExistsView/AccountExistsView.js +10 -6
- package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.cjs +17 -7
- package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.js +17 -7
- package/src/lib/views/CollectUserDataView/CollectUserDataView.cjs +7 -3
- package/src/lib/views/CollectUserDataView/CollectUserDataView.js +7 -3
- package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.cjs +6 -2
- package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.js +6 -2
- package/src/lib/views/CollectUserDataView/UserDataFields/index.cjs +11 -4
- package/src/lib/views/CollectUserDataView/UserDataFields/index.js +11 -4
- package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.cjs +7 -3
- package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.js +7 -3
- package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.cjs +7 -3
- package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.js +7 -3
- package/src/lib/views/EmailUpdate/EmailUpdate.cjs +20 -8
- package/src/lib/views/EmailUpdate/EmailUpdate.js +20 -8
- package/src/lib/views/EmailVerification/EmailVerification.cjs +56 -11
- package/src/lib/views/EmailVerification/EmailVerification.js +59 -14
- package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.cjs +8 -3
- package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.js +8 -3
- package/src/lib/views/LoginWithEmailView/components/ListItemButton/ListItemButton.cjs +7 -3
- package/src/lib/views/LoginWithEmailView/components/ListItemButton/ListItemButton.js +7 -3
- package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.cjs +14 -8
- package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.d.ts +5 -1
- package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.js +15 -9
- package/src/lib/views/LoginWithEmailView/components/LoginWithEmailWalletList/LoginWithEmailWalletList.cjs +4 -1
- package/src/lib/views/LoginWithEmailView/components/LoginWithEmailWalletList/LoginWithEmailWalletList.js +4 -1
- package/src/lib/views/LoginWithEmailView/components/SocialSignIn/SocialSignIn.cjs +10 -6
- package/src/lib/views/LoginWithEmailView/components/SocialSignIn/SocialSignIn.js +10 -6
- package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.cjs +114 -0
- package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.d.ts +2 -0
- package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.js +110 -0
- package/src/lib/views/MergeUserAccountsView/index.d.ts +1 -0
- package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +22 -6
- package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +22 -6
- package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.cjs +23 -7
- package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.js +23 -7
- package/src/lib/views/NoAccess/NoAccess.cjs +7 -4
- package/src/lib/views/NoAccess/NoAccess.js +7 -4
- package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.cjs +7 -3
- package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.js +7 -3
- package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.cjs +7 -3
- package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.js +7 -3
- package/src/lib/views/PendingConnectView/PendingConnectView.cjs +7 -3
- package/src/lib/views/PendingConnectView/PendingConnectView.js +7 -3
- package/src/lib/views/PendingSignatureView/PendingSignatureView.cjs +7 -3
- package/src/lib/views/PendingSignatureView/PendingSignatureView.js +7 -3
- package/src/lib/views/QrCodeView/QRCode.cjs +5 -1
- package/src/lib/views/QrCodeView/QRCode.js +5 -1
- package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.cjs +7 -3
- package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.js +7 -3
- package/src/lib/views/QrCodeView/QrCodeView.cjs +7 -3
- package/src/lib/views/QrCodeView/QrCodeView.js +7 -3
- package/src/lib/views/SendBalanceView/SendBalanceView.cjs +18 -17
- package/src/lib/views/SendBalanceView/SendBalanceView.js +18 -17
- package/src/lib/views/SendBalanceView/components/TransactionStage/TransactionStage.cjs +71 -0
- package/src/lib/views/SendBalanceView/components/TransactionStage/TransactionStage.d.ts +8 -0
- package/src/lib/views/SendBalanceView/components/TransactionStage/TransactionStage.js +67 -0
- package/src/lib/views/SendBalanceView/components/TransactionStage/index.d.ts +1 -0
- package/src/lib/views/SendBalanceView/components/index.d.ts +1 -0
- package/src/lib/views/SocialRedirectView/SocialRedirectView.cjs +10 -7
- package/src/lib/views/SocialRedirectView/SocialRedirectView.js +10 -7
- package/src/lib/views/SocialWrongAccountView/SocialWrongAccountView.cjs +10 -6
- package/src/lib/views/SocialWrongAccountView/SocialWrongAccountView.js +10 -6
- package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.cjs +27 -5
- package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.js +27 -5
- package/src/lib/views/TransactionConfirmationView/hooks/index.d.ts +2 -1
- package/src/lib/views/TransactionConfirmationView/hooks/useTransactionGas/index.d.ts +1 -0
- package/src/lib/views/TransactionConfirmationView/hooks/{useTransactionData/useTransactionData.cjs → useTransactionGas/useTransactionGas.cjs} +22 -43
- package/src/lib/views/TransactionConfirmationView/hooks/useTransactionGas/useTransactionGas.d.ts +11 -0
- package/src/lib/views/TransactionConfirmationView/hooks/useTransactionGas/useTransactionGas.js +71 -0
- package/src/lib/views/TransactionConfirmationView/hooks/useTransactionTotal/index.d.ts +1 -0
- package/src/lib/views/TransactionConfirmationView/hooks/useTransactionTotal/useTransactionTotal.cjs +14 -0
- package/src/lib/views/TransactionConfirmationView/hooks/useTransactionTotal/useTransactionTotal.d.ts +7 -0
- package/src/lib/views/TransactionConfirmationView/hooks/useTransactionTotal/useTransactionTotal.js +10 -0
- package/src/lib/views/UserFieldEditorView/UserFieldEditorView.cjs +73 -0
- package/src/lib/views/UserFieldEditorView/UserFieldEditorView.d.ts +9 -0
- package/src/lib/views/UserFieldEditorView/UserFieldEditorView.js +69 -0
- package/src/lib/views/UserFieldEditorView/UserFieldsToIcon/UserFieldsToIcon.cjs +48 -0
- package/src/lib/views/UserFieldEditorView/UserFieldsToIcon/UserFieldsToIcon.d.ts +7 -0
- package/src/lib/views/UserFieldEditorView/UserFieldsToIcon/UserFieldsToIcon.js +44 -0
- package/src/lib/views/UserFieldEditorView/UserFieldsToIcon/index.d.ts +1 -0
- package/src/lib/views/UserFieldEditorView/index.d.ts +1 -0
- package/src/lib/views/UserFieldEditorView/useAssignDefaultValues/index.d.ts +1 -0
- package/src/lib/views/UserFieldEditorView/useAssignDefaultValues/useAssignDefaultValues.cjs +34 -0
- package/src/lib/views/UserFieldEditorView/useAssignDefaultValues/useAssignDefaultValues.d.ts +7 -0
- package/src/lib/views/UserFieldEditorView/useAssignDefaultValues/useAssignDefaultValues.js +30 -0
- package/src/lib/views/WalletCannotBeTransferredView/WalletCannotBeTransferredView.cjs +68 -0
- package/src/lib/views/WalletCannotBeTransferredView/WalletCannotBeTransferredView.d.ts +2 -0
- package/src/lib/views/WalletCannotBeTransferredView/WalletCannotBeTransferredView.js +64 -0
- package/src/lib/views/WalletCannotBeTransferredView/index.d.ts +1 -0
- package/src/lib/views/WalletList/SearchNotFoundMessage/SearchNotFoundMessage.cjs +7 -3
- package/src/lib/views/WalletList/SearchNotFoundMessage/SearchNotFoundMessage.js +7 -3
- package/src/lib/views/WalletList/WalletList.cjs +4 -1
- package/src/lib/views/WalletList/WalletList.js +4 -1
- package/src/lib/views/WalletList/WalletListItem/WalletListItem.cjs +9 -3
- package/src/lib/views/WalletList/WalletListItem/WalletListItem.js +9 -3
- package/src/lib/views/WalletLockedView/WalletLockedView.cjs +27 -7
- package/src/lib/views/WalletLockedView/WalletLockedView.js +27 -7
- package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.cjs +7 -3
- package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.js +7 -3
- package/src/lib/views/WalletUsedView/WalletUsedView.cjs +7 -3
- package/src/lib/views/WalletUsedView/WalletUsedView.js +7 -3
- package/src/lib/views/viewToComponentMap.cjs +4 -0
- package/src/lib/views/viewToComponentMap.js +4 -0
- package/src/lib/widgets/DynamicBridgeWidget/DynamicBridgeWidget.cjs +7 -3
- package/src/lib/widgets/DynamicBridgeWidget/DynamicBridgeWidget.js +7 -3
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeUserProfile/DynamicBridgeUserProfile.cjs +8 -4
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeUserProfile/DynamicBridgeUserProfile.js +8 -4
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCard/DynamicBridgeWalletCard.cjs +7 -3
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCard/DynamicBridgeWalletCard.js +7 -3
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCardBody/DynamicBridgeWalletCardBody.cjs +7 -3
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCardBody/DynamicBridgeWalletCardBody.js +7 -3
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetEmptyCard/DynamicBridgeWidgetEmptyCard.cjs +7 -3
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetEmptyCard/DynamicBridgeWidgetEmptyCard.js +7 -3
- package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/WalletsView.cjs +8 -4
- package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/WalletsView.js +8 -4
- package/src/lib/widgets/DynamicWidget/DynamicWidget.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/DynamicWidget.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/Balance/Balance.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/Balance/Balance.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/DynamicNav/DynamicNav.cjs +2 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicNav/DynamicNav.js +2 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetFooter/DynamicWidgetFooter.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetFooter/DynamicWidgetFooter.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs +6 -2
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js +6 -2
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetDropdown/DynamicWidgetDropdown.cjs +5 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetDropdown/DynamicWidgetDropdown.js +5 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.js +7 -3
- package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.js +7 -3
- package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.cjs +6 -2
- package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.js +6 -2
- package/src/lib/widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.cjs +4 -1
- package/src/lib/widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.js +4 -1
- package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.js +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.js +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/NoQrNotInstalledModalView/NoQrNotInstalledModalView.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/NoQrNotInstalledModalView/NoQrNotInstalledModalView.js +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.js +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.js +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.js +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.js +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.js +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.js +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.js +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.cjs +7 -3
- package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.js +7 -3
- package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.cjs +7 -2
- package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.js +7 -2
- package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.cjs +8 -4
- package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.js +8 -4
- package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.cjs +9 -5
- package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.js +9 -5
- package/src/lib/widgets/FundingWidget/views/FundWalletView/FundWalletView.cjs +7 -3
- package/src/lib/widgets/FundingWidget/views/FundWalletView/FundWalletView.js +7 -3
- package/src/lib/widgets/OAuthIFrameContainer/OAuthIFrameContainer.cjs +13 -0
- package/src/lib/widgets/OAuthIFrameContainer/OAuthIFrameContainer.d.ts +2 -0
- package/src/lib/widgets/OAuthIFrameContainer/OAuthIFrameContainer.js +9 -0
- package/src/lib/widgets/OAuthIFrameContainer/index.d.ts +1 -0
- package/src/lib/widgets/index.d.ts +1 -0
- package/src/lib/utils/hooks/useGetSocialIcon/index.d.ts +0 -1
- package/src/lib/utils/hooks/useGetSocialIcon/useGetSocialIcon.d.ts +0 -2
- package/src/lib/utils/hooks/useGetSocialIcon/useGetSocialIcon.js +0 -10
- package/src/lib/views/TransactionConfirmationView/hooks/useTransactionData/index.d.ts +0 -1
- package/src/lib/views/TransactionConfirmationView/hooks/useTransactionData/useTransactionData.d.ts +0 -18
- package/src/lib/views/TransactionConfirmationView/hooks/useTransactionData/useTransactionData.js +0 -92
|
@@ -2,6 +2,7 @@ import { __awaiter } from '../../../../_virtual/_tslib.js';
|
|
|
2
2
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
3
|
import { useState } from 'react';
|
|
4
4
|
import { SignInWithEmailIcon } from '@dynamic-labs/iconic';
|
|
5
|
+
import { EmailAlreadyExistsError } from '@dynamic-labs/utils';
|
|
5
6
|
import { Typography } from '../../components/Typography/Typography.js';
|
|
6
7
|
import '@dynamic-labs/sdk-api';
|
|
7
8
|
import { logger } from '../../shared/logger.js';
|
|
@@ -9,7 +10,6 @@ import '@dynamic-labs/wallet-connector-core';
|
|
|
9
10
|
import { useViewContext } from '../../context/ViewContext/ViewContext.js';
|
|
10
11
|
import { ReactComponent as SvgChevronLeft } from '../../shared/assets/chevron-left.js';
|
|
11
12
|
import '@dynamic-labs/wallet-book';
|
|
12
|
-
import '@dynamic-labs/utils';
|
|
13
13
|
import '../../utils/constants/colors.js';
|
|
14
14
|
import '../../shared/utils/classes/storage/localStorage.js';
|
|
15
15
|
import 'ethers';
|
|
@@ -33,16 +33,19 @@ import '../../context/AccountExistsContext/AccountExistsContext.js';
|
|
|
33
33
|
import { IconButton } from '../../components/IconButton/IconButton.js';
|
|
34
34
|
import { Button } from '../../components/Button/Button.js';
|
|
35
35
|
import '../../components/Alert/Alert.js';
|
|
36
|
+
import 'formik';
|
|
37
|
+
import 'yup';
|
|
38
|
+
import '../CollectUserDataView/fieldsConfig.js';
|
|
36
39
|
import '../../context/MockContext/MockContext.js';
|
|
37
40
|
import '../../context/CaptchaContext/CaptchaContext.js';
|
|
38
|
-
import '../../
|
|
41
|
+
import { useEmailVerificationContext } from '../../context/EmailVerificationContext/EmailVerificationContext.js';
|
|
42
|
+
import '@dynamic-labs/types';
|
|
43
|
+
import '../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js';
|
|
44
|
+
import '../../context/UserFieldEditorContext/UserFieldEditorContext.js';
|
|
39
45
|
import '../../components/Popper/Popper/Popper.js';
|
|
40
46
|
import '../../components/Popper/PopperContext/PopperContext.js';
|
|
41
|
-
import 'formik';
|
|
42
|
-
import 'yup';
|
|
43
47
|
import '../../components/InlineWidget/InlineWidget.js';
|
|
44
48
|
import '../../components/MenuList/Dropdown/Dropdown.js';
|
|
45
|
-
import { useEmailVerificationContext } from '../../context/EmailVerificationContext/EmailVerificationContext.js';
|
|
46
49
|
import { useLoadingContext } from '../../context/LoadingContext/LoadingContext.js';
|
|
47
50
|
|
|
48
51
|
const EmailUpdate = () => {
|
|
@@ -51,18 +54,23 @@ const EmailUpdate = () => {
|
|
|
51
54
|
const { loading, setLoading } = useLoadingContext();
|
|
52
55
|
const { setView, goToInitialView } = useViewContext();
|
|
53
56
|
const { email, setEmail, setVerificationUUID } = useEmailVerificationContext();
|
|
54
|
-
const { environmentId, handleLogOut, onboardingOnlyJwt } = useInternalDynamicContext();
|
|
57
|
+
const { environmentId, handleLogOut, onboardingOnlyJwt, authToken } = useInternalDynamicContext();
|
|
58
|
+
const [emailError, setEmailError] = useState(undefined);
|
|
55
59
|
const handleBackClick = () => {
|
|
56
60
|
setView('verify-email');
|
|
57
61
|
setError(undefined);
|
|
58
62
|
};
|
|
63
|
+
// If user tries to update an email for logged user there is already an authToken and onboardingOnlyJwt is undefined
|
|
64
|
+
// If user tries to update the email in the authFlow, authToken is undefined and onboardingOnlyJwt is defined
|
|
65
|
+
const jwtToken = authToken || onboardingOnlyJwt;
|
|
59
66
|
const handleEmailUpdate = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
60
67
|
try {
|
|
61
68
|
if (!updatedEmail) {
|
|
62
69
|
return;
|
|
63
70
|
}
|
|
71
|
+
setEmailError(undefined);
|
|
64
72
|
setLoading(true);
|
|
65
|
-
const { emailVerification } = yield updateUserProfileFields(
|
|
73
|
+
const { emailVerification } = yield updateUserProfileFields(jwtToken, environmentId, { email: updatedEmail });
|
|
66
74
|
if (!emailVerification) {
|
|
67
75
|
yield handleLogOut();
|
|
68
76
|
goToInitialView();
|
|
@@ -75,6 +83,10 @@ const EmailUpdate = () => {
|
|
|
75
83
|
}
|
|
76
84
|
catch (error) {
|
|
77
85
|
logger.debug(error);
|
|
86
|
+
if (error instanceof EmailAlreadyExistsError) {
|
|
87
|
+
setEmailError('Email already exists');
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
78
90
|
setErrorMessage(error.code);
|
|
79
91
|
}
|
|
80
92
|
finally {
|
|
@@ -86,7 +98,7 @@ const EmailUpdate = () => {
|
|
|
86
98
|
width: '3.125rem',
|
|
87
99
|
}, className: 'email-update__icon' }), jsx(Typography, Object.assign({ weight: 'medium', variant: 'title', className: 'email-update__title' }, { children: "Update Email" })), jsxs("div", Object.assign({ className: 'email-update__copy-text-container' }, { children: [jsx(Typography, Object.assign({ variant: 'body_normal', weight: 'regular', color: 'secondary' }, { children: "Your current email address is" })), jsx(Typography, Object.assign({ variant: 'body_normal', weight: 'bold', color: 'secondary' }, { children: email }))] })), jsx(Input, { id: 'email_field', onChange: (e) => {
|
|
88
100
|
setUpdatedEmail(e.target.value);
|
|
89
|
-
}, type: 'email', label: 'Email address', className: 'email-update__input' }), jsx(Button, Object.assign({ buttonVariant: 'primary', buttonPadding: 'medium', buttonClassName: 'email-update__button', onClick: () => handleEmailUpdate(), loading: loading }, { children: "Send Verification Code" }))] })));
|
|
101
|
+
}, type: 'email', label: 'Email address', className: 'email-update__input', error: Boolean(emailError), message: emailError }), jsx(Button, Object.assign({ buttonVariant: 'primary', buttonPadding: 'medium', buttonClassName: 'email-update__button', onClick: () => handleEmailUpdate(), loading: loading }, { children: "Send Verification Code" }))] })));
|
|
90
102
|
};
|
|
91
103
|
|
|
92
104
|
export { EmailUpdate };
|
|
@@ -11,6 +11,7 @@ var Typography = require('../../components/Typography/Typography.cjs');
|
|
|
11
11
|
var decodeJwt = require('../../shared/utils/functions/decodeJwt/decodeJwt.cjs');
|
|
12
12
|
require('@dynamic-labs/wallet-connector-core');
|
|
13
13
|
var ViewContext = require('../../context/ViewContext/ViewContext.cjs');
|
|
14
|
+
var close = require('../../shared/assets/close.cjs');
|
|
14
15
|
var check = require('../../shared/assets/check.cjs');
|
|
15
16
|
var checkCircle = require('../../shared/assets/check-circle.cjs');
|
|
16
17
|
var logger = require('../../shared/logger.cjs');
|
|
@@ -18,6 +19,7 @@ require('@dynamic-labs/wallet-book');
|
|
|
18
19
|
require('../../utils/constants/colors.cjs');
|
|
19
20
|
require('../../shared/utils/classes/storage/localStorage.cjs');
|
|
20
21
|
require('ethers');
|
|
22
|
+
var useEffectOnce = require('../../shared/utils/hooks/useEffectOnce/useEffectOnce.cjs');
|
|
21
23
|
require('../../shared/consts/index.cjs');
|
|
22
24
|
var useInternalDynamicContext = require('../../context/DynamicContext/useInternalDynamicContext.cjs');
|
|
23
25
|
require('@dynamic-labs/multi-wallet');
|
|
@@ -36,49 +38,80 @@ require('../../utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetu
|
|
|
36
38
|
var ErrorContext = require('../../context/ErrorContext/ErrorContext.cjs');
|
|
37
39
|
require('../../context/AccessDeniedContext/AccessDeniedContext.cjs');
|
|
38
40
|
var AccountExistsContext = require('../../context/AccountExistsContext/AccountExistsContext.cjs');
|
|
39
|
-
require('../../components/
|
|
41
|
+
var ModalHeader = require('../../components/ModalHeader/ModalHeader.cjs');
|
|
42
|
+
var IconButton = require('../../components/IconButton/IconButton.cjs');
|
|
40
43
|
var IconWithStatus = require('../../components/IconWithStatus/IconWithStatus.cjs');
|
|
41
44
|
var PoweredByDynamic = require('../../components/PoweredByDynamic/PoweredByDynamic.cjs');
|
|
42
45
|
var IconWithSpinner = require('../../components/IconWithSpinner/IconWithSpinner.cjs');
|
|
43
46
|
require('../../components/Alert/Alert.cjs');
|
|
47
|
+
require('formik');
|
|
48
|
+
require('yup');
|
|
49
|
+
require('../CollectUserDataView/fieldsConfig.cjs');
|
|
44
50
|
require('../../context/MockContext/MockContext.cjs');
|
|
45
51
|
require('../../context/CaptchaContext/CaptchaContext.cjs');
|
|
46
|
-
require('../../utils/hooks/
|
|
52
|
+
var useEmailVerificationRequest = require('../../utils/hooks/authenticationHooks/useEmailVerificationRequest/useEmailVerificationRequest.cjs');
|
|
47
53
|
var useCountdown = require('../../utils/hooks/useCountdown/useCountdown.cjs');
|
|
54
|
+
require('@dynamic-labs/types');
|
|
55
|
+
var useCreateUserProfileByJWTCallback = require('../../utils/hooks/useCreateUserProfileByJWTCallback/useCreateUserProfileByJWTCallback.cjs');
|
|
56
|
+
require('../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs');
|
|
57
|
+
require('../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
58
|
+
var useOnUnmount = require('../../utils/hooks/useOnUnmount/useOnUnmount.cjs');
|
|
48
59
|
var TextButton = require('../../components/TextButton/TextButton.cjs');
|
|
49
60
|
var ErrorContainer = require('../../components/ErrorContainer/ErrorContainer.cjs');
|
|
50
61
|
var PinField = require('../../components/PinField/PinField.cjs');
|
|
51
62
|
var shortenEmail = require('../../shared/utils/functions/shortenEmail/shortenEmail.cjs');
|
|
52
63
|
require('../../components/Popper/Popper/Popper.cjs');
|
|
53
64
|
require('../../components/Popper/PopperContext/PopperContext.cjs');
|
|
54
|
-
require('formik');
|
|
55
|
-
require('yup');
|
|
56
65
|
require('../../components/InlineWidget/InlineWidget.cjs');
|
|
57
66
|
require('../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
58
67
|
var EmailVerificationContext = require('../../context/EmailVerificationContext/EmailVerificationContext.cjs');
|
|
59
68
|
var LoadingContext = require('../../context/LoadingContext/LoadingContext.cjs');
|
|
60
|
-
var useEmailVerificationRequest = require('../../utils/hooks/authenticationHooks/useEmailVerificationRequest/useEmailVerificationRequest.cjs');
|
|
61
|
-
var useCreateUserProfileByJWTCallback = require('../../utils/hooks/useCreateUserProfileByJWTCallback/useCreateUserProfileByJWTCallback.cjs');
|
|
62
69
|
|
|
63
70
|
const SECONDS_TO_RETRY = 15;
|
|
64
71
|
const EmailVerification = () => {
|
|
65
72
|
const [hideRetryButton, setHideRetryButton] = React.useState(false);
|
|
66
73
|
const [retried, setRetried] = React.useState(false);
|
|
67
|
-
const [isValidated, setIsValidated] = React.useState(false);
|
|
68
74
|
const [showTransferMessage, setShowTransferMessage] = React.useState(false);
|
|
75
|
+
// Use a state to ensure UI is updated, but also a ref to access in effect cleanup
|
|
76
|
+
const [isValidated, _setIsValidated] = React.useState(false);
|
|
77
|
+
const isValidatedRef = React.useRef(isValidated);
|
|
78
|
+
const setIsValidated = (value) => {
|
|
79
|
+
_setIsValidated(value);
|
|
80
|
+
isValidatedRef.current = value;
|
|
81
|
+
};
|
|
69
82
|
const { view, setView, goToInitialView } = ViewContext.useViewContext();
|
|
70
83
|
const { error, setError, setErrorMessage } = ErrorContext.useErrorContext();
|
|
71
84
|
const { setExistentAccountData } = AccountExistsContext.useAccountExistsContext();
|
|
72
|
-
const { environmentId, onboardingOnlyJwt, handleLogOut, authToken, setOnboardingOnlyJwt, setShowAuthFlow, setCallback, } = useInternalDynamicContext.useInternalDynamicContext();
|
|
85
|
+
const { environmentId, onboardingOnlyJwt, handleLogOut, authToken, setOnboardingOnlyJwt, setShowAuthFlow, setCallback, setIsVerificationInProgress, isVerificationInProgress, } = useInternalDynamicContext.useInternalDynamicContext();
|
|
73
86
|
const { email, verificationUUID, setVerificationUUID } = EmailVerificationContext.useEmailVerificationContext();
|
|
74
87
|
const { loading, setLoading } = LoadingContext.useLoadingContext();
|
|
75
88
|
const { remainingSeconds, startCountdown } = useCountdown.useCountdown({
|
|
76
89
|
callback: () => setRetried(false),
|
|
77
90
|
seconds: SECONDS_TO_RETRY,
|
|
78
91
|
});
|
|
92
|
+
// When true, causes the component to call emailVerificationX callback on unmount
|
|
93
|
+
const callCallbackOnUnmount = React.useRef(true);
|
|
94
|
+
useOnUnmount.useOnUnmount(() => {
|
|
95
|
+
if (!callCallbackOnUnmount.current)
|
|
96
|
+
return;
|
|
97
|
+
const callback = isValidatedRef.current
|
|
98
|
+
? 'emailVerificationSuccess'
|
|
99
|
+
: 'emailVerificationFailure';
|
|
100
|
+
setCallback(callback, { email: email !== null && email !== void 0 ? email : '' });
|
|
101
|
+
});
|
|
102
|
+
useEffectOnce.useEffectOnce(() => {
|
|
103
|
+
// Set verification in progress
|
|
104
|
+
// It should be disabled by either clearStatesOnBackClick, the close button, or onAuthSuccess
|
|
105
|
+
setIsVerificationInProgress(true);
|
|
106
|
+
});
|
|
79
107
|
const isLoginView = view === 'login-with-email-verification';
|
|
80
108
|
const { verifyEmail } = useEmailVerificationRequest.useEmailVerificationRequest();
|
|
81
109
|
const { createUserProfileByJWT } = useCreateUserProfileByJWTCallback.useCreateUserProfileByJWTCallback();
|
|
110
|
+
const close$1 = () => {
|
|
111
|
+
setShowAuthFlow(false);
|
|
112
|
+
if (isVerificationInProgress)
|
|
113
|
+
setIsVerificationInProgress(false);
|
|
114
|
+
};
|
|
82
115
|
const handleComplete = React.useCallback((verificationToken) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
83
116
|
setError(undefined);
|
|
84
117
|
setLoading(true);
|
|
@@ -101,6 +134,11 @@ const EmailVerification = () => {
|
|
|
101
134
|
}
|
|
102
135
|
catch (error) {
|
|
103
136
|
logger.logger.debug(error);
|
|
137
|
+
// Handle the case where the user has already an account with the email
|
|
138
|
+
if (error instanceof utils.UserHasAccountWithEmailError) {
|
|
139
|
+
setView('merge-user-accounts');
|
|
140
|
+
return; // Early return to not show the error message
|
|
141
|
+
}
|
|
104
142
|
setErrorMessage(error.code);
|
|
105
143
|
}
|
|
106
144
|
finally {
|
|
@@ -119,6 +157,7 @@ const EmailVerification = () => {
|
|
|
119
157
|
setOnboardingOnlyJwt,
|
|
120
158
|
setCallback,
|
|
121
159
|
setErrorMessage,
|
|
160
|
+
setView,
|
|
122
161
|
]);
|
|
123
162
|
const handleEmailLogin = React.useCallback((verificationToken) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
124
163
|
setError(undefined);
|
|
@@ -214,9 +253,15 @@ const EmailVerification = () => {
|
|
|
214
253
|
setLoading(false);
|
|
215
254
|
}
|
|
216
255
|
});
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
256
|
+
// Go to update email screen, but prevent onEmailVerificationX callback from being called
|
|
257
|
+
const updateEmail = () => {
|
|
258
|
+
callCallbackOnUnmount.current = false;
|
|
259
|
+
setView('update-email');
|
|
260
|
+
};
|
|
261
|
+
const closeButton = (jsxRuntime.jsx(IconButton.IconButton, Object.assign({ onClick: close$1, type: 'button', "data-testid": 'close-button' }, { children: jsxRuntime.jsx(close.ReactComponent, {}) })));
|
|
262
|
+
return (jsxRuntime.jsxs("div", Object.assign({ className: 'email-verification__container' }, { children: [error && (jsxRuntime.jsx(ErrorContainer.ErrorContainer, Object.assign({ withIcon: false, className: 'email-verification__error-message' }, { children: error }))), showTransferMessage && (jsxRuntime.jsx("div", Object.assign({ className: 'email-verification__transfer-message' }, { children: "Verification complete, the email is now verified to this account." }))), jsxRuntime.jsx(ModalHeader.ModalHeader, Object.assign({ style: { paddingBlock: 0 }, trailing: !isLoginView && closeButton }, { children: isValidated ? (jsxRuntime.jsx("div", Object.assign({ className: 'email-verification__icon-container' }, { children: jsxRuntime.jsx(IconWithStatus.IconWithStatus, { containerClassName: 'email-verification__icon--verified', Icon: iconic.SignInWithEmailIcon, iconSize: 50, InnerIcon: check.ReactComponent }) }))) : (jsxRuntime.jsx(IconWithSpinner.IconWithSpinner, { className: classNames.classNames({
|
|
263
|
+
'email-verification__icon-with-spinner': Boolean(!error),
|
|
264
|
+
}), Icon: iconic.SignInWithEmailIcon, iconSize: 80, isSpinning: true })) })), jsxRuntime.jsx(Typography.Typography, Object.assign({ weight: 'medium', variant: 'title', className: 'email-verification__title', color: 'primary' }, { children: "Confirm verification code" })), jsxRuntime.jsxs("div", Object.assign({ className: 'email-verification__copy-text-container' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ variant: 'body_normal', weight: 'regular', color: 'secondary' }, { children: "We\u2019ve sent a verification code to" })), jsxRuntime.jsx(Typography.Typography, Object.assign({ variant: 'body_normal', weight: 'bold', color: 'secondary' }, { children: shortenEmail.shortenEmail(email) }))] })), !isLoginView && (jsxRuntime.jsx(TextButton.TextButton, Object.assign({ onClick: updateEmail, className: 'email-verification__text-button', disabled: loading }, { children: "Edit email" }))), jsxRuntime.jsx(PinField.PinField, { initialValue: Array(6).join('.').split('.'), isLoading: loading, handleComplete: isLoginView ? handleEmailLogin : handleComplete, isValidated: isValidated, inputMode: 'numeric', pattern: '[0-9]*', hasError: Boolean(error), onChange: () => setError(undefined) }), retried ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs(Typography.Typography, Object.assign({ variant: 'body_small', color: 'secondary' }, { children: ["Re-send code in ", remainingSeconds] })), jsxRuntime.jsxs("span", Object.assign({ className: 'email-verification__retry-container' }, { children: [jsxRuntime.jsx(checkCircle.ReactComponent, {}), jsxRuntime.jsx(Typography.Typography, Object.assign({ variant: 'body_small', weight: 'medium', color: 'primary', className: 'email-verification__retry-container-text' }, { children: "Code sent" }))] }))] })) : (!hideRetryButton && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ variant: 'body_small', weight: 'medium', color: 'secondary' }, { children: "Did not receive your code yet?" })), jsxRuntime.jsx(TextButton.TextButton, Object.assign({ className: 'email-verification__text-button', disabled: loading || isValidated, onClick: () => handleRetry() }, { children: "Re-send code" }))] }))), !isLoginView && (jsxRuntime.jsx(TextButton.TextButton, Object.assign({ className: 'email-verification__log-out', onClick: handleLogOut }, { children: "Log out" }))), jsxRuntime.jsx(PoweredByDynamic.PoweredByDynamic, {})] })));
|
|
220
265
|
};
|
|
221
266
|
|
|
222
267
|
exports.EmailVerification = EmailVerification;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { __awaiter } from '../../../../_virtual/_tslib.js';
|
|
2
|
-
import {
|
|
3
|
-
import { useState, useCallback } from 'react';
|
|
2
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
3
|
+
import { useState, useRef, useCallback } from 'react';
|
|
4
4
|
import { SignInWithEmailIcon } from '@dynamic-labs/iconic';
|
|
5
|
-
import { NoAccessError, AccountExistsError } from '@dynamic-labs/utils';
|
|
5
|
+
import { UserHasAccountWithEmailError, NoAccessError, AccountExistsError } from '@dynamic-labs/utils';
|
|
6
6
|
import { Typography } from '../../components/Typography/Typography.js';
|
|
7
7
|
import { decodeJwt } from '../../shared/utils/functions/decodeJwt/decodeJwt.js';
|
|
8
8
|
import '@dynamic-labs/wallet-connector-core';
|
|
9
9
|
import { useViewContext } from '../../context/ViewContext/ViewContext.js';
|
|
10
|
+
import { ReactComponent as SvgClose } from '../../shared/assets/close.js';
|
|
10
11
|
import { ReactComponent as SvgCheck } from '../../shared/assets/check.js';
|
|
11
12
|
import { ReactComponent as SvgCheckCircle } from '../../shared/assets/check-circle.js';
|
|
12
13
|
import { logger } from '../../shared/logger.js';
|
|
@@ -14,6 +15,7 @@ import '@dynamic-labs/wallet-book';
|
|
|
14
15
|
import '../../utils/constants/colors.js';
|
|
15
16
|
import '../../shared/utils/classes/storage/localStorage.js';
|
|
16
17
|
import 'ethers';
|
|
18
|
+
import { useEffectOnce } from '../../shared/utils/hooks/useEffectOnce/useEffectOnce.js';
|
|
17
19
|
import '../../shared/consts/index.js';
|
|
18
20
|
import { useInternalDynamicContext } from '../../context/DynamicContext/useInternalDynamicContext.js';
|
|
19
21
|
import '@dynamic-labs/multi-wallet';
|
|
@@ -32,49 +34,80 @@ import '../../utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetup
|
|
|
32
34
|
import { useErrorContext } from '../../context/ErrorContext/ErrorContext.js';
|
|
33
35
|
import '../../context/AccessDeniedContext/AccessDeniedContext.js';
|
|
34
36
|
import { useAccountExistsContext } from '../../context/AccountExistsContext/AccountExistsContext.js';
|
|
35
|
-
import '../../components/
|
|
37
|
+
import { ModalHeader } from '../../components/ModalHeader/ModalHeader.js';
|
|
38
|
+
import { IconButton } from '../../components/IconButton/IconButton.js';
|
|
36
39
|
import { IconWithStatus } from '../../components/IconWithStatus/IconWithStatus.js';
|
|
37
40
|
import { PoweredByDynamic } from '../../components/PoweredByDynamic/PoweredByDynamic.js';
|
|
38
41
|
import { IconWithSpinner } from '../../components/IconWithSpinner/IconWithSpinner.js';
|
|
39
42
|
import '../../components/Alert/Alert.js';
|
|
43
|
+
import 'formik';
|
|
44
|
+
import 'yup';
|
|
45
|
+
import '../CollectUserDataView/fieldsConfig.js';
|
|
40
46
|
import '../../context/MockContext/MockContext.js';
|
|
41
47
|
import '../../context/CaptchaContext/CaptchaContext.js';
|
|
42
|
-
import '../../utils/hooks/
|
|
48
|
+
import { useEmailVerificationRequest } from '../../utils/hooks/authenticationHooks/useEmailVerificationRequest/useEmailVerificationRequest.js';
|
|
43
49
|
import { useCountdown } from '../../utils/hooks/useCountdown/useCountdown.js';
|
|
50
|
+
import '@dynamic-labs/types';
|
|
51
|
+
import { useCreateUserProfileByJWTCallback } from '../../utils/hooks/useCreateUserProfileByJWTCallback/useCreateUserProfileByJWTCallback.js';
|
|
52
|
+
import '../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js';
|
|
53
|
+
import '../../context/UserFieldEditorContext/UserFieldEditorContext.js';
|
|
54
|
+
import { useOnUnmount } from '../../utils/hooks/useOnUnmount/useOnUnmount.js';
|
|
44
55
|
import { TextButton } from '../../components/TextButton/TextButton.js';
|
|
45
56
|
import { ErrorContainer } from '../../components/ErrorContainer/ErrorContainer.js';
|
|
46
57
|
import { PinField } from '../../components/PinField/PinField.js';
|
|
47
58
|
import { shortenEmail } from '../../shared/utils/functions/shortenEmail/shortenEmail.js';
|
|
48
59
|
import '../../components/Popper/Popper/Popper.js';
|
|
49
60
|
import '../../components/Popper/PopperContext/PopperContext.js';
|
|
50
|
-
import 'formik';
|
|
51
|
-
import 'yup';
|
|
52
61
|
import '../../components/InlineWidget/InlineWidget.js';
|
|
53
62
|
import '../../components/MenuList/Dropdown/Dropdown.js';
|
|
54
63
|
import { useEmailVerificationContext } from '../../context/EmailVerificationContext/EmailVerificationContext.js';
|
|
55
64
|
import { useLoadingContext } from '../../context/LoadingContext/LoadingContext.js';
|
|
56
|
-
import { useEmailVerificationRequest } from '../../utils/hooks/authenticationHooks/useEmailVerificationRequest/useEmailVerificationRequest.js';
|
|
57
|
-
import { useCreateUserProfileByJWTCallback } from '../../utils/hooks/useCreateUserProfileByJWTCallback/useCreateUserProfileByJWTCallback.js';
|
|
58
65
|
|
|
59
66
|
const SECONDS_TO_RETRY = 15;
|
|
60
67
|
const EmailVerification = () => {
|
|
61
68
|
const [hideRetryButton, setHideRetryButton] = useState(false);
|
|
62
69
|
const [retried, setRetried] = useState(false);
|
|
63
|
-
const [isValidated, setIsValidated] = useState(false);
|
|
64
70
|
const [showTransferMessage, setShowTransferMessage] = useState(false);
|
|
71
|
+
// Use a state to ensure UI is updated, but also a ref to access in effect cleanup
|
|
72
|
+
const [isValidated, _setIsValidated] = useState(false);
|
|
73
|
+
const isValidatedRef = useRef(isValidated);
|
|
74
|
+
const setIsValidated = (value) => {
|
|
75
|
+
_setIsValidated(value);
|
|
76
|
+
isValidatedRef.current = value;
|
|
77
|
+
};
|
|
65
78
|
const { view, setView, goToInitialView } = useViewContext();
|
|
66
79
|
const { error, setError, setErrorMessage } = useErrorContext();
|
|
67
80
|
const { setExistentAccountData } = useAccountExistsContext();
|
|
68
|
-
const { environmentId, onboardingOnlyJwt, handleLogOut, authToken, setOnboardingOnlyJwt, setShowAuthFlow, setCallback, } = useInternalDynamicContext();
|
|
81
|
+
const { environmentId, onboardingOnlyJwt, handleLogOut, authToken, setOnboardingOnlyJwt, setShowAuthFlow, setCallback, setIsVerificationInProgress, isVerificationInProgress, } = useInternalDynamicContext();
|
|
69
82
|
const { email, verificationUUID, setVerificationUUID } = useEmailVerificationContext();
|
|
70
83
|
const { loading, setLoading } = useLoadingContext();
|
|
71
84
|
const { remainingSeconds, startCountdown } = useCountdown({
|
|
72
85
|
callback: () => setRetried(false),
|
|
73
86
|
seconds: SECONDS_TO_RETRY,
|
|
74
87
|
});
|
|
88
|
+
// When true, causes the component to call emailVerificationX callback on unmount
|
|
89
|
+
const callCallbackOnUnmount = useRef(true);
|
|
90
|
+
useOnUnmount(() => {
|
|
91
|
+
if (!callCallbackOnUnmount.current)
|
|
92
|
+
return;
|
|
93
|
+
const callback = isValidatedRef.current
|
|
94
|
+
? 'emailVerificationSuccess'
|
|
95
|
+
: 'emailVerificationFailure';
|
|
96
|
+
setCallback(callback, { email: email !== null && email !== void 0 ? email : '' });
|
|
97
|
+
});
|
|
98
|
+
useEffectOnce(() => {
|
|
99
|
+
// Set verification in progress
|
|
100
|
+
// It should be disabled by either clearStatesOnBackClick, the close button, or onAuthSuccess
|
|
101
|
+
setIsVerificationInProgress(true);
|
|
102
|
+
});
|
|
75
103
|
const isLoginView = view === 'login-with-email-verification';
|
|
76
104
|
const { verifyEmail } = useEmailVerificationRequest();
|
|
77
105
|
const { createUserProfileByJWT } = useCreateUserProfileByJWTCallback();
|
|
106
|
+
const close = () => {
|
|
107
|
+
setShowAuthFlow(false);
|
|
108
|
+
if (isVerificationInProgress)
|
|
109
|
+
setIsVerificationInProgress(false);
|
|
110
|
+
};
|
|
78
111
|
const handleComplete = useCallback((verificationToken) => __awaiter(void 0, void 0, void 0, function* () {
|
|
79
112
|
setError(undefined);
|
|
80
113
|
setLoading(true);
|
|
@@ -97,6 +130,11 @@ const EmailVerification = () => {
|
|
|
97
130
|
}
|
|
98
131
|
catch (error) {
|
|
99
132
|
logger.debug(error);
|
|
133
|
+
// Handle the case where the user has already an account with the email
|
|
134
|
+
if (error instanceof UserHasAccountWithEmailError) {
|
|
135
|
+
setView('merge-user-accounts');
|
|
136
|
+
return; // Early return to not show the error message
|
|
137
|
+
}
|
|
100
138
|
setErrorMessage(error.code);
|
|
101
139
|
}
|
|
102
140
|
finally {
|
|
@@ -115,6 +153,7 @@ const EmailVerification = () => {
|
|
|
115
153
|
setOnboardingOnlyJwt,
|
|
116
154
|
setCallback,
|
|
117
155
|
setErrorMessage,
|
|
156
|
+
setView,
|
|
118
157
|
]);
|
|
119
158
|
const handleEmailLogin = useCallback((verificationToken) => __awaiter(void 0, void 0, void 0, function* () {
|
|
120
159
|
setError(undefined);
|
|
@@ -210,9 +249,15 @@ const EmailVerification = () => {
|
|
|
210
249
|
setLoading(false);
|
|
211
250
|
}
|
|
212
251
|
});
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
252
|
+
// Go to update email screen, but prevent onEmailVerificationX callback from being called
|
|
253
|
+
const updateEmail = () => {
|
|
254
|
+
callCallbackOnUnmount.current = false;
|
|
255
|
+
setView('update-email');
|
|
256
|
+
};
|
|
257
|
+
const closeButton = (jsx(IconButton, Object.assign({ onClick: close, type: 'button', "data-testid": 'close-button' }, { children: jsx(SvgClose, {}) })));
|
|
258
|
+
return (jsxs("div", Object.assign({ className: 'email-verification__container' }, { children: [error && (jsx(ErrorContainer, Object.assign({ withIcon: false, className: 'email-verification__error-message' }, { children: error }))), showTransferMessage && (jsx("div", Object.assign({ className: 'email-verification__transfer-message' }, { children: "Verification complete, the email is now verified to this account." }))), jsx(ModalHeader, Object.assign({ style: { paddingBlock: 0 }, trailing: !isLoginView && closeButton }, { children: isValidated ? (jsx("div", Object.assign({ className: 'email-verification__icon-container' }, { children: jsx(IconWithStatus, { containerClassName: 'email-verification__icon--verified', Icon: SignInWithEmailIcon, iconSize: 50, InnerIcon: SvgCheck }) }))) : (jsx(IconWithSpinner, { className: classNames({
|
|
259
|
+
'email-verification__icon-with-spinner': Boolean(!error),
|
|
260
|
+
}), Icon: SignInWithEmailIcon, iconSize: 80, isSpinning: true })) })), jsx(Typography, Object.assign({ weight: 'medium', variant: 'title', className: 'email-verification__title', color: 'primary' }, { children: "Confirm verification code" })), jsxs("div", Object.assign({ className: 'email-verification__copy-text-container' }, { children: [jsx(Typography, Object.assign({ variant: 'body_normal', weight: 'regular', color: 'secondary' }, { children: "We\u2019ve sent a verification code to" })), jsx(Typography, Object.assign({ variant: 'body_normal', weight: 'bold', color: 'secondary' }, { children: shortenEmail(email) }))] })), !isLoginView && (jsx(TextButton, Object.assign({ onClick: updateEmail, className: 'email-verification__text-button', disabled: loading }, { children: "Edit email" }))), jsx(PinField, { initialValue: Array(6).join('.').split('.'), isLoading: loading, handleComplete: isLoginView ? handleEmailLogin : handleComplete, isValidated: isValidated, inputMode: 'numeric', pattern: '[0-9]*', hasError: Boolean(error), onChange: () => setError(undefined) }), retried ? (jsxs(Fragment, { children: [jsxs(Typography, Object.assign({ variant: 'body_small', color: 'secondary' }, { children: ["Re-send code in ", remainingSeconds] })), jsxs("span", Object.assign({ className: 'email-verification__retry-container' }, { children: [jsx(SvgCheckCircle, {}), jsx(Typography, Object.assign({ variant: 'body_small', weight: 'medium', color: 'primary', className: 'email-verification__retry-container-text' }, { children: "Code sent" }))] }))] })) : (!hideRetryButton && (jsxs(Fragment, { children: [jsx(Typography, Object.assign({ variant: 'body_small', weight: 'medium', color: 'secondary' }, { children: "Did not receive your code yet?" })), jsx(TextButton, Object.assign({ className: 'email-verification__text-button', disabled: loading || isValidated, onClick: () => handleRetry() }, { children: "Re-send code" }))] }))), !isLoginView && (jsx(TextButton, Object.assign({ className: 'email-verification__log-out', onClick: handleLogOut }, { children: "Log out" }))), jsx(PoweredByDynamic, {})] })));
|
|
216
261
|
};
|
|
217
262
|
|
|
218
263
|
export { EmailVerification };
|
|
@@ -39,15 +39,19 @@ require('formik');
|
|
|
39
39
|
require('yup');
|
|
40
40
|
require('../../components/InlineWidget/InlineWidget.cjs');
|
|
41
41
|
require('../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
42
|
+
require('../CollectUserDataView/fieldsConfig.cjs');
|
|
42
43
|
require('../../context/MockContext/MockContext.cjs');
|
|
43
44
|
require('../../context/CaptchaContext/CaptchaContext.cjs');
|
|
45
|
+
require('../../context/EmailVerificationContext/EmailVerificationContext.cjs');
|
|
44
46
|
var useMutation = require('../../utils/hooks/useMutation/useMutation.cjs');
|
|
45
|
-
require('
|
|
47
|
+
require('@dynamic-labs/types');
|
|
48
|
+
require('../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs');
|
|
49
|
+
require('../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
46
50
|
|
|
47
51
|
const EmailWalletOTPVerificationView = () => {
|
|
48
52
|
const { setView } = ViewContext.useViewContext();
|
|
49
53
|
const [error, setError] = React.useState();
|
|
50
|
-
const { selectedWalletConnector: emailWalletConnector, clearStatesOnBackClick, } = useInternalDynamicContext.useInternalDynamicContext();
|
|
54
|
+
const { selectedWalletConnector: emailWalletConnector, clearStatesOnBackClick, setShowAuthFlow, } = useInternalDynamicContext.useInternalDynamicContext();
|
|
51
55
|
if (!emailWalletConnector ||
|
|
52
56
|
!walletConnectorCore.isEmailOTPWalletConnector(emailWalletConnector)) {
|
|
53
57
|
throw new Error('Current wallet is not EmailWalletConnector');
|
|
@@ -61,10 +65,11 @@ const EmailWalletOTPVerificationView = () => {
|
|
|
61
65
|
clearStatesOnBackClick();
|
|
62
66
|
setView('login-with-email-or-wallet');
|
|
63
67
|
};
|
|
68
|
+
const handleOnClickClose = () => setShowAuthFlow(false);
|
|
64
69
|
const { data: isValid, isLoading, mutate: onSubmit, } = useMutation.useMutation((otp) => emailWalletConnector.verifyOneTimePassword(otp), {
|
|
65
70
|
onFailure: (error) => setError(error),
|
|
66
71
|
});
|
|
67
|
-
return (jsxRuntime.jsx(OTPVerificationView.OTPVerificationView, { email: email, error: error, onClickBack: handleBackClick, isLoading: isLoading, onPinComplete: onSubmit, isValid: isValid === true, onPinChange: () => setError(undefined), onClickEditEmail: handleBackClick, displayPoweredByDynamic: true }));
|
|
72
|
+
return (jsxRuntime.jsx(OTPVerificationView.OTPVerificationView, { email: email, error: error, onClickBack: handleBackClick, isLoading: isLoading, onPinComplete: onSubmit, isValid: isValid === true, onPinChange: () => setError(undefined), onClickClose: handleOnClickClose, onClickEditEmail: handleBackClick, displayPoweredByDynamic: true, successBannerText: 'By signing in, you will access a wallet that is only associated to this email.' }));
|
|
68
73
|
};
|
|
69
74
|
|
|
70
75
|
exports.EmailWalletOTPVerificationView = EmailWalletOTPVerificationView;
|
|
@@ -35,15 +35,19 @@ import 'formik';
|
|
|
35
35
|
import 'yup';
|
|
36
36
|
import '../../components/InlineWidget/InlineWidget.js';
|
|
37
37
|
import '../../components/MenuList/Dropdown/Dropdown.js';
|
|
38
|
+
import '../CollectUserDataView/fieldsConfig.js';
|
|
38
39
|
import '../../context/MockContext/MockContext.js';
|
|
39
40
|
import '../../context/CaptchaContext/CaptchaContext.js';
|
|
41
|
+
import '../../context/EmailVerificationContext/EmailVerificationContext.js';
|
|
40
42
|
import { useMutation } from '../../utils/hooks/useMutation/useMutation.js';
|
|
41
|
-
import '
|
|
43
|
+
import '@dynamic-labs/types';
|
|
44
|
+
import '../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js';
|
|
45
|
+
import '../../context/UserFieldEditorContext/UserFieldEditorContext.js';
|
|
42
46
|
|
|
43
47
|
const EmailWalletOTPVerificationView = () => {
|
|
44
48
|
const { setView } = useViewContext();
|
|
45
49
|
const [error, setError] = useState();
|
|
46
|
-
const { selectedWalletConnector: emailWalletConnector, clearStatesOnBackClick, } = useInternalDynamicContext();
|
|
50
|
+
const { selectedWalletConnector: emailWalletConnector, clearStatesOnBackClick, setShowAuthFlow, } = useInternalDynamicContext();
|
|
47
51
|
if (!emailWalletConnector ||
|
|
48
52
|
!isEmailOTPWalletConnector(emailWalletConnector)) {
|
|
49
53
|
throw new Error('Current wallet is not EmailWalletConnector');
|
|
@@ -57,10 +61,11 @@ const EmailWalletOTPVerificationView = () => {
|
|
|
57
61
|
clearStatesOnBackClick();
|
|
58
62
|
setView('login-with-email-or-wallet');
|
|
59
63
|
};
|
|
64
|
+
const handleOnClickClose = () => setShowAuthFlow(false);
|
|
60
65
|
const { data: isValid, isLoading, mutate: onSubmit, } = useMutation((otp) => emailWalletConnector.verifyOneTimePassword(otp), {
|
|
61
66
|
onFailure: (error) => setError(error),
|
|
62
67
|
});
|
|
63
|
-
return (jsx(OTPVerificationView, { email: email, error: error, onClickBack: handleBackClick, isLoading: isLoading, onPinComplete: onSubmit, isValid: isValid === true, onPinChange: () => setError(undefined), onClickEditEmail: handleBackClick, displayPoweredByDynamic: true }));
|
|
68
|
+
return (jsx(OTPVerificationView, { email: email, error: error, onClickBack: handleBackClick, isLoading: isLoading, onPinComplete: onSubmit, isValid: isValid === true, onPinChange: () => setError(undefined), onClickClose: handleOnClickClose, onClickEditEmail: handleBackClick, displayPoweredByDynamic: true, successBannerText: 'By signing in, you will access a wallet that is only associated to this email.' }));
|
|
64
69
|
};
|
|
65
70
|
|
|
66
71
|
export { EmailWalletOTPVerificationView };
|
|
@@ -35,14 +35,18 @@ require('../../../../context/AccessDeniedContext/AccessDeniedContext.cjs');
|
|
|
35
35
|
require('../../../../context/AccountExistsContext/AccountExistsContext.cjs');
|
|
36
36
|
require('../../../../components/IconButton/IconButton.cjs');
|
|
37
37
|
require('../../../../components/Alert/Alert.cjs');
|
|
38
|
+
require('formik');
|
|
39
|
+
require('yup');
|
|
40
|
+
require('../../../CollectUserDataView/fieldsConfig.cjs');
|
|
38
41
|
require('../../../../context/MockContext/MockContext.cjs');
|
|
39
42
|
require('../../../../context/CaptchaContext/CaptchaContext.cjs');
|
|
40
|
-
require('../../../../
|
|
43
|
+
require('../../../../context/EmailVerificationContext/EmailVerificationContext.cjs');
|
|
44
|
+
require('@dynamic-labs/types');
|
|
45
|
+
require('../../../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs');
|
|
46
|
+
require('../../../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
41
47
|
var ListTile = require('../../../../components/ListTile/ListTile.cjs');
|
|
42
48
|
require('../../../../components/Popper/Popper/Popper.cjs');
|
|
43
49
|
require('../../../../components/Popper/PopperContext/PopperContext.cjs');
|
|
44
|
-
require('formik');
|
|
45
|
-
require('yup');
|
|
46
50
|
require('../../../../components/InlineWidget/InlineWidget.cjs');
|
|
47
51
|
require('../../../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
48
52
|
var Badge = require('../../../../components/Badge/Badge.cjs');
|
|
@@ -31,14 +31,18 @@ import '../../../../context/AccessDeniedContext/AccessDeniedContext.js';
|
|
|
31
31
|
import '../../../../context/AccountExistsContext/AccountExistsContext.js';
|
|
32
32
|
import '../../../../components/IconButton/IconButton.js';
|
|
33
33
|
import '../../../../components/Alert/Alert.js';
|
|
34
|
+
import 'formik';
|
|
35
|
+
import 'yup';
|
|
36
|
+
import '../../../CollectUserDataView/fieldsConfig.js';
|
|
34
37
|
import '../../../../context/MockContext/MockContext.js';
|
|
35
38
|
import '../../../../context/CaptchaContext/CaptchaContext.js';
|
|
36
|
-
import '../../../../
|
|
39
|
+
import '../../../../context/EmailVerificationContext/EmailVerificationContext.js';
|
|
40
|
+
import '@dynamic-labs/types';
|
|
41
|
+
import '../../../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js';
|
|
42
|
+
import '../../../../context/UserFieldEditorContext/UserFieldEditorContext.js';
|
|
37
43
|
import { ListTile } from '../../../../components/ListTile/ListTile.js';
|
|
38
44
|
import '../../../../components/Popper/Popper/Popper.js';
|
|
39
45
|
import '../../../../components/Popper/PopperContext/PopperContext.js';
|
|
40
|
-
import 'formik';
|
|
41
|
-
import 'yup';
|
|
42
46
|
import '../../../../components/InlineWidget/InlineWidget.js';
|
|
43
47
|
import '../../../../components/MenuList/Dropdown/Dropdown.js';
|
|
44
48
|
import { Badge } from '../../../../components/Badge/Badge.js';
|
package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.cjs
CHANGED
|
@@ -10,6 +10,7 @@ var sdkApi = require('@dynamic-labs/sdk-api');
|
|
|
10
10
|
var logger = require('../../../../shared/logger.cjs');
|
|
11
11
|
require('@dynamic-labs/iconic');
|
|
12
12
|
require('../../../../context/ViewContext/ViewContext.cjs');
|
|
13
|
+
var arrowRight = require('../../../../shared/assets/arrow-right.cjs');
|
|
13
14
|
require('@dynamic-labs/wallet-book');
|
|
14
15
|
require('@dynamic-labs/utils');
|
|
15
16
|
require('../../../../utils/constants/colors.cjs');
|
|
@@ -32,27 +33,31 @@ require('../../../../utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagic
|
|
|
32
33
|
var ErrorContext = require('../../../../context/ErrorContext/ErrorContext.cjs');
|
|
33
34
|
require('../../../../context/AccessDeniedContext/AccessDeniedContext.cjs');
|
|
34
35
|
require('../../../../context/AccountExistsContext/AccountExistsContext.cjs');
|
|
35
|
-
require('../../../../components/IconButton/IconButton.cjs');
|
|
36
|
-
var Button = require('../../../../components/Button/Button.cjs');
|
|
36
|
+
var IconButton = require('../../../../components/IconButton/IconButton.cjs');
|
|
37
37
|
require('../../../../components/Alert/Alert.cjs');
|
|
38
|
+
require('formik');
|
|
39
|
+
require('yup');
|
|
40
|
+
require('../../../CollectUserDataView/fieldsConfig.cjs');
|
|
38
41
|
require('../../../../context/MockContext/MockContext.cjs');
|
|
39
42
|
require('../../../../context/CaptchaContext/CaptchaContext.cjs');
|
|
40
|
-
require('../../../../
|
|
43
|
+
require('../../../../context/EmailVerificationContext/EmailVerificationContext.cjs');
|
|
44
|
+
require('@dynamic-labs/types');
|
|
45
|
+
require('../../../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs');
|
|
46
|
+
require('../../../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
41
47
|
require('../../../../components/Popper/Popper/Popper.cjs');
|
|
42
48
|
require('../../../../components/Popper/PopperContext/PopperContext.cjs');
|
|
43
|
-
require('formik');
|
|
44
|
-
require('yup');
|
|
45
49
|
require('../../../../components/InlineWidget/InlineWidget.cjs');
|
|
46
50
|
require('../../../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
47
51
|
var LoadingContext = require('../../../../context/LoadingContext/LoadingContext.cjs');
|
|
48
52
|
var useEmailProvider = require('../../../../utils/hooks/useEmailProvider/useEmailProvider.cjs');
|
|
49
53
|
|
|
50
54
|
const EMAIL_REGEX = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i;
|
|
51
|
-
const LoginWithEmailForm = () => {
|
|
55
|
+
const LoginWithEmailForm = ({ currentEmail }) => {
|
|
56
|
+
var _a;
|
|
52
57
|
const { environmentId, wallets, projectSettings } = useInternalDynamicContext.useInternalDynamicContext();
|
|
53
58
|
const { loading, setLoading } = LoadingContext.useLoadingContext();
|
|
54
59
|
const { setErrorMessage } = ErrorContext.useErrorContext();
|
|
55
|
-
const [emailInput, setEmailInput] = React.useState('');
|
|
60
|
+
const [emailInput, setEmailInput] = React.useState(currentEmail !== null && currentEmail !== void 0 ? currentEmail : '');
|
|
56
61
|
const [emailError, setEmailError] = React.useState(false);
|
|
57
62
|
const emailWalletConnector = wallets
|
|
58
63
|
.map(({ walletConnector }) => walletConnector)
|
|
@@ -67,6 +72,7 @@ const LoginWithEmailForm = () => {
|
|
|
67
72
|
};
|
|
68
73
|
const isInjectedWalletProviderEnabled = emailWalletConnector !== undefined;
|
|
69
74
|
const onChangeHandler = handleEmailOnChangeEvent;
|
|
75
|
+
const emailInputSuffixIcon = (jsxRuntime.jsx(IconButton.IconButton, Object.assign({ "data-testid": 'email_submit_button', type: 'submit', className: `icon-button${((_a = emailInput === null || emailInput === void 0 ? void 0 : emailInput.trim()) === null || _a === void 0 ? void 0 : _a.length) ? '--visible' : ''}`, disabled: isLoading }, { children: jsxRuntime.jsx(arrowRight.ReactComponent, {}) })));
|
|
70
76
|
const handleSubmit = (e) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
71
77
|
e.preventDefault();
|
|
72
78
|
if (!EMAIL_REGEX.test(emailInput)) {
|
|
@@ -99,7 +105,7 @@ const LoginWithEmailForm = () => {
|
|
|
99
105
|
}
|
|
100
106
|
});
|
|
101
107
|
// social sign in currently coupled to email... might be better to decouple
|
|
102
|
-
return (jsxRuntime.
|
|
108
|
+
return (jsxRuntime.jsx("form", Object.assign({ className: 'login-with-email-form', onSubmit: (e) => handleSubmit(e) }, { children: jsxRuntime.jsx(Input.Input, { id: 'email_field', value: emailInput, onChange: onChangeHandler, label: 'Enter your email', error: emailError, message: emailError && 'Please enter a valid email address', suffix: emailInputSuffixIcon }) })));
|
|
103
109
|
};
|
|
104
110
|
|
|
105
111
|
exports.EMAIL_REGEX = EMAIL_REGEX;
|
package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
export declare const EMAIL_REGEX: RegExp;
|
|
3
|
-
|
|
3
|
+
type Props = {
|
|
4
|
+
currentEmail?: string;
|
|
5
|
+
};
|
|
6
|
+
export declare const LoginWithEmailForm: ({ currentEmail }: Props) => JSX.Element;
|
|
7
|
+
export {};
|