@dynamic-labs/sdk-react-core 2.0.0-alpha.31 → 2.0.0-alpha.32

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.
Files changed (126) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/package.cjs +2 -2
  3. package/package.js +2 -2
  4. package/package.json +14 -14
  5. package/src/index.d.ts +1 -1
  6. package/src/lib/context/ConnectWithOtpContext/utils/createEmailHandler.cjs +21 -6
  7. package/src/lib/context/ConnectWithOtpContext/utils/createEmailHandler.js +16 -1
  8. package/src/lib/context/ConnectWithOtpContext/utils/createSmsHandler.cjs +17 -3
  9. package/src/lib/context/ConnectWithOtpContext/utils/createSmsHandler.js +15 -1
  10. package/src/lib/context/ConnectWithOtpContext/utils/findEmailProvider.cjs +19 -4
  11. package/src/lib/context/ConnectWithOtpContext/utils/findEmailProvider.js +16 -1
  12. package/src/lib/context/DynamicContext/DynamicContext.cjs +17 -17
  13. package/src/lib/context/DynamicContext/DynamicContext.js +3 -3
  14. package/src/lib/context/DynamicContext/hooks/useHandleLogout/useHandleLogout.cjs +6 -6
  15. package/src/lib/context/DynamicContext/hooks/useHandleLogout/useHandleLogout.js +5 -5
  16. package/src/lib/context/FundingContext/FundingContext.cjs +6 -6
  17. package/src/lib/context/FundingContext/FundingContext.js +5 -5
  18. package/src/lib/context/PasskeyContext/PasskeyContext.cjs +4 -4
  19. package/src/lib/context/PasskeyContext/PasskeyContext.js +3 -3
  20. package/src/lib/data/api/api.cjs +24 -0
  21. package/src/lib/data/api/api.d.ts +2 -0
  22. package/src/lib/data/api/api.js +20 -0
  23. package/src/lib/data/api/email/email.cjs +118 -0
  24. package/src/lib/data/api/email/email.d.ts +26 -0
  25. package/src/lib/data/api/email/email.js +110 -0
  26. package/src/lib/data/api/email/index.d.ts +1 -0
  27. package/src/lib/data/api/embeddedWallets/embeddedWallets.cjs +191 -0
  28. package/src/lib/data/api/embeddedWallets/embeddedWallets.d.ts +30 -0
  29. package/src/lib/data/api/embeddedWallets/embeddedWallets.js +177 -0
  30. package/src/lib/data/api/embeddedWallets/index.d.ts +2 -0
  31. package/src/lib/data/api/embeddedWallets/types.d.ts +39 -0
  32. package/src/lib/data/api/index.d.ts +10 -0
  33. package/src/lib/data/api/oauth/index.d.ts +1 -0
  34. package/src/lib/data/api/oauth/oauth.cjs +136 -0
  35. package/src/lib/data/api/oauth/oauth.d.ts +11 -0
  36. package/src/lib/data/api/oauth/oauth.js +128 -0
  37. package/src/lib/data/api/onramp/index.d.ts +1 -0
  38. package/src/lib/data/api/onramp/onramp.cjs +22 -0
  39. package/src/lib/data/api/onramp/onramp.d.ts +8 -0
  40. package/src/lib/data/api/onramp/onramp.js +18 -0
  41. package/src/lib/data/api/session/index.d.ts +1 -0
  42. package/src/lib/data/api/session/session.cjs +77 -0
  43. package/src/lib/data/api/session/session.d.ts +17 -0
  44. package/src/lib/data/api/session/session.js +69 -0
  45. package/src/lib/data/api/settings/index.d.ts +1 -0
  46. package/src/lib/data/api/settings/settings.cjs +58 -0
  47. package/src/lib/data/api/settings/settings.d.ts +7 -0
  48. package/src/lib/data/api/settings/settings.js +53 -0
  49. package/src/lib/data/api/sms/index.d.ts +1 -0
  50. package/src/lib/data/api/sms/sms.cjs +102 -0
  51. package/src/lib/data/api/sms/sms.d.ts +32 -0
  52. package/src/lib/data/api/sms/sms.js +95 -0
  53. package/src/lib/data/api/user/index.d.ts +1 -0
  54. package/src/lib/data/api/user/user.cjs +77 -0
  55. package/src/lib/data/api/user/user.d.ts +9 -0
  56. package/src/lib/data/api/user/user.js +71 -0
  57. package/src/lib/data/api/utils.cjs +20 -0
  58. package/src/lib/data/api/utils.d.ts +1 -0
  59. package/src/lib/data/api/utils.js +16 -0
  60. package/src/lib/data/api/wallets/index.d.ts +1 -0
  61. package/src/lib/data/api/wallets/wallets.cjs +137 -0
  62. package/src/lib/data/api/wallets/wallets.d.ts +10 -0
  63. package/src/lib/data/api/wallets/wallets.js +130 -0
  64. package/src/lib/data/index.d.ts +1 -0
  65. package/src/lib/shared/types/dynamicEventsCallbacks.d.ts +3 -4
  66. package/src/lib/shared/types/general.d.ts +1 -0
  67. package/src/lib/utils/functions/getCoinbaseMPCConnectorFetchers/getCoinbaseMPCConnectorFetchers.cjs +18 -4
  68. package/src/lib/utils/functions/getCoinbaseMPCConnectorFetchers/getCoinbaseMPCConnectorFetchers.js +15 -1
  69. package/src/lib/utils/functions/handleUnlinkHelper/handleUnlinkHelper.cjs +6 -4
  70. package/src/lib/utils/functions/handleUnlinkHelper/handleUnlinkHelper.js +5 -3
  71. package/src/lib/utils/hooks/authenticationHooks/useOtpVerificationRequest/useOtpVerificationRequest.cjs +4 -3
  72. package/src/lib/utils/hooks/authenticationHooks/useOtpVerificationRequest/useOtpVerificationRequest.d.ts +3 -3
  73. package/src/lib/utils/hooks/authenticationHooks/useOtpVerificationRequest/useOtpVerificationRequest.js +3 -2
  74. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +4 -2
  75. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +3 -1
  76. package/src/lib/utils/hooks/useEmailProvider/useEmailProvider.cjs +6 -6
  77. package/src/lib/utils/hooks/useEmailProvider/useEmailProvider.js +3 -3
  78. package/src/lib/utils/hooks/useEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.cjs +4 -4
  79. package/src/lib/utils/hooks/useEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.js +3 -3
  80. package/src/lib/utils/hooks/useEmbeddedWalletPassword/useEmbeddedWalletPassword.cjs +4 -4
  81. package/src/lib/utils/hooks/useEmbeddedWalletPassword/useEmbeddedWalletPassword.js +3 -3
  82. package/src/lib/utils/hooks/useFetchNonce/useFetchNonce.cjs +6 -4
  83. package/src/lib/utils/hooks/useFetchNonce/useFetchNonce.js +3 -1
  84. package/src/lib/utils/hooks/useFetchProjectSettings/useFetchProjectSettings.cjs +6 -6
  85. package/src/lib/utils/hooks/useFetchProjectSettings/useFetchProjectSettings.js +3 -3
  86. package/src/lib/utils/hooks/useHandleVerificationRequired/useHandleVerificationRequired.d.ts +4 -4
  87. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.cjs +8 -8
  88. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.js +3 -3
  89. package/src/lib/utils/hooks/useSendDynamicProps/useSendDynamicProps.cjs +9 -6
  90. package/src/lib/utils/hooks/useSendDynamicProps/useSendDynamicProps.js +4 -1
  91. package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.cjs +4 -4
  92. package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.js +3 -3
  93. package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.cjs +7 -7
  94. package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.js +3 -3
  95. package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs +4 -4
  96. package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js +3 -3
  97. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +5 -5
  98. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +3 -3
  99. package/src/lib/views/EmailUpdate/EmailUpdate.cjs +4 -4
  100. package/src/lib/views/EmailUpdate/EmailUpdate.js +3 -3
  101. package/src/lib/views/EmailVerification/EmailVerification.cjs +11 -11
  102. package/src/lib/views/EmailVerification/EmailVerification.js +3 -3
  103. package/src/lib/views/EmbeddedReveal/utils/turnkeyExport/turnkeyExport.cjs +4 -2
  104. package/src/lib/views/EmbeddedReveal/utils/turnkeyExport/turnkeyExport.js +3 -1
  105. package/src/lib/views/LoginView/sections/PhoneNumberSignInSection/useSubmitPhoneNumber/useSubmitPhoneNumber.cjs +3 -3
  106. package/src/lib/views/LoginView/sections/PhoneNumberSignInSection/useSubmitPhoneNumber/useSubmitPhoneNumber.js +2 -2
  107. package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.cjs +7 -7
  108. package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.js +3 -3
  109. package/src/lib/views/Passkey/RenamePasskeyView/RenamePasskeyView.cjs +4 -4
  110. package/src/lib/views/Passkey/RenamePasskeyView/RenamePasskeyView.js +3 -3
  111. package/src/lib/views/Passkey/utils/createEmbeddedWalletWithPasskey/createEmbeddedWalletWithPasskey.cjs +4 -2
  112. package/src/lib/views/Passkey/utils/createEmbeddedWalletWithPasskey/createEmbeddedWalletWithPasskey.js +3 -1
  113. package/src/lib/views/Passkey/utils/createPregeneratedWallet/createPregeneratedWallet.cjs +4 -2
  114. package/src/lib/views/Passkey/utils/createPregeneratedWallet/createPregeneratedWallet.js +3 -1
  115. package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.cjs +11 -8
  116. package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.js +5 -2
  117. package/src/lib/views/SelectWalletInWalletGroupView/components/WalletGroupItem/index.d.ts +1 -0
  118. package/src/lib/views/SmsVerification/useSmsVerification/useSmsVerification.cjs +4 -4
  119. package/src/lib/views/SmsVerification/useSmsVerification/useSmsVerification.js +2 -2
  120. package/src/lib/views/WalletUsedView/WalletUsedView.cjs +4 -4
  121. package/src/lib/views/WalletUsedView/WalletUsedView.js +3 -3
  122. package/src/lib/widgets/DynamicWidget/views/WalletSettingsView/WalletSettingsView.cjs +6 -2
  123. package/src/lib/widgets/DynamicWidget/views/WalletSettingsView/WalletSettingsView.js +6 -2
  124. package/src/lib/data/api.cjs +0 -797
  125. package/src/lib/data/api.d.ts +0 -179
  126. package/src/lib/data/api.js +0 -753
