@dynamic-labs/sdk-react-core 1.0.0-alpha.6 → 1.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 (144) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/package.cjs +2 -2
  3. package/package.js +2 -2
  4. package/package.json +10 -10
  5. package/src/index.cjs +4 -2
  6. package/src/index.d.ts +1 -1
  7. package/src/index.js +2 -1
  8. package/src/lib/Main.cjs +18 -21
  9. package/src/lib/Main.js +18 -21
  10. package/src/lib/components/NeedHelpSection/NeedHelpSection.cjs +84 -5
  11. package/src/lib/components/NeedHelpSection/NeedHelpSection.js +85 -6
  12. package/src/lib/components/NetworkPicker/NetworkPicker.cjs +8 -6
  13. package/src/lib/components/NetworkPicker/NetworkPicker.d.ts +2 -1
  14. package/src/lib/components/NetworkPicker/NetworkPicker.js +8 -6
  15. package/src/lib/components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.cjs +68 -0
  16. package/src/lib/components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.d.ts +6 -0
  17. package/src/lib/components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.js +64 -0
  18. package/src/lib/components/PasskeyCreatedSuccessBanner/index.d.ts +1 -0
  19. package/src/lib/components/SecureTurnkeyWalletCard/SecureTurnkeyWalletCard.cjs +24 -0
  20. package/src/lib/components/SecureTurnkeyWalletCard/SecureTurnkeyWalletCard.d.ts +6 -0
  21. package/src/lib/components/SecureTurnkeyWalletCard/SecureTurnkeyWalletCard.js +20 -0
  22. package/src/lib/components/SecureTurnkeyWalletCard/index.d.ts +1 -0
  23. package/src/lib/components/SendBalanceForm/SendBalanceForm.cjs +4 -1
  24. package/src/lib/components/SendBalanceForm/SendBalanceForm.js +4 -1
  25. package/src/lib/components/SyncPasskeyFlow/SyncPasskeyFlow.cjs +5 -2
  26. package/src/lib/components/SyncPasskeyFlow/SyncPasskeyFlow.js +5 -2
  27. package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.cjs +6 -2
  28. package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.js +6 -2
  29. package/src/lib/components/index.d.ts +2 -0
  30. package/src/lib/context/DynamicContext/DynamicContext.cjs +8 -5
  31. package/src/lib/context/DynamicContext/DynamicContext.js +8 -5
  32. package/src/lib/context/DynamicContext/hooks/index.d.ts +1 -0
  33. package/src/lib/context/DynamicContext/hooks/useShowPasskeyCreateSuccess/index.d.ts +1 -0
  34. package/src/lib/context/DynamicContext/hooks/useShowPasskeyCreateSuccess/useShowPasskeyCreateSuccess.cjs +23 -0
  35. package/src/lib/context/DynamicContext/hooks/useShowPasskeyCreateSuccess/useShowPasskeyCreateSuccess.d.ts +4 -0
  36. package/src/lib/context/DynamicContext/hooks/useShowPasskeyCreateSuccess/useShowPasskeyCreateSuccess.js +19 -0
  37. package/src/lib/context/DynamicContext/types/index.d.ts +2 -1
  38. package/src/lib/data/api.cjs +14 -10
  39. package/src/lib/data/api.d.ts +2 -2
  40. package/src/lib/data/api.js +14 -10
  41. package/src/lib/layout/DynamicAuthLayout/Header/header.cjs +9 -11
  42. package/src/lib/layout/DynamicAuthLayout/Header/header.js +10 -12
  43. package/src/lib/locale/en/translation.cjs +77 -3
  44. package/src/lib/locale/en/translation.d.ts +76 -2
  45. package/src/lib/locale/en/translation.js +77 -3
  46. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.cjs +6 -2
  47. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.js +6 -2
  48. package/src/lib/modals/SignMessageConfirmationModal/getProperErrorMessage.cjs +1 -1
  49. package/src/lib/modals/SignMessageConfirmationModal/getProperErrorMessage.js +1 -1
  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/findTurnkeyWallet/findTurnkeyWallet.cjs +1 -1
  53. package/src/lib/utils/functions/findTurnkeyWallet/findTurnkeyWallet.js +1 -1
  54. package/src/lib/utils/hooks/index.d.ts +2 -0
  55. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.cjs +1 -6
  56. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.js +1 -6
  57. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +3 -0
  58. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +3 -0
  59. package/src/lib/utils/hooks/useConnectedWalletsNetworkValidation/useConnectedWalletsNetworkValidation.cjs +7 -8
  60. package/src/lib/utils/hooks/useConnectedWalletsNetworkValidation/useConnectedWalletsNetworkValidation.js +7 -8
  61. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/index.d.ts +1 -0
  62. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.cjs +83 -0
  63. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.d.ts +15 -0
  64. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.js +79 -0
  65. package/src/lib/utils/hooks/useDynamicLayoutData/useDynamicLayoutData.cjs +11 -3
  66. package/src/lib/utils/hooks/useDynamicLayoutData/useDynamicLayoutData.js +11 -3
  67. package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.cjs +57 -33
  68. package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.d.ts +1 -1
  69. package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.js +57 -33
  70. package/src/lib/utils/hooks/useEventListener/useEventListener.cjs +2 -1
  71. package/src/lib/utils/hooks/useEventListener/useEventListener.js +2 -1
  72. package/src/lib/utils/hooks/useIsTurnkeyWallet/index.d.ts +1 -0
  73. package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs +37 -0
  74. package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.d.ts +6 -0
  75. package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js +33 -0
  76. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.cjs +9 -5
  77. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.d.ts +0 -1
  78. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.js +10 -6
  79. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +20 -21
  80. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.d.ts +1 -2
  81. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +20 -21
  82. package/src/lib/utils/hooks/useWalletsConnectionState/useWalletsConnectionState.cjs +32 -9
  83. package/src/lib/utils/hooks/useWalletsConnectionState/useWalletsConnectionState.d.ts +0 -1
  84. package/src/lib/utils/hooks/useWalletsConnectionState/useWalletsConnectionState.js +33 -10
  85. package/src/lib/views/AccountExistsView/AccountExistsView.cjs +1 -1
  86. package/src/lib/views/AccountExistsView/AccountExistsView.js +1 -1
  87. package/src/lib/views/CollectUserDataView/CollectUserDataView.cjs +1 -1
  88. package/src/lib/views/CollectUserDataView/CollectUserDataView.js +1 -1
  89. package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.cjs +1 -1
  90. package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.js +1 -1
  91. package/src/lib/views/LoginView/sections/SocialSignInSection/MagicSocialSignIn/MagicSocialSignIn.cjs +1 -1
  92. package/src/lib/views/LoginView/sections/SocialSignInSection/MagicSocialSignIn/MagicSocialSignIn.js +1 -1
  93. package/src/lib/views/LoginView/sections/SocialSignInSection/SocialSignInSection.cjs +2 -5
  94. package/src/lib/views/LoginView/sections/SocialSignInSection/SocialSignInSection.js +2 -5
  95. package/src/lib/views/LoginView/useLoginView.cjs +101 -84
  96. package/src/lib/views/LoginView/useLoginView.js +102 -85
  97. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +6 -3
  98. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +6 -3
  99. package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.cjs +20 -50
  100. package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.d.ts +1 -6
  101. package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.js +20 -50
  102. package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.cjs +7 -2
  103. package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.js +7 -2
  104. package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.cjs +11 -7
  105. package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.js +11 -7
  106. package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.cjs +8 -10
  107. package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.js +8 -10
  108. package/src/lib/views/Passkey/utils/createPregeneratedWallet/createPregeneratedWallet.cjs +56 -0
  109. package/src/lib/views/Passkey/utils/createPregeneratedWallet/createPregeneratedWallet.d.ts +13 -0
  110. package/src/lib/views/Passkey/utils/createPregeneratedWallet/createPregeneratedWallet.js +52 -0
  111. package/src/lib/views/Passkey/utils/createPregeneratedWallet/index.d.ts +1 -0
  112. package/src/lib/views/Passkey/utils/index.d.ts +1 -0
  113. package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.cjs +1 -1
  114. package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.js +1 -1
  115. package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.cjs +1 -1
  116. package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.js +1 -1
  117. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.cjs +12 -2
  118. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.js +12 -2
  119. package/src/lib/views/TransactionConfirmationView/helpers/transactionErrorMessage.cjs +3 -0
  120. package/src/lib/views/TransactionConfirmationView/helpers/transactionErrorMessage.js +4 -1
  121. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs +6 -3
  122. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js +6 -3
  123. package/src/lib/widgets/DynamicWidget/components/DynamicNav/DynamicNav.cjs +2 -2
  124. package/src/lib/widgets/DynamicWidget/components/DynamicNav/DynamicNav.js +2 -2
  125. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs +2 -1
  126. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js +2 -1
  127. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.cjs +8 -5
  128. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.js +8 -5
  129. package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.cjs +2 -3
  130. package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.js +2 -3
  131. package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.cjs +11 -2
  132. package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.js +11 -2
  133. package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.cjs +1 -2
  134. package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.js +1 -2
  135. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.cjs +1 -3
  136. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.js +1 -3
  137. package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.cjs +1 -1
  138. package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.js +1 -1
  139. package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/ManagePasskeysWidgetView.cjs +2 -1
  140. package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/ManagePasskeysWidgetView.js +2 -1
  141. package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs +16 -6
  142. package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js +16 -6
  143. package/src/lib/utils/functions/getEnabledProviders/index.cjs +0 -7
  144. package/src/lib/utils/functions/getEnabledProviders/index.js +0 -3
