@dynamic-labs/sdk-react-core 3.0.0-alpha.52 → 3.0.0-alpha.53

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 (258) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/package.cjs +1 -1
  3. package/package.js +1 -1
  4. package/package.json +13 -13
  5. package/src/index.cjs +7 -5
  6. package/src/index.d.ts +1 -1
  7. package/src/index.js +4 -3
  8. package/src/lib/components/AuthProviderIcon/AuthProviderIcon.cjs +17 -16
  9. package/src/lib/components/AuthProviderIcon/AuthProviderIcon.js +18 -17
  10. package/src/lib/components/Divider/Divider.cjs +2 -2
  11. package/src/lib/components/Divider/Divider.d.ts +2 -2
  12. package/src/lib/components/Divider/Divider.js +3 -3
  13. package/src/lib/components/IconWithSpinner/IconWithSpinner.cjs +1 -1
  14. package/src/lib/components/IconWithSpinner/IconWithSpinner.js +1 -1
  15. package/src/lib/components/IconWithSpinner/Spinner/Spinner.cjs +1 -1
  16. package/src/lib/components/IconWithSpinner/Spinner/Spinner.js +1 -1
  17. package/src/lib/components/IconWithStatus/IconWithStatus.cjs +1 -1
  18. package/src/lib/components/IconWithStatus/IconWithStatus.js +1 -1
  19. package/src/lib/components/NeedHelpSection/NeedHelpSection.cjs +5 -4
  20. package/src/lib/components/NeedHelpSection/NeedHelpSection.js +6 -5
  21. package/src/lib/components/QrCodeWrapper/QrCodeWrapper.cjs +1 -1
  22. package/src/lib/components/QrCodeWrapper/QrCodeWrapper.js +1 -1
  23. package/src/lib/components/SecureEmbeddedWalletCard/SecureEmbeddedWalletCard.cjs +11 -10
  24. package/src/lib/components/SecureEmbeddedWalletCard/SecureEmbeddedWalletCard.js +12 -11
  25. package/src/lib/components/SendBalancePageLayout/SendBalancePageLayout.cjs +1 -1
  26. package/src/lib/components/SendBalancePageLayout/SendBalancePageLayout.js +1 -1
  27. package/src/lib/components/SendBalancePageLayout/components/TokensBalanceDropdown/TokensBalanceDropdown.cjs +6 -1
  28. package/src/lib/components/SendBalancePageLayout/components/TokensBalanceDropdown/TokensBalanceDropdown.js +6 -1
  29. package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.cjs +1 -1
  30. package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.d.ts +0 -1
  31. package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.js +1 -1
  32. package/src/lib/context/DynamicContext/DynamicContext.cjs +6 -12
  33. package/src/lib/context/DynamicContext/DynamicContext.js +6 -12
  34. package/src/lib/context/DynamicContext/hooks/useEmailLoginState/useEmailLoginState.cjs +1 -1
  35. package/src/lib/context/DynamicContext/hooks/useEmailLoginState/useEmailLoginState.js +1 -1
  36. package/src/lib/context/DynamicContext/hooks/useHandleLogout/types.d.ts +2 -2
  37. package/src/lib/context/DynamicContext/types/DynamicContextProps.d.ts +7 -0
  38. package/src/lib/context/DynamicContext/types/IDynamicContext.d.ts +4 -5
  39. package/src/lib/context/PhantomRedirectContext/PhantomRedirectContext.d.ts +2 -2
  40. package/src/lib/context/ReinitializeContext/ReinitializeContextProvider.cjs +1 -1
  41. package/src/lib/context/ReinitializeContext/ReinitializeContextProvider.js +1 -1
  42. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.d.ts +2 -2
  43. package/src/lib/context/UserWalletsContext/UserWalletsContext.d.ts +1 -1
  44. package/src/lib/context/WalletContext/WalletContext.cjs +1 -84
  45. package/src/lib/context/WalletContext/WalletContext.d.ts +1 -2
  46. package/src/lib/context/WalletContext/WalletContext.js +1 -84
  47. package/src/lib/context/WidgetRegistry/WidgetRegistryContextProvider.cjs +1 -1
  48. package/src/lib/context/WidgetRegistry/WidgetRegistryContextProvider.js +1 -1
  49. package/src/lib/data/api/api.cjs +1 -1
  50. package/src/lib/data/api/api.js +1 -1
  51. package/src/lib/locale/en/translation.cjs +39 -5
  52. package/src/lib/locale/en/translation.d.ts +39 -5
  53. package/src/lib/locale/en/translation.js +39 -5
  54. package/src/lib/modals/SendBalanceModal/SendBalanceModal.cjs +1 -1
  55. package/src/lib/modals/SendBalanceModal/SendBalanceModal.js +1 -1
  56. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.cjs +10 -9
  57. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.js +11 -10
  58. package/src/lib/modals/SyncWalletPromptModal/SyncWalletPromptModal.cjs +4 -4
  59. package/src/lib/modals/SyncWalletPromptModal/SyncWalletPromptModal.d.ts +1 -1
  60. package/src/lib/modals/SyncWalletPromptModal/SyncWalletPromptModal.js +4 -4
  61. package/src/lib/modals/SyncWalletPromptModal/SyncWalletPromptModal.types.d.ts +2 -0
  62. package/src/lib/shared/assets/arrow-circle-right.cjs +54 -0
  63. package/src/lib/shared/assets/arrow-circle-right.js +30 -0
  64. package/src/lib/shared/assets/index.d.ts +1 -0
  65. package/src/lib/shared/types/wallets.d.ts +2 -2
  66. package/src/lib/shared/utils/functions/usingSessionKeys/usingSessionKeys.cjs +1 -1
  67. package/src/lib/shared/utils/functions/usingSessionKeys/usingSessionKeys.js +2 -2
  68. package/src/lib/shared/utils/functions/wallet/createWallet.d.ts +2 -2
  69. package/src/lib/store/utils/storeAuthTokenAndUser/storeAuthTokenAndUser.cjs +1 -1
  70. package/src/lib/store/utils/storeAuthTokenAndUser/storeAuthTokenAndUser.js +1 -1
  71. package/src/lib/styles/index.shadow.cjs +1 -1
  72. package/src/lib/styles/index.shadow.js +1 -1
  73. package/src/lib/utils/constants/errors.cjs +0 -2
  74. package/src/lib/utils/constants/errors.js +1 -2
  75. package/src/lib/utils/functions/findTurnkeyWallet/findTurnkeyWallet.d.ts +2 -2
  76. package/src/lib/utils/{hooks/useWalletConnectors/utils/findWallet/findWallet.cjs → functions/findWalletOptionFor/findWalletOptionFor.cjs} +3 -3
  77. package/src/lib/utils/functions/findWalletOptionFor/findWalletOptionFor.d.ts +3 -0
  78. package/src/lib/utils/{hooks/useWalletConnectors/utils/findWallet/findWallet.js → functions/findWalletOptionFor/findWalletOptionFor.js} +3 -3
  79. package/src/lib/utils/functions/findWalletOptionFor/index.d.ts +1 -0
  80. package/src/lib/utils/functions/generateMessages/index.cjs +3 -2
  81. package/src/lib/utils/functions/generateMessages/index.js +3 -2
  82. package/src/lib/utils/functions/getEmbeddedWalletAuthHandler/getEmbeddedWalletAuthHandler.d.ts +2 -2
  83. package/src/lib/utils/functions/getEnabledEmbeddedWalletProviders/getEnabledEmbeddedWalletProviders.cjs +1 -1
  84. package/src/lib/utils/functions/getEnabledEmbeddedWalletProviders/getEnabledEmbeddedWalletProviders.js +1 -1
  85. package/src/lib/utils/functions/getUserIdentifier/getUserIdentifier.cjs +1 -1
  86. package/src/lib/utils/functions/getUserIdentifier/getUserIdentifier.js +1 -1
  87. package/src/lib/utils/functions/getVerifyArgs/getVerifyArgs.d.ts +1 -2
  88. package/src/lib/utils/functions/getWalletConnectorForWallet/getWalletConnectorForWallet.d.ts +2 -2
  89. package/src/lib/utils/functions/index.d.ts +0 -2
  90. package/src/lib/utils/functions/isAccountAbstractionWallet/isAccountAbstractionWallet.d.ts +1 -1
  91. package/src/lib/utils/functions/isAllowedToLinkWallet/isAllowedToLinkWallet.cjs +1 -1
  92. package/src/lib/utils/functions/isAllowedToLinkWallet/isAllowedToLinkWallet.js +1 -1
  93. package/src/lib/utils/functions/isPhoneNumberProviderEnabled/isPhoneNumberProviderEnabled.cjs +1 -1
  94. package/src/lib/utils/functions/isPhoneNumberProviderEnabled/isPhoneNumberProviderEnabled.js +1 -1
  95. package/src/lib/utils/functions/requiresPasswordForEmbeddedWalletOnSignup/requiresPasswordForEmbeddedWalletOnSignup.cjs +1 -1
  96. package/src/lib/utils/functions/requiresPasswordForEmbeddedWalletOnSignup/requiresPasswordForEmbeddedWalletOnSignup.js +1 -1
  97. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.d.ts +2 -2
  98. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSignSplitSteps/useConnectAndSignSplitSteps.d.ts +2 -2
  99. package/src/lib/utils/hooks/index.d.ts +1 -0
  100. package/src/lib/utils/hooks/multiWallet/index.d.ts +0 -1
  101. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +8 -7
  102. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.d.ts +2 -2
  103. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +9 -8
  104. package/src/lib/utils/hooks/useConnectWithEmail/useConnectWithEmail.d.ts +2 -2
  105. package/src/lib/utils/hooks/useConnectedAccountWallet/useConnectedAccountWallet.d.ts +1 -1
  106. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.cjs +3 -4
  107. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.js +3 -4
  108. package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.d.ts +1 -1
  109. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.cjs +4 -6
  110. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.d.ts +1 -1
  111. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.js +5 -7
  112. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.cjs +86 -61
  113. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.d.ts +3 -3
  114. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.js +87 -63
  115. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.cjs +32 -30
  116. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.d.ts +1 -1
  117. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.js +33 -31
  118. package/src/lib/utils/hooks/useEmbeddedWalletAuthenticator/useEmbeddedWalletAuthenticator.d.ts +1 -1
  119. package/src/lib/utils/hooks/useInitEmbeddedWalletAuthMethod/useInitEmbeddedWalletAuthMethod.cjs +7 -6
  120. package/src/lib/utils/hooks/useInitEmbeddedWalletAuthMethod/useInitEmbeddedWalletAuthMethod.js +7 -6
  121. package/src/lib/utils/hooks/useIsLoggedIn/useIsLoggedIn.cjs +11 -9
  122. package/src/lib/utils/hooks/useIsLoggedIn/useIsLoggedIn.js +12 -10
  123. package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs +8 -12
  124. package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js +8 -12
  125. package/src/lib/utils/hooks/useNetworkDataFromWallet/useNetworkDataFromWallet.cjs +1 -1
  126. package/src/lib/utils/hooks/useNetworkDataFromWallet/useNetworkDataFromWallet.js +1 -1
  127. package/src/lib/utils/hooks/useNetworkNotSupported/useNetworkNotSupported.cjs +6 -5
  128. package/src/lib/utils/hooks/useNetworkNotSupported/useNetworkNotSupported.js +6 -5
  129. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.cjs +12 -11
  130. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.d.ts +2 -2
  131. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.js +12 -11
  132. package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.cjs +3 -3
  133. package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.js +3 -3
  134. package/src/lib/utils/hooks/useSmartWallets/index.d.ts +1 -0
  135. package/src/lib/utils/hooks/useSmartWallets/useSmartWallets.cjs +159 -0
  136. package/src/lib/utils/hooks/useSmartWallets/useSmartWallets.d.ts +18 -0
  137. package/src/lib/utils/hooks/useSmartWallets/useSmartWallets.js +155 -0
  138. package/src/lib/utils/hooks/useSwitchWallet/useSwitchWallet.cjs +1 -4
  139. package/src/lib/utils/hooks/useSwitchWallet/useSwitchWallet.js +1 -4
  140. package/src/lib/utils/hooks/useWalletConnectorOptions/useWalletConnectorOptions.cjs +1 -1
  141. package/src/lib/utils/hooks/useWalletConnectorOptions/useWalletConnectorOptions.d.ts +2 -2
  142. package/src/lib/utils/hooks/useWalletConnectorOptions/useWalletConnectorOptions.js +1 -1
  143. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyMagicIsSetup/verifyMagicIsSetup.cjs +1 -1
  144. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyMagicIsSetup/verifyMagicIsSetup.js +1 -1
  145. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.cjs +1 -1
  146. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.js +1 -1
  147. package/src/lib/utils/hooks/useWalletConnectors/reconnectSocialWallet.cjs +7 -87
  148. package/src/lib/utils/hooks/useWalletConnectors/reconnectSocialWallet.d.ts +2 -2
  149. package/src/lib/utils/hooks/useWalletConnectors/reconnectSocialWallet.js +8 -88
  150. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.cjs +9 -79
  151. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.d.ts +4 -10
  152. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.js +10 -80
  153. package/src/lib/utils/hooks/useWalletConnectors/utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.cjs +5 -89
  154. package/src/lib/utils/hooks/useWalletConnectors/utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.d.ts +2 -3
  155. package/src/lib/utils/hooks/useWalletConnectors/utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.js +5 -89
  156. package/src/lib/utils/hooks/useWalletConnectors/utils/smartWallet/smartWallet.cjs +4 -4
  157. package/src/lib/utils/hooks/useWalletConnectors/utils/smartWallet/smartWallet.js +5 -5
  158. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +26 -29
  159. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.d.ts +2 -1
  160. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +26 -29
  161. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.cjs +1 -1
  162. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.d.ts +6 -6
  163. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.js +1 -1
  164. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.types.d.ts +4 -4
  165. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.cjs +16 -7
  166. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.d.ts +2 -2
  167. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.js +16 -7
  168. package/src/lib/views/CollectUserDataView/UserDataFields/UserField/UserField.cjs +1 -1
  169. package/src/lib/views/CollectUserDataView/UserDataFields/UserField/UserField.js +1 -1
  170. package/src/lib/views/CreatePasswordView/SavePasswordStep/SavePasswordStep.cjs +2 -2
  171. package/src/lib/views/CreatePasswordView/SavePasswordStep/SavePasswordStep.js +2 -2
  172. package/src/lib/views/EmailVerification/EmailVerification.cjs +19 -18
  173. package/src/lib/views/EmailVerification/EmailVerification.js +20 -19
  174. package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.cjs +52 -52
  175. package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.js +53 -53
  176. package/src/lib/views/LoginView/sections/WalletSignInSection/ListItemButton/ListItemButton.cjs +1 -1
  177. package/src/lib/views/LoginView/sections/WalletSignInSection/ListItemButton/ListItemButton.js +1 -1
  178. package/src/lib/views/MfaDisplayBackupCodesView/MfaDisplayBackupCodesView.cjs +1 -1
  179. package/src/lib/views/MfaDisplayBackupCodesView/MfaDisplayBackupCodesView.js +1 -1
  180. package/src/lib/views/Passkey/EmbeddedAuthChoice/EmbeddedAuthChoice.cjs +35 -33
  181. package/src/lib/views/Passkey/EmbeddedAuthChoice/EmbeddedAuthChoice.d.ts +1 -1
  182. package/src/lib/views/Passkey/EmbeddedAuthChoice/EmbeddedAuthChoice.js +35 -33
  183. package/src/lib/views/Passkey/EmbeddedAuthChoiceCards/ActionCard/ActionCard.cjs +1 -1
  184. package/src/lib/views/Passkey/EmbeddedAuthChoiceCards/ActionCard/ActionCard.js +1 -1
  185. package/src/lib/views/Passkey/PasskeyNewDomainDetectedView/PasskeyNewDomainDetectedView.cjs +1 -1
  186. package/src/lib/views/Passkey/PasskeyNewDomainDetectedView/PasskeyNewDomainDetectedView.js +1 -1
  187. package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.cjs +35 -33
  188. package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.d.ts +1 -1
  189. package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.js +35 -33
  190. package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.cjs +33 -31
  191. package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.js +33 -31
  192. package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.cjs +1 -1
  193. package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.js +1 -1
  194. package/src/lib/views/SendBalanceView/SendBalanceView.cjs +7 -1
  195. package/src/lib/views/SendBalanceView/SendBalanceView.js +7 -1
  196. package/src/lib/{utils/functions/getEOAWallet/getEOAWallet.cjs → views/SyncWalletView/AutoReconnectingView/AutoReconnectingView.cjs} +57 -50
  197. package/src/lib/views/SyncWalletView/AutoReconnectingView/AutoReconnectingView.d.ts +9 -0
  198. package/src/lib/{utils/functions/getEOAWallet/getEOAWallet.js → views/SyncWalletView/AutoReconnectingView/AutoReconnectingView.js} +57 -50
  199. package/src/lib/views/SyncWalletView/AutoReconnectingView/index.d.ts +1 -0
  200. package/src/lib/views/SyncWalletView/ReconnectWithQrCodeView/ReconnectWithQrCodeView.cjs +126 -0
  201. package/src/lib/views/SyncWalletView/ReconnectWithQrCodeView/ReconnectWithQrCodeView.d.ts +9 -0
  202. package/src/lib/views/SyncWalletView/ReconnectWithQrCodeView/ReconnectWithQrCodeView.js +122 -0
  203. package/src/lib/views/SyncWalletView/ReconnectWithQrCodeView/index.d.ts +1 -0
  204. package/src/lib/views/SyncWalletView/SwitchWalletView/SwitchWalletView.cjs +101 -0
  205. package/src/lib/views/SyncWalletView/SwitchWalletView/SwitchWalletView.d.ts +10 -0
  206. package/src/lib/views/SyncWalletView/SwitchWalletView/SwitchWalletView.js +97 -0
  207. package/src/lib/views/SyncWalletView/SwitchWalletView/index.d.ts +1 -0
  208. package/src/lib/views/SyncWalletView/SyncWalletView.cjs +74 -49
  209. package/src/lib/views/SyncWalletView/SyncWalletView.d.ts +2 -0
  210. package/src/lib/views/SyncWalletView/SyncWalletView.js +75 -50
  211. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.cjs +1 -1
  212. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.js +1 -1
  213. package/src/lib/views/WalletGroupView/WalletGroupView.cjs +2 -2
  214. package/src/lib/views/WalletGroupView/WalletGroupView.js +2 -2
  215. package/src/lib/views/WalletGroupView/components/WalletGroupItem/WalletGroupItem.cjs +1 -1
  216. package/src/lib/views/WalletGroupView/components/WalletGroupItem/WalletGroupItem.js +1 -1
  217. package/src/lib/views/WalletList/WalletListItem/WalletListItem.cjs +1 -1
  218. package/src/lib/views/WalletList/WalletListItem/WalletListItem.js +1 -1
  219. package/src/lib/views/WalletUsedView/WalletUsedView.cjs +1 -1
  220. package/src/lib/views/WalletUsedView/WalletUsedView.js +1 -1
  221. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs +6 -5
  222. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js +6 -5
  223. package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.cjs +1 -1
  224. package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.js +1 -1
  225. package/src/lib/widgets/DynamicWidget/components/WalletIconWithNetwork/WalletIconWithNetwork.cjs +1 -1
  226. package/src/lib/widgets/DynamicWidget/components/WalletIconWithNetwork/WalletIconWithNetwork.js +1 -1
  227. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.cjs +1 -1
  228. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.d.ts +3 -1
  229. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.js +1 -1
  230. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.cjs +2 -2
  231. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.d.ts +1 -0
  232. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.js +2 -2
  233. package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.cjs +7 -9
  234. package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.js +7 -9
  235. package/src/lib/widgets/DynamicWidget/views/SettingsView/SettingsView.cjs +46 -45
  236. package/src/lib/widgets/DynamicWidget/views/SettingsView/SettingsView.js +47 -46
  237. package/src/lib/utils/functions/createOwnerWallet/createOwnerWallet.cjs +0 -40
  238. package/src/lib/utils/functions/createOwnerWallet/createOwnerWallet.d.ts +0 -3
  239. package/src/lib/utils/functions/createOwnerWallet/createOwnerWallet.js +0 -36
  240. package/src/lib/utils/functions/createOwnerWallet/index.d.ts +0 -1
  241. package/src/lib/utils/functions/getEOAWallet/getEOAWallet.d.ts +0 -3
  242. package/src/lib/utils/functions/getEOAWallet/index.d.ts +0 -1
  243. package/src/lib/utils/functions/getWalletIdentifier/getWalletIdentifier.cjs +0 -8
  244. package/src/lib/utils/functions/getWalletIdentifier/getWalletIdentifier.js +0 -4
  245. package/src/lib/utils/functions/isWalletConnected/isWalletConnected.cjs +0 -14
  246. package/src/lib/utils/functions/isWalletConnected/isWalletConnected.js +0 -10
  247. package/src/lib/utils/hooks/events/useWindowEvent/useWindowEvent.cjs +0 -25
  248. package/src/lib/utils/hooks/events/useWindowEvent/useWindowEvent.js +0 -21
  249. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/index.d.ts +0 -1
  250. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.cjs +0 -209
  251. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.d.ts +0 -1
  252. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.js +0 -205
  253. package/src/lib/utils/hooks/useWalletConnectors/utils/findWallet/findWallet.d.ts +0 -3
  254. package/src/lib/utils/hooks/useWalletConnectors/utils/findWallet/index.d.ts +0 -1
  255. package/src/lib/utils/hooks/useWalletsConnectionState/index.d.ts +0 -1
  256. package/src/lib/utils/hooks/useWalletsConnectionState/useWalletsConnectionState.cjs +0 -184
  257. package/src/lib/utils/hooks/useWalletsConnectionState/useWalletsConnectionState.d.ts +0 -12
  258. package/src/lib/utils/hooks/useWalletsConnectionState/useWalletsConnectionState.js +0 -180
