@privy-io/react-auth 3.16.0 → 3.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (375) hide show
  1. package/dist/cjs/AccountNotFoundScreen-B_Ii7HuZ.js +1 -0
  2. package/dist/cjs/{Address-DTfphH3Q.js → Address-DVa7_frc.js} +1 -1
  3. package/dist/cjs/AffirmativeConsentScreen-B7KmE68B.js +6 -0
  4. package/dist/cjs/AllowlistRejectionScreen-O8KznddG.js +1 -0
  5. package/dist/cjs/AuthenticateWithWalletScreen-C8K-iZIK.js +1 -0
  6. package/dist/cjs/AwaitingEvmToSolBridgingScreen-cOTXpUAv.js +2 -0
  7. package/dist/cjs/AwaitingExternalEthereumTransferScreen-yMOq8AmY.js +2 -0
  8. package/dist/cjs/AwaitingPasswordlessCodeScreen-lFFqycAd.js +103 -0
  9. package/dist/cjs/AwaitingSolToEvmBridgingScreen-DmvP14kc.js +2 -0
  10. package/dist/cjs/{BridgeNetworkSelectionView-xdYr4mxx.js → BridgeNetworkSelectionView-pkX-b3EU.js} +3 -3
  11. package/dist/cjs/CaptchaScreen-C0GEjNbh.js +1 -0
  12. package/dist/cjs/CoinbaseOnrampStatusScreen-yT0aNgm6.js +16 -0
  13. package/dist/cjs/ConnectEmailForm-BBb0J8Qw.js +3 -0
  14. package/dist/cjs/ConnectLedgerScreen-DUt1xIAQ.js +9 -0
  15. package/dist/cjs/ConnectOnlyLandingScreen-DsDH4IPK.js +1 -0
  16. package/dist/cjs/ConnectOnlyStatusScreen-DHifzxdh.js +1 -0
  17. package/dist/cjs/ConnectOrCreateScreen-BUgdLxoo.js +1 -0
  18. package/dist/cjs/{ConnectPhoneForm-BYX8kgCj.js → ConnectPhoneForm-Cz02aWfj.js} +1 -1
  19. package/dist/cjs/{ConnectWalletView-QyJORAZG.js → ConnectWalletView-CWInrfMx.js} +1 -1
  20. package/dist/cjs/ConnectionStatusScreen-BVrAip_u.js +7 -0
  21. package/dist/cjs/CrossAppAuthScreen-BlSprwdt.js +1 -0
  22. package/dist/cjs/{CustomLandingScreenView-Cx9QR2CX.js → CustomLandingScreenView-FFU4u8kB.js} +6 -6
  23. package/dist/cjs/DelegatedActionsConsentScreen-2K48Ywrm.js +1 -0
  24. package/dist/cjs/DelegatedActionsRevokeScreen-AuQpKTzg.js +1 -0
  25. package/dist/cjs/EmbeddedWalletConnectingScreen-C4LTqs6h.js +1 -0
  26. package/dist/cjs/EmbeddedWalletCreatedScreen-C32Uofc9.js +1 -0
  27. package/dist/cjs/{EmbeddedWalletKeyExportScreen-wfa1ho1-.js → EmbeddedWalletKeyExportScreen-SnvHNrgu.js} +4 -4
  28. package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-osK2tW68.js +1 -0
  29. package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-DKWmdrJ6.js +1 -0
  30. package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-DqSEVO7w.js +1 -0
  31. package/dist/cjs/{EnrollTotp-BzmjXzYC.js → EnrollTotp-CXMhvYqd.js} +8 -8
  32. package/dist/cjs/ErrorScreen-CPJ98NuU.js +4 -0
  33. package/dist/cjs/{FarcasterConnectStatusScreen-s3pS-ZH-.js → FarcasterConnectStatusScreen-D13iXt7h.js} +5 -5
  34. package/dist/cjs/FarcasterSignerStatusScreen-Bf_kP9J_.js +29 -0
  35. package/dist/cjs/FiatOnrampScreen-BV4GPQv0.js +97 -0
  36. package/dist/cjs/FundSolWalletWithExternalSolanaWallet-85QbPj5Z.js +2 -0
  37. package/dist/cjs/FundWalletMethodHeader-CcRikV5C.js +1 -0
  38. package/dist/cjs/FundWithBankDepositScreen-CETUOydb.js +58 -0
  39. package/dist/cjs/FundingEditAmountScreen-ro3pfZTg.js +1 -0
  40. package/dist/cjs/FundingMethodSelectionScreen-ecxVf53z.js +1 -0
  41. package/dist/cjs/InAppBrowserLoginNotPossible-BaL0j2oh.js +1 -0
  42. package/dist/cjs/InstallWalletScreen-D8WdMq8Y.js +1 -0
  43. package/dist/cjs/LandingScreen-D3EKQEkC.js +1 -0
  44. package/dist/cjs/{LinkConflictScreen-DnHf7IMX.js → LinkConflictScreen-Ch0YDBOh.js} +3 -3
  45. package/dist/cjs/LinkEmailScreen-BiHRv43F.js +1 -0
  46. package/dist/cjs/{LinkPasskeyScreen-CTN6f7yX.js → LinkPasskeyScreen-BkAhVm_K.js} +12 -12
  47. package/dist/cjs/LinkPhoneScreen-SMbGlFFp.js +1 -0
  48. package/dist/cjs/LoginFailedScreen-gThOR4ql.js +1 -0
  49. package/dist/cjs/ManualTransferScreen-C6_MKYQa.js +1 -0
  50. package/dist/cjs/MfaAuthEnrollmentFlowScreen-BGwEDhYM.js +1 -0
  51. package/dist/cjs/MfaAuthVerifyFlowScreen-FkpTmQLM.js +1 -0
  52. package/dist/cjs/MfaEnrollmentFlowScreen-D68k3d6k.js +1 -0
  53. package/dist/cjs/MfaVerifyFlowScreen-DPiE_Oju.js +1 -0
  54. package/dist/cjs/{ModalHeader-CakS8Dcu.js → ModalHeader-DGIBNq1A.js} +1 -1
  55. package/dist/cjs/MoonpayStatusScreen-Bwey-ZFS.js +16 -0
  56. package/dist/cjs/OAuthStatusScreen-DCIvmlua.js +1 -0
  57. package/dist/cjs/PasskeySelectSignupOrLogin-BrsgZDWY.js +1 -0
  58. package/dist/cjs/PasskeyStatusScreen-CRdrwEDq.js +3 -0
  59. package/dist/cjs/PasswordRecoveryScreen-nT66Ca8q.js +20 -0
  60. package/dist/cjs/{QrCode-C-Mk5-26.js → QrCode-Di8xGbem.js} +1 -1
  61. package/dist/cjs/RecoveryOAuthStatusScreen-BC6heUn-.js +1 -0
  62. package/dist/cjs/RecoveryPasswordCreateScreen-D6M_6kN8.js +1 -0
  63. package/dist/cjs/{RecoverySelectionScreen-BAJ1nLeO.js → RecoverySelectionScreen-BDCnVnE6.js} +2 -2
  64. package/dist/cjs/{Screen-Dp9-H_S8.js → Screen-B1vrS1Ly.js} +1 -1
  65. package/dist/cjs/{ScreenLayout-DANQ0V5E.js → ScreenLayout-yf03MRVf.js} +1 -1
  66. package/dist/cjs/SelectSourceAsset-BzCWfa5L.js +112 -0
  67. package/dist/cjs/SetAutomaticRecoveryScreen-CVn23TKd.js +14 -0
  68. package/dist/cjs/{SetWalletPasswordForm-B7bBDQ8N.js → SetWalletPasswordForm-0S2ymSzL.js} +4 -4
  69. package/dist/cjs/{SignRequestScreen-BUvgSx9X.js → SignRequestScreen-CPgU7Wo3.js} +4 -4
  70. package/dist/cjs/{StandardSignAndSendTransactionScreen-CzfhyIDP.js → StandardSignAndSendTransactionScreen-C-E3j4dP.js} +2 -2
  71. package/dist/cjs/TelegramAuthScreen-DiYpzHoT.js +1 -0
  72. package/dist/cjs/{TransactionDetails-BlPOqfEn.js → TransactionDetails-CHdkf5Rb.js} +1 -1
  73. package/dist/cjs/{TransactionErrorView-BpXI1X_G.js → TransactionErrorView-D1Nh7N_d.js} +4 -4
  74. package/dist/cjs/{TransferFromWalletScreen-Ds1sknGn.js → TransferFromWalletScreen-h9tRPXBH.js} +2 -2
  75. package/dist/cjs/{TransferOrBridgeLoadingScreen-CAYUlR4u.js → TransferOrBridgeLoadingScreen-DQZIn6hw.js} +2 -2
  76. package/dist/cjs/UpdateEmailScreen-BY3xMHK8.js +1 -0
  77. package/dist/cjs/UpdatePhoneScreen-ChbBiqBC.js +1 -0
  78. package/dist/cjs/UserLimitReachedScreen-AJZpREqN.js +1 -0
  79. package/dist/cjs/{WalletInfoCard-CRZt0t3t.js → WalletInfoCard-BfZ3_ji-.js} +6 -6
  80. package/dist/cjs/WalletInterstitialScreen-DRz63LSO.js +1 -0
  81. package/dist/cjs/{WalletLink-Cx_Zda0m.js → WalletLink--xpsJ0_X.js} +5 -5
  82. package/dist/cjs/{WalletOverflowButton-cnlzyqcK.js → WalletOverflowButton-B81EzN7L.js} +1 -1
  83. package/dist/cjs/{WarningBanner-COl_Q0K3.js → WarningBanner-DUcGaIpZ.js} +1 -1
  84. package/dist/cjs/abstract-smart-wallets.js +1 -1
  85. package/dist/cjs/{context-BAmjgwZ7.js → context-DTLyrNSs.js} +1 -1
  86. package/dist/cjs/{ethers-D8g2mvSK.js → ethers-DkYZ2n_L.js} +1 -1
  87. package/dist/cjs/extended-chains.js +1 -1
  88. package/dist/cjs/{getErc20Balance-C6ZUC_1B.js → getErc20Balance-CZkdpSqJ.js} +1 -1
  89. package/dist/cjs/{getErc20TokenInfo-DprFN1Dj.js → getErc20TokenInfo-B7OUw6ca.js} +1 -1
  90. package/dist/cjs/{index-BohqOluI.js → index-BbTBzvbB.js} +5 -5
  91. package/dist/cjs/{index-DIKBRogK.js → index-DLnQPdlD.js} +2 -2
  92. package/dist/cjs/index-DVVwP01f.js +1 -0
  93. package/dist/cjs/index.js +1 -1
  94. package/dist/cjs/internal.js +1 -1
  95. package/dist/cjs/privy-context-CqCBaHHR.js +1 -0
  96. package/dist/cjs/{shared-C-w7sNT2.js → shared-BrHBD7Qj.js} +1 -1
  97. package/dist/cjs/{shouldProceedtoEmbeddedWalletCreationFlow-DAiUXgPZ.js → shouldProceedtoEmbeddedWalletCreationFlow-By7HZi5X.js} +1 -1
  98. package/dist/cjs/smart-wallets-CXiwZqOu.js +1 -0
  99. package/dist/cjs/smart-wallets.js +1 -1
  100. package/dist/cjs/solana.js +1 -1
  101. package/dist/cjs/{styles-s2f3dL_6.js → styles-BU6XkGeI.js} +4 -4
  102. package/dist/cjs/{to-ui-error-CqnwRcKJ.js → to-ui-error-Bxoctv93.js} +1 -1
  103. package/dist/cjs/ui.js +1 -1
  104. package/dist/cjs/use-export-wallet-B4aMG55I.js +1 -0
  105. package/dist/cjs/use-export-wallet-CJFX3PX0.js +1 -0
  106. package/dist/cjs/{useActiveWallet-CYUR_x0A.js → useActiveWallet-DEJxYDtx.js} +1 -1
  107. package/dist/cjs/{useGetTokenPrice-X3dW0I3y.js → useGetTokenPrice-zMimik1y.js} +1 -1
  108. package/dist/cjs/{useI18n-BsableMs.js → useI18n-CttJorXw.js} +1 -1
  109. package/dist/cjs/usePrivy-B61TDDeF.js +1 -0
  110. package/dist/cjs/{useSolanaRpcClient-BhX1Bzre.js → useSolanaRpcClient-B5g3sWrW.js} +1 -1
  111. package/dist/cjs/{useWalletBalance-CcicA-jd.js → useWalletBalance-BD5uRFtG.js} +1 -1
  112. package/dist/cjs/useWallets-BsO73htS.js +1 -0
  113. package/dist/cjs/useWallets-CAFhVWLf.js +1 -0
  114. package/dist/dts/{events-context-DJ7XN_9I.d.mts → events-context-BXis4NRh.d.mts} +1 -1
  115. package/dist/dts/{events-context-DJ7XN_9I.d.ts → events-context-BXis4NRh.d.ts} +1 -1
  116. package/dist/dts/extended-chains.d.mts +1 -1
  117. package/dist/dts/extended-chains.d.ts +1 -1
  118. package/dist/dts/farcaster.d.mts +1 -1
  119. package/dist/dts/farcaster.d.ts +1 -1
  120. package/dist/dts/index.d.mts +41 -8
  121. package/dist/dts/index.d.ts +41 -8
  122. package/dist/dts/internal.d.mts +1 -1
  123. package/dist/dts/internal.d.ts +1 -1
  124. package/dist/dts/smart-wallets.d.mts +1 -1
  125. package/dist/dts/smart-wallets.d.ts +1 -1
  126. package/dist/dts/solana.d.mts +3 -3
  127. package/dist/dts/solana.d.ts +3 -3
  128. package/dist/dts/{types-CrwMc83t.d.mts → types-Bc9w_mgT.d.mts} +3 -2
  129. package/dist/dts/{types-CrwMc83t.d.ts → types-Bc9w_mgT.d.ts} +3 -2
  130. package/dist/dts/ui.d.mts +1 -1
  131. package/dist/dts/ui.d.ts +1 -1
  132. package/dist/esm/AccountNotFoundScreen-qafr9ivT.mjs +1 -0
  133. package/dist/esm/{Address-Cbulz6Wu.mjs → Address-B99EaiMb.mjs} +1 -1
  134. package/dist/esm/AffirmativeConsentScreen-CIqvK8m6.mjs +6 -0
  135. package/dist/esm/AllowlistRejectionScreen-DU4DWBPE.mjs +1 -0
  136. package/dist/esm/AuthenticateWithWalletScreen-XPD7DrVO.mjs +1 -0
  137. package/dist/esm/AwaitingEvmToSolBridgingScreen-DD0jtqOa.mjs +2 -0
  138. package/dist/esm/AwaitingExternalEthereumTransferScreen-DzTmic9m.mjs +2 -0
  139. package/dist/esm/AwaitingPasswordlessCodeScreen-7QOTS6b-.mjs +103 -0
  140. package/dist/esm/AwaitingSolToEvmBridgingScreen-DYZZooDp.mjs +2 -0
  141. package/dist/esm/{BridgeNetworkSelectionView-nrYQOGZA.mjs → BridgeNetworkSelectionView-CmMVzAX5.mjs} +5 -5
  142. package/dist/esm/CaptchaScreen-DhwS3FJh.mjs +1 -0
  143. package/dist/esm/CoinbaseOnrampStatusScreen-CTrA4xKy.mjs +16 -0
  144. package/dist/esm/ConnectEmailForm-yaDsKJmn.mjs +3 -0
  145. package/dist/esm/ConnectLedgerScreen-O8ZnkCDn.mjs +9 -0
  146. package/dist/esm/ConnectOnlyLandingScreen-BUO28erJ.mjs +1 -0
  147. package/dist/esm/ConnectOnlyStatusScreen-Dy6oAk17.mjs +1 -0
  148. package/dist/esm/ConnectOrCreateScreen-H52RmK3k.mjs +1 -0
  149. package/dist/esm/{ConnectPhoneForm-D8SHd_ge.mjs → ConnectPhoneForm-SXho-ZCl.mjs} +1 -1
  150. package/dist/esm/{ConnectWalletView-By6eXfKl.mjs → ConnectWalletView-mm5nV3qj.mjs} +1 -1
  151. package/dist/esm/ConnectionStatusScreen-XXeNlflJ.mjs +7 -0
  152. package/dist/esm/CrossAppAuthScreen-bAev2vFm.mjs +1 -0
  153. package/dist/esm/{CustomLandingScreenView-Co0nHKPw.mjs → CustomLandingScreenView-e-NPZniC.mjs} +4 -4
  154. package/dist/esm/DelegatedActionsConsentScreen-C2uGvUf3.mjs +1 -0
  155. package/dist/esm/DelegatedActionsRevokeScreen-DIURa5L6.mjs +1 -0
  156. package/dist/esm/EmbeddedWalletConnectingScreen-CznyXfNg.mjs +1 -0
  157. package/dist/esm/EmbeddedWalletCreatedScreen-Vch95Jje.mjs +1 -0
  158. package/dist/esm/EmbeddedWalletKeyExportScreen-kW2-IWjW.mjs +40 -0
  159. package/dist/esm/EmbeddedWalletOnAccountCreateScreen-DtrWxrnI.mjs +1 -0
  160. package/dist/esm/EmbeddedWalletPasswordUpdateScreen-QLodnJ1t.mjs +1 -0
  161. package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-B0gtNXG6.mjs +1 -0
  162. package/dist/esm/{EnrollTotp-nZPSS3Ux.mjs → EnrollTotp-Du2Tjgrx.mjs} +5 -5
  163. package/dist/esm/ErrorScreen-P5oZf9cz.mjs +4 -0
  164. package/dist/esm/{FarcasterConnectStatusScreen-BdwUuSkv.mjs → FarcasterConnectStatusScreen-dpPMJ4I7.mjs} +8 -8
  165. package/dist/esm/FarcasterSignerStatusScreen-COkxl1bH.mjs +28 -0
  166. package/dist/esm/FiatOnrampScreen-Ci0mAJY4.mjs +97 -0
  167. package/dist/esm/FundSolWalletWithExternalSolanaWallet-DW0tS4tS.mjs +1 -0
  168. package/dist/esm/FundWalletMethodHeader-D38FBVVM.mjs +1 -0
  169. package/dist/esm/FundWithBankDepositScreen-Dk_IouhM.mjs +58 -0
  170. package/dist/esm/FundingEditAmountScreen-BLsQoL4e.mjs +1 -0
  171. package/dist/esm/FundingMethodSelectionScreen-OlDe5HS2.mjs +1 -0
  172. package/dist/esm/InAppBrowserLoginNotPossible-BV3tTire.mjs +1 -0
  173. package/dist/esm/InstallWalletScreen-BMmSUe34.mjs +1 -0
  174. package/dist/esm/LandingScreen-B83IEgoc.mjs +1 -0
  175. package/dist/esm/{LinkConflictScreen-DNGVg8dW.mjs → LinkConflictScreen-DNiusVkA.mjs} +3 -3
  176. package/dist/esm/LinkEmailScreen-1OEkvtrp.mjs +1 -0
  177. package/dist/esm/{LinkPasskeyScreen-CTYGeo1r.mjs → LinkPasskeyScreen-CHPataTs.mjs} +5 -5
  178. package/dist/esm/LinkPhoneScreen-DiwKH2Mt.mjs +1 -0
  179. package/dist/esm/LoginFailedScreen-CDmqpAN2.mjs +1 -0
  180. package/dist/esm/ManualTransferScreen-DyN3_kBX.mjs +1 -0
  181. package/dist/esm/MfaAuthEnrollmentFlowScreen-BNV7WReW.mjs +1 -0
  182. package/dist/esm/MfaAuthVerifyFlowScreen-B-ukVyrA.mjs +1 -0
  183. package/dist/esm/MfaEnrollmentFlowScreen-COe5FpFP.mjs +1 -0
  184. package/dist/esm/MfaVerifyFlowScreen-DCIPle0Z.mjs +1 -0
  185. package/dist/esm/{ModalHeader-DfHxv9fE.mjs → ModalHeader-DpkEBdQv.mjs} +1 -1
  186. package/dist/esm/MoonpayStatusScreen-_owltgjZ.mjs +16 -0
  187. package/dist/esm/OAuthStatusScreen-KZmCHc_b.mjs +1 -0
  188. package/dist/esm/PasskeySelectSignupOrLogin-CQ_DHbaT.mjs +1 -0
  189. package/dist/esm/PasskeyStatusScreen-eu3lPB6M.mjs +3 -0
  190. package/dist/esm/PasswordRecoveryScreen-DndhFHx6.mjs +20 -0
  191. package/dist/esm/{QrCode-D4XZQrgi.mjs → QrCode-D-J14re9.mjs} +1 -1
  192. package/dist/esm/RecoveryOAuthStatusScreen-CwCRvxCX.mjs +1 -0
  193. package/dist/esm/RecoveryPasswordCreateScreen-DrRcz4CY.mjs +1 -0
  194. package/dist/esm/{RecoverySelectionScreen-DVBTi436.mjs → RecoverySelectionScreen-CPHkQlGF.mjs} +2 -2
  195. package/dist/esm/{Screen-CDEd4p2a.mjs → Screen-B0u1eY7p.mjs} +3 -3
  196. package/dist/esm/{ScreenLayout-BdRrZJd_.mjs → ScreenLayout-CyK-vOMq.mjs} +1 -1
  197. package/dist/esm/SelectSourceAsset-ac3FApgI.mjs +112 -0
  198. package/dist/esm/{SetAutomaticRecoveryScreen-DBcSNU6R.mjs → SetAutomaticRecoveryScreen-DLY7WHVZ.mjs} +2 -2
  199. package/dist/esm/{SetWalletPasswordForm-DdWjdu2s.mjs → SetWalletPasswordForm-CQWh647N.mjs} +4 -4
  200. package/dist/esm/SignRequestScreen-BYHN19dO.mjs +26 -0
  201. package/dist/esm/{StandardSignAndSendTransactionScreen-DIJRS8NR.mjs → StandardSignAndSendTransactionScreen-5sT-AMvv.mjs} +2 -2
  202. package/dist/esm/TelegramAuthScreen-DATrHQkr.mjs +1 -0
  203. package/dist/esm/{TransactionDetails-Ce_Cnzo2.mjs → TransactionDetails-D9GBw9C3.mjs} +4 -4
  204. package/dist/esm/{TransactionErrorView-JiZmO7NJ.mjs → TransactionErrorView-3qTJ_97m.mjs} +5 -5
  205. package/dist/esm/{TransferFromWalletScreen-ad5b7GV7.mjs → TransferFromWalletScreen-w3c3g8ys.mjs} +2 -2
  206. package/dist/esm/{TransferOrBridgeLoadingScreen-Cwzefd9j.mjs → TransferOrBridgeLoadingScreen-koaJdk-2.mjs} +1 -1
  207. package/dist/esm/UpdateEmailScreen-BKTgKvoR.mjs +1 -0
  208. package/dist/esm/UpdatePhoneScreen-z7-7NbIO.mjs +1 -0
  209. package/dist/esm/UserLimitReachedScreen-BK77vZJo.mjs +1 -0
  210. package/dist/esm/{WalletInfoCard-D2dCT7_H.mjs → WalletInfoCard-hC5PhrNs.mjs} +1 -1
  211. package/dist/esm/WalletInterstitialScreen-DzDGk-y-.mjs +1 -0
  212. package/dist/esm/{WalletLink-DNraFqEC.mjs → WalletLink-sGQdBvAh.mjs} +1 -1
  213. package/dist/esm/{WalletOverflowButton-Cn_nKCBf.mjs → WalletOverflowButton-BrrkHpeZ.mjs} +1 -1
  214. package/dist/esm/{WarningBanner-c8L53pJ2.mjs → WarningBanner-D5LqDt95.mjs} +2 -2
  215. package/dist/esm/abstract-smart-wallets.mjs +1 -1
  216. package/dist/esm/{context-Cw2-86-G.mjs → context-Bj4czVEP.mjs} +1 -1
  217. package/dist/esm/{ethers-5oa3ZKLD.mjs → ethers-BozrzoVi.mjs} +1 -1
  218. package/dist/esm/extended-chains.mjs +1 -1
  219. package/dist/esm/{getErc20Balance-sCX8nL1s.mjs → getErc20Balance-NThD2gHO.mjs} +1 -1
  220. package/dist/esm/{getErc20TokenInfo-CwiO-mOs.mjs → getErc20TokenInfo-BtdscGyJ.mjs} +1 -1
  221. package/dist/esm/index-CuKtz_xL.mjs +12 -0
  222. package/dist/esm/index-DQp_5KKJ.mjs +174 -0
  223. package/dist/esm/index-Ds8yBPhi.mjs +1 -0
  224. package/dist/esm/index.mjs +1 -1
  225. package/dist/esm/internal.mjs +1 -1
  226. package/dist/esm/privy-context-DICqtyyT.mjs +1 -0
  227. package/dist/esm/{shared-Bw0pXSOO.mjs → shared-zCv-_9Pa.mjs} +1 -1
  228. package/dist/esm/{shouldProceedtoEmbeddedWalletCreationFlow-BkTDxfME.mjs → shouldProceedtoEmbeddedWalletCreationFlow-DLpCU-0h.mjs} +1 -1
  229. package/dist/esm/smart-wallets-B8GvSECb.mjs +1 -0
  230. package/dist/esm/smart-wallets.mjs +1 -1
  231. package/dist/esm/solana.mjs +1 -1
  232. package/dist/esm/{styles-D5Jf27-u.mjs → styles-pSKfqjN3.mjs} +15 -15
  233. package/dist/esm/{to-ui-error-DnDY_33E.mjs → to-ui-error-KRq5_d4z.mjs} +2 -2
  234. package/dist/esm/ui.mjs +1 -1
  235. package/dist/esm/use-export-wallet-D1P_g8O0.mjs +1 -0
  236. package/dist/esm/use-export-wallet-DVyBljMT.mjs +1 -0
  237. package/dist/esm/{useActiveWallet-CwS7ik68.mjs → useActiveWallet-DMrO7evY.mjs} +1 -1
  238. package/dist/esm/useGetTokenPrice-N5ZX6Yun.mjs +1 -0
  239. package/dist/esm/{useI18n-bIQlZhkW.mjs → useI18n-BiiKgmqw.mjs} +1 -1
  240. package/dist/esm/usePrivy-DDB15S8o.mjs +1 -0
  241. package/dist/esm/{useSolanaRpcClient-C2WlA-Ah.mjs → useSolanaRpcClient-B--BKNG3.mjs} +1 -1
  242. package/dist/esm/{useWalletBalance-DopZXXwh.mjs → useWalletBalance-C0WFIwSX.mjs} +1 -1
  243. package/dist/esm/useWallets-CJvLEQqE.mjs +1 -0
  244. package/dist/esm/useWallets-CS_W9ciB.mjs +1 -0
  245. package/package.json +5 -5
  246. package/dist/cjs/AccountNotFoundScreen-Bqh-CYrp.js +0 -1
  247. package/dist/cjs/AffirmativeConsentScreen-uogZ44HQ.js +0 -6
  248. package/dist/cjs/AllowlistRejectionScreen-3OKwgh23.js +0 -1
  249. package/dist/cjs/AuthenticateWithWalletScreen-DXy5TnZj.js +0 -1
  250. package/dist/cjs/AwaitingEvmToSolBridgingScreen-DR1RiU-S.js +0 -2
  251. package/dist/cjs/AwaitingExternalEthereumTransferScreen-DgQ9z_ck.js +0 -2
  252. package/dist/cjs/AwaitingPasswordlessCodeScreen-Bah7kXAV.js +0 -103
  253. package/dist/cjs/AwaitingSolToEvmBridgingScreen-HSwPZmzZ.js +0 -2
  254. package/dist/cjs/CaptchaScreen-BLoD3u63.js +0 -1
  255. package/dist/cjs/CoinbaseOnrampStatusScreen-CoSS2KfY.js +0 -16
  256. package/dist/cjs/ConnectEmailForm-BjXzo_T8.js +0 -3
  257. package/dist/cjs/ConnectLedgerScreen-Brfd_c8H.js +0 -9
  258. package/dist/cjs/ConnectOnlyLandingScreen-C41qgoJf.js +0 -1
  259. package/dist/cjs/ConnectOnlyStatusScreen-DPsh3aXI.js +0 -1
  260. package/dist/cjs/ConnectOrCreateScreen-Dpv9J_eC.js +0 -1
  261. package/dist/cjs/ConnectionStatusScreen-DfKCyYnE.js +0 -7
  262. package/dist/cjs/CrossAppAuthScreen-CAmbPQb0.js +0 -1
  263. package/dist/cjs/DelegatedActionsConsentScreen-DOvRMKf-.js +0 -1
  264. package/dist/cjs/DelegatedActionsRevokeScreen-5ecaxQ0D.js +0 -1
  265. package/dist/cjs/EmbeddedWalletConnectingScreen-B31DzW7n.js +0 -1
  266. package/dist/cjs/EmbeddedWalletCreatedScreen-BXEozrA_.js +0 -1
  267. package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-DSrn-F5R.js +0 -1
  268. package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-DGlv7LlS.js +0 -1
  269. package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-Byr5dLg5.js +0 -1
  270. package/dist/cjs/ErrorScreen-DJwJwrGn.js +0 -4
  271. package/dist/cjs/FarcasterSignerStatusScreen--CVrZRE9.js +0 -29
  272. package/dist/cjs/FundSolWalletWithExternalSolanaWallet-3Fn4CnSA.js +0 -2
  273. package/dist/cjs/FundWalletMethodHeader-D2fapeXN.js +0 -1
  274. package/dist/cjs/FundWithBankDepositScreen-DUQAuyf5.js +0 -176
  275. package/dist/cjs/FundingEditAmountScreen-B3wEw9xm.js +0 -1
  276. package/dist/cjs/FundingMethodSelectionScreen-ChQNeyi6.js +0 -1
  277. package/dist/cjs/InAppBrowserLoginNotPossible-XFkxHwKR.js +0 -1
  278. package/dist/cjs/InstallWalletScreen-Cp3ZRRYf.js +0 -1
  279. package/dist/cjs/LandingScreen-DwFs0lRf.js +0 -1
  280. package/dist/cjs/LinkEmailScreen-_sfK6ECC.js +0 -1
  281. package/dist/cjs/LinkPhoneScreen-BjMfF3Kz.js +0 -1
  282. package/dist/cjs/LoginFailedScreen-BUnuwN-5.js +0 -1
  283. package/dist/cjs/ManualTransferScreen-D2hHGf6p.js +0 -1
  284. package/dist/cjs/MfaAuthEnrollmentFlowScreen-VFaXkogp.js +0 -1
  285. package/dist/cjs/MfaAuthVerifyFlowScreen-CVBdW4Cw.js +0 -1
  286. package/dist/cjs/MfaEnrollmentFlowScreen-DxkzCr5s.js +0 -1
  287. package/dist/cjs/MfaVerifyFlowScreen-AFZc7liT.js +0 -1
  288. package/dist/cjs/MoonpayStatusScreen-C66Eq4G4.js +0 -16
  289. package/dist/cjs/OAuthStatusScreen-NKl6SLvR.js +0 -1
  290. package/dist/cjs/PasskeySelectSignupOrLogin-D9VfPofR.js +0 -1
  291. package/dist/cjs/PasskeyStatusScreen-CBC-60D2.js +0 -3
  292. package/dist/cjs/PasswordRecoveryScreen-BSUhAJ63.js +0 -20
  293. package/dist/cjs/RecoveryOAuthStatusScreen-y2Z3cphT.js +0 -1
  294. package/dist/cjs/RecoveryPasswordCreateScreen-CoDYHaJk.js +0 -1
  295. package/dist/cjs/SetAutomaticRecoveryScreen-BLiDEmlE.js +0 -14
  296. package/dist/cjs/TelegramAuthScreen-BGB40HSe.js +0 -1
  297. package/dist/cjs/UpdateEmailScreen-Bgn5JxGJ.js +0 -1
  298. package/dist/cjs/UpdatePhoneScreen-DPAxfLv5.js +0 -1
  299. package/dist/cjs/UserLimitReachedScreen-BG8gj4ah.js +0 -1
  300. package/dist/cjs/WalletInterstitialScreen-CBH05HpE.js +0 -1
  301. package/dist/cjs/get-is-unified-wallet-DitrQ4hx.js +0 -1
  302. package/dist/cjs/index-CCY3tkwt.js +0 -1
  303. package/dist/cjs/smart-wallets-BtILJe_K.js +0 -1
  304. package/dist/cjs/use-export-wallet-C6DaLOxp.js +0 -1
  305. package/dist/cjs/use-export-wallet-eDTOzHRt.js +0 -1
  306. package/dist/cjs/usePrivy-CHcu9hX8.js +0 -1
  307. package/dist/cjs/useWallets-CbvzYOqg.js +0 -1
  308. package/dist/cjs/useWallets-Cy6axcvW.js +0 -1
  309. package/dist/esm/AccountNotFoundScreen-BSYd-8_2.mjs +0 -1
  310. package/dist/esm/AffirmativeConsentScreen-C_uGmdSa.mjs +0 -6
  311. package/dist/esm/AllowlistRejectionScreen-DBdNYwS-.mjs +0 -1
  312. package/dist/esm/AuthenticateWithWalletScreen-D-Aw0iYo.mjs +0 -1
  313. package/dist/esm/AwaitingEvmToSolBridgingScreen-BMr5CXgX.mjs +0 -2
  314. package/dist/esm/AwaitingExternalEthereumTransferScreen-aOEMTW-b.mjs +0 -2
  315. package/dist/esm/AwaitingPasswordlessCodeScreen-CjPJ7IMM.mjs +0 -103
  316. package/dist/esm/AwaitingSolToEvmBridgingScreen-xrFngED1.mjs +0 -2
  317. package/dist/esm/CaptchaScreen-BOKElE1r.mjs +0 -1
  318. package/dist/esm/CoinbaseOnrampStatusScreen-CTV5uUn3.mjs +0 -16
  319. package/dist/esm/ConnectEmailForm-Dp85JvZj.mjs +0 -3
  320. package/dist/esm/ConnectLedgerScreen-rxzesP5N.mjs +0 -9
  321. package/dist/esm/ConnectOnlyLandingScreen-CmImF7oZ.mjs +0 -1
  322. package/dist/esm/ConnectOnlyStatusScreen-Bo90w6P9.mjs +0 -1
  323. package/dist/esm/ConnectOrCreateScreen-Dc2VQF-B.mjs +0 -1
  324. package/dist/esm/ConnectionStatusScreen-C_fxSXJ2.mjs +0 -7
  325. package/dist/esm/CrossAppAuthScreen-DU0FD2ep.mjs +0 -1
  326. package/dist/esm/DelegatedActionsConsentScreen-Dr-DeIXC.mjs +0 -1
  327. package/dist/esm/DelegatedActionsRevokeScreen-kXOJxXu-.mjs +0 -1
  328. package/dist/esm/EmbeddedWalletConnectingScreen-tFedaOj3.mjs +0 -1
  329. package/dist/esm/EmbeddedWalletCreatedScreen-DCx4NdAp.mjs +0 -1
  330. package/dist/esm/EmbeddedWalletKeyExportScreen-CVflSsvz.mjs +0 -40
  331. package/dist/esm/EmbeddedWalletOnAccountCreateScreen-vSzXa62f.mjs +0 -1
  332. package/dist/esm/EmbeddedWalletPasswordUpdateScreen-B4szV9Hg.mjs +0 -1
  333. package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-BOBLnE_O.mjs +0 -1
  334. package/dist/esm/ErrorScreen-BGE6wldq.mjs +0 -4
  335. package/dist/esm/FarcasterSignerStatusScreen-C-crikPv.mjs +0 -28
  336. package/dist/esm/FundSolWalletWithExternalSolanaWallet-BX4gYmzv.mjs +0 -1
  337. package/dist/esm/FundWalletMethodHeader-CdXWChwL.mjs +0 -1
  338. package/dist/esm/FundWithBankDepositScreen-HyqTUpLq.mjs +0 -176
  339. package/dist/esm/FundingEditAmountScreen--ffFSUmf.mjs +0 -1
  340. package/dist/esm/FundingMethodSelectionScreen-Djr0jY03.mjs +0 -1
  341. package/dist/esm/InAppBrowserLoginNotPossible-D6wMCuzD.mjs +0 -1
  342. package/dist/esm/InstallWalletScreen-B6VSXUWR.mjs +0 -1
  343. package/dist/esm/LandingScreen-BV0xq-oc.mjs +0 -1
  344. package/dist/esm/LinkEmailScreen-CtMuCZvp.mjs +0 -1
  345. package/dist/esm/LinkPhoneScreen-2nnXZB2B.mjs +0 -1
  346. package/dist/esm/LoginFailedScreen-hHvIsH81.mjs +0 -1
  347. package/dist/esm/ManualTransferScreen-C0xJ3si8.mjs +0 -1
  348. package/dist/esm/MfaAuthEnrollmentFlowScreen-CznUpkq5.mjs +0 -1
  349. package/dist/esm/MfaAuthVerifyFlowScreen-DUmOZHGX.mjs +0 -1
  350. package/dist/esm/MfaEnrollmentFlowScreen-DeoSfYAS.mjs +0 -1
  351. package/dist/esm/MfaVerifyFlowScreen-JJ1crW_8.mjs +0 -1
  352. package/dist/esm/MoonpayStatusScreen-BIzQZK9f.mjs +0 -16
  353. package/dist/esm/OAuthStatusScreen-DhmaZBTY.mjs +0 -1
  354. package/dist/esm/PasskeySelectSignupOrLogin-BmiJnukl.mjs +0 -1
  355. package/dist/esm/PasskeyStatusScreen-BStwA1_J.mjs +0 -3
  356. package/dist/esm/PasswordRecoveryScreen-DyBDQADG.mjs +0 -20
  357. package/dist/esm/RecoveryOAuthStatusScreen-BfcxgkUL.mjs +0 -1
  358. package/dist/esm/RecoveryPasswordCreateScreen-CBfvjxht.mjs +0 -1
  359. package/dist/esm/SignRequestScreen-CxAuntSd.mjs +0 -26
  360. package/dist/esm/TelegramAuthScreen-BRDG8b6x.mjs +0 -1
  361. package/dist/esm/UpdateEmailScreen-C5lQJUiA.mjs +0 -1
  362. package/dist/esm/UpdatePhoneScreen-BwkzWVHl.mjs +0 -1
  363. package/dist/esm/UserLimitReachedScreen-ComDV9kj.mjs +0 -1
  364. package/dist/esm/WalletInterstitialScreen-riBB51NH.mjs +0 -1
  365. package/dist/esm/get-is-unified-wallet-CQc-E5dS.mjs +0 -1
  366. package/dist/esm/index-B5B9f4U9.mjs +0 -12
  367. package/dist/esm/index-Bvw5OxHl.mjs +0 -174
  368. package/dist/esm/index-yxF2V6XY.mjs +0 -1
  369. package/dist/esm/smart-wallets-Dl42tBUP.mjs +0 -1
  370. package/dist/esm/use-export-wallet-Bd5Sg5V-.mjs +0 -1
  371. package/dist/esm/use-export-wallet-NF9h_lS_.mjs +0 -1
  372. package/dist/esm/useGetTokenPrice-oI6b3gPZ.mjs +0 -1
  373. package/dist/esm/usePrivy-DAnfSvB5.mjs +0 -1
  374. package/dist/esm/useWallets-2_uCkhA8.mjs +0 -1
  375. package/dist/esm/useWallets-DpbBw4Vl.mjs +0 -1