@@ -41,6 +41,7 @@ import '../../components/Popper/PopperContext/PopperContext.js';
41
41
  import 'react-focus-lock';
42
42
  import 'formik';
43
43
  import 'yup';
44
+ import { useMutation } from '../../utils/hooks/useMutation/useMutation.js';
44
45
  import '../../components/OverlayCard/OverlayCard.context.js';
45
46
  import { TransactionConfirmationPageLayout } from '../../components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.js';
46
47
  import { TransactionRow } from '../../components/TransactionConfirmationPageLayout/components/TransactionRow/TransactionRow.js';
@@ -66,7 +67,6 @@ import { useTransactionGas } from './hooks/useTransactionGas/useTransactionGas.j
66
67
  import { useTransactionTotal } from './hooks/useTransactionTotal/useTransactionTotal.js';
67
68
  import { transactionErrorMessage } from './helpers/transactionErrorMessage.js';
68
69
  import '../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
69
- import { useMutation } from '../../utils/hooks/useMutation/useMutation.js';
70
70
 
71
71
  const TransactionConfirmationView = ({ transaction, mutation, onError, onSuccess, onClickBack, onClickClose, title, displayPoweredByDynamicFooter = false, provider, }) => {
72
72
  const { appName, appLogoUrl, primaryWallet } = useInternalDynamicContext();
@@ -151,6 +151,8 @@ const TransactionConfirmationView = ({ transaction, mutation, onError, onSuccess
151
151
  return total > balance;
152
152
  }, [balance, total]);
153
153
  const alert = useMemo(() => {
154
+ if (isTransactionLoading || Boolean(errorMessage))
155
+ return null;
154
156
  if (TransactionGasCannotBeSponsoredError.isInstance(transactionError)) {
155
157
  return (jsx(Alert, { icon: 'error', variant: 'error', children: t('dyn_send_transaction.error_message.gas_not_sponsored') }));
156
158
  }
@@ -162,7 +164,15 @@ const TransactionConfirmationView = ({ transaction, mutation, onError, onSuccess
162
164
  amountLeft,
163
165
  currencySymbol,
164
166
  }) }));
165
- }, [currencySymbol, hasInsufficientFunds, missingFunds, t, transactionError]);
167
+ }, [
168
+ currencySymbol,
169
+ hasInsufficientFunds,
170
+ missingFunds,
171
+ t,
172
+ transactionError,
173
+ isTransactionLoading,
174
+ errorMessage,
175
+ ]);
166
176
  return (jsxs(TransactionConfirmationPageLayout, { onClickBack: onClickBack, onClickClose: onClickClose, title: title, appOrigin: appOrigin, appName: appName, appLogoUrl: appLogoUrl, isLoading: isLoading, onClickSend: () => send(), displayPoweredByDynamicFooter: displayPoweredByDynamicFooter, disableSendButton: isTransactionLoading || hasInsufficientFunds, error: errorMessage, alert: alert, children: [jsx(TransactionRow, { label: t('dyn_send_transaction.confirmation.data.from'), isLoading: isTransactionFromAddressLoading, title: transactionFromAddress, children: shortenWalletAddress(transactionFromAddress, 4, 4) }), jsx(TransactionRow, { label: t('dyn_send_transaction.confirmation.data.to'), isLoading: isTransactionToAddressLoading, title: transactionToAddress, children: transactionToAddress &&
167
177
  shortenWalletAddress(transactionToAddress, 4, 4) }), jsx(TransactionRow, { label: t('dyn_send_transaction.confirmation.data.amount'), isLoading: isTransactionValueLoading, isEmpty: !transactionValue, title: transactionValue ? formatBigNumber(transactionValue) : undefined, suffix: currencySymbol, icon: chainIcon, dataTestId: 'transaction-amount', children: transactionValue ? formatBigNumber(transactionValue, 10) : 0 }), !isGasSponsored && (jsxs(Fragment, { children: [jsx(TransactionRow, { label: isGasEstimated
168
178
  ? t('dyn_send_transaction.confirmation.data.gas_estimate')
@@ -31,6 +31,9 @@ const transactionErrorMessage = (error) => {
31
31
  if (utils.TransactionGasCannotBeSponsoredError.isInstance(error)) {
32
32
  return;
33
33
  }
34
+ if (utils.InsufficientFundsError.isInstance(error)) {
35
+ return errorCodesMapping.INSUFFICIENT_FUNDS;
36
+ }
34
37
  const { code } = error;
35
38
  const defaultMessage = 'Something went wrong.';
36
39
  // turnkey request errors
@@ -1,4 +1,4 @@
1
- import { TransactionGasCannotBeSponsoredError } from '@dynamic-labs/utils';
1
+ import { TransactionGasCannotBeSponsoredError, InsufficientFundsError } from '@dynamic-labs/utils';
2
2
  import '@dynamic-labs/sdk-api';
3
3
  import { logger } from '../../../shared/logger.js';
4
4
  import '@dynamic-labs/iconic';
@@ -27,6 +27,9 @@ const transactionErrorMessage = (error) => {
27
27
  if (TransactionGasCannotBeSponsoredError.isInstance(error)) {
28
28
  return;
29
29
  }
30
+ if (InsufficientFundsError.isInstance(error)) {
31
+ return errorCodesMapping.INSUFFICIENT_FUNDS;
32
+ }
30
33
  const { code } = error;
31
34
  const defaultMessage = 'Something went wrong.';
32
35
  // turnkey request errors
@@ -36,6 +36,7 @@ require('../../../../components/OverlayCard/OverlayCard.context.cjs');
36
36
  require('../../../../context/FooterAnimationContext/index.cjs');
37
37
  require('../../../../context/MockContext/MockContext.cjs');
38
38
  require('../../../../context/QrCodeContext/QrCodeContext.cjs');
39
+ var useIsTurnkeyWallet = require('../../../../utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs');
39
40
  var Typography = require('../../../../components/Typography/Typography.cjs');
40
41
  require('../../../../context/WalletGroupContext/WalletGroupContext.cjs');
41
42
  require('../DynamicWidgetHeader/DynamicWidgetHeader.cjs');
@@ -73,6 +74,7 @@ const ActiveWalletInformation = () => {
73
74
  const [isNetworkPickerOpen, setIsNetworkPickerOpen] = React.useState(false);
74
75
  const { primaryWallet, authToken, network, projectSettings, handleLogOut } = useInternalDynamicContext.useInternalDynamicContext();
75
76
  const { setDynamicWidgetView } = DynamicWidgetContext.useWidgetContext();
77
+ const { isTurnkeyWalletWithoutAuthenticator } = useIsTurnkeyWallet.useIsTurnkeyWallet();
76
78
  const address = primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.address;
77
79
  const nameService = useFetchNameService.useFetchNameService(address);
78
80
  const { data: testnet } = usePromise.usePromise(() => isTestnet.isTestnet(primaryWallet), { deps: [network] });
@@ -93,8 +95,8 @@ const ActiveWalletInformation = () => {
93
95
  {
94
96
  Icon: null,
95
97
  callback: () => setDynamicWidgetView('manage-passkeys'),
96
- hide: !(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.name) ||
97
- walletConnectorCore.normalizeWalletName(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.name) !== 'turnkey',
98
+ hide: !((primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.name) &&
99
+ walletConnectorCore.normalizeWalletName(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.name).startsWith('turnkey')),
98
100
  text: 'My passkeys',
99
101
  },
100
102
  {
@@ -113,9 +115,10 @@ const ActiveWalletInformation = () => {
113
115
  const evmNetworks = ((primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector) &&
114
116
  (primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector).evmNetworks) ||
115
117
  [];
118
+ const showTestnetAlert = testnet && !isTurnkeyWalletWithoutAuthenticator;
116
119
  return (jsxRuntime.jsxs("div", { className: 'active-wallet-information-container', "data-testid": 'active-wallet-information', children: [jsxRuntime.jsxs("div", { className: 'active-wallet-information', children: [jsxRuntime.jsxs("div", { className: 'active-wallet-information__header', children: [jsxRuntime.jsx("div", { className: 'active-wallet-information__avatar--centered', children: (nameService === null || nameService === void 0 ? void 0 : nameService.avatar) ? (jsxRuntime.jsx("div", { className: 'active-wallet-information__avatar', children: jsxRuntime.jsx("img", { src: nameService === null || nameService === void 0 ? void 0 : nameService.avatar, alt: '' }) })) : (jsxRuntime.jsx("div", { className: 'active-wallet-information__wallet-img', children: jsxRuntime.jsx(AuthProviderIcon.AuthProviderIcon, { jwt: authToken, iconSize: ICON_SIZE, showStatus: true }) })) }), jsxRuntime.jsxs("div", { className: 'active-wallet-information__details', children: [jsxRuntime.jsxs("div", { className: classNames.classNames('active-wallet-information__actions-container', {
117
120
  'active-wallet-information__actions-container--centered': !(nameService === null || nameService === void 0 ? void 0 : nameService.name),
118
- }), children: [jsxRuntime.jsxs("div", { children: [jsxRuntime.jsx(Typography.Typography, { className: 'active-wallet-information__handle', color: 'primary', variant: 'body_normal', children: nameService === null || nameService === void 0 ? void 0 : nameService.name }), jsxRuntime.jsx(Typography.Typography, { className: 'active-wallet-information__address', weight: (nameService === null || nameService === void 0 ? void 0 : nameService.name) ? 'regular' : 'medium', variant: (nameService === null || nameService === void 0 ? void 0 : nameService.name) ? 'body_small' : 'body_normal', color: (nameService === null || nameService === void 0 ? void 0 : nameService.name) ? 'secondary' : 'primary', children: shortenWalletAddress.shortenWalletAddress(address, 4, 4) })] }), jsxRuntime.jsx(DotsMenu.DotsMenu, { "data-testid": 'dots-menu', options: options, buttonClassName: 'active-wallet-information__dots-menu', buttonClassNameWithOpenMenu: 'active-wallet-information__dots-menu' })] }), jsxRuntime.jsx(NetworkPicker.NetworkPicker, { connector: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, mainClassName: 'active-wallet-information__network-picker', buttonClassName: 'active-wallet-information__network-picker-button', evmNetworks: evmNetworks, showNetworkName: true })] })] }), testnet && (jsxRuntime.jsx(Alert.Alert, { variant: 'warning', children: t('dyn_active_wallet_info.testnet_warning') }))] }), jsxRuntime.jsxs("div", { className: 'balance-container', children: [jsxRuntime.jsx(Typography.Typography, { color: 'secondary', variant: 'body_small', children: "Balance" }), primaryWallet && (jsxRuntime.jsx(Balance.Balance, { className: 'balance-container__balance', connector: primaryWallet.connector, address: primaryWallet.address, network: network }))] })] }));
121
+ }), children: [jsxRuntime.jsxs("div", { children: [jsxRuntime.jsx(Typography.Typography, { className: 'active-wallet-information__handle', color: 'primary', variant: 'body_normal', children: nameService === null || nameService === void 0 ? void 0 : nameService.name }), jsxRuntime.jsx(Typography.Typography, { className: 'active-wallet-information__address', weight: (nameService === null || nameService === void 0 ? void 0 : nameService.name) ? 'regular' : 'medium', variant: (nameService === null || nameService === void 0 ? void 0 : nameService.name) ? 'body_small' : 'body_normal', color: (nameService === null || nameService === void 0 ? void 0 : nameService.name) ? 'secondary' : 'primary', children: shortenWalletAddress.shortenWalletAddress(address, 4, 4) })] }), jsxRuntime.jsx(DotsMenu.DotsMenu, { "data-testid": 'dots-menu', options: options, buttonClassName: 'active-wallet-information__dots-menu', buttonClassNameWithOpenMenu: 'active-wallet-information__dots-menu' })] }), jsxRuntime.jsx(NetworkPicker.NetworkPicker, { currentNetwork: network, connector: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, mainClassName: 'active-wallet-information__network-picker', buttonClassName: 'active-wallet-information__network-picker-button', evmNetworks: evmNetworks, showNetworkName: true })] })] }), showTestnetAlert && (jsxRuntime.jsx(Alert.Alert, { variant: 'warning', children: t('dyn_active_wallet_info.testnet_warning') }))] }), jsxRuntime.jsxs("div", { className: 'balance-container', children: [jsxRuntime.jsx(Typography.Typography, { color: 'secondary', variant: 'body_small', children: "Balance" }), primaryWallet && (jsxRuntime.jsx(Balance.Balance, { className: 'balance-container__balance', connector: primaryWallet.connector, address: primaryWallet.address, network: network }))] })] }));
119
122
  };
