@dynamic-labs/sdk-react-core 2.0.0-alpha.6 → 2.0.0-alpha.8

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 (166) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/package.cjs +4 -4
  3. package/package.js +4 -4
  4. package/package.json +16 -16
  5. package/src/index.cjs +3 -7
  6. package/src/index.d.ts +1 -2
  7. package/src/index.js +2 -2
  8. package/src/lib/components/Alert/Alert.cjs +1 -0
  9. package/src/lib/components/Alert/Alert.js +1 -0
  10. package/src/lib/components/Alert/Alert.types.d.ts +1 -1
  11. package/src/lib/components/ErrorContainer/ErrorContainer.cjs +1 -1
  12. package/src/lib/components/ErrorContainer/ErrorContainer.js +1 -1
  13. package/src/lib/components/NetworkPicker/NetworkPicker.cjs +4 -2
  14. package/src/lib/components/NetworkPicker/NetworkPicker.js +4 -2
  15. package/src/lib/components/ShadowDOM/ShadowDOM.cjs +2 -0
  16. package/src/lib/components/ShadowDOM/ShadowDOM.js +2 -1
  17. package/src/lib/components/SyncEmbeddedWalletAuthFlow/SyncEmbeddedWalletAuthFlow.cjs +26 -10
  18. package/src/lib/components/SyncEmbeddedWalletAuthFlow/SyncEmbeddedWalletAuthFlow.js +27 -11
  19. package/src/lib/components/index.d.ts +1 -0
  20. package/src/lib/context/DynamicContext/DynamicContext.cjs +16 -17
  21. package/src/lib/context/DynamicContext/DynamicContext.d.ts +3 -4
  22. package/src/lib/context/DynamicContext/DynamicContext.js +17 -18
  23. package/src/lib/context/DynamicContext/helpers/helpers.cjs +10 -0
  24. package/src/lib/context/DynamicContext/helpers/helpers.d.ts +5 -0
  25. package/src/lib/context/DynamicContext/helpers/helpers.js +10 -1
  26. package/src/lib/context/DynamicContext/hooks/useHandleLogout/types.d.ts +0 -1
  27. package/src/lib/context/DynamicContext/hooks/useHandleLogout/useHandleLogout.cjs +1 -1
  28. package/src/lib/context/DynamicContext/hooks/useHandleLogout/useHandleLogout.js +1 -1
  29. package/src/lib/context/DynamicContext/hooks/useShowAuthFlow/useShowAuthFlow.cjs +1 -0
  30. package/src/lib/context/DynamicContext/hooks/useShowAuthFlow/useShowAuthFlow.d.ts +8 -7
  31. package/src/lib/context/DynamicContext/hooks/useShowAuthFlow/useShowAuthFlow.js +1 -0
  32. package/src/lib/context/DynamicContext/types/index.d.ts +14 -2
  33. package/src/lib/context/ErrorContext/ErrorContext.cjs +4 -0
  34. package/src/lib/context/ErrorContext/ErrorContext.d.ts +1 -0
  35. package/src/lib/context/ErrorContext/ErrorContext.js +4 -0
  36. package/src/lib/context/FundingContext/FundingContext.cjs +3 -1
  37. package/src/lib/context/FundingContext/FundingContext.js +3 -1
  38. package/src/lib/context/PasskeyContext/PasskeyContext.cjs +1 -0
  39. package/src/lib/context/PasskeyContext/PasskeyContext.js +1 -0
  40. package/src/lib/context/ViewContext/ViewContext.cjs +7 -0
  41. package/src/lib/context/ViewContext/ViewContext.js +7 -0
  42. package/src/lib/context/ViewContext/types/index.d.ts +5 -3
  43. package/src/lib/locale/en/translation.cjs +30 -16
  44. package/src/lib/locale/en/translation.d.ts +22 -8
  45. package/src/lib/locale/en/translation.js +30 -16
  46. package/src/lib/shared/types/localStorage.d.ts +1 -1
  47. package/src/lib/shared/utils/hooks/useGlobalLoading/useGlobalLoading.cjs +10 -28
  48. package/src/lib/shared/utils/hooks/useGlobalLoading/useGlobalLoading.d.ts +1 -5
  49. package/src/lib/shared/utils/hooks/useGlobalLoading/useGlobalLoading.js +10 -28
  50. package/src/lib/styles/index.shadow.cjs +1 -1
  51. package/src/lib/styles/index.shadow.js +1 -1
  52. package/src/lib/utils/functions/index.d.ts +1 -0
  53. package/src/lib/utils/functions/mergeNetworks/index.d.ts +1 -0
  54. package/src/lib/utils/functions/mergeNetworks/mergeNetworks.cjs +26 -0
  55. package/src/lib/utils/functions/mergeNetworks/mergeNetworks.d.ts +13 -0
  56. package/src/lib/utils/functions/mergeNetworks/mergeNetworks.js +22 -0
  57. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.cjs +4 -2
  58. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.js +4 -2
  59. package/src/lib/utils/hooks/authenticationHooks/useEmailVerificationRequest/useEmailVerificationRequest.cjs +1 -0
  60. package/src/lib/utils/hooks/authenticationHooks/useEmailVerificationRequest/useEmailVerificationRequest.js +1 -0
  61. package/src/lib/utils/hooks/index.d.ts +1 -0
  62. package/src/lib/utils/hooks/multiWallet/useMultiWallet/useMultiWallet.cjs +3 -13
  63. package/src/lib/utils/hooks/multiWallet/useMultiWallet/useMultiWallet.d.ts +1 -2
  64. package/src/lib/utils/hooks/multiWallet/useMultiWallet/useMultiWallet.js +3 -13
  65. package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.cjs +1 -1
  66. package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.js +1 -1
  67. package/src/lib/utils/hooks/useEmailProvider/useEmailProvider.cjs +1 -0
  68. package/src/lib/utils/hooks/useEmailProvider/useEmailProvider.js +1 -0
  69. package/src/lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.cjs +33 -8
  70. package/src/lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.js +33 -8
  71. package/src/lib/utils/hooks/useEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.cjs +1 -0
  72. package/src/lib/utils/hooks/useEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.js +1 -0
  73. package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.cjs +27 -5
  74. package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.js +27 -5
  75. package/src/lib/utils/hooks/useEmbeddedWalletPassword/useEmbeddedWalletPassword.cjs +7 -6
  76. package/src/lib/utils/hooks/useEmbeddedWalletPassword/useEmbeddedWalletPassword.d.ts +1 -1
  77. package/src/lib/utils/hooks/useEmbeddedWalletPassword/useEmbeddedWalletPassword.js +7 -6
  78. package/src/lib/utils/hooks/useHandleUnlinkWallet/useHandleUnlinkWallet.cjs +2 -6
  79. package/src/lib/utils/hooks/useHandleUnlinkWallet/useHandleUnlinkWallet.js +2 -6
  80. package/src/lib/utils/hooks/useProcessNetworkConfigurations/useProcessNetworkConfigurations.cjs +20 -54
  81. package/src/lib/utils/hooks/useProcessNetworkConfigurations/useProcessNetworkConfigurations.d.ts +5 -3
  82. package/src/lib/utils/hooks/useProcessNetworkConfigurations/useProcessNetworkConfigurations.js +20 -54
  83. package/src/lib/utils/hooks/useSetWalletConnectorFetchers/index.d.ts +1 -0
  84. package/src/lib/utils/hooks/useSetWalletConnectorFetchers/useSetWalletConnectorFetchers.cjs +38 -0
  85. package/src/lib/utils/hooks/useSetWalletConnectorFetchers/useSetWalletConnectorFetchers.d.ts +2 -0
  86. package/src/lib/utils/hooks/useSetWalletConnectorFetchers/useSetWalletConnectorFetchers.js +34 -0
  87. package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.cjs +1 -0
  88. package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.js +1 -0
  89. package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.cjs +8 -11
  90. package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.js +8 -11
  91. package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs +1 -0
  92. package/src/lib/utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js +1 -0
  93. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +1 -0
  94. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +1 -0
  95. package/src/lib/utils/hooks/useWalletConnectors/utils/findWallet/findWallet.cjs +4 -7
  96. package/src/lib/utils/hooks/useWalletConnectors/utils/findWallet/findWallet.js +4 -7
  97. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.cjs +1 -1
  98. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.js +1 -1
  99. package/src/lib/views/BridgeSummaryView/BridgeSummaryView.cjs +1 -1
  100. package/src/lib/views/BridgeSummaryView/BridgeSummaryView.js +1 -1
  101. package/src/lib/views/CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.cjs +1 -1
  102. package/src/lib/views/CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.js +1 -1
  103. package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.cjs +3 -8
  104. package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.js +3 -8
  105. package/src/lib/views/{CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.cjs → CollectUserDataViewNoWallet/CollectUserDataViewNoWallet.cjs} +5 -4
  106. package/src/lib/views/CollectUserDataViewNoWallet/CollectUserDataViewNoWallet.d.ts +13 -0
  107. package/src/lib/views/{CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.js → CollectUserDataViewNoWallet/CollectUserDataViewNoWallet.js} +5 -4
  108. package/src/lib/views/CollectUserDataViewNoWallet/index.d.ts +1 -0
  109. package/src/lib/views/CreatePasswordView/CreatePasswordStep/CreatePasswordStep.cjs +17 -2
  110. package/src/lib/views/CreatePasswordView/CreatePasswordStep/CreatePasswordStep.js +17 -2
  111. package/src/lib/views/CreatePasswordView/CreatePasswordView.cjs +12 -13
  112. package/src/lib/views/CreatePasswordView/CreatePasswordView.d.ts +2 -0
  113. package/src/lib/views/CreatePasswordView/CreatePasswordView.js +12 -13
  114. package/src/lib/views/EmailUpdate/EmailUpdate.cjs +1 -0
  115. package/src/lib/views/EmailUpdate/EmailUpdate.js +1 -0
  116. package/src/lib/views/EmailVerification/EmailVerification.cjs +10 -17
  117. package/src/lib/views/EmailVerification/EmailVerification.js +10 -17
  118. package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.cjs +40 -13
  119. package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.d.ts +2 -3
  120. package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.js +40 -13
  121. package/src/lib/views/EmbeddedReveal/utils/turnkeyExport/turnkeyExport.d.ts +1 -1
  122. package/src/lib/views/EnterPasswordView/EnterPasswordView.cjs +8 -1
  123. package/src/lib/views/EnterPasswordView/EnterPasswordView.js +8 -1
  124. package/src/lib/views/LoginView/sections/PhoneNumberSignInSection/usePhoneInputLogic/usePhoneInputLogic.cjs +1 -0
  125. package/src/lib/views/LoginView/sections/PhoneNumberSignInSection/usePhoneInputLogic/usePhoneInputLogic.js +1 -0
  126. package/src/lib/views/LoginView/useLoginView/useLoginView.cjs +11 -5
  127. package/src/lib/views/LoginView/useLoginView/useLoginView.js +11 -5
  128. package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.cjs +1 -0
  129. package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.js +1 -0
  130. package/src/lib/views/Passkey/EmbeddedAuthChoice/EmbeddedAuthChoice.d.ts +2 -3
  131. package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.d.ts +2 -3
  132. package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.d.ts +2 -3
  133. package/src/lib/views/Passkey/RenamePasskeyView/RenamePasskeyView.cjs +1 -0
  134. package/src/lib/views/Passkey/RenamePasskeyView/RenamePasskeyView.js +1 -0
  135. package/src/lib/views/SmsVerification/useSmsVerification/useSmsVerification.cjs +31 -7
  136. package/src/lib/views/SmsVerification/useSmsVerification/useSmsVerification.js +31 -7
  137. package/src/lib/views/WalletUsedView/WalletUsedView.cjs +1 -0
  138. package/src/lib/views/WalletUsedView/WalletUsedView.js +1 -0
  139. package/src/lib/views/viewToComponentMap.cjs +4 -4
  140. package/src/lib/views/viewToComponentMap.d.ts +60 -2
  141. package/src/lib/views/viewToComponentMap.js +4 -4
  142. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.cjs +1 -1
  143. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js +1 -1
  144. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.cjs +6 -4
  145. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.js +6 -4
  146. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.cjs +5 -2
  147. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.js +5 -2
  148. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/PendingAccountSwitchModal.cjs +2 -14
  149. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/PendingAccountSwitchModal.js +2 -14
  150. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.cjs +3 -1
  151. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.js +4 -2
  152. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.cjs +2 -14
  153. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.js +2 -14
  154. package/src/lib/widgets/DynamicWidget/views/WalletSettingsView/WalletSettingsView.cjs +18 -9
  155. package/src/lib/widgets/DynamicWidget/views/WalletSettingsView/WalletSettingsView.js +18 -9
  156. package/src/lib/utils/functions/isSameWalletName/index.d.ts +0 -1
  157. package/src/lib/utils/functions/isSameWalletName/isSameWalletName.cjs +0 -9
  158. package/src/lib/utils/functions/isSameWalletName/isSameWalletName.d.ts +0 -1
  159. package/src/lib/utils/functions/isSameWalletName/isSameWalletName.js +0 -5
  160. package/src/lib/utils/hooks/useProcessNetworkConfigurations/utils/index.d.ts +0 -1
  161. package/src/lib/utils/hooks/useProcessNetworkConfigurations/utils/mergeCustomerEvmNetworksWithServerNetworks/index.d.ts +0 -1
  162. package/src/lib/utils/hooks/useProcessNetworkConfigurations/utils/mergeCustomerEvmNetworksWithServerNetworks/mergeCustomerEvmNetworksWithServerNetworks.cjs +0 -16
  163. package/src/lib/utils/hooks/useProcessNetworkConfigurations/utils/mergeCustomerEvmNetworksWithServerNetworks/mergeCustomerEvmNetworksWithServerNetworks.d.ts +0 -2
  164. package/src/lib/utils/hooks/useProcessNetworkConfigurations/utils/mergeCustomerEvmNetworksWithServerNetworks/mergeCustomerEvmNetworksWithServerNetworks.js +0 -12
  165. package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.d.ts +0 -2
  166. package/src/lib/views/CollectUserDataViewLoginWithEmail/index.d.ts +0 -1