@@ -0,0 +1 @@
1
+ import{getBase58Decoder as e,getTransactionDecoder as n,address as t,getTransactionEncoder as s}from"@solana/kit";import{useMemo as a,useEffect as i,useState as r}from"react";import{rpc as o,ConnectedStandardSolanaWallet as c}from"@privy-io/js-sdk-core";import{u as l,a as d,b as u,l as g}from"./internal-context-Z-fyxadS.mjs";import{a as h,j as p,b as f,n as w,f as A}from"./privy-context-DICqtyyT.mjs";import{u as y}from"./usePrivy-DDB15S8o.mjs";import{g as v,u as m}from"./useWallets-CS_W9ciB.mjs";import T from"eventemitter3";import{base58 as b}from"@scure/base";import{u as O}from"./context-Bj4czVEP.mjs";import{u as S}from"./use-sign-with-user-signer-Do5Oi_rb.mjs";import{b as _,a as E,u as I}from"./useSolanaRpcClient-B--BKNG3.mjs";import{x as j}from"./use-export-wallet-DVyBljMT.mjs";const W=["solana:mainnet","solana:devnet","solana:testnet"];function M(n){return e().decode(n)}function P(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var C=0,F="__private_"+C+++"__implementation";function U(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var D=0;function N(e){return"__private_"+D+++"_"+e}var B=/*#__PURE__*/N("_address"),x=/*#__PURE__*/N("_publicKey"),R=/*#__PURE__*/N("_chains"),L=/*#__PURE__*/N("_features"),V=/*#__PURE__*/N("_label"),Q=/*#__PURE__*/N("_icon");class G{get address(){return U(this,B)[B]}get publicKey(){return U(this,x)[x].slice()}get chains(){return U(this,R)[R].slice()}get features(){return U(this,L)[L].slice()}get label(){return U(this,V)[V]}get icon(){return U(this,Q)[Q]}constructor({address:e,publicKey:n,label:t,icon:s}){Object.defineProperty(this,B,{writable:!0,value:void 0}),Object.defineProperty(this,x,{writable:!0,value:void 0}),Object.defineProperty(this,R,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),Object.defineProperty(this,V,{writable:!0,value:void 0}),Object.defineProperty(this,Q,{writable:!0,value:void 0}),U(this,B)[B]=e,U(this,x)[x]=n,U(this,R)[R]=W,U(this,V)[V]=t,U(this,Q)[Q]=s,U(this,L)[L]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],new.target===G&&Object.freeze(this)}}function K(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var H=0;function J(e){return"__private_"+H+++"_"+e}var Y=/*#__PURE__*/J("_listeners"),k=/*#__PURE__*/J("_version"),Z=/*#__PURE__*/J("_name"),z=/*#__PURE__*/J("_icon"),q=/*#__PURE__*/J("_injection"),X=/*#__PURE__*/J("_isPrivyWallet"),$=/*#__PURE__*/J("_accounts"),ee=/*#__PURE__*/J("_on"),ne=/*#__PURE__*/J("_emit"),te=/*#__PURE__*/J("_off"),se=/*#__PURE__*/J("_connected"),ae=/*#__PURE__*/J("_connect"),ie=/*#__PURE__*/J("_disconnect"),re=/*#__PURE__*/J("_signMessage"),oe=/*#__PURE__*/J("_signAndSendTransaction"),ce=/*#__PURE__*/J("_signTransaction");function le(e,...n){K(this,Y)[Y][e]?.forEach((e=>e.apply(null,n)))}function de(e,n){K(this,Y)[Y][e]=K(this,Y)[Y][e]?.filter((e=>n!==e))}function ue(e,a,i){let r=structuredClone(n().decode(e)),o=t(a);return o in r.signatures&&(r.signatures[o]=i),new Uint8Array(s().encode(r))}function ge(){let{isHeadlessSigning:e,walletProxy:n,initializeWalletProxy:t,recoverEmbeddedWallet:s,openModal:a,privy:i,client:r}=l(),{user:c}=y(),{setModalData:g}=h(),{signWithUserSigner:w}=S();return{signMessage:({message:l,address:h,options:A})=>new Promise((async(y,m)=>{let T=p(c,h);if("privy"!==T?.walletClientType)return void m(new d("Wallet is not a Privy wallet",void 0,u.EMBEDDED_WALLET_NOT_FOUND));let{entropyId:b,entropyIdVerifier:O}=v(c,T),S=f(T),E=_(l).toString("base64");if(E.length<1)return void m(new d("Message must be a non-empty string",void 0,u.INVALID_MESSAGE));let I=async()=>{let e;if(!c)throw Error("User must be authenticated before signing with a Privy wallet");let a=await r.getAccessToken();if(!a)throw Error("User must be authenticated to use their embedded wallet.");let l=n??await t(15e3);if(!l)throw Error("Failed to initialize embedded wallet proxy.");if(!await s({address:T.address}))throw Error("Unable to connect to wallet");if(S){let n=await o(i,w,{chain_type:"solana",method:"signMessage",params:{message:E,encoding:"base64"},wallet_id:T.id});if(!n.data||!("signature"in n.data))throw Error("Failed to sign message");e=n.data.signature}else{let{response:n}=await l.rpc({accessToken:a,entropyId:b,entropyIdVerifier:O,chainType:"solana",hdWalletIndex:T.walletIndex??0,requesterAppId:A?.uiOptions?.requesterAppId,request:{method:"signMessage",params:{message:E}}});e=n.data.signature}return e};if(e({showWalletUIs:A?.uiOptions?.showWalletUIs}))try{let e=await I(),n=new Uint8Array(_(e,"base64"));y({signature:n})}catch(e){m(e)}else g({signMessage:{method:"solana_signMessage",data:E,confirmAndSign:I,onSuccess:e=>{y({signature:new Uint8Array(_(e,"base64"))})},onFailure:e=>{m(e)},uiOptions:A?.uiOptions??{}},connectWallet:{recoveryMethod:T.recoveryMethod,connectingWalletAddress:T.address,entropyId:b,entropyIdVerifier:O,isUnifiedWallet:S,onCompleteNavigateTo:"SignRequestScreen",onFailure:e=>{m(new d("Failed to connect to wallet",e,u.UNKNOWN_CONNECT_WALLET_ERROR))}}}),a("EmbeddedWalletConnectingScreen")}))}}function he(){let{isHeadlessSigning:e,openModal:n}=l(),{setModalData:t}=h(),{signMessage:s}=ge(),{user:a}=y();return{signTransaction:async({transaction:i,options:r,chain:o="solana:mainnet",address:c})=>{async function l(e){let{signature:n}=await s({message:E(e),address:c,options:{...r,uiOptions:{...r?.uiOptions,showWalletUIs:!1}}});return{signedTransaction:ue(e,c,n)}}return e({showWalletUIs:r?.uiOptions?.showWalletUIs})?l(i):new Promise((async(e,s)=>{let g=p(a,c);if("privy"!==g?.walletClientType)return void s(new d("Wallet is not a Privy wallet",void 0,u.EMBEDDED_WALLET_NOT_FOUND));let{entropyId:h,entropyIdVerifier:w}=v(a,g),A=f(g);function y(e){return n=>{s(n instanceof d?n:new d("Failed to connect to wallet",n,e))}}let m={account:g,transaction:i,chain:o,signOnly:!0,uiOptions:r?.uiOptions||{},onConfirm:l,onSuccess:e,onFailure:y(u.TRANSACTION_FAILURE)};t({connectWallet:{recoveryMethod:g.recoveryMethod,connectingWalletAddress:g.address,entropyId:h,entropyIdVerifier:w,isUnifiedWallet:A,onCompleteNavigateTo:"StandardSignAndSendTransactionScreen",onFailure:y(u.UNKNOWN_CONNECT_WALLET_ERROR)},standardSignAndSendTransaction:m}),n("EmbeddedWalletConnectingScreen")}))}}}let pe=new class extends T{setImplementation(e){P(this,F)[F]=e}async signMessage(e){return P(this,F)[F].signMessage(e)}async signAndSendTransaction(e){return P(this,F)[F].signAndSendTransaction(e)}async signTransaction(e){return P(this,F)[F].signTransaction(e)}constructor(e){super(),Object.defineProperty(this,F,{writable:!0,value:void 0}),P(this,F)[F]=e}}({signTransaction:g("signTransaction was not injected"),signAndSendTransaction:g("signAndSendTransaction was not injected"),signMessage:g("signMessage was not injected")}),fe=new class{get version(){return K(this,k)[k]}get name(){return K(this,Z)[Z]}get icon(){return K(this,z)[z]}get chains(){return W.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:K(this,ae)[ae]},"standard:disconnect":{version:"1.0.0",disconnect:K(this,ie)[ie]},"standard:events":{version:"1.0.0",on:K(this,ee)[ee]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:K(this,oe)[oe]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:K(this,ce)[ce]},"solana:signMessage":{version:"1.0.0",signMessage:K(this,re)[re]},"privy:":{privy:{signMessage:K(this,q)[q].signMessage,signTransaction:K(this,q)[q].signTransaction,signAndSendTransaction:K(this,q)[q].signAndSendTransaction}}}}get accounts(){return K(this,$)[$].slice()}get isPrivyWallet(){return K(this,X)[X]}constructor({name:e,icon:n,version:t,injection:s,wallets:a}){Object.defineProperty(this,ne,{value:le}),Object.defineProperty(this,te,{value:de}),Object.defineProperty(this,Y,{writable:!0,value:void 0}),Object.defineProperty(this,k,{writable:!0,value:void 0}),Object.defineProperty(this,Z,{writable:!0,value:void 0}),Object.defineProperty(this,z,{writable:!0,value:void 0}),Object.defineProperty(this,q,{writable:!0,value:void 0}),Object.defineProperty(this,X,{writable:!0,value:void 0}),Object.defineProperty(this,$,{writable:!0,value:void 0}),Object.defineProperty(this,ee,{writable:!0,value:void 0}),Object.defineProperty(this,se,{writable:!0,value:void 0}),Object.defineProperty(this,ae,{writable:!0,value:void 0}),Object.defineProperty(this,ie,{writable:!0,value:void 0}),Object.defineProperty(this,re,{writable:!0,value:void 0}),Object.defineProperty(this,oe,{writable:!0,value:void 0}),Object.defineProperty(this,ce,{writable:!0,value:void 0}),K(this,Y)[Y]={},K(this,ee)[ee]=(e,n)=>(K(this,Y)[Y][e]?.push(n)||(K(this,Y)[Y][e]=[n]),()=>K(this,te)[te](e,n)),K(this,se)[se]=e=>{null!=e&&(K(this,$)[$]=e.map((({address:e})=>new G({address:e,publicKey:b.decode(e)})))),K(this,ne)[ne]("change",{accounts:this.accounts})},K(this,ae)[ae]=async()=>(K(this,ne)[ne]("change",{accounts:this.accounts}),{accounts:this.accounts}),K(this,ie)[ie]=async()=>{K(this,ne)[ne]("change",{accounts:this.accounts})},K(this,re)[re]=async(...e)=>{let n=[];for(let{account:t,...s}of e){let{signature:e}=await K(this,q)[q].signMessage({...s,address:t.address});n.push({signedMessage:s.message,signature:e})}return n},K(this,oe)[oe]=async(...e)=>{let n=[];for(let t of e){let{signature:e}=await K(this,q)[q].signAndSendTransaction({...t,transaction:t.transaction,address:t.account.address,chain:t.chain||"solana:mainnet",options:t.options});n.push({signature:e})}return n},K(this,ce)[ce]=async(...e)=>{let n=[];for(let{transaction:t,account:s,options:a,chain:i}of e){let{signedTransaction:e}=await K(this,q)[q].signTransaction({transaction:t,address:s.address,chain:i||"solana:mainnet",options:a});n.push({signedTransaction:e})}return n},K(this,Z)[Z]=e,K(this,z)[z]=n,K(this,k)[k]=t,K(this,q)[q]=s,K(this,$)[$]=[],K(this,X)[X]=!0,s.on("accountChanged",K(this,se)[se],this),K(this,se)[se](a)}}({name:"Privy",version:"1.0.0",icon:"data:image/png;base64,AAABAAEAFBQAAAAAIABlAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAUAAAAFAgGAAAAjYkdDQAAAAlwSFlzAAAOwwAADsMBx2+oZAAAAQVJREFUeJxiYMANZIC4E4ivAPFPIP4FxDeAuB+IlfDowwBMQFwJxF+B+D8O/AOI66Bq8QJGIF6ExyB0vAqImfEZmEeCYTDcgMswPiB+T4aB34FYApuBsWQYBsP52AycToGBK7EZuJECAw9jM3AVBQbuwWZgIwUGTsZmoDkFBnpiMxAEjpJh2FV8iVsbiD+TYBgoDVrgMgwGnID4HRGGgTKBGyHDYEAaiBdCSxh0g/5AU4Q8sYYhAzEgjoGmABBOgFo2eACowFABYn0oVgViAVINkQTiZUD8DIj/ATF6GILEXgLxCiCWIsZAbiAuBeKtQHwHiEHJ6C8UfwHie0C8E4jLoWpRAAAAAP//rcbhsQAAAAZJREFUAwBYFs3VKJ0cuQAAAABJRU5ErkJggg==",wallets:[],injection:pe});function we(){let{ready:e}=m(),{user:n}=y(),{signMessage:t}=ge(),{signTransaction:s}=he(),{signAndSendTransaction:r}=function(){let e=O(),{isHeadlessSigning:n,openModal:t,privy:s}=l(),{setModalData:a}=h(),{signTransaction:i}=he(),r=I(),{user:c}=y(),{signWithUserSigner:g}=S();return{signAndSendTransaction:async({transaction:l,address:h,chain:w="solana:mainnet",options:A})=>{let y=p(c,h);if("privy"!==y?.walletClientType)throw new d("Wallet is not a Privy wallet",void 0,u.EMBEDDED_WALLET_NOT_FOUND);let m=f(y);async function T(e){if(A?.sponsor)return await(async e=>{if(!m)throw new d("Sponsoring transactions is only supported for wallets on the TEE stack",u.INVALID_DATA);let n=await o(s,g,{chain_type:"solana",method:"signAndSendTransaction",sponsor:!0,params:{transaction:_(e).toString("base64"),encoding:"base64"},caip2:`solana:${(await r(w).rpc.getGenesisHash().send()).substring(0,32)}`,wallet_id:y.id});if(n.data&&"hash"in n.data)return{signature:b.decode(n.data.hash)};throw Error("Failed to sign and send transaction")})(e);let{signedTransaction:n}=await i({transaction:e,address:h,chain:w,options:{...A,uiOptions:{...A?.uiOptions,showWalletUIs:!1}}}),{signature:t}=await r(w).sendAndConfirmTransaction(n);return{signature:t}}return n({showWalletUIs:A?.uiOptions?.showWalletUIs})?T(l):new Promise((async(n,s)=>{let i,r,{entropyId:o,entropyIdVerifier:g}=v(c,y);function p(e){return n=>{s(n instanceof d?n:new d("Failed to connect to wallet",n,e))}}let f={account:y,transaction:l,chain:w,signOnly:!1,uiOptions:A?.uiOptions||{},onConfirm:T,onSuccess:n,onFailure:p(u.TRANSACTION_FAILURE),isSponsored:!!A?.sponsor},b={recoveryMethod:y.recoveryMethod,connectingWalletAddress:y.address,entropyId:o,entropyIdVerifier:g,isUnifiedWallet:m,onCompleteNavigateTo:"StandardSignAndSendTransactionScreen",onFailure:p(u.UNKNOWN_CONNECT_WALLET_ERROR)};e.fundingConfig&&(i=j({address:h,appConfig:e,methodScreen:"FundingMethodSelectionScreen",fundWalletConfig:{...A,asset:"native-currency",chain:w},externalSolanaFundingScreen:"FundSolWalletWithExternalSolanaWallet"}),r={amount:e.fundingConfig.defaultRecommendedAmount,asset:"SOL",chain:w,destinationAddress:h,afterSuccessScreen:"StandardSignAndSendTransactionScreen",sourceWalletData:void 0}),a({connectWallet:b,standardSignAndSendTransaction:f,funding:i,solanaFundingData:r}),t("EmbeddedWalletConnectingScreen")}))}}}(),c=a((()=>{let e=[...w(n).sort(((e,n)=>(e.walletIndex??0)-(n.walletIndex??0)))],t=A(n);return t.length?[...e,...t]:e}),[n]),g=a((()=>({signMessage:async({message:e,address:n,options:s})=>await t({message:e,address:n,options:s}),signTransaction:async({transaction:e,address:n,chain:t,options:a})=>await s({transaction:e,address:n,chain:t,options:a}),async signAndSendTransaction({transaction:e,address:n,chain:t,options:s}){let{signature:a}=await r({transaction:e,address:n,chain:t,options:s});return{signature:a}}})),[t,s,r]);return i((()=>{pe?.setImplementation(g)}),[g]),i((()=>{var n;!e||(n=fe.accounts).length===c.length&&n.every(((e,n)=>e.address===c[n]?.address))||pe?.emit("accountChanged",c)}),[e,c]),{ready:e,wallet:fe}}function Ae(){let{client:e}=l(),{ready:n,wallet:t}=we(),[s,a]=r([]),[o,c]=r([]);return i((()=>{let e=[t,...s.filter((e=>"solana"===e.chainType&&!!e.wallet.features)).map((e=>e.wallet))];c(e);let n=s.flatMap((n=>{let t=()=>c([...e]);return n.on("walletsUpdated",t),{connector:n,off:t}})),a=e.map((n=>n.features["standard:events"]?.on("change",(()=>{c([...e])}))));return()=>{a.forEach((e=>e?.())),n.forEach((({connector:e,off:n})=>e.off("walletsUpdated",n)))}}),[s]),i((()=>{a(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[]);let n=()=>{a(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[])};return e.connectors?.on("connectorInitialized",n),()=>{e.connectors?.off("connectorInitialized",n)}}),[n,e.connectors]),{ready:n,wallets:o}}function ye(){let{ready:e,wallets:n}=Ae();return{ready:e,wallets:a((()=>n.flatMap((e=>e.accounts.map((n=>new c({wallet:e,account:n})))))),[n])}}export{W as S,Ae as a,M as g,ye as u};
@@ -0,0 +1 @@
1
+ import{g as r}from"./privy-context-DICqtyyT.mjs";import{createPublicClient as e,http as t}from"viem";import{P as i}from"./internal-context-Z-fyxadS.mjs";import{useContext as p,createContext as l}from"react";const s=r=>{if("ethereum"===r.chainType)return{entropyId:r.address,entropyIdVerifier:"ethereum-address-verifier"};if("solana"===r.chainType)return{entropyId:r.address,entropyIdVerifier:"solana-address-verifier"};throw Error("Failed to get account entropy details")},a=(e,t)=>{if(t?.imported)return s(t);let i=r(e);if(!i)throw Error("Failed to find primary wallet");return s(i)},n=(r,p,l,s)=>{let a=Number(r),n=p.find((r=>r.id===a));if(!n)throw new i(`Unsupported chainId ${r}`,4901);return e({transport:t(o(n,l,s.appId)),chain:n})},o=(r,e,t)=>{let p,l=r.id,s=Number(r.id);if(r.rpcUrls.privyWalletOverride&&r.rpcUrls.privyWalletOverride.http[0])p=r.rpcUrls.privyWalletOverride.http[0];else if(e.rpcUrls&&e.rpcUrls[s])p=e.rpcUrls[s];else if(r.rpcUrls.privy?.http[0]){let e=new URL(r.rpcUrls.privy.http[0]);e.searchParams.append("privyAppId",t),p=e.toString()}else p=r.rpcUrls.public?.http[0]?r.rpcUrls.public.http[0]:r.rpcUrls.default?.http[0];if(!p)throw new i(`No RPC url found for ${l}`);return p},d=/*#__PURE__*/l(null);function c(){let r=p(d);return null===r?(console.warn("`useWallets` was called outside the PrivyProvider component"),{wallets:[],ready:!1}):r}export{d as U,n as a,o as b,a as g,s as t,c as u};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@privy-io/react-auth",
3
- "version": "3.16.0",
3
+ "version": "3.17.0",
4
4
  "description": "React client for the Privy Auth API",
