@dynamic-labs/sdk-react-core 4.5.0 → 4.5.2

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 (314) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/package.cjs +2 -2
  3. package/package.js +2 -2
  4. package/package.json +12 -12
  5. package/src/index.cjs +7 -7
  6. package/src/index.js +2 -2
  7. package/src/lib/components/Alert/Alert.cjs +6 -3
  8. package/src/lib/components/Alert/Alert.d.ts +1 -0
  9. package/src/lib/components/Alert/Alert.js +6 -4
  10. package/src/lib/components/Alert/AlertText/AlertText.cjs +16 -0
  11. package/src/lib/components/Alert/AlertText/AlertText.d.ts +7 -0
  12. package/src/lib/components/Alert/AlertText/AlertText.js +12 -0
  13. package/src/lib/components/Alert/AlertText/index.d.ts +1 -0
  14. package/src/lib/components/NetworkPicker/NetworkPicker.cjs +11 -40
  15. package/src/lib/components/NetworkPicker/NetworkPicker.d.ts +2 -6
  16. package/src/lib/components/NetworkPicker/NetworkPicker.js +12 -41
  17. package/src/lib/components/NetworkPicker/components/NetworkControl/NetworkControl.cjs +6 -8
  18. package/src/lib/components/NetworkPicker/components/NetworkControl/NetworkControl.d.ts +2 -4
  19. package/src/lib/components/NetworkPicker/components/NetworkControl/NetworkControl.js +6 -8
  20. package/src/lib/components/NetworkPicker/components/NetworkDropdown/NetworkDropdown.cjs +67 -0
  21. package/src/lib/components/NetworkPicker/components/NetworkDropdown/NetworkDropdown.d.ts +14 -0
  22. package/src/lib/components/NetworkPicker/components/NetworkDropdown/NetworkDropdown.js +63 -0
  23. package/src/lib/components/NetworkPicker/components/NetworkDropdown/index.d.ts +1 -0
  24. package/src/lib/components/NetworkPicker/components/{EvmNetworkControl/EvmNetworkControl.cjs → NetworkSwitchControl/NetworkSwitchControl.cjs} +27 -36
  25. package/src/lib/components/NetworkPicker/components/NetworkSwitchControl/NetworkSwitchControl.d.ts +16 -0
  26. package/src/lib/components/NetworkPicker/components/{EvmNetworkControl/EvmNetworkControl.js → NetworkSwitchControl/NetworkSwitchControl.js} +27 -35
  27. package/src/lib/components/NetworkPicker/components/NetworkSwitchControl/index.d.ts +1 -0
  28. package/src/lib/components/Portal/Portal.cjs +3 -2
  29. package/src/lib/components/Portal/Portal.js +3 -2
  30. package/src/lib/components/SendBalancePageLayout/SendBalancePageLayout.cjs +1 -1
  31. package/src/lib/components/SendBalancePageLayout/SendBalancePageLayout.js +1 -1
  32. package/src/lib/components/ShadowDOM/ShadowDOM.cjs +0 -2
  33. package/src/lib/components/ShadowDOM/ShadowDOM.js +1 -2
  34. package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.cjs +1 -1
  35. package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.js +1 -1
  36. package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.cjs +1 -1
  37. package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.js +1 -1
  38. package/src/lib/components/UserProfile/UserProfile.cjs +1 -1
  39. package/src/lib/components/UserProfile/UserProfile.js +1 -1
  40. package/src/lib/context/DynamicContext/DynamicContext.cjs +15 -12
  41. package/src/lib/context/DynamicContext/DynamicContext.js +15 -12
  42. package/src/lib/context/DynamicContext/hooks/useEmailLoginState/useEmailLoginState.cjs +2 -2
  43. package/src/lib/context/DynamicContext/hooks/useEmailLoginState/useEmailLoginState.js +3 -3
  44. package/src/lib/context/DynamicContext/hooks/useHandleLogout/useHandleLogout.cjs +0 -4
  45. package/src/lib/context/DynamicContext/hooks/useHandleLogout/useHandleLogout.js +0 -4
  46. package/src/lib/context/DynamicContext/hooks/useNameService/useNameService.cjs +7 -2
  47. package/src/lib/context/DynamicContext/hooks/useNameService/useNameService.js +7 -2
  48. package/src/lib/context/DynamicContext/hooks/usePasskeySuccessPopup/usePasskeySuccessPopup.cjs +2 -2
  49. package/src/lib/context/DynamicContext/hooks/usePasskeySuccessPopup/usePasskeySuccessPopup.js +3 -3
  50. package/src/lib/context/DynamicContext/types/SettingsOverrides.d.ts +5 -2
  51. package/src/lib/context/ErrorContext/ErrorContext.cjs +7 -6
  52. package/src/lib/context/ErrorContext/ErrorContext.js +8 -7
  53. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.cjs +3 -3
  54. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.js +3 -3
  55. package/src/lib/context/ViewContext/ViewContext.cjs +7 -2
  56. package/src/lib/context/ViewContext/ViewContext.js +7 -2
  57. package/src/lib/context/ViewContext/types/index.d.ts +1 -1
  58. package/src/lib/data/api/embeddedWallets/embeddedWallets.cjs +5 -64
  59. package/src/lib/data/api/embeddedWallets/embeddedWallets.d.ts +2 -18
  60. package/src/lib/data/api/embeddedWallets/embeddedWallets.js +6 -61
  61. package/src/lib/data/api/wallets/wallets.cjs +1 -3
  62. package/src/lib/data/api/wallets/wallets.d.ts +1 -1
  63. package/src/lib/data/api/wallets/wallets.js +2 -4
  64. package/src/lib/events/embeddedWallet.d.ts +0 -4
  65. package/src/lib/layout/DynamicAuthLayout/ToSFooter/ToSFooter.cjs +2 -6
  66. package/src/lib/layout/DynamicAuthLayout/ToSFooter/ToSFooter.js +2 -6
  67. package/src/lib/locale/en/translation.cjs +13 -32
  68. package/src/lib/locale/en/translation.d.ts +12 -31
  69. package/src/lib/locale/en/translation.js +13 -32
  70. package/src/lib/main.global.cjs +1 -1
  71. package/src/lib/main.global.js +1 -1
  72. package/src/lib/modals/SyncWalletPromptModal/SyncWalletPromptModal.cjs +8 -8
  73. package/src/lib/modals/SyncWalletPromptModal/SyncWalletPromptModal.js +8 -8
  74. package/src/lib/modals/index.d.ts +0 -2
  75. package/src/lib/shared/assets/index.d.ts +1 -0
  76. package/src/lib/shared/assets/{currency.cjs → wallet-with-sunglasses.cjs} +14 -26
  77. package/src/lib/shared/assets/wallet-with-sunglasses.js +34 -0
  78. package/src/lib/shared/utils/functions/index.d.ts +0 -2
  79. package/src/lib/shared/utils/hooks/useLocalStorage/useLocalStorage.cjs +7 -5
  80. package/src/lib/shared/utils/hooks/useLocalStorage/useLocalStorage.js +8 -6
  81. package/src/lib/styles/index.shadow.cjs +1 -1
  82. package/src/lib/styles/index.shadow.js +1 -1
  83. package/src/lib/utils/functions/index.d.ts +0 -5
  84. package/src/lib/utils/functions/isAllowedToLinkWallet/isAllowedToLinkWallet.cjs +1 -1
  85. package/src/lib/utils/functions/isAllowedToLinkWallet/isAllowedToLinkWallet.js +1 -1
  86. package/src/lib/utils/functions/isNetworkUnsupported/isNetworkUnsupported.cjs +2 -4
  87. package/src/lib/utils/functions/isNetworkUnsupported/isNetworkUnsupported.d.ts +2 -2
  88. package/src/lib/utils/functions/isNetworkUnsupported/isNetworkUnsupported.js +2 -4
  89. package/src/lib/utils/functions/onrampConfigurationToOnrampOption/onrampConfigurationToOnrampOption.cjs +1 -1
  90. package/src/lib/utils/functions/onrampConfigurationToOnrampOption/onrampConfigurationToOnrampOption.js +1 -1
  91. package/src/lib/utils/hooks/index.d.ts +0 -1
  92. package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.cjs +0 -2
  93. package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.js +0 -2
  94. package/src/lib/utils/hooks/useClearWalletConnectSessions/useClearWalletConnectSessions.cjs +2 -2
  95. package/src/lib/utils/hooks/useClearWalletConnectSessions/useClearWalletConnectSessions.js +3 -3
  96. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +16 -4
  97. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +16 -4
  98. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.cjs +3 -3
  99. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.js +3 -3
  100. package/src/lib/utils/hooks/useCreateWalletConnectorOptions/useCreateWalletConnectorOptions.cjs +1 -1
  101. package/src/lib/utils/hooks/useCreateWalletConnectorOptions/useCreateWalletConnectorOptions.js +1 -1
  102. package/src/lib/utils/hooks/useDynamicLayoutData/useDynamicLayoutData.cjs +1 -6
  103. package/src/lib/utils/hooks/useDynamicLayoutData/useDynamicLayoutData.js +1 -6
  104. package/src/lib/utils/hooks/useDynamicModals/useDynamicModals.cjs +1 -1
  105. package/src/lib/utils/hooks/useDynamicModals/useDynamicModals.js +1 -1
  106. package/src/lib/utils/hooks/useElementById/useElementById.cjs +2 -2
  107. package/src/lib/utils/hooks/useElementById/useElementById.js +3 -3
  108. package/src/lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.cjs +1 -13
  109. package/src/lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.js +1 -13
  110. package/src/lib/utils/hooks/useEmbeddedWallet/index.d.ts +0 -1
  111. package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.cjs +7 -23
  112. package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.d.ts +0 -2
  113. package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.js +7 -23
  114. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.cjs +4 -4
  115. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.js +4 -4
  116. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.cjs +3 -3
  117. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.js +3 -3
  118. package/src/lib/utils/hooks/useFundWithWallet/useConnectWalletForFunding/useConnectWalletForFunding.cjs +1 -0
  119. package/src/lib/utils/hooks/useFundWithWallet/useConnectWalletForFunding/useConnectWalletForFunding.js +1 -0
  120. package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs +1 -1
  121. package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js +1 -1
  122. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.cjs +2 -2
  123. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.js +2 -2
  124. package/src/lib/utils/hooks/useResetCookieLocalStorage/useResetCookieLocalStorage.cjs +1 -1
  125. package/src/lib/utils/hooks/useResetCookieLocalStorage/useResetCookieLocalStorage.js +1 -1
  126. package/src/lib/utils/hooks/useSetWalletConnectorFetchers/useSetWalletConnectorFetchers.cjs +11 -18
  127. package/src/lib/utils/hooks/useSetWalletConnectorFetchers/useSetWalletConnectorFetchers.js +12 -19
  128. package/src/lib/utils/hooks/useTransferWallet/useTransferWallet.cjs +4 -4
  129. package/src/lib/utils/hooks/useTransferWallet/useTransferWallet.js +4 -4
  130. package/src/lib/utils/hooks/useUpgradeEmbeddedWallet/useUpgradeEmbeddedWallet.cjs +4 -4
  131. package/src/lib/utils/hooks/useUpgradeEmbeddedWallet/useUpgradeEmbeddedWallet.js +4 -4
  132. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +4 -4
  133. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +4 -4
  134. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.cjs +0 -3
  135. package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.js +0 -3
  136. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +0 -3
  137. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +0 -3
  138. package/src/lib/utils/hooks/useWalletOptions/useWalletOptions.cjs +0 -1
  139. package/src/lib/utils/hooks/useWalletOptions/useWalletOptions.js +0 -1
  140. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.cjs +2 -24
  141. package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.js +2 -24
  142. package/src/lib/utils/validations/index.d.ts +0 -1
  143. package/src/lib/views/CollectUserDataView/CollectUserDataView.cjs +2 -4
  144. package/src/lib/views/CollectUserDataView/CollectUserDataView.js +2 -4
  145. package/src/lib/views/CollectUserDataView/UserDataFields/UserPhoneField/UserPhoneField.cjs +2 -2
  146. package/src/lib/views/CollectUserDataView/UserDataFields/UserPhoneField/UserPhoneField.js +2 -2
  147. package/src/lib/views/EmailVerification/EmailVerification.cjs +4 -4
  148. package/src/lib/views/EmailVerification/EmailVerification.js +4 -4
  149. package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.cjs +12 -34
  150. package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.js +13 -35
  151. package/src/lib/views/LoginView/sections/PhoneNumberSignInSection/PhoneNumberSignInSection.cjs +2 -2
  152. package/src/lib/views/LoginView/sections/PhoneNumberSignInSection/PhoneNumberSignInSection.js +2 -2
  153. package/src/lib/views/MfaDisplayBackupCodesView/MfaDisplayBackupCodesView.cjs +1 -1
  154. package/src/lib/views/MfaDisplayBackupCodesView/MfaDisplayBackupCodesView.js +1 -1
  155. package/src/lib/views/MfaRecoveryView/MfaRecoveryView.cjs +1 -1
  156. package/src/lib/views/MfaRecoveryView/MfaRecoveryView.js +1 -1
  157. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +3 -4
  158. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +3 -4
  159. package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.cjs +1 -1
  160. package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.js +1 -1
  161. package/src/lib/views/SendBalanceView/SendBalanceView.cjs +1 -1
  162. package/src/lib/views/SendBalanceView/SendBalanceView.js +1 -1
  163. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.cjs +11 -11
  164. package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.js +11 -11
  165. package/src/lib/views/viewToComponentMap.cjs +0 -4
  166. package/src/lib/views/viewToComponentMap.d.ts +0 -2
  167. package/src/lib/views/viewToComponentMap.js +0 -4
  168. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs +10 -15
  169. package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js +11 -16
  170. package/src/lib/widgets/DynamicWidget/components/Balance/Balance.cjs +1 -1
  171. package/src/lib/widgets/DynamicWidget/components/Balance/Balance.js +1 -1
  172. package/src/lib/widgets/DynamicWidget/components/DynamicNav/DynamicNav.cjs +2 -6
  173. package/src/lib/widgets/DynamicWidget/components/DynamicNav/DynamicNav.js +2 -6
  174. package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.cjs +3 -3
  175. package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.js +3 -3
  176. package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.cjs +1 -1
  177. package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.js +1 -1
  178. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.cjs +1 -1
  179. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.js +1 -1
  180. package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.types.d.ts +1 -1
  181. package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.cjs +1 -1
  182. package/src/lib/widgets/DynamicWidget/prompts/PendingConnectionModal/PendingConnectionModal.js +1 -1
  183. package/src/lib/widgets/DynamicWidget/views/ChooseOnrampProviderView/ChooseOnrampProviderView.cjs +4 -1
  184. package/src/lib/widgets/DynamicWidget/views/ChooseOnrampProviderView/ChooseOnrampProviderView.js +4 -1
  185. package/src/lib/widgets/DynamicWidget/views/ChooseWalletFundingMethod/ChooseWalletFundingMethod.cjs +1 -1
  186. package/src/lib/widgets/DynamicWidget/views/ChooseWalletFundingMethod/ChooseWalletFundingMethod.js +1 -1
  187. package/src/lib/widgets/DynamicWidget/views/ChooseWalletFundingMethod/useFundingMethods/useFundingMethods.cjs +19 -11
  188. package/src/lib/widgets/DynamicWidget/views/ChooseWalletFundingMethod/useFundingMethods/useFundingMethods.js +19 -11
  189. package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs +2 -2
  190. package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js +2 -2
  191. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/ReceiveExternalWalletFunds.cjs +103 -50
  192. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/ReceiveExternalWalletFunds.js +99 -46
  193. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/TokenSelectScreen/TokenOption/TokenOption.cjs +21 -10
  194. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/TokenSelectScreen/TokenOption/TokenOption.d.ts +2 -0
  195. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/TokenSelectScreen/TokenOption/TokenOption.js +21 -10
  196. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/TokenSelectScreen/TokenSelectScreen.cjs +3 -3
  197. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/TokenSelectScreen/TokenSelectScreen.d.ts +2 -0
  198. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/TokenSelectScreen/TokenSelectScreen.js +3 -3
  199. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/types.d.ts +2 -0
  200. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/calculateFiatBalance/calculateFiatBalance.cjs +27 -0
  201. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/calculateFiatBalance/calculateFiatBalance.d.ts +2 -0
  202. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/calculateFiatBalance/calculateFiatBalance.js +23 -0
  203. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/calculateFiatBalance/index.d.ts +1 -0
  204. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/convert/convert.cjs +4 -0
  205. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/convert/convert.js +4 -0
  206. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/formatValue/convertScientificToDecimal/convertScientificToDecimal.cjs +33 -0
  207. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/formatValue/convertScientificToDecimal/convertScientificToDecimal.d.ts +8 -0
  208. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/formatValue/convertScientificToDecimal/convertScientificToDecimal.js +29 -0
  209. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/formatValue/convertScientificToDecimal/index.d.ts +1 -0
  210. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/formatValue/formatValue.cjs +27 -22
  211. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/formatValue/formatValue.d.ts +6 -0
  212. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/formatValue/formatValue.js +27 -22
  213. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/isFiatToken/isFiatToken.cjs +2 -0
  214. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/isFiatToken/isFiatToken.d.ts +1 -0
  215. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/isFiatToken/isFiatToken.js +2 -1
  216. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/useExchangeRatesForFunding/index.d.ts +1 -0
  217. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/useExchangeRatesForFunding/useExchangeRatesForFunding.cjs +32 -0
  218. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/useExchangeRatesForFunding/useExchangeRatesForFunding.d.ts +9 -0
  219. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/useExchangeRatesForFunding/useExchangeRatesForFunding.js +28 -0
  220. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/useSubmitExternalWalletFunding/useSubmitExternalWalletFunding.cjs +14 -2
  221. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/useSubmitExternalWalletFunding/useSubmitExternalWalletFunding.js +14 -2
  222. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/useTokensForFunding/useTokensForFunding.cjs +27 -15
  223. package/src/lib/widgets/DynamicWidget/views/ReceiveExternalWalletFunds/utils/useTokensForFunding/useTokensForFunding.js +27 -15
  224. package/src/lib/widgets/DynamicWidget/views/SettingsView/EmptyScreen/EmptyScreen.cjs +20 -0
  225. package/src/lib/widgets/DynamicWidget/views/SettingsView/EmptyScreen/EmptyScreen.d.ts +2 -0
  226. package/src/lib/widgets/DynamicWidget/views/SettingsView/EmptyScreen/EmptyScreen.js +16 -0
  227. package/src/lib/widgets/DynamicWidget/views/SettingsView/EmptyScreen/index.d.ts +1 -0
  228. package/src/lib/widgets/DynamicWidget/views/SettingsView/SettingsView.cjs +10 -23
  229. package/src/lib/widgets/DynamicWidget/views/SettingsView/SettingsView.js +11 -24
  230. package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.d.ts +0 -23
  231. package/src/lib/components/NetworkPicker/components/EvmNetworkControl/index.d.ts +0 -1
  232. package/src/lib/components/ToggleVisibilityButton/ToggleVisibilityButton.cjs +0 -113
  233. package/src/lib/components/ToggleVisibilityButton/ToggleVisibilityButton.js +0 -109
  234. package/src/lib/modals/CreatePasswordModal/CreatePasswordModal.cjs +0 -106
  235. package/src/lib/modals/CreatePasswordModal/CreatePasswordModal.d.ts +0 -3
  236. package/src/lib/modals/CreatePasswordModal/CreatePasswordModal.js +0 -102
  237. package/src/lib/modals/CreatePasswordModal/CreatePasswordModal.types.d.ts +0 -5
  238. package/src/lib/modals/CreatePasswordModal/index.d.ts +0 -1
  239. package/src/lib/modals/EnterPasswordModal/EnterPasswordModal.cjs +0 -106
  240. package/src/lib/modals/EnterPasswordModal/EnterPasswordModal.d.ts +0 -3
  241. package/src/lib/modals/EnterPasswordModal/EnterPasswordModal.js +0 -102
  242. package/src/lib/modals/EnterPasswordModal/EnterPasswordModal.types.d.ts +0 -6
  243. package/src/lib/modals/EnterPasswordModal/index.d.ts +0 -1
  244. package/src/lib/shared/assets/alt-key.cjs +0 -55
  245. package/src/lib/shared/assets/alt-key.js +0 -31
  246. package/src/lib/shared/assets/currency.js +0 -46
  247. package/src/lib/shared/assets/lock.cjs +0 -55
  248. package/src/lib/shared/assets/lock.js +0 -31
  249. package/src/lib/shared/assets/save-password-hero.cjs +0 -128
  250. package/src/lib/shared/assets/save-password-hero.js +0 -104
  251. package/src/lib/shared/assets/wallet-claim-hero.cjs +0 -128
  252. package/src/lib/shared/assets/wallet-claim-hero.js +0 -104
  253. package/src/lib/shared/utils/functions/generateRandomPassword/generateRandomPassword.cjs +0 -15
  254. package/src/lib/shared/utils/functions/generateRandomPassword/generateRandomPassword.d.ts +0 -1
  255. package/src/lib/shared/utils/functions/generateRandomPassword/generateRandomPassword.js +0 -11
  256. package/src/lib/shared/utils/functions/generateRandomPassword/index.d.ts +0 -1
  257. package/src/lib/shared/utils/functions/validatePassword/index.d.ts +0 -1
  258. package/src/lib/shared/utils/functions/validatePassword/validatePassword.cjs +0 -60
  259. package/src/lib/shared/utils/functions/validatePassword/validatePassword.d.ts +0 -13
  260. package/src/lib/shared/utils/functions/validatePassword/validatePassword.js +0 -56
  261. package/src/lib/utils/functions/findCoinbaseMPCWallet/findCoinbaseMPCWallet.cjs +0 -8
  262. package/src/lib/utils/functions/findCoinbaseMPCWallet/findCoinbaseMPCWallet.d.ts +0 -2
  263. package/src/lib/utils/functions/findCoinbaseMPCWallet/findCoinbaseMPCWallet.js +0 -4
  264. package/src/lib/utils/functions/findCoinbaseMPCWallet/index.d.ts +0 -1
  265. package/src/lib/utils/functions/getCoinbaseMPCConnectorFetchers/getCoinbaseMPCConnectorFetchers.cjs +0 -53
  266. package/src/lib/utils/functions/getCoinbaseMPCConnectorFetchers/getCoinbaseMPCConnectorFetchers.d.ts +0 -9
  267. package/src/lib/utils/functions/getCoinbaseMPCConnectorFetchers/getCoinbaseMPCConnectorFetchers.js +0 -49
  268. package/src/lib/utils/functions/getCoinbaseMPCConnectorFetchers/index.d.ts +0 -1
  269. package/src/lib/utils/functions/isCoinbaseWaasEnabled/isCoinbaseWaasEnabled.cjs +0 -14
  270. package/src/lib/utils/functions/isCoinbaseWaasEnabled/isCoinbaseWaasEnabled.js +0 -10
  271. package/src/lib/utils/functions/requiresPasswordForEmbeddedWallet/index.d.ts +0 -1
  272. package/src/lib/utils/functions/requiresPasswordForEmbeddedWallet/requiresPasswordForEmbeddedWallet.cjs +0 -16
  273. package/src/lib/utils/functions/requiresPasswordForEmbeddedWallet/requiresPasswordForEmbeddedWallet.d.ts +0 -2
  274. package/src/lib/utils/functions/requiresPasswordForEmbeddedWallet/requiresPasswordForEmbeddedWallet.js +0 -12
  275. package/src/lib/utils/functions/requiresPasswordForEmbeddedWalletOnSignup/index.d.ts +0 -1
  276. package/src/lib/utils/functions/requiresPasswordForEmbeddedWalletOnSignup/requiresPasswordForEmbeddedWalletOnSignup.cjs +0 -39
  277. package/src/lib/utils/functions/requiresPasswordForEmbeddedWalletOnSignup/requiresPasswordForEmbeddedWalletOnSignup.d.ts +0 -2
  278. package/src/lib/utils/functions/requiresPasswordForEmbeddedWalletOnSignup/requiresPasswordForEmbeddedWalletOnSignup.js +0 -35
  279. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/index.d.ts +0 -2
  280. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/index.d.ts +0 -1
  281. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.cjs +0 -229
  282. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.d.ts +0 -5
  283. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.js +0 -225
  284. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useMPCEmbeddedWallet.cjs +0 -191
  285. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useMPCEmbeddedWallet.d.ts +0 -18
  286. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useMPCEmbeddedWallet.js +0 -187
  287. package/src/lib/utils/hooks/useEmbeddedWalletPassword/index.d.ts +0 -1
  288. package/src/lib/utils/hooks/useEmbeddedWalletPassword/useEmbeddedWalletPassword.cjs +0 -141
  289. package/src/lib/utils/hooks/useEmbeddedWalletPassword/useEmbeddedWalletPassword.d.ts +0 -4
  290. package/src/lib/utils/hooks/useEmbeddedWalletPassword/useEmbeddedWalletPassword.js +0 -137
  291. package/src/lib/utils/validations/validateMPCProviderEnabled/index.d.ts +0 -1
  292. package/src/lib/utils/validations/validateMPCProviderEnabled/validateMPCProviderEnabled.cjs +0 -18
  293. package/src/lib/utils/validations/validateMPCProviderEnabled/validateMPCProviderEnabled.d.ts +0 -2
  294. package/src/lib/utils/validations/validateMPCProviderEnabled/validateMPCProviderEnabled.js +0 -14
  295. package/src/lib/views/CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.cjs +0 -116
  296. package/src/lib/views/CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.d.ts +0 -2
  297. package/src/lib/views/CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.js +0 -112
  298. package/src/lib/views/CoinbaseMPCClaimIntro/index.d.ts +0 -1
  299. package/src/lib/views/CreatePasswordView/CreatePasswordStep/CreatePasswordStep.cjs +0 -197
  300. package/src/lib/views/CreatePasswordView/CreatePasswordStep/CreatePasswordStep.d.ts +0 -12
  301. package/src/lib/views/CreatePasswordView/CreatePasswordStep/CreatePasswordStep.js +0 -193
  302. package/src/lib/views/CreatePasswordView/CreatePasswordStep/index.d.ts +0 -1
  303. package/src/lib/views/CreatePasswordView/CreatePasswordView.cjs +0 -169
  304. package/src/lib/views/CreatePasswordView/CreatePasswordView.d.ts +0 -9
  305. package/src/lib/views/CreatePasswordView/CreatePasswordView.js +0 -165
  306. package/src/lib/views/CreatePasswordView/SavePasswordStep/SavePasswordStep.cjs +0 -141
  307. package/src/lib/views/CreatePasswordView/SavePasswordStep/SavePasswordStep.d.ts +0 -12
  308. package/src/lib/views/CreatePasswordView/SavePasswordStep/SavePasswordStep.js +0 -137
  309. package/src/lib/views/CreatePasswordView/SavePasswordStep/index.d.ts +0 -1
  310. package/src/lib/views/CreatePasswordView/index.d.ts +0 -1
  311. package/src/lib/views/EnterPasswordView/EnterPasswordView.cjs +0 -141
  312. package/src/lib/views/EnterPasswordView/EnterPasswordView.d.ts +0 -8
  313. package/src/lib/views/EnterPasswordView/EnterPasswordView.js +0 -137
  314. package/src/lib/views/EnterPasswordView/index.d.ts +0 -1