@@ -2,20 +2,20 @@
2
2
  import { __awaiter } from '../../../../../_virtual/_tslib.js';
3
3
  import { useState, useMemo, useEffect, useCallback } from 'react';
4
4
  import { DynamicError } from '@dynamic-labs/utils';
5
- import { isEmbeddedConnector, isEmailWalletConnector, isSocialWalletConnector } from '@dynamic-labs/wallet-connector-core';
5
+ import { isEmbeddedConnector, isEmailWalletConnector } from '@dynamic-labs/wallet-connector-core';
6
6
  import { useInternalUserWallets } from '../../../context/UserWalletsContext/UserWalletsContext.js';
7
7
  import '@dynamic-labs/sdk-api-core';
8
- import { logger } from '../../../shared/logger.js';
8
+ import '../../constants/values.js';
9
+ import '@dynamic-labs/multi-wallet';
10
+ import '../../../shared/logger.js';
9
11
  import '@dynamic-labs/iconic';
10
12
  import 'react/jsx-runtime';
11
13
  import '../../../context/ViewContext/ViewContext.js';
12
14
  import '@dynamic-labs/wallet-book';
13
15
  import '../../constants/colors.js';
14
- import '../../constants/values.js';
15
16
  import '../../../shared/utils/classes/storage/localStorage.js';