@@ -1,9 +1,8 @@
1
1
  import { __awaiter } from '../../../../../../_virtual/_tslib.js';
2
2
  import { isPasskeyWalletConnector, isEmailWalletConnector } from '@dynamic-labs/wallet-connector-core';
3
3
  import { DynamicError } from '@dynamic-labs/utils';
4
- import { completePasskeyRecovery as completePasskeyRecovery$1, updatePasskeyRecoveryEmail, refreshUserJwt, initEmbeddedWalletSession as initEmbeddedWalletSession$1 } from '../../../../data/api.js';
5
- import { decodeJwt } from '../../../../shared/utils/functions/decodeJwt/decodeJwt.js';
6
4
  import '@dynamic-labs/sdk-api-core';
5
+ import { decodeJwt } from '../../../../shared/utils/functions/decodeJwt/decodeJwt.js';
7
6
  import '../../../../shared/logger.js';
8
7
  import '@dynamic-labs/iconic';
9
8
  import 'react/jsx-runtime';
@@ -15,6 +14,10 @@ import '../../../../utils/constants/colors.js';
15
14
  import '../../../../utils/constants/values.js';
16
15
  import { LocalStorage } from '../../../../shared/utils/classes/storage/localStorage.js';
17
16
  import '../../../../shared/consts/index.js';
