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

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 (438) hide show
  1. package/CHANGELOG.md +69 -0
  2. package/package.cjs +3 -3
  3. package/package.js +3 -3
  4. package/package.json +12 -11
  5. package/src/index.cjs +41 -34
  6. package/src/index.d.ts +3 -1
  7. package/src/index.js +26 -22
  8. package/src/lib/Main.cjs +24 -22
  9. package/src/lib/Main.js +24 -22
  10. package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.cjs +18 -17
  11. package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.js +18 -17
  12. package/src/lib/components/AnimatePresence/AnimatePresence.cjs +19 -18
  13. package/src/lib/components/AnimatePresence/AnimatePresence.js +19 -18
  14. package/src/lib/components/AuthProviderIcon/AuthProviderIcon.cjs +15 -14
  15. package/src/lib/components/AuthProviderIcon/AuthProviderIcon.js +15 -14
  16. package/src/lib/components/Divider/Divider.cjs +16 -15
  17. package/src/lib/components/Divider/Divider.js +16 -15
  18. package/src/lib/components/MenuList/Dropdown/Dropdown.cjs +16 -15
  19. package/src/lib/components/MenuList/Dropdown/Dropdown.js +16 -15
  20. package/src/lib/components/Modal/Modal.cjs +17 -16
  21. package/src/lib/components/Modal/Modal.js +17 -16
  22. package/src/lib/components/NeedHelpSection/NeedHelpSection.cjs +21 -19
  23. package/src/lib/components/NeedHelpSection/NeedHelpSection.js +21 -19
  24. package/src/lib/components/NetworkPicker/NetworkPicker.cjs +17 -16
  25. package/src/lib/components/NetworkPicker/NetworkPicker.js +17 -16
  26. package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.cjs +15 -14
  27. package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.js +15 -14
  28. package/src/lib/components/NetworkPicker/components/Network/Network.cjs +17 -16
  29. package/src/lib/components/NetworkPicker/components/Network/Network.js +17 -16
  30. package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.cjs +16 -15
  31. package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.js +16 -15
  32. package/src/lib/components/OTPVerificationView/OTPVerificationView.cjs +16 -15
  33. package/src/lib/components/OTPVerificationView/OTPVerificationView.js +16 -15
  34. package/src/lib/components/OverlayCard/OverlayCard.cjs +17 -16
  35. package/src/lib/components/OverlayCard/OverlayCard.js +17 -16
  36. package/src/lib/components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.cjs +16 -15
  37. package/src/lib/components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.js +16 -15
  38. package/src/lib/components/Popper/PopperContext/PopperContext.js +1 -1
  39. package/src/lib/components/Portal/Portal.cjs +17 -16
  40. package/src/lib/components/Portal/Portal.js +17 -16
  41. package/src/lib/components/SecureTurnkeyWalletCard/SecureTurnkeyWalletCard.cjs +1 -1
  42. package/src/lib/components/SecureTurnkeyWalletCard/SecureTurnkeyWalletCard.js +1 -1
  43. package/src/lib/components/SendBalancePageLayout/components/TokenBalanceCard/TokenBalanceCard.cjs +2 -1
  44. package/src/lib/components/SendBalancePageLayout/components/TokenBalanceCard/TokenBalanceCard.js +2 -1
  45. package/src/lib/components/SocialSignIn/SocialSignIn.cjs +16 -15
  46. package/src/lib/components/SocialSignIn/SocialSignIn.js +16 -15
  47. package/src/lib/components/SyncPasskeyFlow/SyncPasskeyFlow.cjs +15 -14
  48. package/src/lib/components/SyncPasskeyFlow/SyncPasskeyFlow.js +15 -14
  49. package/src/lib/components/Tooltip/Tooltip.cjs +15 -14
  50. package/src/lib/components/Tooltip/Tooltip.js +15 -14
  51. package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.cjs +14 -13
  52. package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.js +14 -13
  53. package/src/lib/components/Transition/VerticalDrawerTransition/VerticalDrawerTransition.cjs +18 -17
  54. package/src/lib/components/Transition/VerticalDrawerTransition/VerticalDrawerTransition.js +18 -17
  55. package/src/lib/components/UserAddress/UserAddress.cjs +16 -15
  56. package/src/lib/components/UserAddress/UserAddress.js +16 -15
  57. package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.cjs +16 -15
  58. package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.js +16 -15
  59. package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.cjs +16 -15
  60. package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.js +16 -15
  61. package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.cjs +16 -15
  62. package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.js +16 -15
  63. package/src/lib/context/AccessDeniedContext/AccessDeniedContext.js +1 -1
  64. package/src/lib/context/AccountExistsContext/AccountExistsContext.js +1 -1
  65. package/src/lib/context/CaptchaContext/CaptchaContext.js +1 -1
  66. package/src/lib/context/DynamicContext/DynamicContext.cjs +44 -38
  67. package/src/lib/context/DynamicContext/DynamicContext.d.ts +5 -2
  68. package/src/lib/context/DynamicContext/DynamicContext.js +44 -39
  69. package/src/lib/context/DynamicContext/hooks/useSelectedWalletConnector/useSelectedWalletConnector.cjs +3 -3
  70. package/src/lib/context/DynamicContext/hooks/useSelectedWalletConnector/useSelectedWalletConnector.d.ts +2 -2
  71. package/src/lib/context/DynamicContext/hooks/useSelectedWalletConnector/useSelectedWalletConnector.js +3 -3
  72. package/src/lib/context/DynamicContext/hooks/useSetShowAuthFlowWithInit/useSetShowAuthFlowWithInit.cjs +3 -3
  73. package/src/lib/context/DynamicContext/hooks/useSetShowAuthFlowWithInit/useSetShowAuthFlowWithInit.d.ts +2 -2
  74. package/src/lib/context/DynamicContext/hooks/useSetShowAuthFlowWithInit/useSetShowAuthFlowWithInit.js +3 -3
  75. package/src/lib/context/DynamicContext/types/index.d.ts +1 -2
  76. package/src/lib/context/DynamicContext/useCustomerCallbacks/types.d.ts +1 -1
  77. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.cjs +18 -17
  78. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.js +18 -17
  79. package/src/lib/context/DynamicContext/useDynamicContext.cjs +2 -5
  80. package/src/lib/context/DynamicContext/useDynamicContext.d.ts +1 -1
  81. package/src/lib/context/DynamicContext/useDynamicContext.js +2 -5
  82. package/src/lib/context/EmailVerificationContext/EmailVerificationContext.js +1 -1
  83. package/src/lib/context/FundingContext/FundingContext.cjs +35 -27
  84. package/src/lib/context/FundingContext/FundingContext.d.ts +4 -0
  85. package/src/lib/context/FundingContext/FundingContext.js +36 -28
  86. package/src/lib/context/FundingContext/index.d.ts +1 -0
  87. package/src/lib/context/FundingContext/useFunding/index.d.ts +1 -0
  88. package/src/lib/context/FundingContext/useFunding/useFunding.cjs +39 -0
  89. package/src/lib/context/FundingContext/useFunding/useFunding.d.ts +9 -0
  90. package/src/lib/context/FundingContext/useFunding/useFunding.js +35 -0
  91. package/src/lib/context/LoadingContext/LoadingContext.js +1 -1
  92. package/src/lib/context/MockContext/MockContext.cjs +13 -11
  93. package/src/lib/context/MockContext/MockContext.js +13 -11
  94. package/src/lib/context/QrCodeContext/QrCodeContext.cjs +18 -17
  95. package/src/lib/context/QrCodeContext/QrCodeContext.js +18 -17
  96. package/src/lib/context/SendBalanceContext/SendBalanceContext.cjs +15 -14
  97. package/src/lib/context/SendBalanceContext/SendBalanceContext.js +15 -14
  98. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.cjs +31 -16
  99. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.js +32 -17
  100. package/src/lib/context/UserFieldEditorContext/UserFieldEditorContext.cjs +16 -15
  101. package/src/lib/context/UserFieldEditorContext/UserFieldEditorContext.js +16 -15
  102. package/src/lib/context/UserWalletsContext/UserWalletsContext.cjs +52 -0
  103. package/src/lib/context/UserWalletsContext/UserWalletsContext.d.ts +21 -0
  104. package/src/lib/context/UserWalletsContext/UserWalletsContext.js +45 -0
  105. package/src/lib/context/UserWalletsContext/index.d.ts +1 -0
  106. package/src/lib/context/ViewContext/ViewContext.js +1 -1
  107. package/src/lib/data/api.js +1 -1
  108. package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.cjs +16 -15
  109. package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.js +16 -15
  110. package/src/lib/layout/DynamicAuthLayout/Header/header.cjs +16 -15
  111. package/src/lib/layout/DynamicAuthLayout/Header/header.js +16 -15
  112. package/src/lib/layout/DynamicAuthLayout/HelpContent/HelpHeader/HelpHeader.cjs +16 -15
  113. package/src/lib/layout/DynamicAuthLayout/HelpContent/HelpHeader/HelpHeader.js +16 -15
  114. package/src/lib/layout/DynamicAuthLayout/HelpContent/PasskeyInfoHelper/PasskeyInfoHelper.cjs +14 -13
  115. package/src/lib/layout/DynamicAuthLayout/HelpContent/PasskeyInfoHelper/PasskeyInfoHelper.js +14 -13
  116. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/Item/Item.cjs +16 -15
  117. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/Item/Item.js +16 -15
  118. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.cjs +16 -15
  119. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.js +16 -15
  120. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletListHelpContent.cjs +15 -14
  121. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletListHelpContent.js +15 -14
  122. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletMoreInfoContent/WalletMoreInfoContent.cjs +15 -14
  123. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletMoreInfoContent/WalletMoreInfoContent.js +15 -14
  124. package/src/lib/layout/DynamicAuthLayout/ToSFooter/ToSFooter.cjs +16 -15
  125. package/src/lib/layout/DynamicAuthLayout/ToSFooter/ToSFooter.js +16 -15
  126. package/src/lib/layout/DynamicAuthLayout/WalletProgressStepper/WalletProgressStepper.cjs +15 -14
  127. package/src/lib/layout/DynamicAuthLayout/WalletProgressStepper/WalletProgressStepper.js +15 -14
  128. package/src/lib/layout/DynamicUserProfileLayout/DynamicUserProfileLayout.cjs +17 -15
  129. package/src/lib/layout/DynamicUserProfileLayout/DynamicUserProfileLayout.js +17 -15
  130. package/src/lib/layouts/BridgeNextWalletToConnectLayout/BridgeNextWalletToConnectLayout.cjs +16 -15
  131. package/src/lib/layouts/BridgeNextWalletToConnectLayout/BridgeNextWalletToConnectLayout.js +16 -15
  132. package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.cjs +16 -15
  133. package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.js +16 -15
  134. package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.cjs +16 -15
  135. package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.js +16 -15
  136. package/src/lib/locale/en/translation.cjs +4 -4
  137. package/src/lib/locale/en/translation.d.ts +2 -2
  138. package/src/lib/locale/en/translation.js +4 -4
  139. package/src/lib/modals/DynamicAuthModal/DynamicAuthModal.cjs +16 -15
  140. package/src/lib/modals/DynamicAuthModal/DynamicAuthModal.js +16 -15
  141. package/src/lib/modals/SendBalanceModal/SendBalanceModal.cjs +16 -15
  142. package/src/lib/modals/SendBalanceModal/SendBalanceModal.js +16 -15
  143. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.cjs +17 -16
  144. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.js +17 -16
  145. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.types.d.ts +1 -1
  146. package/src/lib/modals/SignMessageConfirmationModal/getProperErrorMessage.cjs +15 -10
  147. package/src/lib/modals/SignMessageConfirmationModal/getProperErrorMessage.d.ts +4 -2
  148. package/src/lib/modals/SignMessageConfirmationModal/getProperErrorMessage.js +15 -10
  149. package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs +16 -16
  150. package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.js +16 -16
  151. package/src/lib/modals/UserFieldEditorModal/UserFieldEditorModal.cjs +16 -15
  152. package/src/lib/modals/UserFieldEditorModal/UserFieldEditorModal.js +16 -15
  153. package/src/lib/shared/types/index.d.ts +9 -0
  154. package/src/lib/shared/utils/hooks/useGlobalLoading/useGlobalLoading.cjs +4 -2
  155. package/src/lib/shared/utils/hooks/useGlobalLoading/useGlobalLoading.d.ts +2 -2
  156. package/src/lib/shared/utils/hooks/useGlobalLoading/useGlobalLoading.js +4 -2
  157. package/src/lib/styles/index.shadow.cjs +1 -1
  158. package/src/lib/styles/index.shadow.js +1 -1
  159. package/src/lib/utils/functions/createOwnerWallet/createOwnerWallet.cjs +39 -0
  160. package/src/lib/utils/functions/createOwnerWallet/createOwnerWallet.d.ts +3 -0
  161. package/src/lib/utils/functions/createOwnerWallet/createOwnerWallet.js +35 -0
  162. package/src/lib/utils/functions/createOwnerWallet/index.d.ts +1 -0
  163. package/src/lib/utils/functions/getOauthLoginUrl/getOauthLoginUrl.cjs +1 -1
  164. package/src/lib/utils/functions/getOauthLoginUrl/getOauthLoginUrl.js +1 -1
  165. package/src/lib/utils/functions/index.d.ts +2 -0
  166. package/src/lib/utils/functions/isAccountAbstractionWallet/index.d.ts +1 -0
  167. package/src/lib/utils/functions/isAccountAbstractionWallet/isAccountAbstractionWallet.cjs +18 -0
  168. package/src/lib/utils/functions/isAccountAbstractionWallet/isAccountAbstractionWallet.d.ts +2 -0
  169. package/src/lib/utils/functions/isAccountAbstractionWallet/isAccountAbstractionWallet.js +14 -0
  170. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.cjs +9 -2
  171. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.js +9 -2
  172. package/src/lib/utils/hooks/index.d.ts +35 -35
  173. package/src/lib/utils/hooks/useAuthenticateConnectedUser/useAuthenticateConnectedUser.cjs +4 -3
  174. package/src/lib/utils/hooks/useAuthenticateConnectedUser/useAuthenticateConnectedUser.js +4 -3
  175. package/src/lib/utils/hooks/useConnectWallet/updateUserWalletsFromConnectedWallets/index.d.ts +1 -0
  176. package/src/lib/utils/hooks/useConnectWallet/updateUserWalletsFromConnectedWallets/updateUserWalletsFromConnectedWallets.cjs +37 -0
  177. package/src/lib/utils/hooks/useConnectWallet/updateUserWalletsFromConnectedWallets/updateUserWalletsFromConnectedWallets.d.ts +8 -0
  178. package/src/lib/utils/hooks/useConnectWallet/updateUserWalletsFromConnectedWallets/updateUserWalletsFromConnectedWallets.js +33 -0
  179. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +14 -7
  180. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.d.ts +2 -3
  181. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +14 -7
  182. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.cjs +8 -5
  183. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.d.ts +1 -1
  184. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.js +8 -5
  185. package/src/lib/utils/hooks/useEmailProvider/useEmailProvider.cjs +6 -3
  186. package/src/lib/utils/hooks/useEmailProvider/useEmailProvider.js +6 -3
  187. package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.cjs +14 -11
  188. package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.js +14 -11
  189. package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs +16 -1
  190. package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js +16 -1
  191. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.cjs +2 -2
  192. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.js +2 -2
  193. package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.cjs +6 -1
  194. package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.js +7 -2
  195. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +2 -2
  196. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +2 -2
  197. package/src/lib/utils/hooks/useWalletConnectorEvent/useWalletConnectorEvent.cjs +34 -5
  198. package/src/lib/utils/hooks/useWalletConnectorEvent/useWalletConnectorEvent.d.ts +33 -1
  199. package/src/lib/utils/hooks/useWalletConnectorEvent/useWalletConnectorEvent.js +34 -5
  200. package/src/lib/utils/hooks/useWalletConnectorOptions/index.d.ts +1 -0
  201. package/src/lib/utils/hooks/{useWallets/useWallets.cjs → useWalletConnectorOptions/useWalletConnectorOptions.cjs} +8 -8
  202. package/src/lib/utils/hooks/{useWallets/useWallets.d.ts → useWalletConnectorOptions/useWalletConnectorOptions.d.ts} +2 -2
  203. package/src/lib/utils/hooks/{useWallets/useWallets.js → useWalletConnectorOptions/useWalletConnectorOptions.js} +8 -8
  204. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/errors/ConnectorSetupError.cjs +13 -0
  205. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/errors/ConnectorSetupError.d.ts +4 -0
  206. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/errors/ConnectorSetupError.js +9 -0
  207. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/errors/index.d.ts +1 -0
  208. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/index.d.ts +1 -0
  209. package/src/lib/utils/hooks/{useWallets → useWalletConnectorOptions}/utils/verifyMagicIsSetup/verifyMagicIsSetup.cjs +3 -5
  210. package/src/lib/utils/hooks/{useWallets → useWalletConnectorOptions}/utils/verifyMagicIsSetup/verifyMagicIsSetup.d.ts +0 -3
  211. package/src/lib/utils/hooks/{useWallets → useWalletConnectorOptions}/utils/verifyMagicIsSetup/verifyMagicIsSetup.js +4 -4
  212. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyRequiredConnectorsAreSetup/index.d.ts +1 -0
  213. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyRequiredConnectorsAreSetup/verifyRequiredConnectorsAreSetup.cjs +13 -0
  214. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyRequiredConnectorsAreSetup/verifyRequiredConnectorsAreSetup.d.ts +3 -0
  215. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyRequiredConnectorsAreSetup/verifyRequiredConnectorsAreSetup.js +9 -0
  216. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyZeroDevIsSetup/index.d.ts +1 -0
  217. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.cjs +32 -0
  218. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.d.ts +3 -0
  219. package/src/lib/utils/hooks/useWalletConnectorOptions/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.js +28 -0
  220. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.cjs +17 -15
  221. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.d.ts +3 -7
  222. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.js +17 -15
  223. package/src/lib/utils/hooks/useWalletConnectors/utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.cjs +5 -4
  224. package/src/lib/utils/hooks/useWalletConnectors/utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.d.ts +2 -2
  225. package/src/lib/utils/hooks/useWalletConnectors/utils/createLinkedWalletsFromWalletOptions/createLinkedWalletsFromWalletOptions.js +5 -4
  226. package/src/lib/utils/hooks/useWalletConnectors/utils/smartWallet/smartWallet.cjs +3 -3
  227. package/src/lib/utils/hooks/useWalletConnectors/utils/smartWallet/smartWallet.d.ts +2 -2
  228. package/src/lib/utils/hooks/useWalletConnectors/utils/smartWallet/smartWallet.js +3 -3
  229. package/src/lib/utils/hooks/useWalletConnectors/utils/updateUserWalletsFromLinkedWallets/index.d.ts +1 -0
  230. package/src/lib/utils/hooks/useWalletConnectors/utils/updateUserWalletsFromLinkedWallets/updateUserWalletsFromLinkedWallets.cjs +34 -0
  231. package/src/lib/utils/hooks/useWalletConnectors/utils/updateUserWalletsFromLinkedWallets/updateUserWalletsFromLinkedWallets.d.ts +8 -0
  232. package/src/lib/utils/hooks/useWalletConnectors/utils/updateUserWalletsFromLinkedWallets/updateUserWalletsFromLinkedWallets.js +30 -0
  233. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +4 -4
  234. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +4 -4
  235. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.cjs +9 -8
  236. package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.js +9 -8
  237. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.cjs +13 -12
  238. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.js +13 -12
  239. package/src/lib/views/AccountExistsView/AccountExistsView.cjs +18 -17
  240. package/src/lib/views/AccountExistsView/AccountExistsView.js +18 -17
  241. package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.cjs +16 -15
  242. package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.js +16 -15
  243. package/src/lib/views/CollectUserDataView/CollectUserDataView.cjs +17 -16
  244. package/src/lib/views/CollectUserDataView/CollectUserDataView.js +17 -16
  245. package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.cjs +19 -18
  246. package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.js +19 -18
  247. package/src/lib/views/CollectUserDataView/UserDataFields/index.cjs +17 -16
  248. package/src/lib/views/CollectUserDataView/UserDataFields/index.js +17 -16
  249. package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.cjs +17 -16
  250. package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.js +17 -16
  251. package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.cjs +15 -14
  252. package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.js +15 -14
  253. package/src/lib/views/EmailUpdate/EmailUpdate.cjs +16 -15
  254. package/src/lib/views/EmailUpdate/EmailUpdate.js +16 -15
  255. package/src/lib/views/EmailVerification/EmailVerification.cjs +20 -19
  256. package/src/lib/views/EmailVerification/EmailVerification.js +20 -19
  257. package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.cjs +15 -14
  258. package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.js +15 -14
  259. package/src/lib/views/LoginView/sections/EmailSignInSection/LoginEmailForm.cjs +17 -16
  260. package/src/lib/views/LoginView/sections/EmailSignInSection/LoginEmailForm.js +17 -16
  261. package/src/lib/views/LoginView/sections/SocialSignInSection/DynamicSocialSignIn/DynamicSocialSignIn.cjs +17 -16
  262. package/src/lib/views/LoginView/sections/SocialSignInSection/DynamicSocialSignIn/DynamicSocialSignIn.js +17 -16
  263. package/src/lib/views/LoginView/sections/SocialSignInSection/MagicSocialSignIn/MagicSocialSignIn.cjs +17 -16
  264. package/src/lib/views/LoginView/sections/SocialSignInSection/MagicSocialSignIn/MagicSocialSignIn.js +17 -16
  265. package/src/lib/views/LoginView/sections/WalletSignInSection/ListItemButton/ListItemButton.cjs +15 -14
  266. package/src/lib/views/LoginView/sections/WalletSignInSection/ListItemButton/ListItemButton.js +15 -14
  267. package/src/lib/views/LoginView/sections/WalletSignInSection/WalletSignInSection.cjs +16 -15
  268. package/src/lib/views/LoginView/sections/WalletSignInSection/WalletSignInSection.js +16 -15
  269. package/src/lib/views/LoginView/sections/WalletSignInSection/WalletSimpleSignIn/WalletSimpleSignIn.cjs +2 -2
  270. package/src/lib/views/LoginView/sections/WalletSignInSection/WalletSimpleSignIn/WalletSimpleSignIn.js +2 -2
  271. package/src/lib/views/LoginView/useLoginView.cjs +9 -2
  272. package/src/lib/views/LoginView/useLoginView.js +9 -2
  273. package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.cjs +16 -15
  274. package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.js +16 -15
  275. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +19 -18
  276. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +19 -18
  277. package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.cjs +19 -18
  278. package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.js +19 -18
  279. package/src/lib/views/NoAccess/NoAccess.cjs +16 -15
  280. package/src/lib/views/NoAccess/NoAccess.js +16 -15
  281. package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.cjs +16 -15
  282. package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.js +16 -15
  283. package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.cjs +16 -15
  284. package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.js +16 -15
  285. package/src/lib/views/Passkey/PasskeyDeviceIcon/PasskeyDeviceIcon.cjs +16 -15
  286. package/src/lib/views/Passkey/PasskeyDeviceIcon/PasskeyDeviceIcon.js +16 -15
  287. package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.cjs +21 -20
  288. package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.js +21 -20
  289. package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.cjs +37 -20
  290. package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.js +38 -21
  291. package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.cjs +24 -18
  292. package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.js +24 -18
  293. package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.cjs +26 -20
  294. package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.js +26 -20
  295. package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.cjs +12 -7
  296. package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.d.ts +2 -1
  297. package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.js +12 -7
  298. package/src/lib/views/PendingConnectView/PendingConnectView.cjs +16 -15
  299. package/src/lib/views/PendingConnectView/PendingConnectView.js +16 -15
  300. package/src/lib/views/PendingSignatureView/PendingSignatureView.cjs +16 -15
  301. package/src/lib/views/PendingSignatureView/PendingSignatureView.js +16 -15
  302. package/src/lib/views/QrCodeView/QRCode.cjs +17 -16
  303. package/src/lib/views/QrCodeView/QRCode.js +17 -16
  304. package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.cjs +14 -13
  305. package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.js +14 -13
  306. package/src/lib/views/QrCodeView/QrCodeView.cjs +14 -13
  307. package/src/lib/views/QrCodeView/QrCodeView.js +14 -13
  308. package/src/lib/views/SendBalanceView/SendBalanceView.cjs +17 -16
  309. package/src/lib/views/SendBalanceView/SendBalanceView.js +17 -16
  310. package/src/lib/views/SendBalanceView/components/TransactionStage/TransactionStage.cjs +17 -17
  311. package/src/lib/views/SendBalanceView/components/TransactionStage/TransactionStage.js +17 -17
  312. package/src/lib/views/SocialRedirectView/SocialRedirectView.cjs +17 -16
  313. package/src/lib/views/SocialRedirectView/SocialRedirectView.js +17 -16
  314. package/src/lib/views/SocialWrongAccountView/SocialWrongAccountView.cjs +17 -16
  315. package/src/lib/views/SocialWrongAccountView/SocialWrongAccountView.js +17 -16
  316. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.cjs +21 -25
  317. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.js +21 -25
  318. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.types.d.ts +4 -0
  319. package/src/lib/views/TransactionConfirmationView/helpers/transactionErrorMessage.cjs +19 -12
  320. package/src/lib/views/TransactionConfirmationView/helpers/transactionErrorMessage.d.ts +2 -11
  321. package/src/lib/views/TransactionConfirmationView/helpers/transactionErrorMessage.js +19 -12
  322. package/src/lib/views/TransactionConfirmationView/hooks/useTransactionGas/useTransactionGas.cjs +19 -18
  323. package/src/lib/views/TransactionConfirmationView/hooks/useTransactionGas/useTransactionGas.js +19 -18
  324. package/src/lib/views/UserFieldEditorView/UserFieldEditorView.cjs +16 -15
  325. package/src/lib/views/UserFieldEditorView/UserFieldEditorView.js +16 -15
  326. package/src/lib/views/WalletCannotBeTransferredView/WalletCannotBeTransferredView.cjs +16 -15
  327. package/src/lib/views/WalletCannotBeTransferredView/WalletCannotBeTransferredView.js +16 -15
  328. package/src/lib/views/WalletList/SearchNotFoundMessage/SearchNotFoundMessage.cjs +16 -15
  329. package/src/lib/views/WalletList/SearchNotFoundMessage/SearchNotFoundMessage.js +16 -15
  330. package/src/lib/views/WalletList/WalletList.cjs +4 -4
  331. package/src/lib/views/WalletList/WalletList.js +4 -4
  332. package/src/lib/views/WalletList/WalletListItem/WalletListItem.cjs +16 -15
  333. package/src/lib/views/WalletList/WalletListItem/WalletListItem.js +16 -15
  334. package/src/lib/views/WalletLockedView/WalletLockedView.cjs +16 -15
  335. package/src/lib/views/WalletLockedView/WalletLockedView.js +16 -15
  336. package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.cjs +14 -13
  337. package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.js +14 -13
  338. package/src/lib/views/WalletUsedView/WalletUsedView.cjs +18 -17
  339. package/src/lib/views/WalletUsedView/WalletUsedView.js +18 -17
  340. package/src/lib/widgets/DynamicBridgeWidget/DynamicBridgeWidget.cjs +16 -15
  341. package/src/lib/widgets/DynamicBridgeWidget/DynamicBridgeWidget.js +16 -15
  342. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeUserProfile/DynamicBridgeUserProfile.cjs +17 -16
  343. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeUserProfile/DynamicBridgeUserProfile.js +17 -16
  344. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCard/DynamicBridgeWalletCard.cjs +16 -15
  345. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCard/DynamicBridgeWalletCard.js +16 -15
  346. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCardBody/DynamicBridgeWalletCardBody.cjs +16 -15
  347. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCardBody/DynamicBridgeWalletCardBody.js +16 -15
  348. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetEmptyCard/DynamicBridgeWidgetEmptyCard.cjs +13 -12
  349. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetEmptyCard/DynamicBridgeWidgetEmptyCard.js +13 -12
  350. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/WalletsView.cjs +15 -14
  351. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/WalletsView.js +15 -14
  352. package/src/lib/widgets/DynamicEmbeddedWidget/DynamicEmbeddedAuthFlow/DynamicEmbeddedAuthFlow.cjs +17 -16
  353. package/src/lib/widgets/DynamicEmbeddedWidget/DynamicEmbeddedAuthFlow/DynamicEmbeddedAuthFlow.js +17 -16
  354. package/src/lib/widgets/DynamicEmbeddedWidget/DynamicEmbeddedUserProfile/DynamicEmbeddedUserProfile.cjs +18 -16
  355. package/src/lib/widgets/DynamicEmbeddedWidget/DynamicEmbeddedUserProfile/DynamicEmbeddedUserProfile.js +18 -16
  356. package/src/lib/widgets/DynamicWidget/DynamicWidget.cjs +17 -16
  357. package/src/lib/widgets/DynamicWidget/DynamicWidget.js +17 -16
  358. package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.cjs +13 -12
  359. package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.js +13 -12
  360. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs +24 -18
  361. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js +24 -18
  362. package/src/lib/widgets/DynamicWidget/components/Balance/Balance.cjs +16 -15
  363. package/src/lib/widgets/DynamicWidget/components/Balance/Balance.js +16 -15
  364. package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.cjs +16 -15
  365. package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.js +16 -15
  366. package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.cjs +16 -15
  367. package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.js +16 -15
  368. package/src/lib/widgets/DynamicWidget/components/DynamicNav/DynamicNav.cjs +15 -14
  369. package/src/lib/widgets/DynamicWidget/components/DynamicNav/DynamicNav.js +15 -14
  370. package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.cjs +17 -15
  371. package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.js +17 -15
  372. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs +18 -17
  373. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js +18 -17
  374. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.cjs +16 -15
  375. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.js +16 -15
  376. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetDropdown/DynamicWidgetDropdown.cjs +17 -16
  377. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetDropdown/DynamicWidgetDropdown.js +17 -16
  378. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.cjs +16 -15
  379. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.js +16 -15
  380. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.cjs +16 -15
  381. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.js +16 -15
  382. package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.cjs +16 -15
  383. package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.js +16 -15
  384. package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.cjs +17 -16
  385. package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.js +17 -16
  386. package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.cjs +16 -15
  387. package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.js +16 -15
  388. package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.cjs +16 -15
  389. package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.js +16 -15
  390. package/src/lib/widgets/DynamicWidget/components/UnknownWalletInformation/UnknownWalletInformation.cjs +16 -15
  391. package/src/lib/widgets/DynamicWidget/components/UnknownWalletInformation/UnknownWalletInformation.js +16 -15
  392. package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.cjs +13 -12
  393. package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.js +13 -12
  394. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.cjs +16 -15
  395. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.js +16 -15
  396. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.cjs +17 -16
  397. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.js +17 -16
  398. package/src/lib/widgets/DynamicWidget/helpers/helpers.cjs +7 -7
  399. package/src/lib/widgets/DynamicWidget/helpers/helpers.d.ts +1 -1
  400. package/src/lib/widgets/DynamicWidget/helpers/helpers.js +7 -7
  401. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.cjs +16 -15
  402. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.js +16 -15
  403. package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.cjs +13 -12
  404. package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.js +13 -12
  405. package/src/lib/widgets/DynamicWidget/prompts/NoQrNotInstalledModalView/NoQrNotInstalledModalView.cjs +16 -15
  406. package/src/lib/widgets/DynamicWidget/prompts/NoQrNotInstalledModalView/NoQrNotInstalledModalView.js +16 -15
  407. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.cjs +16 -15
  408. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.js +16 -15
  409. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.cjs +16 -15
  410. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.js +16 -15
  411. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.cjs +15 -14
  412. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.js +15 -14
  413. package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.cjs +14 -13
  414. package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.js +14 -13
  415. package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.cjs +16 -15
  416. package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.js +16 -15
  417. package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.cjs +16 -15
  418. package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.js +16 -15
  419. package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.cjs +15 -14
  420. package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.js +15 -14
  421. package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.cjs +15 -14
  422. package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.js +15 -14
  423. package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.cjs +18 -17
  424. package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.js +18 -17
  425. package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/ManagePasskeysWidgetView.cjs +28 -29
  426. package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/ManagePasskeysWidgetView.js +28 -29
  427. package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs +17 -16
  428. package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js +17 -16
  429. package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.cjs +16 -15
  430. package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.js +16 -15
  431. package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.cjs +17 -16
  432. package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.js +17 -16
  433. package/src/lib/widgets/FundingWidget/views/FundWalletView/FundWalletView.cjs +16 -15
  434. package/src/lib/widgets/FundingWidget/views/FundWalletView/FundWalletView.js +16 -15
  435. package/src/lib/utils/hooks/useWallets/index.d.ts +0 -1
  436. package/src/lib/utils/hooks/useWallets/utils/index.d.ts +0 -1
  437. package/src/lib/views/Passkey/passkey.types.d.ts +0 -8
  438. /package/src/lib/utils/hooks/{useWallets → useWalletConnectorOptions}/utils/verifyMagicIsSetup/index.d.ts +0 -0