120
123
 
121
124
  exports.ActiveWalletInformation = ActiveWalletInformation;
@@ -32,6 +32,7 @@ import '../../../../components/OverlayCard/OverlayCard.context.js';
32
32
  import '../../../../context/FooterAnimationContext/index.js';
33
33
  import '../../../../context/MockContext/MockContext.js';
34
34
  import '../../../../context/QrCodeContext/QrCodeContext.js';
35
+ import { useIsTurnkeyWallet } from '../../../../utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js';
35
36
  import { Typography } from '../../../../components/Typography/Typography.js';
36
37
  import '../../../../context/WalletGroupContext/WalletGroupContext.js';
37
38
  import '../DynamicWidgetHeader/DynamicWidgetHeader.js';
@@ -69,6 +70,7 @@ const ActiveWalletInformation = () => {
69
70
  const [isNetworkPickerOpen, setIsNetworkPickerOpen] = useState(false);
70
71
  const { primaryWallet, authToken, network, projectSettings, handleLogOut } = useInternalDynamicContext();
71
72
  const { setDynamicWidgetView } = useWidgetContext();
73
+ const { isTurnkeyWalletWithoutAuthenticator } = useIsTurnkeyWallet();
72
74
  const address = primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.address;
73
75
  const nameService = useFetchNameService(address);
74
76
  const { data: testnet } = usePromise(() => isTestnet(primaryWallet), { deps: [network] });
@@ -89,8 +91,8 @@ const ActiveWalletInformation = () => {
89
91
  {
90
92
  Icon: null,
91
93
  callback: () => setDynamicWidgetView('manage-passkeys'),
92
- hide: !(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.name) ||
93
- normalizeWalletName(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.name) !== 'turnkey',
94
+ hide: !((primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.name) &&
95
+ normalizeWalletName(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.name).startsWith('turnkey')),
94
96
  text: 'My passkeys',
95
97
  },
96
98
  {
@@ -109,9 +111,10 @@ const ActiveWalletInformation = () => {
109
111
  const evmNetworks = ((primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector) &&
110
112
  (primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector).evmNetworks) ||
111
113
  [];
114
+ const showTestnetAlert = testnet && !isTurnkeyWalletWithoutAuthenticator;
112
115
  return (jsxs("div", { className: 'active-wallet-information-container', "data-testid": 'active-wallet-information', children: [jsxs("div", { className: 'active-wallet-information', children: [jsxs("div", { className: 'active-wallet-information__header', children: [jsx("div", { className: 'active-wallet-information__avatar--centered', children: (nameService === null || nameService === void 0 ? void 0 : nameService.avatar) ? (jsx("div", { className: 'active-wallet-information__avatar', children: jsx("img", { src: nameService === null || nameService === void 0 ? void 0 : nameService.avatar, alt: '' }) })) : (jsx("div", { className: 'active-wallet-information__wallet-img', children: jsx(AuthProviderIcon, { jwt: authToken, iconSize: ICON_SIZE, showStatus: true }) })) }), jsxs("div", { className: 'active-wallet-information__details', children: [jsxs("div", { className: classNames('active-wallet-information__actions-container', {
113
116
  'active-wallet-information__actions-container--centered': !(nameService === null || nameService === void 0 ? void 0 : nameService.name),
114
- }), children: [jsxs("div", { children: [jsx(Typography, { className: 'active-wallet-information__handle', color: 'primary', variant: 'body_normal', children: nameService === null || nameService === void 0 ? void 0 : nameService.name }), jsx(Typography, { className: 'active-wallet-information__address', weight: (nameService === null || nameService === void 0 ? void 0 : nameService.name) ? 'regular' : 'medium', variant: (nameService === null || nameService === void 0 ? void 0 : nameService.name) ? 'body_small' : 'body_normal', color: (nameService === null || nameService === void 0 ? void 0 : nameService.name) ? 'secondary' : 'primary', children: shortenWalletAddress(address, 4, 4) })] }), jsx(DotsMenu, { "data-testid": 'dots-menu', options: options, buttonClassName: 'active-wallet-information__dots-menu', buttonClassNameWithOpenMenu: 'active-wallet-information__dots-menu' })] }), jsx(NetworkPicker, { connector: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, mainClassName: 'active-wallet-information__network-picker', buttonClassName: 'active-wallet-information__network-picker-button', evmNetworks: evmNetworks, showNetworkName: true })] })] }), testnet && (jsx(Alert, { variant: 'warning', children: t('dyn_active_wallet_info.testnet_warning') }))] }), jsxs("div", { className: 'balance-container', children: [jsx(Typography, { color: 'secondary', variant: 'body_small', children: "Balance" }), primaryWallet && (jsx(Balance, { className: 'balance-container__balance', connector: primaryWallet.connector, address: primaryWallet.address, network: network }))] })] }));
117
+ }), children: [jsxs("div", { children: [jsx(Typography, { className: 'active-wallet-information__handle', color: 'primary', variant: 'body_normal', children: nameService === null || nameService === void 0 ? void 0 : nameService.name }), jsx(Typography, { className: 'active-wallet-information__address', weight: (nameService === null || nameService === void 0 ? void 0 : nameService.name) ? 'regular' : 'medium', variant: (nameService === null || nameService === void 0 ? void 0 : nameService.name) ? 'body_small' : 'body_normal', color: (nameService === null || nameService === void 0 ? void 0 : nameService.name) ? 'secondary' : 'primary', children: shortenWalletAddress(address, 4, 4) })] }), jsx(DotsMenu, { "data-testid": 'dots-menu', options: options, buttonClassName: 'active-wallet-information__dots-menu', buttonClassNameWithOpenMenu: 'active-wallet-information__dots-menu' })] }), jsx(NetworkPicker, { currentNetwork: network, connector: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, mainClassName: 'active-wallet-information__network-picker', buttonClassName: 'active-wallet-information__network-picker-button', evmNetworks: evmNetworks, showNetworkName: true })] })] }), showTestnetAlert && (jsx(Alert, { variant: 'warning', children: t('dyn_active_wallet_info.testnet_warning') }))] }), jsxs("div", { className: 'balance-container', children: [jsx(Typography, { color: 'secondary', variant: 'body_small', children: "Balance" }), primaryWallet && (jsx(Balance, { className: 'balance-container__balance', connector: primaryWallet.connector, address: primaryWallet.address, network: network }))] })] }));
115
118
  };