17
+ import '../../../../config/ApiEndpoint.js';
18
+ import { completePasskeyRecovery as completePasskeyRecovery$1, updatePasskeyRecoveryEmail, initEmbeddedWalletSession as initEmbeddedWalletSession$1 } from '../../../../data/api/embeddedWallets/embeddedWallets.js';
19
+ import '../../../../locale/locale.js';
20
+ import { refreshUserJwt } from '../../../../data/api/user/user.js';
18
21
  import { findEmbeddedWalletFromVerifiedCredentials } from '../../../../utils/functions/findEmbeddedWalletFromVerifiedCredentials/findEmbeddedWalletFromVerifiedCredentials.js';
19
22
  import '@dynamic-labs/multi-wallet';
20
23
  import 'react-international-phone';
@@ -0,0 +1 @@
1
+ export { WalletGroupItem } from './WalletGroupItem';
@@ -26,7 +26,8 @@ require('@dynamic-labs/multi-wallet');
26
26
  var isTurnkeyEnabled = require('../../../utils/functions/isTurnkeyEnabled/isTurnkeyEnabled.cjs');
27
27
  require('viem');
28
28
  require('viem/chains');
29
- var api = require('../../../data/api.cjs');
29
+ require('../../../config/ApiEndpoint.cjs');
30
+ var sms = require('../../../data/api/sms/sms.cjs');
30
31
  require('../../../context/AccessDeniedContext/AccessDeniedContext.cjs');