@@ -0,0 +1,14 @@
1
+ import { isAccountAbstractionConnector } from '@dynamic-labs/wallet-connector-core';
2
+
3
+ const isAccountAbstractionWallet = (wallet) => {
4
+ if (!wallet ||
5
+ wallet === undefined ||
6
+ wallet === null ||
7
+ typeof wallet !== 'object' ||
8
+ !('connector' in wallet)) {
9
+ return false;
10
+ }
11
+ return isAccountAbstractionConnector(wallet.connector);
12
+ };
13
+
14
+ export { isAccountAbstractionWallet };
@@ -88,15 +88,22 @@ const useConnectAndSign = ({ shouldUpdateWallets = true, shouldCallCallback = tr
88
88
  }
89
89
  const { address, id } = connectionResult;
90
90
  const walletNetwork = yield walletConnector.getNetwork();
91
+ // When we switch networks on MM/walletconnect, it breaks the flow and doesn't always display the sign message
92
+ // Since it the network doesn't matter for the sign, we don't need to force the user to switch to the supported
93
+ // network at this stage and they can switch when doing a transaction
94
+ // Note: not checking specifically for MM since user can choose walletconnect connector to use with MM
95
+ const shouldForceSupportedNetwork = !walletConnector.isWalletConnect;
91
96
  const usesSupportedNetwork = isSupportedNetwork.isSupportedNetwork({
92
97
  network: walletNetwork,
93
98
  walletConnector,
94
99
  });
95
100
  if (!usesSupportedNetwork) {
96
- if (isProgrammableNetworkSwitchSupported.isProgrammableNetworkSwitchSupported(walletConnector)) {
101
+ if (!isProgrammableNetworkSwitchSupported.isProgrammableNetworkSwitchSupported(walletConnector)) {
102
+ return setView('network-not-supported-manual');
103
+ }
104
+ if (shouldForceSupportedNetwork) {
97
105
  return setView('network-not-supported');
98
106
  }
99
- return setView('network-not-supported-manual');
100
107
  }
101
108
  setCallback('connectSuccess', {
102
109
  walletId: id,
@@ -84,15 +84,22 @@ const useConnectAndSign = ({ shouldUpdateWallets = true, shouldCallCallback = tr
84
84
  }
85
85
  const { address, id } = connectionResult;
86
86
  const walletNetwork = yield walletConnector.getNetwork();
87
+ // When we switch networks on MM/walletconnect, it breaks the flow and doesn't always display the sign message
88
+ // Since it the network doesn't matter for the sign, we don't need to force the user to switch to the supported
89
+ // network at this stage and they can switch when doing a transaction
90
+ // Note: not checking specifically for MM since user can choose walletconnect connector to use with MM
91
+ const shouldForceSupportedNetwork = !walletConnector.isWalletConnect;
87
92
  const usesSupportedNetwork = isSupportedNetwork({
88
93
  network: walletNetwork,
89
94
  walletConnector,
90
95
  });
91
96
  if (!usesSupportedNetwork) {
92
- if (isProgrammableNetworkSwitchSupported(walletConnector)) {
97
+ if (!isProgrammableNetworkSwitchSupported(walletConnector)) {
98
+ return setView('network-not-supported-manual');
99
+ }
100
+ if (shouldForceSupportedNetwork) {
93
101
  return setView('network-not-supported');
94
102
  }
95
- return setView('network-not-supported-manual');
96
103
  }
97
104
  setCallback('connectSuccess', {
98
105
  walletId: id,
@@ -1,44 +1,44 @@
1
- export { useFetchProjectSettings } from './useFetchProjectSettings';
2
- export { useFetchNonce } from './useFetchNonce';
3
- export { useWallets } from './useWallets';
4
- export { useWalletConnectors } from './useWalletConnectors';
5
- export { useVerifyWallet } from './useVerifyWallet';
6
- export { useKeyboardHeight } from './useKeyboardHeight';
7
- export { useElementById } from './useElementById';
8
- export { useResizeObserver } from './useResizeObserver';
9
- export { useIsFirstRender } from './useIsFirstRender';
10
- export { useUpdateEffect } from './useUpdateEffect';
11
- export { useTransition } from './useTransition';
12
- export { usePrevious } from './usePrevious';
1
+ export { useAuthenticateConnectedUser } from './useAuthenticateConnectedUser';
2
+ export { useColorSchemePreference } from './useColorSchemePreference';
13
3
  export { useConfirmationModal } from './useConfirmationModal';
14
- export { useWalletUiUtils } from './useWalletUiUtils';
15
- export { useForceUpdate } from './useForceUpdate';
16
- export { useKYCFlag } from './useKYCFlag';
4
+ export { useCountdown } from './useCountdown/useCountdown';
5
+ export * from './useCreateDynamicEmbeddedWalletMutation';
17
6
  export { useDefaultQrCode } from './useDefaultQrCode';
18
- export { useWalletItemActions } from './useWalletItemActions';
19
- export { usePromise } from './usePromise';
20
- export { useMutation } from './useMutation';
21
- export { useColorSchemePreference } from './useColorSchemePreference';
7
+ export { useDynamicScopes } from './useDynamicScopes';
8
+ export { useElementById } from './useElementById';
9
+ export { useEmbeddedWallet } from './useEmbeddedWallet';
10
+ export { useEventListener } from './useEventListener';
11
+ export { useFetchNonce } from './useFetchNonce';
12
+ export { useFetchProjectSettings } from './useFetchProjectSettings';
22
13
  export { useFindSocialIcon } from './useFindSocialIcon';
14
+ export { useForceUpdate } from './useForceUpdate';
23
15
  export { useIconThemeVariant } from './useIconThemeVariant';
24
16
  export type { IconThemeVariant } from './useIconThemeVariant';
17
+ export { useInterval } from './useInterval/useInterval';
18
+ export { useIsFirstRender } from './useIsFirstRender';
19
+ export * from './useIsLoggedIn';
25
20
  export { useIsomorphicLayoutEffect } from './useIsomorphicLayoutEffect/useIsomorphicLayoutEffect';
21
+ export { useKYCFlag } from './useKYCFlag';
22
+ export { useKeyboardHeight } from './useKeyboardHeight';
23
+ export { useMutation } from './useMutation';
24
+ export * from './useOnUnmount';
25
+ export { usePasskeyRecovery } from './usePasskeyRecovery';
26
+ export { usePrevious } from './usePrevious';
27
+ export { usePromise } from './usePromise';
28
+ export { useResizeObserver } from './useResizeObserver';
29
+ export { useSetWalletConnectorVerifiedCredentials } from './useSetWalletConnectorVerifiedCredentials';
30
+ export { useSocialAccounts } from './useSocialAccounts';
26
31
  export { useTimeout } from './useTimeout/useTimeout';
27
- export { useInterval } from './useInterval/useInterval';
28
- export { useCountdown } from './useCountdown/useCountdown';
29
- export { useValidateSession } from './useValidateSession';
30
- export { useEventListener } from './useEventListener';
31
- export { useWalletConnectorEvent } from './useWalletConnectorEvent';
32
- export { useTransactionWithGasPrice } from './useTransactionWithGasPrice';
33
32
  export { useTransactionEstimatedGas } from './useTransactionEstimatedGas';
34
- export { useDynamicScopes } from './useDynamicScopes';
35
- export { useAuthenticateConnectedUser } from './useAuthenticateConnectedUser';
36
- export { useSocialAccounts } from './useSocialAccounts';
37
- export * from './useUserUpdateRequest';
33
+ export { useTransactionWithGasPrice } from './useTransactionWithGasPrice';
34
+ export { useTransition } from './useTransition';
35
+ export { useUpdateEffect } from './useUpdateEffect';
38
36
  export * from './useUserDataForm';
39
- export * from './useOnUnmount';
40
- export { useSetWalletConnectorVerifiedCredentials } from './useSetWalletConnectorVerifiedCredentials';
41
- export { useEmbeddedWallet } from './useEmbeddedWallet';
42
- export * from './useIsLoggedIn';
43
- export { usePasskeyRecovery } from './usePasskeyRecovery';
44
- export * from './useCreateDynamicEmbeddedWalletMutation';
37
+ export * from './useUserUpdateRequest';
38
+ export { useValidateSession } from './useValidateSession';
39
+ export { useVerifyWallet } from './useVerifyWallet';
40
+ export { useWalletConnectorEvent } from './useWalletConnectorEvent';
41
+ export { useWalletConnectorOptions } from './useWalletConnectorOptions';
42
+ export { useWalletConnectors } from './useWalletConnectors';
43
+ export { useWalletItemActions } from './useWalletItemActions';
44
+ export { useWalletUiUtils } from './useWalletUiUtils';
@@ -28,21 +28,22 @@ require('../../../context/EmailVerificationContext/EmailVerificationContext.cjs'
28
28
 
29
29
  const useAuthenticateConnectedUser = () => {
30
30
  const signConnectOnlyUser = useSignConnectOnlyUser.useSignConnectOnlyUser();
31
- const { connectedWallet, user } = useInternalDynamicContext.useInternalDynamicContext();
31
+ const { connectedWallets, user } = useInternalDynamicContext.useInternalDynamicContext();
32
32
  const [isAuthenticating, setIsAuthenticating] = React.useState(false);
33
33
  const authenticateUser = React.useCallback(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
34
34
  if (user) {
35
35
  throw new utils.DynamicError('User is already authenticated');
36
36
  }
37
- if (!connectedWallet) {
37
+ if (connectedWallets.length === 0) {
38
38
  throw new utils.DynamicError('No connected wallet');
39
39
  }
40
+ const connectedWallet = connectedWallets[0];
40
41
  setIsAuthenticating(true);
41
42
  yield signConnectOnlyUser({
42
43
  walletConnector: connectedWallet.connector,
43
44
  });
44
45
  setIsAuthenticating(false);
45
- }), [connectedWallet === null || connectedWallet === void 0 ? void 0 : connectedWallet.address, connectedWallet === null || connectedWallet === void 0 ? void 0 : connectedWallet.chain]);
46
+ }), [connectedWallets, signConnectOnlyUser, user]);
46
47
  return { authenticateUser, isAuthenticating };
47
48
  };
48
49
 
@@ -24,21 +24,22 @@ import '../../../context/EmailVerificationContext/EmailVerificationContext.js';
24
24
 
25
25
  const useAuthenticateConnectedUser = () => {
26
26
  const signConnectOnlyUser = useSignConnectOnlyUser();
27
- const { connectedWallet, user } = useInternalDynamicContext();
27
+ const { connectedWallets, user } = useInternalDynamicContext();
28
28
  const [isAuthenticating, setIsAuthenticating] = useState(false);
29
29
  const authenticateUser = useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
30
30
  if (user) {
31
31
  throw new DynamicError('User is already authenticated');
32
32
  }
33
- if (!connectedWallet) {
33
+ if (connectedWallets.length === 0) {
34
34
  throw new DynamicError('No connected wallet');
35
35
  }
36
+ const connectedWallet = connectedWallets[0];
36
37
  setIsAuthenticating(true);
37
38
  yield signConnectOnlyUser({
38
39
  walletConnector: connectedWallet.connector,
39
40
  });
40
41
  setIsAuthenticating(false);
41
- }), [connectedWallet === null || connectedWallet === void 0 ? void 0 : connectedWallet.address, connectedWallet === null || connectedWallet === void 0 ? void 0 : connectedWallet.chain]);
42
+ }), [connectedWallets, signConnectOnlyUser, user]);
42
43
  return { authenticateUser, isAuthenticating };
43
44
  };