116
119
 
117
120
  export { ActiveWalletInformation };
@@ -62,7 +62,7 @@ require('react-focus-lock');
62
62
 
63
63
  const DynamicNav = () => {
64
64
  const [isNetworkPickerOpen, setIsNetworkPickerOpen] = React.useState(false);
65
- const { primaryWallet, projectSettings } = useInternalDynamicContext.useInternalDynamicContext();
65
+ const { primaryWallet, projectSettings, network } = useInternalDynamicContext.useInternalDynamicContext();
66
66
  const { inlineControlsRef } = DynamicWidgetContext.useWidgetContext();
67
67
  const evmNetworks = ((primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector) &&
68
68
  primaryWallet.connector.evmNetworks) ||
@@ -70,7 +70,7 @@ const DynamicNav = () => {
70
70
  if (!projectSettings)
71
71
  return null;
72
72
  const shouldHideNetwork = projectSettings.sdk.hideNetworkInDynamicWidget;
73
- return (jsxRuntime.jsx(IsBrowser.IsBrowser, { children: jsxRuntime.jsxs("div", { ref: inlineControlsRef, "data-testid": 'DynamicNav', className: 'dynamic-widget-inline-controls', children: [!shouldHideNetwork && primaryWallet && (jsxRuntime.jsx(PopperContext.PopperProvider, { children: jsxRuntime.jsx(NetworkPicker.NetworkPicker, { connector: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, showNetworkName: true, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, mainClassName: 'dynamic-widget-inline-controls__network-picker-main', buttonClassName: 'dynamic-widget-inline-controls__network-picker', listClassName: 'dynamic-widget-inline-controls__network-picker-list', checkboxClassName: 'dynamic-widget-inline-controls__network-picker-checkbox', evmNetworks: evmNetworks }) })), jsxRuntime.jsx("div", { className: 'dynamic-widget-inline-controls__account-control-container', children: jsxRuntime.jsx(AccountControl.AccountControl, { className: 'dynamic-widget-inline-controls__account-control' }) })] }) }));
73
+ return (jsxRuntime.jsx(IsBrowser.IsBrowser, { children: jsxRuntime.jsxs("div", { ref: inlineControlsRef, "data-testid": 'DynamicNav', className: 'dynamic-widget-inline-controls', children: [!shouldHideNetwork && primaryWallet && (jsxRuntime.jsx(PopperContext.PopperProvider, { children: jsxRuntime.jsx(NetworkPicker.NetworkPicker, { currentNetwork: network, connector: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, showNetworkName: true, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, mainClassName: 'dynamic-widget-inline-controls__network-picker-main', buttonClassName: 'dynamic-widget-inline-controls__network-picker', listClassName: 'dynamic-widget-inline-controls__network-picker-list', checkboxClassName: 'dynamic-widget-inline-controls__network-picker-checkbox', evmNetworks: evmNetworks }) })), jsxRuntime.jsx("div", { className: 'dynamic-widget-inline-controls__account-control-container', children: jsxRuntime.jsx(AccountControl.AccountControl, { className: 'dynamic-widget-inline-controls__account-control' }) })] }) }));
74
74
  };
75
75
  const ShadowedDynamicNav = () => (jsxRuntime.jsx(ShadowDOM.ShadowDOM, { children: jsxRuntime.jsx(DynamicNav, {}) }));
76
76
 
@@ -58,7 +58,7 @@ import 'react-focus-lock';
58
58
 
59
59
  const DynamicNav = () => {
60
60
  const [isNetworkPickerOpen, setIsNetworkPickerOpen] = useState(false);
61
- const { primaryWallet, projectSettings } = useInternalDynamicContext();
61
+ const { primaryWallet, projectSettings, network } = useInternalDynamicContext();
62
62
  const { inlineControlsRef } = useWidgetContext();
63
63
  const evmNetworks = ((primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector) &&
64
64
  primaryWallet.connector.evmNetworks) ||
@@ -66,7 +66,7 @@ const DynamicNav = () => {
66
66
  if (!projectSettings)
67
67
  return null;
68
68
  const shouldHideNetwork = projectSettings.sdk.hideNetworkInDynamicWidget;
69
- return (jsx(IsBrowser, { children: jsxs("div", { ref: inlineControlsRef, "data-testid": 'DynamicNav', className: 'dynamic-widget-inline-controls', children: [!shouldHideNetwork && primaryWallet && (jsx(PopperProvider, { children: jsx(NetworkPicker, { connector: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, showNetworkName: true, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, mainClassName: 'dynamic-widget-inline-controls__network-picker-main', buttonClassName: 'dynamic-widget-inline-controls__network-picker', listClassName: 'dynamic-widget-inline-controls__network-picker-list', checkboxClassName: 'dynamic-widget-inline-controls__network-picker-checkbox', evmNetworks: evmNetworks }) })), jsx("div", { className: 'dynamic-widget-inline-controls__account-control-container', children: jsx(AccountControl, { className: 'dynamic-widget-inline-controls__account-control' }) })] }) }));
69
+ return (jsx(IsBrowser, { children: jsxs("div", { ref: inlineControlsRef, "data-testid": 'DynamicNav', className: 'dynamic-widget-inline-controls', children: [!shouldHideNetwork && primaryWallet && (jsx(PopperProvider, { children: jsx(NetworkPicker, { currentNetwork: network, connector: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, showNetworkName: true, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, mainClassName: 'dynamic-widget-inline-controls__network-picker-main', buttonClassName: 'dynamic-widget-inline-controls__network-picker', listClassName: 'dynamic-widget-inline-controls__network-picker-list', checkboxClassName: 'dynamic-widget-inline-controls__network-picker-checkbox', evmNetworks: evmNetworks }) })), jsx("div", { className: 'dynamic-widget-inline-controls__account-control-container', children: jsx(AccountControl, { className: 'dynamic-widget-inline-controls__account-control' }) })] }) }));
70
70
  };
71
71
  const ShadowedDynamicNav = () => (jsx(ShadowDOM, { children: jsx(DynamicNav, {}) }));
72
72
 
@@ -41,6 +41,7 @@ require('react-focus-lock');
41
41
  require('formik');
42
42
  require('yup');
43
43
  require('../../../../components/OverlayCard/OverlayCard.context.cjs');
44
+ var PasskeyCreatedSuccessBanner = require('../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.cjs');
44
45
  require('../../../../context/FooterAnimationContext/index.cjs');
45
46
  require('../../../../context/MockContext/MockContext.cjs');
46
47
  require('../../../../context/QrCodeContext/QrCodeContext.cjs');
@@ -85,7 +86,7 @@ const DynamicWidgetHeader = ({ variant, }) => {
85
86
  return 'profile';
86
87
  return dynamicWidgetView;
87
88
  }, [dynamicWidgetView, isKYCEnabled, multiWallet]);
88
- return (jsxRuntime.jsxs("div", { className: 'dynamic-widget-header', children: [isKYCEnabled && multiWallet && (jsxRuntime.jsx(OptionsSwitcher.OptionsSwitcher, { rootClassName: 'dynamic-widget-header__switcher', value: dynamicWidgetSwitcherOverwriteValue, options: options, onChange: (view) => setDynamicWidgetView(view) })), (dynamicWidgetSwitcherOverwriteValue === 'wallets' ||
89
+ return (jsxRuntime.jsxs("div", { className: 'dynamic-widget-header', children: [isKYCEnabled && multiWallet && (jsxRuntime.jsx(OptionsSwitcher.OptionsSwitcher, { rootClassName: 'dynamic-widget-header__switcher', value: dynamicWidgetSwitcherOverwriteValue, options: options, onChange: (view) => setDynamicWidgetView(view) })), jsxRuntime.jsx(PasskeyCreatedSuccessBanner.PasskeyCreatedSuccessBanner, { className: 'dynamic-widget-header__passkey-success' }), (dynamicWidgetSwitcherOverwriteValue === 'wallets' ||
89
90
  (dynamicWidgetSwitcherOverwriteValue === 'profile' &&
90
91
  !multiWallet)) && jsxRuntime.jsx(DynamicWidgetWalletHeader.DynamicWidgetWalletHeader, { variant: variant })] }));
91
92
  };
@@ -37,6 +37,7 @@ import 'react-focus-lock';
37
37
  import 'formik';
38
38
  import 'yup';
39
39
  import '../../../../components/OverlayCard/OverlayCard.context.js';
40
+ import { PasskeyCreatedSuccessBanner } from '../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.js';
40
41
  import '../../../../context/FooterAnimationContext/index.js';
41
42
  import '../../../../context/MockContext/MockContext.js';
42
43
  import '../../../../context/QrCodeContext/QrCodeContext.js';
@@ -77,7 +78,7 @@ const DynamicWidgetHeader = ({ variant, }) => {
77
78
  return 'profile';
78
79
  return dynamicWidgetView;
79
80
  }, [dynamicWidgetView, isKYCEnabled, multiWallet]);
80
- return (jsxs("div", { className: 'dynamic-widget-header', children: [isKYCEnabled && multiWallet && (jsx(OptionsSwitcher, { rootClassName: 'dynamic-widget-header__switcher', value: dynamicWidgetSwitcherOverwriteValue, options: options, onChange: (view) => setDynamicWidgetView(view) })), (dynamicWidgetSwitcherOverwriteValue === 'wallets' ||
81
+ return (jsxs("div", { className: 'dynamic-widget-header', children: [isKYCEnabled && multiWallet && (jsx(OptionsSwitcher, { rootClassName: 'dynamic-widget-header__switcher', value: dynamicWidgetSwitcherOverwriteValue, options: options, onChange: (view) => setDynamicWidgetView(view) })), jsx(PasskeyCreatedSuccessBanner, { className: 'dynamic-widget-header__passkey-success' }), (dynamicWidgetSwitcherOverwriteValue === 'wallets' ||
81
82
  (dynamicWidgetSwitcherOverwriteValue === 'profile' &&
82
83
  !multiWallet)) && jsx(DynamicWidgetWalletHeader, { variant: variant })] }));
83
84
  };
@@ -36,6 +36,7 @@ require('../../../../../components/OverlayCard/OverlayCard.context.cjs');
36
36
  require('../../../../../context/FooterAnimationContext/index.cjs');
37
37
  require('../../../../../context/MockContext/MockContext.cjs');
38
38
  require('../../../../../context/QrCodeContext/QrCodeContext.cjs');
39
+ var useIsTurnkeyWallet = require('../../../../../utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs');
39
40
  var Typography = require('../../../../../components/Typography/Typography.cjs');
40
41
  require('../../../../../context/WalletGroupContext/WalletGroupContext.cjs');
41
42
  require('../DynamicWidgetHeader.cjs');
@@ -56,6 +57,7 @@ require('formik');
56
57
  var Button = require('../../../../../components/Button/Button.cjs');
57
58
  require('../../../../../components/IconButton/IconButton.cjs');
58
59
  require('../../../../../components/Alert/Alert.cjs');
60
+ var SecureTurnkeyWalletCard = require('../../../../../components/SecureTurnkeyWalletCard/SecureTurnkeyWalletCard.cjs');
59
61
  require('../../../views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs');
60
62
  require('../../../../../components/InlineWidget/InlineWidget.cjs');
61
63
  require('../../../../../components/MenuList/Dropdown/Dropdown.cjs');
@@ -76,6 +78,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
76
78
  const DynamicWidgetWalletHeader = ({ variant, }) => {
77
79
  const { primaryWallet, user } = useInternalDynamicContext.useInternalDynamicContext();
78
80
  const { open: openSendBalanceModal } = SendBalanceContext.useSendBalance();
81
+ const { isTurnkeyWalletWithoutAuthenticator } = useIsTurnkeyWallet.useIsTurnkeyWallet();
79
82
  const { supportsFunding, setShowFunding, fundingEnabled } = FundingContext.useFundingContext();
80
83
  const { setDynamicWidgetView, setIsOpen } = DynamicWidgetContext.useWidgetContext();
81
84
  const isSendBalanceEnabled = React.useMemo(() => {
@@ -113,11 +116,11 @@ const DynamicWidgetWalletHeader = ({ variant, }) => {
113
116
  }
114
117
  };
115
118
  const isActionsVisible = isSendBalanceEnabled || fundingEnabled;
116
- return (jsxRuntime.jsxs("div", { className: 'dynamic-widget-wallet-header', "data-testid": 'dynamic-widget-wallet-header', children: [renderWalletHeader(), primaryWallet ? (jsxRuntime.jsx("div", { "data-testid": 'primaryWalletStatus', className: 'dynamic-widget-wallet-header__wallet-info', children: 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:
117
- // eslint-disable-next-line react/jsx-wrap-multilines
118
- 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:
119
- // eslint-disable-next-line react/jsx-wrap-multilines
120
- 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: renderEmailOrSocialHeader() }))] }));
119
+ 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(SecureTurnkeyWalletCard.SecureTurnkeyWalletCard, { 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 || isTurnkeyWalletWithoutAuthenticator, startSlot:
120
+ // eslint-disable-next-line react/jsx-wrap-multilines
121
+ 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, disabled: isTurnkeyWalletWithoutAuthenticator, startSlot:
122
+ // eslint-disable-next-line react/jsx-wrap-multilines
123
+ 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: renderEmailOrSocialHeader() }))] }));
121
124
  };
122
125
  React__default["default"].memo(DynamicWidgetWalletHeader);
123
126
 
@@ -32,6 +32,7 @@ import '../../../../../components/OverlayCard/OverlayCard.context.js';
32
32
  import '../../../../../context/FooterAnimationContext/index.js';
33
33
  import '../../../../../context/MockContext/MockContext.js';
34
34
  import '../../../../../context/QrCodeContext/QrCodeContext.js';
35
+ import { useIsTurnkeyWallet } from '../../../../../utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js';
35
36
  import { Typography } from '../../../../../components/Typography/Typography.js';
36
37
  import '../../../../../context/WalletGroupContext/WalletGroupContext.js';
37
38
  import '../DynamicWidgetHeader.js';
@@ -52,6 +53,7 @@ import 'formik';
52
53
  import { Button } from '../../../../../components/Button/Button.js';
53
54
  import '../../../../../components/IconButton/IconButton.js';
54
55
  import '../../../../../components/Alert/Alert.js';
56
+ import { SecureTurnkeyWalletCard } from '../../../../../components/SecureTurnkeyWalletCard/SecureTurnkeyWalletCard.js';
55
57
  import '../../../views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
56
58
  import '../../../../../components/InlineWidget/InlineWidget.js';
57
59
  import '../../../../../components/MenuList/Dropdown/Dropdown.js';
@@ -68,6 +70,7 @@ import { UserAvatar } from '../../../../../components/UserAvatar/UserAvatar.js';
68
70
  const DynamicWidgetWalletHeader = ({ variant, }) => {
69
71
  const { primaryWallet, user } = useInternalDynamicContext();
70
72
  const { open: openSendBalanceModal } = useSendBalance();
73
+ const { isTurnkeyWalletWithoutAuthenticator } = useIsTurnkeyWallet();
71
74
  const { supportsFunding, setShowFunding, fundingEnabled } = useFundingContext();
72
75
  const { setDynamicWidgetView, setIsOpen } = useWidgetContext();
73
76
  const isSendBalanceEnabled = useMemo(() => {
@@ -105,11 +108,11 @@ const DynamicWidgetWalletHeader = ({ variant, }) => {
105
108
  }
106
109
  };
107
110
  const isActionsVisible = isSendBalanceEnabled || fundingEnabled;
108
- return (jsxs("div", { className: 'dynamic-widget-wallet-header', "data-testid": 'dynamic-widget-wallet-header', children: [renderWalletHeader(), primaryWallet ? (jsx("div", { "data-testid": 'primaryWalletStatus', className: 'dynamic-widget-wallet-header__wallet-info', children: 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:
109
- // eslint-disable-next-line react/jsx-wrap-multilines
110
- 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:
111
- // eslint-disable-next-line react/jsx-wrap-multilines
112
- 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: renderEmailOrSocialHeader() }))] }));
111
+ 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(SecureTurnkeyWalletCard, { 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 || isTurnkeyWalletWithoutAuthenticator, startSlot:
112
+ // eslint-disable-next-line react/jsx-wrap-multilines
113
+ 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, disabled: isTurnkeyWalletWithoutAuthenticator, startSlot:
114
+ // eslint-disable-next-line react/jsx-wrap-multilines
115
+ 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: renderEmailOrSocialHeader() }))] }));
113
116
  };