16
17
  import '../../../shared/utils/classes/storage/sessionStorage.js';
17
18
  import '../../../shared/consts/index.js';
18
- import '@dynamic-labs/multi-wallet';
19
19
  import 'react-international-phone';
20
20
  import '../../../config/ApiEndpoint.js';
21
21
  import '@dynamic-labs/store';
@@ -40,8 +40,6 @@ import '../../../views/CollectUserDataView/useFields.js';
40
40
  import '../../../context/FieldsStateContext/FieldsStateContext.js';
41
41
  import '../../../context/UserFieldEditorContext/UserFieldEditorContext.js';
42
42
  import '@dynamic-labs/rpc-providers';
43
- import { useWalletsConnectionState } from '../useWalletsConnectionState/useWalletsConnectionState.js';
44
- import { reconnectSocialWallet } from './reconnectSocialWallet.js';
45
43
  import { createLinkedWalletsFromWalletOptions } from './utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.js';
46
44
  import { updateUserWalletsFromLinkedWallets } from './utils/updateUserWalletsFromLinkedWallets/updateUserWalletsFromLinkedWallets.js';
47
45
  import 'react-i18next';
@@ -89,7 +87,7 @@ import '../../../context/ConnectWithOtpContext/constants.js';
89
87
  import '../../../context/ReinitializeContext/ReinitializeContextProvider.js';