44
45
 
@@ -0,0 +1 @@
1
+ export * from './updateUserWalletsFromConnectedWallets';
@@ -0,0 +1,37 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ /**
6
+ * This takes a userWallets and connectedWallets array, and returns a new userWallets array
7
+ * updated to match the connectedWallets array.
8
+ * It will add any missing wallets, update properties that don't match, and remove wallets that aren't
9
+ * in the connectedWallets and is not linked to the user.
10
+ */
11
+ const updateUserWalletsFromConnectedWallets = (userWallets, connectedWallets) => {
12
+ const userWalletsCopy = [...userWallets];
13
+ /** We will use this to find wallets addresses that were removed */
14
+ const newWalletsAddresses = new Set();
15
+ // First pass: add missing wallets and update changed properties
16
+ for (const connectedWallet of connectedWallets) {
17
+ newWalletsAddresses.add(connectedWallet.address);
18
+ const userWallet = userWalletsCopy.find((wallet) => wallet.address === connectedWallet.address);
19
+ // Catch new wallets
20
+ if (!userWallet) {
21
+ userWalletsCopy.push(connectedWallet);
22
+ continue;
23
+ }
24
+ // If already present, just update properties that might have changed
25
+ userWallet.connected = connectedWallet.connected;
26
+ userWallet.network = connectedWallet.network;
27
+ }
28
+ // This filter is to remove a wallet that was previously added to userWallets but is not present
29
+ // among the connected wallets (it should not be removed if it's authenticated to the suer tho)
30
+ return userWalletsCopy.filter((userWallet) =>
31
+ // Keep wallets that are still in the new list
32
+ newWalletsAddresses.has(userWallet.address) ||
33
+ // Or are linked to the current user
34
+ userWallet.authenticated);
35
+ };
36
+
37
+ exports.updateUserWalletsFromConnectedWallets = updateUserWalletsFromConnectedWallets;
@@ -0,0 +1,8 @@
1
+ import { Wallet } from '../../../../shared';
2
+ /**
3
+ * This takes a userWallets and connectedWallets array, and returns a new userWallets array
4
+ * updated to match the connectedWallets array.
5
+ * It will add any missing wallets, update properties that don't match, and remove wallets that aren't
6
+ * in the connectedWallets and is not linked to the user.
7
+ */
8
+ export declare const updateUserWalletsFromConnectedWallets: (userWallets: Wallet[], connectedWallets: Wallet[]) => Wallet[];
@@ -0,0 +1,33 @@
1
+ /**
2
+ * This takes a userWallets and connectedWallets array, and returns a new userWallets array
3
+ * updated to match the connectedWallets array.
4
+ * It will add any missing wallets, update properties that don't match, and remove wallets that aren't
5
+ * in the connectedWallets and is not linked to the user.
6
+ */
7
+ const updateUserWalletsFromConnectedWallets = (userWallets, connectedWallets) => {
8
+ const userWalletsCopy = [...userWallets];
9
+ /** We will use this to find wallets addresses that were removed */
10
+ const newWalletsAddresses = new Set();
11
+ // First pass: add missing wallets and update changed properties
12
+ for (const connectedWallet of connectedWallets) {
13
+ newWalletsAddresses.add(connectedWallet.address);
14
+ const userWallet = userWalletsCopy.find((wallet) => wallet.address === connectedWallet.address);
15
+ // Catch new wallets
16
+ if (!userWallet) {
17
+ userWalletsCopy.push(connectedWallet);
18
+ continue;
19
+ }
20
+ // If already present, just update properties that might have changed
21
+ userWallet.connected = connectedWallet.connected;
22
+ userWallet.network = connectedWallet.network;
23
+ }
24
+ // This filter is to remove a wallet that was previously added to userWallets but is not present
25
+ // among the connected wallets (it should not be removed if it's authenticated to the suer tho)
26
+ return userWalletsCopy.filter((userWallet) =>
27
+ // Keep wallets that are still in the new list
28
+ newWalletsAddresses.has(userWallet.address) ||
29
+ // Or are linked to the current user
30
+ userWallet.authenticated);
31
+ };
32
+
33
+ export { updateUserWalletsFromConnectedWallets };
@@ -5,6 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var _tslib = require('../../../../../_virtual/_tslib.cjs');
6
6
  var React = require('react');
