@dynamic-labs/sdk-react-core 3.0.0-alpha.51 → 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 (262) hide show
  1. package/CHANGELOG.md +51 -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 +11 -16
  33. package/src/lib/context/DynamicContext/DynamicContext.js +11 -16
  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/DynamicContext/types/SettingsOverrides.d.ts +3 -2
  40. package/src/lib/context/PhantomRedirectContext/PhantomRedirectContext.d.ts +2 -2
  41. package/src/lib/context/ReinitializeContext/ReinitializeContextProvider.cjs +1 -1
  42. package/src/lib/context/ReinitializeContext/ReinitializeContextProvider.js +1 -1
  43. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.d.ts +2 -2
  44. package/src/lib/context/UserWalletsContext/UserWalletsContext.d.ts +1 -1
  45. package/src/lib/context/WalletContext/WalletContext.cjs +1 -84
  46. package/src/lib/context/WalletContext/WalletContext.d.ts +1 -2
  47. package/src/lib/context/WalletContext/WalletContext.js +1 -84
  48. package/src/lib/context/WidgetRegistry/WidgetRegistryContextProvider.cjs +1 -1
  49. package/src/lib/context/WidgetRegistry/WidgetRegistryContextProvider.js +1 -1
  50. package/src/lib/data/api/api.cjs +1 -1
  51. package/src/lib/data/api/api.js +1 -1
  52. package/src/lib/locale/en/translation.cjs +39 -5
  53. package/src/lib/locale/en/translation.d.ts +39 -5
  54. package/src/lib/locale/en/translation.js +39 -5
  55. package/src/lib/modals/SendBalanceModal/SendBalanceModal.cjs +1 -1
  56. package/src/lib/modals/SendBalanceModal/SendBalanceModal.js +1 -1
  57. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.cjs +10 -9
  58. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.js +11 -10
  59. package/src/lib/modals/SyncWalletPromptModal/SyncWalletPromptModal.cjs +4 -4
  60. package/src/lib/modals/SyncWalletPromptModal/SyncWalletPromptModal.d.ts +1 -1
  61. package/src/lib/modals/SyncWalletPromptModal/SyncWalletPromptModal.js +4 -4
  62. package/src/lib/modals/SyncWalletPromptModal/SyncWalletPromptModal.types.d.ts +2 -0
  63. package/src/lib/shared/assets/arrow-circle-right.cjs +54 -0
  64. package/src/lib/shared/assets/arrow-circle-right.js +30 -0
  65. package/src/lib/shared/assets/index.d.ts +1 -0
  66. package/src/lib/shared/types/wallets.d.ts +2 -2
  67. package/src/lib/shared/utils/functions/usingSessionKeys/usingSessionKeys.cjs +1 -1
  68. package/src/lib/shared/utils/functions/usingSessionKeys/usingSessionKeys.js +2 -2
  69. package/src/lib/shared/utils/functions/wallet/createWallet.d.ts +2 -2
  70. package/src/lib/store/hooks/useNetworkConfigurations/useNetworkConfigurations.cjs +19 -4
  71. package/src/lib/store/hooks/useNetworkConfigurations/useNetworkConfigurations.d.ts +4 -3
  72. package/src/lib/store/hooks/useNetworkConfigurations/useNetworkConfigurations.js +19 -4
  73. package/src/lib/store/utils/storeAuthTokenAndUser/storeAuthTokenAndUser.cjs +1 -1
  74. package/src/lib/store/utils/storeAuthTokenAndUser/storeAuthTokenAndUser.js +1 -1
  75. package/src/lib/styles/index.shadow.cjs +1 -1
  76. package/src/lib/styles/index.shadow.js +1 -1
  77. package/src/lib/utils/constants/errors.cjs +0 -2
  78. package/src/lib/utils/constants/errors.js +1 -2
  79. package/src/lib/utils/functions/findTurnkeyWallet/findTurnkeyWallet.d.ts +2 -2
  80. package/src/lib/utils/{hooks/useWalletConnectors/utils/findWallet/findWallet.cjs → functions/findWalletOptionFor/findWalletOptionFor.cjs} +3 -3
  81. package/src/lib/utils/functions/findWalletOptionFor/findWalletOptionFor.d.ts +3 -0
  82. package/src/lib/utils/{hooks/useWalletConnectors/utils/findWallet/findWallet.js → functions/findWalletOptionFor/findWalletOptionFor.js} +3 -3
  83. package/src/lib/utils/functions/findWalletOptionFor/index.d.ts +1 -0
  84. package/src/lib/utils/functions/generateMessages/index.cjs +3 -2
  85. package/src/lib/utils/functions/generateMessages/index.js +3 -2
  86. package/src/lib/utils/functions/getEmbeddedWalletAuthHandler/getEmbeddedWalletAuthHandler.d.ts +2 -2
  87. package/src/lib/utils/functions/getEnabledEmbeddedWalletProviders/getEnabledEmbeddedWalletProviders.cjs +1 -1
  88. package/src/lib/utils/functions/getEnabledEmbeddedWalletProviders/getEnabledEmbeddedWalletProviders.js +1 -1
  89. package/src/lib/utils/functions/getUserIdentifier/getUserIdentifier.cjs +1 -1
  90. package/src/lib/utils/functions/getUserIdentifier/getUserIdentifier.js +1 -1
  91. package/src/lib/utils/functions/getVerifyArgs/getVerifyArgs.d.ts +1 -2
  92. package/src/lib/utils/functions/getWalletConnectorForWallet/getWalletConnectorForWallet.d.ts +2 -2
  93. package/src/lib/utils/functions/index.d.ts +0 -2
  94. package/src/lib/utils/functions/isAccountAbstractionWallet/isAccountAbstractionWallet.d.ts +1 -1
  95. package/src/lib/utils/functions/isAllowedToLinkWallet/isAllowedToLinkWallet.cjs +1 -1
  96. package/src/lib/utils/functions/isAllowedToLinkWallet/isAllowedToLinkWallet.js +1 -1
  97. package/src/lib/utils/functions/isPhoneNumberProviderEnabled/isPhoneNumberProviderEnabled.cjs +1 -1
  98. package/src/lib/utils/functions/isPhoneNumberProviderEnabled/isPhoneNumberProviderEnabled.js +1 -1
  99. package/src/lib/utils/functions/requiresPasswordForEmbeddedWalletOnSignup/requiresPasswordForEmbeddedWalletOnSignup.cjs +1 -1
  100. package/src/lib/utils/functions/requiresPasswordForEmbeddedWalletOnSignup/requiresPasswordForEmbeddedWalletOnSignup.js +1 -1
  101. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.d.ts +2 -2
  102. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSignSplitSteps/useConnectAndSignSplitSteps.d.ts +2 -2
  103. package/src/lib/utils/hooks/index.d.ts +1 -0
  104. package/src/lib/utils/hooks/multiWallet/index.d.ts +0 -1
  105. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +8 -7
  106. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.d.ts +2 -2
  107. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +9 -8
  108. package/src/lib/utils/hooks/useConnectWithEmail/useConnectWithEmail.d.ts +2 -2
  109. package/src/lib/utils/hooks/useConnectedAccountWallet/useConnectedAccountWallet.d.ts +1 -1
  110. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.cjs +3 -4
  111. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.js +3 -4
  112. package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.d.ts +1 -1
  113. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.cjs +4 -6
  114. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.d.ts +1 -1
  115. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.js +5 -7
  116. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.cjs +86 -61
  117. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.d.ts +3 -3
  118. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.js +87 -63
  119. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.cjs +32 -30
  120. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.d.ts +1 -1
  121. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.js +33 -31
  122. package/src/lib/utils/hooks/useEmbeddedWalletAuthenticator/useEmbeddedWalletAuthenticator.d.ts +1 -1
  123. package/src/lib/utils/hooks/useInitEmbeddedWalletAuthMethod/useInitEmbeddedWalletAuthMethod.cjs +7 -6
  124. package/src/lib/utils/hooks/useInitEmbeddedWalletAuthMethod/useInitEmbeddedWalletAuthMethod.js +7 -6
  125. package/src/lib/utils/hooks/useIsLoggedIn/useIsLoggedIn.cjs +11 -9
  126. package/src/lib/utils/hooks/useIsLoggedIn/useIsLoggedIn.js +12 -10
  127. package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs +8 -12
  128. package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js +8 -12
  129. package/src/lib/utils/hooks/useNetworkDataFromWallet/useNetworkDataFromWallet.cjs +1 -1
  130. package/src/lib/utils/hooks/useNetworkDataFromWallet/useNetworkDataFromWallet.js +1 -1
  131. package/src/lib/utils/hooks/useNetworkNotSupported/useNetworkNotSupported.cjs +6 -5
  132. package/src/lib/utils/hooks/useNetworkNotSupported/useNetworkNotSupported.js +6 -5
  133. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.cjs +12 -11
  134. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.d.ts +2 -2
  135. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.js +12 -11
  136. package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.cjs +3 -3
  137. package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.js +3 -3
  138. package/src/lib/utils/hooks/useSmartWallets/index.d.ts +1 -0
  139. package/src/lib/utils/hooks/useSmartWallets/useSmartWallets.cjs +159 -0
  140. package/src/lib/utils/hooks/useSmartWallets/useSmartWallets.d.ts +18 -0
  141. package/src/lib/utils/hooks/useSmartWallets/useSmartWallets.js +155 -0
  142. package/src/lib/utils/hooks/useSwitchWallet/useSwitchWallet.cjs +1 -4
  143. package/src/lib/utils/hooks/useSwitchWallet/useSwitchWallet.js +1 -4
  144. package/src/lib/utils/hooks/useWalletConnectorOptions/useWalletConnectorOptions.cjs +1 -1
  145. package/src/lib/utils/hooks/useWalletConnectorOptions/useWalletConnectorOptions.d.ts +2 -2
  146. package/src/lib/utils/hooks/useWalletConnectorOptions/useWalletConnectorOptions.js +1 -1
  147. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyMagicIsSetup/verifyMagicIsSetup.cjs +1 -1
  148. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyMagicIsSetup/verifyMagicIsSetup.js +1 -1
  149. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.cjs +1 -1
  150. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.js +1 -1
  151. package/src/lib/utils/hooks/useWalletConnectors/reconnectSocialWallet.cjs +7 -87
  152. package/src/lib/utils/hooks/useWalletConnectors/reconnectSocialWallet.d.ts +2 -2
  153. package/src/lib/utils/hooks/useWalletConnectors/reconnectSocialWallet.js +8 -88
  154. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.cjs +9 -79
  155. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.d.ts +4 -10
  156. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.js +10 -80
  157. package/src/lib/utils/hooks/useWalletConnectors/utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.cjs +5 -89
  158. package/src/lib/utils/hooks/useWalletConnectors/utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.d.ts +2 -3
  159. package/src/lib/utils/hooks/useWalletConnectors/utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.js +5 -89
  160. package/src/lib/utils/hooks/useWalletConnectors/utils/smartWallet/smartWallet.cjs +4 -4
  161. package/src/lib/utils/hooks/useWalletConnectors/utils/smartWallet/smartWallet.js +5 -5
  162. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +26 -29
  163. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.d.ts +2 -1
  164. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +26 -29
  165. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.cjs +1 -1
  166. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.d.ts +6 -6
  167. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.js +1 -1
  168. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.types.d.ts +4 -4
  169. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.cjs +16 -7
  170. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.d.ts +2 -2
  171. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.js +16 -7
  172. package/src/lib/views/CollectUserDataView/UserDataFields/UserField/UserField.cjs +1 -1
  173. package/src/lib/views/CollectUserDataView/UserDataFields/UserField/UserField.js +1 -1
  174. package/src/lib/views/CreatePasswordView/SavePasswordStep/SavePasswordStep.cjs +2 -2
  175. package/src/lib/views/CreatePasswordView/SavePasswordStep/SavePasswordStep.js +2 -2
  176. package/src/lib/views/EmailVerification/EmailVerification.cjs +19 -18
  177. package/src/lib/views/EmailVerification/EmailVerification.js +20 -19
  178. package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.cjs +52 -52
  179. package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.js +53 -53
  180. package/src/lib/views/LoginView/sections/WalletSignInSection/ListItemButton/ListItemButton.cjs +1 -1
  181. package/src/lib/views/LoginView/sections/WalletSignInSection/ListItemButton/ListItemButton.js +1 -1
  182. package/src/lib/views/MfaDisplayBackupCodesView/MfaDisplayBackupCodesView.cjs +1 -1
  183. package/src/lib/views/MfaDisplayBackupCodesView/MfaDisplayBackupCodesView.js +1 -1
  184. package/src/lib/views/Passkey/EmbeddedAuthChoice/EmbeddedAuthChoice.cjs +35 -33
  185. package/src/lib/views/Passkey/EmbeddedAuthChoice/EmbeddedAuthChoice.d.ts +1 -1
  186. package/src/lib/views/Passkey/EmbeddedAuthChoice/EmbeddedAuthChoice.js +35 -33
  187. package/src/lib/views/Passkey/EmbeddedAuthChoiceCards/ActionCard/ActionCard.cjs +1 -1
  188. package/src/lib/views/Passkey/EmbeddedAuthChoiceCards/ActionCard/ActionCard.js +1 -1
  189. package/src/lib/views/Passkey/PasskeyNewDomainDetectedView/PasskeyNewDomainDetectedView.cjs +1 -1
  190. package/src/lib/views/Passkey/PasskeyNewDomainDetectedView/PasskeyNewDomainDetectedView.js +1 -1
  191. package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.cjs +35 -33
  192. package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.d.ts +1 -1
  193. package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.js +35 -33
  194. package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.cjs +33 -31
  195. package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.js +33 -31
  196. package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.cjs +1 -1
  197. package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.js +1 -1
  198. package/src/lib/views/SendBalanceView/SendBalanceView.cjs +7 -1
  199. package/src/lib/views/SendBalanceView/SendBalanceView.js +7 -1
  200. package/src/lib/{utils/functions/getEOAWallet/getEOAWallet.cjs → views/SyncWalletView/AutoReconnectingView/AutoReconnectingView.cjs} +57 -50
  201. package/src/lib/views/SyncWalletView/AutoReconnectingView/AutoReconnectingView.d.ts +9 -0
  202. package/src/lib/{utils/functions/getEOAWallet/getEOAWallet.js → views/SyncWalletView/AutoReconnectingView/AutoReconnectingView.js} +57 -50
  203. package/src/lib/views/SyncWalletView/AutoReconnectingView/index.d.ts +1 -0
  204. package/src/lib/views/SyncWalletView/ReconnectWithQrCodeView/ReconnectWithQrCodeView.cjs +126 -0
  205. package/src/lib/views/SyncWalletView/ReconnectWithQrCodeView/ReconnectWithQrCodeView.d.ts +9 -0
  206. package/src/lib/views/SyncWalletView/ReconnectWithQrCodeView/ReconnectWithQrCodeView.js +122 -0
  207. package/src/lib/views/SyncWalletView/ReconnectWithQrCodeView/index.d.ts +1 -0
  208. package/src/lib/views/SyncWalletView/SwitchWalletView/SwitchWalletView.cjs +101 -0
  209. package/src/lib/views/SyncWalletView/SwitchWalletView/SwitchWalletView.d.ts +10 -0
  210. package/src/lib/views/SyncWalletView/SwitchWalletView/SwitchWalletView.js +97 -0
  211. package/src/lib/views/SyncWalletView/SwitchWalletView/index.d.ts +1 -0
  212. package/src/lib/views/SyncWalletView/SyncWalletView.cjs +74 -49
  213. package/src/lib/views/SyncWalletView/SyncWalletView.d.ts +2 -0
  214. package/src/lib/views/SyncWalletView/SyncWalletView.js +75 -50
  215. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.cjs +1 -1
  216. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.js +1 -1
  217. package/src/lib/views/WalletGroupView/WalletGroupView.cjs +2 -2
  218. package/src/lib/views/WalletGroupView/WalletGroupView.js +2 -2
  219. package/src/lib/views/WalletGroupView/components/WalletGroupItem/WalletGroupItem.cjs +1 -1
  220. package/src/lib/views/WalletGroupView/components/WalletGroupItem/WalletGroupItem.js +1 -1
  221. package/src/lib/views/WalletList/WalletListItem/WalletListItem.cjs +1 -1
  222. package/src/lib/views/WalletList/WalletListItem/WalletListItem.js +1 -1
  223. package/src/lib/views/WalletUsedView/WalletUsedView.cjs +1 -1
  224. package/src/lib/views/WalletUsedView/WalletUsedView.js +1 -1
  225. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs +6 -5
  226. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js +6 -5
  227. package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.cjs +1 -1
  228. package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.js +1 -1
  229. package/src/lib/widgets/DynamicWidget/components/WalletIconWithNetwork/WalletIconWithNetwork.cjs +1 -1
  230. package/src/lib/widgets/DynamicWidget/components/WalletIconWithNetwork/WalletIconWithNetwork.js +1 -1
  231. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.cjs +1 -1
  232. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.d.ts +3 -1
  233. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.js +1 -1
  234. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.cjs +2 -2
  235. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.d.ts +1 -0
  236. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.js +2 -2
  237. package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.cjs +7 -9
  238. package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.js +7 -9
  239. package/src/lib/widgets/DynamicWidget/views/SettingsView/SettingsView.cjs +46 -45
  240. package/src/lib/widgets/DynamicWidget/views/SettingsView/SettingsView.js +47 -46
  241. package/src/lib/utils/functions/createOwnerWallet/createOwnerWallet.cjs +0 -40
  242. package/src/lib/utils/functions/createOwnerWallet/createOwnerWallet.d.ts +0 -3
  243. package/src/lib/utils/functions/createOwnerWallet/createOwnerWallet.js +0 -36
  244. package/src/lib/utils/functions/createOwnerWallet/index.d.ts +0 -1
  245. package/src/lib/utils/functions/getEOAWallet/getEOAWallet.d.ts +0 -3
  246. package/src/lib/utils/functions/getEOAWallet/index.d.ts +0 -1
  247. package/src/lib/utils/functions/getWalletIdentifier/getWalletIdentifier.cjs +0 -8
  248. package/src/lib/utils/functions/getWalletIdentifier/getWalletIdentifier.js +0 -4
  249. package/src/lib/utils/functions/isWalletConnected/isWalletConnected.cjs +0 -14
  250. package/src/lib/utils/functions/isWalletConnected/isWalletConnected.js +0 -10
  251. package/src/lib/utils/hooks/events/useWindowEvent/useWindowEvent.cjs +0 -25
  252. package/src/lib/utils/hooks/events/useWindowEvent/useWindowEvent.js +0 -21
  253. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/index.d.ts +0 -1
  254. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.cjs +0 -209
  255. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.d.ts +0 -1
  256. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.js +0 -205
  257. package/src/lib/utils/hooks/useWalletConnectors/utils/findWallet/findWallet.d.ts +0 -3
  258. package/src/lib/utils/hooks/useWalletConnectors/utils/findWallet/index.d.ts +0 -1
  259. package/src/lib/utils/hooks/useWalletsConnectionState/index.d.ts +0 -1
  260. package/src/lib/utils/hooks/useWalletsConnectionState/useWalletsConnectionState.cjs +0 -184
  261. package/src/lib/utils/hooks/useWalletsConnectionState/useWalletsConnectionState.d.ts +0 -12
  262. package/src/lib/utils/hooks/useWalletsConnectionState/useWalletsConnectionState.js +0 -180