114
117
  React__default.memo(DynamicWidgetWalletHeader);
115
118
 
@@ -46,13 +46,13 @@ require('../../context/DynamicWidgetContext.cjs');
46
46
  require('yup');
47
47
  require('../../../../components/UserProfile/parts/UserProfileField/components/VerifiedEmailIcon/VerifiedEmailIcon.cjs');
48
48
  require('@dynamic-labs/types');
49
+ var useMutation = require('../../../../utils/hooks/useMutation/useMutation.cjs');
49
50
  require('../../../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs');
50
51
  require('../../../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
51
52
  require('formik');
52
53
  require('../../../../components/IconButton/IconButton.cjs');
53
54
  require('../../../../components/Alert/Alert.cjs');
54
55
  require('../../views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs');
55
- var useMutation = require('../../../../utils/hooks/useMutation/useMutation.cjs');
56
56
  require('../../../../components/InlineWidget/InlineWidget.cjs');
57
57
  require('../../../../components/MenuList/Dropdown/Dropdown.cjs');
58
58
  var OTPVerificationView = require('../../../../components/OTPVerificationView/OTPVerificationView.cjs');
@@ -61,7 +61,7 @@ require('../../../../components/Popper/PopperContext/PopperContext.cjs');
61
61
  require('react-focus-lock');
62
62
 
63
63
  const EmailOTPConnectorPendingSignModalContent = ({ walletConnector }) => {
64
- const { setSelectedWalletWithAction, selectedWalletWithAction, setPrimaryWalletId, setMultiWalletWidgetState, computeConnectedStateForWallets, } = useInternalDynamicContext.useInternalDynamicContext();
64
+ const { setSelectedWalletWithAction, selectedWalletWithAction, setPrimaryWalletId, setMultiWalletWidgetState, } = useInternalDynamicContext.useInternalDynamicContext();
65
65
  const [error, setError] = React.useState();
66
66
  const { email } = walletConnector;
67
67
  if (!email) {
@@ -73,7 +73,6 @@ const EmailOTPConnectorPendingSignModalContent = ({ walletConnector }) => {
73
73
  if (!selectedWalletWithAction) {
74
74
  return;
75
75
  }
76
- yield computeConnectedStateForWallets();
77
76
  setMultiWalletWidgetState('idle');
78
77
  setSelectedWalletWithAction(null);
79
78
  setPrimaryWalletId(selectedWalletWithAction.wallet.id);
@@ -42,13 +42,13 @@ import '../../context/DynamicWidgetContext.js';
42
42
  import 'yup';
43
43
  import '../../../../components/UserProfile/parts/UserProfileField/components/VerifiedEmailIcon/VerifiedEmailIcon.js';
44
44
  import '@dynamic-labs/types';
45
+ import { useMutation } from '../../../../utils/hooks/useMutation/useMutation.js';
45
46
  import '../../../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js';
46
47
  import '../../../../context/UserFieldEditorContext/UserFieldEditorContext.js';
47
48
  import 'formik';
48
49
  import '../../../../components/IconButton/IconButton.js';
49
50
  import '../../../../components/Alert/Alert.js';
50
51
  import '../../views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
51
- import { useMutation } from '../../../../utils/hooks/useMutation/useMutation.js';
52
52
  import '../../../../components/InlineWidget/InlineWidget.js';
53
53
  import '../../../../components/MenuList/Dropdown/Dropdown.js';
54
54
  import { OTPVerificationView } from '../../../../components/OTPVerificationView/OTPVerificationView.js';
@@ -57,7 +57,7 @@ import '../../../../components/Popper/PopperContext/PopperContext.js';
57
57
  import 'react-focus-lock';
58
58
 
59
59
  const EmailOTPConnectorPendingSignModalContent = ({ walletConnector }) => {
60
- const { setSelectedWalletWithAction, selectedWalletWithAction, setPrimaryWalletId, setMultiWalletWidgetState, computeConnectedStateForWallets, } = useInternalDynamicContext();
60
+ const { setSelectedWalletWithAction, selectedWalletWithAction, setPrimaryWalletId, setMultiWalletWidgetState, } = useInternalDynamicContext();
61
61
  const [error, setError] = useState();
62
62
  const { email } = walletConnector;
63
63
  if (!email) {
@@ -69,7 +69,6 @@ const EmailOTPConnectorPendingSignModalContent = ({ walletConnector }) => {
69
69
  if (!selectedWalletWithAction) {
70
70
  return;
71
71
  }
72
- yield computeConnectedStateForWallets();
73
72
  setMultiWalletWidgetState('idle');
74
73
  setSelectedWalletWithAction(null);
75
74
  setPrimaryWalletId(selectedWalletWithAction.wallet.id);
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
+ var classNames = require('../../../../utils/functions/classNames/classNames.cjs');
6
7
  require('react');
7
8
  require('@dynamic-labs/utils');
8
9
  require('@dynamic-labs/sdk-api');
@@ -11,7 +12,7 @@ require('../../../../shared/logger.cjs');
11
12
  require('@dynamic-labs/iconic');
12
13
  require('@dynamic-labs/wallet-connector-core');
13
14
  require('../../../../context/ViewContext/ViewContext.cjs');
14
- var addWallet = require('../../../../shared/assets/add-wallet.cjs');
15
+ var embeddedWalletIcon = require('../../../../shared/assets/embedded-wallet-icon.cjs');
15
16
  require('@dynamic-labs/wallet-book');
16
17
  require('../../../../utils/constants/colors.cjs');
17
18
  require('../../../../shared/utils/classes/storage/localStorage.cjs');
@@ -34,6 +35,7 @@ require('../../../../components/OverlayCard/OverlayCard.context.cjs');
34
35
  require('../../../../context/FooterAnimationContext/index.cjs');
35
36
  require('../../../../context/MockContext/MockContext.cjs');
36
37
  require('../../../../context/QrCodeContext/QrCodeContext.cjs');
38
+ var useIsTurnkeyWallet = require('../../../../utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs');
37
39
  var Typography = require('../../../../components/Typography/Typography.cjs');
38
40
  require('../../../../context/WalletGroupContext/WalletGroupContext.cjs');
39
41
  require('../DynamicWidgetHeader/DynamicWidgetHeader.cjs');
@@ -60,6 +62,13 @@ require('../../../../components/Popper/Popper/Popper.cjs');
60
62
  require('../../../../components/Popper/PopperContext/PopperContext.cjs');
61
63
  require('react-focus-lock');
62
64
 
63
- const EmptyWallets = ({ text }) => (jsxRuntime.jsxs("div", { className: 'empty-wallet__container', children: [jsxRuntime.jsx("div", { className: 'empty-wallet__icon-container', children: jsxRuntime.jsx(Icon.Icon, { color: 'text-primary', size: 'medium', children: jsxRuntime.jsx(addWallet.ReactComponent, {}) }) }), jsxRuntime.jsx("div", { className: 'empty-wallet__text-container', children: jsxRuntime.jsx(Typography.Typography, { variant: 'body_small', color: 'primary', children: text }) })] }));
65
+ const EmptyWallets = ({ text }) => {
66
+ const { isTurnkeyWalletWithoutAuthenticator } = useIsTurnkeyWallet.useIsTurnkeyWallet();
67
+ return (jsxRuntime.jsxs("div", { className: classNames.classNames('empty-wallet__container', {
68
+ 'empty-wallet__container--big': !isTurnkeyWalletWithoutAuthenticator,
69
+ }), children: [jsxRuntime.jsx(Icon.Icon, { className: 'empty-wallet__icon', size: 'medium', children: jsxRuntime.jsx(embeddedWalletIcon.ReactComponent, {}) }), jsxRuntime.jsx("div", { className: classNames.classNames({
70
+ 'empty-wallet__text-container': !isTurnkeyWalletWithoutAuthenticator,
71
+ }), children: jsxRuntime.jsx(Typography.Typography, { variant: 'body_small', color: 'secondary', children: text }) })] }));
72
+ };
64
73
 
65
74
  exports.EmptyWallets = EmptyWallets;
@@ -1,4 +1,5 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { classNames } from '../../../../utils/functions/classNames/classNames.js';
2
3
  import 'react';
3
4
  import '@dynamic-labs/utils';
4
5
  import '@dynamic-labs/sdk-api';
@@ -7,7 +8,7 @@ import '../../../../shared/logger.js';
7
8
  import '@dynamic-labs/iconic';
8
9
  import '@dynamic-labs/wallet-connector-core';
9
10
  import '../../../../context/ViewContext/ViewContext.js';
10
- import { ReactComponent as SvgAddWallet } from '../../../../shared/assets/add-wallet.js';
11
+ import { ReactComponent as SvgEmbeddedWalletIcon } from '../../../../shared/assets/embedded-wallet-icon.js';
11
12
  import '@dynamic-labs/wallet-book';
12
13
  import '../../../../utils/constants/colors.js';
13
14
  import '../../../../shared/utils/classes/storage/localStorage.js';
@@ -30,6 +31,7 @@ import '../../../../components/OverlayCard/OverlayCard.context.js';
30
31
  import '../../../../context/FooterAnimationContext/index.js';
31
32
  import '../../../../context/MockContext/MockContext.js';
32
33
  import '../../../../context/QrCodeContext/QrCodeContext.js';
34
+ import { useIsTurnkeyWallet } from '../../../../utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js';
33
35
  import { Typography } from '../../../../components/Typography/Typography.js';
34
36
  import '../../../../context/WalletGroupContext/WalletGroupContext.js';
35
37
  import '../DynamicWidgetHeader/DynamicWidgetHeader.js';
@@ -56,6 +58,13 @@ import '../../../../components/Popper/Popper/Popper.js';
56
58
  import '../../../../components/Popper/PopperContext/PopperContext.js';
57
59
  import 'react-focus-lock';
58
60
 
59
- const EmptyWallets = ({ text }) => (jsxs("div", { className: 'empty-wallet__container', children: [jsx("div", { className: 'empty-wallet__icon-container', children: jsx(Icon, { color: 'text-primary', size: 'medium', children: jsx(SvgAddWallet, {}) }) }), jsx("div", { className: 'empty-wallet__text-container', children: jsx(Typography, { variant: 'body_small', color: 'primary', children: text }) })] }));
61
+ const EmptyWallets = ({ text }) => {
62
+ const { isTurnkeyWalletWithoutAuthenticator } = useIsTurnkeyWallet();
63
+ return (jsxs("div", { className: classNames('empty-wallet__container', {
64
+ 'empty-wallet__container--big': !isTurnkeyWalletWithoutAuthenticator,
65
+ }), children: [jsx(Icon, { className: 'empty-wallet__icon', size: 'medium', children: jsx(SvgEmbeddedWalletIcon, {}) }), jsx("div", { className: classNames({
66
+ 'empty-wallet__text-container': !isTurnkeyWalletWithoutAuthenticator,
67
+ }), children: jsx(Typography, { variant: 'body_small', color: 'secondary', children: text }) })] }));
68
+ };
60
69
 
61
70
  export { EmptyWallets };
@@ -69,7 +69,7 @@ require('react-focus-lock');
69
69
  const Wallet = ({ wallet, ens }) => {
70
70
  var _a;
71
71
  const { id: walletId, connector, address } = wallet;
72
- const { computeConnectedStateForWallets, setPrimaryWallet, setSelectedWalletConnectorKey, setShowWidgetStatePopup, setSelectedWalletWithAction, authToken, primaryWallet, user, projectSettings, authMode, } = useInternalDynamicContext.useInternalDynamicContext();
72
+ const { setPrimaryWallet, setSelectedWalletConnectorKey, setShowWidgetStatePopup, setSelectedWalletWithAction, authToken, primaryWallet, user, projectSettings, authMode, } = useInternalDynamicContext.useInternalDynamicContext();
73
73
  const email = (_a = user === null || user === void 0 ? void 0 : user.verifiedCredentials.find((verifiedCredential) => verifiedCredential.format === 'email')) === null || _a === void 0 ? void 0 : _a.email;
74
74
  const iconSize = 20;
75
75
  const options = [
@@ -118,7 +118,6 @@ const Wallet = ({ wallet, ens }) => {
118
118
  setShowWidgetStatePopup(true);
119
119
  setSelectedWalletWithAction({ action: 'select', wallet });
120
120
  setPrimaryWallet(walletId);
121
- computeConnectedStateForWallets();
122
121
  setSelectedWalletConnectorKey(connector.key);
123
122
  });
124
123
  return (jsxRuntime.jsxs("div", { className: 'wallet__container', "data-testid": 'wallet', children: [jsxRuntime.jsxs("div", { className: 'wallet__row', children: [jsxRuntime.jsx("div", { className: 'wallet__icon-container', children: jsxRuntime.jsx(AuthProviderIcon.AuthProviderIcon, { iconSize: iconSize, jwt: authToken, wallet: wallet, showStatus: true }) }), (ens === null || ens === void 0 ? void 0 : ens.name) ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Typography.Typography, { className: 'wallet__ens-name', variant: 'body_small', color: 'primary', truncate: true, children: ens === null || ens === void 0 ? void 0 : ens.name }), jsxRuntime.jsx("div", { className: 'wallet__row__seperator' }), jsxRuntime.jsx(Typography.Typography, { variant: 'body_mini', color: 'secondary', children: shortenWalletAddress.shortenWalletAddress(address, 3, 3) })] })) : (jsxRuntime.jsx(Typography.Typography, { variant: 'body_small', color: 'primary', children: shortenWalletAddress.shortenWalletAddress(address, 4, 4) }))] }), jsxRuntime.jsx(DotsMenu.DotsMenu, { "data-testid": 'dots-menu', options: options, buttonClassName: 'wallet__menu', direction: 'left' })] }));
@@ -65,7 +65,7 @@ import 'react-focus-lock';
65
65
  const Wallet = ({ wallet, ens }) => {
66
66
  var _a;
67
67
  const { id: walletId, connector, address } = wallet;
68
- const { computeConnectedStateForWallets, setPrimaryWallet, setSelectedWalletConnectorKey, setShowWidgetStatePopup, setSelectedWalletWithAction, authToken, primaryWallet, user, projectSettings, authMode, } = useInternalDynamicContext();
68
+ const { setPrimaryWallet, setSelectedWalletConnectorKey, setShowWidgetStatePopup, setSelectedWalletWithAction, authToken, primaryWallet, user, projectSettings, authMode, } = useInternalDynamicContext();
69
69
  const email = (_a = user === null || user === void 0 ? void 0 : user.verifiedCredentials.find((verifiedCredential) => verifiedCredential.format === 'email')) === null || _a === void 0 ? void 0 : _a.email;
70
70
  const iconSize = 20;
71
71
  const options = [
@@ -114,7 +114,6 @@ const Wallet = ({ wallet, ens }) => {
114
114
  setShowWidgetStatePopup(true);
115
115
  setSelectedWalletWithAction({ action: 'select', wallet });
116
116
  setPrimaryWallet(walletId);
117
- computeConnectedStateForWallets();
118
117
  setSelectedWalletConnectorKey(connector.key);
119
118
  });
120
119
  return (jsxs("div", { className: 'wallet__container', "data-testid": 'wallet', children: [jsxs("div", { className: 'wallet__row', children: [jsx("div", { className: 'wallet__icon-container', children: jsx(AuthProviderIcon, { iconSize: iconSize, jwt: authToken, wallet: wallet, showStatus: true }) }), (ens === null || ens === void 0 ? void 0 : ens.name) ? (jsxs(Fragment, { children: [jsx(Typography, { className: 'wallet__ens-name', variant: 'body_small', color: 'primary', truncate: true, children: ens === null || ens === void 0 ? void 0 : ens.name }), jsx("div", { className: 'wallet__row__seperator' }), jsx(Typography, { variant: 'body_mini', color: 'secondary', children: shortenWalletAddress(address, 3, 3) })] })) : (jsx(Typography, { variant: 'body_small', color: 'primary', children: shortenWalletAddress(address, 4, 4) }))] }), jsx(DotsMenu, { "data-testid": 'dots-menu', options: options, buttonClassName: 'wallet__menu', direction: 'left' })] }));
@@ -64,7 +64,7 @@ require('../../../../../components/Popper/PopperContext/PopperContext.cjs');
64
64
  require('react-focus-lock');
65
65
 
66
66
  const SwitchOrUseActiveAccountView = ({ connectedWallet, selectedWalletToSwitchTo, }) => {
67
- const { setSelectedWalletWithAction, setSelectedWalletConnectorKey, computeConnectedStateForWallets, setPrimaryWallet, } = useInternalDynamicContext.useInternalDynamicContext();
67
+ const { setSelectedWalletWithAction, setSelectedWalletConnectorKey, setPrimaryWallet, } = useInternalDynamicContext.useInternalDynamicContext();
68
68
  const onUseActiveWalletClick = React.useCallback(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
69
69
  var _a, _b;
70
70
  if (!connectedWallet) {
@@ -75,13 +75,11 @@ const SwitchOrUseActiveAccountView = ({ connectedWallet, selectedWalletToSwitchT
75
75
  }
76
76
  setSelectedWalletWithAction({ action: 'select', wallet: connectedWallet });
77
77
  setPrimaryWallet(connectedWallet === null || connectedWallet === void 0 ? void 0 : connectedWallet.id);
78
- computeConnectedStateForWallets();
79
78
  setSelectedWalletConnectorKey(connectedWallet === null || connectedWallet === void 0 ? void 0 : connectedWallet.connector.key);
80
79
  }), [
81
80
  connectedWallet,
82
81
  setSelectedWalletWithAction,
83
82
  setPrimaryWallet,
84
- computeConnectedStateForWallets,
85
83
  setSelectedWalletConnectorKey,
86
84
  ]);
87
85
  return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs(Typography.Typography, { variant: 'body_normal', color: 'secondary', weight: 'regular', "data-testid": 'content', children: ["Wallet", ' ', jsxRuntime.jsx(Typography.Typography, { as: 'span', weight: 'medium', color: 'primary', children: shortenWalletAddress.shortenWalletAddress(selectedWalletToSwitchTo === null || selectedWalletToSwitchTo === void 0 ? void 0 : selectedWalletToSwitchTo.address, 3, 3) }), ' ', "is not active in ", selectedWalletToSwitchTo === null || selectedWalletToSwitchTo === void 0 ? void 0 : selectedWalletToSwitchTo.connector.name, ". To make active, open your ", selectedWalletToSwitchTo === null || selectedWalletToSwitchTo === void 0 ? void 0 : selectedWalletToSwitchTo.connector.name, " wallet and switch to this account."] }), jsxRuntime.jsx(Divider.Divider, { fullWidth: true, text: 'Or' }), jsxRuntime.jsx(Typography.Typography, { variant: 'body_normal', color: 'primary', children: "Use your active wallet" }), jsxRuntime.jsxs(Button.Button, { buttonClassName: 'default-prompt-modal__button', expanded: true, type: 'button', buttonPadding: 'medium', typographyProps: { variant: 'button_secondary' }, onClick: onUseActiveWalletClick, dataTestId: 'use-active-wallet-button', children: ["Select", ' ', jsxRuntime.jsx(Icon.Icon, { size: 'xsmall', children: jsxRuntime.jsx(walletBook.WalletIcon, { walletKey: selectedWalletToSwitchTo === null || selectedWalletToSwitchTo === void 0 ? void 0 : selectedWalletToSwitchTo.connector.key }) }), ' ', shortenWalletAddress.shortenWalletAddress(connectedWallet === null || connectedWallet === void 0 ? void 0 : connectedWallet.address, 3, 3)] })] }));
@@ -60,7 +60,7 @@ import '../../../../../components/Popper/PopperContext/PopperContext.js';
60
60
  import 'react-focus-lock';
61
61
 
62
62
  const SwitchOrUseActiveAccountView = ({ connectedWallet, selectedWalletToSwitchTo, }) => {
63
- const { setSelectedWalletWithAction, setSelectedWalletConnectorKey, computeConnectedStateForWallets, setPrimaryWallet, } = useInternalDynamicContext();
63
+ const { setSelectedWalletWithAction, setSelectedWalletConnectorKey, setPrimaryWallet, } = useInternalDynamicContext();
64
64
  const onUseActiveWalletClick = useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
65
65
  var _a, _b;
66
66
  if (!connectedWallet) {
@@ -71,13 +71,11 @@ const SwitchOrUseActiveAccountView = ({ connectedWallet, selectedWalletToSwitchT
71
71
  }
72
72
  setSelectedWalletWithAction({ action: 'select', wallet: connectedWallet });
73
73
  setPrimaryWallet(connectedWallet === null || connectedWallet === void 0 ? void 0 : connectedWallet.id);
74
- computeConnectedStateForWallets();
75
74
  setSelectedWalletConnectorKey(connectedWallet === null || connectedWallet === void 0 ? void 0 : connectedWallet.connector.key);
76
75
  }), [
77
76
  connectedWallet,
78
77
  setSelectedWalletWithAction,
79
78
  setPrimaryWallet,
80
- computeConnectedStateForWallets,
81
79
  setSelectedWalletConnectorKey,
82
80
  ]);
83
81
  return (jsxs(Fragment, { children: [jsxs(Typography, { variant: 'body_normal', color: 'secondary', weight: 'regular', "data-testid": 'content', children: ["Wallet", ' ', jsx(Typography, { as: 'span', weight: 'medium', color: 'primary', children: shortenWalletAddress(selectedWalletToSwitchTo === null || selectedWalletToSwitchTo === void 0 ? void 0 : selectedWalletToSwitchTo.address, 3, 3) }), ' ', "is not active in ", selectedWalletToSwitchTo === null || selectedWalletToSwitchTo === void 0 ? void 0 : selectedWalletToSwitchTo.connector.name, ". To make active, open your ", selectedWalletToSwitchTo === null || selectedWalletToSwitchTo === void 0 ? void 0 : selectedWalletToSwitchTo.connector.name, " wallet and switch to this account."] }), jsx(Divider, { fullWidth: true, text: 'Or' }), jsx(Typography, { variant: 'body_normal', color: 'primary', children: "Use your active wallet" }), jsxs(Button, { buttonClassName: 'default-prompt-modal__button', expanded: true, type: 'button', buttonPadding: 'medium', typographyProps: { variant: 'button_secondary' }, onClick: onUseActiveWalletClick, dataTestId: 'use-active-wallet-button', children: ["Select", ' ', jsx(Icon, { size: 'xsmall', children: jsx(WalletIcon, { walletKey: selectedWalletToSwitchTo === null || selectedWalletToSwitchTo === void 0 ? void 0 : selectedWalletToSwitchTo.connector.key }) }), ' ', shortenWalletAddress(connectedWallet === null || connectedWallet === void 0 ? void 0 : connectedWallet.address, 3, 3)] })] }));
@@ -60,10 +60,10 @@ require('../../views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs');
60
60
  var CopyButton = require('../../../../components/CopyButton/CopyButton.cjs');
61
61
  require('../../../../components/InlineWidget/InlineWidget.cjs');
62
62
  require('../../../../components/MenuList/Dropdown/Dropdown.cjs');
63
+ var TextButton = require('../../../../components/TextButton/TextButton.cjs');
63
64
  require('../../../../components/Popper/Popper/Popper.cjs');
64
65
  require('../../../../components/Popper/PopperContext/PopperContext.cjs');
65
66
  require('react-focus-lock');
66
- var TextButton = require('../../../../components/TextButton/TextButton.cjs');
67
67
 
68
68
  const QrCodeModalView = ({ walletId }) => {
69
69
  var _a, _b;