@dynamic-labs/sdk-react-core 0.18.0-RC.8 → 0.18.0-RC.9

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 (356) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/package.cjs +1 -1
  3. package/package.js +1 -1
  4. package/package.json +8 -8
  5. package/src/index.cjs +8 -11
  6. package/src/index.js +2 -4
  7. package/src/lib/Main.cjs +1 -2
  8. package/src/lib/Main.js +1 -2
  9. package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.cjs +1 -2
  10. package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.js +1 -2
  11. package/src/lib/components/AnimatePresence/AnimatePresence.cjs +1 -2
  12. package/src/lib/components/AnimatePresence/AnimatePresence.js +1 -2
  13. package/src/lib/components/AuthProviderIcon/AuthProviderIcon.cjs +1 -2
  14. package/src/lib/components/AuthProviderIcon/AuthProviderIcon.js +1 -2
  15. package/src/lib/components/Divider/Divider.cjs +1 -2
  16. package/src/lib/components/Divider/Divider.js +1 -2
  17. package/src/lib/components/Modal/Modal.cjs +36 -1
  18. package/src/lib/components/Modal/Modal.d.ts +3 -0
  19. package/src/lib/components/Modal/Modal.js +36 -1
  20. package/src/lib/components/ModalCard/ModalCard.cjs +4 -1
  21. package/src/lib/components/ModalCard/ModalCard.d.ts +6 -1
  22. package/src/lib/components/ModalCard/ModalCard.js +4 -1
  23. package/src/lib/components/NetworkPicker/NetworkPicker.cjs +1 -2
  24. package/src/lib/components/NetworkPicker/NetworkPicker.js +1 -2
  25. package/src/lib/components/NetworkPicker/components/ActionList/ActionList.cjs +1 -2
  26. package/src/lib/components/NetworkPicker/components/ActionList/ActionList.js +1 -2
  27. package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.cjs +1 -2
  28. package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.js +1 -2
  29. package/src/lib/components/NetworkPicker/components/Network/Network.cjs +1 -2
  30. package/src/lib/components/NetworkPicker/components/Network/Network.js +1 -2
  31. package/src/lib/components/NetworkPicker/components/NetworkControl/NetworkControl.cjs +0 -5
  32. package/src/lib/components/NetworkPicker/components/NetworkControl/NetworkControl.d.ts +1 -1
  33. package/src/lib/components/NetworkPicker/components/NetworkControl/NetworkControl.js +0 -5
  34. package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.cjs +1 -2
  35. package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.js +1 -2
  36. package/src/lib/components/OTPVerificationView/OTPVerificationView.cjs +1 -2
  37. package/src/lib/components/OTPVerificationView/OTPVerificationView.js +1 -2
  38. package/src/lib/components/OverlayCard/OverlayCard.cjs +1 -2
  39. package/src/lib/components/OverlayCard/OverlayCard.js +1 -2
  40. package/src/lib/components/Portal/Portal.cjs +2 -3
  41. package/src/lib/components/Portal/Portal.js +2 -3
  42. package/src/lib/components/Step/Step.cjs +14 -3
  43. package/src/lib/components/Step/Step.d.ts +2 -1
  44. package/src/lib/components/Step/Step.js +14 -3
  45. package/src/lib/components/Tooltip/Tooltip.cjs +1 -2
  46. package/src/lib/components/Tooltip/Tooltip.js +1 -2
  47. package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.cjs +1 -2
  48. package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.js +1 -2
  49. package/src/lib/components/Transition/VerticalDrawerTransition/VerticalDrawerTransition.cjs +1 -2
  50. package/src/lib/components/Transition/VerticalDrawerTransition/VerticalDrawerTransition.js +1 -2
  51. package/src/lib/components/UserAddress/UserAddress.cjs +29 -2
  52. package/src/lib/components/UserAddress/UserAddress.d.ts +4 -2
  53. package/src/lib/components/UserAddress/UserAddress.js +29 -2
  54. package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.cjs +1 -2
  55. package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.js +1 -2
  56. package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.cjs +1 -2
  57. package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.js +1 -2
  58. package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.cjs +2 -3
  59. package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.js +2 -3
  60. package/src/lib/context/DynamicContext/DynamicContext.cjs +55 -29
  61. package/src/lib/context/DynamicContext/DynamicContext.d.ts +9 -5
  62. package/src/lib/context/DynamicContext/DynamicContext.js +58 -32
  63. package/src/lib/context/DynamicContext/helpers.cjs +13 -0
  64. package/src/lib/context/DynamicContext/helpers.d.ts +6 -0
  65. package/src/lib/context/DynamicContext/helpers.js +13 -1
  66. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.cjs +1 -2
  67. package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.js +1 -2
  68. package/src/lib/context/DynamicContext/useDynamicContext.cjs +2 -2
  69. package/src/lib/context/DynamicContext/useDynamicContext.d.ts +1 -1
  70. package/src/lib/context/DynamicContext/useDynamicContext.js +2 -2
  71. package/src/lib/context/QrCodeContext/QrCodeContext.cjs +1 -2
  72. package/src/lib/context/QrCodeContext/QrCodeContext.js +1 -2
  73. package/src/lib/context/SendBalanceContext/SendBalanceContext.cjs +1 -2
  74. package/src/lib/context/SendBalanceContext/SendBalanceContext.js +1 -2
  75. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.cjs +1 -2
  76. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.js +1 -2
  77. package/src/lib/context/ViewContext/ViewContext.d.ts +1 -1
  78. package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.cjs +22 -21
  79. package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.js +23 -22
  80. package/src/lib/layout/DynamicAuthLayout/Header/header.cjs +1 -2
  81. package/src/lib/layout/DynamicAuthLayout/Header/header.js +1 -2
  82. package/src/lib/layout/DynamicAuthLayout/HelpContent/HelpHeader/HelpHeader.cjs +1 -2
  83. package/src/lib/layout/DynamicAuthLayout/HelpContent/HelpHeader/HelpHeader.js +1 -2
  84. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/Item/Item.cjs +1 -2
  85. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/Item/Item.js +1 -2
  86. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.cjs +1 -2
  87. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.js +1 -2
  88. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletListHelpContent.cjs +1 -2
  89. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/WalletListHelpContent.js +1 -2
  90. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletMoreInfoContent/WalletMoreInfoContent.cjs +1 -2
  91. package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletMoreInfoContent/WalletMoreInfoContent.js +1 -2
  92. package/src/lib/layout/DynamicAuthLayout/ToSFooter/ToSFooter.cjs +1 -2
  93. package/src/lib/layout/DynamicAuthLayout/ToSFooter/ToSFooter.js +1 -2
  94. package/src/lib/layout/DynamicAuthLayout/WalletProgressStepper/WalletProgressStepper.cjs +58 -0
  95. package/src/lib/layout/DynamicAuthLayout/WalletProgressStepper/WalletProgressStepper.d.ts +2 -0
  96. package/src/lib/layout/DynamicAuthLayout/WalletProgressStepper/WalletProgressStepper.js +54 -0
  97. package/src/lib/layout/DynamicAuthLayout/WalletProgressStepper/index.d.ts +1 -0
  98. package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.cjs +1 -2
  99. package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.js +1 -2
  100. package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.cjs +1 -2
  101. package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.js +1 -2
  102. package/src/lib/modals/SendBalanceModal/SendBalanceModal.cjs +1 -2
  103. package/src/lib/modals/SendBalanceModal/SendBalanceModal.js +1 -2
  104. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.cjs +1 -2
  105. package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.js +1 -2
  106. package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs +1 -2
  107. package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.js +1 -2
  108. package/src/lib/modals/index.d.ts +0 -1
  109. package/src/lib/shared/utils/classes/storage/localStorage.cjs +7 -1
  110. package/src/lib/shared/utils/classes/storage/localStorage.d.ts +1 -0
  111. package/src/lib/shared/utils/classes/storage/localStorage.js +7 -1
  112. package/src/lib/styles/index.shadow.cjs +1 -1
  113. package/src/lib/styles/index.shadow.js +1 -1
  114. package/src/lib/utils/functions/getMissingChains/getMissingChains.cjs +16 -0
  115. package/src/lib/utils/functions/getMissingChains/getMissingChains.d.ts +3 -0
  116. package/src/lib/utils/functions/getMissingChains/getMissingChains.js +12 -0
  117. package/src/lib/utils/functions/getMissingChains/index.d.ts +1 -0
  118. package/src/lib/utils/functions/index.d.ts +1 -0
  119. package/src/lib/utils/functions/isEmailProviderEnabled/isEmailProviderEnabled.cjs +3 -2
  120. package/src/lib/utils/functions/isEmailProviderEnabled/isEmailProviderEnabled.js +3 -2
  121. package/src/lib/utils/functions/isProviderEnabled/index.d.ts +1 -0
  122. package/src/lib/utils/functions/isProviderEnabled/isProviderEnabled.cjs +7 -0
  123. package/src/lib/utils/functions/isProviderEnabled/isProviderEnabled.d.ts +2 -0
  124. package/src/lib/utils/functions/isProviderEnabled/isProviderEnabled.js +3 -0
  125. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.cjs +16 -1
  126. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.js +16 -1
  127. package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.cjs +12 -2
  128. package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.d.ts +1 -0
  129. package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.js +12 -2
  130. package/src/lib/utils/hooks/useClearWalletConnectSessions/useClearWalletConnectSessions.cjs +16 -3
  131. package/src/lib/utils/hooks/useClearWalletConnectSessions/useClearWalletConnectSessions.js +16 -3
  132. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +52 -48
  133. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.d.ts +6 -8
  134. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +54 -50
  135. package/src/lib/utils/hooks/useCreateUserProfileByJWTCallback/useCreateUserProfileByJWTCallback.cjs +1 -1
  136. package/src/lib/utils/hooks/useCreateUserProfileByJWTCallback/useCreateUserProfileByJWTCallback.js +1 -1
  137. package/src/lib/utils/hooks/useFetchWalletsForChainsMap/useFetchWalletsForChainsMap.cjs +6 -10
  138. package/src/lib/utils/hooks/useFetchWalletsForChainsMap/useFetchWalletsForChainsMap.js +7 -11
  139. package/src/lib/utils/hooks/useHandleWalletsToConnect/useHandleWalletsToConnect.cjs +14 -4
  140. package/src/lib/utils/hooks/useHandleWalletsToConnect/useHandleWalletsToConnect.js +14 -4
  141. package/src/lib/utils/hooks/usePromise/usePromise.cjs +6 -2
  142. package/src/lib/utils/hooks/usePromise/usePromise.d.ts +4 -1
  143. package/src/lib/utils/hooks/usePromise/usePromise.js +6 -2
  144. package/src/lib/utils/hooks/useValidateSession/index.d.ts +1 -0
  145. package/src/lib/utils/hooks/useValidateSession/useValidateSession.cjs +79 -0
  146. package/src/lib/utils/hooks/useValidateSession/useValidateSession.d.ts +12 -0
  147. package/src/lib/utils/hooks/useValidateSession/useValidateSession.js +75 -0
  148. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +1 -19
  149. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +1 -19
  150. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.cjs +1 -2
  151. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.js +1 -2
  152. package/src/lib/utils/hooks/useWallets/useWallets.cjs +6 -0
  153. package/src/lib/utils/hooks/useWallets/useWallets.js +7 -1
  154. package/src/lib/utils/hooks/useWallets/utils/index.d.ts +1 -0
  155. package/src/lib/utils/hooks/useWallets/utils/verifyMagicIsSetup/index.d.ts +1 -0
  156. package/src/lib/utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetup.cjs +35 -0
  157. package/src/lib/utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetup.d.ts +6 -0
  158. package/src/lib/utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetup.js +29 -0
  159. package/src/lib/views/BridgeSummaryView/BridgeSummaryView.cjs +39 -0
  160. package/src/lib/views/BridgeSummaryView/BridgeSummaryView.d.ts +2 -0
  161. package/src/lib/views/BridgeSummaryView/BridgeSummaryView.js +35 -0
  162. package/src/lib/views/BridgeSummaryView/index.d.ts +1 -0
  163. package/src/lib/views/BridgeWelcomeView/BridgeWelcomeView.cjs +48 -0
  164. package/src/lib/views/BridgeWelcomeView/BridgeWelcomeView.d.ts +2 -0
  165. package/src/lib/views/BridgeWelcomeView/BridgeWelcomeView.js +44 -0
  166. package/src/lib/views/BridgeWelcomeView/index.d.ts +1 -0
  167. package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.cjs +1 -2
  168. package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.js +1 -2
  169. package/src/lib/views/CollectUserDataView/CollectUserDataView.cjs +1 -2
  170. package/src/lib/views/CollectUserDataView/CollectUserDataView.js +1 -2
  171. package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.cjs +1 -2
  172. package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.js +1 -2
  173. package/src/lib/views/CollectUserDataView/UserDataFields/index.cjs +1 -2
  174. package/src/lib/views/CollectUserDataView/UserDataFields/index.js +1 -2
  175. package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.cjs +1 -2
  176. package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.js +1 -2
  177. package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.cjs +1 -2
  178. package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.js +1 -2
  179. package/src/lib/views/EmailUpdate/EmailUpdate.cjs +1 -2
  180. package/src/lib/views/EmailUpdate/EmailUpdate.js +1 -2
  181. package/src/lib/views/EmailVerification/EmailVerification.cjs +1 -2
  182. package/src/lib/views/EmailVerification/EmailVerification.js +1 -2
  183. package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.cjs +1 -2
  184. package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.js +1 -2
  185. package/src/lib/views/LoginWithEmailView/components/ListItemButton/ListItemButton.cjs +2 -3
  186. package/src/lib/views/LoginWithEmailView/components/ListItemButton/ListItemButton.js +2 -3
  187. package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.cjs +1 -2
  188. package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.js +1 -2
  189. package/src/lib/views/LoginWithEmailView/components/SocialSignIn/SocialSignIn.cjs +1 -2
  190. package/src/lib/views/LoginWithEmailView/components/SocialSignIn/SocialSignIn.js +1 -2
  191. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +11 -8
  192. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +11 -8
  193. package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.cjs +22 -16
  194. package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.js +22 -16
  195. package/src/lib/views/NoAccess/NoAccess.cjs +2 -3
  196. package/src/lib/views/NoAccess/NoAccess.js +2 -3
  197. package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.cjs +1 -2
  198. package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.js +1 -2
  199. package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.cjs +1 -2
  200. package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.js +1 -2
  201. package/src/lib/views/PendingConnectView/PendingConnectView.cjs +1 -2
  202. package/src/lib/views/PendingConnectView/PendingConnectView.js +1 -2
  203. package/src/lib/views/PendingSignatureView/PendingSignatureView.cjs +1 -2
  204. package/src/lib/views/PendingSignatureView/PendingSignatureView.js +1 -2
  205. package/src/lib/views/QrCodeView/QRCode.cjs +1 -2
  206. package/src/lib/views/QrCodeView/QRCode.js +1 -2
  207. package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.cjs +1 -2
  208. package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.js +1 -2
  209. package/src/lib/views/QrCodeView/QrCodeView.cjs +1 -2
  210. package/src/lib/views/QrCodeView/QrCodeView.js +1 -2
  211. package/src/lib/views/SendBalanceView/SendBalanceView.cjs +1 -2
  212. package/src/lib/views/SendBalanceView/SendBalanceView.js +1 -2
  213. package/src/lib/views/SocialRedirectView/SocialRedirectView.cjs +1 -2
  214. package/src/lib/views/SocialRedirectView/SocialRedirectView.js +1 -2
  215. package/src/lib/views/SocialWrongAccountView/SocialWrongAccountView.cjs +1 -2
  216. package/src/lib/views/SocialWrongAccountView/SocialWrongAccountView.js +1 -2
  217. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.cjs +1 -2
  218. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.js +1 -2
  219. package/src/lib/views/TransactionConfirmationView/hooks/useTransactionData/useTransactionData.cjs +1 -2
  220. package/src/lib/views/TransactionConfirmationView/hooks/useTransactionData/useTransactionData.js +1 -2
  221. package/src/lib/views/WalletList/SearchInstead/SearchInstead.cjs +1 -2
  222. package/src/lib/views/WalletList/SearchInstead/SearchInstead.js +1 -2
  223. package/src/lib/views/WalletList/WalletList.cjs +6 -5
  224. package/src/lib/views/WalletList/WalletList.js +7 -6
  225. package/src/lib/views/WalletList/WalletListItem/WalletListItem.cjs +4 -4
  226. package/src/lib/views/WalletList/WalletListItem/WalletListItem.js +4 -4
  227. package/src/lib/views/WalletLockedView/WalletLockedView.cjs +1 -2
  228. package/src/lib/views/WalletLockedView/WalletLockedView.js +1 -2
  229. package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.cjs +1 -2
  230. package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.js +1 -2
  231. package/src/lib/views/WalletUsedView/WalletUsedView.cjs +1 -2
  232. package/src/lib/views/WalletUsedView/WalletUsedView.js +1 -2
  233. package/src/lib/views/viewToComponentMap.cjs +4 -0
  234. package/src/lib/views/viewToComponentMap.js +4 -0
  235. package/src/lib/widgets/DynamicBridgeWidget/DynamicBridgeWidget.cjs +4 -7
  236. package/src/lib/widgets/DynamicBridgeWidget/DynamicBridgeWidget.js +4 -7
  237. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeUserProfile/DynamicBridgeUserProfile.cjs +1 -2
  238. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeUserProfile/DynamicBridgeUserProfile.js +1 -2
  239. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCard/DynamicBridgeWalletCard.cjs +1 -2
  240. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCard/DynamicBridgeWalletCard.d.ts +1 -1
  241. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCard/DynamicBridgeWalletCard.js +1 -2
  242. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCardBody/DynamicBridgeWalletCardBody.cjs +1 -2
  243. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCardBody/DynamicBridgeWalletCardBody.js +1 -2
  244. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetEmptyCard/DynamicBridgeWidgetEmptyCard.cjs +58 -0
  245. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetEmptyCard/DynamicBridgeWidgetEmptyCard.d.ts +7 -0
  246. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetEmptyCard/DynamicBridgeWidgetEmptyCard.js +54 -0
  247. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetEmptyCard/index.d.ts +1 -0
  248. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetNav/DynamicBridgeWidgetNav.cjs +3 -39
  249. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetNav/DynamicBridgeWidgetNav.d.ts +0 -4
  250. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetNav/DynamicBridgeWidgetNav.js +3 -39
  251. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetNavPrimary/DynamicBridgeWidgetNavPrimary.cjs +57 -0
  252. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetNavPrimary/DynamicBridgeWidgetNavPrimary.d.ts +6 -0
  253. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetNavPrimary/DynamicBridgeWidgetNavPrimary.js +53 -0
  254. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetNavPrimary/index.d.ts +1 -0
  255. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetNavSecondary/DynamicBridgeWidgetNavSecondary.cjs +58 -0
  256. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetNavSecondary/DynamicBridgeWidgetNavSecondary.d.ts +6 -0
  257. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetNavSecondary/DynamicBridgeWidgetNavSecondary.js +54 -0
  258. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWidgetNavSecondary/index.d.ts +1 -0
  259. package/src/lib/widgets/DynamicBridgeWidget/index.d.ts +0 -1
  260. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/WalletsView.cjs +13 -12
  261. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/WalletsView.js +13 -12
  262. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.cjs +11 -11
  263. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.d.ts +6 -6
  264. package/src/lib/widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js +12 -12
  265. package/src/lib/widgets/DynamicWidget/DynamicWidget.cjs +2 -3
  266. package/src/lib/widgets/DynamicWidget/DynamicWidget.js +2 -3
  267. package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.cjs +1 -2
  268. package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.js +1 -2
  269. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs +2 -3
  270. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js +2 -3
  271. package/src/lib/widgets/DynamicWidget/components/Balance/Balance.cjs +2 -3
  272. package/src/lib/widgets/DynamicWidget/components/Balance/Balance.js +2 -3
  273. package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.cjs +1 -2
  274. package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.js +1 -2
  275. package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.cjs +1 -2
  276. package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.js +1 -2
  277. package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.cjs +2 -3
  278. package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.js +2 -3
  279. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs +1 -2
  280. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js +1 -2
  281. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.cjs +1 -2
  282. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.js +1 -2
  283. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetDropdown/DynamicWidgetDropdown.cjs +1 -2
  284. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetDropdown/DynamicWidgetDropdown.js +1 -2
  285. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.cjs +1 -2
  286. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.js +1 -2
  287. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.cjs +1 -2
  288. package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.js +1 -2
  289. package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.cjs +1 -2
  290. package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.js +1 -2
  291. package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.cjs +1 -2
  292. package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.js +1 -2
  293. package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.cjs +1 -2
  294. package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.js +1 -2
  295. package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.cjs +2 -3
  296. package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.js +2 -3
  297. package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.cjs +2 -3
  298. package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.js +2 -3
  299. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.cjs +1 -2
  300. package/src/lib/widgets/DynamicWidget/components/WidgetPortal/WidgetPortal.js +1 -2
  301. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.cjs +1 -2
  302. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.js +1 -2
  303. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.cjs +1 -2
  304. package/src/lib/widgets/DynamicWidget/prompts/DefaultPromptModal/DefaultPromptModal.js +1 -2
  305. package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.cjs +1 -2
  306. package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.js +1 -2
  307. package/src/lib/widgets/DynamicWidget/prompts/NoQrNotInstalledModalView/NoQrNotInstalledModalView.cjs +1 -2
  308. package/src/lib/widgets/DynamicWidget/prompts/NoQrNotInstalledModalView/NoQrNotInstalledModalView.js +1 -2
  309. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.cjs +1 -2
  310. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchAccountView/SwitchAccountView.js +1 -2
  311. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.cjs +1 -2
  312. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.js +1 -2
  313. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.cjs +1 -2
  314. package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchToLinkModal/PendingAccountSwitchToLinkModal.js +1 -2
  315. package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.cjs +2 -3
  316. package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.js +2 -3
  317. package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.cjs +1 -2
  318. package/src/lib/widgets/DynamicWidget/prompts/PendingSignModal/DefaultPendingSignModalContent/DefaultPendingSignModalContent.js +1 -2
  319. package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.cjs +1 -2
  320. package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.js +1 -2
  321. package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.cjs +1 -2
  322. package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.js +1 -2
  323. package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.cjs +1 -2
  324. package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.js +1 -2
  325. package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.cjs +1 -2
  326. package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.js +1 -2
  327. package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.cjs +1 -2
  328. package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.js +1 -2
  329. package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.cjs +1 -2
  330. package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.js +1 -2
  331. package/src/lib/widgets/FundingWidget/views/FundWalletView/FundWalletView.cjs +1 -2
  332. package/src/lib/widgets/FundingWidget/views/FundWalletView/FundWalletView.js +1 -2
  333. package/src/lib/layouts/SelectWalletListLayout/SelectWalletListLayout.cjs +0 -53
  334. package/src/lib/layouts/SelectWalletListLayout/SelectWalletListLayout.js +0 -49
  335. package/src/lib/modals/MultiWalletStepSelectorModal/MultiWalletStepSelectorModal.cjs +0 -77
  336. package/src/lib/modals/MultiWalletStepSelectorModal/MultiWalletStepSelectorModal.d.ts +0 -2
  337. package/src/lib/modals/MultiWalletStepSelectorModal/MultiWalletStepSelectorModal.js +0 -73
  338. package/src/lib/modals/MultiWalletStepSelectorModal/index.d.ts +0 -1
  339. package/src/lib/modals/MultiWalletStepSelectorModal/views/ResumeView/ResumeView.cjs +0 -62
  340. package/src/lib/modals/MultiWalletStepSelectorModal/views/ResumeView/ResumeView.d.ts +0 -6
  341. package/src/lib/modals/MultiWalletStepSelectorModal/views/ResumeView/ResumeView.js +0 -58
  342. package/src/lib/modals/MultiWalletStepSelectorModal/views/ResumeView/index.d.ts +0 -1
  343. package/src/lib/modals/MultiWalletStepSelectorModal/views/SelectWalletView/SelectWalletView.cjs +0 -89
  344. package/src/lib/modals/MultiWalletStepSelectorModal/views/SelectWalletView/SelectWalletView.d.ts +0 -8
  345. package/src/lib/modals/MultiWalletStepSelectorModal/views/SelectWalletView/SelectWalletView.js +0 -85
  346. package/src/lib/modals/MultiWalletStepSelectorModal/views/SelectWalletView/index.d.ts +0 -1
  347. package/src/lib/modals/MultiWalletStepSelectorModal/views/WelcomeView/WelcomeView.cjs +0 -72
  348. package/src/lib/modals/MultiWalletStepSelectorModal/views/WelcomeView/WelcomeView.d.ts +0 -7
  349. package/src/lib/modals/MultiWalletStepSelectorModal/views/WelcomeView/WelcomeView.js +0 -68
  350. package/src/lib/modals/MultiWalletStepSelectorModal/views/WelcomeView/index.d.ts +0 -1
  351. package/src/lib/modals/MultiWalletStepSelectorModal/views/index.d.ts +0 -3
  352. package/src/lib/utils/functions/groupBy/groupBy.cjs +0 -30
  353. package/src/lib/utils/functions/groupBy/groupBy.js +0 -26
  354. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeConnectButton/DynamicBridgeConnectButton.cjs +0 -23
  355. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeConnectButton/DynamicBridgeConnectButton.d.ts +0 -8
  356. package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeConnectButton/DynamicBridgeConnectButton.js +0 -19