7
7
  var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
8
+ var UserWalletsContext = require('../../../context/UserWalletsContext/UserWalletsContext.cjs');
8
9
  var api = require('../../../data/api.cjs');
9
10
  require('@dynamic-labs/sdk-api');
10
11
  require('../../../shared/logger.cjs');
@@ -22,10 +23,17 @@ require('../../../shared/consts/index.cjs');
22
23
  require('@dynamic-labs/multi-wallet');
23
24
  var shouldManuallyReconnectOnRefresh = require('../../functions/shouldManuallyReconnectOnRefresh/shouldManuallyReconnectOnRefresh.cjs');
24
25
  var getWalletProvider = require('../../functions/getWalletProvider/getWalletProvider.cjs');
26
+ var updateUserWalletsFromConnectedWallets = require('./updateUserWalletsFromConnectedWallets/updateUserWalletsFromConnectedWallets.cjs');
25
27
 
26
- const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, wallets, onDisconnect, onBeforeConnectSuccessConfirmation, setShowAuthFlow, isBridgeFlow, }) => {
28
+ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, walletConnectorOptions, onDisconnect, onBeforeConnectSuccessConfirmation, setShowAuthFlow, isBridgeFlow, }) => {
27
29
  const [connectedWalletsInfo, setConnectedWalletsInfo, removeConnectedWalletsInfo,] = useLocalStorage.useLocalStorage(localStorage.CONNECTED_WALLETS_INFO, []);
28
- const [connectedWallets, setConnectedWallets] = React.useState([]);
30
+ const [connectedWallets, _setConnectedWallets] = React.useState([]);
31
+ const { setUserWallets } = UserWalletsContext.useInternalUserWallets();
32
+ /** This wrapper is to ensure userWallets is always properly updated alongside connectedWallets */
33
+ const setConnectedWallets = (newWallets) => {
34
+ _setConnectedWallets(newWallets);
35
+ setUserWallets((userWallets) => updateUserWalletsFromConnectedWallets.updateUserWalletsFromConnectedWallets(userWallets, newWallets));
36
+ };
29
37
  const disconnectWallet = React.useCallback((walletId) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
30
38
  const walletToDisconnect = connectedWallets.find((wallet) => wallet.id === walletId);
31
39
  yield (walletToDisconnect === null || walletToDisconnect === void 0 ? void 0 : walletToDisconnect.connector.endSession());
@@ -58,7 +66,7 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
58
66
  // The event listeners are updating `connectedWallets` list.
59
67
  // It should be called on the first render and when connectedWalletsInfo updates
60
68
  const updateConnectedWalletsList = React.useCallback(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
61
- const walletConnectors = wallets.map((wallet) => wallet.walletConnector);
69
+ const walletConnectors = walletConnectorOptions.map((wallet) => wallet.walletConnector);
62
70
  if (!walletConnectors.length) {
63
71
  return;
64
72
  }
@@ -79,6 +87,7 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
79
87
  const walletChain = walletConnector.connectedChain;
80
88
  const walletObject = {
81
89
  address: walletAddress || '',
90
+ authenticated: false,
82
91
  chain: walletChain || '',
83
92
  connected: true,
84
93
  connector: walletConnector,
@@ -88,12 +97,12 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
88
97
  return walletObject;
89
98
  })))).filter((wallet) => Boolean(wallet));