31
32
  var AccountExistsContext = require('../../../context/AccountExistsContext/AccountExistsContext.cjs');
32
33
  require('../../../context/UserWalletsContext/UserWalletsContext.cjs');
@@ -71,7 +72,6 @@ require('../../../widgets/DynamicBridgeWidget/views/WalletsView/components/Secon
71
72
  require('../../../locale/locale.cjs');
72
73
  require('@hcaptcha/react-hcaptcha');
73
74
  require('../../../context/LoadingContext/LoadingContext.cjs');
74
- require('../../../config/ApiEndpoint.cjs');
75
75
  require('../../../context/FooterAnimationContext/index.cjs');
76
76
  require('../../LoginView/sections/PhoneNumberSignInSection/PhoneNumberSignInSection.cjs');
77
77
  require('../../../context/WalletGroupContext/WalletGroupContext.cjs');
@@ -113,7 +113,7 @@ const useSmsVerification = (type) => {
113
113
  goToInitialView();
114
114
  return;
115
115
  }
116
- api.retrySmsVerification({
116
+ sms.retrySmsVerification({
117
117
  environmentId,
118
118
  isoCountryCode: retryData.iso2,
119
119
  phoneCountryCode: retryData.dialCode,
@@ -172,7 +172,7 @@ const useSmsVerification = (type) => {
172
172
  return false;
173
173
  }
174
174
  try {
175
- const { jwt, minifiedJwt } = yield api.signInWithSmsVerification({
175
+ const { jwt, minifiedJwt } = yield sms.signInWithSmsVerification({
176
176
  environmentId,
177
177
  verificationToken,
178
178
  verificationUUID,
@@ -22,7 +22,8 @@ import '@dynamic-labs/multi-wallet';
22
22
  import { isTurnkeyEnabled } from '../../../utils/functions/isTurnkeyEnabled/isTurnkeyEnabled.js';
23
23
  import 'viem';
24
24
  import 'viem/chains';
25
- import { signInWithSmsVerification, retrySmsVerification } from '../../../data/api.js';
25
+ import '../../../config/ApiEndpoint.js';
26
+ import { signInWithSmsVerification, retrySmsVerification } from '../../../data/api/sms/sms.js';
26
27
  import '../../../context/AccessDeniedContext/AccessDeniedContext.js';
27
28
  import { useAccountExistsContext } from '../../../context/AccountExistsContext/AccountExistsContext.js';
28
29
  import '../../../context/UserWalletsContext/UserWalletsContext.js';
@@ -67,7 +68,6 @@ import '../../../widgets/DynamicBridgeWidget/views/WalletsView/components/Second
67
68
  import '../../../locale/locale.js';
68
69
  import '@hcaptcha/react-hcaptcha';
69
70
  import '../../../context/LoadingContext/LoadingContext.js';
70
- import '../../../config/ApiEndpoint.js';
71
71
  import '../../../context/FooterAnimationContext/index.js';
72
72
  import '../../LoginView/sections/PhoneNumberSignInSection/PhoneNumberSignInSection.js';
73
73
  import '../../../context/WalletGroupContext/WalletGroupContext.js';
@@ -28,7 +28,9 @@ require('react-international-phone');
28
28
  var getVerifyArgs = require('../../utils/functions/getVerifyArgs/getVerifyArgs.cjs');
29
29
  require('viem');
30
30
  require('viem/chains');
31
- var api = require('../../data/api.cjs');
31
+ require('../../config/ApiEndpoint.cjs');
32
+ require('../../locale/locale.cjs');
33
+ var wallets = require('../../data/api/wallets/wallets.cjs');
32
34
  var updateJWTAndCreateUserProfile = require('../../utils/functions/updateJWTAndCreateUserProfile/updateJWTAndCreateUserProfile.cjs');
33
35
  require('../../context/AccessDeniedContext/AccessDeniedContext.cjs');
34
36
  require('../../context/AccountExistsContext/AccountExistsContext.cjs');
@@ -47,7 +49,6 @@ require('../../context/MockContext/MockContext.cjs');
47
49
  require('../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs');
48
50
  require('../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
49
51
  require('@dynamic-labs/rpc-providers');
50
- require('../../locale/locale.cjs');
51
52
  var Typography = require('../../components/Typography/Typography.cjs');
52
53
  require('../../context/FooterAnimationContext/index.cjs');
53
54
  require('../../components/ShadowDOM/ShadowDOM.cjs');
@@ -80,7 +81,6 @@ require('qrcode');
80
81
  require('../WalletList/WalletList.cjs');
81
82
  require('../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.cjs');
82
83
  require('@hcaptcha/react-hcaptcha');
83
- require('../../config/ApiEndpoint.cjs');
84
84
  require('../LoginView/sections/PhoneNumberSignInSection/PhoneNumberSignInSection.cjs');
85
85
 
86
86
  const WalletUsedView = () => {
@@ -147,7 +147,7 @@ const WalletUsedView = () => {
147
147
  walletConnector,
148
148
  walletProvider,
149
149
  });
150
- const response = yield api.transferWallet(environmentId, verifyArgs, authToken);
150
+ const response = yield wallets.transferWallet(environmentId, verifyArgs, authToken);
151
151
  const userProfile = updateJWTAndCreateUserProfile.updateJWTAndCreateUserProfile(response === null || response === void 0 ? void 0 : response.jwt, response === null || response === void 0 ? void 0 : response.minifiedJwt);
152
152
  updatePrimaryWalletId(walletConnector, userProfile);
153
153
  setUser(userProfile);
@@ -24,7 +24,9 @@ import 'react-international-phone';
24
24
  import { getVerifyArgs } from '../../utils/functions/getVerifyArgs/getVerifyArgs.js';
25
25
  import 'viem';
26
26
  import 'viem/chains';
27
- import { transferWallet } from '../../data/api.js';
27
+ import '../../config/ApiEndpoint.js';
28
+ import '../../locale/locale.js';
29
+ import { transferWallet } from '../../data/api/wallets/wallets.js';
28
30
  import { updateJWTAndCreateUserProfile } from '../../utils/functions/updateJWTAndCreateUserProfile/updateJWTAndCreateUserProfile.js';
29
31
  import '../../context/AccessDeniedContext/AccessDeniedContext.js';
30
32
  import '../../context/AccountExistsContext/AccountExistsContext.js';
@@ -43,7 +45,6 @@ import '../../context/MockContext/MockContext.js';
43
45
  import '../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js';
44
46
  import '../../context/UserFieldEditorContext/UserFieldEditorContext.js';
45
47
  import '@dynamic-labs/rpc-providers';
46
- import '../../locale/locale.js';
47
48
  import { Typography } from '../../components/Typography/Typography.js';
48
49
  import '../../context/FooterAnimationContext/index.js';
49
50
  import '../../components/ShadowDOM/ShadowDOM.js';
@@ -76,7 +77,6 @@ import 'qrcode';
76
77
  import '../WalletList/WalletList.js';
77
78
  import '../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js';
78
79
  import '@hcaptcha/react-hcaptcha';
79
- import '../../config/ApiEndpoint.js';
80
80
  import '../LoginView/sections/PhoneNumberSignInSection/PhoneNumberSignInSection.js';
81
81
 
82
82
  const WalletUsedView = () => {
@@ -158,9 +158,13 @@ const WalletSettingsView = () => {
158
158
  // eslint-disable-next-line react/jsx-wrap-multilines
159
159
  jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(PasskeyDeviceIcon.PasskeyDeviceIcon, { className: 'wallet-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_wallet_settings.signing_section.passkey_button', children: t('dyn_wallet_settings.signing_section.passkey_button') }), !isTurnkeyWalletWithAuthenticator && (jsxRuntime.jsx(Badge.Badge, { text: t('dyn_wallet_settings.tags.recommended'), copykey: 'dyn_wallet_settings.tags.recommended', variant: 'secondary' }))] }), endSlot: renderPasskeysButtonEndSlot(), disabled: isLoading, showInternalLoading: false })), isCoinbaseWallet && (jsxRuntime.jsx(Button.Button, { dataTestId: 'manage-password-button', onClick: () => createPassword(!hasClaimedCoinbaseMPC), buttonClassName: 'wallet-settings-view__body__section__button', startSlot:
160
160
  // eslint-disable-next-line react/jsx-wrap-multilines
161
- jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(altKey.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon' }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.signing_section.passkey_button', children: t('dyn_wallet_settings.signing_section.password_button') })] }), endSlot: hasClaimedCoinbaseMPC ? (jsxRuntime.jsx(checkCircle.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon-secondary--success' })) : undefined, showInternalLoading: false }))] })), isTurnkeyWallet && !hasRecoveryEmail && (jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsxRuntime.jsxs("div", { className: classNames.classNames('wallet-settings-view__body__section__title', 'wallet-settings-view__body__section__title__info-icon'), children: [t('dyn_wallet_settings.identity_section.title'), jsxRuntime.jsx(Icon.Icon, { size: 'small', children: jsxRuntime.jsx(footerInfoIcon.ReactComponent, { className: 'wallet-settings-view__body__section__title__info-icon', "data-testid": 'email-info-icon-title' }) })] }), jsxRuntime.jsx(Button.Button, { dataTestId: 'manage-email-recovery-button', onClick: addEmbeddedWalletRecoveryEmail, buttonClassName: classNames.classNames('wallet-settings-view__body__section__button', 'wallet-settings-view__body__section__button__badge'), startSlot:
161
+ jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(altKey.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon' }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.signing_section.passkey_button', children: t('dyn_wallet_settings.signing_section.password_button') })] }), endSlot: hasClaimedCoinbaseMPC ? (jsxRuntime.jsx(checkCircle.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon-secondary--success' })) : undefined, showInternalLoading: false }))] })), isTurnkeyWallet && (jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsxRuntime.jsxs("div", { className: classNames.classNames('wallet-settings-view__body__section__title', {
162
+ 'wallet-settings-view__body__section__title__info-icon': !hasRecoveryEmail,
163
+ }), children: [t('dyn_wallet_settings.identity_section.title'), !hasRecoveryEmail && (jsxRuntime.jsx(Icon.Icon, { size: 'small', children: jsxRuntime.jsx(footerInfoIcon.ReactComponent, { className: 'wallet-settings-view__body__section__title__info-icon', "data-testid": 'email-info-icon-title' }) }))] }), jsxRuntime.jsx(Button.Button, { dataTestId: 'manage-email-recovery-button', onClick: addEmbeddedWalletRecoveryEmail, buttonClassName: classNames.classNames('wallet-settings-view__body__section__button', {
164
+ 'wallet-settings-view__body__section__button__badge': !hasRecoveryEmail,
165
+ }), startSlot:
162
166
  // eslint-disable-next-line react/jsx-wrap-multilines
163
- jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(signInWithEmail.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon email' }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.identity_section.add_email_button', children: t('dyn_wallet_settings.identity_section.add_email_button') }), jsxRuntime.jsx(Badge.Badge, { text: t('dyn_wallet_settings.tags.recommended'), copykey: 'dyn_wallet_settings.tags.recommended', variant: 'secondary' })] }), endSlot: renderEmailButtonEndSlot(), disabled: isLoading || hasRecoveryEmail, showInternalLoading: false })] })), jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsxRuntime.jsx("div", { className: 'wallet-settings-view__body__section__title', children: t('dyn_wallet_settings.export_section.title') }), jsxRuntime.jsx(Button.Button, { dataTestId: 'embedded-reveal-account-button', onClick: () => handleExportClick(), buttonClassName: 'wallet-settings-view__body__section__button', startSlot:
167
+ jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(signInWithEmail.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon email' }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.identity_section.add_email_button', children: t('dyn_wallet_settings.identity_section.add_email_button') }), !hasRecoveryEmail && (jsxRuntime.jsx(Badge.Badge, { text: t('dyn_wallet_settings.tags.recommended'), copykey: 'dyn_wallet_settings.tags.recommended', variant: 'secondary' }))] }), endSlot: renderEmailButtonEndSlot(), disabled: isLoading || hasRecoveryEmail, showInternalLoading: false })] })), jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsxRuntime.jsx("div", { className: 'wallet-settings-view__body__section__title', children: t('dyn_wallet_settings.export_section.title') }), jsxRuntime.jsx(Button.Button, { dataTestId: 'embedded-reveal-account-button', onClick: () => handleExportClick(), buttonClassName: 'wallet-settings-view__body__section__button', startSlot:
164
168
  // eslint-disable-next-line react/jsx-wrap-multilines
165
169
  jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(exportPrivateKey.ReactComponent, { className: `wallet-settings-view__body__section__button__icon${theme.theme.name === 'dark' ? '__stroke' : ''}` }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.export_section.private_key_button', children: t('dyn_wallet_settings.export_section.private_key_button') })] }), endSlot: jsxRuntime.jsx(chevronLeft.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon-secondary--rotate' }), showInternalLoading: false }), isTurnkeyHDWallet && (jsxRuntime.jsx(Button.Button, { dataTestId: 'embedded-reveal-button', onClick: () => handleExportClick(true), buttonClassName: 'wallet-settings-view__body__section__button', startSlot:
166
170
  // eslint-disable-next-line react/jsx-wrap-multilines
@@ -154,9 +154,13 @@ const WalletSettingsView = () => {
154
154
  // eslint-disable-next-line react/jsx-wrap-multilines
155
155
  jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsx(PasskeyDeviceIcon, { className: 'wallet-settings-view__body__section__button__icon', defaultIcon: jsx(SvgAndroidTouchId, { "data-testid": 'default-icon' }) }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.signing_section.passkey_button', children: t('dyn_wallet_settings.signing_section.passkey_button') }), !isTurnkeyWalletWithAuthenticator && (jsx(Badge, { text: t('dyn_wallet_settings.tags.recommended'), copykey: 'dyn_wallet_settings.tags.recommended', variant: 'secondary' }))] }), endSlot: renderPasskeysButtonEndSlot(), disabled: isLoading, showInternalLoading: false })), isCoinbaseWallet && (jsx(Button, { dataTestId: 'manage-password-button', onClick: () => createPassword(!hasClaimedCoinbaseMPC), buttonClassName: 'wallet-settings-view__body__section__button', startSlot:
156
156
  // eslint-disable-next-line react/jsx-wrap-multilines
157
- jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsx(SvgAltKey, { className: 'wallet-settings-view__body__section__button__icon' }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.signing_section.passkey_button', children: t('dyn_wallet_settings.signing_section.password_button') })] }), endSlot: hasClaimedCoinbaseMPC ? (jsx(SvgCheckCircle, { className: 'wallet-settings-view__body__section__button__icon-secondary--success' })) : undefined, showInternalLoading: false }))] })), isTurnkeyWallet && !hasRecoveryEmail && (jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsxs("div", { className: classNames('wallet-settings-view__body__section__title', 'wallet-settings-view__body__section__title__info-icon'), children: [t('dyn_wallet_settings.identity_section.title'), jsx(Icon, { size: 'small', children: jsx(SvgFooterInfoIcon, { className: 'wallet-settings-view__body__section__title__info-icon', "data-testid": 'email-info-icon-title' }) })] }), jsx(Button, { dataTestId: 'manage-email-recovery-button', onClick: addEmbeddedWalletRecoveryEmail, buttonClassName: classNames('wallet-settings-view__body__section__button', 'wallet-settings-view__body__section__button__badge'), startSlot:
157
+ jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsx(SvgAltKey, { className: 'wallet-settings-view__body__section__button__icon' }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.signing_section.passkey_button', children: t('dyn_wallet_settings.signing_section.password_button') })] }), endSlot: hasClaimedCoinbaseMPC ? (jsx(SvgCheckCircle, { className: 'wallet-settings-view__body__section__button__icon-secondary--success' })) : undefined, showInternalLoading: false }))] })), isTurnkeyWallet && (jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsxs("div", { className: classNames('wallet-settings-view__body__section__title', {
158
+ 'wallet-settings-view__body__section__title__info-icon': !hasRecoveryEmail,
159
+ }), children: [t('dyn_wallet_settings.identity_section.title'), !hasRecoveryEmail && (jsx(Icon, { size: 'small', children: jsx(SvgFooterInfoIcon, { className: 'wallet-settings-view__body__section__title__info-icon', "data-testid": 'email-info-icon-title' }) }))] }), jsx(Button, { dataTestId: 'manage-email-recovery-button', onClick: addEmbeddedWalletRecoveryEmail, buttonClassName: classNames('wallet-settings-view__body__section__button', {
160
+ 'wallet-settings-view__body__section__button__badge': !hasRecoveryEmail,
161
+ }), startSlot:
158
162
  // eslint-disable-next-line react/jsx-wrap-multilines
159
- jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsx(SvgSignInWithEmail, { className: 'wallet-settings-view__body__section__button__icon email' }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.identity_section.add_email_button', children: t('dyn_wallet_settings.identity_section.add_email_button') }), jsx(Badge, { text: t('dyn_wallet_settings.tags.recommended'), copykey: 'dyn_wallet_settings.tags.recommended', variant: 'secondary' })] }), endSlot: renderEmailButtonEndSlot(), disabled: isLoading || hasRecoveryEmail, showInternalLoading: false })] })), jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsx("div", { className: 'wallet-settings-view__body__section__title', children: t('dyn_wallet_settings.export_section.title') }), jsx(Button, { dataTestId: 'embedded-reveal-account-button', onClick: () => handleExportClick(), buttonClassName: 'wallet-settings-view__body__section__button', startSlot:
163
+ jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsx(SvgSignInWithEmail, { className: 'wallet-settings-view__body__section__button__icon email' }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.identity_section.add_email_button', children: t('dyn_wallet_settings.identity_section.add_email_button') }), !hasRecoveryEmail && (jsx(Badge, { text: t('dyn_wallet_settings.tags.recommended'), copykey: 'dyn_wallet_settings.tags.recommended', variant: 'secondary' }))] }), endSlot: renderEmailButtonEndSlot(), disabled: isLoading || hasRecoveryEmail, showInternalLoading: false })] })), jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsx("div", { className: 'wallet-settings-view__body__section__title', children: t('dyn_wallet_settings.export_section.title') }), jsx(Button, { dataTestId: 'embedded-reveal-account-button', onClick: () => handleExportClick(), buttonClassName: 'wallet-settings-view__body__section__button', startSlot:
160
164
  // eslint-disable-next-line react/jsx-wrap-multilines
161
165
  jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsx(SvgExportPrivateKey, { className: `wallet-settings-view__body__section__button__icon${theme.theme.name === 'dark' ? '__stroke' : ''}` }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.export_section.private_key_button', children: t('dyn_wallet_settings.export_section.private_key_button') })] }), endSlot: jsx(SvgChevronLeft, { className: 'wallet-settings-view__body__section__button__icon-secondary--rotate' }), showInternalLoading: false }), isTurnkeyHDWallet && (jsx(Button, { dataTestId: 'embedded-reveal-button', onClick: () => handleExportClick(true), buttonClassName: 'wallet-settings-view__body__section__button', startSlot:
162
166
  // eslint-disable-next-line react/jsx-wrap-multilines