@@ -1,225 +0,0 @@
1
- 'use client'
2
- import { __awaiter } from '../../../../../../../_virtual/_tslib.js';
3
- import { useCallback } from 'react';
4
- import { PasswordSourceTypeEnum, EmbeddedWalletChainEnum } from '@dynamic-labs/sdk-api-core';
5
- import { isCoinbaseMpcWalletConnector } from '@dynamic-labs/wallet-connector-core';
6
- import { DynamicError } from '@dynamic-labs/utils';
7
- import { createUserProfileFromSdkUser } from '../../../../functions/createUserProfile/createUserProfile.js';
8
- import { findEmbeddedWalletFromVerifiedCredentials } from '../../../../functions/findEmbeddedWalletFromVerifiedCredentials/findEmbeddedWalletFromVerifiedCredentials.js';
9
- import '../../../../constants/values.js';
10
- import { USER_NOT_LOGGED_IN } from '../../../../constants/errors.js';
11
- import '@dynamic-labs/multi-wallet';
12
- import { logger } from '../../../../../shared/logger.js';
13
- import '../../../../constants/colors.js';
14
- import 'react-international-phone';
15
- import '@dynamic-labs/iconic';
16
- import 'react/jsx-runtime';
17
- import '../../../../../context/ViewContext/ViewContext.js';
18
- import '@dynamic-labs/wallet-book';
19
- import { generateRandomPassword } from '../../../../../shared/utils/functions/generateRandomPassword/generateRandomPassword.js';
20
- import '../../../../../shared/consts/index.js';
21
- import { getVerifyArgs } from '../../../../functions/getVerifyArgs/getVerifyArgs.js';
22
- import '../../../../../store/state/projectSettings/projectSettings.js';
23
- import { findCoinbaseMPCWallet } from '../../../../functions/findCoinbaseMPCWallet/findCoinbaseMPCWallet.js';
24
- import { getCoinbaseMPCConnectorFetchers } from '../../../../functions/getCoinbaseMPCConnectorFetchers/getCoinbaseMPCConnectorFetchers.js';
25
- import { updatePrimaryWalletId } from '../../../../functions/updatePrimaryWalletId/updatePrimaryWalletId.js';
26
- import '../../../../../context/DynamicContext/DynamicContext.js';
27
- import { dynamicEvents } from '../../../../../events/dynamicEvents.js';
28
- import '../../../../../context/CaptchaContext/CaptchaContext.js';
29
- import { useErrorContext } from '../../../../../context/ErrorContext/ErrorContext.js';
30
- import '../../../../../context/AccessDeniedContext/AccessDeniedContext.js';
31
- import '../../../../../context/AccountExistsContext/AccountExistsContext.js';
32
- import '../../../../../context/UserWalletsContext/UserWalletsContext.js';
33
- import '../../../../../config/ApiEndpoint.js';
34
- import '../../../../../store/state/user/user.js';
35
- import '../../../../../locale/locale.js';
36
- import { linkWallet } from '../../../../../data/api/wallets/wallets.js';
37
- import { getSiweStatement } from '../../../../functions/getSiweStatement/getSiweStatement.js';
38
- import '../../../../../context/VerificationContext/VerificationContext.js';
39
- import '../../../../../store/state/nonce/nonce.js';
40
- import 'react-dom';
41
- import '../../../../functions/compareChains/compareChains.js';
42
- import '../../../../../context/ThemeContext/ThemeContext.js';
43
- import '../../../useUserUpdateRequest/useUpdateUser/userFieldsSchema.js';
44
- import 'bs58';
45
- import '@dynamic-labs/types';
46
- import '../../../../../context/SocialRedirectContext/SocialRedirectContext.js';
47
- import '../../../../../store/state/primaryWalletId/primaryWalletId.js';
48
- import '../../../../../context/LoadingContext/LoadingContext.js';
49
- import '../../../../../context/WalletContext/WalletContext.js';
50
- import '../../useSecureEnclaveEmbeddedWallet/constants.js';
51
- import 'yup';
52
- import '../../../../../context/MockContext/MockContext.js';
53
- import '../../../../../views/CollectUserDataView/useFields.js';
54
- import '../../../../../context/FieldsStateContext/FieldsStateContext.js';
55
- import '../../../../../context/UserFieldEditorContext/UserFieldEditorContext.js';
56
- import '@dynamic-labs/rpc-providers';
57
- import '../../../../../store/state/loadingAndLifecycle.js';
58
- import '../../../../../store/state/dynamicContextProps/dynamicContextProps.js';
59
- import '../../../../../store/state/walletOptions/walletOptions.js';
60
- import 'react-i18next';
61
- import '../../../../../components/Accordion/components/AccordionItem/AccordionItem.js';
62
- import '../../../../../components/Alert/Alert.js';
63
- import '../../../../../components/ShadowDOM/ShadowDOM.js';
64
- import '../../../../../components/IconButton/IconButton.js';
65
- import '../../../../../components/InlineWidget/InlineWidget.js';
66
- import '../../../../../components/Input/Input.js';
67
- import '../../../../../components/IsBrowser/IsBrowser.js';
68
- import '../../../../../components/MenuList/Dropdown/Dropdown.js';
69
- import '../../../../../components/OverlayCard/OverlayCard.js';
70
- import '../../../../../components/Transition/ZoomTransition/ZoomTransition.js';
71
- import '../../../../../components/Transition/SlideInUpTransition/SlideInUpTransition.js';
72
- import '../../../../../components/Transition/OpacityTransition/OpacityTransition.js';
73
- import '../../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.js';
74
- import '../../../../../components/Popper/Popper/Popper.js';
75
- import '../../../../../components/Popper/PopperContext/PopperContext.js';
76
- import 'react-focus-lock';
77
- import 'qrcode';
78
- import 'formik';
79
- import '../../../useSubdomainCheck/useSubdomainCheck.js';
80
- import '../../../../../context/WalletGroupContext/WalletGroupContext.js';
81
- import '../../../../../context/IpConfigurationContext/IpConfigurationContext.js';
82
- import '../../../../../context/ConnectWithOtpContext/ConnectWithOtpContext.js';
83
- import '../../../../../context/ConnectWithOtpContext/constants.js';
84
- import '../../../../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js';
85
- import '@hcaptcha/react-hcaptcha';
86
- import '../../../../../widgets/DynamicWidget/context/DynamicWidgetContext.js';
87
- import '../../../../../context/FooterAnimationContext/index.js';
88
- import '../../../../../context/PasskeyContext/PasskeyContext.js';
89
- import '../../../../../store/state/sendBalances.js';
90
- import '../../../../../components/OverlayCardBase/OverlayCardTarget/OverlayCardTarget.js';
91
- import '../../../../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js';
92
- import '../../../../../views/TransactionConfirmationView/TransactionConfirmationView.js';
93
- import '../../../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
94
- import '../../../../../context/OnrampContext/OnrampContext.js';
95
- import '../../../../../widgets/DynamicWidget/views/ReceiveExternalWalletFunds/ReceiveExternalWalletFunds.js';
96
- import '../../../../../../index.js';
97
- import '../../../../../store/state/tokenBalances.js';
98
- import '../../../../../shared/utils/functions/getInitialUrl/getInitialUrl.js';
99
- import { useInternalDynamicContext } from '../../../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.js';
100
-
101
- const DYNAMIC_PASSWORD_LENGTH = 20;
102
- const useCoinbaseMPC = () => {
103
- const { user, walletConnectorOptions, environmentId, displaySiweStatement, appName, siweStatement, handleLogOut, setShowAuthFlow, } = useInternalDynamicContext();
104
- const { setError } = useErrorContext();
105
- const returnExistingCoinbaseMPCWallet = useCallback((validatedUser, connector, embeddedWalletVerifiedCredential) => __awaiter(void 0, void 0, void 0, function* () {
106
- var _a;
107
- connector.setVerifiedCredentials(validatedUser.verifiedCredentials);
108
- updatePrimaryWalletId(embeddedWalletVerifiedCredential.id);
109
- const coinbaseMPCWallet = connector.createWallet({
110
- address: (yield (connector === null || connector === void 0 ? void 0 : connector.getAddress())) || '',
111
- chain: connector.connectedChain,
112
- connector,
113
- id: embeddedWalletVerifiedCredential.id,
114
- isAuthenticated: true,
115
- key: (_a = embeddedWalletVerifiedCredential.walletName) !== null && _a !== void 0 ? _a : connector.key,
116
- });
117
- return coinbaseMPCWallet;
118
- }), []);
119
- const linkCoinbaseMPCWallet = useCallback((_b) => __awaiter(void 0, [_b], void 0, function* ({ connector, backupCode, password, source, }) {
120
- const address = yield connector.getAddress();
121
- if (!address)
122
- throw new DynamicError('Missing address');
123
- const verifyArgs = yield getVerifyArgs({
124
- displaySiweStatement,
125
- environmentId,
126
- publicWalletAddress: address,
127
- siweStatement: getSiweStatement({ appName, siweStatement }),
128
- walletConnector: connector,
129
- walletProvider: 'embeddedWallet',
130
- });
131
- const passcodeArgs = source === PasswordSourceTypeEnum.Dynamic
132
- ? { password, passwordSource: source }
133
- : {};
134
- const response = yield linkWallet(environmentId, Object.assign(Object.assign(Object.assign({}, passcodeArgs), verifyArgs), { backup: backupCode }));
135
- if (!response) {
136
- throw new DynamicError('Unable to link wallet');
137
- }
138
- const updatedUserProfile = createUserProfileFromSdkUser(response.user);
139
- const newSelectedCredentialWallet = updatedUserProfile.verifiedCredentials.find((cred) => cred.id === updatedUserProfile.lastVerifiedCredentialId &&
140
- cred.format === 'blockchain');
141
- if (!newSelectedCredentialWallet) {
142
- throw new DynamicError('No primary wallet found');
143
- }
144
- updatePrimaryWalletId(newSelectedCredentialWallet.id);
145
- connector.setVerifiedCredentials(updatedUserProfile.verifiedCredentials);
146
- return { newSelectedCredentialWallet, updatedUser: updatedUserProfile };
147
- }), [appName, displaySiweStatement, environmentId, siweStatement]);
148
- const createNewCoinbaseMPCWallet = useCallback((connector, password) => __awaiter(void 0, void 0, void 0, function* () {
149
- var _c;
150
- const initialWalletPassword = password
151
- ? password
152
- : generateRandomPassword(DYNAMIC_PASSWORD_LENGTH);
153
- const source = password
154
- ? PasswordSourceTypeEnum.User
155
- : PasswordSourceTypeEnum.Dynamic;
156
- try {
157
- const backupCode = yield connector.generateWallet(source, initialWalletPassword);
158
- const { updatedUser, newSelectedCredentialWallet } = yield linkCoinbaseMPCWallet({
159
- backupCode,
160
- connector,
161
- password: initialWalletPassword,
162
- source,
163
- });
164
- const coinbaseMPCWallet = connector.createWallet({
165
- address: (yield (connector === null || connector === void 0 ? void 0 : connector.getAddress())) || '',
166
- chain: connector === null || connector === void 0 ? void 0 : connector.connectedChain,
167
- connector,
168
- id: newSelectedCredentialWallet.id,
169
- isAuthenticated: true,
170
- key: (_c = newSelectedCredentialWallet.walletName) !== null && _c !== void 0 ? _c : connector.key,
171
- });
172
- dynamicEvents.emit('embeddedWalletCreated', coinbaseMPCWallet, newSelectedCredentialWallet, updatedUser);
173
- return coinbaseMPCWallet;
174
- }
175
- catch (error) {
176
- logger.error(error);
177
- if (error instanceof DynamicError &&
178
- error.code === 'create_embedded_wallet_error') {
179
- yield handleLogOut();
180
- setError(error.message);
181
- }
182
- }
183
- return undefined;
184
- }), [linkCoinbaseMPCWallet, handleLogOut, setError]);
185
- const createCoinbaseMPCWallet = useCallback((...args_1) => __awaiter(void 0, [...args_1], void 0, function* (chains = [EmbeddedWalletChainEnum.Evm], password) {
186
- var _d;
187
- if (!user) {
188
- throw new DynamicError(USER_NOT_LOGGED_IN);
189
- }
190
- const connector = (_d = findCoinbaseMPCWallet(walletConnectorOptions)) === null || _d === void 0 ? void 0 : _d.walletConnector;
191
- if (!connector || !isCoinbaseMpcWalletConnector(connector)) {
192
- const error = new DynamicError('CoinbaseWaaSWalletConnectors not found');
193
- logger.error('Failed to create embedded wallet', error);
194
- dynamicEvents.emit('embeddedWalletFailed', error);
195
- setError(error.message);
196
- throw error;
197
- }
198
- setShowAuthFlow(false);
199
- const { fetchAuthToken } = getCoinbaseMPCConnectorFetchers({
200
- environmentId,
201
- });
202
- if (fetchAuthToken) {
203
- connector.setAuthTokenFetcher(fetchAuthToken);
204
- }
205
- const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials(user, chains);
206
- // if user already has embedded wallet, set it as primary wallet and return
207
- if (embeddedWalletVerifiedCredential) {
208
- return returnExistingCoinbaseMPCWallet(user, connector, embeddedWalletVerifiedCredential);
209
- }
210
- return createNewCoinbaseMPCWallet(connector, password);
211
- }), [
212
- user,
213
- walletConnectorOptions,
214
- setShowAuthFlow,
215
- environmentId,
216
- createNewCoinbaseMPCWallet,
217
- setError,
218
- returnExistingCoinbaseMPCWallet,
219
- ]);
220
- return {
221
- createCoinbaseMPCWallet,
222
- };
223
- };
224
-
225
- export { useCoinbaseMPC };
@@ -1,191 +0,0 @@
1
- 'use client'
2
- 'use strict';
3
-
4
- Object.defineProperty(exports, '__esModule', { value: true });
5
-
6
- var _tslib = require('../../../../../../_virtual/_tslib.cjs');
7
- var React = require('react');
8
- var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
9
- var utils = require('@dynamic-labs/utils');
10
- require('../../../../context/DynamicContext/DynamicContext.cjs');
11
- require('@dynamic-labs/sdk-api-core');
12
- require('../../../../shared/logger.cjs');
13
- require('@dynamic-labs/iconic');
14
- require('react/jsx-runtime');
15
- require('../../../../context/ViewContext/ViewContext.cjs');
16
- require('@dynamic-labs/wallet-book');
17
- require('../../../constants/colors.cjs');
18
- require('../../../constants/values.cjs');
19
- require('../../../../shared/consts/index.cjs');
20
- require('../../../../events/dynamicEvents.cjs');
21
- require('../../../../context/CaptchaContext/CaptchaContext.cjs');
22
- require('../../../../context/ErrorContext/ErrorContext.cjs');
23
- var findEmbeddedWalletFromVerifiedCredentials = require('../../../functions/findEmbeddedWalletFromVerifiedCredentials/findEmbeddedWalletFromVerifiedCredentials.cjs');
24
- var errors = require('../../../constants/errors.cjs');
25
- require('@dynamic-labs/multi-wallet');
26
- require('react-international-phone');
27
- var getUserWalletsFromVerifiedCredentials = require('../../../functions/getUserWalletsFromVerifiedCredentials/getUserWalletsFromVerifiedCredentials.cjs');
28
- require('../../../../store/state/nonce/nonce.cjs');
29
- require('../../../../store/state/projectSettings/projectSettings.cjs');
30
- var findCoinbaseMPCWallet = require('../../../functions/findCoinbaseMPCWallet/findCoinbaseMPCWallet.cjs');
31
- var requiresPasswordForEmbeddedWallet = require('../../../functions/requiresPasswordForEmbeddedWallet/requiresPasswordForEmbeddedWallet.cjs');
32
- var requiresPasswordForEmbeddedWalletOnSignup = require('../../../functions/requiresPasswordForEmbeddedWalletOnSignup/requiresPasswordForEmbeddedWalletOnSignup.cjs');
33
- require('../../../../config/ApiEndpoint.cjs');
34
- require('../../../../store/state/user/user.cjs');
35
- require('../../../../locale/locale.cjs');
36
- var hasEmbeddedWallet = require('../../../functions/hasEmbeddedWallet/hasEmbeddedWallet.cjs');
37
- require('../../../../store/state/dynamicContextProps/dynamicContextProps.cjs');
38
- require('../../../../store/state/primaryWalletId/primaryWalletId.cjs');
39
- require('../../../../context/AccessDeniedContext/AccessDeniedContext.cjs');
40
- require('../../../../context/AccountExistsContext/AccountExistsContext.cjs');
41
- require('../../../../context/UserWalletsContext/UserWalletsContext.cjs');
42
- require('../../../../context/VerificationContext/VerificationContext.cjs');
43
- require('react-dom');
44
- require('../../../functions/compareChains/compareChains.cjs');
45
- require('../../../../context/ThemeContext/ThemeContext.cjs');
46
- require('../../useUserUpdateRequest/useUpdateUser/userFieldsSchema.cjs');
47
- require('bs58');
48
- require('@dynamic-labs/types');
49
- require('../../../../context/SocialRedirectContext/SocialRedirectContext.cjs');
50
- require('../../../../context/LoadingContext/LoadingContext.cjs');
51
- var WalletContext = require('../../../../context/WalletContext/WalletContext.cjs');
52
- var validateMPCProviderEnabled = require('../../../validations/validateMPCProviderEnabled/validateMPCProviderEnabled.cjs');
53
- require('../useSecureEnclaveEmbeddedWallet/constants.cjs');
54
- var useEmbeddedWalletPassword = require('../../useEmbeddedWalletPassword/useEmbeddedWalletPassword.cjs');
55
- var useCoinbaseMPC = require('./useCoinbaseMPC/useCoinbaseMPC.cjs');
56
- require('yup');
57
- require('../../../../context/MockContext/MockContext.cjs');
58
- require('../../../../views/CollectUserDataView/useFields.cjs');
59
- require('../../../../context/FieldsStateContext/FieldsStateContext.cjs');
60
- require('../../../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
61
- require('@dynamic-labs/rpc-providers');
62
- require('../../../../store/state/loadingAndLifecycle.cjs');
63
- require('../../../../store/state/walletOptions/walletOptions.cjs');
64
- require('react-i18next');
65
- require('../../../../components/Accordion/components/AccordionItem/AccordionItem.cjs');
66
- require('../../../../components/Alert/Alert.cjs');
67
- require('../../../../components/ShadowDOM/ShadowDOM.cjs');
68
- require('../../../../components/IconButton/IconButton.cjs');
69
- require('../../../../components/InlineWidget/InlineWidget.cjs');
70
- require('../../../../components/Input/Input.cjs');
71
- require('../../../../components/IsBrowser/IsBrowser.cjs');
72
- require('../../../../components/MenuList/Dropdown/Dropdown.cjs');
73
- require('../../../../components/OverlayCard/OverlayCard.cjs');
74
- require('../../../../components/Transition/ZoomTransition/ZoomTransition.cjs');
75
- require('../../../../components/Transition/SlideInUpTransition/SlideInUpTransition.cjs');
76
- require('../../../../components/Transition/OpacityTransition/OpacityTransition.cjs');
77
- require('../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.cjs');
78
- require('../../../../components/Popper/Popper/Popper.cjs');
79
- require('../../../../components/Popper/PopperContext/PopperContext.cjs');
80
- require('react-focus-lock');
81
- require('qrcode');
82
- require('formik');
83
- require('../../useSubdomainCheck/useSubdomainCheck.cjs');
84
- require('../../../../context/WalletGroupContext/WalletGroupContext.cjs');
85
- require('../../../../context/IpConfigurationContext/IpConfigurationContext.cjs');
86
- require('../../../../context/ConnectWithOtpContext/ConnectWithOtpContext.cjs');
87
- require('../../../../context/ConnectWithOtpContext/constants.cjs');
88
- require('../../../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.cjs');
89
- require('@hcaptcha/react-hcaptcha');
90
- require('../../../../widgets/DynamicWidget/context/DynamicWidgetContext.cjs');
91
- require('../../../../context/FooterAnimationContext/index.cjs');
92
- require('../../../../context/PasskeyContext/PasskeyContext.cjs');
93
- require('../../../../store/state/sendBalances.cjs');
94
- require('../../../../components/OverlayCardBase/OverlayCardTarget/OverlayCardTarget.cjs');
95
- require('../../../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs');
96
- require('../../../../views/TransactionConfirmationView/TransactionConfirmationView.cjs');
97
- require('../../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs');
98
- require('../../../../context/OnrampContext/OnrampContext.cjs');
99
- require('../../../../widgets/DynamicWidget/views/ReceiveExternalWalletFunds/ReceiveExternalWalletFunds.cjs');
100
- require('../../../../../index.cjs');
101
- require('../../../../store/state/tokenBalances.cjs');
102
- require('../../../../shared/utils/functions/getInitialUrl/getInitialUrl.cjs');
103
- var useInternalDynamicContext = require('../../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.cjs');
104
-
105
- // Hook exposed to customers and used internally to trigger embedded wallet creation
106
- /**
107
- * @returns {
108
- * createEmbeddedWallet, - creates Dynamic or MPC embedded wallet according to the settings
109
- * createPassword, - creates MPC embedded wallet password
110
- * isLoadingEmbeddedWallet, - loading state of the embedded wallet
111
- * userHasEmbeddedWallet, - checks if the user has an embedded wallet
112
- * }
113
- */
114
- const useMPCEmbeddedWallet = () => {
115
- const { projectSettings, walletConnectorOptions, user } = useInternalDynamicContext.useInternalDynamicContext();
116
- const { createPassword: internalCreatePassword } = useEmbeddedWalletPassword.useEmbeddedWalletPassword();
117
- const { createCoinbaseMPCWallet } = useCoinbaseMPC.useCoinbaseMPC();
118
- const { isLoadingEmbeddedWallet, setIsLoadingEmbeddedWallet } = WalletContext.useWalletContext();
119
- const userHasEmbeddedWallet = () => hasEmbeddedWallet.hasEmbeddedWallet(user, 'coinbase');
120
- const createPassword = React.useCallback((showIntro) => _tslib.__awaiter(void 0, void 0, void 0, function* () { return internalCreatePassword(showIntro); }), [internalCreatePassword]);
121
- const prepareToCreateMPCWallet = React.useCallback((chains) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
122
- var _a, _b, _c;
123
- if (!user) {
124
- throw new utils.DynamicError(errors.USER_NOT_LOGGED_IN);
125
- }
126
- const userWalletsCredentials = getUserWalletsFromVerifiedCredentials.getUserWalletsFromVerifiedCredentials(user);
127
- const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials.findEmbeddedWalletFromVerifiedCredentials(user, chains);
128
- const isManualMode = ((_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _a === void 0 ? void 0 : _a.automaticEmbeddedWalletCreation) === false;
129
- // if user has a wallet and it's not embedded,
130
- // throw error to follow another flow and set up the right wallet
131
- // However, if the user is in manual mode continue.
132
- if ((userWalletsCredentials === null || userWalletsCredentials === void 0 ? void 0 : userWalletsCredentials.length) &&
133
- !embeddedWalletVerifiedCredential &&
134
- !isManualMode) {
135
- throw new utils.EmbeddedWalletException('User already has a linked branded wallet, and manual mode creation is not enabled.');
136
- }
137
- validateMPCProviderEnabled.validateMPCProviderEnabled(projectSettings);
138
- const connector = (_b = findCoinbaseMPCWallet.findCoinbaseMPCWallet(walletConnectorOptions)) === null || _b === void 0 ? void 0 : _b.walletConnector;
139
- if (!walletConnectorCore.isCoinbaseMpcWalletConnector(connector)) {
140
- throw new Error('Coinbase MPC wallet connector not found');
141
- }
142
- // since we can dynamically change the settings from demov2, we need to set
143
- // requires password prop here in case the connector has already been initialized with a different value
144
- connector.setRequiredPassword((_c = requiresPasswordForEmbeddedWallet.requiresPasswordForEmbeddedWallet(projectSettings)) !== null && _c !== void 0 ? _c : false);
145
- }), [user, projectSettings, walletConnectorOptions]);
146
- const canCreateMPCWallet = React.useCallback((chains) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
147
- try {
148
- yield prepareToCreateMPCWallet(chains);
149
- return true;
150
- }
151
- catch (e) {
152
- return false;
153
- }
154
- }), [prepareToCreateMPCWallet]);
155
- const createEmbeddedWallet = React.useCallback((chains) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
156
- if (!user) {
157
- throw new utils.DynamicError(errors.USER_NOT_LOGGED_IN);
158
- }
159
- yield prepareToCreateMPCWallet(chains);
160
- setIsLoadingEmbeddedWallet(true);
161
- let password;
162
- const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials.findEmbeddedWalletFromVerifiedCredentials(user, chains);
163
- if (!embeddedWalletVerifiedCredential &&
164
- requiresPasswordForEmbeddedWalletOnSignup.requiresPasswordForEmbeddedWalletOnSignup(projectSettings)) {
165
- password = yield internalCreatePassword(false, true);
166
- }
167
- const wallet = yield createCoinbaseMPCWallet(chains, password);
168
- setIsLoadingEmbeddedWallet(false);
169
- return wallet;
170
- }), [
171
- user,
172
- createCoinbaseMPCWallet,
173
- internalCreatePassword,
174
- prepareToCreateMPCWallet,
175
- projectSettings,
176
- setIsLoadingEmbeddedWallet,
177
- ]);
178
- const revealEmbeddedWalletKey = () => _tslib.__awaiter(void 0, void 0, void 0, function* () {
179
- throw new utils.DynamicError('Coinbase MPC wallet does not support headless reveal yet');
180
- });
181
- return {
182
- canCreateMPCWallet,
183
- createEmbeddedWallet,
184
- createPassword,
185
- isLoadingEmbeddedWallet,
186
- revealEmbeddedWalletKey,
187
- userHasEmbeddedWallet,
188
- };
189
- };
190
-
191
- exports.useMPCEmbeddedWallet = useMPCEmbeddedWallet;
@@ -1,18 +0,0 @@
1
- import { EmbeddedWalletChainEnum } from '@dynamic-labs/sdk-api-core';
2
- import { Wallet } from '../../../../shared';
3
- /**
4
- * @returns {
5
- * createEmbeddedWallet, - creates Dynamic or MPC embedded wallet according to the settings
6
- * createPassword, - creates MPC embedded wallet password
7
- * isLoadingEmbeddedWallet, - loading state of the embedded wallet
8
- * userHasEmbeddedWallet, - checks if the user has an embedded wallet
9
- * }
10
- */
11
- export declare const useMPCEmbeddedWallet: () => {
12
- readonly canCreateMPCWallet: (chains?: EmbeddedWalletChainEnum[]) => Promise<boolean>;
13
- readonly createEmbeddedWallet: (chains?: EmbeddedWalletChainEnum[]) => Promise<Wallet | undefined>;
14
- readonly createPassword: (showIntro?: boolean) => Promise<string>;
15
- readonly isLoadingEmbeddedWallet: boolean;
16
- readonly revealEmbeddedWalletKey: () => Promise<never>;
17
- readonly userHasEmbeddedWallet: () => boolean;
18
- };
@@ -1,187 +0,0 @@
1
- 'use client'
2
- import { __awaiter } from '../../../../../../_virtual/_tslib.js';
3
- import { useCallback } from 'react';
4
- import { isCoinbaseMpcWalletConnector } from '@dynamic-labs/wallet-connector-core';
5
- import { DynamicError, EmbeddedWalletException } from '@dynamic-labs/utils';
6
- import '../../../../context/DynamicContext/DynamicContext.js';
7
- import '@dynamic-labs/sdk-api-core';
8
- import '../../../../shared/logger.js';
9
- import '@dynamic-labs/iconic';
10
- import 'react/jsx-runtime';
11
- import '../../../../context/ViewContext/ViewContext.js';
12
- import '@dynamic-labs/wallet-book';
13
- import '../../../constants/colors.js';
14
- import '../../../constants/values.js';
15
- import '../../../../shared/consts/index.js';
16
- import '../../../../events/dynamicEvents.js';
17
- import '../../../../context/CaptchaContext/CaptchaContext.js';
18
- import '../../../../context/ErrorContext/ErrorContext.js';
19
- import { findEmbeddedWalletFromVerifiedCredentials } from '../../../functions/findEmbeddedWalletFromVerifiedCredentials/findEmbeddedWalletFromVerifiedCredentials.js';
20
- import { USER_NOT_LOGGED_IN } from '../../../constants/errors.js';
21
- import '@dynamic-labs/multi-wallet';
22
- import 'react-international-phone';
23
- import { getUserWalletsFromVerifiedCredentials } from '../../../functions/getUserWalletsFromVerifiedCredentials/getUserWalletsFromVerifiedCredentials.js';
24
- import '../../../../store/state/nonce/nonce.js';
25
- import '../../../../store/state/projectSettings/projectSettings.js';
26
- import { findCoinbaseMPCWallet } from '../../../functions/findCoinbaseMPCWallet/findCoinbaseMPCWallet.js';
27
- import { requiresPasswordForEmbeddedWallet } from '../../../functions/requiresPasswordForEmbeddedWallet/requiresPasswordForEmbeddedWallet.js';
28
- import { requiresPasswordForEmbeddedWalletOnSignup } from '../../../functions/requiresPasswordForEmbeddedWalletOnSignup/requiresPasswordForEmbeddedWalletOnSignup.js';
29
- import '../../../../config/ApiEndpoint.js';
30
- import '../../../../store/state/user/user.js';
31
- import '../../../../locale/locale.js';
32
- import { hasEmbeddedWallet } from '../../../functions/hasEmbeddedWallet/hasEmbeddedWallet.js';
33
- import '../../../../store/state/dynamicContextProps/dynamicContextProps.js';
34
- import '../../../../store/state/primaryWalletId/primaryWalletId.js';
35
- import '../../../../context/AccessDeniedContext/AccessDeniedContext.js';
36
- import '../../../../context/AccountExistsContext/AccountExistsContext.js';
37
- import '../../../../context/UserWalletsContext/UserWalletsContext.js';
38
- import '../../../../context/VerificationContext/VerificationContext.js';
39
- import 'react-dom';
40
- import '../../../functions/compareChains/compareChains.js';
41
- import '../../../../context/ThemeContext/ThemeContext.js';
42
- import '../../useUserUpdateRequest/useUpdateUser/userFieldsSchema.js';
43
- import 'bs58';
44
- import '@dynamic-labs/types';
45
- import '../../../../context/SocialRedirectContext/SocialRedirectContext.js';
46
- import '../../../../context/LoadingContext/LoadingContext.js';
47
- import { useWalletContext } from '../../../../context/WalletContext/WalletContext.js';
48
- import { validateMPCProviderEnabled } from '../../../validations/validateMPCProviderEnabled/validateMPCProviderEnabled.js';
49
- import '../useSecureEnclaveEmbeddedWallet/constants.js';
50
- import { useEmbeddedWalletPassword } from '../../useEmbeddedWalletPassword/useEmbeddedWalletPassword.js';
51
- import { useCoinbaseMPC } from './useCoinbaseMPC/useCoinbaseMPC.js';
52
- import 'yup';
53
- import '../../../../context/MockContext/MockContext.js';
54
- import '../../../../views/CollectUserDataView/useFields.js';
55
- import '../../../../context/FieldsStateContext/FieldsStateContext.js';
56
- import '../../../../context/UserFieldEditorContext/UserFieldEditorContext.js';
57
- import '@dynamic-labs/rpc-providers';
58
- import '../../../../store/state/loadingAndLifecycle.js';
59
- import '../../../../store/state/walletOptions/walletOptions.js';
60
- import 'react-i18next';
61
- import '../../../../components/Accordion/components/AccordionItem/AccordionItem.js';
62
- import '../../../../components/Alert/Alert.js';
63
- import '../../../../components/ShadowDOM/ShadowDOM.js';
64
- import '../../../../components/IconButton/IconButton.js';
65
- import '../../../../components/InlineWidget/InlineWidget.js';
66
- import '../../../../components/Input/Input.js';
67
- import '../../../../components/IsBrowser/IsBrowser.js';
68
- import '../../../../components/MenuList/Dropdown/Dropdown.js';
69
- import '../../../../components/OverlayCard/OverlayCard.js';
70
- import '../../../../components/Transition/ZoomTransition/ZoomTransition.js';
71
- import '../../../../components/Transition/SlideInUpTransition/SlideInUpTransition.js';
72
- import '../../../../components/Transition/OpacityTransition/OpacityTransition.js';
73
- import '../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.js';
74
- import '../../../../components/Popper/Popper/Popper.js';
75
- import '../../../../components/Popper/PopperContext/PopperContext.js';
76
- import 'react-focus-lock';
77
- import 'qrcode';
78
- import 'formik';
79
- import '../../useSubdomainCheck/useSubdomainCheck.js';
80
- import '../../../../context/WalletGroupContext/WalletGroupContext.js';
81
- import '../../../../context/IpConfigurationContext/IpConfigurationContext.js';
82
- import '../../../../context/ConnectWithOtpContext/ConnectWithOtpContext.js';
83
- import '../../../../context/ConnectWithOtpContext/constants.js';
84
- import '../../../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js';
85
- import '@hcaptcha/react-hcaptcha';
86
- import '../../../../widgets/DynamicWidget/context/DynamicWidgetContext.js';
87
- import '../../../../context/FooterAnimationContext/index.js';
88
- import '../../../../context/PasskeyContext/PasskeyContext.js';
89
- import '../../../../store/state/sendBalances.js';
90
- import '../../../../components/OverlayCardBase/OverlayCardTarget/OverlayCardTarget.js';
91
- import '../../../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js';
92
- import '../../../../views/TransactionConfirmationView/TransactionConfirmationView.js';
93
- import '../../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
94
- import '../../../../context/OnrampContext/OnrampContext.js';
95
- import '../../../../widgets/DynamicWidget/views/ReceiveExternalWalletFunds/ReceiveExternalWalletFunds.js';
96
- import '../../../../../index.js';
97
- import '../../../../store/state/tokenBalances.js';
98
- import '../../../../shared/utils/functions/getInitialUrl/getInitialUrl.js';
99
- import { useInternalDynamicContext } from '../../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.js';
100
-
101
- // Hook exposed to customers and used internally to trigger embedded wallet creation
102
- /**
103
- * @returns {
104
- * createEmbeddedWallet, - creates Dynamic or MPC embedded wallet according to the settings
105
- * createPassword, - creates MPC embedded wallet password
106
- * isLoadingEmbeddedWallet, - loading state of the embedded wallet
107
- * userHasEmbeddedWallet, - checks if the user has an embedded wallet
108
- * }
109
- */
110
- const useMPCEmbeddedWallet = () => {
111
- const { projectSettings, walletConnectorOptions, user } = useInternalDynamicContext();
112
- const { createPassword: internalCreatePassword } = useEmbeddedWalletPassword();
113
- const { createCoinbaseMPCWallet } = useCoinbaseMPC();
114
- const { isLoadingEmbeddedWallet, setIsLoadingEmbeddedWallet } = useWalletContext();
115
- const userHasEmbeddedWallet = () => hasEmbeddedWallet(user, 'coinbase');
116
- const createPassword = useCallback((showIntro) => __awaiter(void 0, void 0, void 0, function* () { return internalCreatePassword(showIntro); }), [internalCreatePassword]);
117
- const prepareToCreateMPCWallet = useCallback((chains) => __awaiter(void 0, void 0, void 0, function* () {
118
- var _a, _b, _c;
119
- if (!user) {
120
- throw new DynamicError(USER_NOT_LOGGED_IN);
121
- }
122
- const userWalletsCredentials = getUserWalletsFromVerifiedCredentials(user);
123
- const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials(user, chains);
124
- const isManualMode = ((_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _a === void 0 ? void 0 : _a.automaticEmbeddedWalletCreation) === false;
125
- // if user has a wallet and it's not embedded,
126
- // throw error to follow another flow and set up the right wallet
127
- // However, if the user is in manual mode continue.
128
- if ((userWalletsCredentials === null || userWalletsCredentials === void 0 ? void 0 : userWalletsCredentials.length) &&
129
- !embeddedWalletVerifiedCredential &&
130
- !isManualMode) {
131
- throw new EmbeddedWalletException('User already has a linked branded wallet, and manual mode creation is not enabled.');
132
- }
133
- validateMPCProviderEnabled(projectSettings);
134
- const connector = (_b = findCoinbaseMPCWallet(walletConnectorOptions)) === null || _b === void 0 ? void 0 : _b.walletConnector;
135
- if (!isCoinbaseMpcWalletConnector(connector)) {
136
- throw new Error('Coinbase MPC wallet connector not found');
137
- }
138
- // since we can dynamically change the settings from demov2, we need to set
139
- // requires password prop here in case the connector has already been initialized with a different value
140
- connector.setRequiredPassword((_c = requiresPasswordForEmbeddedWallet(projectSettings)) !== null && _c !== void 0 ? _c : false);
141
- }), [user, projectSettings, walletConnectorOptions]);
142
- const canCreateMPCWallet = useCallback((chains) => __awaiter(void 0, void 0, void 0, function* () {
143
- try {
144
- yield prepareToCreateMPCWallet(chains);
145
- return true;
146
- }
147
- catch (e) {
148
- return false;
149
- }
150
- }), [prepareToCreateMPCWallet]);
151
- const createEmbeddedWallet = useCallback((chains) => __awaiter(void 0, void 0, void 0, function* () {
152
- if (!user) {
153
- throw new DynamicError(USER_NOT_LOGGED_IN);
154
- }
155
- yield prepareToCreateMPCWallet(chains);
156
- setIsLoadingEmbeddedWallet(true);
157
- let password;
158
- const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials(user, chains);
159
- if (!embeddedWalletVerifiedCredential &&
160
- requiresPasswordForEmbeddedWalletOnSignup(projectSettings)) {
161
- password = yield internalCreatePassword(false, true);
162
- }
163
- const wallet = yield createCoinbaseMPCWallet(chains, password);
164
- setIsLoadingEmbeddedWallet(false);
165
- return wallet;
166
- }), [
167
- user,
168
- createCoinbaseMPCWallet,
169
- internalCreatePassword,
170
- prepareToCreateMPCWallet,
171
- projectSettings,
172
- setIsLoadingEmbeddedWallet,
173
- ]);
174
- const revealEmbeddedWalletKey = () => __awaiter(void 0, void 0, void 0, function* () {
175
- throw new DynamicError('Coinbase MPC wallet does not support headless reveal yet');
176
- });
177
- return {
178
- canCreateMPCWallet,
179
- createEmbeddedWallet,
180
- createPassword,
181
- isLoadingEmbeddedWallet,
182
- revealEmbeddedWalletKey,
183
- userHasEmbeddedWallet,
184
- };
185
- };
186
-
187
- export { useMPCEmbeddedWallet };
@@ -1 +0,0 @@
1
- export { useEmbeddedWalletPassword } from './useEmbeddedWalletPassword';