@@ -7,7 +7,7 @@ import { getDynamicLayoutData } from '../../functions/getDynamicLayoutData/getDy
7
7
 
8
8
  const useAuthLayoutChecks = (walletConnector) => {
9
9
  const { view } = useViewContext();
10
- const { user, privacyPolicyUrl, termsOfServiceUrl } = useInternalDynamicContext();
10
+ const { user, privacyPolicyUrl, termsOfServiceUrl, isBridgeFlow } = useInternalDynamicContext();
11
11
  const { showQrCodeMessage, showQrCodeImage } = useQrCodeContext();
12
12
  const { mockedSDK } = useMockContext();
13
13
  const { helpHeaderData } = getDynamicLayoutData({ view });
@@ -30,7 +30,16 @@ const useAuthLayoutChecks = (walletConnector) => {
30
30
  view !== 'verify-email' &&
31
31
  view !== 'network-not-supported' &&
32
32
  view !== 'wallet-locked-view' &&
33
- view !== 'email-wallet-otp-verification-view';
33
+ view !== 'email-wallet-otp-verification-view' &&
34
+ view !== 'bridge-welcome' &&
35
+ view !== 'bridge-summary';
36
+ const showConnectedWalletProgress = isBridgeFlow &&
37
+ (view === 'wallet-list' ||
38
+ view === 'qr-code' ||
39
+ view === 'wallet-connect-mobile-wallets-list' ||
40
+ view === 'pending-connect' ||
41
+ view === 'pending-signature' ||
42
+ view === 'pending-signature-without-back-button');
34
43
  const showToSFooter = Boolean(!isUserLinkingWallet(user, view, mockedSDK) &&
35
44
  (view === 'wallet-list' ||
36
45
  view === 'wallet-connect-mobile-wallets-list' ||
@@ -54,6 +63,7 @@ const useAuthLayoutChecks = (walletConnector) => {
54
63
  isWalletListTypeView,
55
64
  showBackButton,
56
65
  showCloseButton,
66
+ showConnectedWalletProgress,
57
67
  showHeader,
58
68
  showHelpContent,
59
69
  showQrCodePreHeader,
@@ -4,6 +4,17 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
6
  var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
7
+ require('@dynamic-labs/sdk-api');
8
+ require('../../../shared/logger.cjs');
9
+ require('@dynamic-labs/iconic');
10
+ require('react/jsx-runtime');
11
+ require('../../../context/ViewContext/ViewContext.cjs');
12
+ require('@dynamic-labs/wallet-book');
13
+ require('@dynamic-labs/utils');
14
+ require('../../constants/colors.cjs');
15
+ var localStorage$1 = require('../../../shared/utils/classes/storage/localStorage.cjs');
16
+ require('ethers');
17
+ require('../../../shared/consts/index.cjs');
7
18
 
8
19
  const useClearWalletConnectSessions = ({ connectors }) => {
9
20
  const clearOphanedWalletConnectSessions = React.useCallback(() => {
@@ -12,7 +23,7 @@ const useClearWalletConnectSessions = ({ connectors }) => {
12
23
  if (connectors.length === 0)
13
24
  return;
14
25
  const names = new Set(connectors.map((connector) => walletConnectorCore.normalizeWalletName(connector.name)));
15
- for (const key of Object.keys(localStorage)) {
26
+ for (const key of localStorage$1.LocalStorage.getKeys()) {
16
27
  if (key.startsWith('walletconnect') &&
17
28
  !names.has(key.replace('walletconnect-', ''))) {
18
29
  localStorage.removeItem(key);
@@ -22,8 +33,10 @@ const useClearWalletConnectSessions = ({ connectors }) => {
22
33
  const clearAllWalletConnectSessions = () => {
23
34
  if (typeof window === 'undefined')
24
35
  return;
25
- for (const key of Object.keys(localStorage)) {
26
- if (key.startsWith('walletconnect')) {
36
+ for (const key of localStorage$1.LocalStorage.getKeys()) {
37
+ if (key.startsWith('walletconnect') ||
38
+ key.startsWith('walletlink') ||
39
+ key.startsWith('wc@2')) {
27
40
  localStorage.removeItem(key);
28
41
  }
29
42
  }
@@ -1,5 +1,16 @@
1
1
  import { useCallback } from 'react';
2
2
  import { normalizeWalletName } from '@dynamic-labs/wallet-connector-core';
3
+ import '@dynamic-labs/sdk-api';
4
+ import '../../../shared/logger.js';
5
+ import '@dynamic-labs/iconic';
6
+ import 'react/jsx-runtime';
7
+ import '../../../context/ViewContext/ViewContext.js';
8
+ import '@dynamic-labs/wallet-book';
9
+ import '@dynamic-labs/utils';
10
+ import '../../constants/colors.js';
11
+ import { LocalStorage } from '../../../shared/utils/classes/storage/localStorage.js';
12
+ import 'ethers';
13
+ import '../../../shared/consts/index.js';
3
14
 
4
15
  const useClearWalletConnectSessions = ({ connectors }) => {
5
16
  const clearOphanedWalletConnectSessions = useCallback(() => {
@@ -8,7 +19,7 @@ const useClearWalletConnectSessions = ({ connectors }) => {
8
19
  if (connectors.length === 0)
9
20
  return;
10
21
  const names = new Set(connectors.map((connector) => normalizeWalletName(connector.name)));
11
- for (const key of Object.keys(localStorage)) {
22
+ for (const key of LocalStorage.getKeys()) {
12
23
  if (key.startsWith('walletconnect') &&
13
24
  !names.has(key.replace('walletconnect-', ''))) {
14
25
  localStorage.removeItem(key);
@@ -18,8 +29,10 @@ const useClearWalletConnectSessions = ({ connectors }) => {
18
29
  const clearAllWalletConnectSessions = () => {
19
30
  if (typeof window === 'undefined')
20
31
  return;
21
- for (const key of Object.keys(localStorage)) {
22
- if (key.startsWith('walletconnect')) {
32
+ for (const key of LocalStorage.getKeys()) {
33
+ if (key.startsWith('walletconnect') ||
34
+ key.startsWith('walletlink') ||
35
+ key.startsWith('wc@2')) {
23
36
  localStorage.removeItem(key);
24
37
  }
25
38
  }
@@ -23,11 +23,37 @@ var api = require('../../../data/api.cjs');
23
23
  require('@dynamic-labs/multi-wallet');
24
24
  var shouldManuallyReconnectOnRefresh = require('../../functions/shouldManuallyReconnectOnRefresh/shouldManuallyReconnectOnRefresh.cjs');
25
25
 
26
- const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, wallets, user, }) => {
26
+ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, wallets, }) => {
27
27
  const [connectedWalletsInfo, setConnectedWalletsInfo, removeConnectedWalletsInfo,] = useLocalStorage.useLocalStorage(localStorage.CONNECTED_WALLETS_INFO, []);
28
28
  const [connectedWallet, setConnectedWallet] = React.useState(null);
29
- const [connectedWallets, setConnectedWallets] = React.useState([]);
30
- const setConnectedStates = React.useCallback((walletConnector, address, chain, id) => {
29
+ const getNextIdAvailable = React.useCallback((currentWallets) => {
30
+ const existingIds = currentWallets.map(({ id }) => id);
31
+ const sortedIds = existingIds
32
+ .map((id) => Number(id.replace('connect-only-wallet-', '')))
33
+ .sort((a, b) => a - b);
34
+ for (let i = 0; i < sortedIds.length; i++) {
35
+ if (sortedIds[i] !== i) {
36
+ return i;
37
+ }
38
+ }
39
+ return sortedIds.length;
40
+ }, []);
41
+ const connectedWallets = React.useMemo(() => connectedWalletsInfo
42
+ .map((connectedWallet) => {
43
+ const walletConnector = walletConnectorCore.getWalletConnectorByName(wallets.map((wallet) => wallet.walletConnector), connectedWallet.name);
44
+ if (!walletConnector) {
45
+ return null;
46
+ }
47
+ return {
48
+ address: connectedWallet.walletPublicKey,
49
+ chain: connectedWallet.chain,
50
+ connected: true,
51
+ connector: walletConnector,
52
+ id: connectedWallet.id,
53
+ };
54
+ })
55
+ .filter((wc) => wc !== null), [connectedWalletsInfo, wallets]);
56
+ const setConnectedStates = React.useCallback((walletConnector, address, chain) => {
31
57
  setConnectedWallet({
32
58
  address,
33
59
  chain,
@@ -35,29 +61,6 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
35
61
  connector: walletConnector,
36
62
  id: 'connect-only-wallet',
37
63
  });
38
- setConnectedWallets((currentWallets) => {
39
- const exists = currentWallets.some((currentWallet) => walletConnectorCore.isSameAddress(currentWallet.address, address, chain));
40
- // when we connect first wallet, it should be set as a primary wallet
41
- const shouldSetPrimaryWalletId = authMode === 'connect-only' &&
42
- currentWallets.length === 0 &&
43
- !primaryWalletId;
44
- if (shouldSetPrimaryWalletId) {
45
- setPrimaryWalletId(`connect-only-wallet-${0}`);
46
- }
47
- if (exists) {
48
- return currentWallets;
49
- }
50
- return [
51
- ...currentWallets,
52
- {
53
- address,
54
- chain,
55
- connected: true,
56
- connector: walletConnector,
57
- id: `connect-only-wallet-${id}`,
58
- },
59
- ];
60
- });
61
64
  setConnectedWalletsInfo((currentWallets) => {
62
65
  const exists = currentWallets.some((currentWallet) => currentWallet.walletPublicKey === address);
63
66
  if (exists) {
@@ -67,25 +70,15 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
67
70
  ...currentWallets,
68
71
  {
69
72
  chain,
70
- id: `connect-only-wallet-${id}`,
73
+ id: `connect-only-wallet-${getNextIdAvailable(currentWallets)}`,
71
74
  name: walletConnector.name,
72
75
  provider: getWalletProvider.getWalletProvider(walletConnector),
73
76
  walletPublicKey: address,
74
77
  },
75
78
  ];
76
79
  });
77
- }, [authMode, primaryWalletId, setConnectedWalletsInfo, setPrimaryWalletId]);
78
- React.useEffect(() => {
79
- const found = connectedWalletsInfo.find((connectedWalletInfo) => connectedWalletInfo.id !== primaryWalletId);
80
- // when primaryWalletId is defined, but it does not exist in
81
- // connectedWalletInfo that means we're out of sync and we want to remove all connected wallets data
82
- if (primaryWalletId && !found && !user) {
83
- removeConnectedWalletsInfo();
84
- setConnectedWallets([]);
85
- clearPrimaryWalletId();
86
- }
87
- }, []);
88
- const connectWalletByAddressAndChain = React.useCallback((name, address, chain, id) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
80
+ }, [getNextIdAvailable, setConnectedWalletsInfo]);
81
+ const connectWalletByAddressAndChain = React.useCallback((name, address, chain) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
89
82
  const walletConnector = walletConnectorCore.getWalletConnectorByName(wallets.map((wallet) => wallet.walletConnector), name);
90
83
  if (walletConnector) {
91
84
  if (shouldManuallyReconnectOnRefresh.shouldManuallyReconnectOnRefresh(walletConnector)) {
@@ -95,7 +88,7 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
95
88
  const result = connectedAccounts.filter((account) => walletConnectorCore.isSameAddress(account, address, chain));
96
89
  if (result.length > 0) {
97
90
  walletConnector.connect();
98
- setConnectedStates(walletConnector, address, chain, id);
91
+ setConnectedStates(walletConnector, address, chain);
99
92
  }
100
93
  else {
101
94
  setConnectedWallet(null);
@@ -106,13 +99,11 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
106
99
  }
107
100
  }), [setConnectedStates, wallets]);
108
101
  React.useEffect(() => {
109
- const shouldUpdateConnectedWalletsState = authMode === 'connect-only' &&
110
- connectedWalletsInfo.length &&
111
- !connectedWallets.length;
102
+ const shouldUpdateConnectedWalletsState = authMode === 'connect-only' && connectedWalletsInfo.length;
112
103
  if (shouldUpdateConnectedWalletsState) {
113
- connectedWalletsInfo.forEach(({ name, walletPublicKey, chain }, id) => {
104
+ connectedWalletsInfo.forEach(({ name, walletPublicKey, chain }) => {
114
105
  if (chain) {
115
- connectWalletByAddressAndChain(name, walletPublicKey, chain, id);
106
+ connectWalletByAddressAndChain(name, walletPublicKey, chain);
116
107
  }
117
108
  });
118
109
  }
@@ -132,7 +123,12 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
132
123
  throw error;
133
124
  }
134
125
  const chain = walletConnector.connectedChain || '';
135
- setConnectedStates(walletConnector, publicWalletAddress, chain, connectedWalletsInfo.length);
126
+ // when we connect first wallet, it should be set as a primary wallet
127
+ const shouldSetPrimaryWalletId = authMode === 'connect-only' && !primaryWalletId;
128
+ if (shouldSetPrimaryWalletId) {
129
+ setPrimaryWalletId(`connect-only-wallet-${getNextIdAvailable(connectedWalletsInfo)}`);
130
+ }
131
+ setConnectedStates(walletConnector, publicWalletAddress, chain);
136
132
  if (shouldSkipCreatingVisit) {
137
133
  return publicWalletAddress;
138
134
  }
@@ -149,15 +145,23 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
149
145
  });
150
146
  return publicWalletAddress;
151
147
  });
148
+ const unlinkConnectedWallet = (walletId) => {
149
+ const filteredWallets = connectedWalletsInfo.filter((wallet) => wallet.id !== walletId);
150
+ if (walletId === primaryWalletId) {
151
+ clearPrimaryWalletId();
152
+ }
153
+ setConnectedWalletsInfo(filteredWallets);
154
+ };
155
+ const getConnectedWalletById = React.useCallback((walletId) => connectedWallets.find((wallet) => wallet.id === walletId), [connectedWallets]);
152
156
  return {
153
157
  connectWallet,
154
158
  connectWalletByAddressAndChain,
155
159
  connectedWallet,
156
160
  connectedWallets,
157
161
  connectedWalletsInfo,
162
+ getConnectedWalletById,
158
163
  removeConnectedWalletsInfo,
159
- setConnectedWallet,
160
- setConnectedWallets,
164
+ unlinkConnectedWallet,
161
165
  };
162
166
  };
163
167
 
@@ -1,6 +1,5 @@
1
- /// <reference types="react" />
2
1
  import { Chain, FetchPublicAddressOpts, WalletConnector } from '@dynamic-labs/wallet-connector-core';
3
- import { AuthModeType, UserProfile, Wallet, WalletOption } from '../../../shared';
2
+ import { AuthModeType, Wallet, WalletOption } from '../../../shared';
4
3
  export type ConnectedWalletConnectorType = {
5
4
  chain: Chain | undefined;
6
5
  name: string;
@@ -16,16 +15,15 @@ type Props = {
16
15
  primaryWalletId: string | undefined;
17
16
  setPrimaryWalletId: (walletId: string) => void;
18
17
  wallets: WalletOption[];
19
- user: UserProfile | undefined;
20
18
  };
21
- export declare const useConnectWallet: ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, wallets, user, }: Props) => {
19
+ export declare const useConnectWallet: ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, wallets, }: Props) => {
22
20
  connectWallet: (walletConnector: WalletConnector, fetchPublicAddressOpts?: FetchPublicAddressOpts) => Promise<string>;
23
- connectWalletByAddressAndChain: (name: string, address: string, chain: Chain, id?: number) => Promise<void>;
21
+ connectWalletByAddressAndChain: (name: string, address: string, chain: Chain) => Promise<void>;
24
22
  connectedWallet: Wallet | null;
25
- connectedWallets: [] | Wallet[];
23
+ connectedWallets: Wallet[];
26
24
  connectedWalletsInfo: [] | ConnectedWalletConnectorType[];
25
+ getConnectedWalletById: (walletId: string) => Wallet | undefined;
27
26
  removeConnectedWalletsInfo: () => void;
28
- setConnectedWallet: import("react").Dispatch<import("react").SetStateAction<Wallet | null>>;
29
- setConnectedWallets: import("react").Dispatch<import("react").SetStateAction<[] | Wallet[]>>;
27
+ unlinkConnectedWallet: (walletId: string) => void;
30
28
  };
31
29
  export {};
@@ -1,6 +1,6 @@
1
1
  import { __awaiter } from '../../../../../_virtual/_tslib.js';
2
- import { useState, useCallback, useEffect, useMemo } from 'react';
3
- import { isSameAddress, getWalletConnectorByName } from '@dynamic-labs/wallet-connector-core';
2
+ import { useState, useCallback, useMemo, useEffect } from 'react';
3
+ import { getWalletConnectorByName, isSameAddress } from '@dynamic-labs/wallet-connector-core';
4
4
  import '@dynamic-labs/sdk-api';
5
5
  import '../../../shared/logger.js';
6
6
  import '@dynamic-labs/iconic';
@@ -19,11 +19,37 @@ import { createVisit } from '../../../data/api.js';
19
19
  import '@dynamic-labs/multi-wallet';
20
20
  import { shouldManuallyReconnectOnRefresh } from '../../functions/shouldManuallyReconnectOnRefresh/shouldManuallyReconnectOnRefresh.js';
21
21
 
22
- const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, wallets, user, }) => {
22
+ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, setPrimaryWalletId, wallets, }) => {
23
23
  const [connectedWalletsInfo, setConnectedWalletsInfo, removeConnectedWalletsInfo,] = useLocalStorage(CONNECTED_WALLETS_INFO, []);
24
24
  const [connectedWallet, setConnectedWallet] = useState(null);
25
- const [connectedWallets, setConnectedWallets] = useState([]);
26
- const setConnectedStates = useCallback((walletConnector, address, chain, id) => {
25
+ const getNextIdAvailable = useCallback((currentWallets) => {
26
+ const existingIds = currentWallets.map(({ id }) => id);
27
+ const sortedIds = existingIds
28
+ .map((id) => Number(id.replace('connect-only-wallet-', '')))
29
+ .sort((a, b) => a - b);
30
+ for (let i = 0; i < sortedIds.length; i++) {
31
+ if (sortedIds[i] !== i) {
32
+ return i;
33
+ }
34
+ }
35
+ return sortedIds.length;
36
+ }, []);
37
+ const connectedWallets = useMemo(() => connectedWalletsInfo
38
+ .map((connectedWallet) => {
39
+ const walletConnector = getWalletConnectorByName(wallets.map((wallet) => wallet.walletConnector), connectedWallet.name);
40
+ if (!walletConnector) {
41
+ return null;
42
+ }
43
+ return {
44
+ address: connectedWallet.walletPublicKey,
45
+ chain: connectedWallet.chain,
46
+ connected: true,
47
+ connector: walletConnector,
48
+ id: connectedWallet.id,
49
+ };
50
+ })
51
+ .filter((wc) => wc !== null), [connectedWalletsInfo, wallets]);
52
+ const setConnectedStates = useCallback((walletConnector, address, chain) => {
27
53
  setConnectedWallet({
28
54
  address,
29
55
  chain,
@@ -31,29 +57,6 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
31
57
  connector: walletConnector,
32
58
  id: 'connect-only-wallet',
33
59
  });
34
- setConnectedWallets((currentWallets) => {
35
- const exists = currentWallets.some((currentWallet) => isSameAddress(currentWallet.address, address, chain));
36
- // when we connect first wallet, it should be set as a primary wallet
37
- const shouldSetPrimaryWalletId = authMode === 'connect-only' &&
38
- currentWallets.length === 0 &&
39
- !primaryWalletId;
40
- if (shouldSetPrimaryWalletId) {
41
- setPrimaryWalletId(`connect-only-wallet-${0}`);
42
- }
43
- if (exists) {
44
- return currentWallets;
45
- }
46
- return [
47
- ...currentWallets,
48
- {
49
- address,
50
- chain,
51
- connected: true,
52
- connector: walletConnector,
53
- id: `connect-only-wallet-${id}`,
54
- },
55
- ];
56
- });
57
60
  setConnectedWalletsInfo((currentWallets) => {
58
61
  const exists = currentWallets.some((currentWallet) => currentWallet.walletPublicKey === address);
59
62
  if (exists) {
@@ -63,25 +66,15 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
63
66
  ...currentWallets,
64
67
  {
65
68
  chain,
66
- id: `connect-only-wallet-${id}`,
69
+ id: `connect-only-wallet-${getNextIdAvailable(currentWallets)}`,
67
70
  name: walletConnector.name,
68
71
  provider: getWalletProvider(walletConnector),
69
72
  walletPublicKey: address,
70
73
  },
71
74
  ];
72
75
  });
73
- }, [authMode, primaryWalletId, setConnectedWalletsInfo, setPrimaryWalletId]);
74
- useEffect(() => {
75
- const found = connectedWalletsInfo.find((connectedWalletInfo) => connectedWalletInfo.id !== primaryWalletId);
76
- // when primaryWalletId is defined, but it does not exist in
77
- // connectedWalletInfo that means we're out of sync and we want to remove all connected wallets data
78
- if (primaryWalletId && !found && !user) {
79
- removeConnectedWalletsInfo();
80
- setConnectedWallets([]);
81
- clearPrimaryWalletId();
82
- }
83
- }, []);
84
- const connectWalletByAddressAndChain = useCallback((name, address, chain, id) => __awaiter(void 0, void 0, void 0, function* () {
76
+ }, [getNextIdAvailable, setConnectedWalletsInfo]);
77
+ const connectWalletByAddressAndChain = useCallback((name, address, chain) => __awaiter(void 0, void 0, void 0, function* () {
85
78
  const walletConnector = getWalletConnectorByName(wallets.map((wallet) => wallet.walletConnector), name);
86
79
  if (walletConnector) {
87
80
  if (shouldManuallyReconnectOnRefresh(walletConnector)) {
@@ -91,7 +84,7 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
91
84
  const result = connectedAccounts.filter((account) => isSameAddress(account, address, chain));
92
85
  if (result.length > 0) {
93
86
  walletConnector.connect();
94
- setConnectedStates(walletConnector, address, chain, id);
87
+ setConnectedStates(walletConnector, address, chain);
95
88
  }
96
89
  else {
97
90
  setConnectedWallet(null);
@@ -102,13 +95,11 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
102
95
  }
103
96
  }), [setConnectedStates, wallets]);
104
97
  useEffect(() => {
105
- const shouldUpdateConnectedWalletsState = authMode === 'connect-only' &&
106
- connectedWalletsInfo.length &&
107
- !connectedWallets.length;
98
+ const shouldUpdateConnectedWalletsState = authMode === 'connect-only' && connectedWalletsInfo.length;
108
99
  if (shouldUpdateConnectedWalletsState) {
109
- connectedWalletsInfo.forEach(({ name, walletPublicKey, chain }, id) => {
100
+ connectedWalletsInfo.forEach(({ name, walletPublicKey, chain }) => {
110
101
  if (chain) {
111
- connectWalletByAddressAndChain(name, walletPublicKey, chain, id);
102
+ connectWalletByAddressAndChain(name, walletPublicKey, chain);
112
103
  }
113
104
  });
114
105
  }
@@ -128,7 +119,12 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
128
119
  throw error;
129
120
  }
130
121
  const chain = walletConnector.connectedChain || '';
131
- setConnectedStates(walletConnector, publicWalletAddress, chain, connectedWalletsInfo.length);
122
+ // when we connect first wallet, it should be set as a primary wallet
123
+ const shouldSetPrimaryWalletId = authMode === 'connect-only' && !primaryWalletId;
124
+ if (shouldSetPrimaryWalletId) {
125
+ setPrimaryWalletId(`connect-only-wallet-${getNextIdAvailable(connectedWalletsInfo)}`);
126
+ }
127
+ setConnectedStates(walletConnector, publicWalletAddress, chain);
132
128
  if (shouldSkipCreatingVisit) {
133
129
  return publicWalletAddress;
134
130
  }
@@ -145,15 +141,23 @@ const useConnectWallet = ({ authMode, clearPrimaryWalletId, enableVisitTrackingO
145
141
  });
146
142
  return publicWalletAddress;
147
143
  });
144
+ const unlinkConnectedWallet = (walletId) => {
145
+ const filteredWallets = connectedWalletsInfo.filter((wallet) => wallet.id !== walletId);
146
+ if (walletId === primaryWalletId) {
147
+ clearPrimaryWalletId();
148
+ }
149
+ setConnectedWalletsInfo(filteredWallets);
150
+ };
151
+ const getConnectedWalletById = useCallback((walletId) => connectedWallets.find((wallet) => wallet.id === walletId), [connectedWallets]);
148
152
  return {
149
153
  connectWallet,
150
154
  connectWalletByAddressAndChain,
151
155
  connectedWallet,
152
156
  connectedWallets,
153
157
  connectedWalletsInfo,
158
+ getConnectedWalletById,
154
159
  removeConnectedWalletsInfo,
155
- setConnectedWallet,
156
- setConnectedWallets,
160
+ unlinkConnectedWallet,
157
161
  };
158
162
  };
159
163
 
@@ -31,9 +31,9 @@ const useCreateUserProfileByJWTCallback = () => {
31
31
  goToInitialView();
32
32
  return;
33
33
  }
34
+ index.storeAuthToken(jwt);
34
35
  const userProfile = createUserProfile.createUserProfile(decodedJWT);
35
36
  setUser(userProfile);
36
- index.storeAuthToken(jwt);
37
37
  // eslint-disable-next-line react-hooks/exhaustive-deps
38
38
  }, []);
39
39
  return { createUserProfileByJWT };
@@ -27,9 +27,9 @@ const useCreateUserProfileByJWTCallback = () => {
27
27
  goToInitialView();
28
28
  return;
29
29
  }
30
+ storeAuthToken(jwt);
30
31
  const userProfile = createUserProfile(decodedJWT);
31
32
  setUser(userProfile);
32
- storeAuthToken(jwt);
33
33
  // eslint-disable-next-line react-hooks/exhaustive-deps
34
34
  }, []);
35
35
  return { createUserProfileByJWT };
@@ -17,17 +17,13 @@ require('ethers');
17
17
  var index = require('../../../shared/consts/index.cjs');
18
18
 
19
19
  const useFetchWalletsForChainsMap = (propsWalletsChainsMap) => {
20
- const walletsForChainsMap = index.defaultWalletsForChains;
21
- // Update default map only if is setup
22
- React.useEffect(() => {
23
- if (propsWalletsChainsMap) {
24
- Object.assign(walletsForChainsMap, {
25
- primary_chain: propsWalletsChainsMap.primary_chain,
26
- wallets: Object.assign(Object.assign({}, index.defaultWalletsForChains.wallets), (Boolean(propsWalletsChainsMap.wallets) &&
27
- propsWalletsChainsMap.wallets)),
28
- });
20
+ const walletsForChainsMap = React.useMemo(() => {
21
+ if (!propsWalletsChainsMap) {
22
+ return index.defaultWalletsForChains;
29
23
  }
30
- }, []);
24
+ return Object.assign(Object.assign({}, index.defaultWalletsForChains), { primary_chain: propsWalletsChainsMap.primary_chain, wallets: Object.assign(Object.assign({}, index.defaultWalletsForChains.wallets), (Boolean(propsWalletsChainsMap.wallets) &&
25
+ propsWalletsChainsMap.wallets)) });
26
+ }, [propsWalletsChainsMap]);
31
27
  return { walletsForChainsMap };
32
28
  };
33
29
 
@@ -1,4 +1,4 @@
1
- import { useEffect } from 'react';
1
+ import { useMemo } from 'react';
2
2
  import '@dynamic-labs/sdk-api';
3
3
  import '../../../shared/logger.js';
4
4
  import '@dynamic-labs/iconic';
@@ -13,17 +13,13 @@ import 'ethers';
13
13
  import { defaultWalletsForChains } from '../../../shared/consts/index.js';
14
14
 
15
15
  const useFetchWalletsForChainsMap = (propsWalletsChainsMap) => {
16
- const walletsForChainsMap = defaultWalletsForChains;
17
- // Update default map only if is setup
18
- useEffect(() => {
19
- if (propsWalletsChainsMap) {
20
- Object.assign(walletsForChainsMap, {
21
- primary_chain: propsWalletsChainsMap.primary_chain,
22
- wallets: Object.assign(Object.assign({}, defaultWalletsForChains.wallets), (Boolean(propsWalletsChainsMap.wallets) &&
23
- propsWalletsChainsMap.wallets)),
24
- });
16
+ const walletsForChainsMap = useMemo(() => {
17
+ if (!propsWalletsChainsMap) {
18
+ return defaultWalletsForChains;
25
19
  }
26
- }, []);
20
+ return Object.assign(Object.assign({}, defaultWalletsForChains), { primary_chain: propsWalletsChainsMap.primary_chain, wallets: Object.assign(Object.assign({}, defaultWalletsForChains.wallets), (Boolean(propsWalletsChainsMap.wallets) &&
21
+ propsWalletsChainsMap.wallets)) });
22
+ }, [propsWalletsChainsMap]);
27
23
  return { walletsForChainsMap };
28
24
  };
29
25
 
@@ -6,10 +6,11 @@ var useInternalDynamicContext = require('../../../context/DynamicContext/useInte
6
6
  var ViewContext = require('../../../context/ViewContext/ViewContext.cjs');
7
7
 
8
8
  const useHandleWalletsToConnect = () => {
9
- const { walletsToConnectByChain, setWalletsToConnectByChain, setShowAuthFlow, } = useInternalDynamicContext.useInternalDynamicContext();
10
- const { setView } = ViewContext.useViewContext();
9
+ const { walletsToConnectByChain, setWalletsToConnectByChain, setShowAuthFlow, setConnectedUser, isUserConnected, } = useInternalDynamicContext.useInternalDynamicContext();
10
+ const { setView, goToInitialView } = ViewContext.useViewContext();
11
11
  const handleWalletsToConnect = () => {
12
12
  if (!walletsToConnectByChain) {
13
+ setConnectedUser(true);
13
14
  setShowAuthFlow(false);
14
15
  return;
15
16
  }
@@ -24,8 +25,17 @@ const useHandleWalletsToConnect = () => {
24
25
  return;
25
26
  }
26
27
  setWalletsToConnectByChain(restOfTheWallets);
27
- if (restOfTheWallets.length === 0) {
28
- setShowAuthFlow(false);
28
+ const allWalletsConnected = restOfTheWallets.length === 0;
29
+ if (allWalletsConnected) {
30
+ if (!isUserConnected) {
31
+ setConnectedUser(true);
32
+ setView('bridge-summary');
33
+ }
34
+ else {
35
+ setShowAuthFlow(false);
36
+ goToInitialView();
37
+ }
38
+ return;
29
39
  }
30
40
  setView('wallet-list');
31
41
  };
@@ -2,10 +2,11 @@ import { useInternalDynamicContext } from '../../../context/DynamicContext/useIn
2
2
  import { useViewContext } from '../../../context/ViewContext/ViewContext.js';
3
3
 
4
4
  const useHandleWalletsToConnect = () => {
5
- const { walletsToConnectByChain, setWalletsToConnectByChain, setShowAuthFlow, } = useInternalDynamicContext();
6
- const { setView } = useViewContext();
5
+ const { walletsToConnectByChain, setWalletsToConnectByChain, setShowAuthFlow, setConnectedUser, isUserConnected, } = useInternalDynamicContext();
6
+ const { setView, goToInitialView } = useViewContext();
7
7
  const handleWalletsToConnect = () => {
8
8
  if (!walletsToConnectByChain) {
9
+ setConnectedUser(true);
9
10
  setShowAuthFlow(false);
10
11
  return;
11
12
  }
@@ -20,8 +21,17 @@ const useHandleWalletsToConnect = () => {
20
21
  return;
21
22
  }
22
23
  setWalletsToConnectByChain(restOfTheWallets);
23
- if (restOfTheWallets.length === 0) {
24
- setShowAuthFlow(false);
24
+ const allWalletsConnected = restOfTheWallets.length === 0;
25
+ if (allWalletsConnected) {
26
+ if (!isUserConnected) {
27
+ setConnectedUser(true);
28
+ setView('bridge-summary');
29
+ }
30
+ else {
31
+ setShowAuthFlow(false);
32
+ goToInitialView();
33
+ }
34
+ return;
25
35
  }
26
36
  setView('wallet-list');
27
37
  };
@@ -5,7 +5,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var _tslib = require('../../../../../_virtual/_tslib.cjs');
6
6
  var React = require('react');
7
7
 
8
- const usePromise = (fetcher, deps = []) => {
8
+ const usePromise = (fetcher, deps = [], options = {
9
+ enabled: true,
10
+ }) => {
9
11
  const [state, setState] = React.useState({
10
12
  active: false,
11
13
  });
@@ -35,7 +37,9 @@ const usePromise = (fetcher, deps = []) => {
35
37
  }
36
38
  }), [setState, fetcher]);
37
39
  React.useEffect(() => {
38
- fetch();
40
+ if (options.enabled) {
41
+ fetch();
42
+ }
39
43
  }, deps);
40
44
  return Object.assign(Object.assign({}, state), { isLoading: state.active });
41
45
  };