90
99
  setConnectedWallets(updatedConnectedWallets);
91
- }), [connectedWalletsInfo, disconnectWallet, wallets]);
100
+ }), [connectedWalletsInfo, disconnectWallet, walletConnectorOptions]);
92
101
  // Generate the connectedWallets list when connectedWalletsInfo (localStorage) or memoized wallet connector updates
93
102
  React.useEffect(() => {
94
103
  updateConnectedWalletsList();
95
104
  // eslint-disable-next-line react-hooks/exhaustive-deps
96
- }, [connectedWalletsInfo, wallets]);
105
+ }, [connectedWalletsInfo, walletConnectorOptions]);
97
106
  const getNextIdAvailable = React.useCallback((currentWallets) => {
98
107
  const existingIds = currentWallets.map(({ id }) => id);
99
108
  const sortedIds = existingIds
@@ -114,7 +123,6 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
114
123
  setConnectedWallets(clonedConnectedWalletsList);
115
124
  }
116
125
  }, [connectedWallets]);
117
- const connectedWallet = connectedWallets[0] || null;
118
126
  // Keeps connected wallet data inside localStorage
119
127
  const applyConnectedWalletToStore = ({ walletId, walletConnectorKey, walletChain, provider, }) => {
120
128
  const updatedConnectedWalletsInfo = [...connectedWalletsInfo];
@@ -210,7 +218,6 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
210
218
  const getConnectedWalletById = React.useCallback((walletId) => connectedWallets.find((wallet) => wallet.id === walletId), [connectedWallets]);
211
219
  return {
212
220
  connectWallet,
213
- connectedWallet,
214
221
  connectedWallets,
215
222
  connectedWalletsInfo,
216
223
  disconnectWallet,
@@ -15,7 +15,7 @@ type Props = {
15
15
  environmentId: string;
16
16
  primaryWalletId: string | undefined;
17
17
  setPrimaryWalletId: (walletId: string) => void;
18
- wallets: WalletOption[];
18
+ walletConnectorOptions: WalletOption[];
19
19
  onDisconnect: (connectedWalletsInfo: ConnectedWalletConnectorType[], wallet?: Wallet) => void;
20
20
  onBeforeConnectSuccessConfirmation: OnBeforeConnectSuccessConfirmation | undefined;
21
21
  setShowAuthFlow: Dispatch<SetStateAction<boolean>>;
@@ -23,7 +23,6 @@ type Props = {
23
23
  };
24
24
  type UseConnectWalletValue = {
25
25
  connectWallet: (walletConnector: WalletConnector, fetchPublicAddressOpts?: FetchPublicAddressOpts, shouldCallCallback?: boolean) => Promise<ConnectWalletResult | undefined>;
26
- connectedWallet: Wallet | null;
27
26
  connectedWallets: Wallet[];
28
27
  connectedWalletsInfo: ConnectedWalletConnectorType[];
29
28
  getConnectedWalletById: (walletId: string) => Wallet | undefined;
@@ -31,5 +30,5 @@ type UseConnectWalletValue = {
31
30
  removeConnectedWalletsInfo: () => void;
32
31
  disconnectWallet: (walletId: string) => Promise<void>;
33
32
  };
34
- export declare const useConnectWallet: ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, wallets, onDisconnect, onBeforeConnectSuccessConfirmation, setShowAuthFlow, isBridgeFlow, }: Props) => UseConnectWalletValue;
33
+ export declare const useConnectWallet: ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, walletConnectorOptions, onDisconnect, onBeforeConnectSuccessConfirmation, setShowAuthFlow, isBridgeFlow, }: Props) => UseConnectWalletValue;
35
34
  export {};