@@ -24,6 +24,7 @@ require('../../../context/CaptchaContext/CaptchaContext.cjs');
24
24
  require('../../../context/ErrorContext/ErrorContext.cjs');
25
25
  require('@dynamic-labs/multi-wallet');
26
26
  require('react-international-phone');
27
+ var isTurnkeyEnabled = require('../../../utils/functions/isTurnkeyEnabled/isTurnkeyEnabled.cjs');
27
28
  require('viem/chains');
28
29
  var api = require('../../../data/api.cjs');
29
30
  require('../../../context/AccessDeniedContext/AccessDeniedContext.cjs');
@@ -31,7 +32,7 @@ require('../../../context/AccountExistsContext/AccountExistsContext.cjs');
31
32
  var useCreateUserProfileByJWTCallback = require('../../../utils/hooks/useCreateUserProfileByJWTCallback/useCreateUserProfileByJWTCallback.cjs');
32
33
  var VerificationContext = require('../../../context/VerificationContext/VerificationContext.cjs');
33
34
  require('react-dom');
34
- require('../../../context/WalletContext/WalletContext.cjs');
35
+ var useEmbeddedWallet = require('../../../utils/hooks/useEmbeddedWallet/useEmbeddedWallet.cjs');
35
36
  require('../../../context/ThemeContext/ThemeContext.cjs');
