@privy-io/react-auth 3.18.0 → 3.18.1-snapshot-20260323180320

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 (380) hide show
  1. package/dist/cjs/AccountNotFoundScreen-BxW0mCgO.js +1 -0
  2. package/dist/cjs/{Address-BeuDoSGB.js → Address-5Tbt4Qwf.js} +1 -1
  3. package/dist/cjs/AffirmativeConsentScreen-lvCxvQuU.js +6 -0
  4. package/dist/cjs/AllowlistRejectionScreen-B1RhO_lP.js +1 -0
  5. package/dist/cjs/AuthenticateWithWalletScreen-Dmf6jpHZ.js +1 -0
  6. package/dist/cjs/AwaitingEvmToSolBridgingScreen-DYL6Zpq4.js +2 -0
  7. package/dist/cjs/AwaitingExternalEthereumTransferScreen-BWv2Hd1V.js +2 -0
  8. package/dist/cjs/AwaitingPasswordlessCodeScreen-uDQENsAs.js +103 -0
  9. package/dist/cjs/AwaitingSolToEvmBridgingScreen-gSaL9bry.js +2 -0
  10. package/dist/cjs/{BridgeNetworkSelectionView-DKogJoIK.js → BridgeNetworkSelectionView-BZUXfLMd.js} +1 -1
  11. package/dist/cjs/CaptchaScreen-DAX05cly.js +1 -0
  12. package/dist/cjs/CoinbaseOnrampStatusScreen-CXA5S3ul.js +16 -0
  13. package/dist/cjs/{ConnectEmailForm-CnoGdJHM.js → ConnectEmailForm-B3uVbxMT.js} +1 -1
  14. package/dist/cjs/ConnectLedgerScreen-d5u7isQV.js +9 -0
  15. package/dist/cjs/ConnectOnlyLandingScreen-DuVAnHMC.js +1 -0
  16. package/dist/cjs/ConnectOnlyStatusScreen-sMctneNr.js +1 -0
  17. package/dist/cjs/ConnectOrCreateScreen-AxO4VFOJ.js +1 -0
  18. package/dist/cjs/{ConnectPhoneForm-D3q0wloY.js → ConnectPhoneForm-C5ORKRAh.js} +1 -1
  19. package/dist/cjs/{ConnectWalletView-C6ISoYJv.js → ConnectWalletView-C23PBQwL.js} +1 -1
  20. package/dist/cjs/ConnectionStatusScreen-CUE5ifn3.js +7 -0
  21. package/dist/cjs/CrossAppAuthScreen-5bVySoEO.js +1 -0
  22. package/dist/cjs/{CustomLandingScreenView--zrI99Tu.js → CustomLandingScreenView-gXROzBF7.js} +1 -1
  23. package/dist/cjs/DelegatedActionsConsentScreen-DRDv79eR.js +1 -0
  24. package/dist/cjs/DelegatedActionsRevokeScreen-qXQtFHm7.js +1 -0
  25. package/dist/cjs/EmbeddedWalletConnectingScreen-twPAutSZ.js +1 -0
  26. package/dist/cjs/EmbeddedWalletCreatedScreen-BZv82Ff1.js +1 -0
  27. package/dist/cjs/{EmbeddedWalletKeyExportScreen-DiMRj8ux.js → EmbeddedWalletKeyExportScreen-JlitnF1Z.js} +1 -1
  28. package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-BM_MIgWw.js +1 -0
  29. package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-BvGjqdys.js +1 -0
  30. package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-BwbxEhW_.js +1 -0
  31. package/dist/cjs/{EnrollTotp-RPco748Q.js → EnrollTotp-kUCnCKj8.js} +1 -1
  32. package/dist/cjs/ErrorScreen-DycVuH2C.js +4 -0
  33. package/dist/cjs/{FarcasterConnectStatusScreen-VcZ3BOP9.js → FarcasterConnectStatusScreen-D1_3iVIB.js} +3 -3
  34. package/dist/cjs/FarcasterSignerStatusScreen-CNzHekgg.js +29 -0
  35. package/dist/cjs/FiatOnrampScreen-MfACBLrS.js +86 -0
  36. package/dist/cjs/FundSolWalletWithExternalSolanaWallet-CabhwSoM.js +2 -0
  37. package/dist/cjs/{FundWalletMethodHeader-BTGxq_KO.js → FundWalletMethodHeader-DpTYOeDR.js} +1 -1
  38. package/dist/cjs/{FundWithBankDepositScreen-HfVq1zvk.js → FundWithBankDepositScreen-C2ivBVIB.js} +2 -2
  39. package/dist/cjs/FundingEditAmountScreen-BBgv2wGz.js +1 -0
  40. package/dist/cjs/FundingMethodSelectionScreen-Cw9e130G.js +1 -0
  41. package/dist/cjs/InAppBrowserLoginNotPossible-1ogqlFng.js +1 -0
  42. package/dist/cjs/InstallWalletScreen-iBT_xnUC.js +1 -0
  43. package/dist/cjs/LandingScreen-A5aZP3uM.js +1 -0
  44. package/dist/cjs/{LinkConflictScreen-BsgVq6Bs.js → LinkConflictScreen-Crn9vsmb.js} +1 -1
  45. package/dist/cjs/LinkEmailScreen-C8yS1sQ0.js +1 -0
  46. package/dist/cjs/{LinkPasskeyScreen-D9Y8PpKL.js → LinkPasskeyScreen-irz40Jr-.js} +1 -1
  47. package/dist/cjs/LinkPhoneScreen-B8m7RwJ6.js +1 -0
  48. package/dist/cjs/LoginFailedScreen-DQYDpPdQ.js +1 -0
  49. package/dist/cjs/ManualTransferScreen-BK6ZGmgN.js +1 -0
  50. package/dist/cjs/MfaAuthEnrollmentFlowScreen-BTAH5ysP.js +1 -0
  51. package/dist/cjs/MfaAuthVerifyFlowScreen-VNUL1aSi.js +1 -0
  52. package/dist/cjs/MfaEnrollmentFlowScreen-Uk1CSf00.js +1 -0
  53. package/dist/cjs/MfaVerifyFlowScreen-DlXtdhCi.js +1 -0
  54. package/dist/cjs/{ModalHeader-C5Wuo3-1.js → ModalHeader-DnfZmAVi.js} +1 -1
  55. package/dist/cjs/MoonpayStatusScreen-Br4-xEmC.js +16 -0
  56. package/dist/cjs/OAuthStatusScreen-6tvc6WIw.js +1 -0
  57. package/dist/cjs/PasskeySelectSignupOrLogin-BjMI1dzm.js +1 -0
  58. package/dist/cjs/PasskeyStatusScreen-CChKpO-B.js +3 -0
  59. package/dist/cjs/PasswordRecoveryScreen-CBfXDxM3.js +20 -0
  60. package/dist/cjs/{QrCode-Bbg48Zky.js → QrCode-CfEV2R0b.js} +1 -1
  61. package/dist/cjs/RecoveryOAuthStatusScreen-TVXERqGT.js +1 -0
  62. package/dist/cjs/RecoveryPasswordCreateScreen-ClLkWOHk.js +1 -0
  63. package/dist/cjs/{RecoverySelectionScreen-5crBwkcF.js → RecoverySelectionScreen-CSPvN1YA.js} +2 -2
  64. package/dist/cjs/{Screen-DWnRbzSA.js → Screen-C5AJ9f0u.js} +1 -1
  65. package/dist/cjs/{ScreenLayout-C4QHZMbl.js → ScreenLayout-cjwLpqlf.js} +1 -1
  66. package/dist/cjs/{SelectSourceAsset-Mzj-MSFd.js → SelectSourceAsset-DQcckwC8.js} +1 -1
  67. package/dist/cjs/{SetAutomaticRecoveryScreen-CYXvomBY.js → SetAutomaticRecoveryScreen-BWMiMl7e.js} +2 -2
  68. package/dist/cjs/{SetWalletPasswordForm-BCdbqkFk.js → SetWalletPasswordForm-cJ_BWgNU.js} +1 -1
  69. package/dist/cjs/SignRequestScreen-BBZTLAhZ.js +26 -0
  70. package/dist/cjs/{StandardSignAndSendTransactionScreen-BM1NyC8e.js → StandardSignAndSendTransactionScreen-Cz8dnswX.js} +3 -3
  71. package/dist/cjs/TelegramAuthScreen-Cnd1NRyI.js +1 -0
  72. package/dist/cjs/{TransactionDetails-BisPbyIV.js → TransactionDetails-DGH4ji2m.js} +1 -1
  73. package/dist/cjs/{TransactionErrorView-OoipbwSa.js → TransactionErrorView-BIL8-9ac.js} +1 -1
  74. package/dist/cjs/{TransferFromWalletScreen-BItctfpp.js → TransferFromWalletScreen-Cfq77dek.js} +1 -1
  75. package/dist/cjs/{TransferOrBridgeLoadingScreen-DsutKbzS.js → TransferOrBridgeLoadingScreen-BrTj6bl-.js} +1 -1
  76. package/dist/cjs/UpdateEmailScreen-BOOd8gIW.js +1 -0
  77. package/dist/cjs/UpdatePhoneScreen-DRpMSWyD.js +1 -0
  78. package/dist/cjs/UserLimitReachedScreen-B8_OaPQq.js +1 -0
  79. package/dist/cjs/{WalletInfoCard-B7ARTvO5.js → WalletInfoCard-DPm-y4VM.js} +1 -1
  80. package/dist/cjs/WalletInterstitialScreen-BAuBUJeB.js +1 -0
  81. package/dist/cjs/{WalletLink-CRWOuFlx.js → WalletLink-X7khQj5S.js} +1 -1
  82. package/dist/cjs/{WalletOverflowButton-BMn1cJfA.js → WalletOverflowButton-iM3TrjO5.js} +1 -1
  83. package/dist/cjs/abstract-smart-wallets.js +1 -1
  84. package/dist/cjs/{context-Cg3IEi80.js → context-BHn2jiis.js} +1 -1
  85. package/dist/cjs/{ethers-p3w-Ig2U.js → ethers-DzzFQEau.js} +1 -1
  86. package/dist/cjs/extended-chains.js +1 -1
  87. package/dist/cjs/get-entropy-details-for-user-DPOwc_4w.js +1 -0
  88. package/dist/cjs/getErc20Balance-CDVVppWI.js +1 -0
  89. package/dist/cjs/getErc20TokenInfo-Df0mF86i.js +1 -0
  90. package/dist/cjs/{index-DrQAmIx6.js → index-BkrQ4auF.js} +2 -2
  91. package/dist/cjs/index-CWA3Jcah.js +174 -0
  92. package/dist/cjs/{index-B6eKyGL-.js → index-DDIX8Ut3.js} +1 -1
  93. package/dist/cjs/index.js +1 -1
  94. package/dist/cjs/internal.js +1 -1
  95. package/dist/cjs/{privy-context-CrM9_s6G.js → privy-context-Cs8xLG2y.js} +1 -1
  96. package/dist/cjs/{shared-CiNVwcTc.js → shared-jdBCEAtE.js} +1 -1
  97. package/dist/cjs/{shouldProceedtoEmbeddedWalletCreationFlow-BUJZ4s-V.js → shouldProceedtoEmbeddedWalletCreationFlow-BCW6JjS3.js} +1 -1
  98. package/dist/cjs/smart-wallets-8rYwotQ5.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-B1M_BS_A.js → styles-CMmkssms.js} +1 -1
  102. package/dist/cjs/{to-ui-error-CS08QD8Q.js → to-ui-error-DMMiPFMN.js} +1 -1
  103. package/dist/cjs/ui.js +1 -1
  104. package/dist/cjs/use-export-wallet-B-Ax45Um.js +1 -0
  105. package/dist/cjs/use-export-wallet-BAmtC6Ll.js +1 -0
  106. package/dist/cjs/useActiveWallet-De91xEqr.js +185 -0
  107. package/dist/cjs/{useGetTokenPrice-CSWuvKuF.js → useGetTokenPrice-TNsFcNNe.js} +1 -1
  108. package/dist/cjs/{useI18n-DUN0YTKn.js → useI18n-CzBaNJQu.js} +1 -1
  109. package/dist/cjs/usePrivy-BuuA4AL6.js +1 -0
  110. package/dist/cjs/{useSolanaRpcClient-DuOWyD1p.js → useSolanaRpcClient-DYPBeNIL.js} +1 -1
  111. package/dist/cjs/useWalletBalance-rYJzyIe0.js +1 -0
  112. package/dist/cjs/useWallets-CzUkZuuP.js +1 -0
  113. package/dist/dts/{events-context-BXis4NRh.d.mts → events-context-B-xMLvZ9.d.mts} +1 -1
  114. package/dist/dts/{events-context-BXis4NRh.d.ts → events-context-B-xMLvZ9.d.ts} +1 -1
  115. package/dist/dts/extended-chains.d.mts +1 -1
  116. package/dist/dts/extended-chains.d.ts +1 -1
  117. package/dist/dts/farcaster.d.mts +1 -1
  118. package/dist/dts/farcaster.d.ts +1 -1
  119. package/dist/dts/index.d.mts +4 -38
  120. package/dist/dts/index.d.ts +4 -38
  121. package/dist/dts/internal.d.mts +1 -1
  122. package/dist/dts/internal.d.ts +1 -1
  123. package/dist/dts/smart-wallets.d.mts +1 -1
  124. package/dist/dts/smart-wallets.d.ts +1 -1
  125. package/dist/dts/solana.d.mts +3 -3
  126. package/dist/dts/solana.d.ts +3 -3
  127. package/dist/dts/{types-Bc9w_mgT.d.mts → types-CHmbtLnY.d.mts} +1 -1
  128. package/dist/dts/{types-Bc9w_mgT.d.ts → types-CHmbtLnY.d.ts} +1 -1
  129. package/dist/dts/ui.d.mts +1 -1
  130. package/dist/dts/ui.d.ts +1 -1
  131. package/dist/esm/AccountNotFoundScreen-Dtxa0j0n.mjs +1 -0
  132. package/dist/esm/{Address-N-mzBgMy.mjs → Address-ztk_sJbY.mjs} +1 -1
  133. package/dist/esm/AffirmativeConsentScreen-ClYZtzJh.mjs +6 -0
  134. package/dist/esm/AllowlistRejectionScreen-CvERsAiW.mjs +1 -0
  135. package/dist/esm/AuthenticateWithWalletScreen-CClnNoxF.mjs +1 -0
  136. package/dist/esm/AwaitingEvmToSolBridgingScreen-Bcmvkgxr.mjs +2 -0
  137. package/dist/esm/AwaitingExternalEthereumTransferScreen-Dwm3BgmA.mjs +2 -0
  138. package/dist/esm/AwaitingPasswordlessCodeScreen-BWjy6ej2.mjs +103 -0
  139. package/dist/esm/AwaitingSolToEvmBridgingScreen-DhztCAZM.mjs +2 -0
  140. package/dist/esm/{BridgeNetworkSelectionView-CiJQDIy_.mjs → BridgeNetworkSelectionView-CVWEgLyC.mjs} +2 -2
  141. package/dist/esm/CaptchaScreen-DCNPigmD.mjs +1 -0
  142. package/dist/esm/CoinbaseOnrampStatusScreen-B_64L4wB.mjs +16 -0
  143. package/dist/esm/ConnectEmailForm-BROxiluB.mjs +3 -0
  144. package/dist/esm/ConnectLedgerScreen-D5jE0oZ0.mjs +9 -0
  145. package/dist/esm/ConnectOnlyLandingScreen-CqKdIFMO.mjs +1 -0
  146. package/dist/esm/ConnectOnlyStatusScreen-57k3JgWT.mjs +1 -0
  147. package/dist/esm/ConnectOrCreateScreen-BeaAjA78.mjs +1 -0
  148. package/dist/esm/{ConnectPhoneForm-DP4LRtUG.mjs → ConnectPhoneForm-fY21-qVb.mjs} +1 -1
  149. package/dist/esm/{ConnectWalletView-pxEyo8WM.mjs → ConnectWalletView-Mc2T9ieN.mjs} +1 -1
  150. package/dist/esm/ConnectionStatusScreen-CI0DWa4J.mjs +7 -0
  151. package/dist/esm/CrossAppAuthScreen-CRxf-t9K.mjs +1 -0
  152. package/dist/esm/{CustomLandingScreenView-BxAx1Co_.mjs → CustomLandingScreenView-vaSO3Cgw.mjs} +1 -1
  153. package/dist/esm/DelegatedActionsConsentScreen-T6I3gKiO.mjs +1 -0
  154. package/dist/esm/DelegatedActionsRevokeScreen-BCcBpZTQ.mjs +1 -0
  155. package/dist/esm/EmbeddedWalletConnectingScreen-O85tys98.mjs +1 -0
  156. package/dist/esm/EmbeddedWalletCreatedScreen-C89uPoS1.mjs +1 -0
  157. package/dist/esm/{EmbeddedWalletKeyExportScreen-B3GsSPLG.mjs → EmbeddedWalletKeyExportScreen-Bljd1_Ne.mjs} +1 -1
  158. package/dist/esm/EmbeddedWalletOnAccountCreateScreen-HY4euEhG.mjs +1 -0
  159. package/dist/esm/EmbeddedWalletPasswordUpdateScreen-NQTdb4d4.mjs +1 -0
  160. package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-BaK_1ksZ.mjs +1 -0
  161. package/dist/esm/{EnrollTotp-V5tLY1MZ.mjs → EnrollTotp-CUzDQN0K.mjs} +1 -1
  162. package/dist/esm/ErrorScreen-DvY6YnX3.mjs +4 -0
  163. package/dist/esm/{FarcasterConnectStatusScreen-DmhyV2vW.mjs → FarcasterConnectStatusScreen-CovjQBp9.mjs} +4 -4
  164. package/dist/esm/FarcasterSignerStatusScreen-lYfAjo1V.mjs +28 -0
  165. package/dist/esm/FiatOnrampScreen-C5zkekrg.mjs +86 -0
  166. package/dist/esm/FundSolWalletWithExternalSolanaWallet-DDA8AJ00.mjs +1 -0
  167. package/dist/esm/{FundWalletMethodHeader-Cb-ACySl.mjs → FundWalletMethodHeader-DzRf3TxY.mjs} +1 -1
  168. package/dist/esm/{FundWithBankDepositScreen--e9rfZCc.mjs → FundWithBankDepositScreen-BHZufg_F.mjs} +2 -2
  169. package/dist/esm/FundingEditAmountScreen-DsKxpzI2.mjs +1 -0
  170. package/dist/esm/FundingMethodSelectionScreen-C3Ey8QLl.mjs +1 -0
  171. package/dist/esm/InAppBrowserLoginNotPossible-DmIlipsa.mjs +1 -0
  172. package/dist/esm/InstallWalletScreen-TEtbhvDd.mjs +1 -0
  173. package/dist/esm/LandingScreen-CWwpn8ua.mjs +1 -0
  174. package/dist/esm/{LinkConflictScreen-CElxCrSW.mjs → LinkConflictScreen-CAwKghOc.mjs} +6 -6
  175. package/dist/esm/LinkEmailScreen-Bmn-KaZ0.mjs +1 -0
  176. package/dist/esm/{LinkPasskeyScreen-DmtRo8xi.mjs → LinkPasskeyScreen-DNMFOi_R.mjs} +6 -6
  177. package/dist/esm/LinkPhoneScreen-DcYP1v2I.mjs +1 -0
  178. package/dist/esm/LoginFailedScreen-Dsw6XnwB.mjs +1 -0
  179. package/dist/esm/ManualTransferScreen-DpqH3TVe.mjs +1 -0
  180. package/dist/esm/MfaAuthEnrollmentFlowScreen-BtxPC4A6.mjs +1 -0
  181. package/dist/esm/MfaAuthVerifyFlowScreen-DcVp8Kwh.mjs +1 -0
  182. package/dist/esm/MfaEnrollmentFlowScreen-CRhS937B.mjs +1 -0
  183. package/dist/esm/MfaVerifyFlowScreen-BH3c_6EQ.mjs +1 -0
  184. package/dist/esm/{ModalHeader-BnVmXtvG.mjs → ModalHeader-SZtVQvik.mjs} +1 -1
  185. package/dist/esm/MoonpayStatusScreen-DRn-F8B_.mjs +16 -0
  186. package/dist/esm/OAuthStatusScreen-DWxRYQP9.mjs +1 -0
  187. package/dist/esm/PasskeySelectSignupOrLogin-S-0nyZBM.mjs +1 -0
  188. package/dist/esm/PasskeyStatusScreen-BW37O8p7.mjs +3 -0
  189. package/dist/esm/PasswordRecoveryScreen-DYRmP_z1.mjs +20 -0
  190. package/dist/esm/{QrCode-B84kEIjT.mjs → QrCode-C1EFhNvP.mjs} +1 -1
  191. package/dist/esm/RecoveryOAuthStatusScreen-CfcwbBNE.mjs +1 -0
  192. package/dist/esm/RecoveryPasswordCreateScreen-DuWhl5st.mjs +1 -0
  193. package/dist/esm/{RecoverySelectionScreen-CFkgwzMS.mjs → RecoverySelectionScreen-LuYoLn9-.mjs} +2 -2
  194. package/dist/esm/{Screen-Cycy3IzT.mjs → Screen-CN4rqSk3.mjs} +1 -1
  195. package/dist/esm/{ScreenLayout-D1p_ntex.mjs → ScreenLayout-5dizeuV8.mjs} +1 -1
  196. package/dist/esm/{SelectSourceAsset-C10HQdge.mjs → SelectSourceAsset-Ck-rWdD5.mjs} +1 -1
  197. package/dist/esm/{SetAutomaticRecoveryScreen-CaXj1unh.mjs → SetAutomaticRecoveryScreen-B-r-OR4I.mjs} +2 -2
  198. package/dist/esm/{SetWalletPasswordForm-CbtQ4DZ1.mjs → SetWalletPasswordForm-CfVd6ha3.mjs} +1 -1
  199. package/dist/esm/{SignRequestScreen-CKO-pLHy.mjs → SignRequestScreen-CDekJecr.mjs} +1 -1
  200. package/dist/esm/{StandardSignAndSendTransactionScreen-Cya0O4wv.mjs → StandardSignAndSendTransactionScreen-BFoUItEM.mjs} +2 -2
  201. package/dist/esm/TelegramAuthScreen-CSIdJO9b.mjs +1 -0
  202. package/dist/esm/{TransactionDetails-DqFIa7IO.mjs → TransactionDetails-vGVxqJTf.mjs} +1 -1
  203. package/dist/esm/{TransactionErrorView-BjaCgZpa.mjs → TransactionErrorView-aSAFRf3w.mjs} +1 -1
  204. package/dist/esm/{TransferFromWalletScreen-DMoSgPhn.mjs → TransferFromWalletScreen-Cw3CPmt6.mjs} +2 -2
  205. package/dist/esm/{TransferOrBridgeLoadingScreen-DVeIRghG.mjs → TransferOrBridgeLoadingScreen-BCYNF0hZ.mjs} +1 -1
  206. package/dist/esm/UpdateEmailScreen-K_f07jSQ.mjs +1 -0
  207. package/dist/esm/UpdatePhoneScreen-BQRM4G9_.mjs +1 -0
  208. package/dist/esm/UserLimitReachedScreen-D9n9Ci_t.mjs +1 -0
  209. package/dist/esm/{WalletInfoCard-CEcdukTg.mjs → WalletInfoCard-C-e36Nix.mjs} +1 -1
  210. package/dist/esm/WalletInterstitialScreen-3xKc265f.mjs +1 -0
  211. package/dist/esm/{WalletLink-DNbGmOPX.mjs → WalletLink-BmpXoU__.mjs} +1 -1
  212. package/dist/esm/{WalletOverflowButton-CPDxFP5w.mjs → WalletOverflowButton-BYxNvERL.mjs} +1 -1
  213. package/dist/esm/abstract-smart-wallets.mjs +1 -1
  214. package/dist/esm/context-CTUTKfTP.mjs +1 -0
  215. package/dist/esm/{ethers-Dnv1tMN3.mjs → ethers-cuAocs4_.mjs} +1 -1
  216. package/dist/esm/extended-chains.mjs +1 -1
  217. package/dist/esm/farcaster.mjs +1 -1
  218. package/dist/esm/{frame-uzTmvtww.mjs → frame-CjhCpycO.mjs} +1 -1
  219. package/dist/esm/get-entropy-details-for-user-BSLx5drL.mjs +1 -0
  220. package/dist/esm/getErc20Balance-DGn8wuDJ.mjs +1 -0
  221. package/dist/esm/getErc20TokenInfo-Cxzr2l15.mjs +1 -0
  222. package/dist/esm/{index-CvvUk2Lm.mjs → index-BfBalsoU.mjs} +1 -1
  223. package/dist/esm/{index-B7Y-7rkw.mjs → index-CRvOUKJl.mjs} +1 -1
  224. package/dist/esm/index-CyGTVRWw.mjs +174 -0
  225. package/dist/esm/index.mjs +1 -1
  226. package/dist/esm/{internal-context-Z-fyxadS.mjs → internal-context-C4ZqP8IF.mjs} +1 -1
  227. package/dist/esm/internal.mjs +1 -1
  228. package/dist/esm/{paths-3HW55qZg.mjs → paths-BzM95ysC.mjs} +1 -1
  229. package/dist/esm/{privy-context-DrMxzgOR.mjs → privy-context-KWwEVjil.mjs} +1 -1
  230. package/dist/esm/reservoir-CB32KXxK.mjs +1 -0
  231. package/dist/esm/{shared-DhWmkz5T.mjs → shared-Bg_Mib-z.mjs} +1 -1
  232. package/dist/esm/{shouldProceedtoEmbeddedWalletCreationFlow-D2ZT5lW9.mjs → shouldProceedtoEmbeddedWalletCreationFlow-Dnn-YyK8.mjs} +1 -1
  233. package/dist/esm/smart-wallets-DVSNEnVR.mjs +1 -0
  234. package/dist/esm/smart-wallets.mjs +1 -1
  235. package/dist/esm/solana.mjs +1 -1
  236. package/dist/esm/{styles-DDaGxKdi.mjs → styles-CImyOwKn.mjs} +1 -1
  237. package/dist/esm/{to-ui-error-YOQlKk5D.mjs → to-ui-error-BJ0QsSn7.mjs} +2 -2
  238. package/dist/esm/ui.mjs +9 -9
  239. package/dist/esm/use-export-wallet-6Oxe92mD.mjs +1 -0
  240. package/dist/esm/use-export-wallet-DtcF80nC.mjs +1 -0
  241. package/dist/esm/{use-sign-with-user-signer-Do5Oi_rb.mjs → use-sign-with-user-signer-BYctG7hm.mjs} +1 -1
  242. package/dist/esm/useActiveWallet-AXR7Ad3T.mjs +185 -0
  243. package/dist/esm/{useGetSolPrice-DwwjjGbd.mjs → useGetSolPrice-DaxM-vxD.mjs} +1 -1
  244. package/dist/esm/{useGetTokenPrice-LPJMl6JV.mjs → useGetTokenPrice-zmiNgRrw.mjs} +1 -1
  245. package/dist/esm/{useI18n-C4fmUAf3.mjs → useI18n-Bo8A3ofx.mjs} +1 -1
  246. package/dist/esm/usePrivy-CRZGeviV.mjs +1 -0
  247. package/dist/esm/{useSolanaRpcClient-71aYSqHX.mjs → useSolanaRpcClient-BFOAjONo.mjs} +1 -1
  248. package/dist/esm/useWalletBalance-BJeZI0tQ.mjs +1 -0
  249. package/dist/esm/useWallets-vSczvkAK.mjs +1 -0
  250. package/package.json +5 -5
  251. package/dist/cjs/AccountNotFoundScreen-B3YeQpWL.js +0 -1
  252. package/dist/cjs/AffirmativeConsentScreen-BxXaVIHv.js +0 -6
  253. package/dist/cjs/AllowlistRejectionScreen-BD_J-XYk.js +0 -1
  254. package/dist/cjs/AuthenticateWithWalletScreen-Cq6uIAU2.js +0 -1
  255. package/dist/cjs/AwaitingEvmToSolBridgingScreen-4-zu3acA.js +0 -2
  256. package/dist/cjs/AwaitingExternalEthereumTransferScreen-D29PTwhu.js +0 -2
  257. package/dist/cjs/AwaitingPasswordlessCodeScreen-C1mky_bR.js +0 -103
  258. package/dist/cjs/AwaitingSolToEvmBridgingScreen-C8F1Te8E.js +0 -2
  259. package/dist/cjs/CaptchaScreen-DBhEtYLQ.js +0 -1
  260. package/dist/cjs/CoinbaseOnrampStatusScreen-Dfnox1A2.js +0 -16
  261. package/dist/cjs/ConnectLedgerScreen-C65stJPS.js +0 -9
  262. package/dist/cjs/ConnectOnlyLandingScreen-CtEavMfn.js +0 -1
  263. package/dist/cjs/ConnectOnlyStatusScreen-_MF8WNxi.js +0 -1
  264. package/dist/cjs/ConnectOrCreateScreen-Dio0_2A7.js +0 -1
  265. package/dist/cjs/ConnectionStatusScreen-D2KorLaB.js +0 -7
  266. package/dist/cjs/CrossAppAuthScreen-Hg4b16x6.js +0 -1
  267. package/dist/cjs/DelegatedActionsConsentScreen-Sexxy676.js +0 -1
  268. package/dist/cjs/DelegatedActionsRevokeScreen-3ghpT6XE.js +0 -1
  269. package/dist/cjs/EmbeddedWalletConnectingScreen-Br1aDNP5.js +0 -1
  270. package/dist/cjs/EmbeddedWalletCreatedScreen-BpEQig7I.js +0 -1
  271. package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-DjbrcMWa.js +0 -1
  272. package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-BakLaUGz.js +0 -1
  273. package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-sIrTUqTo.js +0 -1
  274. package/dist/cjs/ErrorScreen-CL31INic.js +0 -4
  275. package/dist/cjs/FarcasterSignerStatusScreen-CZMxSZ2B.js +0 -29
  276. package/dist/cjs/FiatOnrampScreen-BWE-wzus.js +0 -86
  277. package/dist/cjs/FundSolWalletWithExternalSolanaWallet-e1pL6w1L.js +0 -2
  278. package/dist/cjs/FundingEditAmountScreen-CIOt-oGd.js +0 -1
  279. package/dist/cjs/FundingMethodSelectionScreen-BGeCpJBJ.js +0 -1
  280. package/dist/cjs/InAppBrowserLoginNotPossible-CywcWPkZ.js +0 -1
  281. package/dist/cjs/InstallWalletScreen-JfaInrUT.js +0 -1
  282. package/dist/cjs/LandingScreen-CfjeYypD.js +0 -1
  283. package/dist/cjs/LinkEmailScreen-DFTW39Tg.js +0 -1
  284. package/dist/cjs/LinkPhoneScreen-C2upPfpV.js +0 -1
  285. package/dist/cjs/LoginFailedScreen-BIu3aXER.js +0 -1
  286. package/dist/cjs/ManualTransferScreen-CV6De31D.js +0 -1
  287. package/dist/cjs/MfaAuthEnrollmentFlowScreen-BWPXMD7y.js +0 -1
  288. package/dist/cjs/MfaAuthVerifyFlowScreen-BUmI5UD9.js +0 -1
  289. package/dist/cjs/MfaEnrollmentFlowScreen-DtN8H9mT.js +0 -1
  290. package/dist/cjs/MfaVerifyFlowScreen-DJJ9kTZP.js +0 -1
  291. package/dist/cjs/MoonpayStatusScreen-w3skMb5T.js +0 -16
  292. package/dist/cjs/OAuthStatusScreen-G1IaSk2E.js +0 -1
  293. package/dist/cjs/PasskeySelectSignupOrLogin-BsYJUF4P.js +0 -1
  294. package/dist/cjs/PasskeyStatusScreen-hu8v0vH3.js +0 -3
  295. package/dist/cjs/PasswordRecoveryScreen-C0fjY1Ij.js +0 -20
  296. package/dist/cjs/RecoveryOAuthStatusScreen-Bv2UEdKD.js +0 -1
  297. package/dist/cjs/RecoveryPasswordCreateScreen-CFg7-HMy.js +0 -1
  298. package/dist/cjs/SignRequestScreen-BfqKiJ9G.js +0 -26
  299. package/dist/cjs/TelegramAuthScreen-D1eqNUPF.js +0 -1
  300. package/dist/cjs/UpdateEmailScreen-BvoRUAa3.js +0 -1
  301. package/dist/cjs/UpdatePhoneScreen-a-ISQK3q.js +0 -1
  302. package/dist/cjs/UserLimitReachedScreen-twyMZzVF.js +0 -1
  303. package/dist/cjs/WalletInterstitialScreen-D0fMvmub.js +0 -1
  304. package/dist/cjs/getErc20Balance-CTO0RtgK.js +0 -1
  305. package/dist/cjs/getErc20TokenInfo-D0BUvlN2.js +0 -1
  306. package/dist/cjs/index-DchMyzt9.js +0 -174
  307. package/dist/cjs/smart-wallets-COAgLX4N.js +0 -1
  308. package/dist/cjs/use-export-wallet-DknByx6S.js +0 -1
  309. package/dist/cjs/use-export-wallet-_EIyxyle.js +0 -1
  310. package/dist/cjs/useActiveWallet-BfMD5hzE.js +0 -185
  311. package/dist/cjs/usePrivy-C-Rab7yP.js +0 -1
  312. package/dist/cjs/useWalletBalance-v_jFKi4B.js +0 -1
  313. package/dist/cjs/useWallets-DX7GoSc-.js +0 -1
  314. package/dist/cjs/useWallets-dikDynAG.js +0 -1
  315. package/dist/esm/AccountNotFoundScreen-D59Em28p.mjs +0 -1
  316. package/dist/esm/AffirmativeConsentScreen-nijRFoNp.mjs +0 -6
  317. package/dist/esm/AllowlistRejectionScreen-CpZy18yk.mjs +0 -1
  318. package/dist/esm/AuthenticateWithWalletScreen-BWicCqKg.mjs +0 -1
  319. package/dist/esm/AwaitingEvmToSolBridgingScreen-Bca7Dq5r.mjs +0 -2
  320. package/dist/esm/AwaitingExternalEthereumTransferScreen-NbFK0A1q.mjs +0 -2
  321. package/dist/esm/AwaitingPasswordlessCodeScreen-cLUlwC9S.mjs +0 -103
  322. package/dist/esm/AwaitingSolToEvmBridgingScreen-CXPb-Ukz.mjs +0 -2
  323. package/dist/esm/CaptchaScreen-Cu3_cr8h.mjs +0 -1
  324. package/dist/esm/CoinbaseOnrampStatusScreen-lD0tNDQe.mjs +0 -16
  325. package/dist/esm/ConnectEmailForm-bgA9z3L3.mjs +0 -3
  326. package/dist/esm/ConnectLedgerScreen-BbsW8DSt.mjs +0 -9
  327. package/dist/esm/ConnectOnlyLandingScreen-D7uxtarL.mjs +0 -1
  328. package/dist/esm/ConnectOnlyStatusScreen-DpKUDVIK.mjs +0 -1
  329. package/dist/esm/ConnectOrCreateScreen-BNNYF6Ns.mjs +0 -1
  330. package/dist/esm/ConnectionStatusScreen-Dfv_mgId.mjs +0 -7
  331. package/dist/esm/CrossAppAuthScreen-BOCFddJL.mjs +0 -1
  332. package/dist/esm/DelegatedActionsConsentScreen-CS1yCHBG.mjs +0 -1
  333. package/dist/esm/DelegatedActionsRevokeScreen-Cw1FPv8x.mjs +0 -1
  334. package/dist/esm/EmbeddedWalletConnectingScreen-DGY8j-Si.mjs +0 -1
  335. package/dist/esm/EmbeddedWalletCreatedScreen-DLR7TF4o.mjs +0 -1
  336. package/dist/esm/EmbeddedWalletOnAccountCreateScreen-ColmQZ-q.mjs +0 -1
  337. package/dist/esm/EmbeddedWalletPasswordUpdateScreen-BRG9dsaW.mjs +0 -1
  338. package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-B3cMml6w.mjs +0 -1
  339. package/dist/esm/ErrorScreen-sNIfGI6q.mjs +0 -4
  340. package/dist/esm/FarcasterSignerStatusScreen-DqEULwox.mjs +0 -28
  341. package/dist/esm/FiatOnrampScreen-A5_TNfEg.mjs +0 -86
  342. package/dist/esm/FundSolWalletWithExternalSolanaWallet-Cy3gO2rc.mjs +0 -1
  343. package/dist/esm/FundingEditAmountScreen-BLmy4zpf.mjs +0 -1
  344. package/dist/esm/FundingMethodSelectionScreen-CFTtSc8T.mjs +0 -1
  345. package/dist/esm/InAppBrowserLoginNotPossible-BcEZlehe.mjs +0 -1
  346. package/dist/esm/InstallWalletScreen-CtJuryxO.mjs +0 -1
  347. package/dist/esm/LandingScreen-yPpishM-.mjs +0 -1
  348. package/dist/esm/LinkEmailScreen-C08N0_oz.mjs +0 -1
  349. package/dist/esm/LinkPhoneScreen-aZRsfGsF.mjs +0 -1
  350. package/dist/esm/LoginFailedScreen-C8ktIEOG.mjs +0 -1
  351. package/dist/esm/ManualTransferScreen-DiSMGPNF.mjs +0 -1
  352. package/dist/esm/MfaAuthEnrollmentFlowScreen-DnpsjnqC.mjs +0 -1
  353. package/dist/esm/MfaAuthVerifyFlowScreen-cdXMRh6f.mjs +0 -1
  354. package/dist/esm/MfaEnrollmentFlowScreen-_yDQyI2u.mjs +0 -1
  355. package/dist/esm/MfaVerifyFlowScreen-lPVdBldW.mjs +0 -1
  356. package/dist/esm/MoonpayStatusScreen-tZ8mdR2X.mjs +0 -16
  357. package/dist/esm/OAuthStatusScreen-GWwbWdSi.mjs +0 -1
  358. package/dist/esm/PasskeySelectSignupOrLogin-Dl5rDsw7.mjs +0 -1
  359. package/dist/esm/PasskeyStatusScreen-2znvW7Lc.mjs +0 -3
  360. package/dist/esm/PasswordRecoveryScreen-DBLHkrI_.mjs +0 -20
  361. package/dist/esm/RecoveryOAuthStatusScreen-7cATjPBS.mjs +0 -1
  362. package/dist/esm/RecoveryPasswordCreateScreen-OrukIxHX.mjs +0 -1
  363. package/dist/esm/TelegramAuthScreen-DMBY4HLl.mjs +0 -1
  364. package/dist/esm/UpdateEmailScreen-Dtbkg-xg.mjs +0 -1
  365. package/dist/esm/UpdatePhoneScreen-DJzzJhXJ.mjs +0 -1
  366. package/dist/esm/UserLimitReachedScreen-DsJc40Yi.mjs +0 -1
  367. package/dist/esm/WalletInterstitialScreen-CK6FWlf-.mjs +0 -1
  368. package/dist/esm/context-DLtU3JQy.mjs +0 -1
  369. package/dist/esm/getErc20Balance-o7J9W1su.mjs +0 -1
  370. package/dist/esm/getErc20TokenInfo-wKW6b8bj.mjs +0 -1
  371. package/dist/esm/index-YDEix4mU.mjs +0 -174
  372. package/dist/esm/reservoir-0wfhnc0j.mjs +0 -1
  373. package/dist/esm/smart-wallets-l4nwJjoH.mjs +0 -1
  374. package/dist/esm/use-export-wallet-BMt6c-lN.mjs +0 -1
  375. package/dist/esm/use-export-wallet-_wu5ex5t.mjs +0 -1
  376. package/dist/esm/useActiveWallet-CvP7iYvj.mjs +0 -185
  377. package/dist/esm/usePrivy-C_sY2Duk.mjs +0 -1
  378. package/dist/esm/useWalletBalance-RmRvKAUV.mjs +0 -1
  379. package/dist/esm/useWallets-BzNCTucF.mjs +0 -1
  380. package/dist/esm/useWallets-z8NFrORr.mjs +0 -1