@@ -1,6 +1,7 @@
1
1
  import { __awaiter } from '../../../../../_virtual/_tslib.js';
2
2
  import { useState, useCallback, useEffect } from 'react';
3
3
  import { getWalletConnectorByKey, logger } from '@dynamic-labs/wallet-connector-core';
4
+ import { useInternalUserWallets } from '../../../context/UserWalletsContext/UserWalletsContext.js';
4
5
  import { createVisit } from '../../../data/api.js';
5
6
  import '@dynamic-labs/sdk-api';
6
7
  import '../../../shared/logger.js';
@@ -18,10 +19,17 @@ import '../../../shared/consts/index.js';
18
19
  import '@dynamic-labs/multi-wallet';
19
20
  import { shouldManuallyReconnectOnRefresh } from '../../functions/shouldManuallyReconnectOnRefresh/shouldManuallyReconnectOnRefresh.js';
20
21
  import { getWalletProvider } from '../../functions/getWalletProvider/getWalletProvider.js';
22
+ import { updateUserWalletsFromConnectedWallets } from './updateUserWalletsFromConnectedWallets/updateUserWalletsFromConnectedWallets.js';
21
23
 
22
- const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, wallets, onDisconnect, onBeforeConnectSuccessConfirmation, setShowAuthFlow, isBridgeFlow, }) => {
24
+ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, walletConnectorOptions, onDisconnect, onBeforeConnectSuccessConfirmation, setShowAuthFlow, isBridgeFlow, }) => {
23
25
  const [connectedWalletsInfo, setConnectedWalletsInfo, removeConnectedWalletsInfo,] = useLocalStorage(CONNECTED_WALLETS_INFO, []);
24
- const [connectedWallets, setConnectedWallets] = useState([]);
26
+ const [connectedWallets, _setConnectedWallets] = useState([]);
27
+ const { setUserWallets } = useInternalUserWallets();
28
+ /** This wrapper is to ensure userWallets is always properly updated alongside connectedWallets */
29
+ const setConnectedWallets = (newWallets) => {
30
+ _setConnectedWallets(newWallets);
31
+ setUserWallets((userWallets) => updateUserWalletsFromConnectedWallets(userWallets, newWallets));
32
+ };
25
33
  const disconnectWallet = useCallback((walletId) => __awaiter(void 0, void 0, void 0, function* () {
26
34
  const walletToDisconnect = connectedWallets.find((wallet) => wallet.id === walletId);
27
35
  yield (walletToDisconnect === null || walletToDisconnect === void 0 ? void 0 : walletToDisconnect.connector.endSession());
@@ -54,7 +62,7 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
54
62
  // The event listeners are updating `connectedWallets` list.
55
63
  // It should be called on the first render and when connectedWalletsInfo updates
56
64
  const updateConnectedWalletsList = useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
57
- const walletConnectors = wallets.map((wallet) => wallet.walletConnector);
65
+ const walletConnectors = walletConnectorOptions.map((wallet) => wallet.walletConnector);
58
66
  if (!walletConnectors.length) {
59
67
  return;
60
68
  }
@@ -75,6 +83,7 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
75
83
  const walletChain = walletConnector.connectedChain;
76
84
  const walletObject = {
77
85
  address: walletAddress || '',
86
+ authenticated: false,
78
87
  chain: walletChain || '',
79
88
  connected: true,
80
89
  connector: walletConnector,
@@ -84,12 +93,12 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
84
93
  return walletObject;
85
94
  })))).filter((wallet) => Boolean(wallet));