36
37
  var useMutation = require('../../../utils/hooks/useMutation/useMutation.cjs');
37
38
  require('@dynamic-labs/types');
@@ -57,6 +58,7 @@ require('../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBa
57
58
  require('../../../components/Popper/Popper/Popper.cjs');
58
59
  require('../../../components/Popper/PopperContext/PopperContext.cjs');
59
60
  require('react-focus-lock');
61
+ require('../../../context/WalletContext/WalletContext.cjs');
60
62
  require('formik');
61
63
  require('qrcode');
62
64
  require('../../WalletList/WalletList.cjs');
@@ -65,6 +67,7 @@ require('../../../widgets/DynamicBridgeWidget/views/WalletsView/components/Secon
65
67
  require('i18next');
66
68
  require('@hcaptcha/react-hcaptcha');
67
69
  require('../../../context/LoadingContext/LoadingContext.cjs');
70
+ require('../../../config/ApiEndpoint.cjs');
68
71
  require('../../../context/FooterAnimationContext/index.cjs');
69
72
  require('../../LoginView/sections/PhoneNumberSignInSection/usePhoneInputLogic/usePhoneInputLogic.cjs');
70
73
  require('../../../context/WalletGroupContext/WalletGroupContext.cjs');
@@ -78,11 +81,14 @@ var useInternalDynamicContext = require('../../../context/DynamicContext/useDyna
78
81
 
79
82
  const sleepToShowSuccessMessage = () => utils.sleep(1500);
80
83
  const useSmsVerification = () => {
81
- const { verificationUUID, displayedDestination: formattedPhone = '', retryData, } = VerificationContext.useVerification();
82
- const { environmentId, handleLogOut, setOnboardingOnlyJwt, setCallback } = useInternalDynamicContext.useInternalDynamicContext();
84
+ var _a, _b;
85
+ const { verificationUUID, displayedDestination: formattedPhoneNoCountry = '', retryData, } = VerificationContext.useVerification();
86
+ const { environmentId, handleLogOut, setOnboardingOnlyJwt, setCallback, setShowAuthFlow, projectSettings, } = useInternalDynamicContext.useInternalDynamicContext();
83
87
  const { setView, goToInitialView } = ViewContext.useViewContext();
84
88
  const { createUserProfileByJWT } = useCreateUserProfileByJWTCallback.useCreateUserProfileByJWTCallback();
85
89
  const [error, setError] = React.useState();
90
+ const { createEmbeddedWallet } = useEmbeddedWallet.useEmbeddedWallet();
91
+ const isTurnkeyProviderEnabled = isTurnkeyEnabled.isTurnkeyEnabled(projectSettings);
86
92
  const retryOneTimePassword = () => _tslib.__awaiter(void 0, void 0, void 0, function* () {
87
93
  if (!verificationUUID || !retryData) {
88
94
  yield handleLogOut();
@@ -97,7 +103,11 @@ const useSmsVerification = () => {
97
103
  verificationUUID,
98
104
  });
99
105
  });
106
+ const formattedPhone = retryData
107
+ ? `+${retryData.dialCode} ${formattedPhoneNoCountry}`
108
+ : formattedPhoneNoCountry;
100
109
  const submitOtp = React.useCallback((verificationToken) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
110
+ var _c, _d;
101
111
  if (!verificationUUID) {
102
112
  yield handleLogOut();
103
113
  goToInitialView();
@@ -117,21 +127,37 @@ const useSmsVerification = () => {
117
127
  if (decodedJwt === null || decodedJwt === void 0 ? void 0 : decodedJwt.missingFields.length) {
118
128
  setOnboardingOnlyJwt(jwt);
119
129
  yield sleepToShowSuccessMessage();
120
- setView('collect-user-data');
130
+ setView('collect-user-data-login-no-wallet', {
131
+ userIdentification: 'phoneNumber',
132
+ userIdentificationOverride: formattedPhone,
133
+ });
121
134
  return true;
122
135
  }
123
136
  setCallback('authSuccess');
124
137
  // this timeout is set to make sure that the user will see success message
125
138
  yield sleepToShowSuccessMessage();
126
139
  yield createUserProfileByJWT(jwt);
140
+ if (isTurnkeyProviderEnabled &&
141
+ !((_d = (_c = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _c === void 0 ? void 0 : _c.embeddedWallets) === null || _d === void 0 ? void 0 : _d.automaticEmbeddedWalletCreation)) {
142
+ setShowAuthFlow(false);
143
+ return true;
144
+ }
145
+ // this function will check turnkey wallet enabled and create wallet if needed
146
+ // if not enabled, it will throw an error.
147
+ yield createEmbeddedWallet().catch(() => setShowAuthFlow(false));
127
148
  return true;
128
149
  }), [
150
+ createEmbeddedWallet,
129
151
  createUserProfileByJWT,
130
152
  environmentId,
153
+ formattedPhone,
131
154
  goToInitialView,
132
155
  handleLogOut,
156
+ isTurnkeyProviderEnabled,
157
+ (_b = (_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _a === void 0 ? void 0 : _a.embeddedWallets) === null || _b === void 0 ? void 0 : _b.automaticEmbeddedWalletCreation,
133
158
  setCallback,
134
159
  setOnboardingOnlyJwt,
160
+ setShowAuthFlow,
135
161
  setView,
136
162
  verificationUUID,
137
163
  ]);
@@ -153,9 +179,7 @@ const useSmsVerification = () => {
153
179
  });
154
180
  return {
155
181
  error,
156
- formattedPhone: retryData
157
- ? `+${retryData.dialCode} ${formattedPhone}`
158
- : formattedPhone,
182
+ formattedPhone,
159
183
  isLoading,
160
184
  isValid,
161
185
  onSubmit,
@@ -20,6 +20,7 @@ import '../../../context/CaptchaContext/CaptchaContext.js';
20
20
  import '../../../context/ErrorContext/ErrorContext.js';
21
21
  import '@dynamic-labs/multi-wallet';
22
22
  import 'react-international-phone';
23
+ import { isTurnkeyEnabled } from '../../../utils/functions/isTurnkeyEnabled/isTurnkeyEnabled.js';
23
24
  import 'viem/chains';
24
25
  import { signInWithSmsVerification, retrySmsVerification } from '../../../data/api.js';
25
26
  import '../../../context/AccessDeniedContext/AccessDeniedContext.js';
@@ -27,7 +28,7 @@ import '../../../context/AccountExistsContext/AccountExistsContext.js';
27
28
  import { useCreateUserProfileByJWTCallback } from '../../../utils/hooks/useCreateUserProfileByJWTCallback/useCreateUserProfileByJWTCallback.js';
28
29
  import { useVerification } from '../../../context/VerificationContext/VerificationContext.js';
29
30
  import 'react-dom';
30
- import '../../../context/WalletContext/WalletContext.js';
31
+ import { useEmbeddedWallet } from '../../../utils/hooks/useEmbeddedWallet/useEmbeddedWallet.js';
31
32
  import '../../../context/ThemeContext/ThemeContext.js';
32
33
  import { useMutation } from '../../../utils/hooks/useMutation/useMutation.js';
33
34
  import '@dynamic-labs/types';
@@ -53,6 +54,7 @@ import '../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBan
53
54
  import '../../../components/Popper/Popper/Popper.js';
54
55
  import '../../../components/Popper/PopperContext/PopperContext.js';
55
56
  import 'react-focus-lock';
57
+ import '../../../context/WalletContext/WalletContext.js';
56
58
  import 'formik';
57
59
  import 'qrcode';
58
60
  import '../../WalletList/WalletList.js';
@@ -61,6 +63,7 @@ import '../../../widgets/DynamicBridgeWidget/views/WalletsView/components/Second
61
63
  import 'i18next';
62
64
  import '@hcaptcha/react-hcaptcha';
63
65
  import '../../../context/LoadingContext/LoadingContext.js';
66
+ import '../../../config/ApiEndpoint.js';
64
67
  import '../../../context/FooterAnimationContext/index.js';
65
68
  import '../../LoginView/sections/PhoneNumberSignInSection/usePhoneInputLogic/usePhoneInputLogic.js';
66
69
  import '../../../context/WalletGroupContext/WalletGroupContext.js';
@@ -74,11 +77,14 @@ import { useInternalDynamicContext } from '../../../context/DynamicContext/useDy
74
77
 
75
78
  const sleepToShowSuccessMessage = () => sleep(1500);
76
79
  const useSmsVerification = () => {
77
- const { verificationUUID, displayedDestination: formattedPhone = '', retryData, } = useVerification();
78
- const { environmentId, handleLogOut, setOnboardingOnlyJwt, setCallback } = useInternalDynamicContext();
80
+ var _a, _b;
81
+ const { verificationUUID, displayedDestination: formattedPhoneNoCountry = '', retryData, } = useVerification();
82
+ const { environmentId, handleLogOut, setOnboardingOnlyJwt, setCallback, setShowAuthFlow, projectSettings, } = useInternalDynamicContext();
79
83
  const { setView, goToInitialView } = useViewContext();
80
84
  const { createUserProfileByJWT } = useCreateUserProfileByJWTCallback();
81
85
  const [error, setError] = useState();
86
+ const { createEmbeddedWallet } = useEmbeddedWallet();
87
+ const isTurnkeyProviderEnabled = isTurnkeyEnabled(projectSettings);
82
88
  const retryOneTimePassword = () => __awaiter(void 0, void 0, void 0, function* () {
83
89
  if (!verificationUUID || !retryData) {
84
90
  yield handleLogOut();
@@ -93,7 +99,11 @@ const useSmsVerification = () => {
93
99
  verificationUUID,
94
100
  });
95
101
  });
102
+ const formattedPhone = retryData
103
+ ? `+${retryData.dialCode} ${formattedPhoneNoCountry}`
104
+ : formattedPhoneNoCountry;
96
105
  const submitOtp = useCallback((verificationToken) => __awaiter(void 0, void 0, void 0, function* () {
106
+ var _c, _d;
97
107
  if (!verificationUUID) {
98
108
  yield handleLogOut();
99
109
  goToInitialView();
@@ -113,21 +123,37 @@ const useSmsVerification = () => {
113
123
  if (decodedJwt === null || decodedJwt === void 0 ? void 0 : decodedJwt.missingFields.length) {
114
124
  setOnboardingOnlyJwt(jwt);
115
125
  yield sleepToShowSuccessMessage();
116
- setView('collect-user-data');
126
+ setView('collect-user-data-login-no-wallet', {
127
+ userIdentification: 'phoneNumber',
128
+ userIdentificationOverride: formattedPhone,
129
+ });
117
130
  return true;
118
131
  }
119
132
  setCallback('authSuccess');
120
133
  // this timeout is set to make sure that the user will see success message
121
134
  yield sleepToShowSuccessMessage();
122
135
  yield createUserProfileByJWT(jwt);
136
+ if (isTurnkeyProviderEnabled &&
137
+ !((_d = (_c = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _c === void 0 ? void 0 : _c.embeddedWallets) === null || _d === void 0 ? void 0 : _d.automaticEmbeddedWalletCreation)) {
138
+ setShowAuthFlow(false);
139
+ return true;
140
+ }
141
+ // this function will check turnkey wallet enabled and create wallet if needed
142
+ // if not enabled, it will throw an error.
143
+ yield createEmbeddedWallet().catch(() => setShowAuthFlow(false));
123
144
  return true;
124
145
  }), [
146
+ createEmbeddedWallet,
125
147
  createUserProfileByJWT,
126
148
  environmentId,
149
+ formattedPhone,
127
150
  goToInitialView,
128
151
  handleLogOut,
152
+ isTurnkeyProviderEnabled,
153
+ (_b = (_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _a === void 0 ? void 0 : _a.embeddedWallets) === null || _b === void 0 ? void 0 : _b.automaticEmbeddedWalletCreation,
129
154
  setCallback,
130
155
  setOnboardingOnlyJwt,
156
+ setShowAuthFlow,
131
157
  setView,
132
158
  verificationUUID,
133
159
  ]);
@@ -149,9 +175,7 @@ const useSmsVerification = () => {
149
175
  });
150
176
  return {
151
177
  error,
152
- formattedPhone: retryData
153
- ? `+${retryData.dialCode} ${formattedPhone}`
154
- : formattedPhone,
178
+ formattedPhone,
155
179
  isLoading,
156
180
  isValid,
157
181
  onSubmit,
@@ -82,6 +82,7 @@ require('../WalletList/WalletList.cjs');
82
82
  require('../../context/SocialRedirectContext/SocialRedirectContext.cjs');
83
83
  require('../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.cjs');
84
84
  require('@hcaptcha/react-hcaptcha');
85
+ require('../../config/ApiEndpoint.cjs');
85
86
  require('../LoginView/sections/PhoneNumberSignInSection/usePhoneInputLogic/usePhoneInputLogic.cjs');
86
87
 
87
88
  const WalletUsedView = () => {
@@ -78,6 +78,7 @@ import '../WalletList/WalletList.js';
78
78
  import '../../context/SocialRedirectContext/SocialRedirectContext.js';
79
79
  import '../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js';
80
80
  import '@hcaptcha/react-hcaptcha';
81
+ import '../../config/ApiEndpoint.js';
81
82
  import '../LoginView/sections/PhoneNumberSignInSection/usePhoneInputLogic/usePhoneInputLogic.js';
82
83
 
83
84
  const WalletUsedView = () => {
@@ -7,8 +7,10 @@ var BridgeNextWalletConnectionView = require('./BridgeNextWalletConnectionView/B
7
7
  var BridgeSummaryView = require('./BridgeSummaryView/BridgeSummaryView.cjs');
8
8
  var BridgeWelcomeView = require('./BridgeWelcomeView/BridgeWelcomeView.cjs');
9
9
  var CaptchaVerifyUser = require('./CaptchaVerifyUser/CaptchaVerifyUser.cjs');
10
+ var CoinbaseMPCClaimIntro = require('./CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.cjs');
10
11
  var CollectUserDataView = require('./CollectUserDataView/CollectUserDataView.cjs');
11
- var CollectUserDataViewLoginWithEmail = require('./CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.cjs');
12
+ var CollectUserDataViewNoWallet = require('./CollectUserDataViewNoWallet/CollectUserDataViewNoWallet.cjs');
13
+ var CreatePasswordView = require('./CreatePasswordView/CreatePasswordView.cjs');
12
14
  var EmailConfirmationWaitingView = require('./EmailConfirmationWaitingView/EmailConfirmationWaitingView.cjs');
13
15
  var EmailUpdate = require('./EmailUpdate/EmailUpdate.cjs');
14
16
  var EmailVerification = require('./EmailVerification/EmailVerification.cjs');
@@ -63,7 +65,6 @@ require('../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs');
63
65
  require('../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
64
66
  require('@dynamic-labs/rpc-providers');
65
67
  require('../context/UserWalletsContext/UserWalletsContext.cjs');
66
- var CreatePasswordView = require('./CreatePasswordView/CreatePasswordView.cjs');
67
68
  require('../components/ShadowDOM/ShadowDOM.cjs');
68
69
  require('../components/Transition/ZoomTransition/ZoomTransition.cjs');
69
70
  require('../components/Transition/SlideInUpTransition/SlideInUpTransition.cjs');
@@ -106,7 +107,6 @@ var WalletLockedView = require('./WalletLockedView/WalletLockedView.cjs');
106
107
  var WalletRedirectView = require('./WalletRedirectView/WalletRedirectView.cjs');
107
108
  var WalletSignSpinnerView = require('./WalletSignSpinnerView/WalletSignSpinnerView.cjs');
108
109
  var WalletUsedView = require('./WalletUsedView/WalletUsedView.cjs');
109
- var CoinbaseMPCClaimIntro = require('./CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.cjs');
110
110
  var PasskeyNewDomainDetectedView = require('./Passkey/PasskeyNewDomainDetectedView/PasskeyNewDomainDetectedView.cjs');
111
111
 
112
112
  const viewToComponentMap = {
@@ -117,7 +117,7 @@ const viewToComponentMap = {
117
117
  captcha: CaptchaVerifyUser.CaptchaVerifyUser,
118
118
  'chainalysis-blocked-wallet': NoAccess.NoAccess,
119
119
  'collect-user-data': CollectUserDataView.CollectUserDataView,
120
- 'collect-user-data-login-with-email': CollectUserDataViewLoginWithEmail.CollectUserDataViewLoginWithEmail,
120
+ 'collect-user-data-login-no-wallet': CollectUserDataViewNoWallet.CollectUserDataViewNoWallet,
121
121
  'create-password-view': CreatePasswordView.CreatePasswordView,
122
122
  'email-wallet-otp-verification-view': EmailWalletOTPVerificationView.EmailWalletOTPVerificationView,
123
123
  'embedded-reveal-account-view': EmbeddedRevealView.EmbeddedRevealView,
@@ -1,2 +1,60 @@
1
- import { ViewMap } from '../context/ViewContext';
2
- export declare const viewToComponentMap: ViewMap;
1
+ /// <reference types="react" />
2
+ export declare const viewToComponentMap: {
3
+ 'account-exists': () => JSX.Element;
4
+ 'bridge-next-wallet-connection': import("react").FC;
5
+ 'bridge-summary': () => JSX.Element;
6
+ 'bridge-welcome': () => JSX.Element;
7
+ captcha: () => JSX.Element;
8
+ 'chainalysis-blocked-wallet': () => JSX.Element;
9
+ 'collect-user-data': () => JSX.Element | null;
10
+ 'collect-user-data-login-no-wallet': import("react").FC<{
11
+ userIdentification: keyof import("@dynamic-labs/sdk-api").UserFields | "chain" | "ens" | "environmentId" | "isAuthenticatedWithAWallet" | "lastVerifiedCredentialId" | "lists" | "newUser" | "sessionId" | "userId" | "verifiedCredentials" | "wallet" | "scope";
12
+ userIdentificationOverride?: string | undefined;
13
+ }>;
14
+ 'create-password-view': import("react").FC<import("./CreatePasswordView/CreatePasswordView").CreatePasswordViewProps>;
15
+ 'email-wallet-otp-verification-view': () => JSX.Element;
16
+ 'embedded-reveal-account-view': import("react").FC<import("./EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView").EmbeddedRevealViewProps>;
17
+ 'embedded-reveal-view': import("react").FC<import("./EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView").EmbeddedRevealViewProps>;
18
+ 'embedded-wallet-auth-choice': import("react").FC<import("./Passkey/EmbeddedAuthChoice/EmbeddedAuthChoice").EmbeddedAuthChoiceProps>;
19
+ 'gate-blocked-wallet': () => JSX.Element;
20
+ 'login-with-email-or-wallet': () => JSX.Element;
21
+ 'login-with-email-or-wallet-full-wallet-list': () => JSX.Element;
22
+ 'login-with-email-verification': () => JSX.Element;
23
+ 'login-with-sms-verification': import("react").FC;
24
+ 'login-with-wallet-only': () => JSX.Element;
25
+ 'merge-user-accounts': () => JSX.Element;
26
+ 'multi-wallet-wallet-list': ({ isWalletConnectList, }: import("./WalletList").WalletListProps) => JSX.Element;
27
+ 'network-not-supported': () => JSX.Element | null;
28
+ 'network-not-supported-manual': import("react").FC;
29
+ 'no-access': () => JSX.Element;
30
+ 'no-qr-not-installed': () => JSX.Element | null;
31
+ 'passkey-intro': import("react").FC;
32
+ 'passkey-new-domain-detected': import("react").FC;
33
+ 'passkey-recovery-bundle': import("react").FC<import("./Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery").PasskeyBundleValidationProps>;
34
+ 'passkey-recovery-complete': import("react").FC;
35
+ 'passkey-recovery-start': import("react").FC<import("./Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery").PasskeyInitRecoveryProps>;
36
+ 'pending-connect': () => JSX.Element;
37
+ 'pending-signature': () => JSX.Element | null;
38
+ 'pending-signature-without-back-button': () => JSX.Element | null;
39
+ 'qr-code': () => JSX.Element | null;
40
+ 'rename-passkey': import("react").FC;
41
+ 'select-hardware-wallet': import("react").FC<{
42
+ wallet: import("../shared").WalletOption;
43
+ onSelectWallet?: ((wallet: import("../shared").WalletOption) => void) | undefined;
44
+ }>;
45
+ 'select-wallet-in-wallet-group': import("react").FC;
46
+ 'social-redirect-view': () => JSX.Element;
47
+ 'social-wrong-account': () => JSX.Element | null;
48
+ 'update-email': () => JSX.Element;
49
+ 'verify-email': () => JSX.Element;
50
+ 'wait-for-email-confirmation-view': () => JSX.Element;
51
+ 'wallet-cannot-be-transferred': () => JSX.Element;
52
+ 'wallet-claim-intro': () => JSX.Element;
53
+ 'wallet-connect-mobile-wallets-list': ({ isWalletConnectList, }: import("./WalletList").WalletListProps) => JSX.Element;
54
+ 'wallet-group': import("react").FC;
55
+ 'wallet-list': ({ isWalletConnectList, }: import("./WalletList").WalletListProps) => JSX.Element;
56
+ 'wallet-locked-view': () => JSX.Element | null;
57
+ 'wallet-redirect-view': () => JSX.Element;
58
+ 'wallet-sign': () => JSX.Element | null;
59
+ 'wallet-used': () => JSX.Element;
60
+ };
@@ -3,8 +3,10 @@ import { BridgeNextWalletConnectionView } from './BridgeNextWalletConnectionView
3
3
  import { BridgeSummaryView } from './BridgeSummaryView/BridgeSummaryView.js';
4
4
  import { BridgeWelcomeView } from './BridgeWelcomeView/BridgeWelcomeView.js';
5
5
  import { CaptchaVerifyUser } from './CaptchaVerifyUser/CaptchaVerifyUser.js';
6
+ import { CoinbaseMPCClaimIntro } from './CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.js';
6
7
  import { CollectUserDataView } from './CollectUserDataView/CollectUserDataView.js';
7
- import { CollectUserDataViewLoginWithEmail } from './CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.js';
8
+ import { CollectUserDataViewNoWallet } from './CollectUserDataViewNoWallet/CollectUserDataViewNoWallet.js';
9
+ import { CreatePasswordView } from './CreatePasswordView/CreatePasswordView.js';
8
10
  import { EmailConfirmationWaitingView } from './EmailConfirmationWaitingView/EmailConfirmationWaitingView.js';
9
11
  import { EmailUpdate } from './EmailUpdate/EmailUpdate.js';
10
12
  import { EmailVerification } from './EmailVerification/EmailVerification.js';
@@ -59,7 +61,6 @@ import '../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js';
59
61
  import '../context/UserFieldEditorContext/UserFieldEditorContext.js';
60
62
  import '@dynamic-labs/rpc-providers';
61
63
  import '../context/UserWalletsContext/UserWalletsContext.js';
62
- import { CreatePasswordView } from './CreatePasswordView/CreatePasswordView.js';
63
64
  import '../components/ShadowDOM/ShadowDOM.js';
64
65
  import '../components/Transition/ZoomTransition/ZoomTransition.js';
65
66
  import '../components/Transition/SlideInUpTransition/SlideInUpTransition.js';
@@ -102,7 +103,6 @@ import { WalletLockedView } from './WalletLockedView/WalletLockedView.js';
102
103
  import { WalletRedirectView } from './WalletRedirectView/WalletRedirectView.js';
103
104
  import { WalletSignSpinnerView } from './WalletSignSpinnerView/WalletSignSpinnerView.js';
104
105
  import { WalletUsedView } from './WalletUsedView/WalletUsedView.js';
105
- import { CoinbaseMPCClaimIntro } from './CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.js';
106
106
  import { PasskeyNewDomainDetectedView } from './Passkey/PasskeyNewDomainDetectedView/PasskeyNewDomainDetectedView.js';
107
107
 
108
108
  const viewToComponentMap = {
@@ -113,7 +113,7 @@ const viewToComponentMap = {
113
113
  captcha: CaptchaVerifyUser,
114
114
  'chainalysis-blocked-wallet': NoAccess,
115
115
  'collect-user-data': CollectUserDataView,
116
- 'collect-user-data-login-with-email': CollectUserDataViewLoginWithEmail,
116
+ 'collect-user-data-login-no-wallet': CollectUserDataViewNoWallet,
117
117
  'create-password-view': CreatePasswordView,
118
118
  'email-wallet-otp-verification-view': EmailWalletOTPVerificationView,
119
119
  'embedded-reveal-account-view': EmbeddedRevealView,
@@ -63,12 +63,12 @@ require('qrcode');
63
63
  require('../../../../../../views/WalletList/WalletList.cjs');
64
64
  require('../../../../../../context/SocialRedirectContext/SocialRedirectContext.cjs');
65
65
  require('@hcaptcha/react-hcaptcha');
66
+ require('i18next');
66
67
  require('../../../../../../context/LoadingContext/LoadingContext.cjs');
67
68
  require('../../../../../../context/FooterAnimationContext/index.cjs');
68
69
  require('../../../../../../views/LoginView/sections/PhoneNumberSignInSection/usePhoneInputLogic/usePhoneInputLogic.cjs');
69
70
  require('../../../../../../context/WalletGroupContext/WalletGroupContext.cjs');
70
71
  require('../../../../../../context/PasskeyContext/PasskeyContext.cjs');
71
- require('i18next');
72
72
  require('../../../../../DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs');
73
73
  require('../../../../../DynamicWidget/context/DynamicWidgetContext.cjs');
74
74
  require('../../../../../../components/UserProfile/parts/UserProfileField/components/VerifiedEmailIcon/VerifiedEmailIcon.cjs');
@@ -59,12 +59,12 @@ import 'qrcode';
59
59
  import '../../../../../../views/WalletList/WalletList.js';
60
60
  import '../../../../../../context/SocialRedirectContext/SocialRedirectContext.js';
61
61
  import '@hcaptcha/react-hcaptcha';
62
+ import 'i18next';
62
63
  import '../../../../../../context/LoadingContext/LoadingContext.js';
63
64
  import '../../../../../../context/FooterAnimationContext/index.js';
64
65
  import '../../../../../../views/LoginView/sections/PhoneNumberSignInSection/usePhoneInputLogic/usePhoneInputLogic.js';
65
66
  import '../../../../../../context/WalletGroupContext/WalletGroupContext.js';
66
67
  import '../../../../../../context/PasskeyContext/PasskeyContext.js';
67
- import 'i18next';
68
68
  import '../../../../../DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js';
69
69
  import '../../../../../DynamicWidget/context/DynamicWidgetContext.js';
70
70
  import '../../../../../../components/UserProfile/parts/UserProfileField/components/VerifiedEmailIcon/VerifiedEmailIcon.js';
@@ -4,6 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var React = require('react');
7
+ var reactI18next = require('react-i18next');
7
8
  var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
8
9
  require('../../../../../events/dynamicEvents.cjs');
9
10
  require('../../../../../../../_virtual/_tslib.cjs');
@@ -37,7 +38,6 @@ var WalletContext = require('../../../../../context/WalletContext/WalletContext.
37
38
  require('../../../../../context/ThemeContext/ThemeContext.cjs');
38
39
  require('@dynamic-labs/types');
39
40
  require('yup');
40
- require('react-i18next');
41
41
  require('../../../../../context/MockContext/MockContext.cjs');
42
42
  require('../../../../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs');
43
43
  require('../../../../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
@@ -63,7 +63,7 @@ require('../../../../../components/MenuList/Dropdown/Dropdown.cjs');
63
63
  require('../../../../../components/UserProfile/parts/UserProfileField/components/VerifiedEmailIcon/VerifiedEmailIcon.cjs');
64
64
  require('formik');
65
65
  var Button = require('../../../../../components/Button/Button.cjs');
66
- require('../../../../../components/Alert/Alert.cjs');
66
+ var Alert = require('../../../../../components/Alert/Alert.cjs');
67
67
  require('../../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.cjs');
68
68
  require('../../../../../context/PasskeyContext/PasskeyContext.cjs');
69
69
  require('../../../../../views/TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
@@ -80,6 +80,7 @@ require('@hcaptcha/react-hcaptcha');
80
80
  var UserAvatar = require('../../../../../components/UserAvatar/UserAvatar.cjs');
81
81
  require('../../../../../views/LoginView/sections/PhoneNumberSignInSection/usePhoneInputLogic/usePhoneInputLogic.cjs');
82
82
  var SecureEmbeddedWalletCard = require('../../../../../components/SecureEmbeddedWalletCard/SecureEmbeddedWalletCard.cjs');
83
+ var spinner = require('../../../../../components/Spinner/spinner.cjs');
83
84
  var FundingContext = require('../../../../../context/FundingContext/FundingContext.cjs');
84
85
  var SendBalanceContext = require('../../../../../context/SendBalanceContext/SendBalanceContext.cjs');
85
86
  var ActiveWalletInformation = require('../../ActiveWalletInformation/ActiveWalletInformation.cjs');
@@ -95,6 +96,7 @@ const DynamicWidgetWalletHeader = ({ variant, }) => {
95
96
  const { supportsFunding, setShowFunding, fundingEnabled } = FundingContext.useFundingContext();
96
97
  const { setDynamicWidgetView, setIsOpen } = DynamicWidgetContext.useWidgetContext();
97
98
  const { isLoadingEmbeddedWallet } = WalletContext.useWalletContext();
99
+ const { t } = reactI18next.useTranslation();
98
100
  const isSendBalanceEnabled = React.useMemo(() => {
99
101
  const connector = primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector;
100
102
  if (!connector)
@@ -126,11 +128,11 @@ const DynamicWidgetWalletHeader = ({ variant, }) => {
126
128
  }
127
129
  };
128
130
  const isActionsVisible = isSendBalanceEnabled || fundingEnabled;
129
- return (jsxRuntime.jsxs("div", { className: 'dynamic-widget-wallet-header', "data-testid": 'dynamic-widget-wallet-header', children: [renderWalletHeader(), primaryWallet ? (jsxRuntime.jsxs("div", { "data-testid": 'primaryWalletStatus', className: 'dynamic-widget-wallet-header__wallet-info', children: [jsxRuntime.jsx(SecureEmbeddedWalletCard.SecureEmbeddedWalletCard, { className: 'dynamic-widget-wallet-header__wallet-info__secure-wallet' }), isActionsVisible && (jsxRuntime.jsxs("div", { className: 'dynamic-widget-wallet-header__wallet-actions', children: [fundingEnabled && (jsxRuntime.jsx(Button.Button, { expanded: true, dataTestId: 'buy-crypto-button', buttonPadding: 'small', buttonVariant: 'primary', onClick: () => setShowFunding(true), disabled: !supportsFunding, startSlot:
131
+ return (jsxRuntime.jsxs("div", { className: 'dynamic-widget-wallet-header', "data-testid": 'dynamic-widget-wallet-header', children: [renderWalletHeader(), isLoadingEmbeddedWallet && (jsxRuntime.jsx("div", { className: 'dynamic-widget-wallet-header__wallet-info', children: jsxRuntime.jsx("div", { className: 'dynamic-widget-wallet-header__wallet-loading', children: jsxRuntime.jsx(Alert.Alert, { variant: 'info', icon: jsxRuntime.jsx(spinner.Spinner, { className: 'button__spinner' }), children: t('dyn_creating_wallet.loading_message') }) }) })), primaryWallet ? (jsxRuntime.jsxs("div", { "data-testid": 'primaryWalletStatus', className: 'dynamic-widget-wallet-header__wallet-info', children: [jsxRuntime.jsx(SecureEmbeddedWalletCard.SecureEmbeddedWalletCard, { className: 'dynamic-widget-wallet-header__wallet-info__secure-wallet' }), isActionsVisible && (jsxRuntime.jsxs("div", { className: 'dynamic-widget-wallet-header__wallet-actions', children: [fundingEnabled && (jsxRuntime.jsx(Button.Button, { expanded: true, dataTestId: 'buy-crypto-button', buttonPadding: 'small', buttonVariant: 'primary', onClick: () => setShowFunding(true), disabled: !supportsFunding, startSlot:
130
132
  // eslint-disable-next-line react/jsx-wrap-multilines
131
133
  jsxRuntime.jsx(Icon.Icon, { size: 'small', color: 'text-secondary', children: jsxRuntime.jsx(add.ReactComponent, {}) }), children: "Buy" })), isSendBalanceEnabled && (jsxRuntime.jsx(Button.Button, { expanded: true, dataTestId: 'send-balance-button', buttonPadding: 'small', buttonVariant: 'primary', onClick: handleOnClickSend, startSlot:
132
134
  // eslint-disable-next-line react/jsx-wrap-multilines
133
- jsxRuntime.jsx(Icon.Icon, { size: 'small', color: 'text-secondary', children: jsxRuntime.jsx(send.ReactComponent, {}) }), children: "Send" }))] }))] })) : (jsxRuntime.jsx(Typography.Typography, { className: 'dynamic-widget-wallet-header__email', variant: 'body_normal', weight: 'regular', children: getUserIdentifier.getUserIdentifier(user) }))] }));
135
+ jsxRuntime.jsx(Icon.Icon, { size: 'small', color: 'text-secondary', children: jsxRuntime.jsx(send.ReactComponent, {}) }), children: "Send" }))] }))] })) : (jsxRuntime.jsx(Typography.Typography, { className: 'dynamic-widget-wallet-header__email', variant: 'body_normal', weight: 'regular', children: !isLoadingEmbeddedWallet && getUserIdentifier.getUserIdentifier(user) }))] }));
134
136
  };
135
137
  React__default["default"].memo(DynamicWidgetWalletHeader);
136
138
 
@@ -1,5 +1,6 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import React__default, { useMemo } from 'react';
3
+ import { useTranslation } from 'react-i18next';
3
4
  import { isEmbeddedConnector } from '@dynamic-labs/wallet-connector-core';
4
5
  import '../../../../../events/dynamicEvents.js';
5
6
  import '../../../../../../../_virtual/_tslib.js';
@@ -33,7 +34,6 @@ import { useWalletContext } from '../../../../../context/WalletContext/WalletCon
33
34
  import '../../../../../context/ThemeContext/ThemeContext.js';
34
35
  import '@dynamic-labs/types';
35
36
  import 'yup';
36
- import 'react-i18next';
37
37
  import '../../../../../context/MockContext/MockContext.js';
38
38
  import '../../../../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js';
39
39
  import '../../../../../context/UserFieldEditorContext/UserFieldEditorContext.js';
@@ -59,7 +59,7 @@ import '../../../../../components/MenuList/Dropdown/Dropdown.js';
59
59
  import '../../../../../components/UserProfile/parts/UserProfileField/components/VerifiedEmailIcon/VerifiedEmailIcon.js';
60
60
  import 'formik';
61
61
  import { Button } from '../../../../../components/Button/Button.js';
62
- import '../../../../../components/Alert/Alert.js';
62
+ import { Alert } from '../../../../../components/Alert/Alert.js';
63
63
  import '../../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.js';
64
64
  import '../../../../../context/PasskeyContext/PasskeyContext.js';
65
65
  import '../../../../../views/TransactionConfirmationView/helpers/transactionErrorMessage.js';
@@ -76,6 +76,7 @@ import '@hcaptcha/react-hcaptcha';
76
76
  import { UserAvatar } from '../../../../../components/UserAvatar/UserAvatar.js';
77
77
  import '../../../../../views/LoginView/sections/PhoneNumberSignInSection/usePhoneInputLogic/usePhoneInputLogic.js';
78
78
  import { SecureEmbeddedWalletCard } from '../../../../../components/SecureEmbeddedWalletCard/SecureEmbeddedWalletCard.js';
79
+ import { Spinner } from '../../../../../components/Spinner/spinner.js';
79
80
  import { useFundingContext } from '../../../../../context/FundingContext/FundingContext.js';
80
81
  import { useSendBalance } from '../../../../../context/SendBalanceContext/SendBalanceContext.js';
81
82
  import { ActiveWalletInformation } from '../../ActiveWalletInformation/ActiveWalletInformation.js';
@@ -87,6 +88,7 @@ const DynamicWidgetWalletHeader = ({ variant, }) => {
87
88
  const { supportsFunding, setShowFunding, fundingEnabled } = useFundingContext();
88
89
  const { setDynamicWidgetView, setIsOpen } = useWidgetContext();
89
90
  const { isLoadingEmbeddedWallet } = useWalletContext();
91
+ const { t } = useTranslation();
90
92
  const isSendBalanceEnabled = useMemo(() => {
91
93
  const connector = primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector;
92
94
  if (!connector)
@@ -118,11 +120,11 @@ const DynamicWidgetWalletHeader = ({ variant, }) => {
118
120
  }
119
121
  };
120
122
  const isActionsVisible = isSendBalanceEnabled || fundingEnabled;
121
- return (jsxs("div", { className: 'dynamic-widget-wallet-header', "data-testid": 'dynamic-widget-wallet-header', children: [renderWalletHeader(), primaryWallet ? (jsxs("div", { "data-testid": 'primaryWalletStatus', className: 'dynamic-widget-wallet-header__wallet-info', children: [jsx(SecureEmbeddedWalletCard, { className: 'dynamic-widget-wallet-header__wallet-info__secure-wallet' }), isActionsVisible && (jsxs("div", { className: 'dynamic-widget-wallet-header__wallet-actions', children: [fundingEnabled && (jsx(Button, { expanded: true, dataTestId: 'buy-crypto-button', buttonPadding: 'small', buttonVariant: 'primary', onClick: () => setShowFunding(true), disabled: !supportsFunding, startSlot:
123
+ return (jsxs("div", { className: 'dynamic-widget-wallet-header', "data-testid": 'dynamic-widget-wallet-header', children: [renderWalletHeader(), isLoadingEmbeddedWallet && (jsx("div", { className: 'dynamic-widget-wallet-header__wallet-info', children: jsx("div", { className: 'dynamic-widget-wallet-header__wallet-loading', children: jsx(Alert, { variant: 'info', icon: jsx(Spinner, { className: 'button__spinner' }), children: t('dyn_creating_wallet.loading_message') }) }) })), primaryWallet ? (jsxs("div", { "data-testid": 'primaryWalletStatus', className: 'dynamic-widget-wallet-header__wallet-info', children: [jsx(SecureEmbeddedWalletCard, { className: 'dynamic-widget-wallet-header__wallet-info__secure-wallet' }), isActionsVisible && (jsxs("div", { className: 'dynamic-widget-wallet-header__wallet-actions', children: [fundingEnabled && (jsx(Button, { expanded: true, dataTestId: 'buy-crypto-button', buttonPadding: 'small', buttonVariant: 'primary', onClick: () => setShowFunding(true), disabled: !supportsFunding, startSlot:
122
124
  // eslint-disable-next-line react/jsx-wrap-multilines
123
125
  jsx(Icon, { size: 'small', color: 'text-secondary', children: jsx(SvgAdd, {}) }), children: "Buy" })), isSendBalanceEnabled && (jsx(Button, { expanded: true, dataTestId: 'send-balance-button', buttonPadding: 'small', buttonVariant: 'primary', onClick: handleOnClickSend, startSlot:
124
126
  // eslint-disable-next-line react/jsx-wrap-multilines
125
- jsx(Icon, { size: 'small', color: 'text-secondary', children: jsx(SvgSend, {}) }), children: "Send" }))] }))] })) : (jsx(Typography, { className: 'dynamic-widget-wallet-header__email', variant: 'body_normal', weight: 'regular', children: getUserIdentifier(user) }))] }));
127
+ jsx(Icon, { size: 'small', color: 'text-secondary', children: jsx(SvgSend, {}) }), children: "Send" }))] }))] })) : (jsx(Typography, { className: 'dynamic-widget-wallet-header__email', variant: 'body_normal', weight: 'regular', children: !isLoadingEmbeddedWallet && getUserIdentifier(user) }))] }));
126
128
  };
127
129
  React__default.memo(DynamicWidgetWalletHeader);
128
130
 
@@ -17,7 +17,7 @@ require('../../../shared/utils/classes/storage/localStorage.cjs');
17
17
  require('viem');
18
18
  require('@dynamic-labs/utils');
19
19
  require('../../../shared/consts/index.cjs');
20
- require('../../../events/dynamicEvents.cjs');
20
+ var useDynamicEvents = require('../../../utils/hooks/events/useDynamicEvents/useDynamicEvents.cjs');
21
21
  require('../../../../../_virtual/_tslib.cjs');
22
22
  require('../../../context/CaptchaContext/CaptchaContext.cjs');
23
23
  require('../../../context/ErrorContext/ErrorContext.cjs');
@@ -29,6 +29,7 @@ require('../../../context/AccessDeniedContext/AccessDeniedContext.cjs');
29
29
  require('../../../context/AccountExistsContext/AccountExistsContext.cjs');
30
30
  require('../../../context/VerificationContext/VerificationContext.cjs');
31
31
  require('react-dom');
32
+ require('../../../events/dynamicEvents.cjs');
32
33
  require('../../../context/WalletContext/WalletContext.cjs');
33
34
  require('../../../context/ThemeContext/ThemeContext.cjs');
34
35
  var useKYCFlag = require('../../../utils/hooks/useKYCFlag/useKYCFlag.cjs');
@@ -87,6 +88,7 @@ const DynamicWidgetContextProvider = ({ children, }) => {
87
88
  return setDynamicWidgetView('profile');
88
89
  setDynamicWidgetView('wallets');
89
90
  }, [isKYCEnabled, multiWallet]);
91
+ useDynamicEvents.useInternalDynamicEvents('logout', () => goToInitialDynamicWidgetView());
90
92
  const value = React.useMemo(() => ({
91
93
  availableWalletsContainerRef,
92
94
  dynamicWidgetView,
@@ -99,10 +101,11 @@ const DynamicWidgetContextProvider = ({ children, }) => {
99
101
  widgetRef,
100
102
  }), [
101
103
  dynamicWidgetView,
102
- setShowDynamicUserProfile,
103
104
  goToInitialDynamicWidgetView,
104
105
  goToProfileView,
105
106
  showDynamicUserProfile,
107
+ setDynamicWidgetView,
108
+ setShowDynamicUserProfile,
106
109
  ]);
107
110
  return (jsxRuntime.jsx(DynamicWidgetContext.Provider, { value: value, children: children }));
108
111
  };
@@ -13,7 +13,7 @@ import '../../../shared/utils/classes/storage/localStorage.js';
13
13
  import 'viem';
14
14
  import '@dynamic-labs/utils';
15
15
  import '../../../shared/consts/index.js';
16
- import '../../../events/dynamicEvents.js';
16
+ import { useInternalDynamicEvents } from '../../../utils/hooks/events/useDynamicEvents/useDynamicEvents.js';
17
17
  import '../../../../../_virtual/_tslib.js';
18
18
  import '../../../context/CaptchaContext/CaptchaContext.js';
19
19
  import '../../../context/ErrorContext/ErrorContext.js';
@@ -25,6 +25,7 @@ import '../../../context/AccessDeniedContext/AccessDeniedContext.js';
25
25
  import '../../../context/AccountExistsContext/AccountExistsContext.js';
26
26
  import '../../../context/VerificationContext/VerificationContext.js';
27
27
  import 'react-dom';
28
+ import '../../../events/dynamicEvents.js';
28
29
  import '../../../context/WalletContext/WalletContext.js';
29
30
  import '../../../context/ThemeContext/ThemeContext.js';
30
31
  import { useKYCFlag } from '../../../utils/hooks/useKYCFlag/useKYCFlag.js';
@@ -83,6 +84,7 @@ const DynamicWidgetContextProvider = ({ children, }) => {
83
84
  return setDynamicWidgetView('profile');
84
85
  setDynamicWidgetView('wallets');
85
86
  }, [isKYCEnabled, multiWallet]);
87
+ useInternalDynamicEvents('logout', () => goToInitialDynamicWidgetView());
86
88
  const value = useMemo(() => ({
87
89
  availableWalletsContainerRef,
88
90
  dynamicWidgetView,
@@ -95,10 +97,11 @@ const DynamicWidgetContextProvider = ({ children, }) => {
95
97
  widgetRef,
96
98
  }), [
97
99
  dynamicWidgetView,
98
- setShowDynamicUserProfile,
99
100
  goToInitialDynamicWidgetView,
100
101
  goToProfileView,
101
102
  showDynamicUserProfile,
103
+ setDynamicWidgetView,
104
+ setShowDynamicUserProfile,
102
105
  ]);
103
106
  return (jsx(DynamicWidgetContext.Provider, { value: value, children: children }));
104
107
  };