@@ -1,103 +0,0 @@
1
- import{jsx as e,jsxs as r}from"react/jsx-runtime";import o from"@heroicons/react/20/solid/CheckIcon";import t from"@heroicons/react/24/outline/EnvelopeIcon";import i from"@heroicons/react/24/outline/PhoneIcon";import{useState as n,useEffect as a}from"react";import{isMobile as s}from"react-device-detect";import{styled as c}from"styled-components";import{H as l}from"./Layouts-BlFm53ED.mjs";import{L as d}from"./Link-DJ5gq9Di.mjs";import{u as p,q as m}from"./context-DLtU3JQy.mjs";import{u,e as v,b as f,k as h}from"./internal-context-Z-fyxadS.mjs";import{a as y,u as g}from"./privy-context-DrMxzgOR.mjs";import{s as x}from"./shouldProceedtoEmbeddedWalletCreationFlow-D2ZT5lW9.mjs";import{S as E}from"./ScreenLayout-D1p_ntex.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"ofetch";import"@privy-io/are-addresses-equal";import"./index-YDEix4mU.mjs";import"uuid";import"jose";import"eventemitter3";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./PrivyPluginContext-2QN2dVUw.mjs";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"./ModalHeader-BnVmXtvG.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const b=({contactMethod:c,authFlow:p,appName:m="Privy",whatsAppEnabled:u=!1,onBack:v,onCodeSubmit:f,onResend:h,errorMessage:y,success:g=!1,resendCountdown:x=0,onInvalidInput:b,onClearError:A})=>{let[w,T]=n(S);a((()=>{y||T(S)}),[y]);let k=async e=>{e.preventDefault();let r=e.currentTarget.value.replace(" ","");if(""===r)return;if(isNaN(Number(r)))return void b?.("Code should be numeric");A?.();let o=Number(e.currentTarget.name?.charAt(5)),t=[...r||[""]].slice(0,C-o),i=[...w.slice(0,o),...t,...w.slice(o+t.length)];T(i);let n=Math.min(Math.max(o+t.length,0),C-1);if(!isNaN(Number(e.currentTarget.value))){let e=document.querySelector(`input[name=code-${n}]`);e?.focus()}if(i.every((e=>e&&!isNaN(+e)))){let e=document.querySelector(`input[name=code-${n}]`);e?.blur(),await(f?.(i.join("")))}};/*#__PURE__*/return e(E,{title:"Enter confirmation code",subtitle:/*#__PURE__*/r("span","email"===p?{children:["Please check ",/*#__PURE__*/e(M,{children:c})," for an email from privy.io and enter your code below."]}:{children:["Please check ",/*#__PURE__*/e(M,{children:c})," for a",u?" WhatsApp":""," message from ",m," and enter your code below."]}),icon:"email"===p?t:i,onBack:v,showBack:!0,helpText:/*#__PURE__*/r(L,{children:[/*#__PURE__*/r("span",{children:["Didn't get ","email"===p?"an email":"a message","?"]}),x?/*#__PURE__*/r(R,{children:[/*#__PURE__*/e(o,{color:"var(--privy-color-foreground)",strokeWidth:1.33,height:"12px",width:"12px"}),/*#__PURE__*/e("span",{children:"Code sent"})]}):/*#__PURE__*/e(d,{as:"button",size:"sm",onClick:h,children:"Resend code"})]}),children:/*#__PURE__*/e(_,{children:/*#__PURE__*/e(l,{children:/*#__PURE__*/r(j,{children:[/*#__PURE__*/e("div",{children:w.map(((r,o)=>/*#__PURE__*/e("input",{name:`code-${o}`,type:"text",value:w[o],onChange:k,onKeyUp:e=>{"Backspace"===e.key&&(e=>{if(A?.(),T([...w.slice(0,e),"",...w.slice(e+1)]),e>0){let r=document.querySelector(`input[name=code-${e-1}]`);r?.focus()}})(o)},inputMode:"numeric",autoFocus:0===o,pattern:"[0-9]",className:`${g?"success":""} ${y?"fail":""}`,autoComplete:s?"one-time-code":"off"},o)))}),/*#__PURE__*/e(I,{$fail:!!y,$success:g,children:/*#__PURE__*/e("span",{children:"Invalid or expired verification code"===y?"Incorrect code":y||(g?"Success!":"")})})]})})})})};let C=6,S=Array(6).fill("");var A,w,T=((A=T||{})[A.RESET_AFTER_DELAY=0]="RESET_AFTER_DELAY",A[A.CLEAR_ON_NEXT_VALID_INPUT=1]="CLEAR_ON_NEXT_VALID_INPUT",A),k=((w=k||{})[w.EMAIL=0]="EMAIL",w[w.SMS=1]="SMS",w);const N={component:()=>{let{navigate:r,lastScreen:o,navigateBack:t,setModalData:i,onUserCloseViaDialogOrKeybindRef:s}=y(),c=p(),{closePrivyModal:l,resendEmailCode:d,resendSmsCode:E,getAuthMeta:C,loginWithCode:S,updateWallets:A,createAnalyticsEvent:w}=u(),{authenticated:T,logout:k,user:N}=g(),{whatsAppEnabled:_}=p(),[j,I]=n(!1),[L,R]=n(null),[M,D]=n(null),[O,P]=n(0);s.current=()=>null;let U=C()?.email?0:1,W=0===U?C()?.email||"":C()?.phoneNumber||"",F=m-500;a((()=>{if(O){let e=setTimeout((()=>{P(O-1)}),1e3);return()=>clearTimeout(e)}}),[O]),a((()=>{if(T&&j&&N){if(c?.legal.requireUsersAcceptTerms&&!N.hasAcceptedTerms){let e=setTimeout((()=>{r("AffirmativeConsentScreen")}),F);return()=>clearTimeout(e)}if(x(N,c.embeddedWallets)){let e=setTimeout((()=>{i({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),w({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,screen:"AwaitingPasswordlessCodeScreen"}}),k()},callAuthOnSuccessOnClose:!0}}),r("EmbeddedWalletOnAccountCreateScreen")}),F);return()=>clearTimeout(e)}{A();let e=setTimeout((()=>l({shouldCallAuthOnSuccess:!0,isSuccess:!0})),m);return()=>clearTimeout(e)}}}),[T,j,N]),a((()=>{if(L&&0===M){let e=setTimeout((()=>{R(null),D(null);let e=document.querySelector("input[name=code-0]");e?.focus()}),1400);return()=>clearTimeout(e)}}),[L,M]);/*#__PURE__*/return e(b,{contactMethod:W,authFlow:0===U?"email":"sms",appName:c?.name,whatsAppEnabled:_,onBack:()=>t(),onCodeSubmit:async e=>{try{await S(e),I(!0)}catch(e){if(e instanceof v&&e.privyErrorCode===f.INVALID_CREDENTIALS)R("Invalid or expired verification code"),D(0);else if(e instanceof v&&e.privyErrorCode===f.CANNOT_LINK_MORE_OF_TYPE)R(e.message);else{if(e instanceof v&&e.privyErrorCode===f.USER_LIMIT_REACHED)return console.error(new h(e).toString()),void r("UserLimitReachedScreen");if(e instanceof v&&e.privyErrorCode===f.USER_DOES_NOT_EXIST)return void r("AccountNotFoundScreen");if(e instanceof v&&e.privyErrorCode===f.LINKED_TO_ANOTHER_USER)return i({errorModalData:{error:e,previousScreen:o??"AwaitingPasswordlessCodeScreen"}}),void r("ErrorScreen",!1);if(e instanceof v&&e.privyErrorCode===f.DISALLOWED_PLUS_EMAIL)return i({inlineError:{error:e}}),void r("ConnectOrCreateScreen",!1);if(e instanceof v&&e.privyErrorCode===f.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return i({accountTransfer:{nonce:e.data?.data?.nonce,account:W,displayName:e.data?.data?.account?.displayName,linkMethod:0===U?"email":"sms",embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress}}),void r("LinkConflictScreen");R("Issue verifying code"),D(0)}}},onResend:async()=>{P(30),0===U?await d():await E()},errorMessage:L||void 0,success:j,resendCountdown:O,onInvalidInput:e=>{R(e),D(1)},onClearError:()=>{1===M&&(R(null),D(null))}})}};let _=c.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
- `,j=c.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
- `,I=c.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
- `,L=c.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
- `,R=c.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
- `,M=c.span`
100
- font-weight: 500;
101
- word-break: break-all;
102
- color: var(--privy-color-foreground);
103
- `;export{N as AwaitingPasswordlessCodeScreen,b as AwaitingPasswordlessCodeScreenView,N as default};
@@ -1,2 +0,0 @@
1
- import{jsxs as e,jsx as t,Fragment as r}from"react/jsx-runtime";import n from"@heroicons/react/24/outline/CheckCircleIcon";import{useRef as o,useState as a,useMemo as i,useEffect as s}from"react";import{parseEther as c}from"viem";import{ConnectedStandardSolanaWallet as l}from"@privy-io/js-sdk-core";import{b as d,c as m,R as u}from"./Layouts-BlFm53ED.mjs";import{B as p}from"./ModalHeader-BnVmXtvG.mjs";import{C as f}from"./ScreenHeader-CHmc4-Lu.mjs";import{t as h}from"./FundWalletMethodHeader-Cb-ACySl.mjs";import{N as g}from"./index-Dq_xe9dz.mjs";import{u as v,t as w}from"./context-DLtU3JQy.mjs";import{u as I,a as y,b as C}from"./internal-context-Z-fyxadS.mjs";import{z as T}from"./useActiveWallet-CvP7iYvj.mjs";import{a as S}from"./privy-context-DrMxzgOR.mjs";import{O as j}from"./analytics-mkkvFRju.mjs";import{g as A,t as b,d as N,a as F,b as U,u as x}from"./reservoir-0wfhnc0j.mjs";import{u as E}from"./PrivyPluginContext-2QN2dVUw.mjs";import{S as k}from"./usePrivy-C_sY2Duk.mjs";import{H as W,I as R}from"./use-export-wallet-_wu5ex5t.mjs";import{T as L}from"./TransferOrBridgeLoadingScreen-DVeIRghG.mjs";import"styled-components";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"tinycolor2";import"ofetch";import"zustand";import"react-device-detect";import"./events-context-CI0iqAXA.mjs";import"viem/utils";import"./useWallets-BzNCTucF.mjs";import"@privy-io/are-addresses-equal";import"eventemitter3";import"./InjectedWalletIcon-DLcYOGDj.mjs";import"@heroicons/react/24/outline/WalletIcon";import"./Row-C9vrS4Zi.mjs";import"./Value-tcJV9e0L.mjs";import"./LoadingSkeleton-U6-3yFwI.mjs";import"./Address-N-mzBgMy.mjs";import"lucide-react";import"./NetworkIcon-B48ilzF8.mjs";import"@heroicons/react/24/outline/GlobeAltIcon";const P={component:function(){let P=v(),{closePrivyModal:B,createAnalyticsEvent:D,connectors:H}=I(),{navigate:$,setModalData:M,data:q}=S(),O=v(),_=o(!1),z=E(),[G,Q]=a(!1),[V,X]=a(!1),[Y,J]=a(null),[K,Z]=a(),[ee,te]=a();if(!q?.funding||"ethereum"!==q.funding.chainType)throw Error("Invalid funding data");let{amount:re,connectedWallet:ne,chain:oe,solanaChain:ae,isUSDC:ie}=q.funding,se=q.funding.address,ce=q.funding.erc20Address,le=q.funding.isUSDC?"USDC":oe.nativeCurrency.symbol,de=i((()=>"solana"===ne?.type?ne.provider:function({connectors:e,connectedWalletAddress:t}){let r=e.find((e=>"solana"===e.chainType&&e.wallets.some((e=>e.address===t)))),n=r?.wallet.accounts.find((e=>e.address===t));if(!r||!n)throw new y("Unable to find source wallet connector");return new l({wallet:r.wallet,account:n})}({connectors:H,connectedWalletAddress:ne?.address||""})),[ne,H]),me=i((()=>{let e=z(k);if(!e)throw new y("Unable to load solana plugin");let t=P.solanaRpcs["solana:mainnet"];if(!t)throw new y("Unable to load mainnet RPC");return e.getSolanaRpcClient({rpc:t.rpc,rpcSubscriptions:t.rpcSubscriptions,chain:"solana:mainnet",blockExplorerUrl:t.blockExplorerUrl??"https://explorer.solana.com"})}),[]),ue=T(W(de?.standardWallet.name||"unknown")),pe=ue?.name||"wallet";return s((()=>{(async function(){if(!de||!oe||_.current)return;let e=z(k);if(!e)return void J(new y("Unable to solana plugin"));_.current=!0,oe?.testnet&&console.warn("Solana testnets are not supported for bridging");let t=ie?1e6*parseFloat(re):c(re),r=await A({isTestnet:!!oe.testnet,input:b({appId:O.id,amount:t.toString(),user:de.address,recipient:se,destinationChainId:oe.id,originChainId:U,originCurrency:ie?N:F,destinationCurrency:ie?ce:void 0})}).catch(console.error);if(!r)return void J(new y(`Unable to fetch quotes for bridging. Wallet ${R(de.address)} does not have enough funds.`,void 0,C.INSUFFICIENT_BALANCE));let n=await e.createTransactionFromRelayQuote({quote:r,source:de.address,solanaClient:me});if(n)try{Q(!0);let t=await e.simulateTransaction({solanaClient:me,tx:n});if(t.hasError)return t.hasFunds?(console.error("Transaction failed:",t.error),void J(new y("Something went wrong",void 0,C.TRANSACTION_FAILURE))):void J(new y(`Wallet ${R(de?.address)} does not have enough funds. ${r.details.currencyIn.amountFormatted} ${le} are needed to complete the transaction.`,void 0,C.INSUFFICIENT_BALANCE));let{signature:o}=await de.signAndSendTransaction({chain:"solana:mainnet",transaction:n}),a=e.getAddressFromBuffer(o);Z(a),te("pending")}catch(e){if(console.error(e),/user rejected the request/gi.test(e.message||""))return void J(new y("Transaction was rejected by the user",void 0,C.TRANSACTION_FAILURE));J(new y("Something went wrong",void 0,C.TRANSACTION_FAILURE))}else J(new y(`Unable to select bridge option from quotes. Wallet ${R(de.address)} does not have enough funds.`,void 0,C.INSUFFICIENT_BALANCE))})().catch(console.error)}),[]),x({transactionHash:K,isTestnet:!1,bridgingStatus:ee,setBridgingStatus:te,onSuccess({transactionHash:e}){Q(!1),X(!0),D({eventName:j,payload:{provider:"external",status:"success",txHash:e,address:de.address,chainType:"solana",clusterName:ae,token:"SOL",destinationAddress:se,destinationChainId:oe.id,destinationChainType:"ethereum",destinationValue:re,destinationToken:ie?"USDC":"ETH"}})},onFailure({error:e}){Q(!1),J(e)}}),s((()=>{if(!V)return;let e=setTimeout(B,w);return()=>clearTimeout(e)}),[V]),s((()=>{Y&&(M({funding:q?.funding,solanaFundingData:q?.solanaFundingData,sendTransaction:q?.sendTransaction,errorModalData:{error:Y,previousScreen:"TransferFromWalletScreen"}}),$("ErrorScreen",!1))}),[Y]),V?/*#__PURE__*/e(r,{children:[/*#__PURE__*/t(h,{}),/*#__PURE__*/t(d,{}),/*#__PURE__*/e(m,{children:[/*#__PURE__*/t(n,{color:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/t(f,{title:"Success!",description:`You’ve successfully added ${re} ${le} to your ${O.name} wallet. It may take a minute before the funds are available to use.`})]}),/*#__PURE__*/t(u,{}),/*#__PURE__*/t(p,{})]}):G&&de?/*#__PURE__*/t(L,{walletClientType:W(de?.standardWallet.name||"unknown"),displayName:pe,addressToFund:se,isBridging:G,isErc20Flow:!1,chainId:oe.id,chainName:oe.name,totalPriceInUsd:void 0,totalPriceInNativeCurrency:void 0,gasPriceInUsd:void 0,gasPriceInNativeCurrency:void 0}):
2
- /*#__PURE__*/e(r,{children:[/*#__PURE__*/t(h,{}),/*#__PURE__*/t(g,{}),/*#__PURE__*/t("div",{style:{marginTop:"1rem"}}),/*#__PURE__*/t(p,{})]})}};export{P as AwaitingSolToEvmBridgingScreen,P as default};
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{CheckCircle as t,XCircle as r}from"lucide-react";import{useMemo as i,useRef as o,useState as s,useEffect as a}from"react";import{a as n,C as c}from"./index-YDEix4mU.mjs";import{a as m}from"./privy-context-DrMxzgOR.mjs";import{S as u}from"./ScreenLayout-D1p_ntex.mjs";import"@privy-io/js-sdk-core";import"uuid";import"jose";import"eventemitter3";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"./context-DLtU3JQy.mjs";import"tinycolor2";import"styled-components";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./internal-context-Z-fyxadS.mjs";import"ofetch";import"./useWallets-BzNCTucF.mjs";import"viem";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./PrivyPluginContext-2QN2dVUw.mjs";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"@privy-io/are-addresses-equal";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"./ModalHeader-BnVmXtvG.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const p=({status:o,title:s,description:a,userIntentRequired:n,retriesRemaining:c,hasSelectedCta:m,onContinue:p,onRetry:l})=>{let d=i((()=>{switch(o){case"loading":default:return;case"success":return n?{label:m?"Continuing...":"Continue",onClick:p,disabled:m,loading:m}:void 0;case"error":return c>0?{label:"Retry",onClick:l}:void 0}}),[o,m,p,l]),y=i((()=>({loading:"loading",ready:"subtle",disabled:"subtle",success:"success",error:"error"}[o]||"loading")),[o]);/*#__PURE__*/return e(u,{icon:"loading"===o||"ready"===o?void 0:"success"===o?t:r,iconVariant:y,title:s,subtitle:a,primaryCta:d,watermark:!0})},l={component:()=>{let{lastScreen:t,data:r,navigate:i,setModalData:u}=m(),{status:l,token:d,waitForResult:y,reset:g,execute:v}=n(),h=o([]),j=e=>{h.current=[e,...h.current]},[f,C]=s(!0);a((()=>(j(setTimeout(C,1e3,!1)),()=>{h.current.forEach((e=>clearTimeout(e))),h.current=[]})),[]);let[b,k]=s(""),[w,R]=s("Checking that you are a human..."),[S,x]=s(!1),[I,T]=s(3),q=r?.captchaModalData,A=async e=>{try{await(q?.callback(e)),q?.onSuccessNavigateTo&&i(q?.onSuccessNavigateTo,!1)}catch(e){if(e instanceof c)return;u({errorModalData:{error:e,previousScreen:t||"LandingScreen"}}),i(q?.onErrorNavigateTo||"ErrorScreen",!1)}};a((()=>{"success"===l?j(setTimeout((async()=>{let e=await y();!e||q?.userIntentRequired||A(e)}),1e3)):"ready"===l&&j(setTimeout((()=>{"ready"===l&&v()}),500))}),[l]),a((()=>{if(!f)switch(l){case"success":k("Success!"),R("CAPTCHA passed successfully."),q?.userIntentRequired||setTimeout((()=>{x(!0),A(d)}),2e3);break;case"loading":k(""),R("Checking that you are a human...");break;case"error":k("Something went wrong"),R(I<=0?"If you use an adblocker or VPN, try disabling and re-attempting.":"You did not pass CAPTCHA. Please try again.")}}),[l,f,S]);/*#__PURE__*/return e(p,{status:l,title:b,description:w,userIntentRequired:q?.userIntentRequired,retriesRemaining:I,hasSelectedCta:S,onContinue:()=>{x(!0),A(d)},onRetry:async()=>{if(I<=0)return;T((e=>e-1)),g(),v();let e=await y();!e||q?.userIntentRequired||A(e)}})}};export{l as CaptchaScreen,p as CaptchaScreenView,l as default};
@@ -1,16 +0,0 @@
1
- import{jsxs as e,Fragment as r,jsx as t}from"react/jsx-runtime";import o from"@heroicons/react/24/solid/ArrowsRightLeftIcon";import i from"@heroicons/react/24/solid/CheckCircleIcon";import{useState as n,useRef as a,useEffect as s,useMemo as c}from"react";import{styled as m}from"styled-components";import{M as l,B as d,P as p}from"./ModalHeader-BnVmXtvG.mjs";import{a as u}from"./Layouts-BlFm53ED.mjs";import{L as g,O as f}from"./useActiveWallet-CvP7iYvj.mjs";import{u as h}from"./internal-context-Z-fyxadS.mjs";import{a as v}from"./privy-context-DrMxzgOR.mjs";import{O as y}from"./analytics-mkkvFRju.mjs";import{I as b}from"./index-YDEix4mU.mjs";import"./context-DLtU3JQy.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"zustand";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"eventemitter3";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"ofetch";import"@privy-io/are-addresses-equal";import"uuid";import"jose";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./PrivyPluginContext-2QN2dVUw.mjs";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";const w={component:()=>{let{data:o,setModalData:i,navigate:c,navigateBack:m}=v(),{closePrivyModal:p,createAnalyticsEvent:u,client:g}=h(),[f,b]=n("pending-in-flow"),w=a(0),C={...o?.funding,showAlternateFundingMethod:!0};C.usingDefaultFundingMethod&&(C.usingDefaultFundingMethod=!1);let{partnerUserId:k,popup:x}=o?.coinbaseOnrampStatus??{};return s((()=>{if("pending-in-flow"===f||"pending-after-flow"===f){let e=setInterval((async()=>{if(k)try{let{status:e}=await g.getCoinbaseOnRampStatus({partnerUserId:k});if("success"===e)return void b("success");if("failure"===e)throw Error("There was an error completing Coinbase Onramp flow.");if(w.current>=3)return i({funding:C,solanaFundingData:o?.solanaFundingData}),void c("FundingMethodSelectionScreen");x?.closed&&(w.current=w.current+1,b("pending-after-flow"))}catch(e){console.error(e),b("error"),u({eventName:y,payload:{status:"failure",provider:"coinbase-onramp",error:e.message}}),i({funding:{...C,errorMessage:"Something went wrong adding funds. Please try again or use another method."},solanaFundingData:o?.solanaFundingData}),c("FundingMethodSelectionScreen")}}),1500);return()=>clearInterval(e)}}),[k,x,f]),/*#__PURE__*/e(r,{children:[/*#__PURE__*/t(l,{title:"Fund account",backFn:()=>{i({funding:C,solanaFundingData:o?.solanaFundingData}),m()}},"header"),/*#__PURE__*/t(j,{status:f,onClickCta:p}),/*#__PURE__*/t(d,{})]})}};let j=({status:o,onClickCta:i})=>{let{title:n,body:a,cta:s}=c((()=>(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:""}}})(o)),[o]);/*#__PURE__*/return e(r,{children:[/*#__PURE__*/e(x,{children:[/*#__PURE__*/t(C,{isSucccess:"success"===o}),/*#__PURE__*/e(u,{children:[/*#__PURE__*/t("h3",{children:n}),/*#__PURE__*/t(k,{children:a})]})]}),s&&/*#__PURE__*/t(p,{onClick:i,children:s})]})},C=({isSucccess:r})=>{if(!r){let r="var(--privy-color-foreground-4)";/*#__PURE__*/return e("div",{style:{position:"relative"},children:[/*#__PURE__*/t(g,{color:r,style:{position:"absolute"}}),/*#__PURE__*/t(f,{color:r}),/*#__PURE__*/t(b,{style:{position:"absolute",width:"2.8rem",height:"2.8rem",top:"1.2rem",left:"1.2rem"}})]})}let n=r?i:()=>/*#__PURE__*/t(o,{width:"3rem",height:"3rem",style:{backgroundColor:"var(--privy-color-foreground-4)",color:"var(--privy-color-background)",borderRadius:"100%",padding:"0.5rem",margin:"0.5rem"}}),a=r?"var(--privy-color-success)":"var(--privy-color-foreground-4)";/*#__PURE__*/return t("div",{style:{borderColor:a,display:"flex",justifyContent:"center",alignItems:"center",borderRadius:"100%",borderWidth:2,padding:"0.5rem",marginBottom:"0.5rem"},children:n&&/*#__PURE__*/t(n,{width:"4rem",height:"4rem",color:a})})},k=m.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
- `,x=m.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
- `;export{w as CoinbaseOnrampStatusScreen,w as default};
@@ -1,3 +0,0 @@
1
- import{jsxs as e,Fragment as r,jsx as a}from"react/jsx-runtime";import{Mail as i}from"lucide-react";import{forwardRef as t,useState as o,useEffect as n}from"react";import{styled as l}from"styled-components";import{u as s}from"./context-DLtU3JQy.mjs";import{u as m,c,b as d}from"./internal-context-Z-fyxadS.mjs";import{a as p}from"./index-YDEix4mU.mjs";import{u,a as h}from"./privy-context-DrMxzgOR.mjs";import{r as g,C as f}from"./useActiveWallet-CvP7iYvj.mjs";import{B as y}from"./use-export-wallet-_wu5ex5t.mjs";import{E,P as S}from"./ModalHeader-BnVmXtvG.mjs";import{C as v}from"./Chip-D2-wZOHJ.mjs";import{I as b,a as j}from"./EmailInputForm-Dgoii4vf.mjs";import{E as k}from"./ErrorMessage-D8VaAP5m.mjs";const C=/*#__PURE__*/t(((t,l)=>{let[f,b]=o(t.defaultValue||""),[j,C]=o(""),[T,A]=o(!1),{authenticated:D}=u(),{initLoginWithEmail:L}=m(),{navigate:M,setModalData:I,currentScreen:U,data:N}=h(),{enabled:W,token:F}=p(),[R,_]=o(!1),{accountType:q}=g(),B=s();n((()=>{!f&&B.disablePlusEmails&&N?.inlineError?.error instanceof c&&N?.inlineError?.error.privyErrorCode===d.DISALLOWED_PLUS_EMAIL&&!j&&C("Please enter a valid email address without a '+'."),j&&C("")}),[f]);let H=y(f),K=T||!H,O=()=>{var e;I({login:N?.login,inlineError:void 0}),!W||F||D?(e=F,A(!0),L({email:f,captchaToken:e,disableSignup:N?.login?.disableSignup,withPrivyUi:!0}).then((()=>{M("AwaitingPasswordlessCodeScreen")})).catch((e=>{I({errorModalData:{error:e,previousScreen:U||"LandingScreen"}}),M("ErrorScreen")})).finally((()=>{A(!1)}))):(I({captchaModalData:{callback:e=>L({email:f,captchaToken:e,withPrivyUi:!0}),userIntentRequired:!1,onSuccessNavigateTo:"AwaitingPasswordlessCodeScreen",onErrorNavigateTo:"ErrorScreen"}}),M("CaptchaScreen"))};/*#__PURE__*/return e(r,{children:[/*#__PURE__*/e(x,{children:[j&&/*#__PURE__*/a(k,{style:{display:"block",marginTop:"0.25rem",textAlign:"left"},children:j}),/*#__PURE__*/e(w,{stacked:t.stacked,$error:!!j,children:[/*#__PURE__*/a(P,{children:/*#__PURE__*/a(i,{})}),/*#__PURE__*/a("input",{ref:l,id:"email-input",className:"login-method-button",type:"email",placeholder:"your@email.com",onFocus:()=>_(!0),onChange:e=>b(e.target.value),onKeyUp:e=>{"Enter"===e.key&&O()},value:f,autoComplete:"email"}),"email"!==q||R?t.stacked?/*#__PURE__*/a("span",{}):/*#__PURE__*/a(E,{isSubmitting:T,onClick:O,disabled:K,children:"Submit"}):/*#__PURE__*/a(v,{color:"gray",children:"Recent"})]})]}),t.stacked?/*#__PURE__*/a(S,{loadingText:null,loading:T,disabled:K,onClick:O,style:{width:"100%"},children:"Submit"}):null]})}));let x=b,w=j,P=l(f)`
2
- display: inline-flex;
3
- `;export{C};
@@ -1,9 +0,0 @@
1
- import{jsx as t,jsxs as e}from"react/jsx-runtime";import{ArrowRightLeft as i}from"lucide-react";import{styled as o}from"styled-components";import{a as r}from"./privy-context-DrMxzgOR.mjs";import{S as n}from"./ScreenLayout-D1p_ntex.mjs";import{H as m}from"./index-YDEix4mU.mjs";import"@privy-io/are-addresses-equal";import"react";import"./context-DLtU3JQy.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"./internal-context-Z-fyxadS.mjs";import"ofetch";import"./ModalHeader-BnVmXtvG.mjs";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"eventemitter3";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";import"uuid";import"jose";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./PrivyPluginContext-2QN2dVUw.mjs";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";const s=e=>/*#__PURE__*/t("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",...e,children:/*#__PURE__*/t("g",{children:/*#__PURE__*/t("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"})})}),p=({onContinueWithLedger:o,onContinueWithoutLedger:r,title:p="Phantom supports Ledger",subtitle:a="Are you using a Ledger hardware wallet?\nContinue to sign with Ledger"})=>/*#__PURE__*/t(n,{title:p,subtitle:/*#__PURE__*/t(d,{children:a}),primaryCta:{label:"Continue with Ledger",onClick:o},secondaryCta:{label:"Continue without Ledger",onClick:r},watermark:!0,children:/*#__PURE__*/e(l,{children:[/*#__PURE__*/t(m,{style:{width:"48px",height:"48px"}}),/*#__PURE__*/t(i,{strokeWidth:2,color:"var(--privy-color-icon-subtle)",width:22,height:22}),/*#__PURE__*/t(s,{style:{width:"48px",height:"48px"}})]})});function a(){let{data:e,setModalData:i,navigate:o}=r();/*#__PURE__*/return t(p,{onContinueWithLedger:function(){i({...e,login:{...e?.login,isSigningInWithLedgerSolana:!0}}),o("ConnectionStatusScreen")},onContinueWithoutLedger:function(){i({...e,login:{...e?.login,isSigningInWithLedgerSolana:!1}}),o("ConnectionStatusScreen")}})}const c={component:a};let l=o.div`
2
- display: flex;
3
- align-items: center;
4
- justify-content: center;
5
- gap: 8px;
6
- margin-bottom: var(--screen-space);
7
- `,d=o.span`
8
- white-space: pre-wrap;
9
- `;export{c as ConnectLedgerScreen,a as ConnectLedgerScreenComponent,p as ConnectLedgerScreenView,c as default};
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useRef as t}from"react";import{u as o}from"./context-DLtU3JQy.mjs";import{u as r,c as n,b as a}from"./internal-context-Z-fyxadS.mjs";import{a as i}from"./events-context-CI0iqAXA.mjs";import{a as l}from"./privy-context-DrMxzgOR.mjs";import{i as c}from"./ConnectWalletView-pxEyo8WM.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"ofetch";import"@privy-io/are-addresses-equal";import"@heroicons/react/24/outline";import"@tanstack/react-virtual";import"react-device-detect";import"styled-components";import"./ModalHeader-BnVmXtvG.mjs";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"eventemitter3";import"viem/utils";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./CopyableText-BCytXyJL.mjs";import"lucide-react";import"./Link-DJ5gq9Di.mjs";import"./QrCode-B84kEIjT.mjs";import"qrcode";import"./EmailInputForm-Dgoii4vf.mjs";import"./ErrorMessage-D8VaAP5m.mjs";import"./useI18n-C4fmUAf3.mjs";import"./WalletCards-DH1rqayz.mjs";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const m={component:()=>{let{closePrivyModal:m}=r(),{data:s,navigate:p}=l(),d=o(),C=i(),u=s?.externalConnectWallet?.description,j=t(s?.externalConnectWallet?.walletList??d.appearance.walletList),E=t(s?.externalConnectWallet?.walletChainType??d.appearance.walletChainType);/*#__PURE__*/return e(c,{walletList:j.current,walletChainType:E.current,preSelectedWalletId:s?.externalConnectWallet?.preSelectedWalletId,hideHeader:s?.externalConnectWallet?.hideHeader,onBack:s?.funding?()=>p("FundingMethodSelectionScreen"):void 0,onClose:()=>{C("connectWallet","onError",a.GENERIC_CONNECT_WALLET_ERROR),m()},onConnect:({connector:e,wallet:t})=>{C("connectWallet","onSuccess",{wallet:t});let o=s?.externalConnectWallet?.onCompleteNavigateTo;o?p(o({address:t.address,walletClientType:e?.walletClientType,walletChainType:e?.chainType})):m()},onConnectError:e=>{e instanceof n?(console.warn(e.cause?e.cause:e.message),C("connectWallet","onError",e.privyErrorCode||a.GENERIC_CONNECT_WALLET_ERROR)):(console.warn(e),C("connectWallet","onError",a.UNKNOWN_CONNECT_WALLET_ERROR))},customDescription:u,app:d,connectOnly:!0})},isUnauthenticatedScreem:!0};export{m as ConnectOnlyLandingScreen,m as default};
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useState as t,useEffect as o}from"react";import{isMobile as r}from"react-device-detect";import{C as i}from"./use-export-wallet-_wu5ex5t.mjs";import{q as n}from"./context-DLtU3JQy.mjs";import{z as a}from"./useActiveWallet-CvP7iYvj.mjs";import{u as s}from"./internal-context-Z-fyxadS.mjs";import{a as l}from"./privy-context-DrMxzgOR.mjs";import{S as c}from"./ScreenLayout-D1p_ntex.mjs";import{B as m}from"./index-YDEix4mU.mjs";import{getErrorDetails as p}from"./ConnectionStatusScreen-Dfv_mgId.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"@privy-io/js-sdk-core";import"eventemitter3";import"viem/utils";import"tinycolor2";import"zustand";import"styled-components";import"./events-context-CI0iqAXA.mjs";import"ofetch";import"@privy-io/are-addresses-equal";import"./ModalHeader-BnVmXtvG.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";import"uuid";import"jose";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./PrivyPluginContext-2QN2dVUw.mjs";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"./Link-DJ5gq9Di.mjs";import"./useI18n-C4fmUAf3.mjs";import"./shouldProceedtoEmbeddedWalletCreationFlow-D2ZT5lW9.mjs";const u=({walletLogo:t,success:o,errorMessage:r,title:n,subtitle:a,onRetry:s,onUseDifferentWallet:l,onBack:m,numRetries:p,maxRetries:u})=>/*#__PURE__*/e(c,{title:n,subtitle:a,icon:t,iconVariant:"loading",iconLoadingStatus:{success:o,fail:!!r},primaryCta:r===i.ERROR_USER_EXISTS?{label:"Use a different wallet",onClick:l}:!o&&r?.retryable&&p<u?{label:"Retry",onClick:s,disabled:!r?.retryable||p>=u}:!o&&r&&p>=u?{label:"Use a different wallet",onClick:l}:void 0,onBack:m,watermark:!0}),d={component:()=>{let i,{navigateBack:c,navigate:d,lastScreen:w,currentScreen:f,data:y,setModalData:v}=l(),{walletConnectionStatus:j,closePrivyModal:g}=s(),[h,C]=t(void 0),[k,b]=t(0),x=a(j?.connector?.walletClientType||"unknown"),S="connected"===j?.status,R="switching_to_supported_chain"===j?.status;o((()=>{if(S){let e;if(y?.externalConnectWallet?.onCompleteNavigateTo){let t=y.externalConnectWallet.onCompleteNavigateTo,o=j.connectedWallet?.address;e=setTimeout((()=>{if(y.funding&&j.connector){let e=j.connector.wallets.find((e=>e.address===o));v({...y,funding:{...y.funding,connectedWallet:e}})}d(t({address:o,walletClientType:j.connector?.walletClientType,walletChainType:j.connector?.chainType}))}),n)}else e=setTimeout(g,n);return()=>clearTimeout(e)}}),[S]);o((()=>{var e;j?.connectError&&(e=j?.connectError,C(p(e)))}),[j]);let T=j?.connector?.connectorType||"injected",W=j?.connector?.walletClientType||"unknown",B=x?.metadata?.shortName||x?.name||j?.connector?.walletBranding.name||"Browser Extension",E=x?.image_url?.md||j?.connector?.walletBranding.icon||(t=>/*#__PURE__*/e(m,{...t})),M="Browser Extension"===B?B.toLowerCase():B;i=S?`Successfully connected with ${M}`:h?h.message:R?"Switching networks":`Waiting for ${M}`;let _="Don’t see your wallet? Check your other browser windows.";return S?_="You’re good to go!":k>=2&&h?_="Unable to connect wallet":h?_=h.detail:R?_="Switch your wallet to the requested network.":"metamask"===W&&r?_="Click to continue to open and connect MetaMask.":"metamask"===W?_="For the best experience, connect only one wallet at a time.":"wallet_connect_v2"===T?_="Open your mobile wallet app to continue":"coinbase_wallet"===T&&(_="Confirm in the Coinbase app/popup to continue."),/*#__PURE__*/e(u,{walletName:B,walletLogo:E,success:S,errorMessage:h,title:i,subtitle:_,onRetry:()=>{b(k+1),C(void 0),j?.connectRetry()},onUseDifferentWallet:c,onBack:f===w?void 0:c,numRetries:k,maxRetries:2})}};export{d as ConnectOnlyStatusScreen,u as ConnectOnlyStatusScreenView,d as default};
@@ -1 +0,0 @@
1
- import{jsx as t}from"react/jsx-runtime";import{u as o}from"./context-DLtU3JQy.mjs";import{C as r,L as i}from"./CustomLandingScreenView-BxAx1Co_.mjs";import"react";import"@privy-io/js-sdk-core";import"tinycolor2";import"@heroicons/react/24/outline/UserCircleIcon";import"styled-components";import"./ModalHeader-BnVmXtvG.mjs";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./internal-context-Z-fyxadS.mjs";import"ofetch";import"./useWallets-BzNCTucF.mjs";import"./privy-context-DrMxzgOR.mjs";import"@privy-io/are-addresses-equal";import"viem";import"eventemitter3";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./index-YDEix4mU.mjs";import"uuid";import"jose";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./PrivyPluginContext-2QN2dVUw.mjs";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"./ConnectWalletView-pxEyo8WM.mjs";import"@heroicons/react/24/outline";import"@tanstack/react-virtual";import"./CopyableText-BCytXyJL.mjs";import"lucide-react";import"./Link-DJ5gq9Di.mjs";import"./QrCode-B84kEIjT.mjs";import"qrcode";import"./EmailInputForm-Dgoii4vf.mjs";import"./ErrorMessage-D8VaAP5m.mjs";import"./useI18n-C4fmUAf3.mjs";import"./WalletCards-DH1rqayz.mjs";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";import"./ConnectEmailForm-bgA9z3L3.mjs";import"./Chip-D2-wZOHJ.mjs";import"./LoadingSkeleton-U6-3yFwI.mjs";import"./farcaster-DPlSjvF5.mjs";import"@heroicons/react/24/outline/FingerPrintIcon";import"./ConnectPhoneForm-DP4LRtUG.mjs";import"./twitter-BoAxhlj6.mjs";import"./twitch-5IOe4sIQ.mjs";import"./telegram-B-JqnkqZ.mjs";import"./WalletOverflowButton-CPDxFP5w.mjs";import"./ScreenLayout-D1p_ntex.mjs";const e={component:()=>{let e=o();return e.loginMethodsAndOrder&&e.loginMethodsAndOrder.primary.length>0?/*#__PURE__*/t(r,{connectOnly:!0}):/*#__PURE__*/t(i,{connectOnly:!0})}};export{e as ConnectOrCreateScreen,e as default};
@@ -1,7 +0,0 @@
1
- import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import{useRef as o,useEffect as a,useState as i,useCallback as r}from"react";import{isMobile as c}from"react-device-detect";import{styled as l}from"styled-components";import{a as s,S as d,W as m,B as u,b as p}from"./index-YDEix4mU.mjs";import{L as g}from"./Link-DJ5gq9Di.mjs";import{u as w,q as h}from"./context-DLtU3JQy.mjs";import{u as y}from"./useI18n-C4fmUAf3.mjs";import{C as S,P as f,w as C,k as v,y as b}from"./use-export-wallet-_wu5ex5t.mjs";import{isHex as T,getAddress as _}from"viem";import{b as E,u as R,k}from"./internal-context-Z-fyxadS.mjs";import{z as A}from"./useActiveWallet-CvP7iYvj.mjs";import{u as W,a as L}from"./privy-context-DrMxzgOR.mjs";import{s as I}from"./shouldProceedtoEmbeddedWalletCreationFlow-D2ZT5lW9.mjs";import{u as j}from"./PrivyPluginContext-2QN2dVUw.mjs";import{e as U}from"./usePrivy-C_sY2Duk.mjs";import{S as O}from"./ScreenLayout-D1p_ntex.mjs";import"@privy-io/js-sdk-core";import"uuid";import"jose";import"eventemitter3";import"./useWallets-BzNCTucF.mjs";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"viem/utils";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"@scure/base";import"./events-context-CI0iqAXA.mjs";import"zustand";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"ofetch";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"@privy-io/are-addresses-equal";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"tinycolor2";import"./ModalHeader-BnVmXtvG.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const N=e=>{let t=localStorage.getItem("-walletlink:https://www.walletlink.org:Addresses")?.split(" ").filter((e=>T(e,{strict:!0}))).map((e=>_(e)));return!!t?.length&&!!e?.linkedAccounts.filter((e=>"wallet"==e.type&&t.includes(e.address))).length};const x=e=>e?.privyErrorCode===E.LINKED_TO_ANOTHER_USER?S.ERROR_USER_EXISTS:e instanceof f&&!e.details.default?e.details:e instanceof C?S.ERROR_TIMED_OUT:e?.privyErrorCode===E.CANNOT_LINK_MORE_OF_TYPE?S.ERROR_USER_LIMIT_REACHED:S.ERROR_WALLET_CONNECTION,M=({walletLogo:o,title:a,subtitle:i,signSuccess:r,errorMessage:c,connectSuccess:l,separateConnectAndSign:s,signing:d,walletConnectRedirectUri:m,walletConnectFallbackUniversalUri:u,hasTabbedAway:p,showCoinbaseWalletResetCta:w,numRetries:h,onBack:f,onSign:C,onRetry:v,onCoinbaseReset:b,onDifferentWallet:T})=>{let{t:_}=y(),E=w?{label:"Use a different wallet",onClick:b,disabled:r}:c===S.ERROR_USER_EXISTS&&f?{label:"Use a different wallet",onClick:T}:l&&!r&&s?{label:d?"Signing":"Sign with your wallet",onClick:C,disabled:d}:!r&&c?.retryable&&h<2?{label:"Retry",onClick:v,disabled:!1}:r||c?void 0:{label:_("connectionStatus.connecting"),onClick:()=>{},disabled:!0};/*#__PURE__*/return e(O,{title:a,subtitle:i,icon:o,iconVariant:"loading",iconLoadingStatus:{success:r,fail:!!c},primaryCta:E,onBack:f,watermark:!0,children:!l&&m&&!p&&/*#__PURE__*/t(B,{children:[_("connectionStatus.stillHere")," ",/*#__PURE__*/e(g,{href:m,target:"_blank",variant:"underlined",size:"sm",children:_("connectionStatus.tryConnectingAgain")}),u&&/*#__PURE__*/t(n,{children:[" ",_("connectionStatus.or")," ",/*#__PURE__*/e(g,{href:u,target:"_blank",variant:"underlined",size:"sm",children:_("connectionStatus.useDifferentLink")})]})]})})},D={component:()=>{let t,[n,l]=i(!1),[g,f]=i(!1),[C,T]=i(void 0),{authenticated:_,logout:O}=W(),{navigate:D,navigateBack:B,lastScreen:F,currentScreen:P,setModalData:q,data:z}=L(),H=w(),{t:X}=y(),{getAuthFlow:Y,walletConnectionStatus:K,closePrivyModal:Q,initLoginWithWallet:V,loginWithWallet:G,updateWallets:J,createAnalyticsEvent:$}=R(),{walletConnectors:Z}=W(),[ee,te]=i(0),{user:ne}=W(),oe=j(),[ae]=i(ne?.linkedAccounts.length||0),[ie,re]=i(""),[ce,le]=i(""),[se,de]=i(!1),{hasTabbedAway:me}=function(){let[e,t]=i(!1),n=r((()=>{document.hidden&&t(!0)}),[]);return a((()=>(document.addEventListener("visibilitychange",n),()=>document.removeEventListener("visibilitychange",n))),[n]),{hasTabbedAway:e,reset:()=>t(!1)}}(),{enabled:ue,token:pe}=s(),ge=A(K?.connector?.walletClientType||"unknown"),we=c&&"wallet_connect_v2"===K?.connector?.connectorType||c&&"coinbase_wallet"===K?.connector?.connectorType||c&&"base_account"===K?.connector?.connectorType||c&&"injected"===K?.connector?.connectorType&&"phantom"===K?.connector?.walletClientType||c&&"solana_adapter"===K?.connector?.connectorType&&"mobile_wallet_adapter"===K.connector.walletClientType,he="connected"===K?.status,ye="switching_to_supported_chain"===K?.status;a((()=>{let e=Y(),t=e instanceof p||e instanceof d?e:void 0;he&&"solana"===K.connector?.chainType&&"phantom"===K.connector?.walletClientType&&oe(U)&&void 0===z?.login?.isSigningInWithLedgerSolana?D("ConnectLedgerScreen",!1):(he&&!t&&(!ue||pe||_?V(K.connectedWallet,pe,z?.login?.disableSignup,z?.login?.isSigningInWithLedgerSolana?"transaction":"plain").then((()=>{de(!0)})):(q({captchaModalData:{callback:e=>V(K.connectedWallet,e,z?.login?.disableSignup,z?.login?.isSigningInWithLedgerSolana?"transaction":"plain").then((()=>{de(!0)})),userIntentRequired:!1,onSuccessNavigateTo:"ConnectionStatusScreen",onErrorNavigateTo:"ErrorScreen"}}),D("CaptchaScreen",!1))),t instanceof d&&z?.login?.isSigningInWithLedgerSolana&&(t.messageType="transaction"),t&&we&&he&&!t.preparedMessage?t.buildMessage():t&&!we&&he&&(g||(async()=>{f(!0),T(void 0);try{"wallet_connect_v2"===K?.connector?.connectorType&&"metamask"===K?.connector?.walletClientType&&await v(2500),await fe()}catch(e){console.warn("Auto-prompted signature failed",e)}finally{f(!1)}})()))}),[ee,he,se]),a((()=>{if(ne&&n){let e=h-500;if(H?.legal.requireUsersAcceptTerms&&!ne.hasAcceptedTerms){let t=setTimeout((()=>{D("AffirmativeConsentScreen")}),e);return()=>clearTimeout(t)}if(I(ne,H.embeddedWallets)){let t=setTimeout((()=>{q({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),$({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,screen:"ConnectionStatusScreen"}}),O()},callAuthOnSuccessOnClose:!0}}),D("EmbeddedWalletOnAccountCreateScreen")}),e);return()=>clearTimeout(t)}J();let t=setTimeout((()=>Q({shouldCallAuthOnSuccess:!0,isSuccess:!0})),h);return()=>clearTimeout(t)}}),[ne,n]);let Se=e=>{if(e?.privyErrorCode!==E.ALLOWLIST_REJECTED){if(e?.privyErrorCode===E.USER_LIMIT_REACHED)return console.error(new k(e).toString()),void D("UserLimitReachedScreen");if(e?.privyErrorCode!==E.USER_DOES_NOT_EXIST)return e?.privyErrorCode===E.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce?(q({accountTransfer:{nonce:e.data?.data?.nonce,account:Y()?.meta.address,displayName:e.data?.data?.account?.displayName,externalWalletMetadata:{walletClientType:Y()?.meta.walletClientType,chainId:Y()?.meta.chainId,connectorType:Y()?.meta.connectorType},linkMethod:Y()instanceof p?"siwe":"siws",embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress}}),void D("LinkConflictScreen")):void T(x(e));D("AccountNotFoundScreen")}else D("AllowlistRejectionScreen")};async function fe(){try{await G(),l(!0)}catch(e){Se(e)}finally{f(!1)}}a((()=>{K?.connectError&&Se(K?.connectError)}),[K]),((e,t)=>{let n=o((()=>{}));a((()=>{n.current=e})),a((()=>{if(null!==t){let e=setInterval((()=>n.current()),t||0);return()=>clearInterval(e)}}),[t])})((()=>{let e="wallet_connect_v2"===Ce&&K?.connector instanceof m?K.connector.redirectUri:void 0;e&&re(e);let t="wallet_connect_v2"===Ce&&K?.connector instanceof m?K.connector.fallbackUniversalRedirectUri:void 0;t&&le(t)}),K?.connector instanceof m&&!ie?500:null);let Ce=K?.connector?.connectorType||"injected",ve=K?.connector?.walletClientType||"unknown",be=ge?.metadata?.shortName||ge?.name||K?.connector?.walletBranding.name||"Browser Extension",Te=ge?.image_url?.md||K?.connector?.walletBranding.icon||(t=>/*#__PURE__*/e(u,{...t})),_e="Browser Extension"===be?be.toLowerCase():be;t=n?X("connectionStatus.successfullyConnected",{walletName:_e}):C?X("connectionStatus.errorTitle",{errorMessage:C.message}):ye?"Switching networks":he?g&&we?"Signing":"Sign to verify":`Waiting for ${_e}`;let Ee=X("connectionStatus.checkOtherWindows");n?Ee=ae===(ne?.linkedAccounts.length||0)?"Wallet was already linked.":"You're good to go!":ee>=2&&C?Ee="Unable to connect wallet":C?Ee=C.detail:ye?Ee="Switch your wallet to the requested network.":he&&we?Ee="Sign the message in your wallet to verify it belongs to you.":"metamask"===ve&&c?Ee="Click continue to open and connect MetaMask.":"metamask"===ve?Ee="For the best experience, connect only one wallet at a time.":"wallet_connect"===Ce?Ee="Open your mobile wallet app to continue":"coinbase_wallet"===Ce?b()||(Ee=N(ne)?"Continue with the Coinbase app. Not the right wallet? Reset your connection below.":"Confirm in the Coinbase app/popup to continue."):z?.login?.isSigningInWithLedgerSolana&&(Ee="Ledger requires a transaction to verify your identity. You'll sign a transaction that performs no onchain action.");let Re=Z?.walletConnectors?.find((e=>"coinbase_wallet"===e.walletClientType)),ke="coinbase_wallet"===ve&&(N(ne)||C===S.ERROR_USER_EXISTS);/*#__PURE__*/return e(M,{walletLogo:Te,title:t,subtitle:Ee,signSuccess:n,errorMessage:C,connectSuccess:he,separateConnectAndSign:we,signing:g,walletConnectRedirectUri:ie,walletConnectFallbackUniversalUri:ce,hasTabbedAway:me,showCoinbaseWalletResetCta:ke,numRetries:ee,onBack:F&&P!==F?B:void 0,onSign:()=>{f(!0),fe()},onRetry:()=>{te(ee+1),T(void 0),he?(f(!0),fe()):K?.connectRetry()},onCoinbaseReset:()=>{Re&&Re?.disconnect()},onDifferentWallet:B})}};let B=l.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
- `;export{D as ConnectionStatusScreen,M as ConnectionStatusView,D as default,x as getErrorDetails};
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useMemo as t,useState as o,useEffect as r}from"react";import{u as a,q as i}from"./context-DLtU3JQy.mjs";import{R as s}from"./index-YDEix4mU.mjs";import{u as n,a as c,e as p,b as l}from"./internal-context-Z-fyxadS.mjs";import{a as m}from"./privy-context-DrMxzgOR.mjs";import{n as d}from"./useActiveWallet-CvP7iYvj.mjs";import{s as u}from"./shouldProceedtoEmbeddedWalletCreationFlow-D2ZT5lW9.mjs";import{S as f}from"./ScreenLayout-D1p_ntex.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"uuid";import"jose";import"eventemitter3";import"./useWallets-BzNCTucF.mjs";import"viem";import"./use-export-wallet-_wu5ex5t.mjs";import"viem/utils";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"react-device-detect";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"./events-context-CI0iqAXA.mjs";import"@scure/base";import"styled-components";import"zustand";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./PrivyPluginContext-2QN2dVUw.mjs";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"ofetch";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"@privy-io/are-addresses-equal";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"./ModalHeader-BnVmXtvG.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const h=({providerApp:o,success:r,error:a,onClose:i})=>{let{title:s,subtitle:n}=t((()=>r?{title:`Successfully connected with ${o.name}`,subtitle:"You're good to go!"}:a?{title:"Authentication failed",subtitle:a.message}:{title:`Connecting to ${o.name}`,subtitle:`Please check the pop-up from ${o.name} to continue`}),[r,a,o.name]);/*#__PURE__*/return e(f,{title:s,subtitle:n,icon:o.logoUrl,iconVariant:"loading",iconLoadingStatus:{success:r,fail:!!a},onBack:i,watermark:!0})},v={component:()=>{let t=a(),{data:f,navigate:v,setModalData:y,onUserCloseViaDialogOrKeybindRef:A}=m(),{crossAppAuthFlow:g,updateWallets:j,closePrivyModal:b,createAnalyticsEvent:S}=n(),{logout:w}=d(),[C,I]=o({}),x=f?.crossAppAuth,T=new c(`There was an issue connecting your ${x?.name} account. Please try again.`),U=new s((async e=>{if(x?.popup)try{let t=await g({appId:e,popup:x.popup,action:x.action,disableSignup:x.disableSignup});I({data:t})}catch(e){if(e instanceof c)I({error:e});else if(e instanceof p){if(e.privyErrorCode===l.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return y({accountTransfer:{nonce:e.data?.data?.nonce,account:e.data?.data?.subject,displayName:e.data?.data?.account?.displayName,linkMethod:`privy:${x.appId}`,embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress,oAuthUserInfo:e.data?.data?.otherUser?.oAuthUserInfo}}),void v("LinkConflictScreen");x.popup&&x.popup.close(),I({error:T})}else I({error:T})}else I({error:T})})),k=()=>{C.data&&(j(),x?.onSuccess(C.data),b({shouldCallAuthOnSuccess:!0,isSuccess:!0})),x?.onError(C.error??new c("User canceled flow")),b({shouldCallAuthOnSuccess:!1,isSuccess:!1})};return A.current=k,r((()=>{x?.appId?.length&&U.execute(x.appId)}),[x?.appId]),r((()=>{if(!C.data)return;let e=C.data;if(t.legal.requireUsersAcceptTerms&&!e.hasAcceptedTerms){let e=setTimeout((()=>{v("AffirmativeConsentScreen")}),i);return()=>clearTimeout(e)}if(u(e,t.embeddedWallets)){let e=setTimeout((()=>{y({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),S({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,provider:`privy:${x?.appId}`,screen:"CrossAppAuthScreen"}}),w()},callAuthOnSuccessOnClose:!0}}),v("EmbeddedWalletOnAccountCreateScreen")}),i);return()=>clearTimeout(e)}let o=setTimeout(k,i);return()=>clearTimeout(o)}),[C.data]),x?.appId?/*#__PURE__*/e(h,{providerApp:{id:x?.appId,logoUrl:x?.logoUrl,name:x?.name},success:!!C.data,error:C.error,onClose:k}):(console.warn("Missing data for Screen"),null)},isShownBeforeReady:!0};export{v as CrossAppAuthScreen,h as CrossAppAuthScreenView,v as default};
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{AlertCircle as t,CheckCircle as o,CloudUpload as r}from"lucide-react";import{useState as s,useEffect as i}from"react";import{W as a}from"./WalletInfoCard-CEcdukTg.mjs";import{u as n,r as c}from"./context-DLtU3JQy.mjs";import{u as m,a as l}from"./internal-context-Z-fyxadS.mjs";import{a as p}from"./privy-context-DrMxzgOR.mjs";import{S as u}from"./ScreenLayout-D1p_ntex.mjs";import"styled-components";import"./ModalHeader-BnVmXtvG.mjs";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"@privy-io/js-sdk-core";import"eventemitter3";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./ErrorMessage-D8VaAP5m.mjs";import"./LabelXs-oqZNqbm_.mjs";import"./Address-N-mzBgMy.mjs";import"./shared-FM0rljBt.mjs";import"tinycolor2";import"ofetch";import"@privy-io/are-addresses-equal";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const d=({appName:s,address:i,success:n,error:c,onAccept:m,onDecline:l,onClose:p})=>/*#__PURE__*/e(u,n||c?{title:c?"Something went wrong":"Success!",subtitle:c?"Please try again.":`You've successfully granted delegated action permissions to ${s}.`,icon:c?t:o,iconVariant:c?"error":"success",onBack:p,watermark:!0}:{title:"Enable offline access",subtitle:`By confirming, ${s} will be able to use your wallet for you even when you're not around. You can revoke this later.`,icon:r,primaryCta:{label:"Accept",onClick:m},secondaryCta:{label:"Not now",onClick:l},onBack:p,watermark:!0,children:/*#__PURE__*/e(a,{address:i,title:"Wallet"})}),j={component:()=>{let{data:t}=p(),o=n(),{closePrivyModal:r}=m(),[a,u]=s(!1),[j,y]=s(),{address:f,onDelegate:h,onSuccess:v,onError:w}=t.delegatedActions.consent,g=async()=>{a?v():w(j??new l("User declined delegating actions.")),r({shouldCallAuthOnSuccess:!1})};return i((()=>{if(!a&&!j)return;let e=setTimeout(g,c);return()=>clearTimeout(e)}),[a,j]),/*#__PURE__*/e(d,{appName:o.name,address:f,success:a,error:j,onAccept:async()=>{try{await h(),u(!0)}catch(e){y(e)}},onDecline:()=>{g()},onClose:g})}};export{j as DelegatedActionsConsentScreen,d as DelegatedActionsConsentScreenView,j as default};
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{AlertCircle as o,CheckCircle as t,Ban as r}from"lucide-react";import{useState as i,useEffect as n}from"react";import{u as s,r as a}from"./context-DLtU3JQy.mjs";import{u as c,a as m}from"./internal-context-Z-fyxadS.mjs";import{a as l}from"./privy-context-DrMxzgOR.mjs";import{S as p}from"./ScreenLayout-D1p_ntex.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"ofetch";import"@privy-io/are-addresses-equal";import"./ModalHeader-BnVmXtvG.mjs";import"styled-components";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"eventemitter3";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const u=({appName:i,success:n,error:s,onRevoke:a,onDeny:c,onClose:m})=>/*#__PURE__*/e(p,n||s?{title:s?"Something went wrong":"Success!",subtitle:s?"Please try again.":"You've successfully revoked permissions.",icon:s?o:t,iconVariant:s?"error":"success",onBack:m,watermark:!0}:{title:"Revoke offline access to wallet",subtitle:`By confirming, ${i} will no longer be able to use this wallet on your behalf when you are not online.`,icon:r,primaryCta:{label:"Confirm",onClick:a},secondaryCta:{label:"Deny",onClick:c},onBack:m,watermark:!0}),d={component:()=>{let{data:o}=l(),t=s(),{closePrivyModal:r}=c(),[p,d]=i(!1),[y,v]=i(),{onRevoke:f,onSuccess:k,onError:h}=o.delegatedActions.revoke,j=async()=>{p?k():h(y??new m("User declined revoking access to their delegated wallet.")),r({shouldCallAuthOnSuccess:!1})};return n((()=>{if(!p&&!y)return;let e=setTimeout(j,a);return()=>clearTimeout(e)}),[p,y]),/*#__PURE__*/e(u,{appName:t.name,success:p,error:y,onRevoke:async()=>{try{await f(),d(!0)}catch(e){v(e)}},onDeny:()=>{j()},onClose:j})}};export{d as DelegatedActionsRevokeScreen,u as DelegatedActionsRevokeScreenView,d as default};
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{XCircle as t}from"lucide-react";import{useMemo as r,useState as o,useEffect as i}from"react";import{e as a,c as n}from"./index-YDEix4mU.mjs";import{u as s}from"./internal-context-Z-fyxadS.mjs";import{u as l,a as c}from"./privy-context-DrMxzgOR.mjs";import{S as m}from"./ScreenLayout-D1p_ntex.mjs";import"@privy-io/js-sdk-core";import"uuid";import"jose";import"eventemitter3";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"./context-DLtU3JQy.mjs";import"tinycolor2";import"styled-components";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./PrivyPluginContext-2QN2dVUw.mjs";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"ofetch";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"@privy-io/are-addresses-equal";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"./ModalHeader-BnVmXtvG.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const p=({connectionFailed:r,onClose:o})=>/*#__PURE__*/e(m,r?{title:"Something went wrong",subtitle:"We're on it. Please try again later.",icon:t,iconVariant:"error",primaryCta:{label:"Close",onClick:o},watermark:!0}:{title:"Connecting to your wallet",subtitle:"Please wait...",iconVariant:"loading",showClose:!0,onClose:o,watermark:!1}),d={component:()=>{let{authenticated:t,user:m}=l(),{client:d,closePrivyModal:u,createAnalyticsEvent:y,walletProxy:v}=s(),{navigate:h,data:f,setModalData:w,onUserCloseViaDialogOrKeybindRef:b}=c(),j=r((()=>Date.now()),[]),[C,g]=o(!1),{onCompleteNavigateTo:A,onFailure:I,shouldForceMFA:x,entropyId:k,entropyIdVerifier:P,recoveryMethod:S,connectingWalletAddress:F,isUnifiedWallet:T=!1}=f?.connectWallet,W=e=>{C||(g(!0),I("string"==typeof e?Error(e):e))};return i((()=>{let e;return t?v?((async()=>{let t=await d.getAccessToken();if(!t)return W("User must be authenticated and have a Privy wallet before it can be connected");try{if(!T){if(!k||!P)return W("For on-device first-class chain wallets, entropyId and entropyIdVerifier are required");await v.connect({accessToken:t,entropyId:k,entropyIdVerifier:P})}x&&await v.verifyMfa({accessToken:t});let r=(Date.now()-j)/1e3;"EmbeddedWalletKeyExportScreen"===A&&r<1?e=setTimeout((()=>{h(A,!1)}),1e3*(1-r)):h(A,!1)}catch(e){if(a(e)&&"privy"===S){let e=await d.getAccessToken();if(!e)return W("User must be authenticated and have a Privy wallet before it can be recovered");try{y({eventName:"embedded_wallet_pinless_recovery_started",payload:{walletAddress:F}});let t=await(v?.recover({accessToken:e,entropyId:k,entropyIdVerifier:P}));t?.entropyId||W(Error("Unable to recover wallet")),A?h(A):u({shouldCallAuthOnSuccess:!1}),y({eventName:"embedded_wallet_recovery_completed",payload:{walletAddress:F}}),h(A)}catch(e){W("An error has occurred, please try again.")}}else a(e)&&"privy"!==S&&"privy-v2"!==S?(w({...f,recoverWallet:{entropyId:k,entropyIdVerifier:P,onCompleteNavigateTo:A,onFailure:I},recoveryOAuthStatus:{provider:S,action:"recover",isInAccountCreateFlow:!1,shouldCreateEth:!1,shouldCreateSol:!1}}),h(n(S))):W(e)}})(),()=>clearTimeout(e)):void 0:W("User must be authenticated and have a Privy wallet before it can be connected")}),[t,m,v]),b.current=()=>{W("User exited before wallet could be connected"),u({shouldCallAuthOnSuccess:!1})},/*#__PURE__*/e(p,{connectionFailed:C,onClose:()=>u({shouldCallAuthOnSuccess:!1})})}};export{d as EmbeddedWalletConnectingScreen,p as EmbeddedWalletConnectingView,d as default};
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{CheckCircle as t}from"lucide-react";import{useEffect as o}from"react";import{u as r,a as i,c as s,e as c}from"./privy-context-DrMxzgOR.mjs";import{u as a,r as n}from"./context-DLtU3JQy.mjs";import{u as m}from"./internal-context-Z-fyxadS.mjs";import{S as l}from"./ScreenLayout-D1p_ntex.mjs";import"@privy-io/are-addresses-equal";import"@privy-io/js-sdk-core";import"tinycolor2";import"ofetch";import"./ModalHeader-BnVmXtvG.mjs";import"styled-components";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"eventemitter3";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const u=({title:o,description:r,onClose:i})=>/*#__PURE__*/e(l,{title:o,subtitle:r,icon:t,iconVariant:"success",watermark:!0,onBack:i}),p={component:()=>{let{user:t}=r(),{closePrivyModal:l,isNewUserThisSession:p,updateWallets:d}=m(),{data:j,onUserCloseViaDialogOrKeybindRef:f}=i(),h=a(),{onSuccess:v,onFailure:y,callAuthOnSuccessOnClose:x}=j.createWallet,A=()=>{let e=s(t)??c(t);t&&e?(d(),v({user:t,account:e})):y(Error("Failed to create wallet")),l({shouldCallAuthOnSuccess:x})};o((()=>{let e=setTimeout(A,n);return()=>clearTimeout(e)}),[]),f.current=A;let S=p&&!((t?.linkedAccounts?.length??0)>1);/*#__PURE__*/return e(u,{title:S?"Welcome"+(h?.name?` to ${h?.name}`:""):"All set!",description:S?"You've successfully created an account.":"Your account is secured.",onClose:A})}};export{p as EmbeddedWalletCreatedScreen,u as EmbeddedWalletCreatedScreenView,p as default};
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{XCircle as t}from"lucide-react";import{useState as r,useEffect as o}from"react";import{generateWalletIdempotencyKey as a}from"@privy-io/js-sdk-core";import{u as i}from"./context-DLtU3JQy.mjs";import{F as s,s as l,k as n,v as m,G as c,R as d}from"./index-YDEix4mU.mjs";import{u as p,m as u}from"./internal-context-Z-fyxadS.mjs";import{a as h,u as y}from"./privy-context-DrMxzgOR.mjs";import{u as w}from"./PrivyPluginContext-2QN2dVUw.mjs";import{S as v}from"./ScreenLayout-D1p_ntex.mjs";import"tinycolor2";import"uuid";import"jose";import"eventemitter3";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"styled-components";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"ofetch";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"@privy-io/are-addresses-equal";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"./ModalHeader-BnVmXtvG.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const C=({errorMessage:r,onClose:o})=>/*#__PURE__*/e(v,r?{title:"Something went wrong",subtitle:r,icon:t,iconVariant:"error",primaryCta:{label:"Close",onClick:o},watermark:!0}:{title:"Creating your wallet",subtitle:"Please wait...",iconVariant:"loading",watermark:!1}),j={component:()=>{let{setModalData:t,navigate:v,data:j,onUserCloseViaDialogOrKeybindRef:f}=h(),g=i(),[b,x]=r(""),{embeddedWallets:S}=i(),{authenticated:W,user:O}=y(),{closePrivyModal:A,walletProxy:k,client:I}=p(),{onSuccess:P,onFailure:M,callAuthOnSuccessOnClose:R,shouldCreateEth:U,shouldCreateSol:E}=j.createWallet,L=w(),F=O?L(s)?.shouldCreateWallet({user:O}):void 0,K=!!O&&l(O,g.embeddedWallets.ethereum.createOnLogin,F),T=!!O&&n(O,g.embeddedWallets.solana.createOnLogin,F),V="legacy-embedded-wallets-only"===g.embeddedWallets.mode&&!0===g?.embeddedWallets.requireUserOwnedRecoveryOnCreate,[q,D]=r(null),{create:G}=m(),z=U??K,H=E??T,Q=new d((async()=>{let e=await I.getAccessToken();if(O&&e&&k)try{let e,t=await a(O.id,"ethereum"),r=await a(O.id,"solana");if(z&&H)e=await G({chainType:"ethereum",walletIndex:0,latestUser:O,idempotencyKey:t}),e=await G({chainType:"solana",walletIndex:0,latestUser:e.user,idempotencyKey:r});else if(H)e=await G({chainType:"solana",walletIndex:0,latestUser:O,idempotencyKey:r});else{if(!z)return void A({shouldCallAuthOnSuccess:R});e=await G({chainType:"ethereum",walletIndex:0,latestUser:O,idempotencyKey:t})}D(e),v("EmbeddedWalletCreatedScreen")}catch(e){x(e.message)}}));return o((()=>W&&O?V?(t({...j,createWallet:{...j.createWallet,shouldCreateEth:z,shouldCreateSol:H},recoverySelection:{...j?.recoverySelection,isInAccountCreateFlow:!0,shouldCreateEth:z,shouldCreateSol:H}}),v(c({walletAction:"create",showAutomaticRecovery:!1,availableRecoveryMethods:S.userOwnedRecoveryOptions,legacySetWalletPasswordFlow:!1,isResettingPassword:!1}))):void Q.execute():(v("LandingScreen"),void M(Error("User must be authenticated before creating a Privy wallet")))),[V,W]),f.current=()=>null/*#__PURE__*/,e(C,{errorMessage:b||void 0,onClose:()=>{q?(P(q),A({shouldCallAuthOnSuccess:R})):(M(new u("User wallet creation failed")),A({shouldCallAuthOnSuccess:!1}))}})}};export{j as EmbeddedWalletOnAccountCreateScreen,C as EmbeddedWalletOnAccountCreateView,j as default};
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useState as o,useEffect as r}from"react";import{u as t,a as s,g as a}from"./privy-context-DrMxzgOR.mjs";import{u as i}from"./context-DLtU3JQy.mjs";import{u as n,o as d,m as c}from"./internal-context-Z-fyxadS.mjs";import{g as l}from"./useWallets-BzNCTucF.mjs";import{S as m,g as p}from"./SetWalletPasswordForm-CbtQ4DZ1.mjs";import"@privy-io/are-addresses-equal";import"@privy-io/js-sdk-core";import"tinycolor2";import"ofetch";import"viem";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"./Layouts-BlFm53ED.mjs";import"styled-components";import"./ModalHeader-BnVmXtvG.mjs";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"eventemitter3";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./shared-DhWmkz5T.mjs";import"@heroicons/react/24/outline/ArrowPathIcon";import"@heroicons/react/24/outline/EyeIcon";import"@heroicons/react/24/outline/EyeSlashIcon";import"./Checkbox-BhNoOKjX.mjs";import"@heroicons/react/24/outline/KeyIcon";import"@heroicons/react/24/solid/CheckCircleIcon";import"fast-password-entropy";import"secure-password-utilities";import"secure-password-utilities/wordlists";import"@heroicons/react/24/outline/ArrowDownTrayIcon";import"@heroicons/react/24/outline/ClipboardDocumentCheckIcon";import"@heroicons/react/24/outline/DocumentDuplicateIcon";import"@heroicons/react/24/solid/XCircleIcon";import"./ScreenHeader-CHmc4-Lu.mjs";const u={component:()=>{let[u,y]=o(null),[w,h]=o(!1),[v,g]=o(null),[f,_]=o(""),{authenticated:A,user:I}=t(),{client:M,walletProxy:j,refreshSessionAndUser:R,closePrivyModal:b,createAnalyticsEvent:x}=n(),{navigate:C,data:P,onUserCloseViaDialogOrKeybindRef:S}=s(),E=i(),{onSuccess:k,onFailure:N}=P.setWalletPassword,D=a(I),O="user-passcode"===u?.recoveryMethod,L="user-passcode"===D?.recoveryMethod;r((()=>{A||(C("LandingScreen"),N(new d("User must be authenticated before setting a password on a Privy wallet")))}),[A]);let T=()=>v?(N(v),void b({shouldCallAuthOnSuccess:!1})):O?(k(u),void b({shouldCallAuthOnSuccess:!1})):(N(new c("Exited before password was added to wallet")),void b({shouldCallAuthOnSuccess:!1}));S.current=T;/*#__PURE__*/return e(m,{appName:E?.name||"privy",config:{initiatedBy:"user",onCancel:T},error:v?"An error has occurred, please try again.":void 0,buttonLoading:w,buttonHideAnimations:!1,password:f,isResettingPassword:L,onPasswordGenerate:()=>_(p()),onPasswordChange:_,onSubmit:async()=>{O?(k(u),b({shouldCallAuthOnSuccess:!1})):(h(!0),g(null),await(async()=>{let e=await M.getAccessToken();if(e&&I&&D?.address&&f&&j)try{x({eventName:"embedded_wallet_set_recovery_started",payload:{walletAddress:D.address,existingRecoveryMethod:D.recoveryMethod,targetRecoveryMethod:"user-passcode",isResettingPassword:L}});let{entropyId:o,entropyIdVerifier:r}=l(I);if(!(await j.setRecovery({accessToken:e,entropyId:o,entropyIdVerifier:r,recoveryPassword:f,recoveryMethod:"user-passcode"})).entropyId)return g(new c("Error setting password on privy wallet")),void x({eventName:"embedded_wallet_set_recovery_failed",payload:{walletAddress:D.address,existingRecoveryMethod:D.recoveryMethod,targetRecoveryMethod:"user-passcode",isResettingPassword:L,reason:"error setting password"}});let t=await R(),s=a(t);if(!s)return g(new c("Error setting password on privy wallet")),void x({eventName:"embedded_wallet_set_recovery_failed",payload:{walletAddress:D.address,existingRecoveryMethod:D.recoveryMethod,targetRecoveryMethod:"user-passcode",isResettingPassword:L,reason:"wallet disconnected"}});y(s),x({eventName:"embedded_wallet_set_recovery_completed",payload:{walletAddress:D.address,existingRecoveryMethod:D.recoveryMethod,targetRecoveryMethod:"user-passcode",isResettingPassword:L}})}catch(e){console.warn(e),g(e instanceof Error?e:Error("Error setting password on privy wallet")),x({eventName:"embedded_wallet_set_password_failed",payload:{walletAddress:D.address,reason:e}})}})(),h(!1))},onClose:T})}};export{u as EmbeddedWalletPasswordUpdateScreen,u as default};
@@ -1 +0,0 @@
1
- import{jsx as e,jsxs as o,Fragment as t}from"react/jsx-runtime";import{Lock as r}from"lucide-react";import{u as i,m as s}from"./internal-context-Z-fyxadS.mjs";import{a}from"./privy-context-DrMxzgOR.mjs";import{S as c}from"./ScreenLayout-D1p_ntex.mjs";import"ofetch";import"react";import"@privy-io/are-addresses-equal";import"./context-DLtU3JQy.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"./ModalHeader-BnVmXtvG.mjs";import"styled-components";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"eventemitter3";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const m=({onClose:i,onProceed:s})=>/*#__PURE__*/e(c,{title:"Secure Your Account",subtitle:/*#__PURE__*/o(t,{children:["Please set a password to secure your account.",/*#__PURE__*/e("br",{}),"Losing access to this password and this device will make your account inaccessible."]}),icon:r,primaryCta:{label:"Add password",onClick:s},onClose:i,watermark:!0}),n={component:()=>{let{closePrivyModal:o}=i(),{data:t,navigate:r,onUserCloseViaDialogOrKeybindRef:c}=a(),{onFailure:n}=t.setWalletPassword,l=()=>{n(new s("Exited before password was added to wallet")),o({shouldCallAuthOnSuccess:!1})};return c.current=l,/*#__PURE__*/e(m,{onClose:l,onProceed:()=>{r("EmbeddedWalletPasswordUpdateScreen")}})}};export{n as EmbeddedWalletPasswordUpdateSplashScreen,m as EmbeddedWalletPasswordUpdateSplashView,n as default};
@@ -1,4 +0,0 @@
1
- import{jsx as t,jsxs as e,Fragment as r}from"react/jsx-runtime";import{AlertTriangle as i,Phone as a,Lock as o}from"lucide-react";import{styled as n}from"styled-components";import{u as s}from"./context-DLtU3JQy.mjs";import{a as c,P as l}from"./index-YDEix4mU.mjs";import{c as m,b as p,a as d,e as u}from"./internal-context-Z-fyxadS.mjs";import{a as T}from"./privy-context-DrMxzgOR.mjs";import{R as g}from"./reservoir-0wfhnc0j.mjs";import{S as y}from"./ScreenLayout-D1p_ntex.mjs";import"react";import"@privy-io/js-sdk-core";import"tinycolor2";import"uuid";import"jose";import"eventemitter3";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./PrivyPluginContext-2QN2dVUw.mjs";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"ofetch";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"@privy-io/are-addresses-equal";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"./ModalHeader-BnVmXtvG.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const h=({error:n,allowlistConfig:s,onRetry:c,onCaptchaReset:T,onBack:h})=>{let f=((n,s)=>{if(n instanceof g)return{title:"Transaction failed",detail:/*#__PURE__*/e(r,{children:[/*#__PURE__*/t("span",{children:n.message}),/*#__PURE__*/e("span",{children:[" ","Check the"," ",/*#__PURE__*/t(w,{href:n.relayLink,target:"_blank",children:"refund status"}),"."]})]}),ctaText:"Try again",icon:i};if(n instanceof d)switch(n.privyErrorCode){case p.CLIENT_REQUEST_TIMEOUT:return{title:"Timed out",detail:n.message,ctaText:"Try again",icon:i};case p.INSUFFICIENT_BALANCE:return{title:"Insufficient balance",detail:n.message,ctaText:"Try again",icon:i};case p.TRANSACTION_FAILURE:return{title:"Transaction failure",detail:n.message,ctaText:"Try again",icon:i};default:return{title:"Something went wrong",detail:"Try again later",ctaText:"Try again",icon:i}}else{if(n instanceof l&&"twilio_verification_failed"===n.type)return{title:"Something went wrong",detail:n.message,ctaText:"Try again",icon:a};if(!(n instanceof m))return n instanceof u&&n.status&&[400,422].includes(n.status)?{title:"Something went wrong",detail:n.message,ctaText:"Try again",icon:i}:{title:"Something went wrong",detail:"Try again later",ctaText:"Try again",icon:i};switch(n.privyErrorCode){case p.INVALID_CAPTCHA:return{title:"Something went wrong",detail:"Please try again.",ctaText:"Try again",icon:i};case p.DISALLOWED_LOGIN_METHOD:return{title:"Not allowed",detail:n.message,ctaText:"Try another method",icon:i};case p.ALLOWLIST_REJECTED:return{title:s.errorTitle||"You don't have access to this app",detail:s.errorDetail||"Have you been invited?",ctaText:s.errorCtaText||"Try another account",icon:o};case p.CAPTCHA_FAILURE:return{title:"Something went wrong",detail:"You did not pass CAPTCHA. Please try again.",ctaText:"Try again",icon:null};case p.CAPTCHA_TIMEOUT:return{title:"Something went wrong",detail:"Something went wrong! Please try again later.",ctaText:"Try again",icon:null};case p.LINKED_TO_ANOTHER_USER:return{title:"Authentication failed",detail:"This account has already been linked to another user.",ctaText:"Try again",icon:i};case p.NOT_SUPPORTED:return{title:"This region is not supported",detail:"SMS authentication from this region is not available",ctaText:"Try another method",icon:i};case p.TOO_MANY_REQUESTS:return{title:"Request failed",detail:"Too many attempts.",ctaText:"Try again later",icon:i};default:return{title:"Something went wrong",detail:"Try again later",ctaText:"Try again",icon:i}}}})(n,s);/*#__PURE__*/return t(y,{title:f.title,subtitle:f.detail,icon:f.icon,onBack:h,iconVariant:"error",primaryCta:{label:f.ctaText,onClick:()=>{n instanceof m&&(n.privyErrorCode===p.INVALID_CAPTCHA&&T?.(),n.privyErrorCode===p.ALLOWLIST_REJECTED&&s.errorCtaLink)?window.location.href=s.errorCtaLink:c?.()},variant:"error"},watermark:!0})},f={component:()=>{let{navigate:e,data:r,lastScreen:i,currentScreen:a}=T(),o=s(),{reset:n}=c(),l=r?.errorModalData?.previousScreen||(i===a?void 0:i);/*#__PURE__*/return t(h,{error:r?.errorModalData?.error||Error(),allowlistConfig:o.allowlistConfig,onRetry:()=>{e(l||"LandingScreen",!1)},onCaptchaReset:n})}};let w=n.a`
2
- color: var(--privy-color-accent) !important;
3
- font-weight: 600;
4
- `;export{f as ErrorScreen,h as ErrorScreenView,f as default};
@@ -1,28 +0,0 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{useState as r,useRef as o,useEffect as a}from"react";import{isMobile as i,isIOS as s}from"react-device-detect";import{styled as n}from"styled-components";import{C as l}from"./CopyToClipboard-DSTf_eKU.mjs";import{L as c}from"./useActiveWallet-CvP7iYvj.mjs";import{O as m}from"./OpenLink-DZHy38vr.mjs";import{Q as p}from"./QrCode-B84kEIjT.mjs";import{u as d,q as u}from"./context-DLtU3JQy.mjs";import{u as g}from"./internal-context-Z-fyxadS.mjs";import{a as h}from"./privy-context-DrMxzgOR.mjs";import{S as f}from"./ScreenLayout-D1p_ntex.mjs";import{F as v}from"./farcaster-DPlSjvF5.mjs";import"zustand";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"@privy-io/js-sdk-core";import"eventemitter3";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"qrcode";import"tinycolor2";import"ofetch";import"@privy-io/are-addresses-equal";import"./ModalHeader-BnVmXtvG.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";let y="#8a63d2";const k=({appName:r,loading:o,success:a,errorMessage:n,connectUri:d,onBack:u,onClose:g,onOpenFarcaster:h})=>/*#__PURE__*/e(f,i||o?s?{title:n?n.message:"Add a signer to Farcaster",subtitle:n?n.detail:`This will allow ${r} to add casts, likes, follows, and more on your behalf.`,icon:v,iconVariant:"loading",iconLoadingStatus:{success:a,fail:!!n},primaryCta:d&&h?{label:"Open Farcaster app",onClick:h}:void 0,onBack:u,onClose:g,watermark:!0}:{title:n?n.message:"Requesting signer from Farcaster",subtitle:n?n.detail:"This should only take a moment",icon:v,iconVariant:"loading",iconLoadingStatus:{success:a,fail:!!n},onBack:u,onClose:g,watermark:!0,children:d&&i&&/*#__PURE__*/e(x,{children:/*#__PURE__*/e(m,{text:"Take me to Farcaster",url:d,color:y})})}:{title:"Add a signer to Farcaster",subtitle:`This will allow ${r} to add casts, likes, follows, and more on your behalf.`,onBack:u,onClose:g,watermark:!0,children:/*#__PURE__*/t(w,{children:[/*#__PURE__*/e(j,{children:d?/*#__PURE__*/e(p,{url:d,size:275,squareLogoElement:v}):/*#__PURE__*/e(S,{children:/*#__PURE__*/e(c,{})})}),/*#__PURE__*/t(C,{children:[/*#__PURE__*/e(b,{children:"Or copy this link and paste it into a phone browser to open the Farcaster app."}),d&&/*#__PURE__*/e(l,{text:d,itemName:"link",color:y})]})]})});let x=n.div`
2
- margin-top: 24px;
3
- `,w=n.div`
4
- display: flex;
5
- flex-direction: column;
6
- align-items: center;
7
- gap: 24px;
8
- `,j=n.div`
9
- padding: 24px;
10
- position: relative;
11
- display: flex;
12
- align-items: center;
13
- justify-content: center;
14
- min-height: 275px;
15
- `,C=n.div`
16
- display: flex;
17
- flex-direction: column;
18
- align-items: center;
19
- gap: 16px;
20
- `,b=n.div`
21
- font-size: 0.875rem;
22
- text-align: center;
23
- color: var(--privy-color-foreground-2);
24
- `,S=n.div`
25
- position: relative;
26
- width: 82px;
27
- height: 82px;
28
- `;const F={component:()=>{let{lastScreen:t,navigateBack:i,data:s}=h(),n=d(),{requestFarcasterSignerStatus:l,closePrivyModal:c}=g(),[m,p]=r(void 0),[f,v]=r(!1),[y,x]=r(!1),w=o([]),j=s?.farcasterSigner;a((()=>{let e=Date.now(),t=setInterval((async()=>{if(!j?.public_key)return clearInterval(t),void p({retryable:!0,message:"Connect failed",detail:"Something went wrong. Please try again."});"approved"===j.status&&(clearInterval(t),v(!1),x(!0),w.current.push(setTimeout((()=>c({shouldCallAuthOnSuccess:!1,isSuccess:!0})),u)));let r=await l(j?.public_key),o=Date.now()-e;"approved"===r.status?(clearInterval(t),v(!1),x(!0),w.current.push(setTimeout((()=>c({shouldCallAuthOnSuccess:!1,isSuccess:!0})),u))):o>3e5?(clearInterval(t),p({retryable:!0,message:"Connect failed",detail:"The request timed out. Try again."})):"revoked"===r.status&&(clearInterval(t),p({retryable:!0,message:"Request rejected",detail:"The request was rejected. Please try again."}))}),2e3);return()=>{clearInterval(t),w.current.forEach((e=>clearTimeout(e)))}}),[]);let C="pending_approval"===j?.status?j.signer_approval_url:void 0;/*#__PURE__*/return e(k,{appName:n.name,loading:f,success:y,errorMessage:m,connectUri:C,onBack:t?i:void 0,onClose:c,onOpenFarcaster:()=>{C&&(window.location.href=C)}})}};export{F as FarcasterSignerStatusScreen,k as FarcasterSignerStatusView,F as default};
@@ -1,86 +0,0 @@
1
- import{jsx as e,jsxs as t,Fragment as o}from"react/jsx-runtime";import{a as r}from"./privy-context-DrMxzgOR.mjs";import{L as s,M as i,N as n,O as a,Q as l}from"./index-YDEix4mU.mjs";import{trigger as c}from"@privy-io/popup";import{p as d,a as u,A as m,C as p,S as h}from"./SelectSourceAsset-C10HQdge.mjs";import{S as g}from"./ScreenLayout-D1p_ntex.mjs";import{XCircle as y,Check as C,AlertTriangle as v,ChevronRight as f,CreditCard as w,Wallet as A,Building as b,Smartphone as P,Landmark as _}from"lucide-react";import{styled as E}from"styled-components";import{G as S,A as x}from"./GooglePay-DA-Ff7zK.mjs";import"@privy-io/are-addresses-equal";import"react";import"./context-DLtU3JQy.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"./internal-context-Z-fyxadS.mjs";import"ofetch";import"uuid";import"jose";import"eventemitter3";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./PrivyPluginContext-2QN2dVUw.mjs";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"./ModalHeader-BnVmXtvG.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const[k,L]=((e,t=750)=>{let o;return[(...r)=>{o&&clearTimeout(o),o=setTimeout((()=>{e(...r)}),t)},()=>{o&&clearTimeout(o)}]})((async(e,t)=>{s({isLoading:!0});try{let{getQuotes:o}=i(),r=(await o({source:{asset:t.source.selectedAsset.toUpperCase(),amount:e},destination:{asset:t.destination.asset.toUpperCase(),chain:t.destination.chain,address:t.destination.address},environment:t.environment})).quotes??[];s({localQuotes:r,localSelectedQuote:r[0],isLoading:!1,quotesWarning:r.length>0?null:10>parseFloat(e)?"amount_too_low":"currency_not_available"})}catch{s({localQuotes:[],localSelectedQuote:null,quotesWarning:"currency_not_available"})}})),j=e=>{s({amount:e});let{opts:t}=i();k(e,t)},R=async()=>{let{error:e,state:t,onFailure:o,onSuccess:r}=i();L(),e?o(e):"provider-success"===t.status?await r({status:"confirmed"}):"provider-confirming"===t.status?await r({status:"submitted"}):o(Error("User exited flow"))},T=async()=>{let e,t=n();if(!t)return;let o=c();if(!o)return void s({state:{status:"provider-error"},error:Error("Unable to open payment window")});s({isLoading:!0});let{opts:r,amount:a,getProviderUrl:l,getStatus:m,controller:p}=i();p.current=new AbortController;try{let s=await l({source:{asset:r.source.selectedAsset.toUpperCase(),amount:a||"0"},destination:{asset:r.destination.asset.toUpperCase(),chain:r.destination.chain,address:r.destination.address},provider:t.provider,sub_provider:t.sub_provider??void 0,payment_method:t.payment_method,redirect_url:window.location.origin});o.location.href=s.url,e=s.session_id}catch{return o.close(),void s({state:{status:"provider-error"},isLoading:!1,error:Error("Unable to start payment session")})}let h=await d(o,p.current.signal);if("aborted"===h.status||(s({isLoading:!1}),"closed"===h.status))return;h.status,s({state:{status:"provider-confirming"}});let g=await u({operation:()=>m({session_id:e,provider:t.provider}),until:e=>"completed"===e.status||"failed"===e.status||"cancelled"===e.status,delay:0,interval:2e3,attempts:60,signal:p.current.signal});if("aborted"!==g.status){if("max_attempts"===g.status)return void s({state:{status:"provider-error"},error:Error("Timed out waiting for response")});"completed"===g.result?.status?s({state:{status:"provider-success"}}):s({state:{status:"provider-error"},error:Error(`Transaction ${g.result?.status??"failed"}`)})}},z=()=>{let e=a();e&&e.length>0&&s({state:{status:"select-payment-method",quotes:e}})},I=()=>{s({state:{status:"select-source-asset"}})},q=()=>{s({error:null,state:{status:"select-amount"}})},Q=e=>{s({localSelectedQuote:e,state:{status:"select-amount"}})},D=e=>{let{opts:t,amount:o}=i(),r={...t,source:{...t.source,selectedAsset:e}};s({opts:r,state:{status:"select-amount"}}),k(o,r)},G=({onClose:t})=>/*#__PURE__*/e(g,{showClose:!0,onClose:t,iconVariant:"loading",title:"Processing transaction",subtitle:"Your purchase is in progress. You can leave this screen — we’ll notify you when it’s complete.",primaryCta:{label:"Done",onClick:t},watermark:!0}),M=({onClose:t,onRetry:o})=>/*#__PURE__*/e(g,{showClose:!0,onClose:t,icon:y,iconVariant:"error",title:"Something went wrong",subtitle:"We couldn't complete your transaction. Please try again.",primaryCta:{label:"Try again",onClick:o},secondaryCta:{label:"Close",onClick:t},watermark:!0}),U=({onClose:t})=>/*#__PURE__*/e(g,{showClose:!0,onClose:t,icon:C,iconVariant:"success",title:"Transaction confirmed",subtitle:"Your purchase is processing. Funds should arrive in your wallet within a few minutes.",primaryCta:{label:"Done",onClick:t},watermark:!0});let W={CREDIT_DEBIT_CARD:"card",APPLE_PAY:"Apple Pay",GOOGLE_PAY:"Google Pay",BANK_TRANSFER:"bank deposit",ACH:"bank deposit",SEPA:"bank deposit",PIX:"PIX"},Y={CREDIT_DEBIT_CARD:/*#__PURE__*/e(w,{size:14}),APPLE_PAY:/*#__PURE__*/e(P,{size:14}),GOOGLE_PAY:/*#__PURE__*/e(P,{size:14}),BANK_TRANSFER:/*#__PURE__*/e(b,{size:14}),ACH:/*#__PURE__*/e(b,{size:14}),SEPA:/*#__PURE__*/e(b,{size:14}),PIX:/*#__PURE__*/e(A,{size:14})};const B=({opts:r,onClose:s,onEditSourceAsset:i,onEditPaymentMethod:n,onContinue:a,onAmountChange:l,amount:c,selectedQuote:d,quotesWarning:u,quotesCount:h,isLoading:y})=>{/*#__PURE__*/return t(g,{showClose:!0,onClose:s,headerTitle:`Buy ${r.destination.asset.toLocaleUpperCase()}`,primaryCta:{label:"Continue",onClick:a,loading:y,disabled:!d},helpText:u?/*#__PURE__*/t(O,{children:[/*#__PURE__*/e(v,{size:16,strokeWidth:2}),/*#__PURE__*/e(F,{children:/*#__PURE__*/t(o,"amount_too_low"===u?{children:[/*#__PURE__*/e(N,{children:"Amount too low"}),/*#__PURE__*/e(X,{children:"Please choose a higher amount to continue."})]}:{children:[/*#__PURE__*/e(N,{children:"Currency not available"}),/*#__PURE__*/e(X,{children:"Please choose another currency to continue."})]})})]}):d&&h>1?/*#__PURE__*/t(H,{onClick:n,children:[(A=d.payment_method,Y[A]??/*#__PURE__*/e(w,{size:14})),/*#__PURE__*/t("span",{children:["Pay with ",(C=d.payment_method,W[C]??C.replace(/_/g," ").toLowerCase().replace(/^\w/,(e=>e.toUpperCase())))]}),/*#__PURE__*/e(f,{size:14})]}):null,watermark:!0,children:[/*#__PURE__*/e(m,{currency:r.source.selectedAsset,value:c,onChange:l,inputMode:"decimal",autoFocus:!0}),/*#__PURE__*/e(p,{selectedAsset:r.source.selectedAsset,onEditSourceAsset:i})]});var C,A};let O=E.div`
2
- display: flex;
3
- align-items: flex-start;
4
- gap: 0.5rem;
5
- padding: 0.75rem;
6
- border-radius: 0.5rem;
7
- background-color: var(--privy-color-warn-bg, #fffbbb);
8
- border: 1px solid var(--privy-color-border-warning, #facd63);
9
- overflow: clip;
10
- width: 100%;
11
-
12
- svg {
13
- flex-shrink: 0;
14
- color: var(--privy-color-icon-warning, #facd63);
15
- }
16
- `,F=E.div`
17
- display: flex;
18
- flex-direction: column;
19
- gap: 0.125rem;
20
- flex: 1;
21
- min-width: 0;
22
- font-size: 0.75rem;
23
- line-height: 1.125rem;
24
- color: var(--privy-color-foreground);
25
- font-feature-settings:
26
- 'calt' 0,
27
- 'kern' 0;
28
- text-align: left;
29
- `,N=E.span`
30
- font-weight: 600;
31
- `,X=E.span`
32
- font-weight: 400;
33
- `,H=E.button`
34
- display: inline-flex;
35
- align-items: center;
36
- gap: 0.25rem;
37
- background: none;
38
- border: none;
39
- cursor: pointer;
40
-
41
- && {
42
- padding: 0;
43
- color: var(--privy-color-accent);
44
- font-size: 0.875rem;
45
- font-style: normal;
46
- font-weight: 500;
47
- line-height: 1.375rem;
48
- }
49
- `,K={CREDIT_DEBIT_CARD:"Credit / debit card",APPLE_PAY:"Apple Pay",GOOGLE_PAY:"Google Pay",BANK_TRANSFER:"Bank transfer",ACH:"ACH",SEPA:"SEPA",PIX:"PIX"},$={CREDIT_DEBIT_CARD:/*#__PURE__*/e(w,{size:20}),APPLE_PAY:/*#__PURE__*/e(x,{width:20,height:20}),GOOGLE_PAY:/*#__PURE__*/e(S,{width:20,height:20}),BANK_TRANSFER:/*#__PURE__*/e(_,{size:20}),ACH:/*#__PURE__*/e(_,{size:20}),SEPA:/*#__PURE__*/e(_,{size:20}),PIX:/*#__PURE__*/e(_,{size:20})};const V=({onClose:o,onSelectPaymentMethod:r,quotes:s,isLoading:i})=>/*#__PURE__*/e(g,{showClose:!0,onClose:o,title:"Select payment method",subtitle:"Choose how you'd like to pay",watermark:!0,children:/*#__PURE__*/e(J,{children:s.map(((o,s)=>{/*#__PURE__*/return e(Z,{onClick:()=>r(o),disabled:i,children:/*#__PURE__*/t(ee,{children:[/*#__PURE__*/e(te,{children:(a=o.payment_method,$[a]??/*#__PURE__*/e(w,{size:20}))}),/*#__PURE__*/e(oe,{children:/*#__PURE__*/e(re,{children:(n=o.payment_method,K[n]??n.replace(/_/g," ").toLowerCase().replace(/^\w/,(e=>e.toUpperCase())))})})]})},`${o.provider}-${o.payment_method}-${s}`);var n,a}))})});let J=E.div`
50
- display: flex;
51
- flex-direction: column;
52
- gap: 0.75rem;
53
- width: 100%;
54
- `,Z=E.button`
55
- border-color: var(--privy-color-border-default);
56
- border-width: 1px;
57
- border-radius: var(--privy-border-radius-md);
58
- border-style: solid;
59
- display: flex;
60
-
61
- && {
62
- padding: 1rem 1rem;
63
- }
64
- `,ee=E.div`
65
- display: flex;
66
- align-items: center;
67
- gap: 1rem;
68
- width: 100%;
69
- `,te=E.div`
70
- color: var(--privy-color-foreground-3);
71
- display: flex;
72
- align-items: center;
73
- justify-content: center;
74
- flex-shrink: 0;
75
- `,oe=E.div`
76
- display: flex;
77
- flex-direction: column;
78
- align-items: flex-start;
79
- gap: 0.125rem;
80
- flex: 1;
81
- `,re=E.span`
82
- color: var(--privy-color-foreground);
83
- font-size: 0.875rem;
84
- font-weight: 400;
85
- line-height: 1.25rem;
86
- `;const se=({onClose:t,onContinue:o,onAmountChange:r,onSelectSource:s,onEditSourceAsset:i,onEditPaymentMethod:n,onSelectPaymentMethod:a,onRetry:l,opts:c,state:d,amount:u,selectedQuote:m,quotesWarning:p,quotesCount:g,isLoading:y})=>"select-amount"===d.status?/*#__PURE__*/e(B,{onClose:t,onContinue:o,onAmountChange:r,onEditSourceAsset:i,onEditPaymentMethod:n,opts:c,amount:u,selectedQuote:m,quotesWarning:p,quotesCount:g,isLoading:y}):"select-source-asset"===d.status?/*#__PURE__*/e(h,{onSelectSource:s,opts:c,isLoading:y}):"select-payment-method"===d.status?/*#__PURE__*/e(V,{onClose:t,onSelectPaymentMethod:a,quotes:d.quotes,isLoading:y}):"provider-confirming"===d.status?/*#__PURE__*/e(G,{onClose:t}):"provider-error"===d.status?/*#__PURE__*/e(M,{onClose:t,onRetry:l}):"provider-success"===d.status?/*#__PURE__*/e(U,{onClose:t}):null,ie={component:()=>{let{onUserCloseViaDialogOrKeybindRef:t}=r(),o=l();if(!o)throw Error("Unexpected missing data");let{opts:s,state:i,isLoading:n,amount:a,quotesWarning:c,localQuotes:d,localSelectedQuote:u,initialQuotes:m,initialSelectedQuote:p}=o;return t.current=R,/*#__PURE__*/e(se,{onClose:R,opts:s,state:i,isLoading:n,amount:a,selectedQuote:u??p,quotesWarning:c,quotesCount:(d??m)?.length??0,onAmountChange:j,onContinue:T,onSelectSource:D,onEditSourceAsset:I,onEditPaymentMethod:z,onSelectPaymentMethod:Q,onRetry:q})}};export{ie as FiatOnrampScreen,ie as default};
@@ -1 +0,0 @@
1
- import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import n from"@heroicons/react/24/outline/CheckCircleIcon";import{useState as o,useEffect as r}from"react";import{formatWalletAddress as s}from"@privy-io/js-sdk-core";import{B as i,P as l}from"./ModalHeader-BnVmXtvG.mjs";import{b as m,c,R as u,e as d}from"./Layouts-BlFm53ED.mjs";import{C as p}from"./ScreenHeader-CHmc4-Lu.mjs";import{t as f}from"./FundWalletMethodHeader-Cb-ACySl.mjs";import{I as g}from"./InjectedWalletIcon-DLcYOGDj.mjs";import{N as h}from"./index-Dq_xe9dz.mjs";import{L as I,V as v}from"./Value-tcJV9e0L.mjs";import{a as w,R as S}from"./Row-C9vrS4Zi.mjs";import{u as j,t as y}from"./context-DLtU3JQy.mjs";import{u as C,a as L,b as x}from"./internal-context-Z-fyxadS.mjs";import{a as k}from"./privy-context-DrMxzgOR.mjs";import{u as F,g as U}from"./useWallets-z8NFrORr.mjs";import{u as T}from"./useGetTokenPrice-LPJMl6JV.mjs";import{O as A}from"./analytics-mkkvFRju.mjs";import{getTransferSolInstruction as W}from"@solana-program/system";import{pipe as b,createTransactionMessage as P,setTransactionMessageFeePayerSigner as D,setTransactionMessageLifetimeUsingBlockhash as N,appendTransactionMessageInstruction as O,compileTransaction as E,getTransactionEncoder as M}from"@solana/kit";import{findAssociatedTokenPda as B,getCreateAssociatedTokenIdempotentInstruction as $,getTransferInstruction as R}from"@solana-program/token";import{T as H,L as G,g as V}from"./getFormattedUsdFromLamports-B6EqSEho.mjs";import{g as q}from"./getUsdcMintAddress-DFI1hv05.mjs";import{u as _,f as z,s as Q,w as X}from"./useSolanaRpcClient-71aYSqHX.mjs";import{g as Y}from"./getChainName-DjpPdUSc.mjs";import{H as J}from"./use-export-wallet-_wu5ex5t.mjs";import"styled-components";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"react-device-detect";import"./events-context-CI0iqAXA.mjs";import"viem";import"viem/utils";import"./useWallets-BzNCTucF.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"@heroicons/react/24/outline/WalletIcon";import"./LoadingSkeleton-U6-3yFwI.mjs";import"tinycolor2";import"ofetch";import"@privy-io/are-addresses-equal";import"./usePrivy-C_sY2Duk.mjs";import"eventemitter3";import"@scure/base";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"./useGetSolPrice-DwwjjGbd.mjs";function K({rows:a}){/*#__PURE__*/return e(w,{children:a.filter((e=>!!e)).map(((a,n)=>null!=a.value||a.isLoading?/*#__PURE__*/t(S,{children:[/*#__PURE__*/e(I,{children:a.label}),/*#__PURE__*/e(v,{$isLoading:a.isLoading,children:a.value})]},n):null))})}function Z(e){return BigInt(Math.floor(1e9*parseFloat(e)))}function ee(e){return+te.format(parseFloat(e.toString())/1e9)}let te=Intl.NumberFormat(void 0,{maximumFractionDigits:8});async function ae({tx:e,solanaClient:t,amount:a,asset:n,tokenPrice:o}){if(!e)return null;if("SOL"===n&&o){let n=Z(a),r=V(n,o),s=await z({solanaClient:t,tx:e});return{amountInUsd:r,feeInUsd:o?V(s,o):void 0,totalInUsd:V(n+s,o)}}if("USDC"===n&&o){let n="$"+a,r=await z({solanaClient:t,tx:e}),s=function(e,t){let a=parseFloat(e.toString())/G*t;return a<.01?0:a}(r,o);return{amountInUsd:n,feeInUsd:V(r,o),totalInUsd:"$"+(parseFloat(a)+s).toFixed(2)}}if("SOL"===n){let n=Z(a),o=await z({solanaClient:t,tx:e});return{amountInSol:a+" SOL",feeInSol:ee(o)+" SOL",totalInSol:ee(n+o)+" SOL"}}return{amountInUsdc:a+" USDC",feeInSol:ee(await z({solanaClient:t,tx:e}))+" SOL"}}const ne={component:function(){let I=j(),{closePrivyModal:v,createAnalyticsEvent:w}=C(),{data:S,setModalData:G,navigate:z}=k(),{wallets:ee}=F(),[te,ne]=o("preparing"),[oe,re]=o(),[se,ie]=o(),[le,me]=o();if(!S?.solanaFundingData)throw Error("Funding config is missing");if(!S.solanaFundingData.sourceWalletData)throw Error("Funding config is missing source wallet data");let{amount:ce,asset:ue,chain:de,sourceWalletData:pe,destinationAddress:fe,afterSuccessScreen:ge}=S.solanaFundingData,he=ee.find((e=>e.address===pe.address&&J(pe.walletClientType)===J(e.standardWallet.name))),Ie=_()(de),{tokenPrice:ve,isTokenPriceLoading:we}=T("solana");return r((()=>{if("preparing"!==te||we||!he)return;let e="SOL"===ue?Z(ce):function(e){return BigInt(Math.floor(1e6*parseFloat(e)))}(ce);ie({amount:("SOL"===ue&&ve?V(e,ve):ce)??ce}),("SOL"===ue?async function({solanaClient:e,source:t,destination:a,amountInLamports:n}){let{value:o}=await e.rpc.getLatestBlockhash().send(),r={address:t},s=b(P({version:0}),(e=>D(r,e)),(e=>N(o,e)),(e=>O(W({amount:n,source:r,destination:a}),e)),(e=>E(e)));return new Uint8Array(M().encode(s))}({solanaClient:Ie,source:he.address,destination:fe,amountInLamports:e}):async function({solanaClient:e,source:t,destination:a,amountInBaseUnits:n}){let o=q(e.chain),{value:r}=await e.rpc.getLatestBlockhash().send(),s={address:t},[i]=await B({mint:o,owner:t,tokenProgram:H}),[l]=await B({mint:o,owner:a,tokenProgram:H}),[m,c]=await Promise.all([e.rpc.getAccountInfo(i,{commitment:"confirmed",encoding:"jsonParsed"}).send().catch((()=>null)),e.rpc.getAccountInfo(l,{commitment:"confirmed",encoding:"jsonParsed"}).send().catch((()=>null))]);if(!m?.value)throw Error(`Source token account does not exist for address: ${t}`);let u=$({payer:s,ata:l,owner:a,mint:o}),d=b(P({version:0}),(e=>D(s,e)),(e=>N(r,e)),(e=>c?.value?e:O(u,e)),(e=>O(R({source:i,destination:l,authority:s,amount:n}),e)),(e=>E(e)));return new Uint8Array(M().encode(d))}({solanaClient:Ie,source:he.address,destination:fe,amountInBaseUnits:e})).then(re).catch((e=>{ne("error"),me(e)}))}),[te,ce,ue,de,he,fe,we,ve]),r((()=>{"preparing"===te&&oe&&ae({tx:oe,solanaClient:Ie,amount:ce,asset:ue,tokenPrice:ve}).then((e=>{ne("loaded"),ie({amount:e?.amountInUsd??e?.amountInUsdc??e?.amountInSol??ce,fee:e?.feeInUsd??e?.feeInSol,total:e?.totalInUsd??e?.totalInSol})})).catch((e=>{ne("error"),me(e)}))}),[oe,ce,ue,te,ve]),r((()=>{"error"===te&&le&&(G({errorModalData:{error:le,previousScreen:"FundSolWalletWithExternalSolanaWallet"},solanaFundingData:S.solanaFundingData}),z("ErrorScreen",!1))}),[te,z]),r((()=>{if("success"!==te)return;let e=setTimeout(ge?()=>z(ge):v,y);return()=>clearTimeout(e)}),[te]),/*#__PURE__*/t(a,"success"===te?{children:[/*#__PURE__*/e(f,{}),/*#__PURE__*/e(m,{}),/*#__PURE__*/t(c,{children:[/*#__PURE__*/e(n,{color:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/e(p,{title:"Success!",description:`You’ve successfully added ${ce} ${ue} to your ${I.name} wallet. It may take a minute before the funds are available to use.`})]}),/*#__PURE__*/e(u,{}),/*#__PURE__*/e(i,{})]}:"preparing"===te||"loaded"===te||"sending"===te?{children:[/*#__PURE__*/e(f,{}),/*#__PURE__*/e(d,{style:{marginTop:"16px"},children:/*#__PURE__*/e(g,{icon:he?.standardWallet.icon,name:he?.standardWallet.name})}),/*#__PURE__*/e(p,{style:{marginTop:"8px",marginBottom:"12px"},title:"sending"===te&&he?`Confirming with ${he.standardWallet.name}`:"Confirm transaction"}),/*#__PURE__*/e(K,{rows:[{label:"Source",value:s(pe.address)},{label:"Destination",value:s(fe)},{label:"Network",value:Y(de)},{label:"Amount",value:se?.amount,isLoading:"preparing"===te},{label:"Estimated fee",value:se?.fee,isLoading:"preparing"===te},{label:"Total",value:se?.total,isLoading:"preparing"===te}]}),/*#__PURE__*/e(l,{style:{marginTop:"1rem"},loading:"preparing"===te||"sending"===te,onClick:function(){"loaded"===te&&oe&&he&&(ne("sending"),async function({transaction:e,chain:t,sourceWallet:a,solanaClient:n}){let{hasFunds:o}=await Q({solanaClient:n,tx:e});if(!o)throw new L(`Wallet ${s(a.address)} does not have enough funds.`,void 0,x.INSUFFICIENT_BALANCE);let r=U((await a.signAndSendTransaction({transaction:e,chain:t}).catch((e=>{throw new L("Transaction was rejected by the user",e,x.TRANSACTION_FAILURE)}))).signature);return await X({rpcSubscriptions:n.rpcSubscriptions,signature:r,timeout:2e4}),r}({solanaClient:Ie,transaction:oe,chain:de,sourceWallet:he}).then((e=>{ne("success"),w({eventName:A,payload:{provider:"external",status:"success",txHash:e,address:he.address,value:ce,chainType:"solana",clusterName:de,token:ue,destinationAddress:fe,destinationValue:ce,destinationChainType:"solana",destinationClusterName:de,destinationToken:ue}})})).catch((e=>{ne("error"),me(e)})))},children:"Confirm"}),/*#__PURE__*/e(i,{})]}:{children:[/*#__PURE__*/e(f,{}),/*#__PURE__*/e(h,{}),/*#__PURE__*/e("div",{style:{marginTop:"1rem"}}),/*#__PURE__*/e(i,{})]})}};export{ne as FundSolWalletWithExternalSolanaWallet,ne as default};
@@ -1 +0,0 @@
1
- import{jsxs as t,Fragment as e,jsx as o}from"react/jsx-runtime";import{useRef as r}from"react";import{c as i,B as n}from"./ModalHeader-BnVmXtvG.mjs";import{F as s}from"./Layouts-BlFm53ED.mjs";import{t as a}from"./FundWalletMethodHeader-Cb-ACySl.mjs";import{N as m}from"./index-Dq_xe9dz.mjs";import{T as c}from"./Title-BnzYV3Is.mjs";import{a as l}from"./privy-context-DrMxzgOR.mjs";import{u as p}from"./useGetTokenPrice-LPJMl6JV.mjs";import{c as d}from"./ethers-Dnv1tMN3.mjs";import{F as u,a as h,h as j,c as f,d as v}from"./styles-DDaGxKdi.mjs";import"styled-components";import"./context-DLtU3JQy.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./internal-context-Z-fyxadS.mjs";import"ofetch";import"./useWallets-BzNCTucF.mjs";import"viem";import"eventemitter3";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"@privy-io/are-addresses-equal";import"./useGetSolPrice-DwwjjGbd.mjs";import"./LinkPasskeyScreen-DmtRo8xi.mjs";import"lucide-react";import"./TodoList-CgrU7uwu.mjs";import"./ScreenLayout-D1p_ntex.mjs";import"./Screen-Cycy3IzT.mjs";const y={component:()=>{let{data:y,setModalData:C}=l(),g=y?.funding,x="solana"===g.chainType,k=r(null),{tokenPrice:S}=p(x?"solana":g.chain.id),D=x?void 0:g,F=!(!D?.erc20Address||D?.erc20ContractInfo),T=x?g.isUSDC?"USDC":"SOL":g.erc20Address?g.erc20ContractInfo?.symbol:g.chain.nativeCurrency.symbol||"ETH",L=parseFloat(g.amount),A=!isNaN(L)&&L>0,I=S?d(g.amount,S):void 0;/*#__PURE__*/return t(e,{children:[/*#__PURE__*/o(a,{}),/*#__PURE__*/o(c,{children:"Confirm or edit amount"}),/*#__PURE__*/t(s,{style:{marginTop:"32px"},children:[/*#__PURE__*/o(u,{children:F?/*#__PURE__*/o(m,{size:"50px"}):/*#__PURE__*/t(e,{children:[/*#__PURE__*/t(h,{onClick:()=>k.current?.focus(),children:[/*#__PURE__*/o(j,{ref:k,value:g.amount,onChange:t=>{let e=t.target.value;/^[0-9.]*$/.test(e)&&e.split(".").length-1<=1&&C({...y,funding:{...g,amount:e},solanaFundingData:y?.solanaFundingData?{...y.solanaFundingData,amount:e}:void 0})}}),/*#__PURE__*/o(f,{children:T})]}),!D?.erc20Address&&!(x&&g.isUSDC)&&/*#__PURE__*/o(v,{children:I&&A?`${I} USD`:""})]})}),/*#__PURE__*/o(i,{style:{marginTop:"1rem"},disabled:!A,onClick:g.onContinueWithExternalWallet,children:"Continue"})]}),/*#__PURE__*/o(n,{})]})}};export{y as FundingAmountEditScreen,y as default};