5
5
  "keywords": [
6
6
  "authentication",
@@ -150,7 +150,7 @@
150
150
  "@headlessui/react": "^2.2.0",
151
151
  "@heroicons/react": "^2.1.1",
152
152
  "@marsidev/react-turnstile": "^1.3.1",
153
- "@privy-io/api-types": "0.5.0",
153
+ "@privy-io/api-types": "0.6.1",
154
154
  "@scure/base": "^1.2.5",
155
155
  "@simplewebauthn/browser": "^13.2.2",
156
156
  "@tanstack/react-virtual": "^3.13.10",
@@ -175,12 +175,12 @@
175
175
  "viem": "^2.46.1",
176
176
  "x402": "^0.7.1",
177
177
  "zustand": "^5.0.0",
178
+ "@privy-io/chains": "0.1.2",
178
179
  "@privy-io/api-base": "1.8.2",
180
+ "@privy-io/js-sdk-core": "0.60.5",
181
+ "@privy-io/routes": "0.0.8",
179
182
  "@privy-io/are-addresses-equal": "0.0.1",
180
- "@privy-io/chains": "0.1.2",
181
183
  "@privy-io/ethereum": "0.0.8",
182
- "@privy-io/js-sdk-core": "0.60.4",
183
- "@privy-io/routes": "0.0.7",
184
184
  "@privy-io/popup": "0.0.2",
185
185
  "@privy-io/urls": "0.0.3"
186
186
  },
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("lucide-react"),t=require("./context-BAmjgwZ7.js"),i=require("./internal-context-BJv4f_bO.js"),n=require("./get-is-unified-wallet-DitrQ4hx.js"),o=require("./ScreenLayout-DANQ0V5E.js");require("react"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("ofetch"),require("@privy-io/are-addresses-equal"),require("./ModalHeader-CakS8Dcu.js"),require("styled-components"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("eventemitter3"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const a=({title:t="Account not found",subtitle:i,appName:n="this app",ctaText:a="Try logging in again",onRetry:u})=>/*#__PURE__*/e.jsx(o.ScreenLayout,{title:t,subtitle:i||`Please try logging in again or go to ${n} to create an account.`,icon:r.HelpCircle,iconVariant:"warning",primaryCta:{label:a,onClick:u},watermark:!0}),u={component:()=>{let{navigate:r,setModalData:o,data:u}=n.usePrivyModal(),c=t.useAppConfig(),{getAuthMeta:s,client:l}=i.usePrivyInternal();/*#__PURE__*/return e.jsx(a,{appName:c?.name,onRetry:()=>{let e=s();o({...u,login:{...u?.login,...e?.disableSignup?{disableSignup:!0}:{}}}),l?.authFlow&&(l.authFlow=void 0),r("LandingScreen")}})}};exports.AccountNotFoundScreen=u,exports.AccountNotFoundScreenView=a,exports.default=u;
@@ -1,6 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("lucide-react");require("react");var i=require("styled-components"),t=require("./ModalHeader-CakS8Dcu.js"),s=require("./context-BAmjgwZ7.js"),n=require("./internal-context-BJv4f_bO.js"),o=require("./get-is-unified-wallet-DitrQ4hx.js"),a=require("./shouldProceedtoEmbeddedWalletCreationFlow-DAiUXgPZ.js"),l=require("./ScreenLayout-DANQ0V5E.js");require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("@privy-io/js-sdk-core"),require("eventemitter3"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("tinycolor2"),require("ofetch"),require("@privy-io/are-addresses-equal"),require("./index-BohqOluI.js"),require("uuid"),require("jose"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-CHcu9hX8.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const u={component:()=>{let{user:r,logout:i}=o.usePrivyContext(),{onUserCloseViaDialogOrKeybindRef:t,setModalData:l,navigate:u}=o.usePrivyModal(),d=s.useAppConfig(),{acceptTerms:q,closePrivyModal:p,createAnalyticsEvent:y}=n.usePrivyInternal(),v=e=>{e?.preventDefault(),p({shouldCallAuthOnSuccess:!1}),i()};t.current=v;/*#__PURE__*/return e.jsx(c,{termsAndConditionsUrl:d?.legal.termsAndConditionsUrl,privacyPolicyUrl:d?.legal.privacyPolicyUrl,onAccept:async e=>{e?.preventDefault(),await q(),r&&a.shouldProceedtoEmbeddedWalletCreationFlow(r,d.embeddedWallets)?(l({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),y({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,screen:"AffirmativeConsentScreen"}}),i()},callAuthOnSuccessOnClose:!0}}),u("EmbeddedWalletOnAccountCreateScreen")):p()},onDecline:v})}},c=({termsAndConditionsUrl:i,privacyPolicyUrl:s,onAccept:n,onDecline:o,title:a="One last step",subtitle:u="By signing up, you agree to our terms and privacy policy."})=>/*#__PURE__*/e.jsx(l.ScreenLayout,{title:a,subtitle:u,icon:r.FileCheck,primaryCta:{label:"Accept",onClick:n},secondaryCta:{label:"No thanks",onClick:o},watermark:!0,children:(i||s)&&/*#__PURE__*/e.jsxs(d,{children:[i&&/*#__PURE__*/e.jsxs(t.Button,{variant:"muted",href:i,target:"_blank",size:"lg",style:{justifyContent:"space-between"},as:"a",children:["View Terms",/*#__PURE__*/e.jsx(r.ExternalLink,{width:16,height:16,strokeWidth:2.25})]}),s&&/*#__PURE__*/e.jsxs(t.Button,{variant:"muted",href:s,target:"_blank",size:"lg",style:{justifyContent:"space-between"},as:"a",children:["View Privacy Policy",/*#__PURE__*/e.jsx(r.ExternalLink,{width:16,height:16,strokeWidth:2.25})]})]})});let d=i.styled.div`
2
- display: flex;
3
- flex-direction: column;
4
- gap: 12px;
5
- margin-top: var(--screen-space);
6
- `;exports.AffirmativeConsentScreen=u,exports.AffirmativeConsentScreenView=c,exports.default=u;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("lucide-react");require("react");var i=require("./context-BAmjgwZ7.js"),t=require("./get-is-unified-wallet-DitrQ4hx.js"),o=require("./ScreenLayout-DANQ0V5E.js");require("@privy-io/js-sdk-core"),require("tinycolor2"),require("@privy-io/are-addresses-equal"),require("./internal-context-BJv4f_bO.js"),require("ofetch"),require("./ModalHeader-CakS8Dcu.js"),require("styled-components"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("eventemitter3"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const n=({title:i="You don't have access to this app",subtitle:t="Have you been invited?",ctaText:n="Try another account",ctaLink:a,onCtaClick:u})=>/*#__PURE__*/e.jsx(o.ScreenLayout,{title:i,subtitle:t,icon:r.Lock,iconVariant:"warning",primaryCta:{label:n,onClick:()=>{a?window.open(a,"_blank"):u?.()}},watermark:!0}),a={component:()=>{let{navigate:r}=t.usePrivyModal(),o=i.useAppConfig(),a=o?.allowlistConfig.errorTitle||"You don't have access to this app",u=o?.allowlistConfig.errorDetail||"Have you been invited?",c=o?.allowlistConfig.errorCtaText||"Try another account",s=o?.allowlistConfig.errorCtaLink;/*#__PURE__*/return e.jsx(n,{title:a,subtitle:u,ctaText:c,ctaLink:s??void 0,onCtaClick:()=>{r("LandingScreen")}})}};exports.AllowlistRejectionScreen=a,exports.AllowlistRejectionScreenView=n,exports.default=a;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("react"),t=require("./context-BAmjgwZ7.js"),n=require("./internal-context-BJv4f_bO.js"),i=require("./events-context-Di6--rDg.js"),l=require("./get-is-unified-wallet-DitrQ4hx.js"),o=require("./ConnectWalletView-QyJORAZG.js");require("@privy-io/js-sdk-core"),require("tinycolor2"),require("ofetch"),require("@privy-io/are-addresses-equal"),require("@heroicons/react/24/outline"),require("@tanstack/react-virtual"),require("react-device-detect"),require("styled-components"),require("./ModalHeader-CakS8Dcu.js"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("eventemitter3"),require("viem/utils"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./CopyableText-DbFeIZI0.js"),require("lucide-react"),require("./Link-BdtTp2J4.js"),require("./QrCode-C-Mk5-26.js"),require("qrcode"),require("./EmailInputForm-Y-nHsEtF.js"),require("./ErrorMessage-BfTVyue9.js"),require("./useI18n-BsableMs.js"),require("./WalletCards-BfpeHH5n.js"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const a={component:()=>{let{setWalletConnectionStatus:a,closePrivyModal:c,inProgressAuthFlowRef:s}=n.usePrivyInternal(),{data:u,navigate:q}=l.usePrivyModal(),d=t.useAppConfig(),C=i.useEmitPrivyEvent(),p=u?.externalConnectWallet?.description,W=r.useRef(u?.externalConnectWallet?.walletList??d.appearance.walletList),j=r.useRef(u?.externalConnectWallet?.walletChainType??d.appearance.walletChainType),v=W.current,E=j.current,x="link"===s.current?void 0:()=>q("LandingScreen");/*#__PURE__*/return e.jsx(o.i,{walletList:v,walletChainType:E,onClose:c,onConnect:r.useCallback((({connector:e,wallet:r})=>{C("connectWallet","onSuccess",{wallet:r}),a({status:"connected",connectedWallet:r,connector:e,connectError:null,connectRetry:()=>null}),q("ConnectionStatusScreen",!u?.externalConnectWallet?.preSelectedWalletId)}),[a,q,u?.login?.disableSignup,u?.externalConnectWallet?.preSelectedWalletId]),onConnectError:e=>{e instanceof n.PrivyError?(console.warn(e.cause?e.cause:e.message),C("connectWallet","onError",e.privyErrorCode||n.PrivyErrorCode.GENERIC_CONNECT_WALLET_ERROR)):(console.warn(e),C("connectWallet","onError",n.PrivyErrorCode.UNKNOWN_CONNECT_WALLET_ERROR))},onBack:x,customDescription:p||"",preSelectedWalletId:u?.externalConnectWallet?.preSelectedWalletId,app:d})},isUnauthenticatedScreem:!0};exports.AuthenticateWithWalletScreen=a,exports.default=a;
@@ -1,2 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/CheckCircleIcon"),t=require("react"),i=require("viem"),n=require("@privy-io/js-sdk-core"),a=require("./Layouts-D3TOcPhm.js"),s=require("./ModalHeader-CakS8Dcu.js"),o=require("./ScreenHeader-CgYJ5Fmg.js"),u=require("./FundWalletMethodHeader-D2fapeXN.js"),l=require("./index-ByFhjjzH.js"),d=require("./context-BAmjgwZ7.js"),c=require("./internal-context-BJv4f_bO.js"),h=require("./useActiveWallet-CYUR_x0A.js"),g=require("./get-is-unified-wallet-DitrQ4hx.js"),p=require("./useGetTokenPrice-X3dW0I3y.js"),f=require("./useWallets-Cy6axcvW.js"),q=require("./analytics-C6C_4JmG.js"),v=require("./reservoir-Bx0HQwbb.js"),m=require("./index-BohqOluI.js"),C=require("./getChainName-C4rO8-3n.js"),S=require("./transaction-DjF5X-by.js"),j=require("./BridgeNetworkSelectionView-xdYr4mxx.js"),E=require("./use-export-wallet-C6DaLOxp.js"),I=require("./TransferOrBridgeLoadingScreen-CAYUlR4u.js");function T(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("tinycolor2"),require("ofetch"),require("zustand"),require("react-device-detect"),require("./events-context-Di6--rDg.js"),require("viem/utils"),require("@privy-io/are-addresses-equal"),require("./useGetSolPrice-Ca32VAbF.js"),require("uuid"),require("jose"),require("eventemitter3"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-CHcu9hX8.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("./getFormattedUsdFromLamports-Mu2fqwL2.js"),require("./getErc20Balance-C6ZUC_1B.js"),require("./Row-CMqYn75Q.js"),require("./ErrorMessage-BfTVyue9.js"),require("./Value-mhPsfsxe.js"),require("./LoadingSkeleton-BoyADunQ.js"),require("./Subtitle-CR8zM7ZJ.js"),require("./Title-ifTy35V5.js"),require("@heroicons/react/24/outline/WalletIcon"),require("./Chip-C6r7fZiR.js"),require("./NetworkIcon-BZ9Mj6vV.js"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("./shared-DBm7PUrg.js"),require("@heroicons/react/24/outline/ChevronDownIcon"),require("./formatErc20TokenAmount-DxwoWe7e.js"),require("./ethers-D8g2mvSK.js"),require("./styles-s2f3dL_6.js"),require("./LinkPasskeyScreen-CTN6f7yX.js"),require("lucide-react"),require("./TodoList-Cii_KrAk.js"),require("./ScreenLayout-DANQ0V5E.js"),require("./Screen-Dp9-H_S8.js"),require("./InjectedWalletIcon-UY3nMvZo.js"),require("./Address-DTfphH3Q.js");var y=/*#__PURE__*/T(r);const A={component:()=>{let r=d.useAppConfig(),{rpcConfig:T,appId:A,closePrivyModal:N,createAnalyticsEvent:w}=c.usePrivyInternal(),{navigate:b,setModalData:x,data:P}=g.usePrivyModal(),_=d.useAppConfig(),{wallets:L}=f.useWallets(),[F,k]=t.useState(null),[R,U]=t.useState(null),[B,M]=t.useState([]),[W,O]=t.useState(0),[D,H]=t.useState(!1),[V,Y]=t.useState(!1),[G,Q]=t.useState(!1),[$,z]=t.useState(!1),[X,J]=t.useState(),[K,Z]=t.useState();if(!P?.funding||"solana"!==P.funding.chainType)throw Error("Invalid funding data");let{address:ee,chain:re,connectedWallet:te}=P.funding,[ie,ne]=t.useState(P.funding.amount),ae=("ethereum"===te?.type?te:void 0)??L[0],se=h.useExternalWalletListing(ae?.walletClientType||"unknown"),oe=se?.name||"wallet",[ue,le]=t.useState(null);t.useEffect((()=>{(async()=>{if(!ae)return;let e=await ae.getEthereumProvider();le(i.createWalletClient({account:ae.address,transport:i.custom(e)}).extend(i.publicActions))})().catch(console.error)}),[ae]);let[de,ce]=t.useState(0n),he=S.getNativeCurrencyFromLamports(de);t.useEffect((()=>{let e=r.solanaRpcs[re];e?m.fetchWalletBalance({rpc:e.rpc,address:ee}).then((e=>ce(BigInt(e)))).catch(console.error):console.warn("Unable to load solana rpc, skipping balance")}),[]);let[ge,pe]=t.useState(),{tokenPrice:fe}=p.useGetTokenPrice("solana"),{fundingAmountInBaseUnit:qe,fundingAmountInUsd:ve}=S.getSolanaFormattedAmounts({amount:ie,fee:0n,tokenPrice:fe,isUsdc:P.funding.isUSDC});if(t.useEffect((()=>{(async()=>{if(!ue||!ae)return;let e=["solana:testnet","solana:devnet"].includes(re);e&&console.warn("Solana testnets are not supported for bridging");let r=n.addToDefaultChains(_.chains).filter((({testnet:r})=>!!r===e)),t=(await j.getBalanceForChains({chains:r,address:ae.address,appId:A,rpcConfig:T})).filter((e=>e.balance>0n));if(t.length<1)return void k(new c.PrivyClientError(`Wallet ${E.formatWalletAddress(ae.address)} does not have enough funds.`,void 0,c.PrivyErrorCode.INSUFFICIENT_BALANCE));t.sort(((e,r)=>Number(r.balance-e.balance)));let i=(await Promise.allSettled(t.map((async e=>({...e,quote:await v.getQuote({isTestnet:!1,input:v.toGetQuoteInput({appId:A,amount:qe.toString(),user:ae.address,recipient:ee,destinationChainId:v.RELAY_SOLANA_MAINNET_CHAIN_ID,destinationCurrency:v.RELAY_SOLANA_NATIVE_CURRENCY_ID,originChainId:e.chain.id})})}))))).filter((e=>"fulfilled"===e.status)).map((e=>e.value));if(i.length<1)return void k(new c.PrivyClientError(`Unable to fetch quotes for bridging. Wallet ${E.formatWalletAddress(ae.address)} does not have enough funds.`,void 0,c.PrivyErrorCode.INSUFFICIENT_BALANCE));let a=i.map((({quote:e,balance:r,chain:t})=>({bridgeTx:v.toEvmTransactionRequestInfoFromQuote(e),balance:r,chain:t,isErc20Quote:!1}))).filter((({bridgeTx:e})=>!!e));if(a.length>1)return void M(a);let s=a.at(0);s?(Y(!0),pe({data:s.bridgeTx.data,to:s.bridgeTx.to,value:s.bridgeTx.value,chain:s.chain})):k(new c.PrivyClientError(`Unable to select bridge option from quotes. Wallet ${E.formatWalletAddress(ae.address)} does not have enough funds.`,void 0,c.PrivyErrorCode.INSUFFICIENT_BALANCE))})().catch(console.error)}),[ue]),t.useEffect((()=>{(async()=>{let e,r;if(!ue||!ae||D||G||!ge)return;H(!0);let t=i.createPublicClient({chain:ge.chain,transport:i.http(f.getJsonRpcEndpointFromChain(ge.chain,T,A))});try{e=await t.prepareTransactionRequest({account:ae.address,to:ge.to,chain:ge.chain,data:ge.data,value:BigInt(ge.value??0)})}catch(e){console.error(e),B.length>1&&U(e.shortMessage??"Something went wrong")}if(e){H(!1),Q(!0);try{await ue.switchChain({id:ge.chain.id})}catch(e){await ue.addChain({chain:ge.chain}),await ue.switchChain({id:ge.chain.id})}try{r=await ue.sendTransaction(e)}catch(e){console.error(e),"TransactionExecutionError"===e.name&&(B.length<1?k(new c.PrivyClientError(e.shortMessage,void 0,c.PrivyErrorCode.TRANSACTION_FAILURE)):U(e.shortMessage??"Something went wrong"))}if(r)return await ue.waitForTransactionReceipt({hash:r}),V?(Z("pending"),void J(r)):(Q(!1),z(!0),void w({eventName:q.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{provider:"external",status:"success",txHash:r,address:ae.address,chainId:ge.chain.id,chainType:"ethereum",value:ge.value?i.formatUnits(BigInt(ge.value),18):void 0,token:"ETH",destination:ee,destinationClusterName:"mainnet-beta",destinationChainType:"solana",destinationValue:i.formatUnits(qe,9),destinationToken:"SOL"}}));Q(!1)}else H(!1)})().catch(console.error)}),[ue,ge]),v.useBridgingStatusPolling({transactionHash:X,isTestnet:!1,bridgingStatus:K,setBridgingStatus:Z,onSuccess({transactionHash:e}){Y(!1),z(!0),w({eventName:q.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{provider:"external",status:"success",txHash:e,address:ae?.address,chainId:ge?.chain.id,chainType:"ethereum",value:ge?.value?i.formatUnits(BigInt(ge.value),18):void 0,token:"ETH",destination:ee,destinationClusterName:"mainnet-beta",destinationChainType:"solana",destinationValue:i.formatUnits(qe,9),destinationToken:"SOL"}})},onFailure({error:e}){Y(!1),k(e)}}),t.useEffect((()=>{F&&(x({funding:P?.funding,solanaFundingData:P?.solanaFundingData,sendTransaction:P?.sendTransaction,errorModalData:{error:F,previousScreen:"TransferFromWalletScreen"}}),b("ErrorScreen",!1))}),[F]),t.useEffect((()=>{if(!$)return;let e=setTimeout(N,d.DEFAULT_SUCCESS_SCREEN_EXTRA_LONG_DURATION_MS);return()=>clearTimeout(e)}),[$]),$/*#__PURE__*/)return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(u.t,{}),/*#__PURE__*/e.jsx(a.RefactorSpacerTop,{}),/*#__PURE__*/e.jsxs(a.CenteredItemWithGap,{children:[/*#__PURE__*/e.jsx(y.default,{color:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/e.jsx(o.CenteredScreenHeader,{title:"Success!",description:`You’ve successfully added ${ie} SOL to your ${_.name} wallet. It may take a minute before the funds are available to use.`})]}),/*#__PURE__*/e.jsx(a.RefactorSpacerBottom,{}),/*#__PURE__*/e.jsx(s.BlobbyFooter,{})]});let me=B[W];return B.length>1&&me?/*#__PURE__*/e.jsx(j.BridgeNetworkSelectionView,{displayName:oe,configuredFundingChain:re,formattedBalance:he,fundingAmount:ie,fundingCurrency:"SOL",fundingAmountInUsd:ve,options:B,selectedOption:me,isPreparing:D,isSubmitting:G,addressToFund:ee,fundingWalletAddress:ae?.address||"",errorMessage:R,onSubmit:()=>{P.funding?.amount!==ie?async function(){if(ae&&me)try{let e=await v.getQuote({isTestnet:!1,input:v.toGetQuoteInput({appId:A,amount:qe.toString(),user:ae.address,recipient:ee,destinationChainId:v.RELAY_SOLANA_MAINNET_CHAIN_ID,destinationCurrency:v.RELAY_SOLANA_NATIVE_CURRENCY_ID,originChainId:me.chain.id})}),r=v.toEvmTransactionRequestInfoFromQuote(e);if(!r)throw Error("Invalid transaction request");Y(!0),pe({data:r.data,to:r.to,value:r.value,chain:me.chain})}catch(e){console.error(e),k(new c.PrivyClientError("Unable to fetch quotes for bridging",e,c.PrivyErrorCode.INSUFFICIENT_BALANCE))}}().catch(console.error):pe({to:me.bridgeTx.to,data:me.bridgeTx.data,value:me.bridgeTx.value,chain:me.chain})},onSelect:e=>{e!==W&&(U(null),O(e))},onAmountChange:ne}):G&&ae?/*#__PURE__*/e.jsx(I.TransferOrBridgeLoadingScreen,{walletClientType:ae?.walletClientType||"unknown",displayName:oe,addressToFund:ee,isBridging:V,isErc20Flow:!1,chainId:"solana",chainName:C.getChainName(re),totalPriceInUsd:void 0,totalPriceInNativeCurrency:void 0,gasPriceInUsd:void 0,gasPriceInNativeCurrency:void 0}):
2
- /*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(u.t,{}),/*#__PURE__*/e.jsx(l.NeutralSpinner,{}),/*#__PURE__*/e.jsx("div",{style:{marginTop:"1rem"}}),/*#__PURE__*/e.jsx(s.BlobbyFooter,{})]})}};exports.AwaitingEvmToSolBridgingScreen=A,exports.default=A;
@@ -1,2 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/CheckCircleIcon"),t=require("react"),i=require("viem"),n=require("@privy-io/js-sdk-core"),a=require("./Layouts-D3TOcPhm.js"),s=require("./ModalHeader-CakS8Dcu.js"),o=require("./ScreenHeader-CgYJ5Fmg.js"),u=require("./FundWalletMethodHeader-D2fapeXN.js"),d=require("./index-ByFhjjzH.js"),c=require("./context-BAmjgwZ7.js"),l=require("./internal-context-BJv4f_bO.js"),h=require("./useActiveWallet-CYUR_x0A.js"),g=require("./get-is-unified-wallet-DitrQ4hx.js"),f=require("./useGetTokenPrice-X3dW0I3y.js"),m=require("./useWallets-Cy6axcvW.js"),v=require("./transfer-B1Y_9LWi.js"),p=require("./formatErc20TokenAmount-DxwoWe7e.js"),C=require("./ethers-D8g2mvSK.js"),y=require("./analytics-C6C_4JmG.js"),q=require("./reservoir-Bx0HQwbb.js"),E=require("./index-BohqOluI.js"),T=require("./BridgeNetworkSelectionView-xdYr4mxx.js"),I=require("./getErc20Balance-C6ZUC_1B.js"),S=require("./use-export-wallet-C6DaLOxp.js"),j=require("./TransferOrBridgeLoadingScreen-CAYUlR4u.js");function w(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("tinycolor2"),require("ofetch"),require("zustand"),require("react-device-detect"),require("./events-context-Di6--rDg.js"),require("viem/utils"),require("@privy-io/are-addresses-equal"),require("./useGetSolPrice-Ca32VAbF.js"),require("uuid"),require("jose"),require("eventemitter3"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-CHcu9hX8.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("./Row-CMqYn75Q.js"),require("./ErrorMessage-BfTVyue9.js"),require("./Value-mhPsfsxe.js"),require("./LoadingSkeleton-BoyADunQ.js"),require("./Subtitle-CR8zM7ZJ.js"),require("./Title-ifTy35V5.js"),require("@heroicons/react/24/outline/WalletIcon"),require("./getChainName-C4rO8-3n.js"),require("./Chip-C6r7fZiR.js"),require("./NetworkIcon-BZ9Mj6vV.js"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("./shared-DBm7PUrg.js"),require("@heroicons/react/24/outline/ChevronDownIcon"),require("./styles-s2f3dL_6.js"),require("./LinkPasskeyScreen-CTN6f7yX.js"),require("lucide-react"),require("./TodoList-Cii_KrAk.js"),require("./ScreenLayout-DANQ0V5E.js"),require("./Screen-Dp9-H_S8.js"),require("./InjectedWalletIcon-UY3nMvZo.js"),require("./Address-DTfphH3Q.js");var b=/*#__PURE__*/w(r);const A={component:()=>{let{rpcConfig:r,appId:w,closePrivyModal:A,createAnalyticsEvent:N}=l.usePrivyInternal(),{navigate:F,setModalData:x,data:P}=g.usePrivyModal(),B=c.useAppConfig(),{wallets:_}=m.useWallets(),[R,W]=t.useState(!1),[k,U]=t.useState(0n),[L,M]=t.useState(!1),[D,H]=t.useState(null),[Q,O]=t.useState(null),[$,G]=t.useState([]),[V,Y]=t.useState(0),[z,J]=t.useState(!1),[X,K]=t.useState(!1),[Z,ee]=t.useState(!1),[re,te]=t.useState(!1),[ie,ne]=t.useState(),[ae,se]=t.useState();if(!P?.funding||"ethereum"!==P.funding.chainType)throw Error("Invalid funding data");let{erc20ContractInfo:oe,chain:ue,connectedWallet:de}=P.funding,ce=P.funding.address,le=P.funding.erc20Address,[he,ge]=t.useState(P.funding.amount);t.useEffect((()=>{le&&!oe&&H(Error("Unable to fetch token details"))}),[]);let fe=!!le&&!!oe,me=fe?BigInt(parseFloat(he)*10**oe.decimals):i.parseEther(he),ve=("ethereum"===de?.type?de:void 0)??_[0],pe=h.useExternalWalletListing(ve?.walletClientType||"unknown"),Ce=pe?.name||"wallet",[ye,qe]=t.useState(null);t.useEffect((()=>{(async()=>{if(!ve)return;let e=await ve.getEthereumProvider();qe(i.createWalletClient({account:ve.address,transport:i.custom(e)}).extend(i.publicActions))})().catch(console.error)}),[ve]);let[Ee,Te]=t.useState(0n);t.useEffect((()=>{i.createPublicClient({chain:ue,transport:i.http(m.getJsonRpcEndpointFromChain(ue,r,w))}).getBalance({address:ce}).then(Te).catch(console.error)}),[]);let[Ie,Se]=t.useState(0n);t.useEffect((()=>{fe&&I.getErc20Balance({chain:ue,address:ce,appId:w,rpcConfig:r,erc20Address:le}).then((e=>Se(e.balance))).catch(console.error)}),[]);let{tokenPrice:je}=f.useGetTokenPrice(ue.id),[we,be]=t.useState({to:ce,chain:ue,value:me,data:void 0});t.useEffect((()=>{(async()=>{let e,t;if(!ye||!ve||z||Z)return;J(!0);let n=i.createPublicClient({chain:we.chain,transport:i.http(m.getJsonRpcEndpointFromChain(we.chain,r,w))});if(fe&&!we.data)return await n.simulateContract({address:le,chain:we.chain,abi:v.ERC20_TRANSFER_ABI_STUB,functionName:"transfer",args:[ce,me],account:ve.address}).catch((e=>{if("ContractFunctionZeroDataError"===e?.cause?.name||e?.message?.includes("returned no data"))return n.simulateContract({address:le,chain:we.chain,abi:v.ERC20_TRANSFER_ABI_STUB_NO_RETURN,functionName:"transfer",args:[ce,me],account:ve.address}).catch((e=>{console.warn("Simulated token transfer failed with error, fetching bridge options.",e)}));console.warn("Simulated token transfer failed with error, fetching bridge options.",e)}))?(J(!1),void be({to:le,chain:we.chain,data:i.encodeFunctionData({abi:v.ERC20_TRANSFER_ABI_STUB,functionName:"transfer",args:[ce,me]}),value:"0x0"})):(J(!1),void M(!0));try{e=await n.prepareTransactionRequest({account:ve.address,to:we.to,chain:we.chain,data:we.data,value:BigInt(we.value??0)})}catch(e){if(console.error(e),$.length>1)O(e.shortMessage??"Something went wrong");else if(X&&0===$.length)return void H(new l.PrivyClientError(`Wallet ${S.formatWalletAddress(ve.address)} does not have enough funds.`,void 0,l.PrivyErrorCode.INSUFFICIENT_BALANCE))}if(!e)return J(!1),void M(!0);J(!1),ee(!0),W(!0),U(e.gas);try{await ye.switchChain({id:we.chain.id})}catch(e){await ye.addChain({chain:we.chain}),await ye.switchChain({id:we.chain.id})}try{t=await ye.sendTransaction(e)}catch(e){if(console.error(e),"TransactionExecutionError"===e.name)if($.length<1){let r=e.shortMessage;(e.shortMessage.includes("rejected the request")||e.details.includes("rejected the request"))&&(r="User rejected the request."),H(new l.PrivyClientError(r,void 0,l.PrivyErrorCode.TRANSACTION_FAILURE))}else O(e.shortMessage??"Something went wrong")}if(t)return await ye.waitForTransactionReceipt({hash:t}),ee(!1),X?(ne(t),void se("pending")):(te(!0),x(E.addFundingResultToModalData(P,"completed",t,ve?.walletClientType,fe,oe,ue)),void N({eventName:y.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{provider:"external",status:"success",txHash:t,address:ve.address,chainId:we.chain.id,chainType:"ethereum",value:we.value?i.formatUnits(BigInt(we.value),oe?.decimals??18):void 0,token:oe?.symbol??le??"ETH",destinationAddress:ce,destinationChainId:ue.id,destinationChainType:"ethereum",destinationValue:me?i.formatUnits(me,oe?.decimals??18):void 0,destinationToken:oe?.symbol??le??ue.nativeCurrency.name}}));ee(!1)})().catch(console.error)}),[ye,we]),t.useEffect((()=>{(async()=>{if(!L||!ye||!ve)return;let e=n.addToDefaultChains(B.chains).filter((e=>e.id!==ue.id&&!!e.testnet==!!ue.testnet));fe&&e.unshift(ue);let t=await T.getBalanceForChains({chains:e,address:ve.address,appId:w,rpcConfig:r,includeUsdc:P.funding?.isUSDC}),i=fe?t.filter((e=>e.balance>0n)):t.filter((e=>e.balance>me)),a=fe&&t.every((e=>0n===e.balance));if(i.length<1)return void H(a?new l.PrivyClientError(`Wallet ${S.formatWalletAddress(ve.address)} doesn't have enough funds to cover gas fees. Top up your wallet and try again.`,void 0,l.PrivyErrorCode.INSUFFICIENT_BALANCE):new l.PrivyClientError(`Wallet ${S.formatWalletAddress(ve.address)} does not have enough funds.`,void 0,l.PrivyErrorCode.INSUFFICIENT_BALANCE));i.sort(((e,r)=>Number(fe?(r.erc20Balance??0n)-(e.erc20Balance??0n):r.balance-e.balance)));let s=i.flatMap((e=>{let r=[{...e,isErc20Quote:!1,isTestnet:!!ue.testnet,input:q.toGetQuoteInput({appId:w,amount:me.toString(),user:ve.address,recipient:ce,destinationChainId:ue.id,destinationCurrency:le,originChainId:e.chain.id})}];return fe&&le&&(e.erc20Balance??0n)>=me&&r.push({...e,isErc20Quote:!0,isTestnet:!!ue.testnet,input:q.toGetQuoteInput({appId:w,amount:me.toString(),user:ve.address,recipient:ce,destinationChainId:ue.id,destinationCurrency:le,originChainId:e.chain.id,originCurrency:e.erc20Address})}),r})),o=(await Promise.allSettled(s.map((async e=>({...e,quote:await q.getQuote(e)}))))).filter((e=>"fulfilled"===e.status)).map((e=>e.value));if(o.length<1)return void H(new l.PrivyClientError(`Wallet ${S.formatWalletAddress(ve.address)} does not have enough funds.`,void 0,l.PrivyErrorCode.INSUFFICIENT_BALANCE));let u=o.map((e=>({bridgeTx:q.toEvmTransactionRequestInfoFromQuote(e.quote),balance:e.balance,chain:e.chain,erc20Balance:e.erc20Balance,isErc20Quote:e.isErc20Quote}))).filter((e=>!!e.bridgeTx));if(u.length>1)return void G(u);let d=u[0];d?(K(!0),be({data:d.bridgeTx.data,to:d.bridgeTx.to,value:d.bridgeTx.value,chain:d.chain})):H(new l.PrivyClientError(`Wallet ${S.formatWalletAddress(ve.address)} does not have enough funds.`,void 0,l.PrivyErrorCode.INSUFFICIENT_BALANCE))})().catch(console.error)}),[L]),q.useBridgingStatusPolling({transactionHash:ie,isTestnet:!!ue.testnet,bridgingStatus:ae,setBridgingStatus:se,onSuccess({transactionHash:e}){K(!1),te(!0),x(E.addFundingResultToModalData(P,"completed",e,ve?.walletClientType,fe,oe,ue)),N({eventName:y.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{provider:"external",status:"success",txHash:e,address:ve?.address,chainId:we.chain.id,chainType:"ethereum",value:we.value?i.formatUnits(BigInt(we.value),oe?.decimals??18):void 0,token:oe?.symbol??le??"ETH",destinationAddress:ce,destinationChainId:ue.id,destinationChainType:"ethereum",destinationValue:me?i.formatUnits(me,oe?.decimals??18):void 0,destinationToken:oe?.symbol??le??ue.nativeCurrency.name}})},onFailure({error:e}){K(!1),H(e)}}),t.useEffect((()=>{D&&(x({funding:P?.funding,solanaFundingData:P?.solanaFundingData,sendTransaction:P?.sendTransaction,errorModalData:{error:D,previousScreen:"TransferFromWalletScreen"}}),F("ErrorScreen",!1))}),[D]);let Ae=!fe&&je?C.getDollarsFromStringFloat(he??"0",je):void 0,Ne=fe?k:C.sumWeiQuantities([k,me]),Fe=Ne&&je?C.getDollarsFromWei(Ne,je):void 0,xe=Ne?C.getNativeCurrencyFromWei(Ne,P?.funding?.erc20Address?P?.funding?.erc20ContractInfo?.symbol||"ETH":P?.funding?.chain.nativeCurrency.symbol||"ETH"):void 0,Pe=k&&je?C.getDollarsFromWei(k,je):void 0,Be=k?C.getNativeCurrencyFromWei(k,ue?.nativeCurrency?.symbol||"ETH"):void 0;if(t.useEffect((()=>{if(!re)return;let e=setTimeout(A,c.DEFAULT_SUCCESS_SCREEN_EXTRA_LONG_DURATION_MS);return()=>clearTimeout(e)}),[re]),re/*#__PURE__*/)return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(u.t,{}),/*#__PURE__*/e.jsx(a.RefactorSpacerTop,{}),/*#__PURE__*/e.jsxs(a.CenteredItemWithGap,{children:[/*#__PURE__*/e.jsx(b.default,{color:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/e.jsx(o.CenteredScreenHeader,{title:"Success!",description:`You’ve successfully added ${he} ${fe?oe.symbol:ue.nativeCurrency.symbol} to your ${B.name} wallet. It may take a minute before the funds are available to use.`})]}),/*#__PURE__*/e.jsx(a.RefactorSpacerBottom,{}),/*#__PURE__*/e.jsx(s.BlobbyFooter,{})]});let _e=fe?`${p.formatErc20TokenAmount({amount:Ie,decimals:oe.decimals})} ${oe.symbol}`:C.getNativeCurrencyFromWei(Ee,ue.nativeCurrency.symbol,3,!0),Re=$[V];return $.length>1&&Re?/*#__PURE__*/e.jsx(T.BridgeNetworkSelectionView,{displayName:Ce,configuredFundingChain:ue,erc20ContractInfo:oe,formattedBalance:_e,fundingAmount:he,fundingCurrency:fe?oe.symbol:ue.nativeCurrency.symbol,fundingAmountInUsd:Ae,options:$,selectedOption:Re,isPreparing:z,isSubmitting:Z,addressToFund:ce,fundingWalletAddress:ve?.address||"",errorMessage:Q,onSubmit:()=>{P.funding?.amount!==he?async function(){if(ve&&Re)try{let e=await q.getQuote({isTestnet:!!ue.testnet,input:q.toGetQuoteInput({appId:w,amount:me.toString(),user:ve.address,recipient:ce,destinationChainId:ue.id,destinationCurrency:le,originChainId:Re.chain.id})}),r=q.toEvmTransactionRequestInfoFromQuote(e);if(!r)throw Error("Invalid transaction request");K(!0),be({data:r.data,to:r.to,value:r.value,chain:Re.chain})}catch(e){console.error(e),H(new l.PrivyClientError("Unable to fetch quotes for bridging",e,l.PrivyErrorCode.INSUFFICIENT_BALANCE))}}().catch(console.error):be({to:Re.bridgeTx.to,data:Re.bridgeTx.data,value:Re.bridgeTx.value,chain:Re.chain})},onSelect:e=>{e!==V&&(O(null),Y(e))},onAmountChange:ge}):R&&k&&ve&&P?.funding?/*#__PURE__*/e.jsx(j.TransferOrBridgeLoadingScreen,{walletClientType:ve?.walletClientType||"unknown",displayName:Ce,addressToFund:ce,isBridging:X,isErc20Flow:fe,totalPriceInUsd:Fe,totalPriceInNativeCurrency:xe,gasPriceInUsd:Pe,gasPriceInNativeCurrency:Be,chainId:ue.id,chainName:ue.name}):
2
- /*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(u.t,{}),/*#__PURE__*/e.jsx(d.NeutralSpinner,{}),/*#__PURE__*/e.jsx("div",{style:{marginTop:"1rem"}}),/*#__PURE__*/e.jsx(s.BlobbyFooter,{})]})}};exports.AwaitingExternalEthereumTransferScreen=A,exports.default=A;
@@ -1,103 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/20/solid/CheckIcon"),i=require("@heroicons/react/24/outline/EnvelopeIcon"),o=require("@heroicons/react/24/outline/PhoneIcon"),t=require("react"),n=require("react-device-detect"),a=require("styled-components"),s=require("./Layouts-D3TOcPhm.js"),c=require("./Link-BdtTp2J4.js"),l=require("./context-BAmjgwZ7.js"),u=require("./internal-context-BJv4f_bO.js"),d=require("./get-is-unified-wallet-DitrQ4hx.js"),p=require("./shouldProceedtoEmbeddedWalletCreationFlow-DAiUXgPZ.js"),v=require("./ScreenLayout-DANQ0V5E.js");function f(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("@privy-io/js-sdk-core"),require("tinycolor2"),require("ofetch"),require("@privy-io/are-addresses-equal"),require("./index-BohqOluI.js"),require("uuid"),require("jose"),require("eventemitter3"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-CHcu9hX8.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("./ModalHeader-CakS8Dcu.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");var m=/*#__PURE__*/f(r),y=/*#__PURE__*/f(i),h=/*#__PURE__*/f(o);const E=({contactMethod:r,authFlow:i,appName:o="Privy",whatsAppEnabled:a=!1,onBack:l,onCodeSubmit:u,onResend:d,errorMessage:p,success:f=!1,resendCountdown:E=0,onInvalidInput:C,onClearError:q})=>{let[S,A]=t.useState(g);t.useEffect((()=>{p||A(g)}),[p]);let b="email"===i?/*#__PURE__*/e.jsxs("span",{children:["Please check ",/*#__PURE__*/e.jsx(I,{children:r})," for an email from privy.io and enter your code below."]}):/*#__PURE__*/e.jsxs("span",{children:["Please check ",/*#__PURE__*/e.jsx(I,{children:r})," for a",a?" WhatsApp":""," message from ",o," and enter your code below."]}),P=/*#__PURE__*/e.jsxs(T,{children:[/*#__PURE__*/e.jsxs("span",{children:["Didn't get ","email"===i?"an email":"a message","?"]}),E?/*#__PURE__*/e.jsxs(N,{children:[/*#__PURE__*/e.jsx(m.default,{color:"var(--privy-color-foreground)",strokeWidth:1.33,height:"12px",width:"12px"}),/*#__PURE__*/e.jsx("span",{children:"Code sent"})]}):/*#__PURE__*/e.jsx(c.Link,{as:"button",size:"sm",onClick:d,children:"Resend code"})]}),k=async e=>{e.preventDefault();let r=e.currentTarget.value.replace(" ","");if(""===r)return;if(isNaN(Number(r)))return void C?.("Code should be numeric");q?.();let i=Number(e.currentTarget.name?.charAt(5)),o=[...r||[""]].slice(0,x-i),t=[...S.slice(0,i),...o,...S.slice(i+o.length)];A(t);let n=Math.min(Math.max(i+o.length,0),x-1);if(!isNaN(Number(e.currentTarget.value))){let e=document.querySelector(`input[name=code-${n}]`);e?.focus()}if(t.every((e=>e&&!isNaN(+e)))){let e=document.querySelector(`input[name=code-${n}]`);e?.blur(),await(u?.(t.join("")))}};/*#__PURE__*/return e.jsx(v.ScreenLayout,{title:"Enter confirmation code",subtitle:b,icon:"email"===i?y.default:h.default,onBack:l,showBack:!0,helpText:P,children:/*#__PURE__*/e.jsx(j,{children:/*#__PURE__*/e.jsx(s.HorizontallyCenteredItem,{children:/*#__PURE__*/e.jsxs(w,{children:[/*#__PURE__*/e.jsx("div",{children:S.map(((r,i)=>/*#__PURE__*/e.jsx("input",{name:`code-${i}`,type:"text",value:S[i],onChange:k,onKeyUp:e=>{"Backspace"===e.key&&(e=>{if(q?.(),A([...S.slice(0,e),"",...S.slice(e+1)]),e>0){let r=document.querySelector(`input[name=code-${e-1}]`);r?.focus()}})(i)},inputMode:"numeric",autoFocus:0===i,pattern:"[0-9]",className:`${f?"success":""} ${p?"fail":""}`,autoComplete:n.isMobile?"one-time-code":"off"},i)))}),/*#__PURE__*/e.jsx(_,{$fail:!!p,$success:f,children:/*#__PURE__*/e.jsx("span",{children:"Invalid or expired verification code"===p?"Incorrect code":p||(f?"Success!":"")})})]})})})})};let x=6,g=Array(6).fill("");var C,q,S=((C=S||{})[C.RESET_AFTER_DELAY=0]="RESET_AFTER_DELAY",C[C.CLEAR_ON_NEXT_VALID_INPUT=1]="CLEAR_ON_NEXT_VALID_INPUT",C),A=((q=A||{})[q.EMAIL=0]="EMAIL",q[q.SMS=1]="SMS",q);const b={component:()=>{let{navigate:r,lastScreen:i,navigateBack:o,setModalData:n,onUserCloseViaDialogOrKeybindRef:a}=d.usePrivyModal(),s=l.useAppConfig(),{closePrivyModal:c,resendEmailCode:v,resendSmsCode:f,getAuthMeta:m,loginWithCode:y,updateWallets:h,createAnalyticsEvent:x}=u.usePrivyInternal(),{authenticated:g,logout:C,user:q}=d.usePrivyContext(),{whatsAppEnabled:S}=l.useAppConfig(),[A,b]=t.useState(!1),[j,w]=t.useState(null),[_,T]=t.useState(null),[N,I]=t.useState(0);a.current=()=>null;let P=m()?.email?0:1,k=0===P?m()?.email||"":m()?.phoneNumber||"",L=l.DEFAULT_SUCCESS_SCREEN_DURATION_MS-500;t.useEffect((()=>{if(N){let e=setTimeout((()=>{I(N-1)}),1e3);return()=>clearTimeout(e)}}),[N]),t.useEffect((()=>{if(g&&A&&q){if(s?.legal.requireUsersAcceptTerms&&!q.hasAcceptedTerms){let e=setTimeout((()=>{r("AffirmativeConsentScreen")}),L);return()=>clearTimeout(e)}if(p.shouldProceedtoEmbeddedWalletCreationFlow(q,s.embeddedWallets)){let e=setTimeout((()=>{n({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),x({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,screen:"AwaitingPasswordlessCodeScreen"}}),C()},callAuthOnSuccessOnClose:!0}}),r("EmbeddedWalletOnAccountCreateScreen")}),L);return()=>clearTimeout(e)}{h();let e=setTimeout((()=>c({shouldCallAuthOnSuccess:!0,isSuccess:!0})),l.DEFAULT_SUCCESS_SCREEN_DURATION_MS);return()=>clearTimeout(e)}}}),[g,A,q]),t.useEffect((()=>{if(j&&0===_){let e=setTimeout((()=>{w(null),T(null);let e=document.querySelector("input[name=code-0]");e?.focus()}),1400);return()=>clearTimeout(e)}}),[j,_]);/*#__PURE__*/return e.jsx(E,{contactMethod:k,authFlow:0===P?"email":"sms",appName:s?.name,whatsAppEnabled:S,onBack:()=>o(),onCodeSubmit:async e=>{try{await y(e),b(!0)}catch(e){if(e instanceof u.PrivyApiError&&e.privyErrorCode===u.PrivyErrorCode.INVALID_CREDENTIALS)w("Invalid or expired verification code"),T(0);else if(e instanceof u.PrivyApiError&&e.privyErrorCode===u.PrivyErrorCode.CANNOT_LINK_MORE_OF_TYPE)w(e.message);else{if(e instanceof u.PrivyApiError&&e.privyErrorCode===u.PrivyErrorCode.USER_LIMIT_REACHED)return console.error(new u.PrivyUserLimitReachedError(e).toString()),void r("UserLimitReachedScreen");if(e instanceof u.PrivyApiError&&e.privyErrorCode===u.PrivyErrorCode.USER_DOES_NOT_EXIST)return void r("AccountNotFoundScreen");if(e instanceof u.PrivyApiError&&e.privyErrorCode===u.PrivyErrorCode.LINKED_TO_ANOTHER_USER)return n({errorModalData:{error:e,previousScreen:i??"AwaitingPasswordlessCodeScreen"}}),void r("ErrorScreen",!1);if(e instanceof u.PrivyApiError&&e.privyErrorCode===u.PrivyErrorCode.DISALLOWED_PLUS_EMAIL)return n({inlineError:{error:e}}),void r("ConnectOrCreateScreen",!1);if(e instanceof u.PrivyApiError&&e.privyErrorCode===u.PrivyErrorCode.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return n({accountTransfer:{nonce:e.data?.data?.nonce,account:k,displayName:e.data?.data?.account?.displayName,linkMethod:0===P?"email":"sms",embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress}}),void r("LinkConflictScreen");w("Issue verifying code"),T(0)}}},onResend:async()=>{I(30),0===P?await v():await f()},errorMessage:j||void 0,success:A,resendCountdown:N,onInvalidInput:e=>{w(e),T(1)},onClearError:()=>{1===_&&(w(null),T(null))}})}};let j=a.styled.div`
2
- display: flex;
3
- flex-direction: column;
4
- align-items: center;
5
- justify-content: center;
6
- margin: auto;
7
- gap: 16px;
8
- flex-grow: 1;
9
- width: 100%;
10
- `,w=a.styled.div`
11
- display: flex;
12
- flex-direction: column;
13
- width: 100%;
14
- gap: 12px;
15
-
16
- > div:first-child {
17
- display: flex;
18
- justify-content: center;
19
- gap: 0.5rem;
20
- width: 100%;
21
- border-radius: var(--privy-border-radius-sm);
22
-
23
- > input {
24
- border: 1px solid var(--privy-color-foreground-4);
25
- background: var(--privy-color-background);
26
- border-radius: var(--privy-border-radius-sm);
27
- padding: 8px 10px;
28
- height: 48px;
29
- width: 40px;
30
- text-align: center;
31
- font-size: 18px;
32
- font-weight: 600;
33
- color: var(--privy-color-foreground);
34
- transition: all 0.2s ease;
35
- }
36
-
37
- > input:focus {
38
- border: 1px solid var(--privy-color-foreground);
39
- box-shadow: 0 0 0 1px var(--privy-color-foreground);
40
- }
41
-
42
- > input:invalid {
43
- border: 1px solid var(--privy-color-error);
44
- }
45
-
46
- > input.success {
47
- border: 1px solid var(--privy-color-border-success);
48
- background: var(--privy-color-success-bg);
49
- }
50
-
51
- > input.fail {
52
- border: 1px solid var(--privy-color-border-error);
53
- background: var(--privy-color-error-bg);
54
- animation: shake 180ms;
55
- animation-iteration-count: 2;
56
- }
57
- }
58
-
59
- @keyframes shake {
60
- 0% {
61
- transform: translate(1px, 0px);
62
- }
63
- 33% {
64
- transform: translate(-1px, 0px);
65
- }
66
- 67% {
67
- transform: translate(-1px, 0px);
68
- }
69
- 100% {
70
- transform: translate(1px, 0px);
71
- }
72
- }
73
- `,_=a.styled.div`
74
- line-height: 20px;
75
- min-height: 20px;
76
- font-size: 14px;
77
- font-weight: 400;
78
- color: ${e=>e.$success?"var(--privy-color-success-dark)":e.$fail?"var(--privy-color-error-dark)":"transparent"};
79
- display: flex;
80
- justify-content: center;
81
- width: 100%;
82
- text-align: center;
83
- `,T=a.styled.div`
84
- display: flex;
85
- gap: 8px;
86
- align-items: center;
87
- justify-content: center;
88
- width: 100%;
89
- color: var(--privy-color-foreground-2);
90
- `,N=a.styled.div`
91
- display: flex;
92
- align-items: center;
93
- justify-content: center;
94
- border-radius: var(--privy-border-radius-sm);
95
- padding: 2px 8px;
96
- gap: 4px;
97
- background: var(--privy-color-background-2);
98
- color: var(--privy-color-foreground-2);
99
- `,I=a.styled.span`
100
- font-weight: 500;
101
- word-break: break-all;
102
- color: var(--privy-color-foreground);
103
- `;exports.AwaitingPasswordlessCodeScreen=b,exports.AwaitingPasswordlessCodeScreenView=E,exports.default=b;
@@ -1,2 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/CheckCircleIcon"),n=require("react"),t=require("viem"),a=require("@privy-io/js-sdk-core"),i=require("./Layouts-D3TOcPhm.js"),o=require("./ModalHeader-CakS8Dcu.js"),s=require("./ScreenHeader-CgYJ5Fmg.js"),l=require("./FundWalletMethodHeader-D2fapeXN.js"),d=require("./index-ByFhjjzH.js"),u=require("./context-BAmjgwZ7.js"),c=require("./internal-context-BJv4f_bO.js"),g=require("./useActiveWallet-CYUR_x0A.js"),v=require("./get-is-unified-wallet-DitrQ4hx.js"),f=require("./analytics-C6C_4JmG.js"),C=require("./reservoir-Bx0HQwbb.js"),p=require("./PrivyPluginContext-DsgaS6n9.js"),S=require("./usePrivy-CHcu9hX8.js"),h=require("./use-export-wallet-C6DaLOxp.js"),y=require("./TransferOrBridgeLoadingScreen-CAYUlR4u.js");function A(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("tinycolor2"),require("ofetch"),require("zustand"),require("react-device-detect"),require("./events-context-Di6--rDg.js"),require("viem/utils"),require("./useWallets-Cy6axcvW.js"),require("@privy-io/are-addresses-equal"),require("eventemitter3"),require("./InjectedWalletIcon-UY3nMvZo.js"),require("@heroicons/react/24/outline/WalletIcon"),require("./Row-CMqYn75Q.js"),require("./Value-mhPsfsxe.js"),require("./LoadingSkeleton-BoyADunQ.js"),require("./Address-DTfphH3Q.js"),require("lucide-react"),require("./NetworkIcon-BZ9Mj6vV.js"),require("@heroicons/react/24/outline/GlobeAltIcon");var E=/*#__PURE__*/A(r);const I={component:function(){let r=u.useAppConfig(),{closePrivyModal:A,createAnalyticsEvent:I,connectors:m}=c.usePrivyInternal(),{navigate:q,setModalData:N,data:T}=v.usePrivyModal(),j=u.useAppConfig(),w=n.useRef(!1),_=p.usePlugins(),[P,x]=n.useState(!1),[F,U]=n.useState(!1),[L,b]=n.useState(null),[R,W]=n.useState(),[D,O]=n.useState();if(!T?.funding||"ethereum"!==T.funding.chainType)throw Error("Invalid funding data");let{amount:k,connectedWallet:M,chain:B,solanaChain:H,isUSDC:G}=T.funding,$=T.funding.address,Y=T.funding.erc20Address,Q=T.funding.isUSDC?"USDC":B.nativeCurrency.symbol,V=n.useMemo((()=>"solana"===M?.type?M.provider:function({connectors:e,connectedWalletAddress:r}){let n=e.find((e=>"solana"===e.chainType&&e.wallets.some((e=>e.address===r)))),t=n?.wallet.accounts.find((e=>e.address===r));if(!n||!t)throw new c.PrivyClientError("Unable to find source wallet connector");return new a.ConnectedStandardSolanaWallet({wallet:n.wallet,account:t})}({connectors:m,connectedWalletAddress:M?.address||""})),[M,m]),X=n.useMemo((()=>{let e=_(S.SOLANA_FUNDING_PLUGIN_ID);if(!e)throw new c.PrivyClientError("Unable to load solana plugin");let n=r.solanaRpcs["solana:mainnet"];if(!n)throw new c.PrivyClientError("Unable to load mainnet RPC");return e.getSolanaRpcClient({rpc:n.rpc,rpcSubscriptions:n.rpcSubscriptions,chain:"solana:mainnet",blockExplorerUrl:n.blockExplorerUrl??"https://explorer.solana.com"})}),[]),z=g.useExternalWalletListing(h.toSolanaWalletClientType(V?.standardWallet.name||"unknown")),K=z?.name||"wallet";return n.useEffect((()=>{(async function(){if(!V||!B||w.current)return;let e=_(S.SOLANA_FUNDING_PLUGIN_ID);if(!e)return void b(new c.PrivyClientError("Unable to solana plugin"));w.current=!0,B?.testnet&&console.warn("Solana testnets are not supported for bridging");let r=G?1e6*parseFloat(k):t.parseEther(k),n=await C.getQuote({isTestnet:!!B.testnet,input:C.toGetQuoteInput({appId:j.id,amount:r.toString(),user:V.address,recipient:$,destinationChainId:B.id,originChainId:C.RELAY_SOLANA_MAINNET_CHAIN_ID,originCurrency:G?C.RELAY_SOLANA_USDC_TOKEN_ID:C.RELAY_SOLANA_NATIVE_CURRENCY_ID,destinationCurrency:G?Y:void 0})}).catch(console.error);if(!n)return void b(new c.PrivyClientError(`Unable to fetch quotes for bridging. Wallet ${h.formatSolanaWalletAddress(V.address)} does not have enough funds.`,void 0,c.PrivyErrorCode.INSUFFICIENT_BALANCE));let a=await e.createTransactionFromRelayQuote({quote:n,source:V.address,solanaClient:X});if(a)try{x(!0);let r=await e.simulateTransaction({solanaClient:X,tx:a});if(r.hasError)return r.hasFunds?(console.error("Transaction failed:",r.error),void b(new c.PrivyClientError("Something went wrong",void 0,c.PrivyErrorCode.TRANSACTION_FAILURE))):void b(new c.PrivyClientError(`Wallet ${h.formatSolanaWalletAddress(V?.address)} does not have enough funds. ${n.details.currencyIn.amountFormatted} ${Q} are needed to complete the transaction.`,void 0,c.PrivyErrorCode.INSUFFICIENT_BALANCE));let{signature:t}=await V.signAndSendTransaction({chain:"solana:mainnet",transaction:a}),i=e.getAddressFromBuffer(t);W(i),O("pending")}catch(e){if(console.error(e),/user rejected the request/gi.test(e.message||""))return void b(new c.PrivyClientError("Transaction was rejected by the user",void 0,c.PrivyErrorCode.TRANSACTION_FAILURE));b(new c.PrivyClientError("Something went wrong",void 0,c.PrivyErrorCode.TRANSACTION_FAILURE))}else b(new c.PrivyClientError(`Unable to select bridge option from quotes. Wallet ${h.formatSolanaWalletAddress(V.address)} does not have enough funds.`,void 0,c.PrivyErrorCode.INSUFFICIENT_BALANCE))})().catch(console.error)}),[]),C.useBridgingStatusPolling({transactionHash:R,isTestnet:!1,bridgingStatus:D,setBridgingStatus:O,onSuccess({transactionHash:e}){x(!1),U(!0),I({eventName:f.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{provider:"external",status:"success",txHash:e,address:V.address,chainType:"solana",clusterName:H,token:"SOL",destinationAddress:$,destinationChainId:B.id,destinationChainType:"ethereum",destinationValue:k,destinationToken:G?"USDC":"ETH"}})},onFailure({error:e}){x(!1),b(e)}}),n.useEffect((()=>{if(!F)return;let e=setTimeout(A,u.DEFAULT_SUCCESS_SCREEN_EXTRA_LONG_DURATION_MS);return()=>clearTimeout(e)}),[F]),n.useEffect((()=>{L&&(N({funding:T?.funding,solanaFundingData:T?.solanaFundingData,sendTransaction:T?.sendTransaction,errorModalData:{error:L,previousScreen:"TransferFromWalletScreen"}}),q("ErrorScreen",!1))}),[L]),F?/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(l.t,{}),/*#__PURE__*/e.jsx(i.RefactorSpacerTop,{}),/*#__PURE__*/e.jsxs(i.CenteredItemWithGap,{children:[/*#__PURE__*/e.jsx(E.default,{color:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/e.jsx(s.CenteredScreenHeader,{title:"Success!",description:`You’ve successfully added ${k} ${Q} to your ${j.name} wallet. It may take a minute before the funds are available to use.`})]}),/*#__PURE__*/e.jsx(i.RefactorSpacerBottom,{}),/*#__PURE__*/e.jsx(o.BlobbyFooter,{})]}):P&&V?/*#__PURE__*/e.jsx(y.TransferOrBridgeLoadingScreen,{walletClientType:h.toSolanaWalletClientType(V?.standardWallet.name||"unknown"),displayName:K,addressToFund:$,isBridging:P,isErc20Flow:!1,chainId:B.id,chainName:B.name,totalPriceInUsd:void 0,totalPriceInNativeCurrency:void 0,gasPriceInUsd:void 0,gasPriceInNativeCurrency:void 0}):
2
- /*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(l.t,{}),/*#__PURE__*/e.jsx(d.NeutralSpinner,{}),/*#__PURE__*/e.jsx("div",{style:{marginTop:"1rem"}}),/*#__PURE__*/e.jsx(o.BlobbyFooter,{})]})}};exports.AwaitingSolToEvmBridgingScreen=I,exports.default=I;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("lucide-react"),t=require("react"),i=require("./index-BohqOluI.js"),s=require("./get-is-unified-wallet-DitrQ4hx.js"),u=require("./ScreenLayout-DANQ0V5E.js");require("@privy-io/js-sdk-core"),require("uuid"),require("jose"),require("eventemitter3"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("./context-BAmjgwZ7.js"),require("tinycolor2"),require("styled-components"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./internal-context-BJv4f_bO.js"),require("ofetch"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-CHcu9hX8.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("@privy-io/are-addresses-equal"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("./ModalHeader-CakS8Dcu.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const a=({status:i,title:s,description:a,userIntentRequired:n,retriesRemaining:o,hasSelectedCta:c,onContinue:l,onRetry:d})=>{let q=t.useMemo((()=>{switch(i){case"loading":default:return;case"success":return n?{label:c?"Continuing...":"Continue",onClick:l,disabled:c,loading:c}:void 0;case"error":return o>0?{label:"Retry",onClick:d}:void 0}}),[i,c,l,d]),p=t.useMemo((()=>({loading:"loading",ready:"subtle",disabled:"subtle",success:"success",error:"error"}[i]||"loading")),[i]);/*#__PURE__*/return e.jsx(u.ScreenLayout,{icon:"loading"===i||"ready"===i?void 0:"success"===i?r.CheckCircle:r.XCircle,iconVariant:p,title:s,subtitle:a,primaryCta:q,watermark:!0})},n={component:()=>{let{lastScreen:r,data:u,navigate:n,setModalData:o}=s.usePrivyModal(),{status:c,token:l,waitForResult:d,reset:q,execute:p}=i.useCaptcha(),y=t.useRef([]),h=e=>{y.current=[e,...y.current]},[g,m]=t.useState(!0);t.useEffect((()=>(h(setTimeout(m,1e3,!1)),()=>{y.current.forEach((e=>clearTimeout(e))),y.current=[]})),[]);let[v,C]=t.useState(""),[j,f]=t.useState("Checking that you are a human..."),[S,b]=t.useState(!1),[w,k]=t.useState(3),x=u?.captchaModalData,R=async e=>{try{await(x?.callback(e)),x?.onSuccessNavigateTo&&n(x?.onSuccessNavigateTo,!1)}catch(e){if(e instanceof i.CaptchaError)return;o({errorModalData:{error:e,previousScreen:r||"LandingScreen"}}),n(x?.onErrorNavigateTo||"ErrorScreen",!1)}};t.useEffect((()=>{"success"===c?h(setTimeout((async()=>{let e=await d();!e||x?.userIntentRequired||R(e)}),1e3)):"ready"===c&&h(setTimeout((()=>{"ready"===c&&p()}),500))}),[c]),t.useEffect((()=>{if(!g)switch(c){case"success":C("Success!"),f("CAPTCHA passed successfully."),x?.userIntentRequired||setTimeout((()=>{b(!0),R(l)}),2e3);break;case"loading":C(""),f("Checking that you are a human...");break;case"error":C("Something went wrong"),f(w<=0?"If you use an adblocker or VPN, try disabling and re-attempting.":"You did not pass CAPTCHA. Please try again.")}}),[c,g,S]);/*#__PURE__*/return e.jsx(a,{status:c,title:v,description:j,userIntentRequired:x?.userIntentRequired,retriesRemaining:w,hasSelectedCta:S,onContinue:()=>{b(!0),R(l)},onRetry:async()=>{if(w<=0)return;k((e=>e-1)),q(),p();let e=await d();!e||x?.userIntentRequired||R(e)}})}};exports.CaptchaScreen=n,exports.CaptchaScreenView=a,exports.default=n;
@@ -1,16 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),i=require("@heroicons/react/24/solid/CheckCircleIcon"),t=require("react"),n=require("styled-components"),o=require("./ModalHeader-CakS8Dcu.js"),s=require("./Layouts-D3TOcPhm.js"),a=require("./useActiveWallet-CYUR_x0A.js"),u=require("./internal-context-BJv4f_bO.js"),c=require("./get-is-unified-wallet-DitrQ4hx.js"),l=require("./analytics-C6C_4JmG.js"),d=require("./index-BohqOluI.js");function g(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("./context-BAmjgwZ7.js"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("eventemitter3"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("ofetch"),require("@privy-io/are-addresses-equal"),require("uuid"),require("jose"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-CHcu9hX8.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js");var p=/*#__PURE__*/g(r),f=/*#__PURE__*/g(i);const m={component:()=>{let{data:r,setModalData:i,navigate:n,navigateBack:s}=c.usePrivyModal(),{closePrivyModal:a,createAnalyticsEvent:d,client:g}=u.usePrivyInternal(),[p,f]=t.useState("pending-in-flow"),m=t.useRef(0),q={...r?.funding,showAlternateFundingMethod:!0};q.usingDefaultFundingMethod&&(q.usingDefaultFundingMethod=!1);let{partnerUserId:v,popup:y}=r?.coinbaseOnrampStatus??{};return t.useEffect((()=>{if("pending-in-flow"===p||"pending-after-flow"===p){let e=setInterval((async()=>{if(v)try{let{status:e}=await g.getCoinbaseOnRampStatus({partnerUserId:v});if("success"===e)return void f("success");if("failure"===e)throw Error("There was an error completing Coinbase Onramp flow.");if(m.current>=3)return i({funding:q,solanaFundingData:r?.solanaFundingData}),void n("FundingMethodSelectionScreen");y?.closed&&(m.current=m.current+1,f("pending-after-flow"))}catch(e){console.error(e),f("error"),d({eventName:l.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{status:"failure",provider:"coinbase-onramp",error:e.message}}),i({funding:{...q,errorMessage:"Something went wrong adding funds. Please try again or use another method."},solanaFundingData:r?.solanaFundingData}),n("FundingMethodSelectionScreen")}}),1500);return()=>clearInterval(e)}}),[v,y,p]),/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(o.ModalHeader,{title:"Fund account",backFn:()=>{i({funding:q,solanaFundingData:r?.solanaFundingData}),s()}},"header"),/*#__PURE__*/e.jsx(h,{status:p,onClickCta:a}),/*#__PURE__*/e.jsx(o.BlobbyFooter,{})]})}};let h=({status:r,onClickCta:i})=>{let{title:n,body:a,cta:u}=t.useMemo((()=>(e=>{switch(e){case"success":return{title:"You've funded your account!",body:"It may take a few minutes for the assets to appear.",cta:"Continue"};case"pending-after-flow":return{title:"In Progress",body:"Almost done. Retrieving transaction status from Coinbase",cta:""};case"error":case"pending-in-flow":return{title:"In Progress",body:"Go back to Coinbase Onramp to finish funding your account.",cta:""}}})(r)),[r]);/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsxs(y,{children:[/*#__PURE__*/e.jsx(q,{isSucccess:"success"===r}),/*#__PURE__*/e.jsxs(s.FixedGappedContainer,{children:[/*#__PURE__*/e.jsx("h3",{children:n}),/*#__PURE__*/e.jsx(v,{children:a})]})]}),u&&/*#__PURE__*/e.jsx(o.PrimaryButton,{onClick:i,children:u})]})},q=({isSucccess:r})=>{if(!r){let r="var(--privy-color-foreground-4)";/*#__PURE__*/return e.jsxs("div",{style:{position:"relative"},children:[/*#__PURE__*/e.jsx(a.Loader,{color:r,style:{position:"absolute"}}),/*#__PURE__*/e.jsx(a.LoaderFaint,{color:r}),/*#__PURE__*/e.jsx(d.CoinbaseWallet,{style:{position:"absolute",width:"2.8rem",height:"2.8rem",top:"1.2rem",left:"1.2rem"}})]})}let i=r?f.default:()=>/*#__PURE__*/e.jsx(p.default,{width:"3rem",height:"3rem",style:{backgroundColor:"var(--privy-color-foreground-4)",color:"var(--privy-color-background)",borderRadius:"100%",padding:"0.5rem",margin:"0.5rem"}}),t=r?"var(--privy-color-success)":"var(--privy-color-foreground-4)";/*#__PURE__*/return e.jsx("div",{style:{borderColor:t,display:"flex",justifyContent:"center",alignItems:"center",borderRadius:"100%",borderWidth:2,padding:"0.5rem",marginBottom:"0.5rem"},children:i&&/*#__PURE__*/e.jsx(i,{width:"4rem",height:"4rem",color:t})})},v=n.styled.p`
2
- font-size: 1rem;
3
- color: var(--privy-color-foreground-3);
4
- margin-bottom: 1rem;
5
- display: flex;
6
- flex-direction: column;
7
- gap: 1rem;
8
- `,y=n.styled.div`
9
- display: flex;
10
- flex-direction: column;
11
- align-items: center;
12
- justify-content: center;
13
- margin-left: 1.75rem;
14
- margin-right: 1.75rem;
15
- padding: 2rem 0;
16
- `;exports.CoinbaseOnrampStatusScreen=m,exports.default=m;
@@ -1,3 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("lucide-react"),i=require("react"),a=require("styled-components"),t=require("./context-BAmjgwZ7.js"),n=require("./internal-context-BJv4f_bO.js"),l=require("./index-BohqOluI.js"),s=require("./get-is-unified-wallet-DitrQ4hx.js"),o=require("./useActiveWallet-CYUR_x0A.js"),u=require("./use-export-wallet-C6DaLOxp.js"),c=require("./ModalHeader-CakS8Dcu.js"),d=require("./Chip-C6r7fZiR.js"),m=require("./EmailInputForm-Y-nHsEtF.js"),p=require("./ErrorMessage-BfTVyue9.js");const g=/*#__PURE__*/i.forwardRef(((a,m)=>{let[g,x]=i.useState(a.defaultValue||""),[E,v]=i.useState(""),[S,C]=i.useState(!1),{authenticated:q}=s.usePrivyContext(),{initLoginWithEmail:b}=n.usePrivyInternal(),{navigate:P,setModalData:f,currentScreen:k,data:w}=s.usePrivyModal(),{enabled:M,token:I}=l.useCaptcha(),[L,A]=i.useState(!1),{accountType:T}=o.useRecentlyUsedLogin(),F=t.useAppConfig();i.useEffect((()=>{!g&&F.disablePlusEmails&&w?.inlineError?.error instanceof n.PrivyError&&w?.inlineError?.error.privyErrorCode===n.PrivyErrorCode.DISALLOWED_PLUS_EMAIL&&!E&&v("Please enter a valid email address without a '+'."),E&&v("")}),[g]);let D=u.validateEmail(g),U=S||!D,R=()=>{var e;f({login:w?.login,inlineError:void 0}),!M||I||q?(e=I,C(!0),b({email:g,captchaToken:e,disableSignup:w?.login?.disableSignup,withPrivyUi:!0}).then((()=>{P("AwaitingPasswordlessCodeScreen")})).catch((e=>{f({errorModalData:{error:e,previousScreen:k||"LandingScreen"}}),P("ErrorScreen")})).finally((()=>{C(!1)}))):(f({captchaModalData:{callback:e=>b({email:g,captchaToken:e,withPrivyUi:!0}),userIntentRequired:!1,onSuccessNavigateTo:"AwaitingPasswordlessCodeScreen",onErrorNavigateTo:"ErrorScreen"}}),P("CaptchaScreen"))};/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsxs(h,{children:[E&&/*#__PURE__*/e.jsx(p.ErrorMessage,{style:{display:"block",marginTop:"0.25rem",textAlign:"left"},children:E}),/*#__PURE__*/e.jsxs(y,{stacked:a.stacked,$error:!!E,children:[/*#__PURE__*/e.jsx(j,{children:/*#__PURE__*/e.jsx(r.Mail,{})}),/*#__PURE__*/e.jsx("input",{ref:m,id:"email-input",className:"login-method-button",type:"email",placeholder:"your@email.com",onFocus:()=>A(!0),onChange:e=>x(e.target.value),onKeyUp:e=>{"Enter"===e.key&&R()},value:g,autoComplete:"email"}),"email"!==T||L?a.stacked?/*#__PURE__*/e.jsx("span",{}):/*#__PURE__*/e.jsx(c.EmbeddedButton,{isSubmitting:S,onClick:R,disabled:U,children:"Submit"}):/*#__PURE__*/e.jsx(d.Chip,{color:"gray",children:"Recent"})]})]}),a.stacked?/*#__PURE__*/e.jsx(c.PrimaryButton,{loadingText:null,loading:S,disabled:U,onClick:R,style:{width:"100%"},children:"Submit"}):null]})}));let h=m.InputContainerForm,y=m.EmailInputForm,j=a.styled(o.LoginMethodIconWrapper)`
2
- display: inline-flex;
3
- `;exports.ConnectEmailForm=g;
@@ -1,9 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("lucide-react"),i=require("styled-components"),t=require("./get-is-unified-wallet-DitrQ4hx.js"),n=require("./ScreenLayout-DANQ0V5E.js"),o=require("./index-BohqOluI.js");require("@privy-io/are-addresses-equal"),require("react"),require("./context-BAmjgwZ7.js"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("./internal-context-BJv4f_bO.js"),require("ofetch"),require("./ModalHeader-CakS8Dcu.js"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("eventemitter3"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js"),require("uuid"),require("jose"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-CHcu9hX8.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js");const s=r=>/*#__PURE__*/e.jsx("svg",{id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",viewBox:"-0.625 12.48 397.647 399.546",width:"2500",height:"674",preserveAspectRatio:"none",...r,children:/*#__PURE__*/e.jsx("g",{children:/*#__PURE__*/e.jsx("path",{fill:"#333745",d:"M 333.9 12.8 L 150.9 12.8 L 150.9 258.4 L 396.5 258.4 L 396.5 76.7 C 396.6 42.2 368.4 12.8 333.9 12.8 Z M 94.7 12.8 L 64 12.8 C 29.5 12.8 0 40.9 0 76.8 L 0 107.5 L 94.7 107.5 L 94.7 12.8 Z M 0 165 L 94.7 165 L 94.7 259.7 L 0 259.7 L 0 165 Z M 301.9 410.6 L 332.6 410.6 C 367.1 410.6 396.6 382.5 396.6 346.6 L 396.6 316 L 301.9 316 L 301.9 410.6 Z M 150.9 316 L 245.6 316 L 245.6 410.7 L 150.9 410.7 L 150.9 316 Z M 0 316 L 0 346.7 C 0 381.2 28.1 410.7 64 410.7 L 94.7 410.7 L 94.7 316 L 0 316 Z"})})}),u=({onContinueWithLedger:i,onContinueWithoutLedger:t,title:u="Phantom supports Ledger",subtitle:a="Are you using a Ledger hardware wallet?\nContinue to sign with Ledger"})=>/*#__PURE__*/e.jsx(n.ScreenLayout,{title:u,subtitle:/*#__PURE__*/e.jsx(d,{children:a}),primaryCta:{label:"Continue with Ledger",onClick:i},secondaryCta:{label:"Continue without Ledger",onClick:t},watermark:!0,children:/*#__PURE__*/e.jsxs(l,{children:[/*#__PURE__*/e.jsx(o.Phantom,{style:{width:"48px",height:"48px"}}),/*#__PURE__*/e.jsx(r.ArrowRightLeft,{strokeWidth:2,color:"var(--privy-color-icon-subtle)",width:22,height:22}),/*#__PURE__*/e.jsx(s,{style:{width:"48px",height:"48px"}})]})});function a(){let{data:r,setModalData:i,navigate:n}=t.usePrivyModal();/*#__PURE__*/return e.jsx(u,{onContinueWithLedger:function(){i({...r,login:{...r?.login,isSigningInWithLedgerSolana:!0}}),n("ConnectionStatusScreen")},onContinueWithoutLedger:function(){i({...r,login:{...r?.login,isSigningInWithLedgerSolana:!1}}),n("ConnectionStatusScreen")}})}const c={component:a};let l=i.styled.div`
2
- display: flex;
3
- align-items: center;
4
- justify-content: center;
5
- gap: 8px;
6
- margin-bottom: var(--screen-space);
7
- `,d=i.styled.span`
8
- white-space: pre-wrap;
9
- `;exports.ConnectLedgerScreen=c,exports.ConnectLedgerScreenComponent=a,exports.ConnectLedgerScreenView=u,exports.default=c;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("react"),t=require("./context-BAmjgwZ7.js"),n=require("./internal-context-BJv4f_bO.js"),i=require("./events-context-Di6--rDg.js"),o=require("./get-is-unified-wallet-DitrQ4hx.js"),a=require("./ConnectWalletView-QyJORAZG.js");require("@privy-io/js-sdk-core"),require("tinycolor2"),require("ofetch"),require("@privy-io/are-addresses-equal"),require("@heroicons/react/24/outline"),require("@tanstack/react-virtual"),require("react-device-detect"),require("styled-components"),require("./ModalHeader-CakS8Dcu.js"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("eventemitter3"),require("viem/utils"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./CopyableText-DbFeIZI0.js"),require("lucide-react"),require("./Link-BdtTp2J4.js"),require("./QrCode-C-Mk5-26.js"),require("qrcode"),require("./EmailInputForm-Y-nHsEtF.js"),require("./ErrorMessage-BfTVyue9.js"),require("./useI18n-BsableMs.js"),require("./WalletCards-BfpeHH5n.js"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const l={component:()=>{let{closePrivyModal:l}=n.usePrivyInternal(),{data:c,navigate:s}=o.usePrivyModal(),u=t.useAppConfig(),d=i.useEmitPrivyEvent(),q=c?.externalConnectWallet?.description,C=r.useRef(c?.externalConnectWallet?.walletList??u.appearance.walletList),p=r.useRef(c?.externalConnectWallet?.walletChainType??u.appearance.walletChainType);/*#__PURE__*/return e.jsx(a.i,{walletList:C.current,walletChainType:p.current,preSelectedWalletId:c?.externalConnectWallet?.preSelectedWalletId,hideHeader:c?.externalConnectWallet?.hideHeader,onBack:c?.funding?()=>s("FundingMethodSelectionScreen"):void 0,onClose:()=>{d("connectWallet","onError",n.PrivyErrorCode.GENERIC_CONNECT_WALLET_ERROR),l()},onConnect:({connector:e,wallet:r})=>{d("connectWallet","onSuccess",{wallet:r});let t=c?.externalConnectWallet?.onCompleteNavigateTo;t?s(t({address:r.address,walletClientType:e?.walletClientType,walletChainType:e?.chainType})):l()},onConnectError:e=>{e instanceof n.PrivyError?(console.warn(e.cause?e.cause:e.message),d("connectWallet","onError",e.privyErrorCode||n.PrivyErrorCode.GENERIC_CONNECT_WALLET_ERROR)):(console.warn(e),d("connectWallet","onError",n.PrivyErrorCode.UNKNOWN_CONNECT_WALLET_ERROR))},customDescription:q,app:u,connectOnly:!0})},isUnauthenticatedScreem:!0};exports.ConnectOnlyLandingScreen=l,exports.default=l;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("react"),t=require("react-device-detect"),n=require("./use-export-wallet-C6DaLOxp.js"),i=require("./context-BAmjgwZ7.js"),o=require("./useActiveWallet-CYUR_x0A.js"),a=require("./internal-context-BJv4f_bO.js"),s=require("./get-is-unified-wallet-DitrQ4hx.js"),l=require("./ScreenLayout-DANQ0V5E.js"),c=require("./index-BohqOluI.js"),u=require("./ConnectionStatusScreen-DfKCyYnE.js");require("./useWallets-Cy6axcvW.js"),require("viem"),require("@privy-io/js-sdk-core"),require("eventemitter3"),require("viem/utils"),require("tinycolor2"),require("zustand"),require("styled-components"),require("./events-context-Di6--rDg.js"),require("ofetch"),require("@privy-io/are-addresses-equal"),require("./ModalHeader-CakS8Dcu.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js"),require("uuid"),require("jose"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-CHcu9hX8.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("./Link-BdtTp2J4.js"),require("./useI18n-BsableMs.js"),require("./shouldProceedtoEmbeddedWalletCreationFlow-DAiUXgPZ.js");const d=({walletLogo:r,success:t,errorMessage:i,title:o,subtitle:a,onRetry:s,onUseDifferentWallet:c,onBack:u,numRetries:d,maxRetries:q})=>/*#__PURE__*/e.jsx(l.ScreenLayout,{title:o,subtitle:a,icon:r,iconVariant:"loading",iconLoadingStatus:{success:t,fail:!!i},primaryCta:i===n.ConnectorErrors.ERROR_USER_EXISTS?{label:"Use a different wallet",onClick:c}:!t&&i?.retryable&&d<q?{label:"Retry",onClick:s,disabled:!i?.retryable||d>=q}:!t&&i&&d>=q?{label:"Use a different wallet",onClick:c}:void 0,onBack:u,watermark:!0}),q={component:()=>{let n,{navigateBack:l,navigate:q,lastScreen:w,currentScreen:p,data:m,setModalData:y}=s.usePrivyModal(),{walletConnectionStatus:C,closePrivyModal:S}=a.usePrivyInternal(),[g,j]=r.useState(void 0),[v,f]=r.useState(0),h=o.useExternalWalletListing(C?.connector?.walletClientType||"unknown"),x="connected"===C?.status,E="switching_to_supported_chain"===C?.status;r.useEffect((()=>{if(x){let e;if(m?.externalConnectWallet?.onCompleteNavigateTo){let r=m.externalConnectWallet.onCompleteNavigateTo,t=C.connectedWallet?.address;e=setTimeout((()=>{if(m.funding&&C.connector){let e=C.connector.wallets.find((e=>e.address===t));y({...m,funding:{...m.funding,connectedWallet:e}})}q(r({address:t,walletClientType:C.connector?.walletClientType,walletChainType:C.connector?.chainType}))}),i.DEFAULT_SUCCESS_SCREEN_DURATION_MS)}else e=setTimeout(S,i.DEFAULT_SUCCESS_SCREEN_DURATION_MS);return()=>clearTimeout(e)}}),[x]);r.useEffect((()=>{C?.connectError&&(e=>{j(u.getErrorDetails(e))})(C?.connectError)}),[C]);let k=C?.connector?.connectorType||"injected",b=C?.connector?.walletClientType||"unknown",R=h?.metadata?.shortName||h?.name||C?.connector?.walletBranding.name||"Browser Extension",T=h?.image_url?.md||C?.connector?.walletBranding.icon||(r=>/*#__PURE__*/e.jsx(c.BrowserExtensionWallet,{...r})),_="Browser Extension"===R?R.toLowerCase():R;n=x?`Successfully connected with ${_}`:g?g.message:E?"Switching networks":`Waiting for ${_}`;let M="Don’t see your wallet? Check your other browser windows.";return x?M="You’re good to go!":v>=2&&g?M="Unable to connect wallet":g?M=g.detail:E?M="Switch your wallet to the requested network.":"metamask"===b&&t.isMobile?M="Click to continue to open and connect MetaMask.":"metamask"===b?M="For the best experience, connect only one wallet at a time.":"wallet_connect_v2"===k?M="Open your mobile wallet app to continue":"coinbase_wallet"===k&&(M="Confirm in the Coinbase app/popup to continue."),/*#__PURE__*/e.jsx(d,{walletName:R,walletLogo:T,success:x,errorMessage:g,title:n,subtitle:M,onRetry:()=>{f(v+1),j(void 0),C?.connectRetry()},onUseDifferentWallet:l,onBack:p===w?void 0:l,numRetries:v,maxRetries:2})}};exports.ConnectOnlyStatusScreen=q,exports.ConnectOnlyStatusScreenView=d,exports.default=q;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("./context-BAmjgwZ7.js"),i=require("./CustomLandingScreenView-Cx9QR2CX.js");require("react"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("@heroicons/react/24/outline/UserCircleIcon"),require("styled-components"),require("./ModalHeader-CakS8Dcu.js"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./internal-context-BJv4f_bO.js"),require("ofetch"),require("./useWallets-Cy6axcvW.js"),require("./get-is-unified-wallet-DitrQ4hx.js"),require("@privy-io/are-addresses-equal"),require("viem"),require("eventemitter3"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./index-BohqOluI.js"),require("uuid"),require("jose"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-CHcu9hX8.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("./ConnectWalletView-QyJORAZG.js"),require("@heroicons/react/24/outline"),require("@tanstack/react-virtual"),require("./CopyableText-DbFeIZI0.js"),require("lucide-react"),require("./Link-BdtTp2J4.js"),require("./QrCode-C-Mk5-26.js"),require("qrcode"),require("./EmailInputForm-Y-nHsEtF.js"),require("./ErrorMessage-BfTVyue9.js"),require("./useI18n-BsableMs.js"),require("./WalletCards-BfpeHH5n.js"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js"),require("./ConnectEmailForm-BjXzo_T8.js"),require("./Chip-C6r7fZiR.js"),require("./LoadingSkeleton-BoyADunQ.js"),require("./farcaster-CWHXGAib.js"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("./ConnectPhoneForm-BYX8kgCj.js"),require("./twitter-CJSxxOMI.js"),require("./twitch-BNvhZb2Y.js"),require("./telegram-D3O0_F1a.js"),require("./WalletOverflowButton-cnlzyqcK.js"),require("./ScreenLayout-DANQ0V5E.js");const u={component:()=>{let u=r.useAppConfig();return u.loginMethodsAndOrder&&u.loginMethodsAndOrder.primary.length>0?/*#__PURE__*/e.jsx(i.CustomLandingScreenView,{connectOnly:!0}):/*#__PURE__*/e.jsx(i.LandingScreenView,{connectOnly:!0})}};exports.ConnectOrCreateScreen=u,exports.default=u;
@@ -1,7 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),t=require("react"),n=require("react-device-detect"),r=require("styled-components"),o=require("./index-BohqOluI.js"),i=require("./Link-BdtTp2J4.js"),a=require("./context-BAmjgwZ7.js"),l=require("./useI18n-BsableMs.js"),c=require("./use-export-wallet-C6DaLOxp.js"),s=require("viem"),u=require("./internal-context-BJv4f_bO.js"),d=require("./useActiveWallet-CYUR_x0A.js"),g=require("./get-is-unified-wallet-DitrQ4hx.js"),S=require("./shouldProceedtoEmbeddedWalletCreationFlow-DAiUXgPZ.js"),p=require("./PrivyPluginContext-DsgaS6n9.js"),C=require("./usePrivy-CHcu9hX8.js"),w=require("./ScreenLayout-DANQ0V5E.js");require("@privy-io/js-sdk-core"),require("uuid"),require("jose"),require("eventemitter3"),require("./useWallets-Cy6axcvW.js"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("viem/utils"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("@scure/base"),require("./events-context-Di6--rDg.js"),require("zustand"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("ofetch"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("@privy-io/are-addresses-equal"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("tinycolor2"),require("./ModalHeader-CakS8Dcu.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const y=e=>{let t=localStorage.getItem("-walletlink:https://www.walletlink.org:Addresses")?.split(" ").filter((e=>s.isHex(e,{strict:!0}))).map((e=>s.getAddress(e)));return!!t?.length&&!!e?.linkedAccounts.filter((e=>"wallet"==e.type&&t.includes(e.address))).length};const E=e=>e?.privyErrorCode===u.PrivyErrorCode.LINKED_TO_ANOTHER_USER?c.ConnectorErrors.ERROR_USER_EXISTS:e instanceof c.PrivyProviderRpcError&&!e.details.default?e.details:e instanceof c.WalletTimeoutError?c.ConnectorErrors.ERROR_TIMED_OUT:e?.privyErrorCode===u.PrivyErrorCode.CANNOT_LINK_MORE_OF_TYPE?c.ConnectorErrors.ERROR_USER_LIMIT_REACHED:c.ConnectorErrors.ERROR_WALLET_CONNECTION,h=({walletLogo:t,title:n,subtitle:r,signSuccess:o,errorMessage:a,connectSuccess:s,separateConnectAndSign:u,signing:d,walletConnectRedirectUri:g,walletConnectFallbackUniversalUri:S,hasTabbedAway:p,showCoinbaseWalletResetCta:C,numRetries:y,onBack:E,onSign:h,onRetry:v,onCoinbaseReset:f,onDifferentWallet:b})=>{let{t:_}=l.useI18n(),R=C?{label:"Use a different wallet",onClick:f,disabled:o}:a===c.ConnectorErrors.ERROR_USER_EXISTS&&E?{label:"Use a different wallet",onClick:b}:s&&!o&&u?{label:d?"Signing":"Sign with your wallet",onClick:h,disabled:d}:!o&&a?.retryable&&y<2?{label:"Retry",onClick:v,disabled:!1}:o||a?void 0:{label:_("connectionStatus.connecting"),onClick:()=>{},disabled:!0};/*#__PURE__*/return e.jsx(w.ScreenLayout,{title:n,subtitle:r,icon:t,iconVariant:"loading",iconLoadingStatus:{success:o,fail:!!a},primaryCta:R,onBack:E,watermark:!0,children:!s&&g&&!p&&/*#__PURE__*/e.jsxs(m,{children:[_("connectionStatus.stillHere")," ",/*#__PURE__*/e.jsx(i.Link,{href:g,target:"_blank",variant:"underlined",size:"sm",children:_("connectionStatus.tryConnectingAgain")}),S&&/*#__PURE__*/e.jsxs(e.Fragment,{children:[" ",_("connectionStatus.or")," ",/*#__PURE__*/e.jsx(i.Link,{href:S,target:"_blank",variant:"underlined",size:"sm",children:_("connectionStatus.useDifferentLink")})]})]})})},v={component:()=>{let r,[i,s]=t.useState(!1),[w,v]=t.useState(!1),[m,f]=t.useState(void 0),{authenticated:b,logout:_}=g.usePrivyContext(),{navigate:R,navigateBack:T,lastScreen:q,currentScreen:k,setModalData:A,data:W}=g.usePrivyModal(),L=a.useAppConfig(),{t:I}=l.useI18n(),{getAuthFlow:j,walletConnectionStatus:x,closePrivyModal:U,initLoginWithWallet:M,loginWithWallet:O,updateWallets:N,createAnalyticsEvent:P}=u.usePrivyInternal(),{walletConnectors:D}=g.usePrivyContext(),[F,B]=t.useState(0),{user:H}=g.usePrivyContext(),V=p.usePlugins(),[X]=t.useState(H?.linkedAccounts.length||0),[z,K]=t.useState(""),[Y,G]=t.useState(""),[Q,J]=t.useState(!1),{hasTabbedAway:$}=function(){let[e,n]=t.useState(!1),r=t.useCallback((()=>{document.hidden&&n(!0)}),[]);return t.useEffect((()=>(document.addEventListener("visibilitychange",r),()=>document.removeEventListener("visibilitychange",r))),[r]),{hasTabbedAway:e,reset:()=>n(!1)}}(),{enabled:Z,token:ee}=o.useCaptcha(),te=d.useExternalWalletListing(x?.connector?.walletClientType||"unknown"),ne=n.isMobile&&"wallet_connect_v2"===x?.connector?.connectorType||n.isMobile&&"coinbase_wallet"===x?.connector?.connectorType||n.isMobile&&"base_account"===x?.connector?.connectorType||n.isMobile&&"injected"===x?.connector?.connectorType&&"phantom"===x?.connector?.walletClientType||n.isMobile&&"solana_adapter"===x?.connector?.connectorType&&"mobile_wallet_adapter"===x.connector.walletClientType,re="connected"===x?.status,oe="switching_to_supported_chain"===x?.status;t.useEffect((()=>{let e=j(),t=e instanceof o.SiweFlow||e instanceof o.SiwsFlow?e:void 0;re&&"solana"===x.connector?.chainType&&"phantom"===x.connector?.walletClientType&&V(C.SOLANA_LEDGER_PLUGIN_ID)&&void 0===W?.login?.isSigningInWithLedgerSolana?R("ConnectLedgerScreen",!1):(re&&!t&&(!Z||ee||b?M(x.connectedWallet,ee,W?.login?.disableSignup,W?.login?.isSigningInWithLedgerSolana?"transaction":"plain").then((()=>{J(!0)})):(A({captchaModalData:{callback:e=>M(x.connectedWallet,e,W?.login?.disableSignup,W?.login?.isSigningInWithLedgerSolana?"transaction":"plain").then((()=>{J(!0)})),userIntentRequired:!1,onSuccessNavigateTo:"ConnectionStatusScreen",onErrorNavigateTo:"ErrorScreen"}}),R("CaptchaScreen",!1))),t instanceof o.SiwsFlow&&W?.login?.isSigningInWithLedgerSolana&&(t.messageType="transaction"),t&&ne&&re&&!t.preparedMessage?t.buildMessage():t&&!ne&&re&&(w||(async()=>{v(!0),f(void 0);try{"wallet_connect_v2"===x?.connector?.connectorType&&"metamask"===x?.connector?.walletClientType&&await c.sleep(2500),await ae()}catch(e){console.warn("Auto-prompted signature failed",e)}finally{v(!1)}})()))}),[F,re,Q]),t.useEffect((()=>{if(H&&i){let e=a.DEFAULT_SUCCESS_SCREEN_DURATION_MS-500;if(L?.legal.requireUsersAcceptTerms&&!H.hasAcceptedTerms){let t=setTimeout((()=>{R("AffirmativeConsentScreen")}),e);return()=>clearTimeout(t)}if(S.shouldProceedtoEmbeddedWalletCreationFlow(H,L.embeddedWallets)){let t=setTimeout((()=>{A({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),P({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,screen:"ConnectionStatusScreen"}}),_()},callAuthOnSuccessOnClose:!0}}),R("EmbeddedWalletOnAccountCreateScreen")}),e);return()=>clearTimeout(t)}N();let t=setTimeout((()=>U({shouldCallAuthOnSuccess:!0,isSuccess:!0})),a.DEFAULT_SUCCESS_SCREEN_DURATION_MS);return()=>clearTimeout(t)}}),[H,i]);let ie=e=>{if(e?.privyErrorCode!==u.PrivyErrorCode.ALLOWLIST_REJECTED){if(e?.privyErrorCode===u.PrivyErrorCode.USER_LIMIT_REACHED)return console.error(new u.PrivyUserLimitReachedError(e).toString()),void R("UserLimitReachedScreen");if(e?.privyErrorCode!==u.PrivyErrorCode.USER_DOES_NOT_EXIST)return e?.privyErrorCode===u.PrivyErrorCode.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce?(A({accountTransfer:{nonce:e.data?.data?.nonce,account:j()?.meta.address,displayName:e.data?.data?.account?.displayName,externalWalletMetadata:{walletClientType:j()?.meta.walletClientType,chainId:j()?.meta.chainId,connectorType:j()?.meta.connectorType},linkMethod:j()instanceof o.SiweFlow?"siwe":"siws",embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress}}),void R("LinkConflictScreen")):void f(E(e));R("AccountNotFoundScreen")}else R("AllowlistRejectionScreen")};async function ae(){try{await O(),s(!0)}catch(e){ie(e)}finally{v(!1)}}t.useEffect((()=>{x?.connectError&&ie(x?.connectError)}),[x]),((e,n)=>{let r=t.useRef((()=>{}));t.useEffect((()=>{r.current=e})),t.useEffect((()=>{if(null!==n){let e=setInterval((()=>r.current()),n||0);return()=>clearInterval(e)}}),[n])})((()=>{let e="wallet_connect_v2"===le&&x?.connector instanceof o.WalletConnectV2WalletConnector?x.connector.redirectUri:void 0;e&&K(e);let t="wallet_connect_v2"===le&&x?.connector instanceof o.WalletConnectV2WalletConnector?x.connector.fallbackUniversalRedirectUri:void 0;t&&G(t)}),x?.connector instanceof o.WalletConnectV2WalletConnector&&!z?500:null);let le=x?.connector?.connectorType||"injected",ce=x?.connector?.walletClientType||"unknown",se=te?.metadata?.shortName||te?.name||x?.connector?.walletBranding.name||"Browser Extension",ue=te?.image_url?.md||x?.connector?.walletBranding.icon||(t=>/*#__PURE__*/e.jsx(o.BrowserExtensionWallet,{...t})),de="Browser Extension"===se?se.toLowerCase():se;r=i?I("connectionStatus.successfullyConnected",{walletName:de}):m?I("connectionStatus.errorTitle",{errorMessage:m.message}):oe?"Switching networks":re?w&&ne?"Signing":"Sign to verify":`Waiting for ${de}`;let ge=I("connectionStatus.checkOtherWindows");i?ge=X===(H?.linkedAccounts.length||0)?"Wallet was already linked.":"You're good to go!":F>=2&&m?ge="Unable to connect wallet":m?ge=m.detail:oe?ge="Switch your wallet to the requested network.":re&&ne?ge="Sign the message in your wallet to verify it belongs to you.":"metamask"===ce&&n.isMobile?ge="Click continue to open and connect MetaMask.":"metamask"===ce?ge="For the best experience, connect only one wallet at a time.":"wallet_connect"===le?ge="Open your mobile wallet app to continue":"coinbase_wallet"===le?c.isCoinbaseWalletInstalled()||(ge=y(H)?"Continue with the Coinbase app. Not the right wallet? Reset your connection below.":"Confirm in the Coinbase app/popup to continue."):W?.login?.isSigningInWithLedgerSolana&&(ge="Ledger requires a transaction to verify your identity. You'll sign a transaction that performs no onchain action.");let Se=D?.walletConnectors?.find((e=>"coinbase_wallet"===e.walletClientType)),pe="coinbase_wallet"===ce&&(y(H)||m===c.ConnectorErrors.ERROR_USER_EXISTS);/*#__PURE__*/return e.jsx(h,{walletLogo:ue,title:r,subtitle:ge,signSuccess:i,errorMessage:m,connectSuccess:re,separateConnectAndSign:ne,signing:w,walletConnectRedirectUri:z,walletConnectFallbackUniversalUri:Y,hasTabbedAway:$,showCoinbaseWalletResetCta:pe,numRetries:F,onBack:q&&k!==q?T:void 0,onSign:()=>{v(!0),ae()},onRetry:()=>{B(F+1),f(void 0),re?(v(!0),ae()):x?.connectRetry()},onCoinbaseReset:()=>{Se&&Se?.disconnect()},onDifferentWallet:T})}};let m=r.styled.p`
2
- text-align: center;
3
- color: var(--privy-color-foreground-2);
4
- font-size: 14px;
5
- line-height: 22px;
6
- margin: 16px 0;
7
- `;exports.ConnectionStatusScreen=v,exports.ConnectionStatusView=h,exports.default=v,exports.getErrorDetails=E;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("react"),t=require("./context-BAmjgwZ7.js"),i=require("./index-BohqOluI.js"),o=require("./internal-context-BJv4f_bO.js"),a=require("./get-is-unified-wallet-DitrQ4hx.js"),s=require("./useActiveWallet-CYUR_x0A.js"),u=require("./shouldProceedtoEmbeddedWalletCreationFlow-DAiUXgPZ.js"),n=require("./ScreenLayout-DANQ0V5E.js");require("@privy-io/js-sdk-core"),require("tinycolor2"),require("uuid"),require("jose"),require("eventemitter3"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("./use-export-wallet-C6DaLOxp.js"),require("viem/utils"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("react-device-detect"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-CHcu9hX8.js"),require("./events-context-Di6--rDg.js"),require("@scure/base"),require("styled-components"),require("zustand"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("ofetch"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("@privy-io/are-addresses-equal"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("./ModalHeader-CakS8Dcu.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const c=({providerApp:t,success:i,error:o,onClose:a})=>{let{title:s,subtitle:u}=r.useMemo((()=>i?{title:`Successfully connected with ${t.name}`,subtitle:"You're good to go!"}:o?{title:"Authentication failed",subtitle:o.message}:{title:`Connecting to ${t.name}`,subtitle:`Please check the pop-up from ${t.name} to continue`}),[i,o,t.name]);/*#__PURE__*/return e.jsx(n.ScreenLayout,{title:s,subtitle:u,icon:t.logoUrl,iconVariant:"loading",iconLoadingStatus:{success:i,fail:!!o},onBack:a,watermark:!0})},l={component:()=>{let n=t.useAppConfig(),{data:l,navigate:d,setModalData:p,onUserCloseViaDialogOrKeybindRef:q}=a.usePrivyModal(),{crossAppAuthFlow:m,updateWallets:S,closePrivyModal:A,createAnalyticsEvent:h}=o.usePrivyInternal(),{logout:v}=s.useLogout(),[f,y]=r.useState({}),C=l?.crossAppAuth,E=new o.PrivyClientError(`There was an issue connecting your ${C?.name} account. Please try again.`),g=new i.RunEffectOnce((async e=>{if(C?.popup)try{let r=await m({appId:e,popup:C.popup,action:C.action,disableSignup:C.disableSignup});y({data:r})}catch(e){if(e instanceof o.PrivyClientError)y({error:e});else if(e instanceof o.PrivyApiError){if(e.privyErrorCode===o.PrivyErrorCode.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return p({accountTransfer:{nonce:e.data?.data?.nonce,account:e.data?.data?.subject,displayName:e.data?.data?.account?.displayName,linkMethod:`privy:${C.appId}`,embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress,oAuthUserInfo:e.data?.data?.otherUser?.oAuthUserInfo}}),void d("LinkConflictScreen");C.popup&&C.popup.close(),y({error:E})}else y({error:E})}else y({error:E})})),j=()=>{f.data&&(S(),C?.onSuccess(f.data),A({shouldCallAuthOnSuccess:!0,isSuccess:!0})),C?.onError(f.error??new o.PrivyClientError("User canceled flow")),A({shouldCallAuthOnSuccess:!1,isSuccess:!1})};return q.current=j,r.useEffect((()=>{C?.appId?.length&&g.execute(C.appId)}),[C?.appId]),r.useEffect((()=>{if(!f.data)return;let e=f.data;if(n.legal.requireUsersAcceptTerms&&!e.hasAcceptedTerms){let e=setTimeout((()=>{d("AffirmativeConsentScreen")}),t.DEFAULT_SUCCESS_SCREEN_DURATION_MS);return()=>clearTimeout(e)}if(u.shouldProceedtoEmbeddedWalletCreationFlow(e,n.embeddedWallets)){let e=setTimeout((()=>{p({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),h({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,provider:`privy:${C?.appId}`,screen:"CrossAppAuthScreen"}}),v()},callAuthOnSuccessOnClose:!0}}),d("EmbeddedWalletOnAccountCreateScreen")}),t.DEFAULT_SUCCESS_SCREEN_DURATION_MS);return()=>clearTimeout(e)}let r=setTimeout(j,t.DEFAULT_SUCCESS_SCREEN_DURATION_MS);return()=>clearTimeout(r)}),[f.data]),C?.appId?/*#__PURE__*/e.jsx(c,{providerApp:{id:C?.appId,logoUrl:C?.logoUrl,name:C?.name},success:!!f.data,error:f.error,onClose:j}):(console.warn("Missing data for Screen"),null)},isShownBeforeReady:!0};exports.CrossAppAuthScreen=l,exports.CrossAppAuthScreenView=c,exports.default=l;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("lucide-react"),t=require("react"),s=require("./WalletInfoCard-CRZt0t3t.js"),i=require("./context-BAmjgwZ7.js"),o=require("./internal-context-BJv4f_bO.js"),n=require("./get-is-unified-wallet-DitrQ4hx.js"),a=require("./ScreenLayout-DANQ0V5E.js");require("styled-components"),require("./ModalHeader-CakS8Dcu.js"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("@privy-io/js-sdk-core"),require("eventemitter3"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./ErrorMessage-BfTVyue9.js"),require("./LabelXs-C8rLnCfU.js"),require("./Address-DTfphH3Q.js"),require("./shared-DBm7PUrg.js"),require("tinycolor2"),require("ofetch"),require("@privy-io/are-addresses-equal"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const c=({appName:t,address:i,success:o,error:n,onAccept:c,onDecline:u,onClose:l})=>o||n?/*#__PURE__*/e.jsx(a.ScreenLayout,{title:n?"Something went wrong":"Success!",subtitle:n?"Please try again.":`You've successfully granted delegated action permissions to ${t}.`,icon:n?r.AlertCircle:r.CheckCircle,iconVariant:n?"error":"success",onBack:l,watermark:!0}):/*#__PURE__*/e.jsx(a.ScreenLayout,{title:"Enable offline access",subtitle:`By confirming, ${t} will be able to use your wallet for you even when you're not around. You can revoke this later.`,icon:r.CloudUpload,primaryCta:{label:"Accept",onClick:c},secondaryCta:{label:"Not now",onClick:u},onBack:l,watermark:!0,children:/*#__PURE__*/e.jsx(s.WalletInfoCard,{address:i,title:"Wallet"})}),u={component:()=>{let{data:r}=n.usePrivyModal(),s=i.useAppConfig(),{closePrivyModal:a}=o.usePrivyInternal(),[u,l]=t.useState(!1),[d,q]=t.useState(),{address:j,onDelegate:y,onSuccess:C,onError:p}=r.delegatedActions.consent,m=async()=>{u?C():p(d??new o.PrivyClientError("User declined delegating actions.")),a({shouldCallAuthOnSuccess:!1})};return t.useEffect((()=>{if(!u&&!d)return;let e=setTimeout(m,i.DEFAULT_SUCCESS_SCREEN_LONG_DURATION_MS);return()=>clearTimeout(e)}),[u,d]),/*#__PURE__*/e.jsx(c,{appName:s.name,address:j,success:u,error:d,onAccept:async()=>{try{await y(),l(!0)}catch(e){q(e)}},onDecline:()=>{m()},onClose:m})}};exports.DelegatedActionsConsentScreen=u,exports.DelegatedActionsConsentScreenView=c,exports.default=u;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("lucide-react"),t=require("react"),o=require("./context-BAmjgwZ7.js"),i=require("./internal-context-BJv4f_bO.js"),n=require("./get-is-unified-wallet-DitrQ4hx.js"),s=require("./ScreenLayout-DANQ0V5E.js");require("@privy-io/js-sdk-core"),require("tinycolor2"),require("ofetch"),require("@privy-io/are-addresses-equal"),require("./ModalHeader-CakS8Dcu.js"),require("styled-components"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("eventemitter3"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const c=({appName:t,success:o,error:i,onRevoke:n,onDeny:c,onClose:a})=>o||i?/*#__PURE__*/e.jsx(s.ScreenLayout,{title:i?"Something went wrong":"Success!",subtitle:i?"Please try again.":"You've successfully revoked permissions.",icon:i?r.AlertCircle:r.CheckCircle,iconVariant:i?"error":"success",onBack:a,watermark:!0}):/*#__PURE__*/e.jsx(s.ScreenLayout,{title:"Revoke offline access to wallet",subtitle:`By confirming, ${t} will no longer be able to use this wallet on your behalf when you are not online.`,icon:r.Ban,primaryCta:{label:"Confirm",onClick:n},secondaryCta:{label:"Deny",onClick:c},onBack:a,watermark:!0}),a={component:()=>{let{data:r}=n.usePrivyModal(),s=o.useAppConfig(),{closePrivyModal:a}=i.usePrivyInternal(),[u,l]=t.useState(!1),[q,d]=t.useState(),{onRevoke:y,onSuccess:v,onError:k}=r.delegatedActions.revoke,m=async()=>{u?v():k(q??new i.PrivyClientError("User declined revoking access to their delegated wallet.")),a({shouldCallAuthOnSuccess:!1})};return t.useEffect((()=>{if(!u&&!q)return;let e=setTimeout(m,o.DEFAULT_SUCCESS_SCREEN_LONG_DURATION_MS);return()=>clearTimeout(e)}),[u,q]),/*#__PURE__*/e.jsx(c,{appName:s.name,success:u,error:q,onRevoke:async()=>{try{await y(),l(!0)}catch(e){d(e)}},onDeny:()=>{m()},onClose:m})}};exports.DelegatedActionsRevokeScreen=a,exports.DelegatedActionsRevokeScreenView=c,exports.default=a;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("lucide-react"),t=require("react"),i=require("./index-BohqOluI.js"),o=require("./internal-context-BJv4f_bO.js"),a=require("./get-is-unified-wallet-DitrQ4hx.js"),n=require("./ScreenLayout-DANQ0V5E.js");require("@privy-io/js-sdk-core"),require("uuid"),require("jose"),require("eventemitter3"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("./context-BAmjgwZ7.js"),require("tinycolor2"),require("styled-components"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-CHcu9hX8.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("ofetch"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("@privy-io/are-addresses-equal"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("./ModalHeader-CakS8Dcu.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const s=({connectionFailed:t,onClose:i})=>t?/*#__PURE__*/e.jsx(n.ScreenLayout,{title:"Something went wrong",subtitle:"We're on it. Please try again later.",icon:r.XCircle,iconVariant:"error",primaryCta:{label:"Close",onClick:i},watermark:!0}):/*#__PURE__*/e.jsx(n.ScreenLayout,{title:"Connecting to your wallet",subtitle:"Please wait...",iconVariant:"loading",showClose:!0,onClose:i,watermark:!1}),c={component:()=>{let{authenticated:r,user:n}=a.usePrivyContext(),{client:c,closePrivyModal:l,createAnalyticsEvent:u,walletProxy:d}=o.usePrivyInternal(),{navigate:y,data:v,setModalData:q,onUserCloseViaDialogOrKeybindRef:p}=a.usePrivyModal(),h=t.useMemo((()=>Date.now()),[]),[w,m]=t.useState(!1),{onCompleteNavigateTo:b,onFailure:f,shouldForceMFA:j,entropyId:C,entropyIdVerifier:g,recoveryMethod:I,connectingWalletAddress:x,isUnifiedWallet:A=!1}=v?.connectWallet,S=e=>{w||(m(!0),f("string"==typeof e?Error(e):e))};return t.useEffect((()=>{let e;return r?d?((async()=>{let r=await c.getAccessToken();if(!r)return S("User must be authenticated and have a Privy wallet before it can be connected");try{if(!A){if(!C||!g)return S("For on-device first-class chain wallets, entropyId and entropyIdVerifier are required");await d.connect({accessToken:r,entropyId:C,entropyIdVerifier:g})}j&&await d.verifyMfa({accessToken:r});let t=(Date.now()-h)/1e3;"EmbeddedWalletKeyExportScreen"===b&&t<1?e=setTimeout((()=>{y(b,!1)}),1e3*(1-t)):y(b,!1)}catch(e){if(i.errorIndicatesRecoveryIsNeeded(e)&&"privy"===I){let e=await c.getAccessToken();if(!e)return S("User must be authenticated and have a Privy wallet before it can be recovered");try{u({eventName:"embedded_wallet_pinless_recovery_started",payload:{walletAddress:x}});let r=await(d?.recover({accessToken:e,entropyId:C,entropyIdVerifier:g}));r?.entropyId||S(Error("Unable to recover wallet")),b?y(b):l({shouldCallAuthOnSuccess:!1}),u({eventName:"embedded_wallet_recovery_completed",payload:{walletAddress:x}}),y(b)}catch(e){S("An error has occurred, please try again.")}}else i.errorIndicatesRecoveryIsNeeded(e)&&"privy"!==I&&"privy-v2"!==I?(q({...v,recoverWallet:{entropyId:C,entropyIdVerifier:g,onCompleteNavigateTo:b,onFailure:f},recoveryOAuthStatus:{provider:I,action:"recover",isInAccountCreateFlow:!1,shouldCreateEth:!1,shouldCreateSol:!1}}),y(i.embeddedWalletRecoveryScreen(I))):S(e)}})(),()=>clearTimeout(e)):void 0:S("User must be authenticated and have a Privy wallet before it can be connected")}),[r,n,d]),p.current=()=>{S("User exited before wallet could be connected"),l({shouldCallAuthOnSuccess:!1})},/*#__PURE__*/e.jsx(s,{connectionFailed:w,onClose:()=>l({shouldCallAuthOnSuccess:!1})})}};exports.EmbeddedWalletConnectingScreen=c,exports.EmbeddedWalletConnectingView=s,exports.default=c;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("lucide-react"),t=require("react"),i=require("./get-is-unified-wallet-DitrQ4hx.js"),s=require("./context-BAmjgwZ7.js"),u=require("./internal-context-BJv4f_bO.js"),o=require("./ScreenLayout-DANQ0V5E.js");require("@privy-io/are-addresses-equal"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("ofetch"),require("./ModalHeader-CakS8Dcu.js"),require("styled-components"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("eventemitter3"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const c=({title:t,description:i,onClose:s})=>/*#__PURE__*/e.jsx(o.ScreenLayout,{title:t,subtitle:i,icon:r.CheckCircle,iconVariant:"success",watermark:!0,onBack:s}),l={component:()=>{let{user:r}=i.usePrivyContext(),{closePrivyModal:o,isNewUserThisSession:l,updateWallets:n}=u.usePrivyInternal(),{data:a,onUserCloseViaDialogOrKeybindRef:d}=i.usePrivyModal(),q=s.useAppConfig(),{onSuccess:v,onFailure:j,callAuthOnSuccessOnClose:m}=a.createWallet,C=()=>{let e=i.getPrivyEthereumWallet(r)??i.getPrivySolanaWallet(r);r&&e?(n(),v({user:r,account:e})):j(Error("Failed to create wallet")),o({shouldCallAuthOnSuccess:m})};t.useEffect((()=>{let e=setTimeout(C,s.DEFAULT_SUCCESS_SCREEN_LONG_DURATION_MS);return()=>clearTimeout(e)}),[]),d.current=C;let S=l&&!((r?.linkedAccounts?.length??0)>1),y=S?"Welcome"+(q?.name?` to ${q?.name}`:""):"All set!";/*#__PURE__*/return e.jsx(c,{title:y,description:S?"You've successfully created an account.":"Your account is secured.",onClose:C})}};exports.EmbeddedWalletCreatedScreen=l,exports.EmbeddedWalletCreatedScreenView=c,exports.default=l;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("lucide-react"),t=require("react"),i=require("@privy-io/js-sdk-core"),a=require("./context-BAmjgwZ7.js"),l=require("./index-BohqOluI.js"),s=require("./internal-context-BJv4f_bO.js"),o=require("./get-is-unified-wallet-DitrQ4hx.js"),u=require("./PrivyPluginContext-DsgaS6n9.js"),n=require("./ScreenLayout-DANQ0V5E.js");require("tinycolor2"),require("uuid"),require("jose"),require("eventemitter3"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("styled-components"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-CHcu9hX8.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("./getEmbeddedConnectedWallet-pJd-l936.js"),require("ofetch"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("@privy-io/are-addresses-equal"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("./ModalHeader-CakS8Dcu.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const c=({errorMessage:t,onClose:i})=>t?/*#__PURE__*/e.jsx(n.ScreenLayout,{title:"Something went wrong",subtitle:t,icon:r.XCircle,iconVariant:"error",primaryCta:{label:"Close",onClick:i},watermark:!0}):/*#__PURE__*/e.jsx(n.ScreenLayout,{title:"Creating your wallet",subtitle:"Please wait...",iconVariant:"loading",watermark:!1}),d={component:()=>{let{setModalData:r,navigate:n,data:d,onUserCloseViaDialogOrKeybindRef:q}=o.usePrivyModal(),y=a.useAppConfig(),[h,m]=t.useState(""),{embeddedWallets:w}=a.useAppConfig(),{authenticated:v,user:p}=o.usePrivyContext(),{closePrivyModal:C,walletProxy:g,client:b}=s.usePrivyInternal(),{onSuccess:j,onFailure:W,callAuthOnSuccessOnClose:S,shouldCreateEth:x,shouldCreateSol:E}=d.createWallet,f=u.usePlugins(),O=p?f(l.WALLET_CREATION_ON_LOGIN_PLUGIN_ID)?.shouldCreateWallet({user:p}):void 0,A=!!p&&l.shouldCreateEmbeddedEthWallet(p,y.embeddedWallets.ethereum.createOnLogin,O),I=!!p&&l.shouldCreateEmbeddedSolWallet(p,y.embeddedWallets.solana.createOnLogin,O),P="legacy-embedded-wallets-only"===y.embeddedWallets.mode&&!0===y?.embeddedWallets.requireUserOwnedRecoveryOnCreate,[L,k]=t.useState(null),{create:R}=l.useCreateWalletWithoutFallback(),M=x??A,U=E??I,K=new l.RunEffectOnce((async()=>{let e=await b.getAccessToken();if(p&&e&&g)try{let e,r=await i.generateWalletIdempotencyKey(p.id,"ethereum"),t=await i.generateWalletIdempotencyKey(p.id,"solana");if(M&&U)e=await R({chainType:"ethereum",walletIndex:0,latestUser:p,idempotencyKey:r}),e=await R({chainType:"solana",walletIndex:0,latestUser:e.user,idempotencyKey:t});else if(U)e=await R({chainType:"solana",walletIndex:0,latestUser:p,idempotencyKey:t});else{if(!M)return void C({shouldCallAuthOnSuccess:S});e=await R({chainType:"ethereum",walletIndex:0,latestUser:p,idempotencyKey:r})}k(e),n("EmbeddedWalletCreatedScreen")}catch(e){m(e.message)}}));return t.useEffect((()=>v&&p?P?(r({...d,createWallet:{...d.createWallet,shouldCreateEth:M,shouldCreateSol:U},recoverySelection:{...d?.recoverySelection,isInAccountCreateFlow:!0,shouldCreateEth:M,shouldCreateSol:U}}),n(l.toEmbeddedWalletSetRecoveryScreen({walletAction:"create",showAutomaticRecovery:!1,availableRecoveryMethods:w.userOwnedRecoveryOptions,legacySetWalletPasswordFlow:!1,isResettingPassword:!1}))):void K.execute():(n("LandingScreen"),void W(Error("User must be authenticated before creating a Privy wallet")))),[P,v]),q.current=()=>null/*#__PURE__*/,e.jsx(c,{errorMessage:h||void 0,onClose:()=>{L?(j(L),C({shouldCallAuthOnSuccess:S})):(W(new s.PrivyEmbeddedWalletError("User wallet creation failed")),C({shouldCallAuthOnSuccess:!1}))}})}};exports.EmbeddedWalletOnAccountCreateScreen=d,exports.EmbeddedWalletOnAccountCreateView=c,exports.default=d;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("react"),t=require("./get-is-unified-wallet-DitrQ4hx.js"),s=require("./context-BAmjgwZ7.js"),o=require("./internal-context-BJv4f_bO.js"),a=require("./useWallets-Cy6axcvW.js"),i=require("./SetWalletPasswordForm-B7bBDQ8N.js");require("@privy-io/are-addresses-equal"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("ofetch"),require("viem"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("./Layouts-D3TOcPhm.js"),require("styled-components"),require("./ModalHeader-CakS8Dcu.js"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("eventemitter3"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./shared-C-w7sNT2.js"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("./Checkbox-DzxHC5tk.js"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("./ScreenHeader-CgYJ5Fmg.js");const n={component:()=>{let[n,d]=r.useState(null),[l,c]=r.useState(!1),[u,y]=r.useState(null),[v,w]=r.useState(""),{authenticated:h,user:p}=t.usePrivyContext(),{client:q,walletProxy:g,refreshSessionAndUser:m,closePrivyModal:P,createAnalyticsEvent:f}=o.usePrivyInternal(),{navigate:A,data:E,onUserCloseViaDialogOrKeybindRef:I}=t.usePrivyModal(),M=s.useAppConfig(),{onSuccess:_,onFailure:b}=E.setWalletPassword,x=t.getPrivyPrimaryWallet(p),C="user-passcode"===n?.recoveryMethod,S="user-passcode"===x?.recoveryMethod;r.useEffect((()=>{h||(A("LandingScreen"),b(new o.PrivyUnauthenticatedError("User must be authenticated before setting a password on a Privy wallet")))}),[h]);let j=()=>u?(b(u),void P({shouldCallAuthOnSuccess:!1})):C?(_(n),void P({shouldCallAuthOnSuccess:!1})):(b(new o.PrivyEmbeddedWalletError("Exited before password was added to wallet")),void P({shouldCallAuthOnSuccess:!1}));I.current=j;/*#__PURE__*/return e.jsx(i.SetWalletPasswordForm,{appName:M?.name||"privy",config:{initiatedBy:"user",onCancel:j},error:u?"An error has occurred, please try again.":void 0,buttonLoading:l,buttonHideAnimations:!1,password:v,isResettingPassword:S,onPasswordGenerate:()=>w(i.generatePassphrase()),onPasswordChange:w,onSubmit:async()=>{C?(_(n),P({shouldCallAuthOnSuccess:!1})):(c(!0),y(null),await(async()=>{let e=await q.getAccessToken();if(e&&p&&x?.address&&v&&g)try{f({eventName:"embedded_wallet_set_recovery_started",payload:{walletAddress:x.address,existingRecoveryMethod:x.recoveryMethod,targetRecoveryMethod:"user-passcode",isResettingPassword:S}});let{entropyId:r,entropyIdVerifier:s}=a.getEntropyDetailsForUser(p);if(!(await g.setRecovery({accessToken:e,entropyId:r,entropyIdVerifier:s,recoveryPassword:v,recoveryMethod:"user-passcode"})).entropyId)return y(new o.PrivyEmbeddedWalletError("Error setting password on privy wallet")),void f({eventName:"embedded_wallet_set_recovery_failed",payload:{walletAddress:x.address,existingRecoveryMethod:x.recoveryMethod,targetRecoveryMethod:"user-passcode",isResettingPassword:S,reason:"error setting password"}});let i=await m(),n=t.getPrivyPrimaryWallet(i);if(!n)return y(new o.PrivyEmbeddedWalletError("Error setting password on privy wallet")),void f({eventName:"embedded_wallet_set_recovery_failed",payload:{walletAddress:x.address,existingRecoveryMethod:x.recoveryMethod,targetRecoveryMethod:"user-passcode",isResettingPassword:S,reason:"wallet disconnected"}});d(n),f({eventName:"embedded_wallet_set_recovery_completed",payload:{walletAddress:x.address,existingRecoveryMethod:x.recoveryMethod,targetRecoveryMethod:"user-passcode",isResettingPassword:S}})}catch(e){console.warn(e),y(e instanceof Error?e:Error("Error setting password on privy wallet")),f({eventName:"embedded_wallet_set_password_failed",payload:{walletAddress:x.address,reason:e}})}})(),c(!1))},onClose:j})}};exports.EmbeddedWalletPasswordUpdateScreen=n,exports.default=n;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("lucide-react"),t=require("./internal-context-BJv4f_bO.js"),s=require("./get-is-unified-wallet-DitrQ4hx.js"),i=require("./ScreenLayout-DANQ0V5E.js");require("ofetch"),require("react"),require("@privy-io/are-addresses-equal"),require("./context-BAmjgwZ7.js"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("./ModalHeader-CakS8Dcu.js"),require("styled-components"),require("./useActiveWallet-CYUR_x0A.js"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-C6DaLOxp.js"),require("./useWallets-Cy6axcvW.js"),require("viem"),require("eventemitter3"),require("viem/utils"),require("./events-context-Di6--rDg.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./Screen-Dp9-H_S8.js"),require("./index-ByFhjjzH.js");const o=({onClose:t,onProceed:s})=>/*#__PURE__*/e.jsx(i.ScreenLayout,{title:"Secure Your Account",subtitle:/*#__PURE__*/e.jsxs(e.Fragment,{children:["Please set a password to secure your account.",/*#__PURE__*/e.jsx("br",{}),"Losing access to this password and this device will make your account inaccessible."]}),icon:r.Lock,primaryCta:{label:"Add password",onClick:s},onClose:t,watermark:!0}),a={component:()=>{let{closePrivyModal:r}=t.usePrivyInternal(),{data:i,navigate:a,onUserCloseViaDialogOrKeybindRef:u}=s.usePrivyModal(),{onFailure:n}=i.setWalletPassword,c=()=>{n(new t.PrivyEmbeddedWalletError("Exited before password was added to wallet")),r({shouldCallAuthOnSuccess:!1})};return u.current=c,/*#__PURE__*/e.jsx(o,{onClose:c,onProceed:()=>{a("EmbeddedWalletPasswordUpdateScreen")}})}};exports.EmbeddedWalletPasswordUpdateSplashScreen=a,exports.EmbeddedWalletPasswordUpdateSplashView=o,exports.default=a;