@dynamic-labs/sdk-react-core 3.0.0-alpha.37 → 3.0.0-alpha.39
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 +19 -0
- package/package.cjs +1 -1
- package/package.js +1 -1
- package/package.json +11 -11
- package/src/lib/components/EmailForm/EmailForm.cjs +1 -1
- package/src/lib/components/EmailForm/EmailForm.js +1 -1
- package/src/lib/components/QrCodeWrapper/QrCodeContainer/QrCodeContainer.cjs +1 -1
- package/src/lib/components/QrCodeWrapper/QrCodeContainer/QrCodeContainer.js +1 -1
- package/src/lib/components/UserProfile/UserProfile.cjs +3 -2
- package/src/lib/components/UserProfile/UserProfile.js +3 -2
- package/src/lib/components/UserProfile/parts/EditProfileButton/EditProfileButton.cjs +112 -0
- package/src/lib/components/UserProfile/parts/EditProfileButton/EditProfileButton.d.ts +2 -0
- package/src/lib/components/UserProfile/parts/EditProfileButton/EditProfileButton.js +108 -0
- package/src/lib/components/UserProfile/parts/EditProfileButton/index.d.ts +1 -0
- package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.cjs +1 -1
- package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.d.ts +2 -1
- package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.js +2 -2
- package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.cjs +1 -1
- package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.js +1 -1
- package/src/lib/components/index.d.ts +1 -1
- package/src/lib/context/CaptchaContext/CaptchaContext.cjs +22 -12
- package/src/lib/context/CaptchaContext/CaptchaContext.d.ts +1 -4
- package/src/lib/context/CaptchaContext/CaptchaContext.js +23 -12
- package/src/lib/data/api/mfa/mfa.cjs +2 -1
- package/src/lib/data/api/mfa/mfa.d.ts +2 -1
- package/src/lib/data/api/mfa/mfa.js +2 -1
- package/src/lib/layout/DynamicUserProfileLayout/DynamicUserProfileLayout.cjs +41 -3
- package/src/lib/layout/DynamicUserProfileLayout/DynamicUserProfileLayout.js +42 -4
- package/src/lib/layouts/BridgeNextWalletToConnectLayout/BridgeNextWalletToConnectLayout.cjs +1 -1
- package/src/lib/layouts/BridgeNextWalletToConnectLayout/BridgeNextWalletToConnectLayout.js +1 -1
- package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.cjs +1 -1
- package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.js +1 -1
- package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.cjs +1 -1
- package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.js +1 -1
- package/src/lib/locale/en/translation.cjs +39 -7
- package/src/lib/locale/en/translation.d.ts +37 -5
- package/src/lib/locale/en/translation.js +39 -7
- package/src/lib/shared/assets/authenticator.cjs +54 -0
- package/src/lib/shared/assets/authenticator.js +30 -0
- package/src/lib/shared/assets/currency.cjs +70 -0
- package/src/lib/shared/assets/currency.js +46 -0
- package/src/lib/shared/assets/index.d.ts +9 -0
- package/src/lib/shared/assets/profile-outline.cjs +54 -0
- package/src/lib/shared/assets/profile-outline.js +30 -0
- package/src/lib/shared/assets/profile.cjs +65 -0
- package/src/lib/shared/assets/profile.js +41 -0
- package/src/lib/shared/assets/settings-outline.cjs +54 -0
- package/src/lib/shared/assets/settings-outline.js +30 -0
- package/src/lib/shared/assets/settings.cjs +54 -0
- package/src/lib/shared/assets/settings.js +30 -0
- package/src/lib/shared/assets/shield.cjs +59 -0
- package/src/lib/shared/assets/shield.js +35 -0
- package/src/lib/shared/assets/wallet-outline-v2.cjs +54 -0
- package/src/lib/shared/assets/wallet-outline-v2.js +30 -0
- package/src/lib/shared/assets/wallet.cjs +52 -0
- package/src/lib/shared/assets/wallet.js +28 -0
- package/src/lib/styles/index.shadow.cjs +1 -1
- package/src/lib/styles/index.shadow.js +1 -1
- package/src/lib/utils/constants/localStorage.cjs +2 -0
- package/src/lib/utils/constants/localStorage.d.ts +1 -0
- package/src/lib/utils/constants/localStorage.js +2 -1
- package/src/lib/utils/hooks/useMfa/useMfa.cjs +2 -1
- package/src/lib/utils/hooks/useMfa/useMfa.d.ts +1 -1
- package/src/lib/utils/hooks/useMfa/useMfa.js +2 -1
- package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.cjs +1 -1
- package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.js +1 -1
- package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.cjs +2 -1
- package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.js +2 -1
- package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.cjs +2 -1
- package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.js +2 -1
- package/src/lib/views/CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.cjs +1 -1
- package/src/lib/views/CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.js +1 -1
- package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.cjs +1 -1
- package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.js +1 -1
- package/src/lib/views/CreatePasswordView/CreatePasswordStep/CreatePasswordStep.cjs +1 -1
- package/src/lib/views/CreatePasswordView/CreatePasswordStep/CreatePasswordStep.js +1 -1
- package/src/lib/views/CreatePasswordView/SavePasswordStep/SavePasswordStep.cjs +1 -1
- package/src/lib/views/CreatePasswordView/SavePasswordStep/SavePasswordStep.js +1 -1
- package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.cjs +1 -1
- package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.js +1 -1
- package/src/lib/views/EnterPasswordView/EnterPasswordView.cjs +1 -1
- package/src/lib/views/EnterPasswordView/EnterPasswordView.js +1 -1
- package/src/lib/views/FarcasterQrCodeView/FarcasterQrCodeView.cjs +1 -4
- package/src/lib/views/FarcasterQrCodeView/FarcasterQrCodeView.js +1 -4
- package/src/lib/views/LoginView/sections/PhoneNumberSignInSection/PhoneNumberSignInSection.cjs +1 -1
- package/src/lib/views/LoginView/sections/PhoneNumberSignInSection/PhoneNumberSignInSection.js +1 -1
- package/src/lib/views/LoginView/sections/SocialSignInSection/DynamicSocialSignIn/DynamicSocialSignIn.cjs +3 -1
- package/src/lib/views/LoginView/sections/SocialSignInSection/DynamicSocialSignIn/DynamicSocialSignIn.js +3 -1
- package/src/lib/views/LoginView/sections/SocialSignInSection/MagicSocialSignIn/MagicSocialSignIn.cjs +1 -2
- package/src/lib/views/LoginView/sections/SocialSignInSection/MagicSocialSignIn/MagicSocialSignIn.js +1 -2
- package/src/lib/views/MergeUserAccountsConflictsView/MergeUserAccountsConflictsView.cjs +1 -1
- package/src/lib/views/MergeUserAccountsConflictsView/MergeUserAccountsConflictsView.js +1 -1
- package/src/lib/views/MergeUserAccountsWithSameEmailView/MergeUserAccountsWithSameEmailView.cjs +1 -1
- package/src/lib/views/MergeUserAccountsWithSameEmailView/MergeUserAccountsWithSameEmailView.js +1 -1
- package/src/lib/views/MfaChooseDeviceView/MfaChooseDeviceView.cjs +1 -1
- package/src/lib/views/MfaChooseDeviceView/MfaChooseDeviceView.js +1 -1
- package/src/lib/views/MfaDisplayBackupCodesView/MfaDisplayBackupCodesView.cjs +1 -1
- package/src/lib/views/MfaDisplayBackupCodesView/MfaDisplayBackupCodesView.js +1 -1
- package/src/lib/views/MfaRecoveryView/MfaRecoveryView.cjs +1 -1
- package/src/lib/views/MfaRecoveryView/MfaRecoveryView.js +1 -1
- package/src/lib/views/MfaSecureDeviceView/MfaSecureDeviceView.cjs +2 -2
- package/src/lib/views/MfaSecureDeviceView/MfaSecureDeviceView.js +2 -2
- package/src/lib/views/MfaVerificationView/MfaVerificationView.cjs +15 -15
- package/src/lib/views/MfaVerificationView/MfaVerificationView.d.ts +2 -1
- package/src/lib/views/MfaVerificationView/MfaVerificationView.js +15 -15
- package/src/lib/views/NoAccess/NoAccess.cjs +1 -1
- package/src/lib/views/NoAccess/NoAccess.js +1 -1
- package/src/lib/views/Passkey/EmbeddedAuthChoice/EmbeddedAuthChoice.cjs +1 -1
- package/src/lib/views/Passkey/EmbeddedAuthChoice/EmbeddedAuthChoice.js +1 -1
- package/src/lib/views/Passkey/EmbeddedAuthChoiceCards/ActionCard/ActionCard.cjs +1 -1
- package/src/lib/views/Passkey/EmbeddedAuthChoiceCards/ActionCard/ActionCard.js +1 -1
- package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.cjs +1 -1
- package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.js +1 -1
- package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.cjs +1 -1
- package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.js +1 -1
- package/src/lib/views/PendingSignatureView/PendingSignatureView.cjs +1 -1
- package/src/lib/views/PendingSignatureView/PendingSignatureView.js +1 -1
- package/src/lib/views/SelectHardwareWalletView/SelectHardwareWalletView.cjs +1 -1
- package/src/lib/views/SelectHardwareWalletView/SelectHardwareWalletView.js +1 -1
- package/src/lib/views/SocialWrongAccountView/SocialWrongAccountView.cjs +1 -1
- package/src/lib/views/SocialWrongAccountView/SocialWrongAccountView.js +1 -1
- package/src/lib/views/WalletCannotBeTransferredView/WalletCannotBeTransferredView.cjs +1 -1
- package/src/lib/views/WalletCannotBeTransferredView/WalletCannotBeTransferredView.js +1 -1
- package/src/lib/views/WalletLockedView/WalletLockedView.cjs +1 -1
- package/src/lib/views/WalletLockedView/WalletLockedView.js +1 -1
- package/src/lib/views/WalletUsedView/WalletUsedView.cjs +1 -1
- package/src/lib/views/WalletUsedView/WalletUsedView.js +1 -1
- package/src/lib/views/viewToComponentMap.d.ts +1 -1
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeUserProfile/DynamicBridgeUserProfile.cjs +1 -1
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeUserProfile/DynamicBridgeUserProfile.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/BottomNavBar/BottomNavBar.cjs +16 -0
- package/src/lib/widgets/DynamicWidget/components/BottomNavBar/BottomNavBar.d.ts +13 -0
- package/src/lib/widgets/DynamicWidget/components/BottomNavBar/BottomNavBar.js +12 -0
- package/src/lib/widgets/DynamicWidget/components/BottomNavBar/index.d.ts +1 -0
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs +23 -45
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js +24 -46
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetViews/DynamicWidgetViews.cjs +4 -2
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetViews/DynamicWidgetViews.js +4 -2
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.cjs +14 -3
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.js +14 -3
- package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.js +1 -1
- package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.cjs +15 -0
- package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.js +15 -0
- package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.types.cjs +2 -2
- package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.types.d.ts +6 -3
- package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.types.js +2 -2
- package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.js +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.js +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.js +1 -1
- package/src/lib/widgets/DynamicWidget/views/ManageMfaWidgetView/ManageMfaWidgetView.cjs +128 -0
- package/src/lib/widgets/DynamicWidget/views/ManageMfaWidgetView/ManageMfaWidgetView.d.ts +4 -0
- package/src/lib/widgets/DynamicWidget/views/ManageMfaWidgetView/ManageMfaWidgetView.js +123 -0
- package/src/lib/widgets/DynamicWidget/views/ManageMfaWidgetView/components/UserDeviceTile.cjs +109 -0
- package/src/lib/widgets/DynamicWidget/views/ManageMfaWidgetView/components/UserDeviceTile.d.ts +8 -0
- package/src/lib/widgets/DynamicWidget/views/ManageMfaWidgetView/components/UserDeviceTile.js +105 -0
- package/src/lib/widgets/DynamicWidget/views/ManageMfaWidgetView/components/index.d.ts +1 -0
- package/src/lib/widgets/DynamicWidget/views/ManageMfaWidgetView/index.d.ts +1 -0
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/ManagePasskeysWidgetView.cjs +2 -2
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/ManagePasskeysWidgetView.js +2 -2
- package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.cjs +1 -105
- package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.js +2 -106
- package/src/lib/widgets/DynamicWidget/views/{WalletSettingsView/WalletSettingsView.cjs → SettingsView/SettingsView.cjs} +35 -25
- package/src/lib/widgets/DynamicWidget/views/SettingsView/SettingsView.d.ts +2 -0
- package/src/lib/widgets/DynamicWidget/views/{WalletSettingsView/WalletSettingsView.js → SettingsView/SettingsView.js} +36 -26
- package/src/lib/widgets/DynamicWidget/views/SettingsView/index.d.ts +1 -0
- package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.cjs +2 -15
- package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.js +2 -15
- package/src/lib/widgets/DynamicWidget/views/index.d.ts +1 -1
- package/src/lib/widgets/DynamicWidget/views/WalletSettingsView/WalletSettingsView.d.ts +0 -2
- package/src/lib/widgets/DynamicWidget/views/WalletSettingsView/index.d.ts +0 -1
|
@@ -5,111 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
|
|
6
6
|
var jsxRuntime = require('react/jsx-runtime');
|
|
7
7
|
var UserProfile = require('../../../../components/UserProfile/UserProfile.cjs');
|
|
8
|
-
var DynamicWidgetFooter = require('../../components/DynamicWidgetFooter/DynamicWidgetFooter.cjs');
|
|
9
|
-
var classNames = require('../../../../utils/functions/classNames/classNames.cjs');
|
|
10
|
-
require('../../../../components/Accordion/components/AccordionItem/AccordionItem.cjs');
|
|
11
|
-
require('../../../../components/Alert/Alert.cjs');
|
|
12
|
-
require('react');
|
|
13
|
-
require('../../../../events/dynamicEvents.cjs');
|
|
14
|
-
require('../../../../../../_virtual/_tslib.cjs');
|
|
15
|
-
require('@dynamic-labs/utils');
|
|
16
|
-
require('../../../../context/DynamicContext/DynamicContext.cjs');
|
|
17
|
-
require('@dynamic-labs/sdk-api-core');
|
|
18
|
-
require('../../../../shared/logger.cjs');
|
|
19
|
-
require('@dynamic-labs/iconic');
|
|
20
|
-
require('@dynamic-labs/wallet-connector-core');
|
|
21
|
-
require('../../../../context/ViewContext/ViewContext.cjs');
|
|
22
|
-
var pencil = require('../../../../shared/assets/pencil.cjs');
|
|
23
|
-
require('@dynamic-labs/wallet-book');
|
|
24
|
-
require('../../../../utils/constants/colors.cjs');
|
|
25
|
-
require('../../../../utils/constants/values.cjs');
|
|
26
|
-
require('../../../../shared/utils/classes/storage/localStorage.cjs');
|
|
27
|
-
require('../../../../shared/utils/classes/storage/sessionStorage.cjs');
|
|
28
|
-
require('../../../../shared/consts/index.cjs');
|
|
29
|
-
var useInternalDynamicContext = require('../../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.cjs');
|
|
30
|
-
require('../../../../context/CaptchaContext/CaptchaContext.cjs');
|
|
31
|
-
require('../../../../context/ErrorContext/ErrorContext.cjs');
|
|
32
|
-
require('@dynamic-labs/multi-wallet');
|
|
33
|
-
require('react-international-phone');
|
|
34
|
-
require('../../../../config/ApiEndpoint.cjs');
|
|
35
|
-
require('@dynamic-labs/store');
|
|
36
|
-
require('../../../../locale/locale.cjs');
|
|
37
|
-
var getUserProfileFields = require('../../../../utils/functions/getUserProfileFields/getUserProfileFields.cjs');
|
|
38
|
-
require('../../../../context/AccessDeniedContext/AccessDeniedContext.cjs');
|
|
39
|
-
require('../../../../context/AccountExistsContext/AccountExistsContext.cjs');
|
|
40
|
-
require('../../../../context/UserWalletsContext/UserWalletsContext.cjs');
|
|
41
|
-
require('../../../../context/VerificationContext/VerificationContext.cjs');
|
|
42
|
-
require('react-dom');
|
|
43
|
-
require('../../../../context/WalletContext/WalletContext.cjs');
|
|
44
|
-
require('../../../../utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/constants.cjs');
|
|
45
|
-
require('../../../../context/ThemeContext/ThemeContext.cjs');
|
|
46
|
-
require('../../../../utils/hooks/useUserUpdateRequest/useUpdateUser/userFieldsSchema.cjs');
|
|
47
|
-
require('@dynamic-labs/types');
|
|
48
|
-
require('../../../../context/LoadingContext/LoadingContext.cjs');
|
|
49
|
-
require('yup');
|
|
50
|
-
require('../../../../context/MockContext/MockContext.cjs');
|
|
51
|
-
require('../../../../views/CollectUserDataView/useFields.cjs');
|
|
52
|
-
require('../../../../context/FieldsStateContext/FieldsStateContext.cjs');
|
|
53
|
-
require('../../../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
54
|
-
require('@dynamic-labs/rpc-providers');
|
|
55
|
-
require('react-i18next');
|
|
56
|
-
require('../../../../context/FooterAnimationContext/index.cjs');
|
|
57
|
-
require('../../../../components/ShadowDOM/ShadowDOM.cjs');
|
|
58
|
-
require('../../../../components/Transition/ZoomTransition/ZoomTransition.cjs');
|
|
59
|
-
require('../../../../components/Transition/SlideInUpTransition/SlideInUpTransition.cjs');
|
|
60
|
-
require('../../../../components/Transition/OpacityTransition/OpacityTransition.cjs');
|
|
61
|
-
require('../../../../components/OverlayCard/OverlayCardTarget/OverlayCardTarget.cjs');
|
|
62
|
-
require('../../../../context/SocialRedirectContext/SocialRedirectContext.cjs');
|
|
63
|
-
require('../../../../context/WalletGroupContext/WalletGroupContext.cjs');
|
|
64
|
-
require('../../components/DynamicWidgetHeader/DynamicWidgetHeader.cjs');
|
|
65
|
-
require('react-focus-lock');
|
|
66
|
-
var DynamicWidgetContext = require('../../context/DynamicWidgetContext.cjs');
|
|
67
|
-
require('../../../../components/IconButton/IconButton.cjs');
|
|
68
|
-
require('../../../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
69
|
-
require('formik');
|
|
70
|
-
var TypographyButton = require('../../../../components/TypographyButton/TypographyButton.cjs');
|
|
71
|
-
require('../../../../views/TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
|
|
72
|
-
require('../../../../components/Input/Input.cjs');
|
|
73
|
-
require('../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.cjs');
|
|
74
|
-
require('../../../../context/PasskeyContext/PasskeyContext.cjs');
|
|
75
|
-
require('../ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs');
|
|
76
|
-
require('../../../../../polyfills.cjs');
|
|
77
|
-
require('../../../../context/ErrorBoundary/ErrorBoundaryBase.cjs');
|
|
78
|
-
require('../../../../context/ErrorBoundary/ErrorBoundaryContext.cjs');
|
|
79
|
-
require('../../../DynamicBridgeWidget/context/DynamicBridgeWidgetContext/DynamicBridgeWidgetContext.cjs');
|
|
80
|
-
require('../../components/DynamicWidgetCard/DynamicWidgetCard.cjs');
|
|
81
|
-
require('../../../../components/IsBrowser/IsBrowser.cjs');
|
|
82
|
-
require('../../../../context/WidgetRegistry/WidgetRegistryContextProvider.cjs');
|
|
83
|
-
require('../../../../context/FundingContext/FundingContext.cjs');
|
|
84
|
-
require('../../../../components/Popper/Popper/Popper.cjs');
|
|
85
|
-
require('../../../../components/Popper/PopperContext/PopperContext.cjs');
|
|
86
|
-
require('../../../../views/WalletList/WalletList.cjs');
|
|
87
|
-
require('../../../DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.cjs');
|
|
88
|
-
require('@hcaptcha/react-hcaptcha');
|
|
89
|
-
require('../../../../context/IpConfigurationContext/IpConfigurationContext.cjs');
|
|
90
|
-
require('../../../../context/SendBalanceContext/SendBalanceContext.cjs');
|
|
91
|
-
require('../../../../context/ConnectWithOtpContext/ConnectWithOtpContext.cjs');
|
|
92
|
-
require('../../../../context/ConnectWithOtpContext/constants.cjs');
|
|
93
|
-
require('../../../../context/ReinitializeContext/ReinitializeContextProvider.cjs');
|
|
94
|
-
require('../../../../components/InlineWidget/InlineWidget.cjs');
|
|
95
|
-
var LogoutButton = require('../../../../components/LogoutButton/LogoutButton.cjs');
|
|
96
|
-
require('qrcode');
|
|
97
8
|
|
|
98
|
-
const ProfileView = () => {
|
|
99
|
-
var _a, _b;
|
|
100
|
-
const { setDynamicWidgetView } = DynamicWidgetContext.useWidgetContext();
|
|
101
|
-
const { projectSettings } = useInternalDynamicContext.useInternalDynamicContext();
|
|
102
|
-
// Allow to navigate to edit profile view when there are fields what can be edited
|
|
103
|
-
const editableUserFields = getUserProfileFields.getEditableUserProfileFields([
|
|
104
|
-
...((_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.kyc) !== null && _a !== void 0 ? _a : []),
|
|
105
|
-
...((_b = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.customFields) !== null && _b !== void 0 ? _b : []),
|
|
106
|
-
]);
|
|
107
|
-
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(UserProfile.UserProfile, { rootClassName: 'profile-view' }), jsxRuntime.jsx(DynamicWidgetFooter.DynamicWidgetFooter, { children: jsxRuntime.jsxs("div", { className: 'profile-view__footer', children: [editableUserFields.length > 0 && (jsxRuntime.jsx(TypographyButton.TypographyButton, { buttonClassName: 'dynamic-widget-footer__button', buttonVariant: 'tertiary', buttonPadding: 'none', typographyProps: {
|
|
108
|
-
color: 'secondary',
|
|
109
|
-
variant: 'button_tertiary',
|
|
110
|
-
}, onClick: () => setDynamicWidgetView('edit-profile'), startSlot: jsxRuntime.jsx(pencil.ReactComponent, {}), children: "Edit profile" })), jsxRuntime.jsx(LogoutButton.LogoutButton, { isTextButton: true, buttonClassName: classNames.classNames('dynamic-widget-footer__button', {
|
|
111
|
-
'dynamic-widget-footer__button-align-right': !(editableUserFields === null || editableUserFields === void 0 ? void 0 : editableUserFields.length),
|
|
112
|
-
}) })] }) })] }));
|
|
113
|
-
};
|
|
9
|
+
const ProfileView = () => (jsxRuntime.jsx(UserProfile.UserProfile, { rootClassName: 'profile-view' }));
|
|
114
10
|
|
|
115
11
|
exports.ProfileView = ProfileView;
|
|
@@ -1,111 +1,7 @@
|
|
|
1
1
|
'use client'
|
|
2
|
-
import {
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
3
|
import { UserProfile } from '../../../../components/UserProfile/UserProfile.js';
|
|
4
|
-
import { DynamicWidgetFooter } from '../../components/DynamicWidgetFooter/DynamicWidgetFooter.js';
|
|
5
|
-
import { classNames } from '../../../../utils/functions/classNames/classNames.js';
|
|
6
|
-
import '../../../../components/Accordion/components/AccordionItem/AccordionItem.js';
|
|
7
|
-
import '../../../../components/Alert/Alert.js';
|
|
8
|
-
import 'react';
|
|
9
|
-
import '../../../../events/dynamicEvents.js';
|
|
10
|
-
import '../../../../../../_virtual/_tslib.js';
|
|
11
|
-
import '@dynamic-labs/utils';
|
|
12
|
-
import '../../../../context/DynamicContext/DynamicContext.js';
|
|
13
|
-
import '@dynamic-labs/sdk-api-core';
|
|
14
|
-
import '../../../../shared/logger.js';
|
|
15
|
-
import '@dynamic-labs/iconic';
|
|
16
|
-
import '@dynamic-labs/wallet-connector-core';
|
|
17
|
-
import '../../../../context/ViewContext/ViewContext.js';
|
|
18
|
-
import { ReactComponent as SvgPencil } from '../../../../shared/assets/pencil.js';
|
|
19
|
-
import '@dynamic-labs/wallet-book';
|
|
20
|
-
import '../../../../utils/constants/colors.js';
|
|
21
|
-
import '../../../../utils/constants/values.js';
|
|
22
|
-
import '../../../../shared/utils/classes/storage/localStorage.js';
|
|
23
|
-
import '../../../../shared/utils/classes/storage/sessionStorage.js';
|
|
24
|
-
import '../../../../shared/consts/index.js';
|
|
25
|
-
import { useInternalDynamicContext } from '../../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.js';
|
|
26
|
-
import '../../../../context/CaptchaContext/CaptchaContext.js';
|
|
27
|
-
import '../../../../context/ErrorContext/ErrorContext.js';
|
|
28
|
-
import '@dynamic-labs/multi-wallet';
|
|
29
|
-
import 'react-international-phone';
|
|
30
|
-
import '../../../../config/ApiEndpoint.js';
|
|
31
|
-
import '@dynamic-labs/store';
|
|
32
|
-
import '../../../../locale/locale.js';
|
|
33
|
-
import { getEditableUserProfileFields } from '../../../../utils/functions/getUserProfileFields/getUserProfileFields.js';
|
|
34
|
-
import '../../../../context/AccessDeniedContext/AccessDeniedContext.js';
|
|
35
|
-
import '../../../../context/AccountExistsContext/AccountExistsContext.js';
|
|
36
|
-
import '../../../../context/UserWalletsContext/UserWalletsContext.js';
|
|
37
|
-
import '../../../../context/VerificationContext/VerificationContext.js';
|
|
38
|
-
import 'react-dom';
|
|
39
|
-
import '../../../../context/WalletContext/WalletContext.js';
|
|
40
|
-
import '../../../../utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/constants.js';
|
|
41
|
-
import '../../../../context/ThemeContext/ThemeContext.js';
|
|
42
|
-
import '../../../../utils/hooks/useUserUpdateRequest/useUpdateUser/userFieldsSchema.js';
|
|
43
|
-
import '@dynamic-labs/types';
|
|
44
|
-
import '../../../../context/LoadingContext/LoadingContext.js';
|
|
45
|
-
import 'yup';
|
|
46
|
-
import '../../../../context/MockContext/MockContext.js';
|
|
47
|
-
import '../../../../views/CollectUserDataView/useFields.js';
|
|
48
|
-
import '../../../../context/FieldsStateContext/FieldsStateContext.js';
|
|
49
|
-
import '../../../../context/UserFieldEditorContext/UserFieldEditorContext.js';
|
|
50
|
-
import '@dynamic-labs/rpc-providers';
|
|
51
|
-
import 'react-i18next';
|
|
52
|
-
import '../../../../context/FooterAnimationContext/index.js';
|
|
53
|
-
import '../../../../components/ShadowDOM/ShadowDOM.js';
|
|
54
|
-
import '../../../../components/Transition/ZoomTransition/ZoomTransition.js';
|
|
55
|
-
import '../../../../components/Transition/SlideInUpTransition/SlideInUpTransition.js';
|
|
56
|
-
import '../../../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
57
|
-
import '../../../../components/OverlayCard/OverlayCardTarget/OverlayCardTarget.js';
|
|
58
|
-
import '../../../../context/SocialRedirectContext/SocialRedirectContext.js';
|
|
59
|
-
import '../../../../context/WalletGroupContext/WalletGroupContext.js';
|
|
60
|
-
import '../../components/DynamicWidgetHeader/DynamicWidgetHeader.js';
|
|
61
|
-
import 'react-focus-lock';
|
|
62
|
-
import { useWidgetContext } from '../../context/DynamicWidgetContext.js';
|
|
63
|
-
import '../../../../components/IconButton/IconButton.js';
|
|
64
|
-
import '../../../../components/MenuList/Dropdown/Dropdown.js';
|
|
65
|
-
import 'formik';
|
|
66
|
-
import { TypographyButton } from '../../../../components/TypographyButton/TypographyButton.js';
|
|
67
|
-
import '../../../../views/TransactionConfirmationView/helpers/transactionErrorMessage.js';
|
|
68
|
-
import '../../../../components/Input/Input.js';
|
|
69
|
-
import '../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.js';
|
|
70
|
-
import '../../../../context/PasskeyContext/PasskeyContext.js';
|
|
71
|
-
import '../ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
|
|
72
|
-
import '../../../../../polyfills.js';
|
|
73
|
-
import '../../../../context/ErrorBoundary/ErrorBoundaryBase.js';
|
|
74
|
-
import '../../../../context/ErrorBoundary/ErrorBoundaryContext.js';
|
|
75
|
-
import '../../../DynamicBridgeWidget/context/DynamicBridgeWidgetContext/DynamicBridgeWidgetContext.js';
|
|
76
|
-
import '../../components/DynamicWidgetCard/DynamicWidgetCard.js';
|
|
77
|
-
import '../../../../components/IsBrowser/IsBrowser.js';
|
|
78
|
-
import '../../../../context/WidgetRegistry/WidgetRegistryContextProvider.js';
|
|
79
|
-
import '../../../../context/FundingContext/FundingContext.js';
|
|
80
|
-
import '../../../../components/Popper/Popper/Popper.js';
|
|
81
|
-
import '../../../../components/Popper/PopperContext/PopperContext.js';
|
|
82
|
-
import '../../../../views/WalletList/WalletList.js';
|
|
83
|
-
import '../../../DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js';
|
|
84
|
-
import '@hcaptcha/react-hcaptcha';
|
|
85
|
-
import '../../../../context/IpConfigurationContext/IpConfigurationContext.js';
|
|
86
|
-
import '../../../../context/SendBalanceContext/SendBalanceContext.js';
|
|
87
|
-
import '../../../../context/ConnectWithOtpContext/ConnectWithOtpContext.js';
|
|
88
|
-
import '../../../../context/ConnectWithOtpContext/constants.js';
|
|
89
|
-
import '../../../../context/ReinitializeContext/ReinitializeContextProvider.js';
|
|
90
|
-
import '../../../../components/InlineWidget/InlineWidget.js';
|
|
91
|
-
import { LogoutButton } from '../../../../components/LogoutButton/LogoutButton.js';
|
|
92
|
-
import 'qrcode';
|
|
93
4
|
|
|
94
|
-
const ProfileView = () => {
|
|
95
|
-
var _a, _b;
|
|
96
|
-
const { setDynamicWidgetView } = useWidgetContext();
|
|
97
|
-
const { projectSettings } = useInternalDynamicContext();
|
|
98
|
-
// Allow to navigate to edit profile view when there are fields what can be edited
|
|
99
|
-
const editableUserFields = getEditableUserProfileFields([
|
|
100
|
-
...((_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.kyc) !== null && _a !== void 0 ? _a : []),
|
|
101
|
-
...((_b = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.customFields) !== null && _b !== void 0 ? _b : []),
|
|
102
|
-
]);
|
|
103
|
-
return (jsxs(Fragment, { children: [jsx(UserProfile, { rootClassName: 'profile-view' }), jsx(DynamicWidgetFooter, { children: jsxs("div", { className: 'profile-view__footer', children: [editableUserFields.length > 0 && (jsx(TypographyButton, { buttonClassName: 'dynamic-widget-footer__button', buttonVariant: 'tertiary', buttonPadding: 'none', typographyProps: {
|
|
104
|
-
color: 'secondary',
|
|
105
|
-
variant: 'button_tertiary',
|
|
106
|
-
}, onClick: () => setDynamicWidgetView('edit-profile'), startSlot: jsx(SvgPencil, {}), children: "Edit profile" })), jsx(LogoutButton, { isTextButton: true, buttonClassName: classNames('dynamic-widget-footer__button', {
|
|
107
|
-
'dynamic-widget-footer__button-align-right': !(editableUserFields === null || editableUserFields === void 0 ? void 0 : editableUserFields.length),
|
|
108
|
-
}) })] }) })] }));
|
|
109
|
-
};
|
|
5
|
+
const ProfileView = () => (jsx(UserProfile, { rootClassName: 'profile-view' }));
|
|
110
6
|
|
|
111
7
|
export { ProfileView };
|
|
@@ -26,7 +26,10 @@ var chevronLeft = require('../../../../shared/assets/chevron-left.cjs');
|
|
|
26
26
|
var exportPrivateKey = require('../../../../shared/assets/export-private-key.cjs');
|
|
27
27
|
var exportRecoveryPhrase = require('../../../../shared/assets/export-recovery-phrase.cjs');
|
|
28
28
|
var footerInfoIcon = require('../../../../shared/assets/footer-info-icon.cjs');
|
|
29
|
+
var logout = require('../../../../shared/assets/logout.cjs');
|
|
29
30
|
var signInWithEmail = require('../../../../shared/assets/sign-in-with-email.cjs');
|
|
31
|
+
var currency = require('../../../../shared/assets/currency.cjs');
|
|
32
|
+
var shield = require('../../../../shared/assets/shield.cjs');
|
|
30
33
|
require('@dynamic-labs/wallet-book');
|
|
31
34
|
require('../../../../utils/constants/colors.cjs');
|
|
32
35
|
require('../../../../utils/constants/values.cjs');
|
|
@@ -41,6 +44,7 @@ require('react-international-phone');
|
|
|
41
44
|
require('../../../../config/ApiEndpoint.cjs');
|
|
42
45
|
require('@dynamic-labs/store');
|
|
43
46
|
require('../../../../locale/locale.cjs');
|
|
47
|
+
var getEOAWallet = require('../../../../utils/functions/getEOAWallet/getEOAWallet.cjs');
|
|
44
48
|
require('../../../../context/AccessDeniedContext/AccessDeniedContext.cjs');
|
|
45
49
|
require('../../../../context/AccountExistsContext/AccountExistsContext.cjs');
|
|
46
50
|
require('../../../../context/UserWalletsContext/UserWalletsContext.cjs');
|
|
@@ -74,10 +78,10 @@ require('../../components/DynamicWidgetHeader/DynamicWidgetHeader.cjs');
|
|
|
74
78
|
require('react-focus-lock');
|
|
75
79
|
var Icon = require('../../../../components/Icon/Icon.cjs');
|
|
76
80
|
var DynamicWidgetContext = require('../../context/DynamicWidgetContext.cjs');
|
|
77
|
-
|
|
81
|
+
require('../../../../components/IconButton/IconButton.cjs');
|
|
78
82
|
require('../../../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
79
|
-
require('formik');
|
|
80
83
|
var TypographyButton = require('../../../../components/TypographyButton/TypographyButton.cjs');
|
|
84
|
+
require('formik');
|
|
81
85
|
require('../../../../views/TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
|
|
82
86
|
var spinner = require('../../../../components/Spinner/spinner.cjs');
|
|
83
87
|
var ModalHeader = require('../../../../components/ModalHeader/ModalHeader.cjs');
|
|
@@ -110,10 +114,10 @@ var useEmbeddedWalletAuthenticator = require('../../../../utils/hooks/useEmbedde
|
|
|
110
114
|
require('../../../../components/InlineWidget/InlineWidget.cjs');
|
|
111
115
|
require('qrcode');
|
|
112
116
|
|
|
113
|
-
const
|
|
114
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
115
|
-
const { projectSettings, primaryWallet, user } = useInternalDynamicContext.useInternalDynamicContext();
|
|
116
|
-
const {
|
|
117
|
+
const SettingsView = () => {
|
|
118
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
|
119
|
+
const { projectSettings, primaryWallet, user, handleLogOut } = useInternalDynamicContext.useInternalDynamicContext();
|
|
120
|
+
const { setDynamicWidgetView } = DynamicWidgetContext.useWidgetContext();
|
|
117
121
|
const { addEmbeddedWalletRecoveryEmail } = useEmbeddedWalletAuthenticator.useEmbeddedWalletAuthenticator();
|
|
118
122
|
const { createPassword } = useEmbeddedWallet.useEmbeddedWallet();
|
|
119
123
|
const { initExportProcess } = useEmbeddedReveal.useEmbeddedReveal();
|
|
@@ -154,38 +158,44 @@ const WalletSettingsView = () => {
|
|
|
154
158
|
});
|
|
155
159
|
const renderPasskeysButtonEndSlot = () => {
|
|
156
160
|
if (isTurnkeyWalletWithAuthenticator)
|
|
157
|
-
return (jsxRuntime.jsx(checkCircle.ReactComponent, { className: '
|
|
161
|
+
return (jsxRuntime.jsx(checkCircle.ReactComponent, { className: 'settings-view__body__section__button__icon-secondary--success' }));
|
|
158
162
|
if (isLoading)
|
|
159
163
|
return jsxRuntime.jsx(spinner.Spinner, {});
|
|
160
164
|
return jsxRuntime.jsx(add.ReactComponent, {});
|
|
161
165
|
};
|
|
162
166
|
const renderEmailButtonEndSlot = () => {
|
|
163
167
|
if (hasRecoveryEmail)
|
|
164
|
-
return (jsxRuntime.jsx(checkCircle.ReactComponent, { className: '
|
|
168
|
+
return (jsxRuntime.jsx(checkCircle.ReactComponent, { className: 'settings-view__body__section__button__icon-secondary--success' }));
|
|
165
169
|
if (isLoading)
|
|
166
170
|
return jsxRuntime.jsx(spinner.Spinner, {});
|
|
167
171
|
return jsxRuntime.jsx(add.ReactComponent, { "data-testid": 'email-add-icon' });
|
|
168
172
|
};
|
|
169
|
-
const
|
|
170
|
-
const
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
'wallet-settings-view__body__section__button__badge': !isTurnkeyWalletWithAuthenticator,
|
|
176
|
-
}), startSlot:
|
|
173
|
+
const wallet = getEOAWallet.getEOAWallet(primaryWallet, (user === null || user === void 0 ? void 0 : user.verifiedCredentials) || []);
|
|
174
|
+
const isEmbeddedWallet = Boolean(wallet &&
|
|
175
|
+
(((_m = (_l = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _l === void 0 ? void 0 : _l.key) === null || _m === void 0 ? void 0 : _m.startsWith('turnkey')) ||
|
|
176
|
+
((_p = (_o = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _o === void 0 ? void 0 : _o.key) === null || _p === void 0 ? void 0 : _p.startsWith('coinbasempc'))));
|
|
177
|
+
const isMfaEnabled = Boolean((_r = (_q = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.security) === null || _q === void 0 ? void 0 : _q.mfa) === null || _r === void 0 ? void 0 : _r.enabled);
|
|
178
|
+
return (jsxRuntime.jsxs("div", { className: 'settings-view', children: [jsxRuntime.jsx(ModalHeader.ModalHeader, { children: jsxRuntime.jsx("div", { className: 'settings-view__header', children: jsxRuntime.jsx(Typography.Typography, { variant: 'title', color: 'primary', copykey: 'dyn_settings.title', children: t('dyn_settings.title') }) }) }), jsxRuntime.jsxs("div", { className: 'settings-view__body', children: [jsxRuntime.jsxs("div", { className: 'settings-view__body__section', children: [jsxRuntime.jsx("div", { className: 'settings-view__body__section__title', children: t('dyn_settings.global_section.title') }), jsxRuntime.jsx(TypographyButton.TypographyButton, { dataTestId: 'currency-button', buttonClassName: classNames.classNames('settings-view__body__section__button', 'settings-view__body__section__button__badge'), startSlot:
|
|
177
179
|
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
178
|
-
jsxRuntime.jsxs("div", { className: '
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
180
|
+
jsxRuntime.jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(currency.ReactComponent, { className: 'settings-view__body__section__button__icon' }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.global_section.currency.badge', children: t('dyn_settings.global_section.currency.title') }), jsxRuntime.jsx(Badge.Badge, { text: t('dyn_settings.global_section.currency.badge'), copykey: 'dyn_settings.global_section.currency.badge', variant: 'secondary' })] }), endSlot: jsxRuntime.jsx(chevronLeft.ReactComponent, { className: 'settings-view__body__section__button__icon-secondary--rotate' }), disabled: true, showInternalLoading: false })] }), jsxRuntime.jsxs("div", { className: 'settings-view__body__section', children: [jsxRuntime.jsxs("div", { className: classNames.classNames('settings-view__body__section__title', {
|
|
181
|
+
'settings-view__body__section__title__info-icon': !isTurnkeyWalletWithAuthenticator,
|
|
182
|
+
}), children: [t('dyn_settings.security_section.title'), !isTurnkeyWalletWithAuthenticator && (jsxRuntime.jsx(Icon.Icon, { size: 'small', children: jsxRuntime.jsx(footerInfoIcon.ReactComponent, { className: 'settings-view__body__section__title__info-icon' }) }))] }), isPasskeyEnabled && isTurnkeyWallet && (jsxRuntime.jsx(TypographyButton.TypographyButton, { dataTestId: 'manage-passkeys-button', onClick: () => handlePasskeyClick(), buttonClassName: classNames.classNames('settings-view__body__section__button', {
|
|
183
|
+
'settings-view__body__section__button__badge': !isTurnkeyWalletWithAuthenticator,
|
|
184
|
+
}), startSlot:
|
|
183
185
|
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
184
|
-
jsxRuntime.jsxs("div", { className: '
|
|
186
|
+
jsxRuntime.jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(PasskeyDeviceIcon.PasskeyDeviceIcon, { className: 'settings-view__body__section__button__icon', defaultIcon: jsxRuntime.jsx(androidTouchId.ReactComponent, { "data-testid": 'default-icon' }) }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.security_section.passkey_button', children: t('dyn_settings.security_section.passkey_button') }), !isTurnkeyWalletWithAuthenticator && (jsxRuntime.jsx(Badge.Badge, { text: t('dyn_settings.tags.recommended'), copykey: 'dyn_settings.tags.recommended', variant: 'secondary' }))] }), endSlot: renderPasskeysButtonEndSlot(), disabled: isLoading, showInternalLoading: false })), isMfaEnabled && (jsxRuntime.jsx(TypographyButton.TypographyButton, { dataTestId: 'manage-mfa-button', onClick: () => setDynamicWidgetView('manage-mfa'), buttonClassName: 'settings-view__body__section__button', startSlot:
|
|
185
187
|
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
186
|
-
jsxRuntime.jsxs("div", { className: '
|
|
188
|
+
jsxRuntime.jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(shield.ReactComponent, { className: 'settings-view__body__section__button__icon' }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.security_section.mfa_button', children: t('dyn_settings.security_section.mfa_button') })] }), endSlot: jsxRuntime.jsx(chevronLeft.ReactComponent, { className: 'settings-view__body__section__button__icon-secondary--rotate' }), disabled: isLoading, showInternalLoading: false })), isCoinbaseWallet && (jsxRuntime.jsx(TypographyButton.TypographyButton, { dataTestId: 'manage-password-button', onClick: () => createPassword(!hasClaimedCoinbaseMPC), buttonClassName: 'settings-view__body__section__button', startSlot:
|
|
187
189
|
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
188
|
-
jsxRuntime.jsxs("div", { className: '
|
|
190
|
+
jsxRuntime.jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(altKey.ReactComponent, { className: 'settings-view__body__section__button__icon' }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.security_section.passkey_button', children: t('dyn_settings.security_section.password_button') })] }), endSlot: hasClaimedCoinbaseMPC ? (jsxRuntime.jsx(checkCircle.ReactComponent, { className: 'settings-view__body__section__button__icon-secondary--success' })) : undefined, showInternalLoading: false }))] }), isEmbeddedWallet && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [isTurnkeyWallet &&
|
|
191
|
+
!hasRecoveryEmail &&
|
|
192
|
+
!isSessionKeyCompatibleWallet && (jsxRuntime.jsxs("div", { className: 'settings-view__body__section', children: [jsxRuntime.jsxs("div", { className: classNames.classNames('settings-view__body__section__title', 'settings-view__body__section__title__info-icon'), children: [t('dyn_settings.identity_section.title'), jsxRuntime.jsx(Icon.Icon, { size: 'small', children: jsxRuntime.jsx(footerInfoIcon.ReactComponent, { className: 'settings-view__body__section__title__info-icon', "data-testid": 'email-info-icon-title' }) })] }), jsxRuntime.jsx(TypographyButton.TypographyButton, { dataTestId: 'manage-email-recovery-button', onClick: addEmbeddedWalletRecoveryEmail, buttonClassName: classNames.classNames('settings-view__body__section__button', 'settings-view__body__section__button__badge'), startSlot:
|
|
193
|
+
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
194
|
+
jsxRuntime.jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(signInWithEmail.ReactComponent, { className: 'settings-view__body__section__button__icon email' }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.identity_section.add_email_button', children: t('dyn_settings.identity_section.add_email_button') }), jsxRuntime.jsx(Badge.Badge, { text: t('dyn_settings.tags.recommended'), copykey: 'dyn_settings.tags.recommended', variant: 'secondary' })] }), endSlot: renderEmailButtonEndSlot(), disabled: isLoading || hasRecoveryEmail, showInternalLoading: false })] })), jsxRuntime.jsxs("div", { className: 'settings-view__body__section', children: [jsxRuntime.jsx("div", { className: 'settings-view__body__section__title', children: t('dyn_settings.export_section.title') }), jsxRuntime.jsx(TypographyButton.TypographyButton, { dataTestId: 'embedded-reveal-account-button', onClick: () => handleExportClick(), buttonClassName: 'settings-view__body__section__button', startSlot:
|
|
195
|
+
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
196
|
+
jsxRuntime.jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(exportPrivateKey.ReactComponent, { className: `settings-view__body__section__button__icon${theme.theme.name === 'dark' ? '__stroke' : ''}` }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.export_section.private_key_button', children: t('dyn_settings.export_section.private_key_button') })] }), endSlot: jsxRuntime.jsx(chevronLeft.ReactComponent, { className: 'settings-view__body__section__button__icon-secondary--rotate' }), showInternalLoading: false }), isTurnkeyHDWallet && (jsxRuntime.jsx(TypographyButton.TypographyButton, { dataTestId: 'embedded-reveal-button', onClick: () => handleExportClick(true), buttonClassName: 'settings-view__body__section__button', startSlot:
|
|
197
|
+
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
198
|
+
jsxRuntime.jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(exportRecoveryPhrase.ReactComponent, { className: `settings-view__body__section__button__icon${theme.theme.name === 'dark' ? '__stroke' : ''}` }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.export_section.srp_button', children: t('dyn_settings.export_section.srp_button') })] }), endSlot: jsxRuntime.jsx(chevronLeft.ReactComponent, { className: 'settings-view__body__section__button__icon-secondary--rotate' }), showInternalLoading: false }))] })] }))] }), jsxRuntime.jsx("div", { className: 'settings-view__logout-button-container', children: jsxRuntime.jsx(TypographyButton.TypographyButton, { buttonClassName: 'settings-view__logout-button-container__button', onClick: handleLogOut, dataTestId: 'logout-button', copykey: 'dyn_settings.buttonLogout', startSlot: jsxRuntime.jsx(logout.ReactComponent, {}), children: t('dyn_settings.button_logout') }) })] }));
|
|
189
199
|
};
|
|
190
200
|
|
|
191
|
-
exports.
|
|
201
|
+
exports.SettingsView = SettingsView;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use client'
|
|
2
2
|
import { __awaiter } from '../../../../../../_virtual/_tslib.js';
|
|
3
|
-
import { jsx,
|
|
3
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
4
4
|
import { useState } from 'react';
|
|
5
5
|
import { useTranslation } from 'react-i18next';
|
|
6
6
|
import { isCoinbaseMpcWalletConnector, isSessionKeyCompatibleWalletConnector } from '@dynamic-labs/wallet-connector-core';
|
|
@@ -22,7 +22,10 @@ import { ReactComponent as SvgChevronLeft } from '../../../../shared/assets/chev
|
|
|
22
22
|
import { ReactComponent as SvgExportPrivateKey } from '../../../../shared/assets/export-private-key.js';
|
|
23
23
|
import { ReactComponent as SvgExportRecoveryPhrase } from '../../../../shared/assets/export-recovery-phrase.js';
|
|
24
24
|
import { ReactComponent as SvgFooterInfoIcon } from '../../../../shared/assets/footer-info-icon.js';
|
|
25
|
+
import { ReactComponent as SvgLogout } from '../../../../shared/assets/logout.js';
|
|
25
26
|
import { ReactComponent as SvgSignInWithEmail } from '../../../../shared/assets/sign-in-with-email.js';
|
|
27
|
+
import { ReactComponent as SvgCurrency } from '../../../../shared/assets/currency.js';
|
|
28
|
+
import { ReactComponent as SvgShield } from '../../../../shared/assets/shield.js';
|
|
26
29
|
import '@dynamic-labs/wallet-book';
|
|
27
30
|
import '../../../../utils/constants/colors.js';
|
|
28
31
|
import '../../../../utils/constants/values.js';
|
|
@@ -37,6 +40,7 @@ import 'react-international-phone';
|
|
|
37
40
|
import '../../../../config/ApiEndpoint.js';
|
|
38
41
|
import '@dynamic-labs/store';
|
|
39
42
|
import '../../../../locale/locale.js';
|
|
43
|
+
import { getEOAWallet } from '../../../../utils/functions/getEOAWallet/getEOAWallet.js';
|
|
40
44
|
import '../../../../context/AccessDeniedContext/AccessDeniedContext.js';
|
|
41
45
|
import '../../../../context/AccountExistsContext/AccountExistsContext.js';
|
|
42
46
|
import '../../../../context/UserWalletsContext/UserWalletsContext.js';
|
|
@@ -70,10 +74,10 @@ import '../../components/DynamicWidgetHeader/DynamicWidgetHeader.js';
|
|
|
70
74
|
import 'react-focus-lock';
|
|
71
75
|
import { Icon } from '../../../../components/Icon/Icon.js';
|
|
72
76
|
import { useWidgetContext } from '../../context/DynamicWidgetContext.js';
|
|
73
|
-
import
|
|
77
|
+
import '../../../../components/IconButton/IconButton.js';
|
|
74
78
|
import '../../../../components/MenuList/Dropdown/Dropdown.js';
|
|
75
|
-
import 'formik';
|
|
76
79
|
import { TypographyButton } from '../../../../components/TypographyButton/TypographyButton.js';
|
|
80
|
+
import 'formik';
|
|
77
81
|
import '../../../../views/TransactionConfirmationView/helpers/transactionErrorMessage.js';
|
|
78
82
|
import { Spinner } from '../../../../components/Spinner/spinner.js';
|
|
79
83
|
import { ModalHeader } from '../../../../components/ModalHeader/ModalHeader.js';
|
|
@@ -106,10 +110,10 @@ import { useEmbeddedWalletAuthenticator } from '../../../../utils/hooks/useEmbed
|
|
|
106
110
|
import '../../../../components/InlineWidget/InlineWidget.js';
|
|
107
111
|
import 'qrcode';
|
|
108
112
|
|
|
109
|
-
const
|
|
110
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
111
|
-
const { projectSettings, primaryWallet, user } = useInternalDynamicContext();
|
|
112
|
-
const {
|
|
113
|
+
const SettingsView = () => {
|
|
114
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
|
115
|
+
const { projectSettings, primaryWallet, user, handleLogOut } = useInternalDynamicContext();
|
|
116
|
+
const { setDynamicWidgetView } = useWidgetContext();
|
|
113
117
|
const { addEmbeddedWalletRecoveryEmail } = useEmbeddedWalletAuthenticator();
|
|
114
118
|
const { createPassword } = useEmbeddedWallet();
|
|
115
119
|
const { initExportProcess } = useEmbeddedReveal();
|
|
@@ -150,38 +154,44 @@ const WalletSettingsView = () => {
|
|
|
150
154
|
});
|
|
151
155
|
const renderPasskeysButtonEndSlot = () => {
|
|
152
156
|
if (isTurnkeyWalletWithAuthenticator)
|
|
153
|
-
return (jsx(SvgCheckCircle, { className: '
|
|
157
|
+
return (jsx(SvgCheckCircle, { className: 'settings-view__body__section__button__icon-secondary--success' }));
|
|
154
158
|
if (isLoading)
|
|
155
159
|
return jsx(Spinner, {});
|
|
156
160
|
return jsx(SvgAdd, {});
|
|
157
161
|
};
|
|
158
162
|
const renderEmailButtonEndSlot = () => {
|
|
159
163
|
if (hasRecoveryEmail)
|
|
160
|
-
return (jsx(SvgCheckCircle, { className: '
|
|
164
|
+
return (jsx(SvgCheckCircle, { className: 'settings-view__body__section__button__icon-secondary--success' }));
|
|
161
165
|
if (isLoading)
|
|
162
166
|
return jsx(Spinner, {});
|
|
163
167
|
return jsx(SvgAdd, { "data-testid": 'email-add-icon' });
|
|
164
168
|
};
|
|
165
|
-
const
|
|
166
|
-
const
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
'wallet-settings-view__body__section__button__badge': !isTurnkeyWalletWithAuthenticator,
|
|
172
|
-
}), startSlot:
|
|
169
|
+
const wallet = getEOAWallet(primaryWallet, (user === null || user === void 0 ? void 0 : user.verifiedCredentials) || []);
|
|
170
|
+
const isEmbeddedWallet = Boolean(wallet &&
|
|
171
|
+
(((_m = (_l = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _l === void 0 ? void 0 : _l.key) === null || _m === void 0 ? void 0 : _m.startsWith('turnkey')) ||
|
|
172
|
+
((_p = (_o = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _o === void 0 ? void 0 : _o.key) === null || _p === void 0 ? void 0 : _p.startsWith('coinbasempc'))));
|
|
173
|
+
const isMfaEnabled = Boolean((_r = (_q = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.security) === null || _q === void 0 ? void 0 : _q.mfa) === null || _r === void 0 ? void 0 : _r.enabled);
|
|
174
|
+
return (jsxs("div", { className: 'settings-view', children: [jsx(ModalHeader, { children: jsx("div", { className: 'settings-view__header', children: jsx(Typography, { variant: 'title', color: 'primary', copykey: 'dyn_settings.title', children: t('dyn_settings.title') }) }) }), jsxs("div", { className: 'settings-view__body', children: [jsxs("div", { className: 'settings-view__body__section', children: [jsx("div", { className: 'settings-view__body__section__title', children: t('dyn_settings.global_section.title') }), jsx(TypographyButton, { dataTestId: 'currency-button', buttonClassName: classNames('settings-view__body__section__button', 'settings-view__body__section__button__badge'), startSlot:
|
|
173
175
|
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
174
|
-
jsxs("div", { className: '
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
176
|
+
jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsx(SvgCurrency, { className: 'settings-view__body__section__button__icon' }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.global_section.currency.badge', children: t('dyn_settings.global_section.currency.title') }), jsx(Badge, { text: t('dyn_settings.global_section.currency.badge'), copykey: 'dyn_settings.global_section.currency.badge', variant: 'secondary' })] }), endSlot: jsx(SvgChevronLeft, { className: 'settings-view__body__section__button__icon-secondary--rotate' }), disabled: true, showInternalLoading: false })] }), jsxs("div", { className: 'settings-view__body__section', children: [jsxs("div", { className: classNames('settings-view__body__section__title', {
|
|
177
|
+
'settings-view__body__section__title__info-icon': !isTurnkeyWalletWithAuthenticator,
|
|
178
|
+
}), children: [t('dyn_settings.security_section.title'), !isTurnkeyWalletWithAuthenticator && (jsx(Icon, { size: 'small', children: jsx(SvgFooterInfoIcon, { className: 'settings-view__body__section__title__info-icon' }) }))] }), isPasskeyEnabled && isTurnkeyWallet && (jsx(TypographyButton, { dataTestId: 'manage-passkeys-button', onClick: () => handlePasskeyClick(), buttonClassName: classNames('settings-view__body__section__button', {
|
|
179
|
+
'settings-view__body__section__button__badge': !isTurnkeyWalletWithAuthenticator,
|
|
180
|
+
}), startSlot:
|
|
179
181
|
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
180
|
-
jsxs("div", { className: '
|
|
182
|
+
jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsx(PasskeyDeviceIcon, { className: 'settings-view__body__section__button__icon', defaultIcon: jsx(SvgAndroidTouchId, { "data-testid": 'default-icon' }) }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.security_section.passkey_button', children: t('dyn_settings.security_section.passkey_button') }), !isTurnkeyWalletWithAuthenticator && (jsx(Badge, { text: t('dyn_settings.tags.recommended'), copykey: 'dyn_settings.tags.recommended', variant: 'secondary' }))] }), endSlot: renderPasskeysButtonEndSlot(), disabled: isLoading, showInternalLoading: false })), isMfaEnabled && (jsx(TypographyButton, { dataTestId: 'manage-mfa-button', onClick: () => setDynamicWidgetView('manage-mfa'), buttonClassName: 'settings-view__body__section__button', startSlot:
|
|
181
183
|
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
182
|
-
jsxs("div", { className: '
|
|
184
|
+
jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsx(SvgShield, { className: 'settings-view__body__section__button__icon' }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.security_section.mfa_button', children: t('dyn_settings.security_section.mfa_button') })] }), endSlot: jsx(SvgChevronLeft, { className: 'settings-view__body__section__button__icon-secondary--rotate' }), disabled: isLoading, showInternalLoading: false })), isCoinbaseWallet && (jsx(TypographyButton, { dataTestId: 'manage-password-button', onClick: () => createPassword(!hasClaimedCoinbaseMPC), buttonClassName: 'settings-view__body__section__button', startSlot:
|
|
183
185
|
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
184
|
-
jsxs("div", { className: '
|
|
186
|
+
jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsx(SvgAltKey, { className: 'settings-view__body__section__button__icon' }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.security_section.passkey_button', children: t('dyn_settings.security_section.password_button') })] }), endSlot: hasClaimedCoinbaseMPC ? (jsx(SvgCheckCircle, { className: 'settings-view__body__section__button__icon-secondary--success' })) : undefined, showInternalLoading: false }))] }), isEmbeddedWallet && (jsxs(Fragment, { children: [isTurnkeyWallet &&
|
|
187
|
+
!hasRecoveryEmail &&
|
|
188
|
+
!isSessionKeyCompatibleWallet && (jsxs("div", { className: 'settings-view__body__section', children: [jsxs("div", { className: classNames('settings-view__body__section__title', 'settings-view__body__section__title__info-icon'), children: [t('dyn_settings.identity_section.title'), jsx(Icon, { size: 'small', children: jsx(SvgFooterInfoIcon, { className: 'settings-view__body__section__title__info-icon', "data-testid": 'email-info-icon-title' }) })] }), jsx(TypographyButton, { dataTestId: 'manage-email-recovery-button', onClick: addEmbeddedWalletRecoveryEmail, buttonClassName: classNames('settings-view__body__section__button', 'settings-view__body__section__button__badge'), startSlot:
|
|
189
|
+
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
190
|
+
jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsx(SvgSignInWithEmail, { className: 'settings-view__body__section__button__icon email' }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.identity_section.add_email_button', children: t('dyn_settings.identity_section.add_email_button') }), jsx(Badge, { text: t('dyn_settings.tags.recommended'), copykey: 'dyn_settings.tags.recommended', variant: 'secondary' })] }), endSlot: renderEmailButtonEndSlot(), disabled: isLoading || hasRecoveryEmail, showInternalLoading: false })] })), jsxs("div", { className: 'settings-view__body__section', children: [jsx("div", { className: 'settings-view__body__section__title', children: t('dyn_settings.export_section.title') }), jsx(TypographyButton, { dataTestId: 'embedded-reveal-account-button', onClick: () => handleExportClick(), buttonClassName: 'settings-view__body__section__button', startSlot:
|
|
191
|
+
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
192
|
+
jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsx(SvgExportPrivateKey, { className: `settings-view__body__section__button__icon${theme.theme.name === 'dark' ? '__stroke' : ''}` }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.export_section.private_key_button', children: t('dyn_settings.export_section.private_key_button') })] }), endSlot: jsx(SvgChevronLeft, { className: 'settings-view__body__section__button__icon-secondary--rotate' }), showInternalLoading: false }), isTurnkeyHDWallet && (jsx(TypographyButton, { dataTestId: 'embedded-reveal-button', onClick: () => handleExportClick(true), buttonClassName: 'settings-view__body__section__button', startSlot:
|
|
193
|
+
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
194
|
+
jsxs("div", { className: 'settings-view__body__section__button__start-slot', children: [jsx(SvgExportRecoveryPhrase, { className: `settings-view__body__section__button__icon${theme.theme.name === 'dark' ? '__stroke' : ''}` }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_settings.export_section.srp_button', children: t('dyn_settings.export_section.srp_button') })] }), endSlot: jsx(SvgChevronLeft, { className: 'settings-view__body__section__button__icon-secondary--rotate' }), showInternalLoading: false }))] })] }))] }), jsx("div", { className: 'settings-view__logout-button-container', children: jsx(TypographyButton, { buttonClassName: 'settings-view__logout-button-container__button', onClick: handleLogOut, dataTestId: 'logout-button', copykey: 'dyn_settings.buttonLogout', startSlot: jsx(SvgLogout, {}), children: t('dyn_settings.button_logout') }) })] }));
|
|
185
195
|
};
|
|
186
196
|
|
|
187
|
-
export {
|
|
197
|
+
export { SettingsView };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { SettingsView } from './SettingsView';
|