90
88
  import { logVerboseTroubleshootingMessage } from '../../functions/logVerboseTroubleshootingMessage/logVerboseTroubleshootingMessage.js';
91
89
 
92
- const useWalletConnectors = ({ authMode, connectedWallets, walletConnectorOptions, multiWalletWidgetState, setDesktopUri, setMultiWalletWidgetState, setQrcodeUri, primaryWalletId, setPrimaryWalletId, user, canHaveMultipleWalletsConnected, walletBook, }) => {
90
+ const useWalletConnectors = ({ authMode, connectedWallets, walletConnectorOptions, setMultiWalletWidgetState, primaryWalletId, setPrimaryWalletId, user, canHaveMultipleWalletsConnected, }) => {
93
91
  const [showQrcodeModal, setShowQrcodeModal] = useState(false);
94
92
  const linkedWallets = useMemo(() => {
95
93
  if (!user) {
@@ -132,8 +130,6 @@ const useWalletConnectors = ({ authMode, connectedWallets, walletConnectorOption
132
130
  useEffect(() => wallets.forEach((wallet) => {
133
131
  wallet.connector.initEventListener();
134
132
  }), [wallets]);
135
- const { didConnectedStateLoad } = useWalletsConnectionState(wallets, walletBook, primaryWalletId, authMode);
136
- logVerboseTroubleshootingMessage('didConnectedStateLoad', didConnectedStateLoad);
137
133
  const { setUserWallets } = useInternalUserWallets();
138
134
  // Keep userWallets in sync whenever linkedWallets changes
139
135
  useEffect(() => {
@@ -149,46 +145,17 @@ const useWalletConnectors = ({ authMode, connectedWallets, walletConnectorOption
149
145
  if (!newWallet) {
150
146
  throw new DynamicError(`Wallet with id: ${walletId} not found`);
151
147
  }
152
- const connectedAccounts = yield newWallet.connector.getConnectedAccounts();
153
- return { connectedAccounts, newWallet };
148
+ return newWallet;
154
149
  }), [wallets]);
155
- const checkIfAccountChangeIsRequired = useCallback((primaryWallet, newPrimaryWallet, connectedAccounts) => {
156
- /**
157
- * we need to check multiWalletWidgetState here because `setPrimaryWallet` currently gets
158
- * called twice: once when the user clicks "make active" and once when the user performs
159
- * the expected account switch in their wallet. this will change once this PR
160
- * (https://github.com/dynamic-labs/DynamicAuth/pull/550) is merged, since setting the
161
- * primary wallet will be simpler, so we won't need to call `setPrimaryWallet` twice.
162
- */
163
- if (!primaryWallet || multiWalletWidgetState !== 'idle')
164
- return;
165
- const accountIsNotConnectedInSecondaryWallet = connectedAccounts &&
166
- !connectedAccounts.find((connectedAccount) => connectedAccount.toLowerCase() ===
167
- newPrimaryWallet.address.toLowerCase());
168
- return (newPrimaryWallet.connector.key === primaryWallet.connector.key ||
169
- accountIsNotConnectedInSecondaryWallet);
170
- }, [multiWalletWidgetState]);
171
- const checkIfShowQrCodeModal = useCallback((wallet) => !wallet.connector.isInstalledOnBrowser() &&
172
- !wallet.connector.canConnectViaCustodialService, []);
173
150
  const setPrimaryWallet = useCallback((walletId) => __awaiter(void 0, void 0, void 0, function* () {
174
- const { newWallet: newPrimaryWallet, connectedAccounts } = yield getSelectedWallet(walletId);
175
- newPrimaryWallet.isPrimary = true;
176
- if (!primaryWalletId && !checkIfShowQrCodeModal(newPrimaryWallet)) {
151
+ const newPrimaryWallet = yield getSelectedWallet(walletId);
152
+ if (!primaryWalletId) {
177
153
  yield newPrimaryWallet.connector.connect();
178
154
  setPrimaryWalletId(walletId);
179
155
  return;
180
156
  }
181
157
  if (primaryWalletId === walletId)
182
158
  return;
183
- if (checkIfAccountChangeIsRequired(primaryWallet, newPrimaryWallet)) {
184
- yield newPrimaryWallet.connector.connect();
185
- setPrimaryWalletId(walletId);
186
- return;
187
- }
188
- if (!connectedAccounts.length) {
189
- setMultiWalletWidgetState('awaiting_connection');
190
- setShowQrcodeModal(checkIfShowQrCodeModal(newPrimaryWallet));
191
- }
192
159
  if (isEmailWalletConnector(newPrimaryWallet.connector)) {
193
160
  const emailConnector = newPrimaryWallet.connector;
194
161
  const email = localStorage.getItem('magic-link-email');
@@ -196,52 +163,15 @@ const useWalletConnectors = ({ authMode, connectedWallets, walletConnectorOption
196
163
  emailConnector.setEmail(email);
197
164
  }
198
165
  }
199
- const shouldReconnectSocialWallet = isSocialWalletConnector(newPrimaryWallet.connector) &&
200
- !(yield newPrimaryWallet.connector.getConnectedAccounts()).length;
201
- if (shouldReconnectSocialWallet) {
202
- reconnectSocialWallet(user, newPrimaryWallet);
203
- return;
204
- }
205
- /* istanbul ignore next */
206
- const publicAddress = yield newPrimaryWallet.connector.getAddress({
207
- onDesktopUri: (uri) => __awaiter(void 0, void 0, void 0, function* () {
208
- setDesktopUri(uri);
209
- }),
210
- onDisplayUri: (uri) => __awaiter(void 0, void 0, void 0, function* () {
211
- setQrcodeUri(uri);
212
- }),
213
- });
214
- /**
215
- * need to check for connected account again for wallets that disconnect on refresh
216
- * and only reconnect upon fetching public address above
217
- */
218
- const updatedConnectedAccounts = yield newPrimaryWallet.connector.getConnectedAccounts();
219
- if (checkIfAccountChangeIsRequired(primaryWallet, newPrimaryWallet, updatedConnectedAccounts) &&
220
- !isEmailWalletConnector(newPrimaryWallet.connector)) {
221
- setMultiWalletWidgetState('awaiting_account_switch', 'switching_primary');
222
- return;
223
- }
224
- if (publicAddress) {
225
- setPrimaryWalletId(walletId);
226
- setMultiWalletWidgetState('idle');
227
- }
228
- else {
229
- logger.error('Failed to connect to wallet');
230
- }
166
+ setPrimaryWalletId(walletId);
167
+ setMultiWalletWidgetState('idle');
231
168
  }), [
232
- user,
233
- checkIfAccountChangeIsRequired,
234
- checkIfShowQrCodeModal,
235
- primaryWallet,
236
169
  getSelectedWallet,
237
170
  primaryWalletId,
238
- setDesktopUri,
239
171
  setMultiWalletWidgetState,
240
172
  setPrimaryWalletId,
241
- setQrcodeUri,
242
173
  ]);
243
174
  return {
244
- didConnectedStateLoad: didConnectedStateLoad.current,
245
175
  primaryWallet,
246
176
  secondaryWallets,
247
177
  setPrimaryWallet,
@@ -4,93 +4,10 @@
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
6
  var sdkApiCore = require('@dynamic-labs/sdk-api-core');
7
- var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
8
- require('../../../../constants/values.cjs');
9
- require('@dynamic-labs/utils');
10
- require('../../../../../../../_virtual/_tslib.cjs');
11
- require('@dynamic-labs/multi-wallet');
12
- require('../../../../../shared/logger.cjs');
13
- require('@dynamic-labs/iconic');
14
- require('react/jsx-runtime');
15
- require('../../../../../context/ViewContext/ViewContext.cjs');
16
- require('react');
17
- require('@dynamic-labs/wallet-book');
18
- require('../../../../constants/colors.cjs');
19
- require('../../../../../shared/utils/classes/storage/localStorage.cjs');
20
- require('../../../../../shared/utils/classes/storage/sessionStorage.cjs');
21
- require('../../../../../shared/consts/index.cjs');
22
- require('react-international-phone');
23
- require('../../../../../config/ApiEndpoint.cjs');
24
- require('@dynamic-labs/store');
25
- require('../../../../../locale/locale.cjs');
7
+ var findWalletOptionFor = require('../../../../functions/findWalletOptionFor/findWalletOptionFor.cjs');
26
8
  var shouldManuallyReconnectOnRefresh = require('../../../../functions/shouldManuallyReconnectOnRefresh/shouldManuallyReconnectOnRefresh.cjs');
27
- require('../../../../../events/dynamicEvents.cjs');
28
- require('../../../../../context/DynamicContext/DynamicContext.cjs');
29
- require('../../../../../context/CaptchaContext/CaptchaContext.cjs');
30
- require('../../../../../context/ErrorContext/ErrorContext.cjs');
31
- require('../../../../../context/AccessDeniedContext/AccessDeniedContext.cjs');
32
- require('../../../../../context/AccountExistsContext/AccountExistsContext.cjs');
33
- require('../../../../../context/UserWalletsContext/UserWalletsContext.cjs');
34
- require('../../../../../context/VerificationContext/VerificationContext.cjs');
35
- require('react-dom');
36
- var smartWallet = require('../smartWallet/smartWallet.cjs');
37
- require('../../../../../context/WalletContext/WalletContext.cjs');
38
- require('../../../useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/constants.cjs');
39
- require('../../../../../context/ThemeContext/ThemeContext.cjs');
40
- require('../../../useUserUpdateRequest/useUpdateUser/userFieldsSchema.cjs');
41
- require('@dynamic-labs/types');
42
- require('../../../../../context/LoadingContext/LoadingContext.cjs');
43
- require('yup');
44
- require('../../../../../context/MockContext/MockContext.cjs');
45
- require('../../../../../views/CollectUserDataView/useFields.cjs');
46
- require('../../../../../context/FieldsStateContext/FieldsStateContext.cjs');
47
- require('../../../../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
48
- require('@dynamic-labs/rpc-providers');
49
- var findWallet = require('../findWallet/findWallet.cjs');
50
9
  var convertLegacyPhantomLedgerConnector = require('../convertLegacyPhantomLedgerConnector/convertLegacyPhantomLedgerConnector.cjs');
51
- require('react-i18next');
52
- require('../../../../../components/Accordion/components/AccordionItem/AccordionItem.cjs');
53
- require('../../../../../components/Alert/Alert.cjs');
54
- require('../../../../../components/ShadowDOM/ShadowDOM.cjs');
55
- require('../../../../../components/IconButton/IconButton.cjs');
56
- require('../../../../../components/InlineWidget/InlineWidget.cjs');
57
- require('../../../../../components/Input/Input.cjs');
58
- require('../../../../../components/IsBrowser/IsBrowser.cjs');
59
- require('../../../../../components/MenuList/Dropdown/Dropdown.cjs');
60
- require('../../../../../components/Transition/ZoomTransition/ZoomTransition.cjs');
61
- require('../../../../../components/Transition/SlideInUpTransition/SlideInUpTransition.cjs');
62
- require('../../../../../components/Transition/OpacityTransition/OpacityTransition.cjs');
63
- require('../../../../../components/OverlayCard/OverlayCardTarget/OverlayCardTarget.cjs');
64
- require('../../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.cjs');
65
- require('../../../../../components/Popper/Popper/Popper.cjs');
66
- require('../../../../../components/Popper/PopperContext/PopperContext.cjs');
67
- require('react-focus-lock');
68
- require('qrcode');
69
- require('formik');
70
- require('../../../../../views/WalletList/WalletList.cjs');
71
- require('../../../../../context/SocialRedirectContext/SocialRedirectContext.cjs');
72
- require('../../../../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.cjs');
73
- require('@hcaptcha/react-hcaptcha');
74
- require('../../../../../widgets/DynamicWidget/context/DynamicWidgetContext.cjs');
75
- require('../../../../../context/FooterAnimationContext/index.cjs');
76
- require('../../../../../context/WalletGroupContext/WalletGroupContext.cjs');
77
- require('../../../../../context/IpConfigurationContext/IpConfigurationContext.cjs');
78
- require('../../../../../context/PasskeyContext/PasskeyContext.cjs');
79
- require('@dynamic-labs/ethereum-core');
80
- require('../../../../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs');
81
- require('../../../../../views/TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
82
- require('../../../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs');
83
- require('../../../../../../polyfills.cjs');
84
- require('../../../../../context/ErrorBoundary/ErrorBoundaryBase.cjs');
85
- require('../../../../../context/ErrorBoundary/ErrorBoundaryContext.cjs');
86
- require('../../../../../widgets/DynamicBridgeWidget/context/DynamicBridgeWidgetContext/DynamicBridgeWidgetContext.cjs');
87
- require('../../../../../widgets/DynamicWidget/components/DynamicWidgetCard/DynamicWidgetCard.cjs');
88
- require('../../../../../context/WidgetRegistry/WidgetRegistryContextProvider.cjs');
89
- require('../../../../../context/FundingContext/FundingContext.cjs');
90
- require('../../../../../context/SendBalanceContext/SendBalanceContext.cjs');
91
- require('../../../../../context/ConnectWithOtpContext/ConnectWithOtpContext.cjs');
92
- require('../../../../../context/ConnectWithOtpContext/constants.cjs');
93
- require('../../../../../context/ReinitializeContext/ReinitializeContextProvider.cjs');
10
+ var smartWallet = require('../smartWallet/smartWallet.cjs');
94
11
 
95
12
  const createLinkedWalletsFromWalletOptions = ({ user, walletConnectorOptions, primaryWalletId, }) => {
96
13
  // wallet state should be null while loading all the wallets or when there is no user
@@ -101,7 +18,7 @@ const createLinkedWalletsFromWalletOptions = ({ user, walletConnectorOptions, pr
101
18
  .map(convertLegacyPhantomLedger)
102
19
  .map((account) => {
103
20
  var _a;
104
- const wallet = findWallet.findWallet(account, walletConnectorOptions);
21
+ const wallet = findWalletOptionFor.findWalletOptionFor(account, walletConnectorOptions);
105
22
  // this probably shouldn't happen. this would mean that the user has an account linked
106
23
  // with wallet W, but the customer has toggled off wallet W or the chain that
107
24
  // supports wallet W
@@ -124,14 +41,13 @@ const createLinkedWalletsFromWalletOptions = ({ user, walletConnectorOptions, pr
124
41
  walletConnectorOptions,
125
42
  });
126
43
  }
127
- return new walletConnectorCore.Wallet({
44
+ return wallet.walletConnector.createWallet({
128
45
  additionalAddresses: account.walletAdditionalAddresses,
129
46
  address: account.address,
130
- chain: account.chain,
47
+ chain: wallet.walletConnector.connectedChain,
131
48
  connector: wallet.walletConnector,
132
49
  id: account.id,
133
50
  isAuthenticated: true,
134
- isPrimary: account.id === primaryWalletId,
135
51
  key: (_a = account.walletName) !== null && _a !== void 0 ? _a : wallet.walletConnector.key,
136
52
  });
137
53
  }
@@ -1,6 +1,5 @@
1
- import { Wallet } from '@dynamic-labs/wallet-connector-core';
2
- import { WalletOption } from '../../../../../shared';
3
- import { UserProfile } from '../../../../../..';
1
+ import { UserProfile } from '@dynamic-labs/types';
2
+ import { Wallet, WalletOption } from '../../../../../shared/types';
4
3
  type CreateWalletsFromWalletOptionsProps = {
5
4
  user: UserProfile;
6
5
  primaryWalletId: string | undefined;
@@ -1,92 +1,9 @@
1
1
  'use client'
2
2
  import { WalletProviderEnum } from '@dynamic-labs/sdk-api-core';
3
- import { Wallet } from '@dynamic-labs/wallet-connector-core';
4
- import '../../../../constants/values.js';
5
- import '@dynamic-labs/utils';
6
- import '../../../../../../../_virtual/_tslib.js';
7
- import '@dynamic-labs/multi-wallet';
8
- import '../../../../../shared/logger.js';
9
- import '@dynamic-labs/iconic';
10
- import 'react/jsx-runtime';
11
- import '../../../../../context/ViewContext/ViewContext.js';
12
- import 'react';
13
- import '@dynamic-labs/wallet-book';
14
- import '../../../../constants/colors.js';
15
- import '../../../../../shared/utils/classes/storage/localStorage.js';
16
- import '../../../../../shared/utils/classes/storage/sessionStorage.js';
17
- import '../../../../../shared/consts/index.js';
18
- import 'react-international-phone';
19
- import '../../../../../config/ApiEndpoint.js';
20
- import '@dynamic-labs/store';
21
- import '../../../../../locale/locale.js';
3
+ import { findWalletOptionFor } from '../../../../functions/findWalletOptionFor/findWalletOptionFor.js';
22
4
  import { shouldManuallyReconnectOnRefresh } from '../../../../functions/shouldManuallyReconnectOnRefresh/shouldManuallyReconnectOnRefresh.js';
23
- import '../../../../../events/dynamicEvents.js';
24
- import '../../../../../context/DynamicContext/DynamicContext.js';
25
- import '../../../../../context/CaptchaContext/CaptchaContext.js';
26
- import '../../../../../context/ErrorContext/ErrorContext.js';
27
- import '../../../../../context/AccessDeniedContext/AccessDeniedContext.js';
28
- import '../../../../../context/AccountExistsContext/AccountExistsContext.js';
29
- import '../../../../../context/UserWalletsContext/UserWalletsContext.js';
30
- import '../../../../../context/VerificationContext/VerificationContext.js';
31
- import 'react-dom';
32
- import { isOwnerOfASmartWallet, initializeSmartWallet } from '../smartWallet/smartWallet.js';
33
- import '../../../../../context/WalletContext/WalletContext.js';
34
- import '../../../useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/constants.js';
35
- import '../../../../../context/ThemeContext/ThemeContext.js';
36
- import '../../../useUserUpdateRequest/useUpdateUser/userFieldsSchema.js';
37
- import '@dynamic-labs/types';
38
- import '../../../../../context/LoadingContext/LoadingContext.js';
39
- import 'yup';
40
- import '../../../../../context/MockContext/MockContext.js';
41
- import '../../../../../views/CollectUserDataView/useFields.js';
42
- import '../../../../../context/FieldsStateContext/FieldsStateContext.js';
43
- import '../../../../../context/UserFieldEditorContext/UserFieldEditorContext.js';
44
- import '@dynamic-labs/rpc-providers';
45
- import { findWallet } from '../findWallet/findWallet.js';
46
5
  import { convertLegacyPhantomLedgerConnector } from '../convertLegacyPhantomLedgerConnector/convertLegacyPhantomLedgerConnector.js';
47
- import 'react-i18next';
48
- import '../../../../../components/Accordion/components/AccordionItem/AccordionItem.js';
49
- import '../../../../../components/Alert/Alert.js';
50
- import '../../../../../components/ShadowDOM/ShadowDOM.js';
51
- import '../../../../../components/IconButton/IconButton.js';
52
- import '../../../../../components/InlineWidget/InlineWidget.js';
53
- import '../../../../../components/Input/Input.js';
54
- import '../../../../../components/IsBrowser/IsBrowser.js';
55
- import '../../../../../components/MenuList/Dropdown/Dropdown.js';
56
- import '../../../../../components/Transition/ZoomTransition/ZoomTransition.js';
57
- import '../../../../../components/Transition/SlideInUpTransition/SlideInUpTransition.js';
58
- import '../../../../../components/Transition/OpacityTransition/OpacityTransition.js';
59
- import '../../../../../components/OverlayCard/OverlayCardTarget/OverlayCardTarget.js';
60
- import '../../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.js';
61
- import '../../../../../components/Popper/Popper/Popper.js';
62
- import '../../../../../components/Popper/PopperContext/PopperContext.js';
63
- import 'react-focus-lock';
64
- import 'qrcode';
65
- import 'formik';
66
- import '../../../../../views/WalletList/WalletList.js';
67
- import '../../../../../context/SocialRedirectContext/SocialRedirectContext.js';
68
- import '../../../../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js';
69
- import '@hcaptcha/react-hcaptcha';
70
- import '../../../../../widgets/DynamicWidget/context/DynamicWidgetContext.js';
71
- import '../../../../../context/FooterAnimationContext/index.js';
72
- import '../../../../../context/WalletGroupContext/WalletGroupContext.js';
73
- import '../../../../../context/IpConfigurationContext/IpConfigurationContext.js';
74
- import '../../../../../context/PasskeyContext/PasskeyContext.js';
75
- import '@dynamic-labs/ethereum-core';
76
- import '../../../../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js';
77
- import '../../../../../views/TransactionConfirmationView/helpers/transactionErrorMessage.js';
78
- import '../../../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
79
- import '../../../../../../polyfills.js';
80
- import '../../../../../context/ErrorBoundary/ErrorBoundaryBase.js';
81
- import '../../../../../context/ErrorBoundary/ErrorBoundaryContext.js';
82
- import '../../../../../widgets/DynamicBridgeWidget/context/DynamicBridgeWidgetContext/DynamicBridgeWidgetContext.js';
83
- import '../../../../../widgets/DynamicWidget/components/DynamicWidgetCard/DynamicWidgetCard.js';
84
- import '../../../../../context/WidgetRegistry/WidgetRegistryContextProvider.js';
85
- import '../../../../../context/FundingContext/FundingContext.js';
86
- import '../../../../../context/SendBalanceContext/SendBalanceContext.js';
87
- import '../../../../../context/ConnectWithOtpContext/ConnectWithOtpContext.js';
88
- import '../../../../../context/ConnectWithOtpContext/constants.js';
89
- import '../../../../../context/ReinitializeContext/ReinitializeContextProvider.js';
6
+ import { isOwnerOfASmartWallet, initializeSmartWallet } from '../smartWallet/smartWallet.js';
90
7
 
91
8
  const createLinkedWalletsFromWalletOptions = ({ user, walletConnectorOptions, primaryWalletId, }) => {
92
9
  // wallet state should be null while loading all the wallets or when there is no user
@@ -97,7 +14,7 @@ const createLinkedWalletsFromWalletOptions = ({ user, walletConnectorOptions, pr
97
14
  .map(convertLegacyPhantomLedger)
98
15
  .map((account) => {
99
16
  var _a;
100
- const wallet = findWallet(account, walletConnectorOptions);
17
+ const wallet = findWalletOptionFor(account, walletConnectorOptions);
101
18
  // this probably shouldn't happen. this would mean that the user has an account linked
102
19
  // with wallet W, but the customer has toggled off wallet W or the chain that
103
20
  // supports wallet W
@@ -120,14 +37,13 @@ const createLinkedWalletsFromWalletOptions = ({ user, walletConnectorOptions, pr
120
37
  walletConnectorOptions,
121
38
  });
122
39
  }
123
- return new Wallet({
40
+ return wallet.walletConnector.createWallet({
124
41
  additionalAddresses: account.walletAdditionalAddresses,
125
42
  address: account.address,
126
- chain: account.chain,
43
+ chain: wallet.walletConnector.connectedChain,
127
44
  connector: wallet.walletConnector,
128
45
  id: account.id,
129
46
  isAuthenticated: true,
130
- isPrimary: account.id === primaryWalletId,
131
47
  key: (_a = account.walletName) !== null && _a !== void 0 ? _a : wallet.walletConnector.key,
132
48
  });
133
49
  }
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
6
  var _tslib = require('../../../../../../../_virtual/_tslib.cjs');
7
7
  var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
8
- var findWallet = require('../findWallet/findWallet.cjs');
8
+ var findWalletOptionFor = require('../../../../functions/findWalletOptionFor/findWalletOptionFor.cjs');
9
9
 
10
10
  // assumes `account` input is a smart wallet (has a signerRefId) and attempts to find
11
11
  // the associated eoa account
@@ -17,16 +17,16 @@ const initializeSmartWallet = (_a) => _tslib.__awaiter(void 0, [_a], void 0, fun
17
17
  if (!owner) {
18
18
  throw new Error('could not find associated eoa account for smart wallet');
19
19
  }
20
- const ownerWallet = findWallet.findWallet(owner, walletConnectorOptions);
20
+ const ownerWallet = findWalletOptionFor.findWalletOptionFor(owner, walletConnectorOptions);
21
21
  if (!ownerWallet) {
22
22
  throw new Error('could not find owner wallet from wallet options');
23
23
  }
24
- const smartWallet = findWallet.findWallet(account, walletConnectorOptions);
24
+ const smartWallet = findWalletOptionFor.findWalletOptionFor(account, walletConnectorOptions);
25
25
  if (!smartWallet) {
26
26
  throw new Error('could not find smart wallet from wallet options');
27
27
  }
28
28
  const connector = smartWallet.walletConnector;
29
- if (!walletConnectorCore.isSmartWalletConnector(connector)) {
29
+ if (!walletConnectorCore.isAccountAbstractionConnector(connector)) {
30
30
  throw new Error('could not initialize smart wallet');
31
31
  }
32
32
  yield connector.setEoaConnector(ownerWallet.walletConnector);
@@ -1,7 +1,7 @@
1
1
  'use client'
2
2
  import { __awaiter } from '../../../../../../../_virtual/_tslib.js';
3
- import { isSmartWalletConnector } from '@dynamic-labs/wallet-connector-core';
4
- import { findWallet } from '../findWallet/findWallet.js';
3
+ import { isAccountAbstractionConnector } from '@dynamic-labs/wallet-connector-core';
4
+ import { findWalletOptionFor } from '../../../../functions/findWalletOptionFor/findWalletOptionFor.js';
5
5
 
6
6
  // assumes `account` input is a smart wallet (has a signerRefId) and attempts to find
7
7
  // the associated eoa account
@@ -13,16 +13,16 @@ const initializeSmartWallet = (_a) => __awaiter(void 0, [_a], void 0, function*
13
13
  if (!owner) {
14
14
  throw new Error('could not find associated eoa account for smart wallet');
15
15
  }
16
- const ownerWallet = findWallet(owner, walletConnectorOptions);
16
+ const ownerWallet = findWalletOptionFor(owner, walletConnectorOptions);
17
17
  if (!ownerWallet) {
18
18
  throw new Error('could not find owner wallet from wallet options');
19
19
  }
20
- const smartWallet = findWallet(account, walletConnectorOptions);
20
+ const smartWallet = findWalletOptionFor(account, walletConnectorOptions);
21
21
  if (!smartWallet) {
22
22
  throw new Error('could not find smart wallet from wallet options');
23
23
  }
24
24
  const connector = smartWallet.walletConnector;
25
- if (!isSmartWalletConnector(connector)) {
25
+ if (!isAccountAbstractionConnector(connector)) {
26
26
  throw new Error('could not initialize smart wallet');
27
27
  }
28
28
  yield connector.setEoaConnector(ownerWallet.walletConnector);
@@ -91,11 +91,7 @@ require('../../../context/ConnectWithOtpContext/constants.cjs');
91
91
  require('../../../context/ReinitializeContext/ReinitializeContextProvider.cjs');
92
92
  var logVerboseTroubleshootingMessage = require('../../functions/logVerboseTroubleshootingMessage/logVerboseTroubleshootingMessage.cjs');
93
93
 
94
- const useWalletEventListeners = ({ disconnectWallet, handleLogOut, multiWallet, multiWalletWidgetState, primaryWallet, secondaryWallets, selectedWalletConnector, selectedWalletWithAction, setSelectedWalletConnectorKey, setSelectedWalletWithAction, setMultiWalletWidgetState, user, setPrimaryWalletId, authMode, refreshConnectedWallet, }) => {
95
- useWalletConnectorEvent.useWalletConnectorEvent(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, 'disconnect', () => {
96
- logger.logger.debug('primary wallet disconnect');
97
- handleLogOut();
98
- });
94
+ const useWalletEventListeners = ({ disconnectWallet, handleLogOut, multiWallet, multiWalletWidgetState, primaryWallet, secondaryWallets, selectedWalletConnector, selectedWalletWithAction, setSelectedWalletConnectorKey, setSelectedWalletWithAction, setMultiWalletWidgetState, user, setPrimaryWalletId, authMode, refreshConnectedWallet, detectNewWalletsForLinking, }) => {
99
95
  useWalletConnectorEvent.useWalletConnectorEvent(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, 'chainChange', ({ chain }) => {
100
96
  logger.logger.debug('primary wallet chain change', { chain });
101
97
  if (!primaryWallet) {
@@ -149,41 +145,37 @@ const useWalletEventListeners = ({ disconnectWallet, handleLogOut, multiWallet,
149
145
  return;
150
146
  const [newAddress] = accounts;
151
147
  const changedAddress = !walletConnectorCore.isSameAddress(newAddress, primaryWallet.address, primaryWallet.chain);
152
- if (changedAddress && authMode === 'connect-only') {
153
- refreshConnectedWallet(primaryWallet.id, primaryWallet.connector);
154
- return;
155
- }
156
- const newWallet = secondaryWallets.find((wallet) => walletConnectorCore.isSameAddress(wallet.address, newAddress, wallet.chain));
157
148
  if (!changedAddress) {
158
149
  setMultiWalletWidgetState('idle');
159
- }
160
- else if (!multiWallet) {
161
- setSelectedWalletWithAction({
162
- action: 'select',
163
- wallet: primaryWallet,
164
- });
165
- setMultiWalletWidgetState('awaiting_account_switch', 'primary_not_connected');
166
150
  return;
167
151
  }
168
- else if (multiWalletWidgetState === 'awaiting_account_switch') {
169
- handleAccountChangeWhenAwaitingAccountSwitch(true, newAddress);
152
+ if (authMode === 'connect-only') {
153
+ refreshConnectedWallet(primaryWallet.id, primaryWallet.connector);
154
+ return;
170
155
  }
171
- else if (multiWalletWidgetState === 'idle' && newWallet) {
172
- setPrimaryWalletId(newWallet.id);
156
+ if (!multiWallet) {
157
+ return;
173
158
  }
174
- else if (multiWalletWidgetState === 'idle' && !newWallet) {
175
- if (user) {
176
- setMultiWalletWidgetState('detected_new_wallet');
177
- setSelectedWalletConnectorKey(primaryWallet.connector.key);
178
- return;
179
- }
159
+ if (multiWalletWidgetState === 'awaiting_account_switch') {
160
+ handleAccountChangeWhenAwaitingAccountSwitch(true, newAddress);
161
+ return;
180
162
  }
181
- else {
163
+ if (multiWalletWidgetState !== 'idle') {
182
164
  logger.logger.error(`Unexpected multiWalletWidgetState (${multiWalletWidgetState}) and onAccountChange combination. Resetting state to idle.`);
183
165
  setMultiWalletWidgetState('idle');
184
166
  }
167
+ const newWallet = secondaryWallets.find((wallet) => walletConnectorCore.isSameAddress(wallet.address, newAddress, wallet.chain));
168
+ if (newWallet) {
169
+ setPrimaryWalletId(newWallet.id);
170
+ return;
171
+ }
172
+ if (user && detectNewWalletsForLinking) {
173
+ setMultiWalletWidgetState('detected_new_wallet');
174
+ setSelectedWalletConnectorKey(primaryWallet.connector.key);
175
+ }
185
176
  }, [
186
177
  authMode,
178
+ detectNewWalletsForLinking,
187
179
  handleAccountChangeWhenAwaitingAccountSwitch,
188
180
  multiWallet,
189
181
  multiWalletWidgetState,
@@ -193,7 +185,6 @@ const useWalletEventListeners = ({ disconnectWallet, handleLogOut, multiWallet,
193
185
  setMultiWalletWidgetState,
194
186
  setPrimaryWalletId,
195
187
  setSelectedWalletConnectorKey,
196
- setSelectedWalletWithAction,
197
188
  user,
198
189
  ]);
199
190
  useDynamicEvents.useInternalDynamicEvents('triggerComputePrimaryWalletMultiWalletStateFromAccounts', calculatePrimaryWalletMultiWalletStateFromAccounts);
@@ -235,6 +226,12 @@ const useWalletEventListeners = ({ disconnectWallet, handleLogOut, multiWallet,
235
226
  for (const wallet of affectedWallets)
236
227
  refreshConnectedWallet(wallet.id, wallet.connector);
237
228
  }));
229
+ useWalletConnectorEvent.useWalletConnectorEvent(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, 'disconnect', () => {
230
+ logger.logger.debug('primary wallet disconnect');
231
+ if (authMode === 'connect-only') {
232
+ handleLogOut();
233
+ }
234
+ });
238
235
  useWalletConnectorEvent.useWalletConnectorEvent(uniqueNonPrimaryWallets, 'disconnect', (affectedConnector) => {
239
236
  logger.logger.debug('secondary wallet disconnect');
240
237
  if (authMode === 'connect-only') {
@@ -19,5 +19,6 @@ export type UseWalletEventListenersArgs = {
19
19
  user: UserProfile | undefined;
20
20
  authMode: AuthModeType;
21
21
  refreshConnectedWallet: (walletId: string, walletConnector: WalletConnector, shouldCallCallback?: boolean) => Promise<void>;
22
+ detectNewWalletsForLinking: boolean;
22
23
  };
23
- export declare const useWalletEventListeners: ({ disconnectWallet, handleLogOut, multiWallet, multiWalletWidgetState, primaryWallet, secondaryWallets, selectedWalletConnector, selectedWalletWithAction, setSelectedWalletConnectorKey, setSelectedWalletWithAction, setMultiWalletWidgetState, user, setPrimaryWalletId, authMode, refreshConnectedWallet, }: UseWalletEventListenersArgs) => void;
24
+ export declare const useWalletEventListeners: ({ disconnectWallet, handleLogOut, multiWallet, multiWalletWidgetState, primaryWallet, secondaryWallets, selectedWalletConnector, selectedWalletWithAction, setSelectedWalletConnectorKey, setSelectedWalletWithAction, setMultiWalletWidgetState, user, setPrimaryWalletId, authMode, refreshConnectedWallet, detectNewWalletsForLinking, }: UseWalletEventListenersArgs) => void;