@@ -2,7 +2,7 @@
2
2
  import { __awaiter } from '../../../../../../../_virtual/_tslib.js';
3
3
  import { useCallback } from 'react';
4
4
  import { PasswordSourceTypeEnum, EmbeddedWalletChainEnum } from '@dynamic-labs/sdk-api-core';
5
- import { Wallet, isCoinbaseMpcWalletConnector } from '@dynamic-labs/wallet-connector-core';
5
+ import { isCoinbaseMpcWalletConnector } from '@dynamic-labs/wallet-connector-core';
6
6
  import { DynamicError } from '@dynamic-labs/utils';
7
7
  import { createUserProfileFromSdkUser } from '../../../../functions/createUserProfile/createUserProfile.js';
8
8
  import { findEmbeddedWalletFromVerifiedCredentials } from '../../../../functions/findEmbeddedWalletFromVerifiedCredentials/findEmbeddedWalletFromVerifiedCredentials.js';
@@ -102,13 +102,12 @@ const useCoinbaseMPC = () => {
102
102
  var _a;
103
103
  connector.setVerifiedCredentials(validatedUser.verifiedCredentials);
104
104
  setPrimaryWalletId(embeddedWalletVerifiedCredential.id);
105
- const coinbaseMPCWallet = new Wallet({
105
+ const coinbaseMPCWallet = connector.createWallet({
106
106
  address: (yield (connector === null || connector === void 0 ? void 0 : connector.getAddress())) || '',
107
- chain: (connector === null || connector === void 0 ? void 0 : connector.connectedChain) || '',
107
+ chain: connector.connectedChain,
108
108
  connector,
109
109
  id: embeddedWalletVerifiedCredential.id,
110
110
  isAuthenticated: true,
111
- isPrimary: true,
112
111
  key: (_a = embeddedWalletVerifiedCredential.walletName) !== null && _a !== void 0 ? _a : connector.key,
113
112
  });
114
113
  return coinbaseMPCWallet;
@@ -169,13 +168,12 @@ const useCoinbaseMPC = () => {
169
168
  password: initialWalletPassword,
170
169
  source,
171
170
  });
172
- const coinbaseMPCWallet = new Wallet({
171
+ const coinbaseMPCWallet = connector.createWallet({
173
172
  address: (yield (connector === null || connector === void 0 ? void 0 : connector.getAddress())) || '',
174
- chain: (connector === null || connector === void 0 ? void 0 : connector.connectedChain) || '',
173
+ chain: connector === null || connector === void 0 ? void 0 : connector.connectedChain,
175
174
  connector,
176
175
  id: newSelectedCredentialWallet.id,
177
176
  isAuthenticated: true,
178
- isPrimary: true,
179
177
  key: (_c = newSelectedCredentialWallet.walletName) !== null && _c !== void 0 ? _c : connector.key,
180
178
  });
181
179
  dynamicEvents.emit('embeddedWalletCreated', coinbaseMPCWallet, newSelectedCredentialWallet, updatedUser);
@@ -34,7 +34,6 @@ require('../../../../locale/locale.cjs');
34
34
  var user = require('../../../../data/api/user/user.cjs');
35
35
  var getUserWalletsFromVerifiedCredentials = require('../../../functions/getUserWalletsFromVerifiedCredentials/getUserWalletsFromVerifiedCredentials.cjs');
36
36
  var addPasskeyIdentifierToWalletConnector = require('../../../functions/addPasskeyIdentifierToWalletConnector/addPasskeyIdentifierToWalletConnector.cjs');
37
- var getEOAWallet = require('../../../functions/getEOAWallet/getEOAWallet.cjs');
38
37
  var getUserVerifiedCredentialType = require('../../../functions/getUserVerifiedCredentialType/getUserVerifiedCredentialType.cjs');
39
38
  var hasEmbeddedWallet = require('../../../functions/hasEmbeddedWallet/hasEmbeddedWallet.cjs');
40
39
  var getEmbeddedWalletAuthHandler = require('../../../functions/getEmbeddedWalletAuthHandler/getEmbeddedWalletAuthHandler.cjs');
@@ -48,12 +47,13 @@ require('react-dom');
48
47
  var useElementById = require('../../useElementById/useElementById.cjs');
49
48
  var WalletContext = require('../../../../context/WalletContext/WalletContext.cjs');
50
49
  var useIsTurnkeyWallet = require('../../useIsTurnkeyWallet/useIsTurnkeyWallet.cjs');
51
- var validateTurnkeyProviderEnabled = require('../../../validations/validateTurnkeyProviderEnabled/validateTurnkeyProviderEnabled.cjs');
52
- var passkeyRecovery = require('../../../../views/Passkey/utils/passkeyRecovery/passkeyRecovery.cjs');
53
50
  var turnkeyExport = require('../../../../views/EmbeddedReveal/utils/turnkeyExport/turnkeyExport.cjs');
51
+ var passkeyRecovery = require('../../../../views/Passkey/utils/passkeyRecovery/passkeyRecovery.cjs');
52
+ var validateTurnkeyProviderEnabled = require('../../../validations/validateTurnkeyProviderEnabled/validateTurnkeyProviderEnabled.cjs');
54
53
  var usePasskeyRecovery = require('../../usePasskeyRecovery/usePasskeyRecovery.cjs');
55
- var useTurnkey = require('./useTurnkey/useTurnkey.cjs');
54
+ var useSmartWallets = require('../../useSmartWallets/useSmartWallets.cjs');
56
55
  var constants = require('./constants.cjs');
56
+ var useTurnkey = require('./useTurnkey/useTurnkey.cjs');
57
57
  require('../../../../context/ThemeContext/ThemeContext.cjs');
58
58
  require('../../useUserUpdateRequest/useUpdateUser/userFieldsSchema.cjs');
59
59
  require('@dynamic-labs/types');
@@ -109,6 +109,12 @@ require('../../../../context/ConnectWithOtpContext/constants.cjs');
109
109
  require('../../../../context/ReinitializeContext/ReinitializeContextProvider.cjs');
110
110
  var useInternalDynamicContext = require('../../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.cjs');
111
111
 
112
+ const isConnectorSessionKeyActive = (connector) => {
113
+ var _a;
114
+ if (!connector || !walletConnectorCore.isSessionKeyCompatibleWalletConnector(connector))
115
+ return false;
116
+ return Boolean((_a = connector.sessionKeys) === null || _a === void 0 ? void 0 : _a.publicKey);
117
+ };
112
118
  // Hook exposed to customers
113
119
  /**
114
120
  *
@@ -125,21 +131,21 @@ var useInternalDynamicContext = require('../../../../context/DynamicContext/useD
125
131
  * }
126
132
  */
127
133
  const useSecureEnclaveEmbeddedWallet = () => {
128
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
134
+ var _a, _b, _c, _d;
129
135
  const { projectSettings, primaryWallet, user: user$1, environmentId, walletConnectorOptions, } = useInternalDynamicContext.useInternalDynamicContext();
130
136
  const { createTurnkeyWallet } = useTurnkey.useTurnkey();
131
137
  const { hasRecoveryEmail } = useIsTurnkeyWallet.useIsTurnkeyWallet();
132
138
  const { createRootElement } = useElementById.useElementById();
133
139
  const { isLoadingEmbeddedWallet, setIsLoadingEmbeddedWallet } = WalletContext.useWalletContext();
134
- const wallet = getEOAWallet.getEOAWallet(primaryWallet, (user$1 === null || user$1 === void 0 ? void 0 : user$1.verifiedCredentials) || []);
135
- const primaryConnector = primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector;
140
+ const { getEOAWallet } = useSmartWallets.useSmartWallets();
141
+ const wallet = (_a = (primaryWallet && getEOAWallet(primaryWallet))) !== null && _a !== void 0 ? _a : primaryWallet;
136
142
  const userHasEmbeddedWallet = React.useCallback(() => hasEmbeddedWallet.hasEmbeddedWallet(user$1, 'turnkey'), [user$1]);
137
- const getWalletVersion = () => {
143
+ const getWalletVersion = React.useCallback(() => {
138
144
  if (walletConnectorCore.isSessionKeyCompatibleWalletConnector(wallet === null || wallet === void 0 ? void 0 : wallet.connector)) {
139
145
  return constants.EmbeddedWalletVersion.V2;
140
146
  }
141
147
  return constants.EmbeddedWalletVersion.V1;
142
- };
148
+ }, [wallet === null || wallet === void 0 ? void 0 : wallet.connector]);
143
149
  const { shouldInitRecovery, initPasskeyRecoveryProcess } = usePasskeyRecovery.usePasskeyRecovery();
144
150
  /**
145
151
  * Creates a new secure enclave embedded wallet according to the settings from the dashboard
@@ -148,13 +154,13 @@ const useSecureEnclaveEmbeddedWallet = () => {
148
154
  * @returns Promise<Wallet | undefined>
149
155
  */
150
156
  const createEmbeddedWallet = React.useCallback((chains, options) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
151
- var _l;
157
+ var _e;
152
158
  if (!user$1) {
153
159
  throw new utils.DynamicError(errors.USER_NOT_LOGGED_IN);
154
160
  }
155
161
  const userWalletsCredentials = getUserWalletsFromVerifiedCredentials.getUserWalletsFromVerifiedCredentials(user$1);
156
162
  const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials.findEmbeddedWalletFromVerifiedCredentials(user$1, chains);
157
- const isManualMode = ((_l = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _l === void 0 ? void 0 : _l.automaticEmbeddedWalletCreation) === false;
163
+ const isManualMode = ((_e = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _e === void 0 ? void 0 : _e.automaticEmbeddedWalletCreation) === false;
158
164
  // if user has a wallet and it's not embedded,
159
165
  // throw error to follow another flow and set up the right wallet
160
166
  // However, if the user is in manual mode continue.
@@ -173,14 +179,14 @@ const useSecureEnclaveEmbeddedWallet = () => {
173
179
  * @param chain - chain parameter to create the wallet for
174
180
  * @returns Promise<UserProfile | undefined>
175
181
  */
176
- const createEmbeddedWalletAccount = React.useCallback((_m) => _tslib.__awaiter(void 0, [_m], void 0, function* ({ chain }) {
177
- var _o, _p, _q;
182
+ const createEmbeddedWalletAccount = React.useCallback((_f) => _tslib.__awaiter(void 0, [_f], void 0, function* ({ chain }) {
183
+ var _g, _h, _j;
178
184
  if (!user$1) {
179
185
  throw new Error(errors.USER_NOT_LOGGED_IN);
180
186
  }
181
187
  validateTurnkeyProviderEnabled.validateTurnkeyProviderEnabled(projectSettings);
182
188
  const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials.findEmbeddedWalletFromVerifiedCredentials(user$1);
183
- const turnkeyWalletId = (_o = embeddedWalletVerifiedCredential === null || embeddedWalletVerifiedCredential === void 0 ? void 0 : embeddedWalletVerifiedCredential.walletProperties) === null || _o === void 0 ? void 0 : _o.turnkeyHDWalletId;
189
+ const turnkeyWalletId = (_g = embeddedWalletVerifiedCredential === null || embeddedWalletVerifiedCredential === void 0 ? void 0 : embeddedWalletVerifiedCredential.walletProperties) === null || _g === void 0 ? void 0 : _g.turnkeyHDWalletId;
184
190
  if (!turnkeyWalletId) {
185
191
  throw new utils.DynamicError('No HD wallet was found for this user to derive a wallet account. Use createEmbeddedWallet first', 'NoHdWalletFound');
186
192
  }
@@ -189,14 +195,14 @@ const useSecureEnclaveEmbeddedWallet = () => {
189
195
  environmentId,
190
196
  });
191
197
  if (walletConnectorCore.isSessionKeyCompatibleWalletConnector(wallet === null || wallet === void 0 ? void 0 : wallet.connector)) {
192
- yield ((_p = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _p === void 0 ? void 0 : _p.createOrRestoreSession({
198
+ yield ((_h = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _h === void 0 ? void 0 : _h.createOrRestoreSession({
193
199
  ignoreRestore: true,
194
200
  }));
195
201
  }
196
202
  else if (yield shouldInitRecovery()) {
197
203
  yield initPasskeyRecoveryProcess('email');
198
204
  }
199
- const signedRequest = yield ((_q = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _q === void 0 ? void 0 : _q.stampCreateWalletAccountRequest({
205
+ const signedRequest = yield ((_j = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _j === void 0 ? void 0 : _j.stampCreateWalletAccountRequest({
200
206
  request: requestToStamp,
201
207
  }));
202
208
  yield embeddedWallets.createEmbeddedWalletAccount({
@@ -206,11 +212,11 @@ const useSecureEnclaveEmbeddedWallet = () => {
206
212
  return user.refreshUserJwt({ environmentId });
207
213
  }), [
208
214
  environmentId,
215
+ wallet === null || wallet === void 0 ? void 0 : wallet.connector,
209
216
  initPasskeyRecoveryProcess,
210
217
  projectSettings,
211
218
  shouldInitRecovery,
212
219
  user$1,
213
- wallet === null || wallet === void 0 ? void 0 : wallet.connector,
214
220
  ]);
215
221
  /**
216
222
  * Creates or restores a secure enclave embedded wallet session
@@ -219,18 +225,18 @@ const useSecureEnclaveEmbeddedWallet = () => {
219
225
  * @returns Promise<'session_created' | 'session_restored'> - returns a string indicating the status of the session
220
226
  */
221
227
  const createOrRestoreSession = React.useCallback((options) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
222
- var _r, _s, _t, _u, _v, _w, _x, _y, _z;
228
+ var _k, _l, _m, _o, _p, _q;
223
229
  if (!user$1) {
224
230
  throw new utils.DynamicError(errors.USER_NOT_LOGGED_IN);
225
231
  }
226
- const isSessionKeyCompatibleAAConnector = ((_r = primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector) === null || _r === void 0 ? void 0 : _r.key) === 'zerodev'
227
- ? walletConnectorCore.isSessionKeyCompatibleWalletConnector((primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector).getEOAConnector())
228
- : false;
229
- if (walletConnectorCore.isSessionKeyCompatibleWalletConnector(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector)) {
230
- return yield ((_s = primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector) === null || _s === void 0 ? void 0 : _s.createOrRestoreSession());
232
+ const primaryConnector = primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector;
233
+ if (primaryConnector &&
234
+ walletConnectorCore.isSessionKeyCompatibleWalletConnector(primaryConnector)) {
235
+ return primaryConnector.createOrRestoreSession();
231
236
  }
232
- else if (isSessionKeyCompatibleAAConnector) {
233
- return yield ((_t = (primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector).getEOAConnector()) === null || _t === void 0 ? void 0 : _t.createOrRestoreSession());
237
+ const eoaConnector = wallet === null || wallet === void 0 ? void 0 : wallet.connector;
238
+ if (eoaConnector && walletConnectorCore.isSessionKeyCompatibleWalletConnector(eoaConnector)) {
239
+ return eoaConnector.createOrRestoreSession();
234
240
  }
235
241
  const turnkeyRecoveryHandler = getEmbeddedWalletAuthHandler.getEmbeddedWalletAuthHandler(wallet === null || wallet === void 0 ? void 0 : wallet.connector);
236
242
  if (turnkeyRecoveryHandler.isSessionActive()) {
@@ -238,12 +244,12 @@ const useSecureEnclaveEmbeddedWallet = () => {
238
244
  }
239
245
  const turnkeyAuthIframeContainerRef = createRootElement(constants.iframeContainerId);
240
246
  // try to restore session if possible
241
- if (passkeyRecovery.canRestoreEmbeddedWalletSession((_u = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _u === void 0 ? void 0 : _u.sessionKeyDuration)) {
247
+ if (passkeyRecovery.canRestoreEmbeddedWalletSession((_k = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _k === void 0 ? void 0 : _k.sessionKeyDuration)) {
242
248
  try {
243
249
  const sessionRestored = yield passkeyRecovery.restoreEmbeddedWalletSession({
244
250
  iframeContainer: turnkeyAuthIframeContainerRef.current,
245
251
  iframeElementId: constants.iframeElementId,
246
- sessionExpiration: getEmbeddedWalletSessionExpiration.getEmbeddedWalletSessionExpiration((_w = (_v = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _v === void 0 ? void 0 : _v.embeddedWallets) === null || _w === void 0 ? void 0 : _w.sessionKeyDuration),
252
+ sessionExpiration: getEmbeddedWalletSessionExpiration.getEmbeddedWalletSessionExpiration((_m = (_l = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _l === void 0 ? void 0 : _l.embeddedWallets) === null || _m === void 0 ? void 0 : _m.sessionKeyDuration),
247
253
  user: user$1,
248
254
  wallet: primaryWallet,
249
255
  });
@@ -262,7 +268,7 @@ const useSecureEnclaveEmbeddedWallet = () => {
262
268
  if (!userHasEmbeddedWallet() || !hasRecoveryEmail) {
263
269
  throw new utils.DynamicError('User does not have a secure enclave wallet or a verified email', errors.INVALID_WALLET_DATA);
264
270
  }
265
- const organizationId = (_z = (_y = (_x = user$1 === null || user$1 === void 0 ? void 0 : user$1.verifiedCredentials) === null || _x === void 0 ? void 0 : _x.find(({ walletName }) => walletName === null || walletName === void 0 ? void 0 : walletName.startsWith('turnkey'))) === null || _y === void 0 ? void 0 : _y.walletProperties) === null || _z === void 0 ? void 0 : _z.turnkeySubOrganizationId;
271
+ const organizationId = (_q = (_p = (_o = user$1 === null || user$1 === void 0 ? void 0 : user$1.verifiedCredentials) === null || _o === void 0 ? void 0 : _o.find(({ walletName }) => walletName === null || walletName === void 0 ? void 0 : walletName.startsWith('turnkey'))) === null || _p === void 0 ? void 0 : _p.walletProperties) === null || _q === void 0 ? void 0 : _q.turnkeySubOrganizationId;
266
272
  yield turnkeyRecoveryHandler.verifyRecoveryCode(options.oneTimeCode, organizationId);
267
273
  const sessionSettings = {
268
274
  createdAt: new Date().getTime(),
@@ -276,7 +282,7 @@ const useSecureEnclaveEmbeddedWallet = () => {
276
282
  user$1,
277
283
  hasRecoveryEmail,
278
284
  primaryWallet,
279
- (_b = (_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _a === void 0 ? void 0 : _a.embeddedWallets) === null || _b === void 0 ? void 0 : _b.sessionKeyDuration,
285
+ (_c = (_b = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _b === void 0 ? void 0 : _b.embeddedWallets) === null || _c === void 0 ? void 0 : _c.sessionKeyDuration,
280
286
  userHasEmbeddedWallet,
281
287
  wallet === null || wallet === void 0 ? void 0 : wallet.connector,
282
288
  ]);
@@ -286,12 +292,12 @@ const useSecureEnclaveEmbeddedWallet = () => {
286
292
  * @returns Promise<WebAuthnAttestation>
287
293
  */
288
294
  const createPasskey = React.useCallback((options) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
289
- var _0, _1;
295
+ var _r, _s;
290
296
  if (!user$1) {
291
297
  throw new utils.DynamicError(errors.USER_NOT_LOGGED_IN);
292
298
  }
293
299
  validateTurnkeyProviderEnabled.validateTurnkeyProviderEnabled(projectSettings);
294
- const turnkeyWallet = findTurnkeyWallet.findTurnkeyWalletByPrimaryChain(walletConnectorOptions, (_0 = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _0 === void 0 ? void 0 : _0.chainConfigurations, user$1.verifiedCredentials);
300
+ const turnkeyWallet = findTurnkeyWallet.findTurnkeyWalletByPrimaryChain(walletConnectorOptions, (_r = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _r === void 0 ? void 0 : _r.chainConfigurations, user$1.verifiedCredentials);
295
301
  if (!(turnkeyWallet === null || turnkeyWallet === void 0 ? void 0 : turnkeyWallet.walletConnector)) {
296
302
  throw new utils.DynamicError('Wallet connector not found', errors.INVALID_WALLET_DATA);
297
303
  }
@@ -306,7 +312,7 @@ const useSecureEnclaveEmbeddedWallet = () => {
306
312
  if (!('id' in turnkeyWallet) || !hasEmailVC) {
307
313
  return walletConnector.getWebAuthnAttestation();
308
314
  }
309
- const turnkeySubOrganizationId = (_1 = turnkeyWallet === null || turnkeyWallet === void 0 ? void 0 : turnkeyWallet.walletProperties) === null || _1 === void 0 ? void 0 : _1.turnkeySubOrganizationId;
315
+ const turnkeySubOrganizationId = (_s = turnkeyWallet === null || turnkeyWallet === void 0 ? void 0 : turnkeyWallet.walletProperties) === null || _s === void 0 ? void 0 : _s.turnkeySubOrganizationId;
310
316
  if (!turnkeySubOrganizationId) {
311
317
  throw new utils.DynamicError('No sub organization id found for the wallet', errors.INVALID_WALLET_DATA);
312
318
  }
@@ -349,18 +355,17 @@ const useSecureEnclaveEmbeddedWallet = () => {
349
355
  });
350
356
  return data.passkeys;
351
357
  }), [user$1, environmentId]);
352
- const isEmailAuthSessionActive = (_d = ((wallet === null || wallet === void 0 ? void 0 : wallet.connector) &&
353
- 'getAuthenticatorHandler' in wallet.connector &&
354
- ((_c = getEmbeddedWalletAuthHandler.getEmbeddedWalletAuthHandler(wallet.connector)) === null || _c === void 0 ? void 0 : _c.isSessionActive()))) !== null && _d !== void 0 ? _d : false;
355
- const isSessionKeySessionAAActive = ((_e = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _e === void 0 ? void 0 : _e.key) === 'zerodev' &&
356
- walletConnectorCore.isSessionKeyCompatibleWalletConnector((wallet === null || wallet === void 0 ? void 0 : wallet.connector).getEOAConnector()) &&
357
- ((_h = (_g = (_f = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _f === void 0 ? void 0 : _f.getEOAConnector()) === null || _g === void 0 ? void 0 : _g.sessionKeys) === null || _h === void 0 ? void 0 : _h.publicKey);
358
- const isSessionKeySessionActive = (_k = Boolean(primaryConnector &&
359
- walletConnectorCore.isSessionKeyCompatibleWalletConnector(primaryConnector) &&
360
- ((_j = primaryConnector.sessionKeys) === null || _j === void 0 ? void 0 : _j.publicKey))) !== null && _k !== void 0 ? _k : false;
358
+ const isEmailAuthSessionActive = React.useMemo(() => {
359
+ var _a;
360
+ const eoaConnector = wallet === null || wallet === void 0 ? void 0 : wallet.connector;
361
+ if (!eoaConnector || !('getAuthenticatorHandler' in eoaConnector))
362
+ return false;
363
+ return (_a = getEmbeddedWalletAuthHandler.getEmbeddedWalletAuthHandler(eoaConnector)) === null || _a === void 0 ? void 0 : _a.isSessionActive();
364
+ }, [wallet === null || wallet === void 0 ? void 0 : wallet.connector]);
365
+ const isSessionKeySessionAAActive = React.useMemo(() => isConnectorSessionKeyActive(wallet === null || wallet === void 0 ? void 0 : wallet.connector), [wallet === null || wallet === void 0 ? void 0 : wallet.connector]);
366
+ const isSessionKeySessionActive = React.useMemo(() => isConnectorSessionKeyActive(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector), [primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector]);
361
367
  /**
362
368
  * Checks if the embedded wallet session is active
363
- * @returns boolean
364
369
  */
365
370
  const isSessionActive = isEmailAuthSessionActive ||
366
371
  isSessionKeySessionActive ||
@@ -371,16 +376,16 @@ const useSecureEnclaveEmbeddedWallet = () => {
371
376
  * and the html container id to render the iframe into
372
377
  * @returns Promise<string> - returns the embedded wallet recovery phrase or private key
373
378
  */
374
- const revealEmbeddedWalletKey = (_2) => _tslib.__awaiter(void 0, [_2], void 0, function* ({ type, htmlContainerId, }) {
375
- var _3, _4, _5, _6, _7, _8;
379
+ const revealEmbeddedWalletKey = React.useCallback((_t) => _tslib.__awaiter(void 0, [_t], void 0, function* ({ type, htmlContainerId, }) {
380
+ var _u, _v, _w, _x, _y, _z;
376
381
  if (!user$1) {
377
382
  throw new utils.DynamicError(errors.USER_NOT_LOGGED_IN);
378
383
  }
379
384
  yield turnkeyExport.cleanupExport({
380
- wallet,
385
+ wallet: wallet,
381
386
  });
382
- const turnkeyWallet = findTurnkeyWallet.findTurnkeyWalletByPrimaryChain(walletConnectorOptions, (_3 = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _3 === void 0 ? void 0 : _3.chainConfigurations, user$1 === null || user$1 === void 0 ? void 0 : user$1.verifiedCredentials);
383
- const turnkeyHDWalletId = (_4 = turnkeyWallet === null || turnkeyWallet === void 0 ? void 0 : turnkeyWallet.walletProperties) === null || _4 === void 0 ? void 0 : _4.turnkeyHDWalletId;
387
+ const turnkeyWallet = findTurnkeyWallet.findTurnkeyWalletByPrimaryChain(walletConnectorOptions, (_u = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _u === void 0 ? void 0 : _u.chainConfigurations, user$1 === null || user$1 === void 0 ? void 0 : user$1.verifiedCredentials);
388
+ const turnkeyHDWalletId = (_v = turnkeyWallet === null || turnkeyWallet === void 0 ? void 0 : turnkeyWallet.walletProperties) === null || _v === void 0 ? void 0 : _v.turnkeyHDWalletId;
384
389
  if (type === 'recoveryPhrase' && !turnkeyHDWalletId) {
385
390
  type = 'privateKey';
386
391
  }
@@ -389,26 +394,26 @@ const useSecureEnclaveEmbeddedWallet = () => {
389
394
  // since it will show unrelated turnkey content
390
395
  iframeContainerElement.current.style.display = 'none';
391
396
  if (walletConnectorCore.isSessionKeyCompatibleWalletConnector(wallet === null || wallet === void 0 ? void 0 : wallet.connector)) {
392
- yield ((_5 = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _5 === void 0 ? void 0 : _5.createOrRestoreSession());
397
+ yield ((_w = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _w === void 0 ? void 0 : _w.createOrRestoreSession());
393
398
  }
394
399
  yield turnkeyExport.initExport({
395
400
  iframeContainer: iframeContainerElement.current,
396
401
  iframeElementId: constants.revealIframeElementId,
397
- wallet,
402
+ wallet: wallet,
398
403
  });
399
404
  try {
400
405
  yield turnkeyExport.exportCredential({
401
406
  address: type === 'privateKey' ? wallet === null || wallet === void 0 ? void 0 : wallet.address : undefined,
402
407
  environmentId,
403
408
  user: user$1,
404
- wallet,
409
+ wallet: wallet,
405
410
  });
406
411
  }
407
- catch (_9) {
412
+ catch (_0) {
408
413
  if (walletConnectorCore.isSessionKeyCompatibleWalletConnector(wallet === null || wallet === void 0 ? void 0 : wallet.connector) &&
409
- ((_6 = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _6 === void 0 ? void 0 : _6.removeSessionKeys)) {
410
- yield ((_7 = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _7 === void 0 ? void 0 : _7.removeSessionKeys());
411
- yield ((_8 = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _8 === void 0 ? void 0 : _8.createOrRestoreSession({
414
+ ((_x = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _x === void 0 ? void 0 : _x.removeSessionKeys)) {
415
+ yield ((_y = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _y === void 0 ? void 0 : _y.removeSessionKeys());
416
+ yield ((_z = wallet === null || wallet === void 0 ? void 0 : wallet.connector) === null || _z === void 0 ? void 0 : _z.createOrRestoreSession({
412
417
  ignoreRestore: true,
413
418
  }));
414
419
  }
@@ -416,24 +421,31 @@ const useSecureEnclaveEmbeddedWallet = () => {
416
421
  address: type === 'privateKey' ? wallet === null || wallet === void 0 ? void 0 : wallet.address : undefined,
417
422
  environmentId,
418
423
  user: user$1,
419
- wallet,
424
+ wallet: wallet,
420
425
  });
421
426
  }
422
427
  // show the iframe container after the export is done
423
428
  // to show the exported content only
424
429
  iframeContainerElement.current.style.display = 'block';
425
430
  return true;
426
- });
431
+ }), [
432
+ createRootElement,
433
+ environmentId,
434
+ wallet,
435
+ (_d = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _d === void 0 ? void 0 : _d.chainConfigurations,
436
+ user$1,
437
+ walletConnectorOptions,
438
+ ]);
427
439
  /**
428
440
  * Sends a one-time code to the user so they can create a session or add a new passkey
429
441
  * @returns Promise<'code_sent'>
430
442
  */
431
443
  const sendOneTimeCode = React.useCallback(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
432
- var _10, _11;
444
+ var _1, _2;
433
445
  if (!user$1) {
434
446
  throw new utils.DynamicError(errors.USER_NOT_LOGGED_IN);
435
447
  }
436
- const targetTurnkeyWallet = findTurnkeyWallet.findTurnkeyWalletByPrimaryChain(walletConnectorOptions, (_10 = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _10 === void 0 ? void 0 : _10.chainConfigurations, user$1.verifiedCredentials);
448
+ const targetTurnkeyWallet = findTurnkeyWallet.findTurnkeyWalletByPrimaryChain(walletConnectorOptions, (_1 = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _1 === void 0 ? void 0 : _1.chainConfigurations, user$1.verifiedCredentials);
437
449
  if (!targetTurnkeyWallet || !('id' in targetTurnkeyWallet)) {
438
450
  throw new utils.DynamicError('User does not have a valid secure enclave wallet', errors.INVALID_WALLET_DATA);
439
451
  }
@@ -444,7 +456,7 @@ const useSecureEnclaveEmbeddedWallet = () => {
444
456
  throw new utils.DynamicError('Session is active. No need to create a new one', errors.ACTIVE_SESSION);
445
457
  }
446
458
  const turnkeyAuthIframeContainerRef = createRootElement(constants.iframeContainerId);
447
- const publicKey = yield turnkeyAuthenticatorHandler.initRecovery('email', turnkeyAuthIframeContainerRef.current, constants.iframeElementId, getEmbeddedWalletSessionExpiration.getEmbeddedWalletSessionExpiration((_11 = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _11 === void 0 ? void 0 : _11.sessionKeyDuration));
459
+ const publicKey = yield turnkeyAuthenticatorHandler.initRecovery('email', turnkeyAuthIframeContainerRef.current, constants.iframeElementId, getEmbeddedWalletSessionExpiration.getEmbeddedWalletSessionExpiration((_2 = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _2 === void 0 ? void 0 : _2.sessionKeyDuration));
448
460
  if (!publicKey) {
449
461
  throw new utils.DynamicError(errors.ERROR_SENDING_CODE);
450
462
  }
@@ -463,7 +475,19 @@ const useSecureEnclaveEmbeddedWallet = () => {
463
475
  projectSettings,
464
476
  walletConnectorOptions,
465
477
  ]);
466
- return {
478
+ return React.useMemo(() => ({
479
+ createEmbeddedWallet,
480
+ createEmbeddedWalletAccount,
481
+ createOrRestoreSession,
482
+ createPasskey,
483
+ getPasskeys,
484
+ getWalletVersion,
485
+ isLoadingEmbeddedWallet,
486
+ isSessionActive,
487
+ revealEmbeddedWalletKey,
488
+ sendOneTimeCode,
489
+ userHasEmbeddedWallet,
490
+ }), [
467
491
  createEmbeddedWallet,
468
492
  createEmbeddedWalletAccount,
469
493
  createOrRestoreSession,
@@ -475,7 +499,8 @@ const useSecureEnclaveEmbeddedWallet = () => {
475
499
  revealEmbeddedWalletKey,
476
500
  sendOneTimeCode,
477
501
  userHasEmbeddedWallet,
478
- };
502
+ ]);
479
503
  };
480
504
 
505
+ exports.isConnectorSessionKeyActive = isConnectorSessionKeyActive;
481
506
  exports.useSecureEnclaveEmbeddedWallet = useSecureEnclaveEmbeddedWallet;
@@ -1,7 +1,7 @@
1
1
  import { EmbeddedWalletChainEnum } from '@dynamic-labs/sdk-api-core';
2
- import { WebAuthnAttestation } from '@dynamic-labs/wallet-connector-core';
3
- import { Wallet } from '../../../../shared';
2
+ import { Wallet, WalletConnector, WebAuthnAttestation } from '@dynamic-labs/wallet-connector-core';
4
3
  import { EmbeddedWalletVersion } from './constants';
4
+ export declare const isConnectorSessionKeyActive: (connector: WalletConnector | undefined) => boolean;
5
5
  /**
6
6
  *
7
7
  * @returns {
@@ -32,7 +32,7 @@ export declare const useSecureEnclaveEmbeddedWallet: () => {
32
32
  readonly getPasskeys: () => Promise<import("@dynamic-labs/sdk-api-core").UserPasskey[]>;
33
33
  readonly getWalletVersion: () => EmbeddedWalletVersion;
34
34
  readonly isLoadingEmbeddedWallet: boolean;
35
- readonly isSessionActive: string | boolean | undefined;
35
+ readonly isSessionActive: boolean;
36
36
  readonly revealEmbeddedWalletKey: ({ type, htmlContainerId, }: {
37
37
  type: 'recoveryPhrase' | 'privateKey';
38
38
  htmlContainerId?: string;