86
95
  setConnectedWallets(updatedConnectedWallets);
87
- }), [connectedWalletsInfo, disconnectWallet, wallets]);
96
+ }), [connectedWalletsInfo, disconnectWallet, walletConnectorOptions]);
88
97
  // Generate the connectedWallets list when connectedWalletsInfo (localStorage) or memoized wallet connector updates
89
98
  useEffect(() => {
90
99
  updateConnectedWalletsList();
91
100
  // eslint-disable-next-line react-hooks/exhaustive-deps
92
- }, [connectedWalletsInfo, wallets]);
101
+ }, [connectedWalletsInfo, walletConnectorOptions]);
93
102
  const getNextIdAvailable = useCallback((currentWallets) => {
94
103
  const existingIds = currentWallets.map(({ id }) => id);
95
104
  const sortedIds = existingIds
@@ -110,7 +119,6 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
110
119
  setConnectedWallets(clonedConnectedWalletsList);
111
120
  }
112
121
  }, [connectedWallets]);
113
- const connectedWallet = connectedWallets[0] || null;
114
122
  // Keeps connected wallet data inside localStorage
115
123
  const applyConnectedWalletToStore = ({ walletId, walletConnectorKey, walletChain, provider, }) => {
116
124
  const updatedConnectedWalletsInfo = [...connectedWalletsInfo];
@@ -206,7 +214,6 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
206
214
  const getConnectedWalletById = useCallback((walletId) => connectedWallets.find((wallet) => wallet.id === walletId), [connectedWallets]);
207
215
  return {
208
216
  connectWallet,
209
- connectedWallet,
210
217
  connectedWallets,
211
218
  connectedWalletsInfo,
212
219
  disconnectWallet,
@@ -28,8 +28,8 @@ var useMutation = require('../useMutation/useMutation.cjs');
28
28
 
29
29
  const useCreateDynamicEmbeddedWalletMutation = () => {
30
30
  const { setPrimaryWalletId, internalEvents, setCallback, setUser, user, setShowAuthFlow, } = useInternalDynamicContext.useInternalDynamicContext();
31
- const { mutate: createDynamicEmbeddedWalletMutation, isLoading, error, } = useMutation.useMutation(({ authToken, decodedJwt, environmentId, wallets, withAuthenticator, }) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
32
- var _a;
31
+ const { mutate: createDynamicEmbeddedWalletMutation, isLoading, error, } = useMutation.useMutation(({ authToken, decodedJwt, environmentId, walletConnectorOptions, withAuthenticator, }) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
32
+ var _a, _b;
33
33
  const createEmbeddedWalletMethodToUse = withAuthenticator
34
34
  ? createEmbeddedWalletWithPasskey.createEmbeddedWalletWithPasskey
35
35
  : createPregeneratedWallet.createPregeneratedWallet;
@@ -37,10 +37,14 @@ const useCreateDynamicEmbeddedWalletMutation = () => {
37
37
  authToken,
38
38
  environmentId,
39
39
  user: user !== null && user !== void 0 ? user : createUserProfile.createUserProfile(decodedJwt),
40
- walletConnector: findPasskeyEmailWalletConnector.findPasskeyEmailWalletConnector(wallets),
40
+ walletConnector: findPasskeyEmailWalletConnector.findPasskeyEmailWalletConnector(walletConnectorOptions),
41
41
  });
42
+ const turnkeyVerifiedCredentials = (_a = updatedDecodedJwt === null || updatedDecodedJwt === void 0 ? void 0 : updatedDecodedJwt.verifiedCredentials) === null || _a === void 0 ? void 0 : _a.find(({ walletName }) => walletName === null || walletName === void 0 ? void 0 : walletName.startsWith('turnkey'));
43
+ /** It's not authenticated if it's a turnkey wallet that still hasn't created a passkey */
44
+ const authenticated = Boolean((_b = turnkeyVerifiedCredentials === null || turnkeyVerifiedCredentials === void 0 ? void 0 : turnkeyVerifiedCredentials.walletProperties) === null || _b === void 0 ? void 0 : _b.isAuthenticatorAttached);
42
45
  const passkeyWallet = {
43
46
  address: (yield walletConnector.fetchPublicAddress()) || '',
47
+ authenticated,
44
48
  chain: walletConnector.connectedChain || '',
45
49
  connected: true,
46
50
  connector: walletConnector,
@@ -52,7 +56,7 @@ const useCreateDynamicEmbeddedWalletMutation = () => {
52
56
  yield smartWallet.initializeSmartWallet({
53
57
  account: smartWallet$1,
54
58
  verifiedCredentials: updatedDecodedJwt.verifiedCredentials,
55
- walletOptions: wallets,
59
+ walletConnectorOptions,
56
60
  });
57
61
  setPrimaryWalletId(smartWallet$1.id);
58
62
  }
@@ -62,7 +66,6 @@ const useCreateDynamicEmbeddedWalletMutation = () => {
62
66
  index.storeAuthToken(jwt);
63
67
  setUser(createUserProfile.createUserProfile(updatedDecodedJwt));
64
68
  setShowAuthFlow(false);
65
- const turnkeyVerifiedCredentials = (_a = updatedDecodedJwt === null || updatedDecodedJwt === void 0 ? void 0 : updatedDecodedJwt.verifiedCredentials) === null || _a === void 0 ? void 0 : _a.find(({ walletName }) => walletName === null || walletName === void 0 ? void 0 : walletName.startsWith('turnkey'));
66
69
  setCallback('embeddedWalletCreated', {
67
70
  email: (turnkeyVerifiedCredentials === null || turnkeyVerifiedCredentials === void 0 ? void 0 : turnkeyVerifiedCredentials.email) || '',
68
71
  verifiedCredential: turnkeyVerifiedCredentials,
@@ -3,7 +3,7 @@ import { WalletOption } from '../../../shared';
3
3
  type MutationProps = {
4
4
  authToken: string | undefined;
5
5
  environmentId: string;
6
- wallets: WalletOption[];
6
+ walletConnectorOptions: WalletOption[];
7
7
  decodedJwt: DynamicJwt;
8
8
  withAuthenticator: boolean;
9
9
  };
@@ -24,8 +24,8 @@ import { useMutation } from '../useMutation/useMutation.js';
24
24
 
25
25
  const useCreateDynamicEmbeddedWalletMutation = () => {
26
26
  const { setPrimaryWalletId, internalEvents, setCallback, setUser, user, setShowAuthFlow, } = useInternalDynamicContext();
27
- const { mutate: createDynamicEmbeddedWalletMutation, isLoading, error, } = useMutation(({ authToken, decodedJwt, environmentId, wallets, withAuthenticator, }) => __awaiter(void 0, void 0, void 0, function* () {
28
- var _a;
27
+ const { mutate: createDynamicEmbeddedWalletMutation, isLoading, error, } = useMutation(({ authToken, decodedJwt, environmentId, walletConnectorOptions, withAuthenticator, }) => __awaiter(void 0, void 0, void 0, function* () {
28
+ var _a, _b;
29
29
  const createEmbeddedWalletMethodToUse = withAuthenticator
30
30
  ? createEmbeddedWalletWithPasskey
31
31
  : createPregeneratedWallet;
@@ -33,10 +33,14 @@ const useCreateDynamicEmbeddedWalletMutation = () => {
33
33
  authToken,
34
34
  environmentId,
35
35
  user: user !== null && user !== void 0 ? user : createUserProfile(decodedJwt),
36
- walletConnector: findPasskeyEmailWalletConnector(wallets),
36
+ walletConnector: findPasskeyEmailWalletConnector(walletConnectorOptions),
37
37
  });
38
+ const turnkeyVerifiedCredentials = (_a = updatedDecodedJwt === null || updatedDecodedJwt === void 0 ? void 0 : updatedDecodedJwt.verifiedCredentials) === null || _a === void 0 ? void 0 : _a.find(({ walletName }) => walletName === null || walletName === void 0 ? void 0 : walletName.startsWith('turnkey'));
39
+ /** It's not authenticated if it's a turnkey wallet that still hasn't created a passkey */
40
+ const authenticated = Boolean((_b = turnkeyVerifiedCredentials === null || turnkeyVerifiedCredentials === void 0 ? void 0 : turnkeyVerifiedCredentials.walletProperties) === null || _b === void 0 ? void 0 : _b.isAuthenticatorAttached);
38
41
  const passkeyWallet = {
39
42
  address: (yield walletConnector.fetchPublicAddress()) || '',
43
+ authenticated,
40
44
  chain: walletConnector.connectedChain || '',
41
45
  connected: true,
42
46
  connector: walletConnector,
@@ -48,7 +52,7 @@ const useCreateDynamicEmbeddedWalletMutation = () => {
48
52
  yield initializeSmartWallet({
49
53
  account: smartWallet,
50
54
  verifiedCredentials: updatedDecodedJwt.verifiedCredentials,
51
- walletOptions: wallets,
55
+ walletConnectorOptions,
52
56
  });
53
57
  setPrimaryWalletId(smartWallet.id);
54
58
  }
@@ -58,7 +62,6 @@ const useCreateDynamicEmbeddedWalletMutation = () => {
58
62
  storeAuthToken(jwt);
59
63
  setUser(createUserProfile(updatedDecodedJwt));
60
64
  setShowAuthFlow(false);
61
- const turnkeyVerifiedCredentials = (_a = updatedDecodedJwt === null || updatedDecodedJwt === void 0 ? void 0 : updatedDecodedJwt.verifiedCredentials) === null || _a === void 0 ? void 0 : _a.find(({ walletName }) => walletName === null || walletName === void 0 ? void 0 : walletName.startsWith('turnkey'));
62
65
  setCallback('embeddedWalletCreated', {
63
66
  email: (turnkeyVerifiedCredentials === null || turnkeyVerifiedCredentials === void 0 ? void 0 : turnkeyVerifiedCredentials.email) || '',
64
67
  verifiedCredential: turnkeyVerifiedCredentials,
@@ -35,10 +35,13 @@ const useEmailProvider = ({ emailWalletConnector }) => {
35
35
  });
36
36
  const { providers } = projectSettings || {};
37
37
  const isInjectedWalletProviderEnabled = emailWalletConnector !== undefined;
38
+ // this is enabled in the sense that we could use the given provider in the email form
39
+ // for magic, as long as there are magic credentials available, then could have an email
40
+ // address that is a magic address, even if magic was previously turned off in dashboard
38
41
  const isMagicOrBloctoEnabled = isInjectedWalletProviderEnabled &&
39
- Boolean(providers === null || providers === void 0 ? void 0 : providers.filter((provider) => provider.enabledAt &&
40
- (provider.provider === sdkApi.ProviderEnum.MagicLink ||
41
- provider.provider === sdkApi.ProviderEnum.Blocto)).length);
42
+ Boolean(providers === null || providers === void 0 ? void 0 : providers.filter((provider) => (provider.provider === sdkApi.ProviderEnum.MagicLink &&
43
+ Boolean(provider.providerProjectId)) ||
44
+ (provider.enabledAt && provider.provider === sdkApi.ProviderEnum.Blocto)).length);
42
45
  const handleEmailOnlyLoginSubmit = (emailInput, captchaToken) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
43
46
  const { email, verificationUUID } = yield api.createEmailVerification({
44
47
  captchaToken,
@@ -31,10 +31,13 @@ const useEmailProvider = ({ emailWalletConnector }) => {
31
31
  });
32
32
  const { providers } = projectSettings || {};
33
33
  const isInjectedWalletProviderEnabled = emailWalletConnector !== undefined;
34
+ // this is enabled in the sense that we could use the given provider in the email form
35
+ // for magic, as long as there are magic credentials available, then could have an email
36
+ // address that is a magic address, even if magic was previously turned off in dashboard
34
37
  const isMagicOrBloctoEnabled = isInjectedWalletProviderEnabled &&
35
- Boolean(providers === null || providers === void 0 ? void 0 : providers.filter((provider) => provider.enabledAt &&
36
- (provider.provider === ProviderEnum.MagicLink ||
37
- provider.provider === ProviderEnum.Blocto)).length);
38
+ Boolean(providers === null || providers === void 0 ? void 0 : providers.filter((provider) => (provider.provider === ProviderEnum.MagicLink &&
39
+ Boolean(provider.providerProjectId)) ||
40
+ (provider.enabledAt && provider.provider === ProviderEnum.Blocto)).length);
38
41
  const handleEmailOnlyLoginSubmit = (emailInput, captchaToken) => __awaiter(void 0, void 0, void 0, function* () {
39
42
  const { email, verificationUUID } = yield createEmailVerification({
40
43
  captchaToken,