@privy-io/react-auth 3.9.0 → 3.9.1

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 (251) hide show
  1. package/dist/cjs/{AccountNotFoundScreen-C0im9fAJ.js → AccountNotFoundScreen-BjG_YLcK.js} +1 -1
  2. package/dist/cjs/{Address-Doz93lgh.js → Address-5znFAhQw.js} +1 -1
  3. package/dist/cjs/{AffirmativeConsentScreen-OgvUs4oT.js → AffirmativeConsentScreen-BiwTOLaX.js} +1 -1
  4. package/dist/cjs/{AllowlistRejectionScreen-CBfQZVO7.js → AllowlistRejectionScreen-DOZr-QmF.js} +1 -1
  5. package/dist/cjs/{AuthenticateWithWalletScreen-B4aHQC44.js → AuthenticateWithWalletScreen-BO4ml_zL.js} +1 -1
  6. package/dist/cjs/{AwaitingEvmToSolBridgingScreen-Cz2E1cWa.js → AwaitingEvmToSolBridgingScreen-DCvvtPfy.js} +1 -1
  7. package/dist/cjs/{AwaitingExternalEthereumTransferScreen-Ca1z7D4v.js → AwaitingExternalEthereumTransferScreen-DXSQjzHX.js} +1 -1
  8. package/dist/cjs/{AwaitingPasswordlessCodeScreen-DDws79F8.js → AwaitingPasswordlessCodeScreen-COP_Jshz.js} +1 -1
  9. package/dist/cjs/{AwaitingSolToEvmBridgingScreen-DlTJafw4.js → AwaitingSolToEvmBridgingScreen-tGqHxf1K.js} +1 -1
  10. package/dist/cjs/{BridgeNetworkSelectionView-Cg3JjiFh.js → BridgeNetworkSelectionView-DgFjMLY3.js} +1 -1
  11. package/dist/cjs/{Button-DpuRzAgk.js → Button-Bm_Ft0Dw.js} +1 -1
  12. package/dist/cjs/{CaptchaScreen-DrvkYUK-.js → CaptchaScreen-BvyOQUvH.js} +1 -1
  13. package/dist/cjs/{CoinbaseOnrampStatusScreen-Cfbivt0s.js → CoinbaseOnrampStatusScreen-9G_2yIQ-.js} +1 -1
  14. package/dist/cjs/{ConnectEmailForm-DeN1Pg_E.js → ConnectEmailForm-D0Xd9Tnw.js} +1 -1
  15. package/dist/cjs/{ConnectLedgerScreen-F3-JADjW.js → ConnectLedgerScreen-COTQ1lqK.js} +1 -1
  16. package/dist/cjs/{ConnectOnlyLandingScreen-DQ9hxL8H.js → ConnectOnlyLandingScreen-DErN9BXL.js} +1 -1
  17. package/dist/cjs/{ConnectOnlyStatusScreen-YPhacltK.js → ConnectOnlyStatusScreen-DKhKRV2M.js} +1 -1
  18. package/dist/cjs/ConnectOrCreateScreen-54nvcrr7.js +1 -0
  19. package/dist/cjs/{ConnectPhoneForm-CIaHyHT9.js → ConnectPhoneForm-WT8rso3i.js} +1 -1
  20. package/dist/cjs/ConnectWalletView-DsOX-lHz.js +1 -0
  21. package/dist/cjs/{ConnectionStatusScreen-Dg1LMsi6.js → ConnectionStatusScreen-C1nqbW_A.js} +1 -1
  22. package/dist/cjs/CrossAppAuthScreen-weeiAu3O.js +1 -0
  23. package/dist/cjs/CustomLandingScreenView-DQLDU2GD.js +2 -0
  24. package/dist/cjs/{DelegatedActionsConsentScreen-CP9xV4-_.js → DelegatedActionsConsentScreen-C_-0aHwH.js} +1 -1
  25. package/dist/cjs/{DelegatedActionsRevokeScreen-QrgQlVmp.js → DelegatedActionsRevokeScreen-SZkD3b1o.js} +1 -1
  26. package/dist/cjs/{EmbeddedWalletConnectingScreen-Ccb4geKv.js → EmbeddedWalletConnectingScreen-VdpmfKNX.js} +1 -1
  27. package/dist/cjs/{EmbeddedWalletCreatedScreen-DTRBR5WW.js → EmbeddedWalletCreatedScreen-CfEf4KkH.js} +1 -1
  28. package/dist/cjs/{EmbeddedWalletKeyExportScreen-B1Ezr57N.js → EmbeddedWalletKeyExportScreen-D0NE_HvJ.js} +1 -1
  29. package/dist/cjs/{EmbeddedWalletOnAccountCreateScreen-0v1ZwZgX.js → EmbeddedWalletOnAccountCreateScreen-CrJFTRI0.js} +1 -1
  30. package/dist/cjs/{EmbeddedWalletPasswordUpdateScreen-DJr1d2fN.js → EmbeddedWalletPasswordUpdateScreen-CjVK53bu.js} +1 -1
  31. package/dist/cjs/{EmbeddedWalletPasswordUpdateSplashScreen-Slns6kTr.js → EmbeddedWalletPasswordUpdateSplashScreen-CVldlThA.js} +1 -1
  32. package/dist/cjs/{EnrollTotp-zJR3l-q0.js → EnrollTotp-BVeDTQ5J.js} +1 -1
  33. package/dist/cjs/{ErrorScreen-DAUNTckD.js → ErrorScreen-BSjRGrRR.js} +1 -1
  34. package/dist/cjs/{FarcasterConnectStatusScreen-C3PPAnT1.js → FarcasterConnectStatusScreen-B7Ab3ddi.js} +1 -1
  35. package/dist/cjs/{FarcasterSignerStatusScreen-BMd0iB8M.js → FarcasterSignerStatusScreen-Bf--BYd8.js} +1 -1
  36. package/dist/cjs/{FundSolWalletWithExternalSolanaWallet-u8DS0vOP.js → FundSolWalletWithExternalSolanaWallet-DcRxhkRg.js} +2 -2
  37. package/dist/cjs/{FundWalletMethodHeader-DFV8N4os.js → FundWalletMethodHeader-BKgYjMau.js} +1 -1
  38. package/dist/cjs/{FundingEditAmountScreen-DXA8k8zQ.js → FundingEditAmountScreen-Bs3_avzr.js} +1 -1
  39. package/dist/cjs/{FundingMethodSelectionScreen-tlU_tfXm.js → FundingMethodSelectionScreen-C_cbW1TC.js} +1 -1
  40. package/dist/cjs/{InAppBrowserLoginNotPossible-BB_zYdr4.js → InAppBrowserLoginNotPossible-CySpQd3Y.js} +1 -1
  41. package/dist/cjs/{InstallWalletScreen-sNsX0qIj.js → InstallWalletScreen-rFpE2-7H.js} +1 -1
  42. package/dist/cjs/LandingScreen-BmZWpgb3.js +1 -0
  43. package/dist/cjs/{LinkConflictScreen-CwA2g0DP.js → LinkConflictScreen-DSIPReKB.js} +1 -1
  44. package/dist/cjs/{LinkEmailScreen-DExuIdVG.js → LinkEmailScreen-Dc8QC15P.js} +1 -1
  45. package/dist/cjs/{LinkPasskeyScreen-DXLAama3.js → LinkPasskeyScreen-CUMuhJ2Q.js} +1 -1
  46. package/dist/cjs/{LinkPhoneScreen-BGKi4PVT.js → LinkPhoneScreen-bozyY6A1.js} +1 -1
  47. package/dist/cjs/{LoginFailedScreen-BMAuqJva.js → LoginFailedScreen-C4gl1Ezs.js} +1 -1
  48. package/dist/cjs/{ManualTransferScreen-Dg8uGXZw.js → ManualTransferScreen-BTj8KQgY.js} +1 -1
  49. package/dist/cjs/{MfaAuthEnrollmentFlowScreen-BZ1svjjW.js → MfaAuthEnrollmentFlowScreen-cmFsgDp4.js} +1 -1
  50. package/dist/cjs/{MfaAuthVerifyFlowScreen-CJhMSZ1r.js → MfaAuthVerifyFlowScreen-DEC3hYOD.js} +1 -1
  51. package/dist/cjs/{MfaEnrollmentFlowScreen-DvxX-vrH.js → MfaEnrollmentFlowScreen-3lOG0uKv.js} +1 -1
  52. package/dist/cjs/{MfaVerifyFlowScreen-BWPqGNNj.js → MfaVerifyFlowScreen-aRH0rn8s.js} +1 -1
  53. package/dist/cjs/{ModalHeader-4MV7Tgk7.js → ModalHeader-DB7Tbjwz.js} +1 -1
  54. package/dist/cjs/{MoonpayStatusScreen-Cd_71Pyq.js → MoonpayStatusScreen-DANoQOd5.js} +1 -1
  55. package/dist/cjs/{OAuthStatusScreen-ZTRfDJXT.js → OAuthStatusScreen-DsGkPiMe.js} +1 -1
  56. package/dist/cjs/{PasskeySelectSignupOrLogin-CQZM_RDH.js → PasskeySelectSignupOrLogin-D9Wfb44J.js} +1 -1
  57. package/dist/cjs/{PasskeyStatusScreen-BM1Mvl9i.js → PasskeyStatusScreen-DAxg2zUJ.js} +1 -1
  58. package/dist/cjs/{PasswordRecoveryScreen-CvVt6RGf.js → PasswordRecoveryScreen-CJfW4kpk.js} +1 -1
  59. package/dist/cjs/{QrCode-DvJPyneT.js → QrCode-DsQD8cG6.js} +1 -1
  60. package/dist/cjs/{RecoveryOAuthStatusScreen-Cg2ntkgK.js → RecoveryOAuthStatusScreen-_R1gExdU.js} +1 -1
  61. package/dist/cjs/{RecoveryPasswordCreateScreen-dGZOvD2x.js → RecoveryPasswordCreateScreen-Cb-gcVc8.js} +1 -1
  62. package/dist/cjs/{RecoverySelectionScreen-DBAg2tyX.js → RecoverySelectionScreen-CZOXXRGl.js} +1 -1
  63. package/dist/cjs/{Screen-CJM19YNL.js → Screen-D9Tvi297.js} +1 -1
  64. package/dist/cjs/{ScreenLayout-Bbhw-EIr.js → ScreenLayout-BeH-Q6N2.js} +1 -1
  65. package/dist/cjs/{SetAutomaticRecoveryScreen-C65Py491.js → SetAutomaticRecoveryScreen-BSDQb_dJ.js} +1 -1
  66. package/dist/cjs/{SetWalletPasswordForm-Bx4bpcUs.js → SetWalletPasswordForm-C3YB2v_1.js} +1 -1
  67. package/dist/cjs/{SignRequestScreen-Dy8xnXXp.js → SignRequestScreen-DW3SnJi5.js} +1 -1
  68. package/dist/cjs/{StandardSignAndSendTransactionScreen-x1O5yfj4.js → StandardSignAndSendTransactionScreen-Cima1YEn.js} +1 -1
  69. package/dist/cjs/{TelegramAuthScreen-DaxoKw-V.js → TelegramAuthScreen-pfwAx0uQ.js} +1 -1
  70. package/dist/cjs/{TransactionDetails-DvBQbDgX.js → TransactionDetails-KB5Wyu1l.js} +1 -1
  71. package/dist/cjs/{TransactionErrorView-BdTYgWfc.js → TransactionErrorView-SaY08uTA.js} +1 -1
  72. package/dist/cjs/TransferFromWalletScreen-DVzjB3Gc.js +1 -0
  73. package/dist/cjs/TransferOrBridgeLoadingScreen-B3zo8l43.js +1 -0
  74. package/dist/cjs/{UpdateEmailScreen-BtndcDiP.js → UpdateEmailScreen-CwWKZeJR.js} +1 -1
  75. package/dist/cjs/{UpdatePhoneScreen-BQb3cbdX.js → UpdatePhoneScreen-B84E2DOe.js} +1 -1
  76. package/dist/cjs/{UserLimitReachedScreen-Ctgox4aT.js → UserLimitReachedScreen-CQMqK5QW.js} +1 -1
  77. package/dist/cjs/{WalletInfoCard-DQtI0K25.js → WalletInfoCard-DKVdH9iF.js} +1 -1
  78. package/dist/cjs/{WalletInterstitialScreen-HfTntL7I.js → WalletInterstitialScreen-0cBKaDQ1.js} +1 -1
  79. package/dist/cjs/{WalletLink-CbnPrVEH.js → WalletLink-GY0_Tmtg.js} +1 -1
  80. package/dist/cjs/WalletOverflowButton-iCeXR9aA.js +1 -0
  81. package/dist/cjs/abstract-smart-wallets.js +1 -1
  82. package/dist/cjs/context-DFq1obBO.js +1 -0
  83. package/dist/cjs/{ethers-BwK3McWK.js → ethers-DZGJ4Y5i.js} +1 -1
  84. package/dist/cjs/extended-chains.js +1 -1
  85. package/dist/cjs/{get-is-unified-wallet-CHHPpmxX.js → get-is-unified-wallet-D4ouXJpi.js} +1 -1
  86. package/dist/cjs/{index-D7QitaMz.js → index-BQai4Vqd.js} +1 -1
  87. package/dist/cjs/{index-DiPPDo6V.js → index-CKB4VKFb.js} +1 -1
  88. package/dist/cjs/{index-4-C2N_7K.js → index-NJrQkxJ7.js} +3 -3
  89. package/dist/cjs/index.js +1 -1
  90. package/dist/cjs/internal.js +1 -1
  91. package/dist/cjs/{prepareFundingModalData-Bap-QRCV.js → prepareFundingModalData-Cnd6rhhJ.js} +1 -1
  92. package/dist/cjs/{shared-BjdszO5f.js → shared-CCAyvw5i.js} +1 -1
  93. package/dist/cjs/{shouldProceedtoEmbeddedWalletCreationFlow-CuHR6wvs.js → shouldProceedtoEmbeddedWalletCreationFlow-DZvEYqlO.js} +1 -1
  94. package/dist/cjs/{smart-wallets-Cb8qgePj.js → smart-wallets-CV78p-ta.js} +1 -1
  95. package/dist/cjs/smart-wallets.js +1 -1
  96. package/dist/cjs/solana.js +1 -1
  97. package/dist/cjs/{to-ui-error-C_N9DMza.js → to-ui-error-ER-8XlJF.js} +1 -1
  98. package/dist/cjs/ui.js +1 -1
  99. package/dist/cjs/{use-create-wallet-without-fallback-y9YpooGA.js → use-create-wallet-without-fallback-q0_yd_V9.js} +1 -1
  100. package/dist/cjs/{use-export-wallet-CmWKVG5J.js → use-export-wallet-DKaavHqM.js} +1 -1
  101. package/dist/cjs/{useActiveWallet-B5cSS56I.js → useActiveWallet-BOX8xCn9.js} +1 -1
  102. package/dist/cjs/{useGetTokenPrice-CdW08dO7.js → useGetTokenPrice-BHq-guWz.js} +1 -1
  103. package/dist/cjs/{useI18n-D21RT6EH.js → useI18n-CY6Et_lH.js} +1 -1
  104. package/dist/cjs/{usePrivy-DobNyfbl.js → usePrivy-CcfSRv1R.js} +1 -1
  105. package/dist/cjs/{useSolanaRpcClient-ZoxUaxNS.js → useSolanaRpcClient-TQdbjNyx.js} +1 -1
  106. package/dist/cjs/{useWallets-DPdw6ah8.js → useWallets-BLFNjTwC.js} +1 -1
  107. package/dist/cjs/{useWallets-Z7ZZY1fI.js → useWallets-oPpMUdRR.js} +1 -1
  108. package/dist/dts/{events-context-D8iPaW-H.d.ts → events-context-BYT6PpDG.d.mts} +1 -1
  109. package/dist/dts/{events-context-D8iPaW-H.d.mts → events-context-BYT6PpDG.d.ts} +1 -1
  110. package/dist/dts/extended-chains.d.mts +1 -1
  111. package/dist/dts/extended-chains.d.ts +1 -1
  112. package/dist/dts/farcaster.d.mts +1 -1
  113. package/dist/dts/farcaster.d.ts +1 -1
  114. package/dist/dts/index.d.mts +26 -4
  115. package/dist/dts/index.d.ts +26 -4
  116. package/dist/dts/internal.d.mts +1 -1
  117. package/dist/dts/internal.d.ts +1 -1
  118. package/dist/dts/smart-wallets.d.mts +1 -1
  119. package/dist/dts/smart-wallets.d.ts +1 -1
  120. package/dist/dts/solana.d.mts +3 -3
  121. package/dist/dts/solana.d.ts +3 -3
  122. package/dist/dts/{types-diVZpIb-.d.mts → types-D7U23FgR.d.mts} +2 -0
  123. package/dist/dts/{types-diVZpIb-.d.ts → types-D7U23FgR.d.ts} +2 -0
  124. package/dist/dts/ui.d.mts +1 -1
  125. package/dist/dts/ui.d.ts +1 -1
  126. package/dist/esm/{AccountNotFoundScreen-CvMiU7Tz.mjs → AccountNotFoundScreen-Bk2ZDlxR.mjs} +1 -1
  127. package/dist/esm/{Address-CDOE2oK9.mjs → Address-BsvZLUXE.mjs} +1 -1
  128. package/dist/esm/{AffirmativeConsentScreen-Cia_UEaD.mjs → AffirmativeConsentScreen-CMcGT-7c.mjs} +1 -1
  129. package/dist/esm/{AllowlistRejectionScreen-DMqAO2Y-.mjs → AllowlistRejectionScreen-CgdkdFzy.mjs} +1 -1
  130. package/dist/esm/{AuthenticateWithWalletScreen-DvzZViMZ.mjs → AuthenticateWithWalletScreen-fhyjSxI8.mjs} +1 -1
  131. package/dist/esm/{AwaitingEvmToSolBridgingScreen-BSG_hKyl.mjs → AwaitingEvmToSolBridgingScreen-DbNP1yPY.mjs} +1 -1
  132. package/dist/esm/{AwaitingExternalEthereumTransferScreen-BcZRmV50.mjs → AwaitingExternalEthereumTransferScreen-COnzLcDW.mjs} +1 -1
  133. package/dist/esm/{AwaitingPasswordlessCodeScreen-Dd7TblcM.mjs → AwaitingPasswordlessCodeScreen-D9BoqETu.mjs} +1 -1
  134. package/dist/esm/{AwaitingSolToEvmBridgingScreen-BD1wkQFf.mjs → AwaitingSolToEvmBridgingScreen-JY-d6qlj.mjs} +1 -1
  135. package/dist/esm/{BridgeNetworkSelectionView-DSCjcHJX.mjs → BridgeNetworkSelectionView-Dn5uqa3q.mjs} +1 -1
  136. package/dist/esm/{Button-DJY5dut3.mjs → Button-B8mqatRx.mjs} +1 -1
  137. package/dist/esm/{CaptchaScreen-CapFNnoZ.mjs → CaptchaScreen-D3uGo3qJ.mjs} +1 -1
  138. package/dist/esm/{CoinbaseOnrampStatusScreen-DbQEEYPn.mjs → CoinbaseOnrampStatusScreen-Ce2Z_vJB.mjs} +1 -1
  139. package/dist/esm/{ConnectEmailForm-Cs3r5aBq.mjs → ConnectEmailForm--PZXgvw4.mjs} +1 -1
  140. package/dist/esm/{ConnectLedgerScreen-EYZ2eRpE.mjs → ConnectLedgerScreen-CRDZ_shP.mjs} +1 -1
  141. package/dist/esm/{ConnectOnlyLandingScreen-BM747X2V.mjs → ConnectOnlyLandingScreen-NSgaj_D4.mjs} +1 -1
  142. package/dist/esm/{ConnectOnlyStatusScreen-CW3W1N8z.mjs → ConnectOnlyStatusScreen-DAGVWgFv.mjs} +1 -1
  143. package/dist/esm/ConnectOrCreateScreen-CuVcGxrh.mjs +1 -0
  144. package/dist/esm/{ConnectPhoneForm-Ft9zAuQd.mjs → ConnectPhoneForm-DoYmHBv3.mjs} +1 -1
  145. package/dist/esm/ConnectWalletView-eQbJO3Pg.mjs +1 -0
  146. package/dist/esm/{ConnectionStatusScreen-nzx3dVCV.mjs → ConnectionStatusScreen-DVtobAVi.mjs} +1 -1
  147. package/dist/esm/CrossAppAuthScreen-B0633bnY.mjs +1 -0
  148. package/dist/esm/CustomLandingScreenView-DNbO8W7v.mjs +2 -0
  149. package/dist/esm/{DelegatedActionsConsentScreen-C35m_lng.mjs → DelegatedActionsConsentScreen-Cm3QtgBC.mjs} +1 -1
  150. package/dist/esm/{DelegatedActionsRevokeScreen-h4GhIT-2.mjs → DelegatedActionsRevokeScreen-C2WBGR2c.mjs} +1 -1
  151. package/dist/esm/{EmbeddedWalletConnectingScreen-CrgNS1_v.mjs → EmbeddedWalletConnectingScreen-CpKPkmKa.mjs} +1 -1
  152. package/dist/esm/{EmbeddedWalletCreatedScreen-BhSPSO8A.mjs → EmbeddedWalletCreatedScreen-CMyRcNaG.mjs} +1 -1
  153. package/dist/esm/{EmbeddedWalletKeyExportScreen-BlAL_BUV.mjs → EmbeddedWalletKeyExportScreen-nkSO3O1P.mjs} +1 -1
  154. package/dist/esm/{EmbeddedWalletOnAccountCreateScreen-Xz2dhW-I.mjs → EmbeddedWalletOnAccountCreateScreen-rwdmo9iN.mjs} +1 -1
  155. package/dist/esm/{EmbeddedWalletPasswordUpdateScreen-DQbd-pAr.mjs → EmbeddedWalletPasswordUpdateScreen-Tcp68U7U.mjs} +1 -1
  156. package/dist/esm/{EmbeddedWalletPasswordUpdateSplashScreen-9VnFkswr.mjs → EmbeddedWalletPasswordUpdateSplashScreen-5PH-3FQ3.mjs} +1 -1
  157. package/dist/esm/{EnrollTotp-twiE9SrW.mjs → EnrollTotp-ULLNt8tl.mjs} +1 -1
  158. package/dist/esm/{ErrorScreen-CTI5XNc0.mjs → ErrorScreen-BdxNEgU1.mjs} +1 -1
  159. package/dist/esm/{FarcasterConnectStatusScreen-26MCKeUz.mjs → FarcasterConnectStatusScreen-CruCPzPD.mjs} +1 -1
  160. package/dist/esm/{FarcasterSignerStatusScreen-YwCO1kz9.mjs → FarcasterSignerStatusScreen-DBAyc7bd.mjs} +1 -1
  161. package/dist/esm/{FundSolWalletWithExternalSolanaWallet-B3w3-z6B.mjs → FundSolWalletWithExternalSolanaWallet-Fxpj9pEN.mjs} +1 -1
  162. package/dist/esm/{FundWalletMethodHeader-CN-93vVj.mjs → FundWalletMethodHeader-I8a6Y30s.mjs} +1 -1
  163. package/dist/esm/{FundingEditAmountScreen-Cz6ZAJlk.mjs → FundingEditAmountScreen-yKYKiyG9.mjs} +1 -1
  164. package/dist/esm/{FundingMethodSelectionScreen-B85fzSsC.mjs → FundingMethodSelectionScreen-Dr-QG6BQ.mjs} +1 -1
  165. package/dist/esm/{InAppBrowserLoginNotPossible-CPsaFweG.mjs → InAppBrowserLoginNotPossible-BYO_nlWy.mjs} +1 -1
  166. package/dist/esm/{InstallWalletScreen-D5mGXNHF.mjs → InstallWalletScreen-Cma1GXX4.mjs} +1 -1
  167. package/dist/esm/LandingScreen-DCR5C-gA.mjs +1 -0
  168. package/dist/esm/{LinkConflictScreen-D8y5of24.mjs → LinkConflictScreen-C8kM_4ZL.mjs} +1 -1
  169. package/dist/esm/{LinkEmailScreen-C9lKAk-L.mjs → LinkEmailScreen-DsrprT7p.mjs} +1 -1
  170. package/dist/esm/{LinkPasskeyScreen-C33kWVrX.mjs → LinkPasskeyScreen-yKY5ebtx.mjs} +1 -1
  171. package/dist/esm/{LinkPhoneScreen-Bi98Ngac.mjs → LinkPhoneScreen-BklMbJs1.mjs} +1 -1
  172. package/dist/esm/{LoginFailedScreen-BX7s2pm7.mjs → LoginFailedScreen-CVGjcD9g.mjs} +1 -1
  173. package/dist/esm/ManualTransferScreen-C6MTkQcg.mjs +1 -0
  174. package/dist/esm/{MfaAuthEnrollmentFlowScreen-BBOfIRfA.mjs → MfaAuthEnrollmentFlowScreen-BrEYUoOi.mjs} +1 -1
  175. package/dist/esm/{MfaAuthVerifyFlowScreen-CwZbfXVc.mjs → MfaAuthVerifyFlowScreen-D_LbAt1N.mjs} +1 -1
  176. package/dist/esm/{MfaEnrollmentFlowScreen-Dq5X_CVZ.mjs → MfaEnrollmentFlowScreen-BseHvqlH.mjs} +1 -1
  177. package/dist/esm/{MfaVerifyFlowScreen-DGylIeVO.mjs → MfaVerifyFlowScreen-DB8BFfTJ.mjs} +1 -1
  178. package/dist/esm/{ModalHeader-DHXUvTf4.mjs → ModalHeader-BLGC-7ev.mjs} +1 -1
  179. package/dist/esm/{MoonpayStatusScreen-Boj9S0LW.mjs → MoonpayStatusScreen-D-Qnyxst.mjs} +1 -1
  180. package/dist/esm/{OAuthStatusScreen-DLvm8CkQ.mjs → OAuthStatusScreen-pEjYhAdx.mjs} +1 -1
  181. package/dist/esm/{PasskeySelectSignupOrLogin-62N4Cj_4.mjs → PasskeySelectSignupOrLogin-CmmjfwZM.mjs} +1 -1
  182. package/dist/esm/{PasskeyStatusScreen-DE8Ez-Rl.mjs → PasskeyStatusScreen-AiT-3Rq0.mjs} +1 -1
  183. package/dist/esm/{PasswordRecoveryScreen-CxXsaYPM.mjs → PasswordRecoveryScreen-BW7BBSLI.mjs} +1 -1
  184. package/dist/esm/{QrCode-CbRLsYtm.mjs → QrCode-DR5LogOp.mjs} +1 -1
  185. package/dist/esm/{RecoveryOAuthStatusScreen-9ETDOsJ0.mjs → RecoveryOAuthStatusScreen-BGxGq84t.mjs} +1 -1
  186. package/dist/esm/{RecoveryPasswordCreateScreen-CZizgkaK.mjs → RecoveryPasswordCreateScreen-Brv0MUPN.mjs} +1 -1
  187. package/dist/esm/{RecoverySelectionScreen-CDzuMgIx.mjs → RecoverySelectionScreen-CluXGpRG.mjs} +1 -1
  188. package/dist/esm/{Screen-CKaxnxac.mjs → Screen-BTyXgDrd.mjs} +1 -1
  189. package/dist/esm/{ScreenLayout-BQ6FV6yc.mjs → ScreenLayout-CddsD3Of.mjs} +1 -1
  190. package/dist/esm/{SetAutomaticRecoveryScreen-D5x6hDUL.mjs → SetAutomaticRecoveryScreen-nXcm7pIi.mjs} +1 -1
  191. package/dist/esm/{SetWalletPasswordForm-DelBzpVM.mjs → SetWalletPasswordForm-DvgKP4Ez.mjs} +1 -1
  192. package/dist/esm/{SignRequestScreen-BA5JF3Hr.mjs → SignRequestScreen-Cp5zIIZ3.mjs} +1 -1
  193. package/dist/esm/{StandardSignAndSendTransactionScreen-CiJd6Wf9.mjs → StandardSignAndSendTransactionScreen-bbPFP1pO.mjs} +1 -1
  194. package/dist/esm/{TelegramAuthScreen-zZOkgtJy.mjs → TelegramAuthScreen-DorSPB8G.mjs} +1 -1
  195. package/dist/esm/{TransactionDetails-B2vXU-k4.mjs → TransactionDetails-Bb1NEpUH.mjs} +1 -1
  196. package/dist/esm/{TransactionErrorView-DOcJFQEX.mjs → TransactionErrorView-CfyBAYzV.mjs} +2 -2
  197. package/dist/esm/TransferFromWalletScreen-BeSvua3b.mjs +1 -0
  198. package/dist/esm/{TransferOrBridgeLoadingScreen-B-uvt7Fj.mjs → TransferOrBridgeLoadingScreen-D5Y_FQAB.mjs} +1 -1
  199. package/dist/esm/{UpdateEmailScreen-B1-pVdEN.mjs → UpdateEmailScreen-BolXWblK.mjs} +1 -1
  200. package/dist/esm/{UpdatePhoneScreen-CwYS0KNr.mjs → UpdatePhoneScreen-G2aRPp1w.mjs} +1 -1
  201. package/dist/esm/{UserLimitReachedScreen-C9lTsh_J.mjs → UserLimitReachedScreen-BUXcfdpd.mjs} +1 -1
  202. package/dist/esm/{WalletInfoCard-C8BrD5jy.mjs → WalletInfoCard-YE5P6CSV.mjs} +1 -1
  203. package/dist/esm/{WalletInterstitialScreen-d520uEnZ.mjs → WalletInterstitialScreen-6lMKxpAk.mjs} +1 -1
  204. package/dist/esm/{WalletLink-WAY9-CI0.mjs → WalletLink-C9CSqqVy.mjs} +1 -1
  205. package/dist/esm/WalletOverflowButton-DV9Pe-aq.mjs +1 -0
  206. package/dist/esm/abstract-smart-wallets.mjs +1 -1
  207. package/dist/esm/context-Bycd1SKV.mjs +1 -0
  208. package/dist/esm/{ethers-g3QzXj2h.mjs → ethers-C3Y94dat.mjs} +1 -1
  209. package/dist/esm/extended-chains.mjs +1 -1
  210. package/dist/esm/{get-is-unified-wallet-_KIJnP68.mjs → get-is-unified-wallet-DvKS5IUO.mjs} +1 -1
  211. package/dist/esm/{index-BGEWwttv.mjs → index-C9_VQk69.mjs} +1 -1
  212. package/dist/esm/{index-Dr4t3oWO.mjs → index-CCyaupaz.mjs} +3 -3
  213. package/dist/esm/{index-CiEOopPN.mjs → index-DeGXWdV3.mjs} +1 -1
  214. package/dist/esm/index.mjs +1 -1
  215. package/dist/esm/internal.mjs +1 -1
  216. package/dist/esm/{prepareFundingModalData-BYy0MVol.mjs → prepareFundingModalData-CIgFwA7s.mjs} +1 -1
  217. package/dist/esm/{shared-CRNjAkzC.mjs → shared-rucIJmk0.mjs} +1 -1
  218. package/dist/esm/{shouldProceedtoEmbeddedWalletCreationFlow-iMnL58wW.mjs → shouldProceedtoEmbeddedWalletCreationFlow-Djgu4xiS.mjs} +1 -1
  219. package/dist/esm/{smart-wallets-BMn13jfV.mjs → smart-wallets-B-nGTJog.mjs} +1 -1
  220. package/dist/esm/smart-wallets.mjs +1 -1
  221. package/dist/esm/solana.mjs +1 -1
  222. package/dist/esm/{to-ui-error-CnxcoZ1S.mjs → to-ui-error-3mK4-1VA.mjs} +1 -1
  223. package/dist/esm/ui.mjs +1 -1
  224. package/dist/esm/{use-create-wallet-without-fallback-5er4aqoE.mjs → use-create-wallet-without-fallback-cSYr4rn8.mjs} +1 -1
  225. package/dist/esm/{use-export-wallet-WZT8QqOJ.mjs → use-export-wallet-ntS-M0Jk.mjs} +1 -1
  226. package/dist/esm/{useActiveWallet-SiVSXkvG.mjs → useActiveWallet-Bsy5GTCV.mjs} +1 -1
  227. package/dist/esm/{useGetTokenPrice-CfQvz_Mo.mjs → useGetTokenPrice-0Bn0Y88A.mjs} +1 -1
  228. package/dist/esm/{useI18n-O3hskpuB.mjs → useI18n-BtdAZuQ8.mjs} +1 -1
  229. package/dist/esm/{usePrivy-Bh4N2Hpm.mjs → usePrivy-BaiIHGte.mjs} +1 -1
  230. package/dist/esm/{useSolanaRpcClient-DaxiCEwc.mjs → useSolanaRpcClient-DW9Xaoo_.mjs} +1 -1
  231. package/dist/esm/{useWallets-gElyEQoU.mjs → useWallets-D0lpBS44.mjs} +1 -1
  232. package/dist/esm/{useWallets-DCp1uab-.mjs → useWallets-NhjmJtNE.mjs} +1 -1
  233. package/package.json +4 -4
  234. package/dist/cjs/ConnectOrCreateScreen-DmitWRwr.js +0 -1
  235. package/dist/cjs/ConnectWalletView-B33uROyL.js +0 -1
  236. package/dist/cjs/CrossAppAuthScreen-B6h5ejCd.js +0 -1
  237. package/dist/cjs/CustomLandingScreenView-ClPdt2GY.js +0 -2
  238. package/dist/cjs/LandingScreen-BE8xOJTr.js +0 -1
  239. package/dist/cjs/TransferFromWalletScreen-CGRGSTHN.js +0 -1
  240. package/dist/cjs/TransferOrBridgeLoadingScreen-C4UYLYIL.js +0 -1
  241. package/dist/cjs/WalletButtonList-C6cavPqd.js +0 -1
  242. package/dist/cjs/context-Dn8Hzo8O.js +0 -1
  243. package/dist/esm/ConnectOrCreateScreen-BREVA7pu.mjs +0 -1
  244. package/dist/esm/ConnectWalletView-DFfXN_9_.mjs +0 -1
  245. package/dist/esm/CrossAppAuthScreen-DAQweVCP.mjs +0 -1
  246. package/dist/esm/CustomLandingScreenView-BkNtLof4.mjs +0 -2
  247. package/dist/esm/LandingScreen-BqSnrgDb.mjs +0 -1
  248. package/dist/esm/ManualTransferScreen-BBMujAte.mjs +0 -1
  249. package/dist/esm/TransferFromWalletScreen-C5QQN9h6.mjs +0 -1
  250. package/dist/esm/WalletButtonList-DZp-38Ac.mjs +0 -1
  251. package/dist/esm/context-Dee1TPOi.mjs +0 -1
@@ -1 +1 @@
1
- import{isMobile as e}from"react-device-detect";import{a as r,b as t,u as a}from"./internal-context-e-Eni5bG.mjs";import{jsx as n}from"react/jsx-runtime";import{useContext as o,createContext as i,useEffect as l,useRef as s,useCallback as d}from"react";import{c,b as u,g as p,a as y,j as E,f as m,u as w,P as f}from"./get-is-unified-wallet-_KIJnP68.mjs";import{a as h,u as v}from"./events-context-CI0iqAXA.mjs";import{create as T}from"@privy-io/js-sdk-core";import{g as W}from"./useWallets-gElyEQoU.mjs";import{u as A,W as g}from"./context-Dee1TPOi.mjs";function D(e){return{name:e.metadata?.shortName||e.name||"",universalLink:e.mobile.universal,deepLink:e.mobile.native}}function U(t,a){let n=D(a);if(e&&n.universalLink)return L(n.universalLink,t);if(n.deepLink)return b(n.deepLink,t);if(n.universalLink)return L(n.universalLink,t);throw new r(`Unsupported wallet ${a.id}`)}function I(e,r){let t=D(r);if(t.universalLink)return L(t.universalLink,e)}let S="WALLETCONNECT_DEEPLINK_CHOICE";function x(){try{localStorage.removeItem(S)}catch{}}function k({href:e,name:r}){try{localStorage.setItem(S,JSON.stringify({href:e,name:r}))}catch{}}function _(){try{localStorage.removeItem(S)}catch{}}function M(e){return e.startsWith("http://")||e.startsWith("https://")}function b(e,r){if(M(e))return L(e,r);let t=e;return t.includes("://")||(t=e.replaceAll("/","").replaceAll(":",""),t=`${t}://`),t.endsWith("/")||(t=`${t}/`),{redirect:`${t}wc?uri=${encodeURIComponent(r)}`,href:t}}function L(e,r){if(!M(e))return b(e,r);let t=e;return t.endsWith("/")||(t=`${t}/`),{redirect:`${t}wc?uri=${encodeURIComponent(r)}`,href:t}}function C(e,r){window.open(e,r,"noreferrer noopener")}const P=({address:e,nonce:r})=>`${window.location.host} wants you to sign in with your Solana account:\n${e}\n\n${`You are proving you own ${e}.`}\n\nURI: ${window.location.origin}\nVersion: 1\nChain ID: mainnet\nNonce: ${r}\nIssued At: ${(new Date).toISOString()}\nResources:\n- https://privy.io`;let R=/*#__PURE__*/i({plugins:{current:{}}});const N=({children:e})=>{let r=s({});/*#__PURE__*/return n(R.Provider,{value:{plugins:r},children:e})},O=(...e)=>{let{plugins:r}=o(R);l((()=>{for(let t of e)r.current[t.id]=t;return()=>{for(let t of e)delete r.current[t.id]}}),[r])},$=()=>{let{plugins:e}=o(R);return d((r=>e.current[r]),[e])},B=Symbol("solana-funding-plugin"),j=Symbol("solana-ledger-plugin"),K=(e,{chainType:r,walletIndex:t}={})=>e?.linkedAccounts.filter((e=>!("wallet"!==e.type||"privy"!==e.walletClientType||void 0!==t&&e.walletIndex!==t||void 0!==r&&e.chainType!==r)))??[],z=e=>e.reduce(((e,r)=>!e||e.walletIndex<r.walletIndex?r:e),null),F=async({user:e,accessToken:r,proxy:t,refreshSessionAndUser:a,privy:n,appConfig:o,recoverEmbeddedWallet:i,setUser:l,walletIndex:s,chainType:d,recoveryMethod:p,recoveryPassword:y,recoveryAccessToken:E})=>{if(0===s)if("user-controlled-server-wallets-only"===o.embeddedWallets.mode)await T(n,{request:{chain_type:d}});else if("ethereum"===d){let a=c(e);a&&await i({address:a.address}),await t.create({accessToken:r,solanaAddress:a?.address,recoveryMethod:p,recoveryPassword:y,recoveryAccessToken:E})}else{if("solana"!==d)throw Error("Invalid input to create wallet");{let a=u(e);a&&await i({address:a.address}),await t.createSolana({accessToken:r,ethereumAddress:a?.address,recoveryMethod:p,recoveryPassword:y,recoveryAccessToken:E})}}else if("user-controlled-server-wallets-only"===o.embeddedWallets.mode)await T(n,{request:{chain_type:d}});else{let{entropyId:a,entropyIdVerifier:n}=W(e);await i(),await t.addWallet({accessToken:r,entropyId:a,entropyIdVerifier:n,chainType:d,hdWalletIndex:s})}let m=await a(),w=K(m,{chainType:d,walletIndex:s})[0];return l(m),{user:m,account:w}};let H=async({accessToken:e,appConfig:r,privy:a,emitPrivyEvent:n,proxy:o,refreshSessionAndUser:i,recoverEmbeddedWallet:l,user:s,walletIndex:d,setModalData:c,openModal:u,chainType:y,setUser:E})=>{if(d<0)throw n("createWallet","onError",t.EMBEDDED_WALLET_CREATE_ERROR),Error(`A negative walletIndex (${d}) is invalid.`);let m=p(s);if(d>0&&!m)throw n("createWallet","onError",t.EMBEDDED_WALLET_NOT_FOUND),Error("Must have an existing embedded wallet to create an additional wallet.");if(r.embeddedWallets.requireUserOwnedRecoveryOnCreate&&"user-controlled-server-wallets-only"===r.embeddedWallets.mode)throw n("createWallet","onError",t.EMBEDDED_WALLET_CREATE_ERROR),Error("User owned recovery not yet supported for this app.");if(!m&&r.embeddedWallets.requireUserOwnedRecoveryOnCreate)return await q({emitPrivyEvent:n,setModalData:c,openModal:u,chainType:y});let w=K(s,{chainType:y,walletIndex:d})[0];if(w)return{user:s,account:w};if(0===d&&!o)return q({emitPrivyEvent:n,setModalData:c,openModal:u,chainType:y});if(!o)throw n("createWallet","onError",t.UNKNOWN_EMBEDDED_WALLET_ERROR),Error("Failed to connect to wallet proxy");return F({appConfig:r,walletIndex:d,chainType:y,user:s,accessToken:e,proxy:o,refreshSessionAndUser:i,privy:a,recoverEmbeddedWallet:l,setUser:E})},q=async({emitPrivyEvent:e,setModalData:r,openModal:a,chainType:n})=>new Promise(((o,i)=>{r({createWallet:{onSuccess:({user:r,account:t})=>{e("createWallet","onSuccess",{wallet:t}),o({user:r,account:t})},onFailure:r=>{e("createWallet","onError",t.UNKNOWN_EMBEDDED_WALLET_ERROR),i(r)},callAuthOnSuccessOnClose:!1,shouldCreateEth:"ethereum"===n,shouldCreateSol:"solana"===n}}),a("EmbeddedWalletOnAccountCreateScreen")}));const V=()=>{let e=A(),r=h(),{setModalData:n}=y(),{initializeWalletProxy:o,recoverEmbeddedWallet:i,setUser:l,openModal:s,refreshSessionAndUser:d,privy:c,client:u}=a();return{create:async({chainType:a,options:p,latestUser:y})=>{let E=y;if(E||(E=await d()),!E)throw r("createWallet","onError",t.MUST_BE_AUTHENTICATED),Error("User must be authenticated before creating a Privy wallet");return await(async({appConfig:e,getAccessToken:r,initializeWalletProxy:a,user:n,privy:o,emitPrivyEvent:i,recoverEmbeddedWallet:l,setModalData:s,openModal:d,setUser:c,options:u,timeoutDuration:p,refreshSessionAndUser:y,chainType:E})=>{let[m,w]=await Promise.all([a(p),r()]);if(!w||!n)throw i("createWallet","onError",t.MUST_BE_AUTHENTICATED),Error("User must be authenticated before creating a Privy wallet");if(!m&&e.customAuth?.enabled)throw i("createWallet","onError",t.UNKNOWN_EMBEDDED_WALLET_ERROR),Error("Failed to connect to wallet proxy");if(u&&"walletIndex"in u&&"number"==typeof u.walletIndex){if("user-controlled-server-wallets-only"===e.embeddedWallets.mode)throw i("createWallet","onError",t.INVALID_DATA),Error("Invalid input, use `createAdditional` instead of `walletIndex` to create additional wallets.");return H({accessToken:w,appConfig:e,privy:o,emitPrivyEvent:i,openModal:d,proxy:m,refreshSessionAndUser:y,recoverEmbeddedWallet:l,setModalData:s,user:n,walletIndex:u.walletIndex,chainType:E,setUser:c})}let f=u&&"createAdditional"in u&&u.createAdditional,h=K(n,{chainType:E});if(h[0]&&!f)throw i("createWallet","onError",t.EMBEDDED_WALLET_ALREADY_EXISTS),Error("User already has an embedded wallet.");return H({accessToken:w,appConfig:e,privy:o,emitPrivyEvent:i,openModal:d,proxy:m,recoverEmbeddedWallet:l,setModalData:s,user:n,walletIndex:(z(h)?.walletIndex??-1)+1,chainType:E,refreshSessionAndUser:y,setUser:c})})({appConfig:e,privy:c,getAccessToken:()=>u.getAccessToken(),refreshSessionAndUser:d,initializeWalletProxy:o,user:E,emitPrivyEvent:r,recoverEmbeddedWallet:i,setModalData:n,openModal:s,setUser:l,options:p,timeoutDuration:g,chainType:a})}}};function Y(e){let{create:r}=V();return v("createWallet",e),{createWallet:async e=>{e&&"target"in e&&e&&(e=void 0);let{account:t}=await r({chainType:"ethereum",options:e});return t}}}const J=async({emitPrivyEvent:e,getAccessToken:a,initializeWalletProxy:n,refreshSessionAndUser:o,user:i,appConfig:l},{privateKey:s,chainType:d,additionalSigners:c})=>{if(!i)throw e("linkAccount","onError",t.MUST_BE_AUTHENTICATED,{linkMethod:"siwe"}),new r("User must be authenticated before linking an account.");let u="user-controlled-server-wallets-only"===l.embeddedWallets.mode?"tee":"on-device";if(c&&"on-device"===u)throw new r("Specifying additionalSigners is only supported for TEE execution and this app uses On-device execution. Learn more https://docs.privy.io/recipes/tee-wallet-migration-guide");let[p,y]=await Promise.all([a(),n(15e3)]);if(!y||!p)throw e("linkAccount","onError",t.MUST_BE_AUTHENTICATED,{linkMethod:"siwe"}),new r("User must be authenticated before linking an account.");let{address:w}=await y.importWallet({privateKey:s,accessToken:p,chainType:d,mode:u,additionalSigners:c}),f=await o(),h="solana"===d?E(f):m(f),v=h?.find((e=>e.address===w));if(!v)throw e("createWallet","onError",t.UNKNOWN_EMBEDDED_WALLET_ERROR),Error("Failed to import wallet");return e("createWallet","onSuccess",{wallet:v}),v},X=()=>{let{user:e}=w(),{client:r,refreshSessionAndUser:t,initializeWalletProxy:n}=a(),o=h(),i=A();return{importWallet:d((({privateKey:a,additionalSigners:l})=>J({getAccessToken:()=>r.getAccessToken(),user:e,initializeWalletProxy:n,refreshSessionAndUser:t,emitPrivyEvent:o,appConfig:i},{privateKey:a,chainType:"ethereum",additionalSigners:l})),[e,r,t,n,o,i])}},G=()=>{let{importWallet:e}=X(),{createWallet:r}=Y();return{...o(f),importWallet:e,createWallet:r}};export{N as P,B as S,I as a,U as b,$ as c,x as d,j as e,V as f,Y as g,X as h,J as i,O as j,F as k,C as o,P as p,_ as r,k as s,G as u};
1
+ import{isMobile as e}from"react-device-detect";import{a as r,b as t,u as a}from"./internal-context-e-Eni5bG.mjs";import{jsx as n}from"react/jsx-runtime";import{useContext as o,createContext as i,useEffect as l,useRef as s,useCallback as d}from"react";import{c,b as u,g as p,a as y,j as E,f as m,u as w,P as f}from"./get-is-unified-wallet-DvKS5IUO.mjs";import{a as h,u as v}from"./events-context-CI0iqAXA.mjs";import{create as T}from"@privy-io/js-sdk-core";import{g as W}from"./useWallets-D0lpBS44.mjs";import{u as A,W as g}from"./context-Bycd1SKV.mjs";function D(e){return{name:e.metadata?.shortName||e.name||"",universalLink:e.mobile.universal,deepLink:e.mobile.native}}function U(t,a){let n=D(a);if(e&&n.universalLink)return L(n.universalLink,t);if(n.deepLink)return b(n.deepLink,t);if(n.universalLink)return L(n.universalLink,t);throw new r(`Unsupported wallet ${a.id}`)}function I(e,r){let t=D(r);if(t.universalLink)return L(t.universalLink,e)}let S="WALLETCONNECT_DEEPLINK_CHOICE";function x(){try{localStorage.removeItem(S)}catch{}}function k({href:e,name:r}){try{localStorage.setItem(S,JSON.stringify({href:e,name:r}))}catch{}}function _(){try{localStorage.removeItem(S)}catch{}}function M(e){return e.startsWith("http://")||e.startsWith("https://")}function b(e,r){if(M(e))return L(e,r);let t=e;return t.includes("://")||(t=e.replaceAll("/","").replaceAll(":",""),t=`${t}://`),t.endsWith("/")||(t=`${t}/`),{redirect:`${t}wc?uri=${encodeURIComponent(r)}`,href:t}}function L(e,r){if(!M(e))return b(e,r);let t=e;return t.endsWith("/")||(t=`${t}/`),{redirect:`${t}wc?uri=${encodeURIComponent(r)}`,href:t}}function C(e,r){window.open(e,r,"noreferrer noopener")}const P=({address:e,nonce:r})=>`${window.location.host} wants you to sign in with your Solana account:\n${e}\n\n${`You are proving you own ${e}.`}\n\nURI: ${window.location.origin}\nVersion: 1\nChain ID: mainnet\nNonce: ${r}\nIssued At: ${(new Date).toISOString()}\nResources:\n- https://privy.io`;let R=/*#__PURE__*/i({plugins:{current:{}}});const N=({children:e})=>{let r=s({});/*#__PURE__*/return n(R.Provider,{value:{plugins:r},children:e})},O=(...e)=>{let{plugins:r}=o(R);l((()=>{for(let t of e)r.current[t.id]=t;return()=>{for(let t of e)delete r.current[t.id]}}),[r])},$=()=>{let{plugins:e}=o(R);return d((r=>e.current[r]),[e])},B=Symbol("solana-funding-plugin"),j=Symbol("solana-ledger-plugin"),K=(e,{chainType:r,walletIndex:t}={})=>e?.linkedAccounts.filter((e=>!("wallet"!==e.type||"privy"!==e.walletClientType||void 0!==t&&e.walletIndex!==t||void 0!==r&&e.chainType!==r)))??[],z=e=>e.reduce(((e,r)=>!e||e.walletIndex<r.walletIndex?r:e),null),F=async({user:e,accessToken:r,proxy:t,refreshSessionAndUser:a,privy:n,appConfig:o,recoverEmbeddedWallet:i,setUser:l,walletIndex:s,chainType:d,recoveryMethod:p,recoveryPassword:y,recoveryAccessToken:E})=>{if(0===s)if("user-controlled-server-wallets-only"===o.embeddedWallets.mode)await T(n,{request:{chain_type:d}});else if("ethereum"===d){let a=c(e);a&&await i({address:a.address}),await t.create({accessToken:r,solanaAddress:a?.address,recoveryMethod:p,recoveryPassword:y,recoveryAccessToken:E})}else{if("solana"!==d)throw Error("Invalid input to create wallet");{let a=u(e);a&&await i({address:a.address}),await t.createSolana({accessToken:r,ethereumAddress:a?.address,recoveryMethod:p,recoveryPassword:y,recoveryAccessToken:E})}}else if("user-controlled-server-wallets-only"===o.embeddedWallets.mode)await T(n,{request:{chain_type:d}});else{let{entropyId:a,entropyIdVerifier:n}=W(e);await i(),await t.addWallet({accessToken:r,entropyId:a,entropyIdVerifier:n,chainType:d,hdWalletIndex:s})}let m=await a(),w=K(m,{chainType:d,walletIndex:s})[0];return l(m),{user:m,account:w}};let H=async({accessToken:e,appConfig:r,privy:a,emitPrivyEvent:n,proxy:o,refreshSessionAndUser:i,recoverEmbeddedWallet:l,user:s,walletIndex:d,setModalData:c,openModal:u,chainType:y,setUser:E})=>{if(d<0)throw n("createWallet","onError",t.EMBEDDED_WALLET_CREATE_ERROR),Error(`A negative walletIndex (${d}) is invalid.`);let m=p(s);if(d>0&&!m)throw n("createWallet","onError",t.EMBEDDED_WALLET_NOT_FOUND),Error("Must have an existing embedded wallet to create an additional wallet.");if(r.embeddedWallets.requireUserOwnedRecoveryOnCreate&&"user-controlled-server-wallets-only"===r.embeddedWallets.mode)throw n("createWallet","onError",t.EMBEDDED_WALLET_CREATE_ERROR),Error("User owned recovery not yet supported for this app.");if(!m&&r.embeddedWallets.requireUserOwnedRecoveryOnCreate)return await q({emitPrivyEvent:n,setModalData:c,openModal:u,chainType:y});let w=K(s,{chainType:y,walletIndex:d})[0];if(w)return{user:s,account:w};if(0===d&&!o)return q({emitPrivyEvent:n,setModalData:c,openModal:u,chainType:y});if(!o)throw n("createWallet","onError",t.UNKNOWN_EMBEDDED_WALLET_ERROR),Error("Failed to connect to wallet proxy");return F({appConfig:r,walletIndex:d,chainType:y,user:s,accessToken:e,proxy:o,refreshSessionAndUser:i,privy:a,recoverEmbeddedWallet:l,setUser:E})},q=async({emitPrivyEvent:e,setModalData:r,openModal:a,chainType:n})=>new Promise(((o,i)=>{r({createWallet:{onSuccess:({user:r,account:t})=>{e("createWallet","onSuccess",{wallet:t}),o({user:r,account:t})},onFailure:r=>{e("createWallet","onError",t.UNKNOWN_EMBEDDED_WALLET_ERROR),i(r)},callAuthOnSuccessOnClose:!1,shouldCreateEth:"ethereum"===n,shouldCreateSol:"solana"===n}}),a("EmbeddedWalletOnAccountCreateScreen")}));const V=()=>{let e=A(),r=h(),{setModalData:n}=y(),{initializeWalletProxy:o,recoverEmbeddedWallet:i,setUser:l,openModal:s,refreshSessionAndUser:d,privy:c,client:u}=a();return{create:async({chainType:a,options:p,latestUser:y})=>{let E=y;if(E||(E=await d()),!E)throw r("createWallet","onError",t.MUST_BE_AUTHENTICATED),Error("User must be authenticated before creating a Privy wallet");return await(async({appConfig:e,getAccessToken:r,initializeWalletProxy:a,user:n,privy:o,emitPrivyEvent:i,recoverEmbeddedWallet:l,setModalData:s,openModal:d,setUser:c,options:u,timeoutDuration:p,refreshSessionAndUser:y,chainType:E})=>{let[m,w]=await Promise.all([a(p),r()]);if(!w||!n)throw i("createWallet","onError",t.MUST_BE_AUTHENTICATED),Error("User must be authenticated before creating a Privy wallet");if(!m&&e.customAuth?.enabled)throw i("createWallet","onError",t.UNKNOWN_EMBEDDED_WALLET_ERROR),Error("Failed to connect to wallet proxy");if(u&&"walletIndex"in u&&"number"==typeof u.walletIndex){if("user-controlled-server-wallets-only"===e.embeddedWallets.mode)throw i("createWallet","onError",t.INVALID_DATA),Error("Invalid input, use `createAdditional` instead of `walletIndex` to create additional wallets.");return H({accessToken:w,appConfig:e,privy:o,emitPrivyEvent:i,openModal:d,proxy:m,refreshSessionAndUser:y,recoverEmbeddedWallet:l,setModalData:s,user:n,walletIndex:u.walletIndex,chainType:E,setUser:c})}let f=u&&"createAdditional"in u&&u.createAdditional,h=K(n,{chainType:E});if(h[0]&&!f)throw i("createWallet","onError",t.EMBEDDED_WALLET_ALREADY_EXISTS),Error("User already has an embedded wallet.");return H({accessToken:w,appConfig:e,privy:o,emitPrivyEvent:i,openModal:d,proxy:m,recoverEmbeddedWallet:l,setModalData:s,user:n,walletIndex:(z(h)?.walletIndex??-1)+1,chainType:E,refreshSessionAndUser:y,setUser:c})})({appConfig:e,privy:c,getAccessToken:()=>u.getAccessToken(),refreshSessionAndUser:d,initializeWalletProxy:o,user:E,emitPrivyEvent:r,recoverEmbeddedWallet:i,setModalData:n,openModal:s,setUser:l,options:p,timeoutDuration:g,chainType:a})}}};function Y(e){let{create:r}=V();return v("createWallet",e),{createWallet:async e=>{e&&"target"in e&&e&&(e=void 0);let{account:t}=await r({chainType:"ethereum",options:e});return t}}}const J=async({emitPrivyEvent:e,getAccessToken:a,initializeWalletProxy:n,refreshSessionAndUser:o,user:i,appConfig:l},{privateKey:s,chainType:d,additionalSigners:c})=>{if(!i)throw e("linkAccount","onError",t.MUST_BE_AUTHENTICATED,{linkMethod:"siwe"}),new r("User must be authenticated before linking an account.");let u="user-controlled-server-wallets-only"===l.embeddedWallets.mode?"tee":"on-device";if(c&&"on-device"===u)throw new r("Specifying additionalSigners is only supported for TEE execution and this app uses On-device execution. Learn more https://docs.privy.io/recipes/tee-wallet-migration-guide");let[p,y]=await Promise.all([a(),n(15e3)]);if(!y||!p)throw e("linkAccount","onError",t.MUST_BE_AUTHENTICATED,{linkMethod:"siwe"}),new r("User must be authenticated before linking an account.");let{address:w}=await y.importWallet({privateKey:s,accessToken:p,chainType:d,mode:u,additionalSigners:c}),f=await o(),h="solana"===d?E(f):m(f),v=h?.find((e=>e.address===w));if(!v)throw e("createWallet","onError",t.UNKNOWN_EMBEDDED_WALLET_ERROR),Error("Failed to import wallet");return e("createWallet","onSuccess",{wallet:v}),v},X=()=>{let{user:e}=w(),{client:r,refreshSessionAndUser:t,initializeWalletProxy:n}=a(),o=h(),i=A();return{importWallet:d((({privateKey:a,additionalSigners:l})=>J({getAccessToken:()=>r.getAccessToken(),user:e,initializeWalletProxy:n,refreshSessionAndUser:t,emitPrivyEvent:o,appConfig:i},{privateKey:a,chainType:"ethereum",additionalSigners:l})),[e,r,t,n,o,i])}},G=()=>{let{importWallet:e}=X(),{createWallet:r}=Y();return{...o(f),importWallet:e,createWallet:r}};export{N as P,B as S,I as a,U as b,$ as c,x as d,j as e,V as f,Y as g,X as h,J as i,O as j,F as k,C as o,P as p,_ as r,k as s,G as u};
@@ -1 +1 @@
1
- import{getTransactionDecoder as r,getBase64Decoder as n,getBase58Encoder as e}from"@solana/kit";import{useMemo as o,useCallback as t}from"react";import{u as a}from"./context-Dee1TPOi.mjs";import{a as i,b as s}from"./internal-context-e-Eni5bG.mjs";function c(n){return new Uint8Array(r().decode(n).messageBytes)}async function l({solanaClient:r,tx:e}){let o=n().decode(c(e)),{value:t}=await r.rpc.getFeeForMessage(o).send();return t??0n}async function u({solanaClient:r,tx:e,replaceRecentBlockhash:o}){let{value:t}=await r.rpc.simulateTransaction(n().decode(e),{commitment:"confirmed",encoding:"base64",sigVerify:!1,replaceRecentBlockhash:o}).send();if("BlockhashNotFound"===t.err&&o)throw Error("Simulation failed: Blockhash not found");return"BlockhashNotFound"===t.err?await u({solanaClient:r,tx:e,replaceRecentBlockhash:!0}):{logs:t.logs??[],error:t.err,hasError:!!t.err,hasFunds:t.logs?.every((r=>!/insufficient funds/gi.test(r)&&!/insufficient lamports/gi.test(r)))??!0}}const f=(...r)=>{if("undefined"==typeof Buffer)throw new i("Buffer is not defined.",void 0,s.BUFFER_NOT_DEFINED);return Buffer.from(...r)};async function p({rpcSubscriptions:r,signature:n,timeout:e}){let o=new AbortController,t=await r.signatureNotifications(n,{commitment:"confirmed"}).subscribe({abortSignal:o.signal}),a=await Promise.race([new Promise((r=>{setTimeout((()=>{o.abort(),r(Error("Transaction confirmation timed out"))}),e)})),new Promise((async r=>{for await(let n of t){if(o.abort(),n.value.err)return r(Error("Transaction confirmation failed"));r(void 0)}}))]);if(a instanceof Error)throw a}function m({rpc:r,rpcSubscriptions:n,chain:o,blockExplorerUrl:t}){let a=function({rpc:r,rpcSubscriptions:n}){return async o=>new Promise((async(t,a)=>{try{let a=await r.sendTransaction(f(o).toString("base64"),{preflightCommitment:"confirmed",encoding:"base64"}).send();await p({rpcSubscriptions:n,signature:a,timeout:1e4}),t({signature:new Uint8Array(e().encode(a))})}catch(r){a(r)}}))}({rpc:r,rpcSubscriptions:n});return{rpc:r,rpcSubscriptions:n,chain:o,blockExplorerUrl:t,sendAndConfirmTransaction:a}}function d(){let r=a(),n=o((()=>Object.fromEntries(["solana:mainnet","solana:devnet","solana:testnet"].map((n=>[n,r.solanaRpcs[n]?m({chain:n,rpc:r.solanaRpcs[n].rpc,rpcSubscriptions:r.solanaRpcs[n].rpcSubscriptions,blockExplorerUrl:r.solanaRpcs[n].blockExplorerUrl??`https://explorer.solana.com?cluster=${n.replace("solana:","")}`}):null])))),[r.solanaRpcs]);return t((r=>{if(!n[r])throw Error(`No RPC configuration found for chain ${r}`);return n[r]}),[n])}export{c as a,f as b,l as f,m as g,u as s,d as u,p as w};
1
+ import{getTransactionDecoder as r,getBase64Decoder as n,getBase58Encoder as e}from"@solana/kit";import{useMemo as o,useCallback as t}from"react";import{u as a}from"./context-Bycd1SKV.mjs";import{a as i,b as s}from"./internal-context-e-Eni5bG.mjs";function c(n){return new Uint8Array(r().decode(n).messageBytes)}async function l({solanaClient:r,tx:e}){let o=n().decode(c(e)),{value:t}=await r.rpc.getFeeForMessage(o).send();return t??0n}async function u({solanaClient:r,tx:e,replaceRecentBlockhash:o}){let{value:t}=await r.rpc.simulateTransaction(n().decode(e),{commitment:"confirmed",encoding:"base64",sigVerify:!1,replaceRecentBlockhash:o}).send();if("BlockhashNotFound"===t.err&&o)throw Error("Simulation failed: Blockhash not found");return"BlockhashNotFound"===t.err?await u({solanaClient:r,tx:e,replaceRecentBlockhash:!0}):{logs:t.logs??[],error:t.err,hasError:!!t.err,hasFunds:t.logs?.every((r=>!/insufficient funds/gi.test(r)&&!/insufficient lamports/gi.test(r)))??!0}}const f=(...r)=>{if("undefined"==typeof Buffer)throw new i("Buffer is not defined.",void 0,s.BUFFER_NOT_DEFINED);return Buffer.from(...r)};async function p({rpcSubscriptions:r,signature:n,timeout:e}){let o=new AbortController,t=await r.signatureNotifications(n,{commitment:"confirmed"}).subscribe({abortSignal:o.signal}),a=await Promise.race([new Promise((r=>{setTimeout((()=>{o.abort(),r(Error("Transaction confirmation timed out"))}),e)})),new Promise((async r=>{for await(let n of t){if(o.abort(),n.value.err)return r(Error("Transaction confirmation failed"));r(void 0)}}))]);if(a instanceof Error)throw a}function m({rpc:r,rpcSubscriptions:n,chain:o,blockExplorerUrl:t}){let a=function({rpc:r,rpcSubscriptions:n}){return async o=>new Promise((async(t,a)=>{try{let a=await r.sendTransaction(f(o).toString("base64"),{preflightCommitment:"confirmed",encoding:"base64"}).send();await p({rpcSubscriptions:n,signature:a,timeout:1e4}),t({signature:new Uint8Array(e().encode(a))})}catch(r){a(r)}}))}({rpc:r,rpcSubscriptions:n});return{rpc:r,rpcSubscriptions:n,chain:o,blockExplorerUrl:t,sendAndConfirmTransaction:a}}function d(){let r=a(),n=o((()=>Object.fromEntries(["solana:mainnet","solana:devnet","solana:testnet"].map((n=>[n,r.solanaRpcs[n]?m({chain:n,rpc:r.solanaRpcs[n].rpc,rpcSubscriptions:r.solanaRpcs[n].rpcSubscriptions,blockExplorerUrl:r.solanaRpcs[n].blockExplorerUrl??`https://explorer.solana.com?cluster=${n.replace("solana:","")}`}):null])))),[r.solanaRpcs]);return t((r=>{if(!n[r])throw Error(`No RPC configuration found for chain ${r}`);return n[r]}),[n])}export{c as a,f as b,l as f,m as g,u as s,d as u,p as w};
@@ -1 +1 @@
1
- import{g as e}from"./get-is-unified-wallet-_KIJnP68.mjs";import{useContext as r,createContext as t}from"react";const a=e=>{if("ethereum"===e.chainType)return{entropyId:e.address,entropyIdVerifier:"ethereum-address-verifier"};if("solana"===e.chainType)return{entropyId:e.address,entropyIdVerifier:"solana-address-verifier"};throw Error("Failed to get account entropy details")},i=(r,t)=>{if(t?.imported)return a(t);let i=e(r);if(!i)throw Error("Failed to find primary wallet");return a(i)},o=/*#__PURE__*/t(null);function n(){let e=r(o);return null===e?(console.warn("`useWallets` was called outside the PrivyProvider component"),{wallets:[],ready:!1}):e}export{o as U,i as g,a as t,n as u};
1
+ import{g as e}from"./get-is-unified-wallet-DvKS5IUO.mjs";import{useContext as r,createContext as t}from"react";const a=e=>{if("ethereum"===e.chainType)return{entropyId:e.address,entropyIdVerifier:"ethereum-address-verifier"};if("solana"===e.chainType)return{entropyId:e.address,entropyIdVerifier:"solana-address-verifier"};throw Error("Failed to get account entropy details")},i=(r,t)=>{if(t?.imported)return a(t);let i=e(r);if(!i)throw Error("Failed to find primary wallet");return a(i)},o=/*#__PURE__*/t(null);function n(){let e=r(o);return null===e?(console.warn("`useWallets` was called outside the PrivyProvider component"),{wallets:[],ready:!1}):e}export{o as U,i as g,a as t,n as u};
@@ -1 +1 @@
1
- import{getBase58Decoder as e,getTransactionDecoder as n,address as t,getTransactionEncoder as a}from"@solana/kit";import{useMemo as s,useEffect as i,useState as r}from"react";import o,{rpc as c,ConnectedStandardSolanaWallet as l}from"@privy-io/js-sdk-core";import{u as d,a as u,b as g,l as h}from"./internal-context-e-Eni5bG.mjs";import{a as p,h as f,d as w,o as A,j as y}from"./get-is-unified-wallet-_KIJnP68.mjs";import{u as v}from"./usePrivy-Bh4N2Hpm.mjs";import{g as m,u as T}from"./useWallets-gElyEQoU.mjs";import b from"eventemitter3";import{base58 as O}from"@scure/base";import{u as S}from"./context-Dee1TPOi.mjs";import{u as _}from"./use-sign-with-user-signer-eEm9Olt_.mjs";import{g as E,u as I}from"./prepareFundingModalData-BYy0MVol.mjs";import{b as j,a as W,u as M}from"./useSolanaRpcClient-DaxiCEwc.mjs";const P=["solana:mainnet","solana:devnet","solana:testnet"];function F(n){return e().decode(n)}function C(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var U=0,D="__private_"+U+++"__implementation";function N(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var B=0;function R(e){return"__private_"+B+++"_"+e}var x=/*#__PURE__*/R("_address"),L=/*#__PURE__*/R("_publicKey"),V=/*#__PURE__*/R("_chains"),Q=/*#__PURE__*/R("_features"),G=/*#__PURE__*/R("_label"),K=/*#__PURE__*/R("_icon");class J{get address(){return N(this,x)[x]}get publicKey(){return N(this,L)[L].slice()}get chains(){return N(this,V)[V].slice()}get features(){return N(this,Q)[Q].slice()}get label(){return N(this,G)[G]}get icon(){return N(this,K)[K]}constructor({address:e,publicKey:n,label:t,icon:a}){Object.defineProperty(this,x,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),Object.defineProperty(this,V,{writable:!0,value:void 0}),Object.defineProperty(this,Q,{writable:!0,value:void 0}),Object.defineProperty(this,G,{writable:!0,value:void 0}),Object.defineProperty(this,K,{writable:!0,value:void 0}),N(this,x)[x]=e,N(this,L)[L]=n,N(this,V)[V]=P,N(this,G)[G]=t,N(this,K)[K]=a,N(this,Q)[Q]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],new.target===J&&Object.freeze(this)}}function Y(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var k=0;function H(e){return"__private_"+k+++"_"+e}var Z=/*#__PURE__*/H("_listeners"),z=/*#__PURE__*/H("_version"),q=/*#__PURE__*/H("_name"),X=/*#__PURE__*/H("_icon"),$=/*#__PURE__*/H("_injection"),ee=/*#__PURE__*/H("_isPrivyWallet"),ne=/*#__PURE__*/H("_accounts"),te=/*#__PURE__*/H("_on"),ae=/*#__PURE__*/H("_emit"),se=/*#__PURE__*/H("_off"),ie=/*#__PURE__*/H("_connected"),re=/*#__PURE__*/H("_connect"),oe=/*#__PURE__*/H("_disconnect"),ce=/*#__PURE__*/H("_signMessage"),le=/*#__PURE__*/H("_signAndSendTransaction"),de=/*#__PURE__*/H("_signTransaction");function ue(e,...n){Y(this,Z)[Z][e]?.forEach((e=>e.apply(null,n)))}function ge(e,n){Y(this,Z)[Z][e]=Y(this,Z)[Z][e]?.filter((e=>n!==e))}function he(e,s,i){let r=structuredClone(n().decode(e)),o=t(s);return o in r.signatures&&(r.signatures[o]=i),new Uint8Array(a().encode(r))}function pe(){let{isHeadlessSigning:e,walletProxy:n,initializeWalletProxy:t,recoverEmbeddedWallet:a,openModal:s,privy:i,client:r}=d(),{user:o}=v(),{setModalData:l}=p(),{signWithUserSigner:h}=_();return{signMessage:({message:d,address:p,options:A})=>new Promise((async(y,v)=>{let T=f(o,p);if("privy"!==T?.walletClientType)return void v(new u("Wallet is not a Privy wallet",void 0,g.EMBEDDED_WALLET_NOT_FOUND));let{entropyId:b,entropyIdVerifier:O}=m(o,T),S=w(T),_=j(d).toString("base64");if(_.length<1)return void v(new u("Message must be a non-empty string",void 0,g.INVALID_MESSAGE));let E=async()=>{let e;if(!o)throw Error("User must be authenticated before signing with a Privy wallet");let s=await r.getAccessToken();if(!s)throw Error("User must be authenticated to use their embedded wallet.");let l=n??await t(15e3);if(!l)throw Error("Failed to initialize embedded wallet proxy.");if(!await a({address:T.address}))throw Error("Unable to connect to wallet");if(S){let n=await c(i,h,{chain_type:"solana",method:"signMessage",params:{message:_,encoding:"base64"},wallet_id:T.id});if(!n.data||!("signature"in n.data))throw Error("Failed to sign message");e=n.data.signature}else{let{response:n}=await l.rpc({accessToken:s,entropyId:b,entropyIdVerifier:O,chainType:"solana",hdWalletIndex:T.walletIndex??0,requesterAppId:A?.uiOptions?.requesterAppId,request:{method:"signMessage",params:{message:_}}});e=n.data.signature}return e};if(e({showWalletUIs:A?.uiOptions?.showWalletUIs}))try{let e=await E(),n=new Uint8Array(j(e,"base64"));y({signature:n})}catch(e){v(e)}else l({signMessage:{method:"solana_signMessage",data:_,confirmAndSign:E,onSuccess:e=>{y({signature:new Uint8Array(j(e,"base64"))})},onFailure:e=>{v(e)},uiOptions:A?.uiOptions??{}},connectWallet:{recoveryMethod:T.recoveryMethod,connectingWalletAddress:T.address,entropyId:b,entropyIdVerifier:O,isUnifiedWallet:S,onCompleteNavigateTo:"SignRequestScreen",onFailure:e=>{v(new u("Failed to connect to wallet",e,g.UNKNOWN_CONNECT_WALLET_ERROR))}}}),s("EmbeddedWalletConnectingScreen")}))}}function fe(){let{isHeadlessSigning:e,openModal:n}=d(),{setModalData:t}=p(),{signMessage:a}=pe(),{user:s}=v();return{signTransaction:async({transaction:i,options:r,chain:o="solana:mainnet",address:c})=>{async function l(e){let{signature:n}=await a({message:W(e),address:c,options:{...r,uiOptions:{...r?.uiOptions,showWalletUIs:!1}}});return{signedTransaction:he(e,c,n)}}return e({showWalletUIs:r?.uiOptions?.showWalletUIs})?l(i):new Promise((async(e,a)=>{let d=f(s,c);if("privy"!==d?.walletClientType)return void a(new u("Wallet is not a Privy wallet",void 0,g.EMBEDDED_WALLET_NOT_FOUND));let{entropyId:h,entropyIdVerifier:p}=m(s,d),A=w(d);function y(e){return n=>{a(n instanceof u?n:new u("Failed to connect to wallet",n,e))}}let v={account:d,transaction:i,chain:o,signOnly:!0,uiOptions:r?.uiOptions||{},onConfirm:l,onSuccess:e,onFailure:y(g.TRANSACTION_FAILURE)};t({connectWallet:{recoveryMethod:d.recoveryMethod,connectingWalletAddress:d.address,entropyId:h,entropyIdVerifier:p,isUnifiedWallet:A,onCompleteNavigateTo:"StandardSignAndSendTransactionScreen",onFailure:y(g.UNKNOWN_CONNECT_WALLET_ERROR)},standardSignAndSendTransaction:v}),n("EmbeddedWalletConnectingScreen")}))}}}let we=new class extends b{setImplementation(e){C(this,D)[D]=e}async signMessage(e){return C(this,D)[D].signMessage(e)}async signAndSendTransaction(e){return C(this,D)[D].signAndSendTransaction(e)}async signTransaction(e){return C(this,D)[D].signTransaction(e)}constructor(e){super(),Object.defineProperty(this,D,{writable:!0,value:void 0}),C(this,D)[D]=e}}({signTransaction:h("signTransaction was not injected"),signAndSendTransaction:h("signAndSendTransaction was not injected"),signMessage:h("signMessage was not injected")}),Ae=new class{get version(){return Y(this,z)[z]}get name(){return Y(this,q)[q]}get icon(){return Y(this,X)[X]}get chains(){return P.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:Y(this,re)[re]},"standard:disconnect":{version:"1.0.0",disconnect:Y(this,oe)[oe]},"standard:events":{version:"1.0.0",on:Y(this,te)[te]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:Y(this,le)[le]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:Y(this,de)[de]},"solana:signMessage":{version:"1.0.0",signMessage:Y(this,ce)[ce]},"privy:":{privy:{signMessage:Y(this,$)[$].signMessage,signTransaction:Y(this,$)[$].signTransaction,signAndSendTransaction:Y(this,$)[$].signAndSendTransaction}}}}get accounts(){return Y(this,ne)[ne].slice()}get isPrivyWallet(){return Y(this,ee)[ee]}constructor({name:e,icon:n,version:t,injection:a,wallets:s}){Object.defineProperty(this,ae,{value:ue}),Object.defineProperty(this,se,{value:ge}),Object.defineProperty(this,Z,{writable:!0,value:void 0}),Object.defineProperty(this,z,{writable:!0,value:void 0}),Object.defineProperty(this,q,{writable:!0,value:void 0}),Object.defineProperty(this,X,{writable:!0,value:void 0}),Object.defineProperty(this,$,{writable:!0,value:void 0}),Object.defineProperty(this,ee,{writable:!0,value:void 0}),Object.defineProperty(this,ne,{writable:!0,value:void 0}),Object.defineProperty(this,te,{writable:!0,value:void 0}),Object.defineProperty(this,ie,{writable:!0,value:void 0}),Object.defineProperty(this,re,{writable:!0,value:void 0}),Object.defineProperty(this,oe,{writable:!0,value:void 0}),Object.defineProperty(this,ce,{writable:!0,value:void 0}),Object.defineProperty(this,le,{writable:!0,value:void 0}),Object.defineProperty(this,de,{writable:!0,value:void 0}),Y(this,Z)[Z]={},Y(this,te)[te]=(e,n)=>(Y(this,Z)[Z][e]?.push(n)||(Y(this,Z)[Z][e]=[n]),()=>Y(this,se)[se](e,n)),Y(this,ie)[ie]=e=>{null!=e&&(Y(this,ne)[ne]=e.map((({address:e})=>new J({address:e,publicKey:O.decode(e)})))),Y(this,ae)[ae]("change",{accounts:this.accounts})},Y(this,re)[re]=async()=>(Y(this,ae)[ae]("change",{accounts:this.accounts}),{accounts:this.accounts}),Y(this,oe)[oe]=async()=>{Y(this,ae)[ae]("change",{accounts:this.accounts})},Y(this,ce)[ce]=async(...e)=>{let n=[];for(let{account:t,...a}of e){let{signature:e}=await Y(this,$)[$].signMessage({...a,address:t.address});n.push({signedMessage:a.message,signature:e})}return n},Y(this,le)[le]=async(...e)=>{let n=[];for(let t of e){let{signature:e}=await Y(this,$)[$].signAndSendTransaction({...t,transaction:t.transaction,address:t.account.address,chain:t.chain||"solana:mainnet",options:t.options});n.push({signature:e})}return n},Y(this,de)[de]=async(...e)=>{let n=[];for(let{transaction:t,account:a,options:s,chain:i}of e){let{signedTransaction:e}=await Y(this,$)[$].signTransaction({transaction:t,address:a.address,chain:i||"solana:mainnet",options:s});n.push({signedTransaction:e})}return n},Y(this,q)[q]=e,Y(this,X)[X]=n,Y(this,z)[z]=t,Y(this,$)[$]=a,Y(this,ne)[ne]=[],Y(this,ee)[ee]=!0,a.on("accountChanged",Y(this,ie)[ie],this),Y(this,ie)[ie](s)}}({name:"Privy",version:"1.0.0",icon:"data:image/png;base64,AAABAAEAFBQAAAAAIABlAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAUAAAAFAgGAAAAjYkdDQAAAAlwSFlzAAAOwwAADsMBx2+oZAAAAQVJREFUeJxiYMANZIC4E4ivAPFPIP4FxDeAuB+IlfDowwBMQFwJxF+B+D8O/AOI66Bq8QJGIF6ExyB0vAqImfEZmEeCYTDcgMswPiB+T4aB34FYApuBsWQYBsP52AycToGBK7EZuJECAw9jM3AVBQbuwWZgIwUGTsZmoDkFBnpiMxAEjpJh2FV8iVsbiD+TYBgoDVrgMgwGnID4HRGGgTKBGyHDYEAaiBdCSxh0g/5AU4Q8sYYhAzEgjoGmABBOgFo2eACowFABYn0oVgViAVINkQTiZUD8DIj/ATF6GILEXgLxCiCWIsZAbiAuBeKtQHwHiEHJ6C8UfwHie0C8E4jLoWpRAAAAAP//rcbhsQAAAAZJREFUAwBYFs3VKJ0cuQAAAABJRU5ErkJggg==",wallets:[],injection:we});function ye(){let{ready:e}=T(),{user:n}=v(),{signMessage:t}=pe(),{signTransaction:a}=fe(),{signAndSendTransaction:r}=function(){let e=S(),{isHeadlessSigning:n,openModal:t}=d(),{setModalData:a}=p(),{signTransaction:s}=fe(),i=M(),{user:r}=v(),{signWithUserSigner:l}=_();return{signAndSendTransaction:async({transaction:d,address:h,chain:p="solana:mainnet",options:A})=>{let y=f(r,h);if("privy"!==y?.walletClientType)throw new u("Wallet is not a Privy wallet",void 0,g.EMBEDDED_WALLET_NOT_FOUND);let v=w(y);async function T(n){if(A?.sponsor)return await(async n=>{if(!v)throw new u("Sponsoring transactions is only supported for wallets on the TEE stack",g.INVALID_DATA);let t=new o({appId:e.id,clientId:e.appClientId,storage:I}),a=await c(t,l,{chain_type:"solana",method:"signAndSendTransaction",sponsor:!0,params:{transaction:j(n).toString("base64"),encoding:"base64"},caip2:`solana:${(await i(p).rpc.getGenesisHash().send()).substring(0,32)}`,wallet_id:y.id});if(a.data&&"hash"in a.data)return{signature:O.decode(a.data.hash)};throw Error("Failed to sign and send transaction")})(n);let{signedTransaction:t}=await s({transaction:n,address:h,chain:p,options:{...A,uiOptions:{...A?.uiOptions,showWalletUIs:!1}}}),{signature:a}=await i(p).sendAndConfirmTransaction(t);return{signature:a}}return n({showWalletUIs:A?.uiOptions?.showWalletUIs})?T(d):new Promise((async(n,s)=>{let i,o,{entropyId:c,entropyIdVerifier:l}=m(r,y);function f(e){return n=>{s(n instanceof u?n:new u("Failed to connect to wallet",n,e))}}let w={account:y,transaction:d,chain:p,signOnly:!1,uiOptions:A?.uiOptions||{},onConfirm:T,onSuccess:n,onFailure:f(g.TRANSACTION_FAILURE),isSponsored:!!A?.sponsor},b={recoveryMethod:y.recoveryMethod,connectingWalletAddress:y.address,entropyId:c,entropyIdVerifier:l,isUnifiedWallet:v,onCompleteNavigateTo:"StandardSignAndSendTransactionScreen",onFailure:f(g.UNKNOWN_CONNECT_WALLET_ERROR)};e.fundingConfig&&(i=E({address:h,appConfig:e,methodScreen:"FundingMethodSelectionScreen",fundWalletConfig:{...A,asset:"native-currency",chain:p},externalSolanaFundingScreen:"FundSolWalletWithExternalSolanaWallet"}),o={amount:e.fundingConfig.defaultRecommendedAmount,asset:"SOL",chain:p,destinationAddress:h,afterSuccessScreen:"StandardSignAndSendTransactionScreen",sourceWalletData:void 0}),a({connectWallet:b,standardSignAndSendTransaction:w,funding:i,solanaFundingData:o}),t("EmbeddedWalletConnectingScreen")}))}}}(),l=s((()=>{let e=[...A(n).sort(((e,n)=>(e.walletIndex??0)-(n.walletIndex??0)))],t=y(n);return t.length?[...e,...t]:e}),[n]),h=s((()=>({signMessage:async({message:e,address:n,options:a})=>await t({message:e,address:n,options:a}),signTransaction:async({transaction:e,address:n,chain:t,options:s})=>await a({transaction:e,address:n,chain:t,options:s}),async signAndSendTransaction({transaction:e,address:n,chain:t,options:a}){let{signature:s}=await r({transaction:e,address:n,chain:t,options:a});return{signature:s}}})),[t,a,r]);return i((()=>{we?.setImplementation(h)}),[h]),i((()=>{var n;!e||(n=Ae.accounts).length===l.length&&n.every(((e,n)=>e.address===l[n]?.address))||we?.emit("accountChanged",l)}),[e,l]),{ready:e,wallet:Ae}}function ve(){let{client:e}=d(),{ready:n,wallet:t}=ye(),[a,s]=r([]),[o,c]=r([]);return i((()=>{let e=[t,...a.filter((e=>"solana"===e.chainType&&!!e.wallet.features)).map((e=>e.wallet))];c(e);let n=a.flatMap((n=>{let t=()=>c([...e]);return n.on("walletsUpdated",t),{connector:n,off:t}})),s=e.map((n=>n.features["standard:events"]?.on("change",(()=>{c([...e])}))));return()=>{s.forEach((e=>e?.())),n.forEach((({connector:e,off:n})=>e.off("walletsUpdated",n)))}}),[a]),i((()=>{s(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[]);let n=()=>{s(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[])};return e.connectors?.on("connectorInitialized",n),()=>{e.connectors?.off("connectorInitialized",n)}}),[n,e.connectors]),{ready:n,wallets:o}}function me(){let{ready:e,wallets:n}=ve();return{ready:e,wallets:s((()=>n.flatMap((e=>e.accounts.map((n=>new l({wallet:e,account:n})))))),[n])}}export{P as S,ve as a,F as g,me as u};
1
+ import{getBase58Decoder as e,getTransactionDecoder as n,address as t,getTransactionEncoder as a}from"@solana/kit";import{useMemo as s,useEffect as i,useState as r}from"react";import o,{rpc as c,ConnectedStandardSolanaWallet as l}from"@privy-io/js-sdk-core";import{u as d,a as u,b as g,l as h}from"./internal-context-e-Eni5bG.mjs";import{a as p,h as f,d as w,o as A,j as y}from"./get-is-unified-wallet-DvKS5IUO.mjs";import{u as v}from"./usePrivy-BaiIHGte.mjs";import{g as m,u as T}from"./useWallets-D0lpBS44.mjs";import b from"eventemitter3";import{base58 as O}from"@scure/base";import{u as S}from"./context-Bycd1SKV.mjs";import{u as _}from"./use-sign-with-user-signer-eEm9Olt_.mjs";import{g as E,u as I}from"./prepareFundingModalData-CIgFwA7s.mjs";import{b as j,a as W,u as M}from"./useSolanaRpcClient-DW9Xaoo_.mjs";const P=["solana:mainnet","solana:devnet","solana:testnet"];function F(n){return e().decode(n)}function C(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var U=0,D="__private_"+U+++"__implementation";function N(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var B=0;function R(e){return"__private_"+B+++"_"+e}var x=/*#__PURE__*/R("_address"),L=/*#__PURE__*/R("_publicKey"),V=/*#__PURE__*/R("_chains"),Q=/*#__PURE__*/R("_features"),G=/*#__PURE__*/R("_label"),K=/*#__PURE__*/R("_icon");class J{get address(){return N(this,x)[x]}get publicKey(){return N(this,L)[L].slice()}get chains(){return N(this,V)[V].slice()}get features(){return N(this,Q)[Q].slice()}get label(){return N(this,G)[G]}get icon(){return N(this,K)[K]}constructor({address:e,publicKey:n,label:t,icon:a}){Object.defineProperty(this,x,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),Object.defineProperty(this,V,{writable:!0,value:void 0}),Object.defineProperty(this,Q,{writable:!0,value:void 0}),Object.defineProperty(this,G,{writable:!0,value:void 0}),Object.defineProperty(this,K,{writable:!0,value:void 0}),N(this,x)[x]=e,N(this,L)[L]=n,N(this,V)[V]=P,N(this,G)[G]=t,N(this,K)[K]=a,N(this,Q)[Q]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],new.target===J&&Object.freeze(this)}}function Y(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var k=0;function H(e){return"__private_"+k+++"_"+e}var Z=/*#__PURE__*/H("_listeners"),z=/*#__PURE__*/H("_version"),q=/*#__PURE__*/H("_name"),X=/*#__PURE__*/H("_icon"),$=/*#__PURE__*/H("_injection"),ee=/*#__PURE__*/H("_isPrivyWallet"),ne=/*#__PURE__*/H("_accounts"),te=/*#__PURE__*/H("_on"),ae=/*#__PURE__*/H("_emit"),se=/*#__PURE__*/H("_off"),ie=/*#__PURE__*/H("_connected"),re=/*#__PURE__*/H("_connect"),oe=/*#__PURE__*/H("_disconnect"),ce=/*#__PURE__*/H("_signMessage"),le=/*#__PURE__*/H("_signAndSendTransaction"),de=/*#__PURE__*/H("_signTransaction");function ue(e,...n){Y(this,Z)[Z][e]?.forEach((e=>e.apply(null,n)))}function ge(e,n){Y(this,Z)[Z][e]=Y(this,Z)[Z][e]?.filter((e=>n!==e))}function he(e,s,i){let r=structuredClone(n().decode(e)),o=t(s);return o in r.signatures&&(r.signatures[o]=i),new Uint8Array(a().encode(r))}function pe(){let{isHeadlessSigning:e,walletProxy:n,initializeWalletProxy:t,recoverEmbeddedWallet:a,openModal:s,privy:i,client:r}=d(),{user:o}=v(),{setModalData:l}=p(),{signWithUserSigner:h}=_();return{signMessage:({message:d,address:p,options:A})=>new Promise((async(y,v)=>{let T=f(o,p);if("privy"!==T?.walletClientType)return void v(new u("Wallet is not a Privy wallet",void 0,g.EMBEDDED_WALLET_NOT_FOUND));let{entropyId:b,entropyIdVerifier:O}=m(o,T),S=w(T),_=j(d).toString("base64");if(_.length<1)return void v(new u("Message must be a non-empty string",void 0,g.INVALID_MESSAGE));let E=async()=>{let e;if(!o)throw Error("User must be authenticated before signing with a Privy wallet");let s=await r.getAccessToken();if(!s)throw Error("User must be authenticated to use their embedded wallet.");let l=n??await t(15e3);if(!l)throw Error("Failed to initialize embedded wallet proxy.");if(!await a({address:T.address}))throw Error("Unable to connect to wallet");if(S){let n=await c(i,h,{chain_type:"solana",method:"signMessage",params:{message:_,encoding:"base64"},wallet_id:T.id});if(!n.data||!("signature"in n.data))throw Error("Failed to sign message");e=n.data.signature}else{let{response:n}=await l.rpc({accessToken:s,entropyId:b,entropyIdVerifier:O,chainType:"solana",hdWalletIndex:T.walletIndex??0,requesterAppId:A?.uiOptions?.requesterAppId,request:{method:"signMessage",params:{message:_}}});e=n.data.signature}return e};if(e({showWalletUIs:A?.uiOptions?.showWalletUIs}))try{let e=await E(),n=new Uint8Array(j(e,"base64"));y({signature:n})}catch(e){v(e)}else l({signMessage:{method:"solana_signMessage",data:_,confirmAndSign:E,onSuccess:e=>{y({signature:new Uint8Array(j(e,"base64"))})},onFailure:e=>{v(e)},uiOptions:A?.uiOptions??{}},connectWallet:{recoveryMethod:T.recoveryMethod,connectingWalletAddress:T.address,entropyId:b,entropyIdVerifier:O,isUnifiedWallet:S,onCompleteNavigateTo:"SignRequestScreen",onFailure:e=>{v(new u("Failed to connect to wallet",e,g.UNKNOWN_CONNECT_WALLET_ERROR))}}}),s("EmbeddedWalletConnectingScreen")}))}}function fe(){let{isHeadlessSigning:e,openModal:n}=d(),{setModalData:t}=p(),{signMessage:a}=pe(),{user:s}=v();return{signTransaction:async({transaction:i,options:r,chain:o="solana:mainnet",address:c})=>{async function l(e){let{signature:n}=await a({message:W(e),address:c,options:{...r,uiOptions:{...r?.uiOptions,showWalletUIs:!1}}});return{signedTransaction:he(e,c,n)}}return e({showWalletUIs:r?.uiOptions?.showWalletUIs})?l(i):new Promise((async(e,a)=>{let d=f(s,c);if("privy"!==d?.walletClientType)return void a(new u("Wallet is not a Privy wallet",void 0,g.EMBEDDED_WALLET_NOT_FOUND));let{entropyId:h,entropyIdVerifier:p}=m(s,d),A=w(d);function y(e){return n=>{a(n instanceof u?n:new u("Failed to connect to wallet",n,e))}}let v={account:d,transaction:i,chain:o,signOnly:!0,uiOptions:r?.uiOptions||{},onConfirm:l,onSuccess:e,onFailure:y(g.TRANSACTION_FAILURE)};t({connectWallet:{recoveryMethod:d.recoveryMethod,connectingWalletAddress:d.address,entropyId:h,entropyIdVerifier:p,isUnifiedWallet:A,onCompleteNavigateTo:"StandardSignAndSendTransactionScreen",onFailure:y(g.UNKNOWN_CONNECT_WALLET_ERROR)},standardSignAndSendTransaction:v}),n("EmbeddedWalletConnectingScreen")}))}}}let we=new class extends b{setImplementation(e){C(this,D)[D]=e}async signMessage(e){return C(this,D)[D].signMessage(e)}async signAndSendTransaction(e){return C(this,D)[D].signAndSendTransaction(e)}async signTransaction(e){return C(this,D)[D].signTransaction(e)}constructor(e){super(),Object.defineProperty(this,D,{writable:!0,value:void 0}),C(this,D)[D]=e}}({signTransaction:h("signTransaction was not injected"),signAndSendTransaction:h("signAndSendTransaction was not injected"),signMessage:h("signMessage was not injected")}),Ae=new class{get version(){return Y(this,z)[z]}get name(){return Y(this,q)[q]}get icon(){return Y(this,X)[X]}get chains(){return P.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:Y(this,re)[re]},"standard:disconnect":{version:"1.0.0",disconnect:Y(this,oe)[oe]},"standard:events":{version:"1.0.0",on:Y(this,te)[te]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:Y(this,le)[le]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:Y(this,de)[de]},"solana:signMessage":{version:"1.0.0",signMessage:Y(this,ce)[ce]},"privy:":{privy:{signMessage:Y(this,$)[$].signMessage,signTransaction:Y(this,$)[$].signTransaction,signAndSendTransaction:Y(this,$)[$].signAndSendTransaction}}}}get accounts(){return Y(this,ne)[ne].slice()}get isPrivyWallet(){return Y(this,ee)[ee]}constructor({name:e,icon:n,version:t,injection:a,wallets:s}){Object.defineProperty(this,ae,{value:ue}),Object.defineProperty(this,se,{value:ge}),Object.defineProperty(this,Z,{writable:!0,value:void 0}),Object.defineProperty(this,z,{writable:!0,value:void 0}),Object.defineProperty(this,q,{writable:!0,value:void 0}),Object.defineProperty(this,X,{writable:!0,value:void 0}),Object.defineProperty(this,$,{writable:!0,value:void 0}),Object.defineProperty(this,ee,{writable:!0,value:void 0}),Object.defineProperty(this,ne,{writable:!0,value:void 0}),Object.defineProperty(this,te,{writable:!0,value:void 0}),Object.defineProperty(this,ie,{writable:!0,value:void 0}),Object.defineProperty(this,re,{writable:!0,value:void 0}),Object.defineProperty(this,oe,{writable:!0,value:void 0}),Object.defineProperty(this,ce,{writable:!0,value:void 0}),Object.defineProperty(this,le,{writable:!0,value:void 0}),Object.defineProperty(this,de,{writable:!0,value:void 0}),Y(this,Z)[Z]={},Y(this,te)[te]=(e,n)=>(Y(this,Z)[Z][e]?.push(n)||(Y(this,Z)[Z][e]=[n]),()=>Y(this,se)[se](e,n)),Y(this,ie)[ie]=e=>{null!=e&&(Y(this,ne)[ne]=e.map((({address:e})=>new J({address:e,publicKey:O.decode(e)})))),Y(this,ae)[ae]("change",{accounts:this.accounts})},Y(this,re)[re]=async()=>(Y(this,ae)[ae]("change",{accounts:this.accounts}),{accounts:this.accounts}),Y(this,oe)[oe]=async()=>{Y(this,ae)[ae]("change",{accounts:this.accounts})},Y(this,ce)[ce]=async(...e)=>{let n=[];for(let{account:t,...a}of e){let{signature:e}=await Y(this,$)[$].signMessage({...a,address:t.address});n.push({signedMessage:a.message,signature:e})}return n},Y(this,le)[le]=async(...e)=>{let n=[];for(let t of e){let{signature:e}=await Y(this,$)[$].signAndSendTransaction({...t,transaction:t.transaction,address:t.account.address,chain:t.chain||"solana:mainnet",options:t.options});n.push({signature:e})}return n},Y(this,de)[de]=async(...e)=>{let n=[];for(let{transaction:t,account:a,options:s,chain:i}of e){let{signedTransaction:e}=await Y(this,$)[$].signTransaction({transaction:t,address:a.address,chain:i||"solana:mainnet",options:s});n.push({signedTransaction:e})}return n},Y(this,q)[q]=e,Y(this,X)[X]=n,Y(this,z)[z]=t,Y(this,$)[$]=a,Y(this,ne)[ne]=[],Y(this,ee)[ee]=!0,a.on("accountChanged",Y(this,ie)[ie],this),Y(this,ie)[ie](s)}}({name:"Privy",version:"1.0.0",icon:"data:image/png;base64,AAABAAEAFBQAAAAAIABlAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAUAAAAFAgGAAAAjYkdDQAAAAlwSFlzAAAOwwAADsMBx2+oZAAAAQVJREFUeJxiYMANZIC4E4ivAPFPIP4FxDeAuB+IlfDowwBMQFwJxF+B+D8O/AOI66Bq8QJGIF6ExyB0vAqImfEZmEeCYTDcgMswPiB+T4aB34FYApuBsWQYBsP52AycToGBK7EZuJECAw9jM3AVBQbuwWZgIwUGTsZmoDkFBnpiMxAEjpJh2FV8iVsbiD+TYBgoDVrgMgwGnID4HRGGgTKBGyHDYEAaiBdCSxh0g/5AU4Q8sYYhAzEgjoGmABBOgFo2eACowFABYn0oVgViAVINkQTiZUD8DIj/ATF6GILEXgLxCiCWIsZAbiAuBeKtQHwHiEHJ6C8UfwHie0C8E4jLoWpRAAAAAP//rcbhsQAAAAZJREFUAwBYFs3VKJ0cuQAAAABJRU5ErkJggg==",wallets:[],injection:we});function ye(){let{ready:e}=T(),{user:n}=v(),{signMessage:t}=pe(),{signTransaction:a}=fe(),{signAndSendTransaction:r}=function(){let e=S(),{isHeadlessSigning:n,openModal:t}=d(),{setModalData:a}=p(),{signTransaction:s}=fe(),i=M(),{user:r}=v(),{signWithUserSigner:l}=_();return{signAndSendTransaction:async({transaction:d,address:h,chain:p="solana:mainnet",options:A})=>{let y=f(r,h);if("privy"!==y?.walletClientType)throw new u("Wallet is not a Privy wallet",void 0,g.EMBEDDED_WALLET_NOT_FOUND);let v=w(y);async function T(n){if(A?.sponsor)return await(async n=>{if(!v)throw new u("Sponsoring transactions is only supported for wallets on the TEE stack",g.INVALID_DATA);let t=new o({appId:e.id,clientId:e.appClientId,storage:I}),a=await c(t,l,{chain_type:"solana",method:"signAndSendTransaction",sponsor:!0,params:{transaction:j(n).toString("base64"),encoding:"base64"},caip2:`solana:${(await i(p).rpc.getGenesisHash().send()).substring(0,32)}`,wallet_id:y.id});if(a.data&&"hash"in a.data)return{signature:O.decode(a.data.hash)};throw Error("Failed to sign and send transaction")})(n);let{signedTransaction:t}=await s({transaction:n,address:h,chain:p,options:{...A,uiOptions:{...A?.uiOptions,showWalletUIs:!1}}}),{signature:a}=await i(p).sendAndConfirmTransaction(t);return{signature:a}}return n({showWalletUIs:A?.uiOptions?.showWalletUIs})?T(d):new Promise((async(n,s)=>{let i,o,{entropyId:c,entropyIdVerifier:l}=m(r,y);function f(e){return n=>{s(n instanceof u?n:new u("Failed to connect to wallet",n,e))}}let w={account:y,transaction:d,chain:p,signOnly:!1,uiOptions:A?.uiOptions||{},onConfirm:T,onSuccess:n,onFailure:f(g.TRANSACTION_FAILURE),isSponsored:!!A?.sponsor},b={recoveryMethod:y.recoveryMethod,connectingWalletAddress:y.address,entropyId:c,entropyIdVerifier:l,isUnifiedWallet:v,onCompleteNavigateTo:"StandardSignAndSendTransactionScreen",onFailure:f(g.UNKNOWN_CONNECT_WALLET_ERROR)};e.fundingConfig&&(i=E({address:h,appConfig:e,methodScreen:"FundingMethodSelectionScreen",fundWalletConfig:{...A,asset:"native-currency",chain:p},externalSolanaFundingScreen:"FundSolWalletWithExternalSolanaWallet"}),o={amount:e.fundingConfig.defaultRecommendedAmount,asset:"SOL",chain:p,destinationAddress:h,afterSuccessScreen:"StandardSignAndSendTransactionScreen",sourceWalletData:void 0}),a({connectWallet:b,standardSignAndSendTransaction:w,funding:i,solanaFundingData:o}),t("EmbeddedWalletConnectingScreen")}))}}}(),l=s((()=>{let e=[...A(n).sort(((e,n)=>(e.walletIndex??0)-(n.walletIndex??0)))],t=y(n);return t.length?[...e,...t]:e}),[n]),h=s((()=>({signMessage:async({message:e,address:n,options:a})=>await t({message:e,address:n,options:a}),signTransaction:async({transaction:e,address:n,chain:t,options:s})=>await a({transaction:e,address:n,chain:t,options:s}),async signAndSendTransaction({transaction:e,address:n,chain:t,options:a}){let{signature:s}=await r({transaction:e,address:n,chain:t,options:a});return{signature:s}}})),[t,a,r]);return i((()=>{we?.setImplementation(h)}),[h]),i((()=>{var n;!e||(n=Ae.accounts).length===l.length&&n.every(((e,n)=>e.address===l[n]?.address))||we?.emit("accountChanged",l)}),[e,l]),{ready:e,wallet:Ae}}function ve(){let{client:e}=d(),{ready:n,wallet:t}=ye(),[a,s]=r([]),[o,c]=r([]);return i((()=>{let e=[t,...a.filter((e=>"solana"===e.chainType&&!!e.wallet.features)).map((e=>e.wallet))];c(e);let n=a.flatMap((n=>{let t=()=>c([...e]);return n.on("walletsUpdated",t),{connector:n,off:t}})),s=e.map((n=>n.features["standard:events"]?.on("change",(()=>{c([...e])}))));return()=>{s.forEach((e=>e?.())),n.forEach((({connector:e,off:n})=>e.off("walletsUpdated",n)))}}),[a]),i((()=>{s(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[]);let n=()=>{s(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[])};return e.connectors?.on("connectorInitialized",n),()=>{e.connectors?.off("connectorInitialized",n)}}),[n,e.connectors]),{ready:n,wallets:o}}function me(){let{ready:e,wallets:n}=ve();return{ready:e,wallets:s((()=>n.flatMap((e=>e.accounts.map((n=>new l({wallet:e,account:n})))))),[n])}}export{P as S,ve as a,F as g,me as u};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@privy-io/react-auth",
3
- "version": "3.9.0",
3
+ "version": "3.9.1",
4
4
  "description": "React client for the Privy Auth API",
5
5
  "keywords": [
6
6
  "authentication",
@@ -169,8 +169,8 @@
169
169
  "@privy-io/api-base": "1.7.3",
170
170
  "@privy-io/api-types": "0.3.4",
171
171
  "@privy-io/chains": "0.0.5",
172
- "@privy-io/ethereum": "0.0.3",
173
- "@privy-io/js-sdk-core": "0.58.3",
172
+ "@privy-io/ethereum": "0.0.4",
173
+ "@privy-io/js-sdk-core": "0.58.4",
174
174
  "@privy-io/popup": "0.0.1",
175
175
  "@privy-io/routes": "0.0.4",
176
176
  "@privy-io/urls": "*",
@@ -195,7 +195,7 @@
195
195
  "stylis": "^4.3.4",
196
196
  "tinycolor2": "^1.6.0",
197
197
  "uuid": ">=8 <10",
198
- "viem": "^2.38.6",
198
+ "viem": "^2.42.1",
199
199
  "x402": "^0.7.1",
200
200
  "zustand": "^5.0.0"
201
201
  },
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("./context-Dn8Hzo8O.js"),i=require("./CustomLandingScreenView-ClPdt2GY.js");require("react"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("@heroicons/react/24/outline/UserCircleIcon"),require("styled-components"),require("./ModalHeader-4MV7Tgk7.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./internal-context-NWsAL807.js"),require("ofetch"),require("./get-is-unified-wallet-CHHPpmxX.js"),require("viem"),require("./index-4-C2N_7K.js"),require("uuid"),require("jose"),require("eventemitter3"),require("./useActiveWallet-B5cSS56I.js"),require("zustand"),require("react-device-detect"),require("./prepareFundingModalData-Bap-QRCV.js"),require("./events-context-Di6--rDg.js"),require("viem/utils"),require("./getPublicClient-CGlodIp_.js"),require("./useWallets-DPdw6ah8.js"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-DobNyfbl.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("js-cookie"),require("./frame-B14fp9oC.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-BcAsQTGF.js"),require("./getEmbeddedConnectedWallet-6TsVZJkD.js"),require("lucide-react"),require("./ConnectEmailForm-DeN1Pg_E.js"),require("./Button-DpuRzAgk.js"),require("./Chip-ChrHHazc.js"),require("./LoadingSkeleton-DoCrfGnl.js"),require("./EmailInputForm-tjrhBacA.js"),require("./ErrorMessage-f0cRWc29.js"),require("./farcaster-CWHXGAib.js"),require("./ConnectWalletView-B33uROyL.js"),require("@heroicons/react/24/outline"),require("@tanstack/react-virtual"),require("@heroicons/react/24/outline/CheckIcon"),require("./copy-BiZ7dtqy.js"),require("./QrCode-DvJPyneT.js"),require("qrcode"),require("./useI18n-D21RT6EH.js"),require("./WalletCards-BfpeHH5n.js"),require("./Screen-CJM19YNL.js"),require("./index-CRFXS9pP.js"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("./Link-DmzPZ_M7.js"),require("./ConnectPhoneForm-CIaHyHT9.js"),require("./twitter-BVVRWkcG.js"),require("./twitch-BNvhZb2Y.js"),require("./telegram-D3O0_F1a.js"),require("./WalletButtonList-C6cavPqd.js"),require("./InjectedWalletIcon-UY3nMvZo.js"),require("@heroicons/react/24/outline/WalletIcon"),require("./ScreenLayout-Bbhw-EIr.js");const u={component:()=>{let u=r.useAppConfig();return u.loginMethodsAndOrder&&u.loginMethodsAndOrder.primary.length>0?/*#__PURE__*/e.jsx(i.CustomLandingScreenView,{connectOnly:!0}):/*#__PURE__*/e.jsx(i.LandingScreenView,{connectOnly:!0})}};exports.ConnectOrCreateScreen=u,exports.default=u;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),n=require("@heroicons/react/24/outline"),t=require("@tanstack/react-virtual"),i=require("react"),l=require("react-device-detect"),a=require("styled-components"),o=require("./Button-DpuRzAgk.js"),r=require("@heroicons/react/24/outline/CheckIcon"),s=require("./copy-BiZ7dtqy.js"),c=require("./ModalHeader-4MV7Tgk7.js"),d=require("./QrCode-DvJPyneT.js"),h=require("./EmailInputForm-tjrhBacA.js"),p=require("./context-Dn8Hzo8O.js"),u=require("./useI18n-D21RT6EH.js"),m=require("./useActiveWallet-B5cSS56I.js"),g=require("./internal-context-NWsAL807.js"),y=require("./WalletCards-BfpeHH5n.js"),w=require("./prepareFundingModalData-Bap-QRCV.js"),f=require("./Screen-CJM19YNL.js");function v(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var x=/*#__PURE__*/v(r);let b=/*#__PURE__*/a.styled.button.withConfig({displayName:"CopyTextButton",componentId:"sc-4b0620dc-0"})(["display:flex;align-items:center;gap:0.5rem;&:hover{text-decoration:underline;}svg{width:0.875rem;height:0.875rem;}"]),C=/*#__PURE__*/a.styled.span.withConfig({displayName:"CopiedText",componentId:"sc-4b0620dc-1"})(["display:flex;align-items:center;gap:0.25rem;font-size:0.875rem;color:var(--privy-color-foreground-2);"]),j=/*#__PURE__*/a.styled(x.default).withConfig({displayName:"GreenCheck",componentId:"sc-4b0620dc-2"})(["color:var(--privy-color-success);"]),W=/*#__PURE__*/a.styled(s.Copy).withConfig({displayName:"StyledCopy",componentId:"sc-4b0620dc-3"})(["color:var(--privy-color-foreground-3);opactiy:0.5;"]);function T({children:n,iconOnly:t,value:l,hideCopyIcon:a,...o}){let[r,s]=i.useState(!1);/*#__PURE__*/return e.jsxs(b,{...o,onClick:()=>{navigator.clipboard.writeText(l||n).catch(console.error),s(!0),setTimeout((()=>s(!1)),1500)},children:[n," ",r?/*#__PURE__*/e.jsxs(C,{children:[/*#__PURE__*/e.jsx(j,{})," ",!t&&"Copied"]}):!a&&/*#__PURE__*/e.jsx(W,{})]})}const k={phantom:{mobile:{native:"phantom://",universal:"https://phantom.app/ul/"}},solflare:{mobile:{native:void 0,universal:"https://solflare.com/ul/v1/"}},metamask:{image_url:{sm:m.Metamask,md:m.Metamask}}};class _{static normalize(e){return e.replace(/[-_]wallet$/,"").replace(/[-_]extension$/,"").toLowerCase()}isEth(e){return e.chains.some((e=>e.startsWith("eip155:")))}isSol(e){return e.chains.some((e=>e.startsWith("solana:")))}inAllowList(e,n){if(!this.normalizedAllowList||0===this.normalizedAllowList.length||"listing"===n&&this.includeWalletConnect)return!0;let t=_.normalize(e);return this.normalizedAllowList.some((e=>t===_.normalize(e)))}inDenyList(e,n){return"listing"===n&&"rabby"===e}chainMatches(e){return"ethereum-only"===this.chainFilter?"ethereum"===e:"solana-only"!==this.chainFilter||"solana"===e}connectorOk(e){return!!("null"!==e.connectorType&&"walletconnect_solana"!==e.walletBranding.id&&this.chainMatches(e.chainType)&&(this.inAllowList(e.walletClientType,"connector")||("injected"===e.connectorType||"solana_adapter"===e.connectorType)&&("ethereum"===e.chainType&&this.detectedEth||"solana"===e.chainType&&this.detectedSol)))}listingOk(e){if(e.slug.includes("coinbase"))return!1;if("ethereum-only"===this.chainFilter){if(!this.isEth(e))return!1}else if("solana-only"===this.chainFilter&&!this.isSol(e))return!1;return!(!this.inAllowList(e.slug,"listing")||this.inDenyList(e.slug,"listing"))}getWallets(e,n){let t=new Map,i=e=>{let n=t.get(e.id);if(n){n.chainType!==e.chainType&&(n.chainType="multi");let t=new Set(n.chains);e.chains.forEach((e=>t.add(e))),n.chains=Array.from(t),!n.icon&&e.icon&&(n.icon=e.icon),!n.url&&e.url&&(n.url=e.url),!n.listing&&e.listing&&(n.listing=e.listing)}else t.set(e.id,e)};e.filter((e=>this.connectorOk(e))).forEach((e=>{let n=_.normalize(e.walletClientType);i({id:n,label:e.walletBranding?.name??n,source:"connector",connector:e,chainType:e.chainType,icon:e.walletBranding?.icon,url:void 0,chains:["ethereum"===e.chainType?"eip155":"solana"]})}));let l=e.find((e=>"wallet_connect_v2"===e.connectorType)),a=e.find((e=>"walletconnect_solana"===e.walletBranding.id));n.filter((e=>this.listingOk(e))).forEach((n=>{let t=[...n.chains].filter((e=>e.includes("eip155:")||e.includes("solana:")));if(e.some((e=>_.normalize(e.walletClientType)===_.normalize(n.slug)&&"ethereum"===e.chainType&&"null"!==e.connectorType))||l||n.mobile.native||n.mobile.universal||m.mobileWalletsConfig[n.slug]?.chainTypes.includes("ethereum")||(t=t.filter((e=>!e.startsWith("eip155")))),e.some((e=>_.normalize(e.walletClientType)===_.normalize(n.slug)&&"solana"===e.chainType&&"null"!==e.connectorType))||a||n.mobile.native||n.mobile.universal||m.mobileWalletsConfig[n.slug]?.chainTypes.includes("solana")||(t=t.filter((e=>!e.startsWith("solana")))),!t.length)return;let o=_.normalize(n.slug),r=k[n.slug],s=r?.image_url?.sm||n.image_url?.sm;t.some((e=>e.includes("eip155:")))&&i({id:o,label:n.name||o,source:"listing",listing:n,chainType:"ethereum",icon:s,url:n.homepage,chains:t}),t.some((e=>e.includes("solana:")))&&i({id:o,label:n.name||o,source:"listing",listing:n,chainType:"solana",icon:s,url:n.homepage,chains:t})})),this.includeWalletConnectQr&&l&&i({id:"wallet_connect_qr",label:"WalletConnect",source:"connector",connector:l,chainType:"ethereum",icon:w.WALLET_CONNECT_LOGO_DATA_URI,url:void 0,chains:["eip155"]}),this.includeWalletConnectQrSolana&&a&&i({id:"wallet_connect_qr_solana",label:"WalletConnect",source:"connector",connector:a,chainType:"solana",icon:w.WALLET_CONNECT_LOGO_DATA_URI,url:void 0,chains:["solana"]});let o=Array.from(t.values());o.forEach((e=>{let n=k[e.listing?.slug||e.id];n?.image_url?.sm&&(e.icon=n.image_url.sm)}));let r=new Map;return this.normalizedAllowList?.forEach(((e,n)=>{r.set(_.normalize(e),n)})),{wallets:o.slice().sort(((e,n)=>{let t=_.normalize(e.id),i=_.normalize(n.id);"binance-defi"===t?t="binance":"universalprofiles"===t?t="universal_profile":"cryptocom-defi"===t?t="cryptocom":"bitkeep"===t&&(t="bitget_wallet"),"binance-defi"===i?i="binance":"universalprofiles"===i?i="universal_profile":"cryptocom-defi"===i?i="cryptocom":"bitkeep"===i&&(i="bitget_wallet");let l=r.has(t),a=r.has(i);return l&&a?r.get(t)-r.get(i):l?-1:a?1:"connector"===e.source&&"listing"===n.source?-1:"listing"===e.source&&"connector"===n.source?1:e.label.toLowerCase().localeCompare(n.label.toLowerCase())})),walletCount:o.length}}constructor(e,n){this.chainFilter=e,n&&n.length>0&&(this.normalizedAllowList=n.map(String),this.normalizedAllowList.includes("binance")&&this.normalizedAllowList.push("binance-defi-wallet"),this.normalizedAllowList.includes("bitget_wallet")&&this.normalizedAllowList.push("bitkeep")),this.detectedEth=this.normalizedAllowList?.includes("detected_ethereum_wallets")??!1,this.detectedSol=this.normalizedAllowList?.includes("detected_solana_wallets")??!1,this.includeWalletConnect=this.normalizedAllowList?.includes("wallet_connect")??!1,this.includeWalletConnectQr=this.normalizedAllowList?.includes("wallet_connect_qr")??!1,this.includeWalletConnectQrSolana=this.normalizedAllowList?.includes("wallet_connect_qr_solana")??!1}}var S=n=>/*#__PURE__*/e.jsxs("svg",{viewBox:"0 0 32 32",xmlns:"http://www.w3.org/2000/svg",...n,children:[/*#__PURE__*/e.jsx("path",{d:"m0 0h32v32h-32z",fill:"#5469d4"}),/*#__PURE__*/e.jsx("path",{d:"m15.997 5.333-.143.486v14.106l.143.143 6.548-3.87z",fill:"#c2ccf4"}),/*#__PURE__*/e.jsx("path",{d:"m15.996 5.333-6.548 10.865 6.548 3.87z",fill:"#fff"}),/*#__PURE__*/e.jsx("path",{d:"m15.997 21.306-.08.098v5.025l.08.236 6.552-9.227z",fill:"#c2ccf4"}),/*#__PURE__*/e.jsx("path",{d:"m15.996 26.665v-5.36l-6.548-3.867z",fill:"#fff"}),/*#__PURE__*/e.jsx("path",{d:"m15.995 20.07 6.548-3.87-6.548-2.976v6.847z",fill:"#8698e8"}),/*#__PURE__*/e.jsx("path",{d:"m9.448 16.2 6.548 3.87v-6.846z",fill:"#c2ccf4"})]}),z=n=>/*#__PURE__*/e.jsxs("svg",{viewBox:"0 0 32 32",xmlns:"http://www.w3.org/2000/svg",...n,children:[/*#__PURE__*/e.jsxs("linearGradient",{id:"a",gradientUnits:"userSpaceOnUse",x1:"7.233",x2:"24.766",y1:"24.766",y2:"7.234",children:[/*#__PURE__*/e.jsx("stop",{offset:"0",stopColor:"#9945ff"}),/*#__PURE__*/e.jsx("stop",{offset:".2",stopColor:"#7962e7"}),/*#__PURE__*/e.jsx("stop",{offset:"1",stopColor:"#00d18c"})]}),/*#__PURE__*/e.jsx("path",{d:"m0 0h32v32h-32z",fill:"#10111a"}),/*#__PURE__*/e.jsx("path",{clipRule:"evenodd",d:"m9.873 20.41a.645.645 0 0 1 .476-.21l14.662.012a.323.323 0 0 1 .238.54l-3.123 3.438a.643.643 0 0 1 -.475.21l-14.662-.012a.323.323 0 0 1 -.238-.54zm15.376-2.862a.322.322 0 0 1 -.238.54l-14.662.012a.642.642 0 0 1 -.476-.21l-3.122-3.44a.323.323 0 0 1 .238-.54l14.662-.012a.644.644 0 0 1 .475.21zm-15.376-9.738a.644.644 0 0 1 .476-.21l14.662.012a.322.322 0 0 1 .238.54l-3.123 3.438a.643.643 0 0 1 -.475.21l-14.662-.012a.323.323 0 0 1 -.238-.54z",fill:"url(#a)",fillRule:"evenodd"})]});const L=/*#__PURE__*/a.styled.div.withConfig({displayName:"Header",componentId:"sc-9b65f2b6-0"})(["display:flex;justify-content:space-between;align-items:center;"]),I=/*#__PURE__*/a.styled.button.withConfig({displayName:"CloseButton",componentId:"sc-9b65f2b6-1"})(["padding:0.25rem;height:30px;width:30px;display:flex;align-items:center;justify-content:center;border-radius:var(--privy-border-radius-full);background:var(--privy-color-background-2);"]),A=/*#__PURE__*/a.styled.div.withConfig({displayName:"WalletIconWithActiveIndicator",componentId:"sc-9b65f2b6-2"})(["position:relative;display:inline-flex;align-items:center;&::after{content:' ';border-radius:var(--privy-border-radius-full);height:6px;width:6px;background-color:var(--privy-color-icon-success);position:absolute;right:-3px;top:-3px;}"]),N=/*#__PURE__*/a.styled.img.withConfig({displayName:"WalletIcon",componentId:"sc-9b65f2b6-3"})(["width:32px;height:32px;border-radius:0.25rem;object-fit:contain;"]),E=/*#__PURE__*/a.styled.span.withConfig({displayName:"Chip",componentId:"sc-9b65f2b6-4"})(["display:flex;gap:0.25rem;align-items:center;padding:0.25rem 0.5rem;font-size:0.75rem;font-weight:500;line-height:1.125rem;border-radius:var(--privy-border-radius-sm);background-color:var(--privy-color-background-2);svg{width:100%;max-width:1rem;max-height:1rem;stroke-width:2;}"]),q=/*#__PURE__*/a.styled.div.withConfig({displayName:"ScrollContainer",componentId:"sc-9b65f2b6-5"})(["display:flex;flex-direction:column;gap:0.5rem;max-height:24rem;overflow-y:scroll;&::-webkit-scrollbar{display:none;}scrollbar-gutter:stable both-edges;scrollbar-width:none;-ms-overflow-style:none;"," background-repeat:no-repeat;background-size:100% 32px,100% 16px;background-attachment:local,scroll;"],(e=>"light"===e.$colorScheme?"background: linear-gradient(var(--privy-color-background), var(--privy-color-background) 70%) bottom, linear-gradient(rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.06)) bottom;":"dark"===e.$colorScheme?"background: linear-gradient(var(--privy-color-background), var(--privy-color-background) 70%) bottom, linear-gradient(rgba(255, 255, 255, 0) 20%, rgba(255, 255, 255, 0.06)) bottom;":void 0));function B({enabled:e=!0,walletList:n,walletChainType:t}){let l=p.useAppConfig(),{connectors:a}=g.usePrivyInternal(),{listings:o,loading:r}=m.useExternalWalletListings(e),s=t??l.appearance.walletChainType,c=n??l.appearance?.walletList,d=i.useMemo((()=>new _(s,c)),[s,c]),{wallets:h,walletCount:u}=i.useMemo((()=>d.getWallets(a,o)),[d,a,o]),[y,w]=i.useState(""),f=i.useMemo((()=>y?h.filter((e=>e.label.toLowerCase().includes(y.toLowerCase()))):h),[y,h]),[v,x]=i.useState();return{selected:v,setSelected:x,search:y,setSearch:w,loadingListings:r,wallets:f,walletCount:u}}let M=e=>!e||"string"!=typeof e&&(e instanceof m.EthereumNullConnector||e instanceof m.SolanaNullConnector);const O=({index:n,style:t,data:i,recent:l})=>{let a=i.wallets[n],{walletChainType:o,handleWalletClick:r}=i,{t:s}=u.useI18n(),c={...t,boxSizing:"border-box"};return a?/*#__PURE__*/e.jsxs(P,{style:c,onClick:()=>r(a),children:[a.icon&&(a.connector&&!M(a.connector)?/*#__PURE__*/e.jsx(A,{children:"string"==typeof a.icon?/*#__PURE__*/e.jsx(N,{src:a.icon}):/*#__PURE__*/e.jsx(a.icon,{style:{width:"32px",height:"32px"}})}):"string"==typeof a.icon?/*#__PURE__*/e.jsx(N,{src:a.icon}):/*#__PURE__*/e.jsx(a.icon,{style:{width:"32px",height:"32px"}})),/*#__PURE__*/e.jsx($,{children:a.label}),l?/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(E,{children:s("connectWallet.lastUsed")}),/*#__PURE__*/e.jsx(R,{children:/*#__PURE__*/e.jsxs(e.Fragment,{children:["ethereum-only"===o&&/*#__PURE__*/e.jsx(S,{}),"solana-only"===o&&/*#__PURE__*/e.jsx(z,{})]})})]}):/*#__PURE__*/e.jsx(R,{children:!("ethereum-only"===o||"solana-only"===o)&&/*#__PURE__*/e.jsxs(e.Fragment,{children:[a.chains?.some((e=>e.startsWith("eip155")))&&/*#__PURE__*/e.jsx(S,{}),a.chains?.some((e=>e.startsWith("solana")))&&/*#__PURE__*/e.jsx(z,{})]})})]}):null};let F=/*#__PURE__*/a.styled.div.withConfig({displayName:"StickySearchContainer",componentId:"sc-34a6bff4-0"})(["position:sticky;margin-top:-3px;padding-top:3px;top:-3px;z-index:1;background:var(--privy-color-background);padding-bottom:calc(var(--screen-space) / 2);"]),U=/*#__PURE__*/a.styled.div.withConfig({displayName:"WalletListContainer",componentId:"sc-34a6bff4-1"})(["display:flex;flex-direction:column;gap:","px;"],5),P=/*#__PURE__*/a.styled.button.withConfig({displayName:"Button",componentId:"sc-34a6bff4-2"})(["&&{gap:0.5rem;align-items:center;display:flex;position:relative;text-align:left;font-weight:500;transition:background 200ms ease-in;width:calc(100% - 4px);border-radius:var(--privy-border-radius-md);padding:0.75em;border:1px solid var(--privy-color-foreground-4);justify-content:space-between;}&:hover{background:var(--privy-color-background-2);}"]),R=/*#__PURE__*/a.styled.span.withConfig({displayName:"ButtonBadge",componentId:"sc-34a6bff4-3"})(["display:flex;align-items:center;justify-content:end;position:relative;& > svg{border-radius:var(--privy-border-radius-full);stroke-width:2.5;width:100%;max-height:1rem;max-width:1rem;flex-shrink:0;}& > svg:not(:last-child){border-radius:var(--privy-border-radius-full);margin-right:-0.375rem;}"]),D=/*#__PURE__*/a.styled.div.withConfig({displayName:"EmptyContainer",componentId:"sc-34a6bff4-4"})(["height:60px;display:flex;align-items:center;justify-content:center;text-align:center;"]),$=/*#__PURE__*/a.styled.span.withConfig({displayName:"WalletName",componentId:"sc-34a6bff4-5"})(["text-overflow:ellipsis;white-space:nowrap;color:var(--privy-color-foreground);font-weight:400;flex:1;"]),Q=/*#__PURE__*/a.styled(T).withConfig({displayName:"StyledCopyableText",componentId:"sc-34a6bff4-6"})(["&&{margin:0.5rem auto 0 auto;}"]);exports.Chip=E,exports.CloseButton=I,exports.CopyableText=T,exports.Header=L,exports.ScrollContainer=q,exports.WalletFilterer=_,exports.WalletIcon=N,exports.WalletRow=O,exports.i=({className:a,customDescription:r,connectOnly:s,preSelectedWalletId:v,hideHeader:x,...b})=>{let C=p.useAppConfig(),{t:j}=u.useI18n(),{connectors:W}=g.usePrivyInternal(),T=b.walletChainType||C.appearance.walletChainType,L=b.walletList||C.appearance?.walletList,{onBack:I,onClose:A,app:E}=b,{selected:q,setSelected:H,qrUrl:G,setQrUrl:V,connecting:Y,uiState:J,errorCode:K,wallets:X,walletCount:Z,handleConnect:ee,handleBack:ne,showSearchBar:te,isInitialConnectView:ie,title:le,search:ae,setSearch:oe}=function({onConnect:e,onBack:n,onClose:t,onConnectError:a,walletList:o,walletChainType:r,app:s}){let c=p.useAppConfig(),{connectors:d}=g.usePrivyInternal(),{t:h}=u.useI18n(),{wallets:y,walletCount:w,search:f,setSearch:v,selected:x,setSelected:b}=B({enabled:m.shouldFetchWcRegistryListings(o??[]),walletList:o,walletChainType:r}),[C,j]=i.useState(),[W,T]=i.useState(),[k,_]=i.useState(),[S,z]=i.useState(),L=!x&&!k&&!S,I=L&&(w>6||f.length>0),A=d.find((e=>"wallet_connect_v2"===e.connectorType)),N=i.useCallback((async(n,t)=>{if(n){if(S?.connector===n&&"loading"===C)return void console.log("Already connecting to this wallet, skipping duplicate attempt");if(j("loading"),"string"==typeof n)return z({connector:n,name:t?.name??"Wallet",icon:t?.icon}),void window.open(n,"_blank");z({connector:n,name:t?.name??n.walletBranding.name??"Wallet",icon:t?.icon??n.walletBranding.icon});try{let t=await n.connect({showPrompt:!0});if(!t)return j("error"),T(void 0),void a?.(new g.PrivyConnectorError("Unable to connect wallet"));j("success"),T(void 0),m.setActiveWallet({address:t.address,client:t.walletClientType,appId:c.id}),setTimeout((()=>{e({connector:n,wallet:t})}),p.DEFAULT_SUCCESS_SCREEN_DURATION_MS)}catch(n){if(console.error("ERROR: ",{e:n}),n?.message?.includes("already pending for origin")||n?.message?.includes("wallet_requestPermissions"))return void console.log("Connection request already pending, maintaining loading state");j("error"),T(n?.privyErrorCode),a?.(n instanceof Error?n:new g.PrivyConnectorError(n?.message||"Unable to connect wallet"))}}}),[c.id,e,S,C]),E=i.useCallback((()=>k?(j(void 0),T(void 0),z(void 0),void _(void 0)):S?(j(void 0),T(void 0),void z(void 0)):x?(j(void 0),T(void 0),z(void 0),void b(void 0)):"error"===C||"loading"===C?(j(void 0),T(void 0),void z(void 0)):void n?.()),[k,S,x,C,n]),q=i.useMemo((()=>S?.connector===A&&k&&l.isMobile&&S?.name?h("connectWallet.goToWallet",{walletName:S.name}):S?.connector===A&&k&&S?.name?h("connectWallet.scanToConnect",{walletName:S.name}):k&&S?.name?l.isMobile?h("connectWallet.goToWallet",{walletName:S.name}):h("connectWallet.scanToConnect",{walletName:S.name}):"string"==typeof S?.connector?h("connectWallet.openOrInstall",{walletName:S.name}):x&&!S?h("connectWallet.selectNetwork"):S?null:h("connectWallet.selectYourWallet")),[S,k,x,A,h]);return{selected:x,setSelected:b,qrUrl:k,setQrUrl:_,connecting:S,uiState:C,errorCode:W,search:f,setSearch:v,wallets:y,walletCount:w,wc:A,isInitialConnectView:L,showSearchBar:I,title:q,handleConnect:N,handleBack:E,onClose:t,onConnect:e,app:s}}({...b,walletList:L,walletChainType:T}),re=W.find((e=>"wallet_connect_v2"===e.connectorType)),se=W.find((e=>"walletconnect_solana"===e.walletBranding.id)),ce=i.useRef(null),de=t.useVirtualizer({count:X.length,getScrollElement:()=>ce.current,estimateSize:()=>56,overscan:6,gap:5}),he=i.useCallback((async e=>{let n="solana-only"!==T&&e.chains?.some((e=>e.startsWith("eip155"))),t="ethereum-only"!==T&&e.chains?.some((e=>e.startsWith("solana"))),i=n=>{let t=_.normalize(e.id);return W.find((e=>_.normalize(e.walletClientType)===t&&e.chainType===n&&!("ethereum"===e.chainType&&e instanceof m.EthereumNullConnector||"solana"===e.chainType&&e instanceof m.SolanaNullConnector)))},a=async()=>{if(!re||!e.listing)return!1;let n=k[e.listing.slug]?{...e.listing,...k[e.listing.slug]}:e.listing;return re.setWalletEntry(n,V),await re.resetConnection(e.id),await ee(re,{name:e.label,icon:e.icon}),!0},o=async()=>!!se&&!!e.listing&&(await se.disconnect(),se.wallet.setWalletEntry(e.listing,V),await new Promise((e=>setTimeout(e,100))),await ee(se,{name:e.label,icon:e.icon}),!0),r=async n=>{let t=(n=>{let t=m.mobileWalletsConfig[e.id];if(t)return t.getMobileRedirect({isSolana:n,connectOnly:!!s,useUniversalLink:!1})})(n);return!!t&&(await ee(t,{name:e.label,icon:e.icon}),!0)};if(n&&t)H(e);else{if(n&&!t){let n=i("ethereum");if(n&&!M(n))return void await ee(n,{name:e.label,icon:e.icon});if(l.isMobile&&"phantom"===e.id){if(await r(!1)||await a())return}else if(await a()||await r(!1))return}if(t&&!n){let n=i("solana");if(n&&!M(n))return void await ee(n,{name:e.label,icon:e.icon});if(l.isMobile){if(await r(!0)||await o())return}else if(await o()||await r(!0))return}if(!M(e.connector)){if(re&&"wallet_connect_v2"===e.connector?.connectorType)if(await re.resetConnection(e.id),"wallet_connect_qr"!==e.id&&e.listing){let n=k[e.listing.slug]?{...e.listing,...k[e.listing.slug]}:e.listing;re.setWalletEntry(n,V)}else re.setWalletEntry({id:"wallet_connect_qr",name:"WalletConnect",rdns:"",slug:"wallet-connect",homepage:"",chains:["eip155"],mobile:{native:"",universal:void 0}},V);return se&&"walletconnect_solana"===e.connector?.walletBranding.id&&(await se.disconnect(),"wallet_connect_qr_solana"!==e.id&&e.listing?se.wallet.setWalletEntry(e.listing,V):se.wallet.setWalletEntry({id:"wallet_connect_solana_qr",name:"WalletConnect",rdns:"",slug:"wallet-connect-solana",homepage:"",chains:["solana"],mobile:{native:"",universal:void 0}},V),await new Promise((e=>setTimeout(e,100)))),void await ee(e.connector,{name:e.label,icon:e.icon})}e.url&&await ee(e.url,{name:e.label,icon:e.icon})}}),[re,se,ee,H,V,T,s,W]);return i.useEffect((()=>{if(!v)return;let e=X.find((({id:e})=>e===v));e&&he(e).catch(console.error)}),[v]),/*#__PURE__*/e.jsxs(f.Screen,{className:a,children:[/*#__PURE__*/e.jsx(f.Screen.Header,{icon:x&&ie?void 0:Y&&!G||G&&l.isMobile&&Y?.icon?Y.icon:Y?void 0:y.WalletCards,iconVariant:Y&&!G||G&&l.isMobile?"loading":void 0,iconLoadingStatus:Y&&!G||G&&l.isMobile?{success:"success"===J,fail:"error"===J}:void 0,title:x&&ie?void 0:Y&&!G?j("connectWallet.waitingForWallet",{walletName:Y.name}):G&&l.isMobile?j("connectWallet.waitingForWallet",{walletName:Y?.name??"connection"}):le,subtitle:x&&ie?void 0:Y&&!G&&"string"==typeof Y.connector?j("connectWallet.installAndConnect",{walletName:Y.name}):Y&&!G&&"string"!=typeof Y.connector?"error"===J?K===g.PrivyErrorCode.NO_SOLANA_ACCOUNTS?`The connected wallet has no Solana accounts. Please add a Solana account in ${Y.name} and try again.`:j("connectWallet.tryConnectingAgain"):j("connectionStatus.connectOneWallet"):ie?r??(E?j("connectWallet.connectToAccount",{appName:E.name}):null):null,showBack:!!I||!ie,showClose:!0,onBack:I||ne,onClose:A}),/*#__PURE__*/e.jsxs(f.Screen.Body,{ref:ce,$colorScheme:C.appearance.palette.colorScheme,style:{marginBottom:G?"0.5rem":void 0},children:[te&&/*#__PURE__*/e.jsx(F,{children:/*#__PURE__*/e.jsxs(h.EmailUpdateForm,{style:{background:"transparent"},children:[/*#__PURE__*/e.jsx(m.LoginMethodIconWrapper,{children:/*#__PURE__*/e.jsx(n.MagnifyingGlassIcon,{})}),/*#__PURE__*/e.jsx("input",{className:"login-method-button",type:"text",placeholder:j("connectWallet.searchPlaceholder",{count:String(Z)}),onChange:e=>oe(e.target.value),value:ae})]})}),G&&l.isMobile&&"loading"===J&&/*#__PURE__*/e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"1rem"},children:[/*#__PURE__*/e.jsx(o.Button,{variant:"primary",onClick:()=>window.open(G.universal??G.native,"_blank"),style:{width:"100%"},children:j("connectWallet.openInApp")}),/*#__PURE__*/e.jsx(Q,{value:G.universal??G.native,iconOnly:!0,children:"Copy link"})]}),G&&!l.isMobile&&"loading"===J&&/*#__PURE__*/e.jsx("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"1rem"},children:/*#__PURE__*/e.jsx(Q,{value:G.universal??G.native,iconOnly:!0,children:j("connectWallet.copyLink")})}),G&&!l.isMobile&&/*#__PURE__*/e.jsx(d.QrCode,{size:280,url:G.universal??G.native,squareLogoElement:Y?.icon?"string"==typeof Y.icon?n=>/*#__PURE__*/e.jsx("svg",{...n,children:/*#__PURE__*/e.jsx("image",{href:Y.icon,height:n.height,width:n.width})}):Y.icon:w.WalletConnect}),/*#__PURE__*/e.jsxs(U,{children:[Y&&!G&&"string"==typeof Y.connector&&/*#__PURE__*/e.jsxs(P,{onClick:()=>window.open(Y.connector,"_blank"),children:[Y.icon&&("string"==typeof Y.icon?/*#__PURE__*/e.jsx(N,{src:Y.icon}):/*#__PURE__*/e.jsx(Y.icon,{})),/*#__PURE__*/e.jsx($,{children:Y.name})]}),q?.chains.some((e=>e.startsWith("eip155")))&&!Y&&/*#__PURE__*/e.jsxs(P,{onClick:()=>he({...q,chains:q.chains.filter((e=>e.startsWith("eip155")))}),children:[q.icon&&("string"==typeof q.icon?/*#__PURE__*/e.jsx(N,{src:q.icon}):/*#__PURE__*/e.jsx(q.icon,{})),/*#__PURE__*/e.jsx($,{children:q.label}),/*#__PURE__*/e.jsx(R,{children:/*#__PURE__*/e.jsx(S,{})})]}),q?.chains.some((e=>e.startsWith("solana")))&&!Y&&/*#__PURE__*/e.jsxs(P,{onClick:()=>he({...q,chains:q.chains.filter((e=>e.startsWith("solana")))}),children:[q.icon&&("string"==typeof q.icon?/*#__PURE__*/e.jsx(N,{src:q.icon}):/*#__PURE__*/e.jsx(q.icon,{})),/*#__PURE__*/e.jsx($,{children:q.label}),/*#__PURE__*/e.jsx(R,{children:/*#__PURE__*/e.jsx(z,{})})]}),ie&&/*#__PURE__*/e.jsxs(e.Fragment,{children:[!(Z>0)&&/*#__PURE__*/e.jsx(D,{children:j("connectWallet.noWalletsFound")}),Z>0&&!G&&/*#__PURE__*/e.jsx("div",{style:{maxHeight:56*Math.min(X.length,5)+5,width:"100%"},children:/*#__PURE__*/e.jsx("div",{style:{height:`${de.getTotalSize()}px`,width:"100%",position:"relative"},children:de.getVirtualItems().map((n=>/*#__PURE__*/e.jsx(O,{index:n.index,style:{position:"absolute",top:0,left:0,height:`${n.size}px`,transform:`translateY(${n.start}px)`},data:{wallets:X,walletChainType:T,handleWalletClick:he}},n.key)))})})]})]})]}),/*#__PURE__*/e.jsxs(f.Screen.Footer,{children:[Y&&!G&&"string"!=typeof Y.connector&&"error"===J&&/*#__PURE__*/e.jsx(f.Screen.Actions,{children:/*#__PURE__*/e.jsx(o.Button,{style:{width:"100%",alignItems:"center"},variant:"error",onClick:()=>ee(Y.connector,{name:Y.name,icon:Y.icon}),children:j("connectWallet.retry")})}),!!(E&&E.legal.privacyPolicyUrl&&E.legal.termsAndConditionsUrl)&&/*#__PURE__*/e.jsx(c.TermsAndConditions,{app:E,alwaysShowImplicitConsent:!0}),/*#__PURE__*/e.jsx(f.Screen.Watermark,{})]})]})},exports.useWalletsListController=B;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("react"),t=require("./context-Dn8Hzo8O.js"),i=require("./index-4-C2N_7K.js"),o=require("./internal-context-NWsAL807.js"),s=require("./get-is-unified-wallet-CHHPpmxX.js"),a=require("./useActiveWallet-B5cSS56I.js"),u=require("./shouldProceedtoEmbeddedWalletCreationFlow-CuHR6wvs.js"),n=require("./ScreenLayout-Bbhw-EIr.js");require("@privy-io/js-sdk-core"),require("tinycolor2"),require("uuid"),require("jose"),require("eventemitter3"),require("./useWallets-DPdw6ah8.js"),require("./prepareFundingModalData-Bap-QRCV.js"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("react-device-detect"),require("viem/utils"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-DobNyfbl.js"),require("./events-context-Di6--rDg.js"),require("@scure/base"),require("styled-components"),require("zustand"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("viem"),require("./getPublicClient-CGlodIp_.js"),require("ofetch"),require("js-cookie"),require("./frame-B14fp9oC.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-BcAsQTGF.js"),require("./getEmbeddedConnectedWallet-6TsVZJkD.js"),require("./Button-DpuRzAgk.js"),require("./Screen-CJM19YNL.js"),require("./ModalHeader-4MV7Tgk7.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./index-CRFXS9pP.js");const c=({providerApp:t,success:i,error:o,onClose:s})=>{let{title:a,subtitle:u}=r.useMemo((()=>i?{title:`Successfully connected with ${t.name}`,subtitle:"You're good to go!"}:o?{title:"Authentication failed",subtitle:o.message}:{title:`Connecting to ${t.name}`,subtitle:`Please check the pop-up from ${t.name} to continue`}),[i,o,t.name]);/*#__PURE__*/return e.jsx(n.ScreenLayout,{title:a,subtitle:u,icon:t.logoUrl,iconVariant:"loading",iconLoadingStatus:{success:i,fail:!!o},onBack:s,watermark:!0})},l={component:()=>{let n=t.useAppConfig(),{data:l,navigate:d,setModalData:p,onUserCloseViaDialogOrKeybindRef:q}=s.usePrivyModal(),{crossAppAuthFlow:m,updateWallets:h,closePrivyModal:A,createAnalyticsEvent:v}=o.usePrivyInternal(),{logout:C}=a.useLogout(),[S,f]=r.useState({}),y=l?.crossAppAuth,E={id:y.appId,name:y.name,logoUrl:y.logoUrl},j=new o.PrivyClientError(`There was an issue connecting your ${E.name} account. Please try again.`),g=new i.RunEffectOnce((async e=>{if(y.popup)try{let r=await m({appId:e,popup:y.popup,action:y.action});f({data:r})}catch(e){if(e instanceof o.PrivyClientError)f({error:e});else if(e instanceof o.PrivyApiError){if(e.privyErrorCode===o.PrivyErrorCode.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return p({accountTransfer:{nonce:e.data?.data?.nonce,account:e.data?.data?.subject,displayName:e.data?.data?.account?.displayName,linkMethod:`privy:${E.id}`,embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress,oAuthUserInfo:e.data?.data?.otherUser?.oAuthUserInfo}}),void d("LinkConflictScreen");y.popup&&y.popup.close(),f({error:j})}else f({error:j})}else f({error:j})})),U=()=>{S.data&&(h(),y.onSuccess(S.data),A({shouldCallAuthOnSuccess:!0,isSuccess:!0})),y.onError(S.error??new o.PrivyClientError("User canceled flow")),A({shouldCallAuthOnSuccess:!1,isSuccess:!1})};return q.current=U,r.useEffect((()=>{E.id.length&&g.execute(E.id)}),[E.id]),r.useEffect((()=>{if(!S.data)return;let e=S.data;if(n.legal.requireUsersAcceptTerms&&!e.hasAcceptedTerms){let e=setTimeout((()=>{d("AffirmativeConsentScreen")}),t.DEFAULT_SUCCESS_SCREEN_DURATION_MS);return()=>clearTimeout(e)}if(u.shouldProceedtoEmbeddedWalletCreationFlow(e,n.embeddedWallets)){let e=setTimeout((()=>{p({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),v({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,provider:`privy:${E.id}`,screen:"CrossAppAuthScreen"}}),C()},callAuthOnSuccessOnClose:!0}}),d("EmbeddedWalletOnAccountCreateScreen")}),t.DEFAULT_SUCCESS_SCREEN_DURATION_MS);return()=>clearTimeout(e)}let r=setTimeout(U,t.DEFAULT_SUCCESS_SCREEN_DURATION_MS);return()=>clearTimeout(r)}),[S.data]),/*#__PURE__*/e.jsx(c,{providerApp:E,success:!!S.data,error:S.error,onClose:U})},isShownBeforeReady:!0};exports.CrossAppAuthScreen=l,exports.CrossAppAuthScreenView=c,exports.default=l;
@@ -1,2 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),t=require("@heroicons/react/24/outline/UserCircleIcon"),i=require("react"),a=require("styled-components"),l=require("./ModalHeader-4MV7Tgk7.js"),n=require("./context-Dn8Hzo8O.js"),r=require("./internal-context-NWsAL807.js"),o=require("./get-is-unified-wallet-CHHPpmxX.js"),s=require("./index-4-C2N_7K.js"),c=require("./useActiveWallet-B5cSS56I.js"),d=require("lucide-react"),p=require("./ConnectEmailForm-DeN1Pg_E.js"),u=require("./Chip-ChrHHazc.js"),h=require("./farcaster-CWHXGAib.js"),g=require("@privy-io/js-sdk-core"),m=require("./ConnectWalletView-B33uROyL.js"),y=require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),f=require("@heroicons/react/24/outline/FingerPrintIcon"),x=require("./Link-DmzPZ_M7.js"),w=require("./ConnectPhoneForm-CIaHyHT9.js"),j=require("./twitter-BVVRWkcG.js"),v=require("./twitch-BNvhZb2Y.js"),C=require("./telegram-D3O0_F1a.js"),b=require("./WalletButtonList-C6cavPqd.js"),S=require("./ScreenLayout-Bbhw-EIr.js");function k(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var M=/*#__PURE__*/k(t),T=/*#__PURE__*/k(i),L=/*#__PURE__*/k(y),A=/*#__PURE__*/k(f);const I=()=>{let t=n.useAppConfig(),i=t?.appearance?.logo,a=`${t?.name} logo`,l={maxHeight:"90px",maxWidth:"180px"};return i?"string"==typeof i?/*#__PURE__*/e.jsx("img",{src:i,alt:a,style:l}):"svg"===i.type||"img"===i.type?/*#__PURE__*/T.default.cloneElement(i,{alt:a,style:l}):(console.warn("`config.appearance.logo` must be a string, or an SVG / IMG element. Nothing will be rendered."),null):null},P=t=>{let i=n.useAppConfig();return i?.appearance.logo?/*#__PURE__*/e.jsx(W,{...t,children:/*#__PURE__*/e.jsx(I,{})}):null},W=/*#__PURE__*/a.styled.div.withConfig({displayName:"AppLogoContainer",componentId:"sc-b210074-0"})(["display:flex;flex-direction:column;align-items:center;padding:24px 0;flex-grow:1;justify-content:center;"]),E=({name:t,logoUrl:i,size:a="38px"})=>{let l=`${t??"Provider app"} logo`;return"string"==typeof i?/*#__PURE__*/e.jsx("img",{src:i,alt:l,style:{width:a,height:a,maxHeight:"90px",maxWidth:"180px",borderRadius:"8px"}}):
2
- /*#__PURE__*/e.jsx("span",{})},N=({appId:t})=>{let[a,l]=i.useState(void 0),{startCrossAppAuthFlow:n,authenticated:s}=o.usePrivyContext(),{client:d}=r.usePrivyInternal();return i.useEffect((()=>{(async()=>{d&&l(await d.getCrossAppProviderDetails(t))})()}),[d]),/*#__PURE__*/e.jsx(c.LoginMethodButton,{onClick:()=>n({appId:t,action:s?"link":"login"}),disabled:!a,children:a?/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(E,{name:a.name,logoUrl:a.icon_url||void 0,size:"24px"})," ",a.name]}):/*#__PURE__*/e.jsx(c.ButtonLoader,{})})},F=({isEditable:t,setIsEditable:a,defaultValue:l})=>{let n=i.useRef(null);/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(c.Hide,{$if:!t,children:/*#__PURE__*/e.jsx(p.ConnectEmailForm,{ref:n,defaultValue:l})}),/*#__PURE__*/e.jsx(c.Hide,{$if:t,children:/*#__PURE__*/e.jsxs(c.LoginMethodButton,{onClick:()=>{a(),setTimeout((()=>{n.current?.focus()}),0)},children:[/*#__PURE__*/e.jsx(c.LoginMethodIconWrapper,{children:/*#__PURE__*/e.jsx(d.Mail,{})}),"Continue with Email"]})})]})},q=()=>{let[t,a]=i.useState(!1),{currentScreen:l,navigate:n,setModalData:d,data:p}=o.usePrivyModal(),{enabled:u,token:g}=s.useCaptcha(),{initLoginWithFarcaster:m}=r.usePrivyInternal(),{accountType:y}=c.useRecentlyUsedLogin();/*#__PURE__*/return e.jsxs(c.LoginMethodButton,{onClick:async()=>{a(!0);try{u&&!g?(d({captchaModalData:{callback:e=>m(e,p?.login?.disableSignup),userIntentRequired:!0,onSuccessNavigateTo:"FarcasterConnectStatusScreen",onErrorNavigateTo:"ErrorScreen"}}),n("CaptchaScreen")):(await m(g,p?.login?.disableSignup),n("FarcasterConnectStatusScreen"))}catch(e){d({errorModalData:{error:e,previousScreen:l||"LandingScreen"}}),n("ErrorScreen")}finally{a(!1)}},disabled:!1,children:[/*#__PURE__*/e.jsx(h.Farcaster,{width:32,height:32})," Farcaster",t&&/*#__PURE__*/e.jsx(c.ButtonLoader,{}),"farcaster"===y&&/*#__PURE__*/e.jsx(R,{color:"gray",children:"Recent"})]})};let R=/*#__PURE__*/a.styled(u.Chip).withConfig({displayName:"StyledChip",componentId:"sc-2f1c7323-0"})(["margin-left:auto;"]);const D=({...t})=>/*#__PURE__*/e.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"25",height:"25",viewBox:"0 0 25 25",fill:"none",...t,children:[/*#__PURE__*/e.jsxs("g",{clipPath:"url(#clip0_2856_1743)",children:[/*#__PURE__*/e.jsx("path",{d:"M22.1673 8.24075V16.3642C22.1673 17.3256 21.3421 18.105 20.3241 18.105H17.0028M22.1673 8.24075C22.1673 7.27936 21.3421 6.5 20.3241 6.5H11.5302M22.1673 8.24075V8.42852C22.1673 9.03302 21.8352 9.59423 21.2901 9.91105L15.1463 13.4818C14.5539 13.8261 13.8067 13.8261 13.2143 13.4818L10.1621 11.5401",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),/*#__PURE__*/e.jsx("path",{d:"M3.12913 6.64816C0.508085 12.9507 3.49251 20.1847 9.79504 22.8057L11.5068 23.5176C12.4522 23.9108 13.7783 23.2222 14.1714 22.2768L14.6054 21.2333C14.7687 20.8406 14.6438 20.3871 14.3024 20.1334L11.2872 17.8927C10.9878 17.6702 10.5843 17.6488 10.2632 17.8384L9.11575 18.5156C8.78274 18.7121 8.3597 18.6844 8.07552 18.4221C5.94293 16.4542 4.77629 13.6264 4.90096 10.7273C4.91757 10.3409 5.19796 10.023 5.57269 9.92753L6.86381 9.59869C7.22522 9.50664 7.49627 9.20696 7.55169 8.83815L8.10986 5.12321C8.17306 4.70259 7.94188 4.29293 7.54915 4.1296L6.50564 3.69564C5.56026 3.30248 4.23416 3.99103 3.84101 4.9364L3.12913 6.64816Z",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]}),/*#__PURE__*/e.jsx("defs",{children:/*#__PURE__*/e.jsx("clipPath",{id:"clip0_2856_1743",children:/*#__PURE__*/e.jsx("rect",{x:"0.5",y:"0.5",width:"24",height:"24",rx:"6",fill:"white"})})})]}),O=({chainType:t,withPadding:i})=>{let a="";return a="ethereum-only"===t||"ethereum-and-solana"===t?"Rainbow, Phantom, or Coinbase Wallet":"Phantom or Solflare",/*#__PURE__*/e.jsx(c.EmptyWalletState,{$withPadding:i,children:/*#__PURE__*/e.jsxs(c.Header,{children:[/*#__PURE__*/e.jsx(L.default,{style:{color:"var(--privy-color-warn)",height:48,width:48}}),/*#__PURE__*/e.jsx("h3",{children:"No wallets available"}),/*#__PURE__*/e.jsxs("p",{children:["Please download an external wallet provider, like ",a,"."]})]})},"empty-wallet-state")},U=()=>{let{enabled:t,token:a}=s.useCaptcha(),{navigate:l,setModalData:d,data:p}=o.usePrivyModal(),u=n.useAppConfig(),{initLoginWithPasskey:h}=r.usePrivyInternal(),g=()=>{u.loginConfig.passkeysForSignupEnabled?l("PasskeySelectSignupOrLogin"):(async()=>{t&&!a?(d({passkeyAuthModalData:{passkeySignupFlow:!1},captchaModalData:{callback:e=>h({captchaToken:e,withPrivyUi:!0}),userIntentRequired:!1,onSuccessNavigateTo:"PasskeyStatusScreen",onErrorNavigateTo:"ErrorScreen"}}),l("CaptchaScreen")):(await h({withPrivyUi:!0,captchaToken:a}),d({passkeyAuthModalData:{passkeySignupFlow:!1}}),l("PasskeyStatusScreen"))})()};return 0===i.useMemo((()=>{let e=p?.login?.loginMethods;return e?e.filter((e=>"passkey"!==e)).length:Object.entries(u.loginMethods).filter((([e,t])=>t)).filter((([e])=>"passkey"!==e)).length}),[u.loginMethods,p?.login])?/*#__PURE__*/e.jsxs(c.LoginMethodButton,{onClick:g,children:[/*#__PURE__*/e.jsx(A.default,{})," Continue with passkey"]}):/*#__PURE__*/e.jsx(x.Link,{as:"button",onClick:g,size:"sm",variant:"navigation",style:{width:"100%",justifyContent:"center"},children:"I have a passkey"})},B=({isEditable:t,setIsEditable:a,defaultValue:l})=>{let p=i.useRef(null),{authenticated:u}=o.usePrivyContext(),{navigate:h,setModalData:g,currentScreen:m,data:y}=o.usePrivyModal(),{initLoginWithSms:f}=r.usePrivyInternal(),{enabled:x,token:j}=s.useCaptcha(),{whatsAppEnabled:v}=n.useAppConfig();/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(c.Hide,{$if:!t,children:/*#__PURE__*/e.jsx(w.ConnectPhoneNumberForm,{ref:p,onSubmit:async function({qualifiedPhoneNumber:e}){if(!x||j||u)try{await f({phoneNumber:e,captchaToken:j,withPrivyUi:!0,disableSignup:y?.login?.disableSignup}),h("AwaitingPasswordlessCodeScreen")}catch(e){g({errorModalData:{error:e,previousScreen:m||"LandingScreen"}}),h("ErrorScreen")}else g({captchaModalData:{callback:t=>f({phoneNumber:e,captchaToken:t,withPrivyUi:!0,disableSignup:y?.login?.disableSignup}),userIntentRequired:!1,onSuccessNavigateTo:"AwaitingPasswordlessCodeScreen",onErrorNavigateTo:"ErrorScreen"}}),h("CaptchaScreen")},defaultValue:l})}),/*#__PURE__*/e.jsx(c.Hide,{$if:t,children:/*#__PURE__*/e.jsxs(c.LoginMethodButton,{onClick:()=>{a(),setTimeout((()=>{p.current?.focus()}),0)},children:[/*#__PURE__*/e.jsx(c.LoginMethodIconWrapper,{children:/*#__PURE__*/e.jsx(d.Smartphone,{})}),"Continue with ",v?"WhatsApp":"SMS"]})})]})};let V={apple:{logo:j.Apple,displayName:"Apple"},discord:{logo:j.Discord,displayName:"Discord"},github:{logo:j.Github,displayName:"GitHub"},google:{logo:j.Google,displayName:"Google"},linkedin:{logo:j.LinkedIn,displayName:"LinkedIn"},spotify:{logo:j.Spotify,displayName:"Spotify"},instagram:{logo:j.Instagram,displayName:"Instagram"},twitter:{logo:j.Twitter,displayName:"Twitter"},tiktok:{logo:j.Tiktok,displayName:"TikTok"},line:{logo:v.Line,displayName:"LINE"},twitch:{logo:v.Twitch,displayName:"Twitch"}};const _=({provider:t})=>{let{enabled:a,token:l}=s.useCaptcha(),{navigate:d,setModalData:p,data:u}=o.usePrivyModal(),[h,g]=i.useState(!1),m=n.useAppConfig(),{initLoginWithOAuth:y}=r.usePrivyInternal(),{accountType:f}=c.useRecentlyUsedLogin(),x=i.useMemo((()=>f&&"guest"!==f&&"authorization_key"!==f&&"cross_app"!==f?s.toDisplayFromAccountType(f):null),[f]),{displayName:w,logo:j}=i.useMemo((()=>{if(o.isCustomOAuthProvider(t)){let i=m.customOAuthProviders.find((e=>e.provider===t)),a=i.provider_icon_url,l=i.provider_display_name;return{displayName:l,logo:({style:t})=>/*#__PURE__*/e.jsx("img",{alt:`${l} logo`,src:a,style:t})}}return V[t]}),[t,m.customOAuthProviders]);/*#__PURE__*/return e.jsxs(c.LoginMethodButton,{onClick:()=>{g(!0),setTimeout((()=>{g(!1)}),2e3),a&&!l?(p({captchaModalData:{callback:e=>y(t,e,u?.login?.disableSignup),userIntentRequired:!0,onSuccessNavigateTo:null,onErrorNavigateTo:"ErrorScreen"}}),d("CaptchaScreen")):y(t,void 0,u?.login?.disableSignup)},disabled:h,children:[/*#__PURE__*/e.jsx(c.LoginMethodIconWrapper,{$fullSize:!0,children:/*#__PURE__*/e.jsx(j,{style:{width:"32px",height:"32px"}})}),w,x?.loginMethod===t&&/*#__PURE__*/e.jsx(H,{color:"gray",children:"Recent"})]})};let H=/*#__PURE__*/a.styled(u.Chip).withConfig({displayName:"StyledChip",componentId:"sc-e74c7091-0"})(["margin-left:auto;"]);const $=()=>{let{enabled:t,token:a}=s.useCaptcha(),{navigate:l,setModalData:n,data:d}=o.usePrivyModal(),[p,u]=i.useState(!1),{initLoginWithTelegram:h}=r.usePrivyInternal(),{accountType:g}=c.useRecentlyUsedLogin();async function m(e){try{await h(e,d?.login?.disableSignup),n({telegramAuthModalData:{seamlessAuth:!1}}),l("TelegramAuthScreen")}catch(e){console.error(e),u(!1)}}/*#__PURE__*/return e.jsxs(c.LoginMethodButton,{onClick:async function(){if(u(!0),t&&!a)return n({captchaModalData:{callback:m,userIntentRequired:!0,onSuccessNavigateTo:null,onErrorNavigateTo:"ErrorScreen"}}),void l("CaptchaScreen");await m(a)},disabled:p,children:[/*#__PURE__*/e.jsx(C.Telegram,{width:32,height:32}),"Telegram","telegram"===g&&/*#__PURE__*/e.jsx(z,{color:"gray",children:"Recent"})]})};let z=/*#__PURE__*/a.styled(u.Chip).withConfig({displayName:"StyledChip",componentId:"sc-639dd483-0"})(["margin-left:auto;"]);const G=({onClick:t,text:i,icon:a})=>/*#__PURE__*/e.jsxs(c.LoginMethodButton,{onClick:t,children:[/*#__PURE__*/e.jsx(c.LoginMethodIconWrapper,{children:a}),/*#__PURE__*/e.jsx(c.Grow,{children:i})]});let K=/*#__PURE__*/a.styled.div.withConfig({displayName:"StyledSubtitle",componentId:"sc-c85d71fe-0"})(["text-align:center;font-size:14px;margin-bottom:24px;"]),J=/*#__PURE__*/a.styled.div.withConfig({displayName:"MessageContainer",componentId:"sc-c85d71fe-1"})(["margin-bottom:24px;"]),Q=({priority:e,email:t,sms:i,social:a})=>"web2-first"===e?"Other socials":t&&i&&a.length>0||t&&a.length>0?"Log in with email or socials":i&&a.length>0?"Log in with sms or socials":t&&i?"Continue with email or sms":t?"Continue with email":i?"Continue with sms":"Log in with a social account",X=({priority:t,email:i,sms:a,social:l})=>"web2-first"===t||l.length>0?/*#__PURE__*/e.jsx(d.UserCircle,{}):i&&a?/*#__PURE__*/e.jsx(D,{}):i?/*#__PURE__*/e.jsx(d.Mail,{}):a?/*#__PURE__*/e.jsx(d.Smartphone,{}):null,Z=({priority:e})=>"web2-first"===e?"Continue with a wallet":"Other wallets";const Y=({mostRecentlyUsedAccountType:e,smsAvailable:t,emailAvailable:i,prefilledType:a})=>i&&("email"===e&&"phone"!==a||"email"===a)||!t||"phone"!==e&&"phone"!==a?"email":"sms";let ee=({primary:e,overflow:t})=>e<5?e:5===e&&0===t?5:4,te=/*#__PURE__*/a.styled(P).withConfig({displayName:"StyledAppLogoHeader",componentId:"sc-7cdadd41-0"})(["margin-bottom:16px;"]);exports.CustomLandingScreenView=({connectOnly:t})=>{let{closePrivyModal:a,connectors:d}=r.usePrivyInternal(),{onUserCloseViaDialogOrKeybindRef:p,data:u}=o.usePrivyModal(),h=n.useAppConfig(),{appearance:{palette:{colorScheme:g}}}=n.useAppConfig(),{accountType:m,walletClientType:y,chainType:f}=c.useRecentlyUsedLogin(),x=i.useMemo((()=>m&&"guest"!==m&&"authorization_key"!==m&&"cross_app"!==m?s.toDisplayFromAccountType(m):null),[m]),w=h.loginMethodsAndOrder?.primary??[],j=h.loginMethodsAndOrder?.overflow??[],v=i.useMemo((()=>[...w,...j]),[w,j]),C=h.loginMethods.passkey,S=u?.login,k=[];y&&v.includes(y)?k.push(y):m&&v.includes(x?.loginMethod)&&k.push(x?.loginMethod);let[T,L]=i.useState("default"),[A,I]=i.useState(Y({mostRecentlyUsedAccountType:m,smsAvailable:v.includes("sms"),emailAvailable:v.includes("email"),prefilledType:S?.prefill?.type}));i.useEffect((()=>{I(Y({mostRecentlyUsedAccountType:m,smsAvailable:v.includes("sms"),emailAvailable:v.includes("email"),prefilledType:S?.prefill?.type}))}),[v,m]),i.useEffect((()=>{"phone"===m&&I("sms");let e=v.indexOf("sms"),t=v.indexOf("email");e>-1&&e<t&&I("sms")}),[m,w,j]);let P=()=>{a({shouldCallAuthOnSuccess:!0}),setTimeout((()=>{L("default")}),150)};p.current=P;let W=i=>"email"===i?/*#__PURE__*/e.jsx(F,{isEditable:"email"===A,setIsEditable:()=>{I("email")},defaultValue:"email"===S?.prefill?.type?S.prefill.value:void 0},i):"sms"===i?/*#__PURE__*/e.jsx(B,{isEditable:"sms"===A,setIsEditable:()=>{I("sms")},defaultValue:"phone"===S?.prefill?.type?S.prefill.value:void 0},i):"apple"===i?/*#__PURE__*/e.jsx(_,{provider:"apple"},i):"discord"===i?/*#__PURE__*/e.jsx(_,{provider:"discord"},i):"farcaster"===i?/*#__PURE__*/e.jsx(q,{},i):"github"===i?/*#__PURE__*/e.jsx(_,{provider:"github"},i):"google"===i?/*#__PURE__*/e.jsx(_,{provider:"google"},i):"linkedin"===i?/*#__PURE__*/e.jsx(_,{provider:"linkedin"},i):"spotify"===i?/*#__PURE__*/e.jsx(_,{provider:"spotify"},i):"instagram"===i?/*#__PURE__*/e.jsx(_,{provider:"instagram"},i):"tiktok"===i?/*#__PURE__*/e.jsx(_,{provider:"tiktok"},i):"line"===i?/*#__PURE__*/e.jsx(_,{provider:"line"},i):"twitch"===i?/*#__PURE__*/e.jsx(_,{provider:"twitch"},i):"twitter"===i?/*#__PURE__*/e.jsx(_,{provider:"twitter"},i):"telegram"===i?/*#__PURE__*/e.jsx($,{},i):i.startsWith("privy:")?/*#__PURE__*/e.jsx(N,{appId:i.replace("privy:","")},i):b.toWalletButtons({walletList:h.appearance.walletList,walletChainType:S?.walletChainType??h.appearance.walletChainType,connectors:d,connectOnly:t,ignore:v,walletConnectEnabled:h.externalWallets.walletConnect.enabled,forceWallet:{wallet:i,chainType:f??"ethereum"}}),E=k.flatMap(W),R=w.filter((e=>e!==y&&e!==x?.loginMethod)).flatMap(W),D=j.filter((e=>e!==y&&e!==x?.loginMethod)).flatMap(W),[O,V]=c.splitAtIndex([...E,...R,...D],ee({primary:R.length+E.length,overflow:D.length}));/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(l.ModalHeader,{title:h.appearance.landingHeader,onClose:P,backFn:"default"===T?void 0:()=>{L("default")}}),"default"===T&&/*#__PURE__*/e.jsx(te,{}),"default"===T&&("string"==typeof h.appearance.loginMessage?/*#__PURE__*/e.jsx(c.Subtitle,{children:h.appearance.loginMessage}):h.appearance.loginMessage),/*#__PURE__*/e.jsx(c.AlignBottom,{style:{overflow:"hidden"},children:/*#__PURE__*/e.jsxs(c.LoginMethodContainerWithScrollShadows,{$colorScheme:g,children:["default"===T&&/*#__PURE__*/e.jsxs(e.Fragment,{children:[O,V.length>0&&/*#__PURE__*/e.jsx(G,{text:"More options",icon:/*#__PURE__*/e.jsx(M.default,{}),onClick:()=>L("overflow")})]}),"overflow"===T&&/*#__PURE__*/e.jsx(e.Fragment,{children:V}),C&&"default"===T&&/*#__PURE__*/e.jsx(U,{})]})}),h&&/*#__PURE__*/e.jsx(l.TermsAndConditions,{app:h}),/*#__PURE__*/e.jsx(l.BlobbyFooter,{})]})},exports.LandingScreenView=({connectOnly:t})=>{let{closePrivyModal:a}=r.usePrivyInternal(),{data:d,setModalData:p,onUserCloseViaDialogOrKeybindRef:u,navigate:h}=o.usePrivyModal(),y=n.useAppConfig(),f=d?.login,x=y.appearance.walletList,w=f?.walletChainType??y.appearance.walletChainType,{accountType:j,walletClientType:v,chainType:C}=c.useRecentlyUsedLogin(),k=i.useMemo((()=>j&&"guest"!==j&&"authorization_key"!==j&&"cross_app"!==j?s.toDisplayFromAccountType(j):null),[j]),{email:M,sms:T,google:L,twitter:A,discord:P,github:W,spotify:E,instagram:R,tiktok:D,line:V,twitch:H,linkedin:z,apple:ee,wallet:te,farcaster:ie,telegram:ae}=i.useMemo((()=>f?.loginMethods?g.toObjectKeys(f.loginMethods,!0):null),[f])??y.loginMethods,{wallets:le}=m.useWalletsListController({enabled:c.shouldFetchWcRegistryListings(te?x:[]),walletList:x,walletChainType:w}),ne=y.customOAuthProviders,re=y.crossAppProviders,{passkey:oe}=y.loginMethods,se=[M&&"email",T&&"sms",L&&"google",A&&"twitter",P&&"discord",W&&"github",E&&"spotify",R&&"instagram",D&&"tiktok",V&&"line",H&&"twitch",z&&"linkedin",ee&&"apple",ie&&"farcaster",ae&&"telegram",...ne.map((e=>e.provider)),...re].filter((e=>!!e)),ce=se.length>0,de=i.useMemo((()=>te&&!ce?"web3-first":te&&y?.appearance.loginGroupPriority||"web2-first"),[te,ce,y?.appearance.loginGroupPriority]),pe=y?.appearance.hideDirectWeb2Inputs,[ue,he]=i.useState("default"),[ge,me]=i.useState(Y({mostRecentlyUsedAccountType:j,smsAvailable:T,emailAvailable:M,prefilledType:f?.prefill?.type}));i.useEffect((()=>{me(Y({mostRecentlyUsedAccountType:j,smsAvailable:T,emailAvailable:M,prefilledType:f?.prefill?.type}))}),[M,T,j]);let ye=()=>{a({shouldCallAuthOnSuccess:!0}),setTimeout((()=>{he("default")}),150)};u.current=ye;let fe=[];v&&te?fe.push(v):k?.loginMethod&&se.includes(k.loginMethod)&&fe.push(k.loginMethod);let xe=i=>{if("email"===i)/*#__PURE__*/return e.jsx(F,{isEditable:"email"===ge,setIsEditable:()=>{me("email")},defaultValue:"email"===f?.prefill?.type?f.prefill.value:void 0},i);if("sms"===i)/*#__PURE__*/return e.jsx(B,{isEditable:"sms"===ge,setIsEditable:()=>{me("sms")},defaultValue:"phone"===f?.prefill?.type?f.prefill.value:void 0},i);if("apple"===i)/*#__PURE__*/return e.jsx(_,{provider:"apple"},i);if("discord"===i)/*#__PURE__*/return e.jsx(_,{provider:"discord"},i);if("farcaster"===i)/*#__PURE__*/return e.jsx(q,{},i);if("github"===i)/*#__PURE__*/return e.jsx(_,{provider:"github"},i);if("google"===i)/*#__PURE__*/return e.jsx(_,{provider:"google"},i);if("linkedin"===i)/*#__PURE__*/return e.jsx(_,{provider:"linkedin"},i);if("tiktok"===i)/*#__PURE__*/return e.jsx(_,{provider:"tiktok"},i);if("line"===i)/*#__PURE__*/return e.jsx(_,{provider:"line"},i);if("twitch"===i)/*#__PURE__*/return e.jsx(_,{provider:"twitch"},i);if("spotify"===i)/*#__PURE__*/return e.jsx(_,{provider:"spotify"},i);if("instagram"===i)/*#__PURE__*/return e.jsx(_,{provider:"instagram"},i);if("twitter"===i)/*#__PURE__*/return e.jsx(_,{provider:"twitter"},i);if("telegram"===i)/*#__PURE__*/return e.jsx($,{},i);if(o.isCustomOAuthProvider(i))/*#__PURE__*/return e.jsx(_,{provider:i},i);if(i.startsWith("privy:")){let t=i.split(":")[1];if(!t)throw Error("Invalid cross-app provider format. App ID missing.");/*#__PURE__*/return e.jsx(N,{appId:t},i)}let a=le.findIndex((({id:e})=>e===m.WalletFilterer.normalize(i))),l="solana"===C?"solana-only":"ethereum-only";/*#__PURE__*/return e.jsx(m.WalletRow,{recent:!0,index:a,data:{wallets:le,walletChainType:l,handleWalletClick(e){p((t=>({...t,externalConnectWallet:{walletList:x,walletChainType:l,preSelectedWalletId:e.id}}))),h(t?"ConnectOnlyLandingScreen":"AuthenticateWithWalletScreen")}}})},we=le.filter((e=>e.id!==m.WalletFilterer.normalize(v||""))),je=we.map(((i,a)=>/*#__PURE__*/e.jsx(m.WalletRow,{index:a,data:{walletChainType:w,wallets:we,handleWalletClick(e){p((t=>({...t,externalConnectWallet:{walletList:x,walletChainType:w,preSelectedWalletId:e.id}}))),h(t?"ConnectOnlyLandingScreen":"AuthenticateWithWalletScreen")}}},i.id))),ve=se.filter((e=>e!==k?.loginMethod)).flatMap(xe),Ce=fe.flatMap(xe);"web3-first"===de&&"default"===ue?je.unshift(...Ce):"web2-first"===de&&ve.unshift(...Ce);let be="web2-overflow"===ue?()=>he("default"):void 0,Se=se.filter((e=>"email"!==e&&"sms"!==e)),ke=Q({priority:de,email:M,sms:T,social:Se}),Me=X({priority:de,email:M,sms:T,social:Se}),Te=/*#__PURE__*/e.jsx(b.WalletOverflowButton,{text:Z({priority:de}),onClick:()=>{p({...d,externalConnectWallet:{walletChainType:f?.walletChainType??y.appearance.walletChainType}}),h(t?"ConnectOnlyLandingScreen":"AuthenticateWithWalletScreen")}}),Le=/*#__PURE__*/e.jsx(G,{text:ke,icon:Me,onClick:()=>he("web2-overflow")}),Ae=pe?0:1,Ie=te&&je.length>0,Pe=0===ve.length&&te&&0===je.length,We=5-(Ie?1:0),Ee="default"===ue&&y?.appearance.logo,Ne="default"===ue&&y.appearance.loginMessage;/*#__PURE__*/return e.jsxs(S.ScreenLayout,{title:y.appearance.landingHeader,icon:Ee?/*#__PURE__*/e.jsx(I,{}):void 0,iconVariant:Ee?"logo":void 0,onClose:ye,showClose:!0,onBack:be,showBack:!!be,helpText:y||oe&&"default"===ue?/*#__PURE__*/e.jsxs(e.Fragment,{children:[oe&&"default"===ue&&/*#__PURE__*/e.jsx(U,{}),y&&/*#__PURE__*/e.jsx(l.TermsAndConditions,{app:y})]}):void 0,watermark:!0,children:[Ne&&("string"==typeof y.appearance.loginMessage?/*#__PURE__*/e.jsx(K,{children:y.appearance.loginMessage}):/*#__PURE__*/e.jsx(J,{children:y.appearance.loginMessage})),/*#__PURE__*/e.jsx(c.LoginMethodContainerWithScrollShadows,{$colorScheme:y.appearance.palette.colorScheme,children:"default"===ue&&"web2-first"===de?/*#__PURE__*/e.jsxs(e.Fragment,{children:[ve.length>We?ve.slice(0,We-1):ve,ve.length>We&&Le,Ie&&Te,Pe&&/*#__PURE__*/e.jsx(O,{chainType:y.appearance.walletChainType})]}):"default"===ue&&"web3-first"===de?/*#__PURE__*/e.jsxs(e.Fragment,{children:[te&&/*#__PURE__*/e.jsxs(e.Fragment,{children:[je.length>We?je.slice(0,We-1):je,je.length>We&&Te]}),ve.length>Ae&&Le,ve.length===Ae&&ve[0],Pe&&/*#__PURE__*/e.jsx(O,{chainType:y.appearance.walletChainType})]}):"web2-overflow"===ue?/*#__PURE__*/e.jsx(e.Fragment,{children:"web3-first"===de?ve:ve.slice(3)}):null})]})};
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("./context-Dn8Hzo8O.js"),i=require("./CustomLandingScreenView-ClPdt2GY.js");require("react"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("@heroicons/react/24/outline/UserCircleIcon"),require("styled-components"),require("./ModalHeader-4MV7Tgk7.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./internal-context-NWsAL807.js"),require("ofetch"),require("./get-is-unified-wallet-CHHPpmxX.js"),require("viem"),require("./index-4-C2N_7K.js"),require("uuid"),require("jose"),require("eventemitter3"),require("./useActiveWallet-B5cSS56I.js"),require("zustand"),require("react-device-detect"),require("./prepareFundingModalData-Bap-QRCV.js"),require("./events-context-Di6--rDg.js"),require("viem/utils"),require("./getPublicClient-CGlodIp_.js"),require("./useWallets-DPdw6ah8.js"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-DobNyfbl.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("js-cookie"),require("./frame-B14fp9oC.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-BcAsQTGF.js"),require("./getEmbeddedConnectedWallet-6TsVZJkD.js"),require("lucide-react"),require("./ConnectEmailForm-DeN1Pg_E.js"),require("./Button-DpuRzAgk.js"),require("./Chip-ChrHHazc.js"),require("./LoadingSkeleton-DoCrfGnl.js"),require("./EmailInputForm-tjrhBacA.js"),require("./ErrorMessage-f0cRWc29.js"),require("./farcaster-CWHXGAib.js"),require("./ConnectWalletView-B33uROyL.js"),require("@heroicons/react/24/outline"),require("@tanstack/react-virtual"),require("@heroicons/react/24/outline/CheckIcon"),require("./copy-BiZ7dtqy.js"),require("./QrCode-DvJPyneT.js"),require("qrcode"),require("./useI18n-D21RT6EH.js"),require("./WalletCards-BfpeHH5n.js"),require("./Screen-CJM19YNL.js"),require("./index-CRFXS9pP.js"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("./Link-DmzPZ_M7.js"),require("./ConnectPhoneForm-CIaHyHT9.js"),require("./twitter-BVVRWkcG.js"),require("./twitch-BNvhZb2Y.js"),require("./telegram-D3O0_F1a.js"),require("./WalletButtonList-C6cavPqd.js"),require("./InjectedWalletIcon-UY3nMvZo.js"),require("@heroicons/react/24/outline/WalletIcon"),require("./ScreenLayout-Bbhw-EIr.js");const u={component:()=>{let u=r.useAppConfig();return u.loginMethodsAndOrder&&u.loginMethodsAndOrder.primary.length>0?/*#__PURE__*/e.jsx(i.CustomLandingScreenView,{connectOnly:!1}):/*#__PURE__*/e.jsx(i.LandingScreenView,{connectOnly:!1})},isCaptchaRequired:!0,isUnauthenticatedScreem:!0};exports.LandingScreen=u,exports.default=u;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("react"),n=require("./ModalHeader-4MV7Tgk7.js"),t=require("./ScreenHeader-CyURV6Ti.js"),i=require("./FundWalletMethodHeader-DFV8N4os.js"),a=require("./Chip-ChrHHazc.js"),l=require("./Subtitle-Dtmrw8l5.js"),o=require("./context-Dn8Hzo8O.js"),s=require("./useActiveWallet-B5cSS56I.js"),u=require("./internal-context-NWsAL807.js"),c=require("./get-is-unified-wallet-CHHPpmxX.js"),d=require("./useWallets-DPdw6ah8.js"),h=require("./WalletButtonList-C6cavPqd.js"),p=require("./styles-D4VeJNv1.js");require("styled-components"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./LoadingSkeleton-DoCrfGnl.js"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("zustand"),require("react-device-detect"),require("./prepareFundingModalData-Bap-QRCV.js"),require("eventemitter3"),require("./events-context-Di6--rDg.js"),require("viem"),require("viem/utils"),require("./getPublicClient-CGlodIp_.js"),require("ofetch"),require("lucide-react"),require("./index-4-C2N_7K.js"),require("uuid"),require("jose"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("mipd"),require("@privy-io/popup"),require("./paths-DizMb-lU.js"),require("./usePrivy-DobNyfbl.js"),require("@scure/base"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("js-cookie"),require("./frame-B14fp9oC.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-BcAsQTGF.js"),require("./getEmbeddedConnectedWallet-6TsVZJkD.js"),require("./InjectedWalletIcon-UY3nMvZo.js"),require("@heroicons/react/24/outline/WalletIcon");const y={component:()=>{let a,{connectors:p}=u.usePrivyInternal(),{setModalData:y,data:m,navigate:q}=c.usePrivyModal(),C=o.useAppConfig(),{wallets:j}=d.useWallets(),w=p.filter(s.isSolanaWalletConnector).flatMap((e=>e.wallets)),[f,x]=r.useState("default"),T="solana"===m?.funding?.chainType,v=!!m?.funding?.crossChainBridgingEnabled;a="ethereum"===m?.funding?.chainType?m.funding.erc20Address&&!m.funding.isUSDC?"ethereum-only":v&&!m.funding.chain.testnet?"ethereum-and-solana":"ethereum-only":v&&!m.funding?.isUSDC?"ethereum-and-solana":"solana-only";let W=j.filter((e=>"privy"!==e.walletClientType)),S=W.map((e=>e.walletClientType)),F=w.filter((e=>"privy"!==e.walletClientType)),b=F.map((e=>e.walletClientType)),M=[],D={...m.funding};D.usingDefaultFundingMethod&&(D.usingDefaultFundingMethod=!1);let k=({wallet:e,walletChainType:r})=>{y({...m,funding:{...D,connectedWallet:e,onContinueWithExternalWallet:()=>q(A({destChainType:T?"solana":"ethereum",sourceChainType:r}))},solanaFundingData:m?.solanaFundingData?{...m.solanaFundingData,sourceWalletData:{address:e.address,walletClientType:e.walletClientType}}:void 0}),q("FundingAmountEditScreen")};"solana-only"!==a&&M.push(...W.map(((r,n)=>/*#__PURE__*/e.jsx(g,{onClick:()=>k({wallet:r,walletChainType:"ethereum"}),icon:r.meta.icon,name:r.meta.name,chainType:r.type},n)))),"ethereum-only"!==a&&M.push(...F.map(((r,n)=>/*#__PURE__*/e.jsx(g,{onClick:()=>k({wallet:r,walletChainType:"solana"}),icon:r.meta.icon,name:r.meta.name,chainType:r.type},n)))),M.push(...h.toWalletButtons({walletList:C.appearance.walletList.filter((e=>!W.some((r=>r.walletClientType===e))&&!F.some((r=>r.walletClientType===e)))),walletChainType:a,connectors:p,connectOnly:!0,ignore:[...C.appearance.walletList,...S,...b],walletConnectEnabled:C.externalWallets.walletConnect.enabled}));let E=/*#__PURE__*/e.jsx(h.WalletOverflowButton,{text:"More wallets",onClick:()=>x("overflow")}),A=({sourceChainType:e,destChainType:r})=>"ethereum"===e&&"solana"===r?"AwaitingEvmToSolBridgingScreen":"ethereum"===e&&"ethereum"===r?"AwaitingExternalEthereumTransferScreen":"solana"===e&&"ethereum"===r?"AwaitingSolToEvmBridgingScreen":D.externalSolanaFundingScreen;return r.useEffect((()=>{y({...m,externalConnectWallet:{onCompleteNavigateTo:({address:e,walletClientType:r,walletChainType:n})=>{let t=n??"ethereum",i="ethereum"===t?W.find((n=>n.address===e&&n.walletClientType===r)):F.find((n=>n.address===e&&n.walletClientType===r));return y({...m,funding:{...D,connectedWallet:i,onContinueWithExternalWallet:()=>{q(A({destChainType:T?"solana":"ethereum",sourceChainType:t}))}},solanaFundingData:m?.solanaFundingData?{...m.solanaFundingData,sourceWalletData:{address:e||"",walletClientType:r||""}}:void 0}),"FundingAmountEditScreen"}}})}),[]),"overflow"===f?/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(n.ModalHeader,{backFn:()=>x("default")},"header"),/*#__PURE__*/e.jsxs(s.LoginMethodContainer,{children:[/*#__PURE__*/e.jsx(l.Subtitle,{style:{color:"var(--privy-color-foreground-3)",textAlign:"left"},children:"More wallets"}),M]}),/*#__PURE__*/e.jsx(n.BlobbyFooter,{})]}):/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(i.t,{}),/*#__PURE__*/e.jsx(t.CenteredScreenHeader,{title:"Transfer from wallet",description:"Connect a wallet to deposit funds or send funds manually to your wallet address."}),/*#__PURE__*/e.jsxs(s.LoginMethodContainer,{children:[M.length>4?M.slice(0,3):M,M.length>4&&E]}),/*#__PURE__*/e.jsx(n.BlobbyFooter,{})]})}};let g=({onClick:r,icon:n,name:t,chainType:i})=>/*#__PURE__*/e.jsxs(s.LoginMethodButton,{onClick:r,children:[/*#__PURE__*/e.jsx(p.IconContainer,{style:{width:20},children:/*#__PURE__*/e.jsx("img",{src:n})}),t,/*#__PURE__*/e.jsx(a.Chip,{color:"gray",style:{marginLeft:"auto"},children:"Connected"}),"solana"===i&&/*#__PURE__*/e.jsx(a.Chip,{color:"gray",children:"Solana"})]});exports.TransferFromWalletScreen=y,exports.default=y;
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("styled-components"),i=require("./Layouts-dRL0OSpp.js"),s=require("./ModalHeader-4MV7Tgk7.js"),n=require("./ScreenHeader-CyURV6Ti.js"),l=require("./FundWalletMethodHeader-DFV8N4os.js"),t=require("./InjectedWalletIcon-UY3nMvZo.js"),a=require("./index-CRFXS9pP.js"),d=require("./Row-CxDF-VMy.js"),c=require("./Value-C-XtZyFa.js"),o=require("./Address-Doz93lgh.js"),j=require("./NetworkIcon-BZ9Mj6vV.js"),u=require("./useActiveWallet-B5cSS56I.js");let x=/*#__PURE__*/r.styled.div.withConfig({displayName:"NetworkColumn",componentId:"sc-5bdbf842-0"})(["display:flex;flex-direction:row;align-items:center;gap:4px;"]);exports.TransferOrBridgeLoadingScreen=({walletClientType:r,displayName:h,addressToFund:m,chainId:g,chainName:w,isBridging:p,isErc20Flow:I,totalPriceInNativeCurrency:q,totalPriceInUsd:y,gasPriceInNativeCurrency:C,gasPriceInUsd:N})=>{let S=u.useExternalWalletListing(r);/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(l.t,{}),/*#__PURE__*/e.jsx(a.NeutralSpinner,{centerIcon:/*#__PURE__*/e.jsx(t.InjectedWalletIcon,{icon:S?.image_url?.md,name:r})}),/*#__PURE__*/e.jsx(n.CenteredScreenHeader,{style:{marginTop:"8px",marginBottom:"12px"},title:`${p?"Bridging":"Confirming"} with ${h}`}),!p&&!I&&/*#__PURE__*/e.jsxs(d.Rows,{children:[/*#__PURE__*/e.jsxs(d.Row,{children:[/*#__PURE__*/e.jsx(c.LabelSm,{children:"Total"}),/*#__PURE__*/e.jsx(c.Value,{children:y||q})]}),/*#__PURE__*/e.jsxs(d.Row,{children:[/*#__PURE__*/e.jsx(c.LabelSm,{children:"To"}),/*#__PURE__*/e.jsx(c.Value,{children:/*#__PURE__*/e.jsx(o.Address,{address:m,showCopyIcon:!1})})]}),/*#__PURE__*/e.jsxs(d.Row,{children:[/*#__PURE__*/e.jsx(c.LabelSm,{children:"Network"}),/*#__PURE__*/e.jsx(c.Value,{children:/*#__PURE__*/e.jsxs(x,{children:[/*#__PURE__*/e.jsx(j.NetworkIcon,{chainId:g,height:16,width:16})," ",w]})})]}),C&&/*#__PURE__*/e.jsxs(d.Row,{children:[/*#__PURE__*/e.jsx(c.LabelSm,{children:"Estimated fee"}),/*#__PURE__*/e.jsx(c.Value,{children:N||C})]})]}),/*#__PURE__*/e.jsx(i.ConfigurableSpacer,{height:24}),/*#__PURE__*/e.jsx(s.BlobbyFooter,{})]})};
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),n=require("lucide-react"),t=require("./useActiveWallet-B5cSS56I.js"),l=require("./index-4-C2N_7K.js"),o=require("react-device-detect"),a=require("styled-components"),i=require("./InjectedWalletIcon-UY3nMvZo.js"),c=require("./Chip-ChrHHazc.js"),r=require("./internal-context-NWsAL807.js"),s=require("./get-is-unified-wallet-CHHPpmxX.js");const p=({provider:n,displayName:a,logo:c,connectOnly:p,connector:u})=>{let h,{navigate:T,setModalData:f}=s.usePrivyModal(),{connectWallet:C}=r.usePrivyInternal(),m=t.useRecentlyUsedLogin(),_=t.useExternalWalletListing(n),x="wallet_connect_v2"===u.connectorType?n:u.walletClientType,g=window.matchMedia("(display-mode: standalone)").matches,j=t.getWalletConfigForConnector({connectorType:u.connectorType,walletClientType:x});h=j&&j.chainTypes.includes(u.chainType)?()=>{j.isInstalled||"solana"===u.chainType&&"isInstalled"in u&&u.isInstalled?(C(u,x),T(p?"ConnectOnlyStatusScreen":"ConnectionStatusScreen")):o.isMobile?(f({installWalletModalData:{walletConfig:j,chainType:u.chainType,connectOnly:p}}),T("WalletInterstitialScreen")):(f({installWalletModalData:{walletConfig:j,chainType:u.chainType,connectOnly:p}}),T("InstallWalletScreen"))}:"coinbase_wallet"!==u.connectorType||"eoaOnly"!==u.coinbaseWalletConfig.preference?.options||!o.isMobile||g||t.isCoinbaseWalletInstalled()?()=>{(!l.e(window.navigator.userAgent)||event?.isTrusted)&&(C(u,x),p?"wallet_connect_v2"===u.connectorType?(f((e=>({...e,externalConnectWallet:{...e?.externalConnectWallet,preSelectedWalletId:"wallet_connect_qr"}}))),T("ConnectOnlyLandingScreen")):T("ConnectOnlyStatusScreen"):T("ConnectionStatusScreen"))}:()=>{window.location.href=`https://go.cb-w.com/dapp?cb_url=${encodeURI(window.location.href)}`};let v=a||_?.metadata?.shortName||_?.name||u.walletClientType;/*#__PURE__*/return e.jsxs(d,{onClick:h,children:[/*#__PURE__*/e.jsx(i.InjectedWalletIcon,{icon:c||_?.image_url?.md,name:v}),/*#__PURE__*/e.jsx("span",{children:v}),/*#__PURE__*/e.jsxs(w,{id:"chip-container",children:[m?.walletClientType===x&&m?.chainType===u.chainType?/*#__PURE__*/e.jsx(y,{color:"gray",children:"Recent"}):/*#__PURE__*/e.jsx("span",{id:"connect-text",children:"Connect"}),"solana"===u.chainType&&/*#__PURE__*/e.jsx(y,{color:"gray",children:"Solana"})]})]})};let d=/*#__PURE__*/a.styled(t.LoginMethodButton).withConfig({displayName:"ConnectWalletButton",componentId:"sc-5fe2f19b-0"})(["> span{color:var(--privy-color-foreground);}> #chip-container > #connect-text{font-weight:500;color:var(--privy-color-accent);opacity:0;transition:opacity 0.1s ease-out;}:hover > #chip-container > #connect-text{opacity:1;}@media (max-width:440px){> #chip-container > #connect-text{display:none;}}"]),y=/*#__PURE__*/a.styled(c.Chip).withConfig({displayName:"StyledChip",componentId:"sc-5fe2f19b-1"})(["margin-left:auto;"]),w=/*#__PURE__*/a.styled.div.withConfig({displayName:"ChipContainer",componentId:"sc-5fe2f19b-2"})(["display:flex;flex-wrap:wrap;gap:8px;margin-left:auto;"]);const u=["coinbase_wallet","base_account"];let h=["metamask","okx_wallet","rainbow","uniswap","bybit_wallet","ronin_wallet","haha_wallet","uniswap_extension","zerion","rabby_wallet","cryptocom","binance","kraken_wallet"];const T=["safe"],f=["phantom","backpack","solflare","jupiter","universal_profile"];exports.WalletOverflowButton=({onClick:l,text:o})=>/*#__PURE__*/e.jsxs(t.LoginMethodButton,{onClick:l,children:[/*#__PURE__*/e.jsx(t.LoginMethodIconWrapper,{children:/*#__PURE__*/e.jsx(n.Wallet,{})}),/*#__PURE__*/e.jsx(t.Grow,{children:o})]}),exports.toWalletButtons=({walletList:n,walletChainType:t,connectors:o,connectOnly:a,ignore:i,walletConnectEnabled:c,forceWallet:r})=>{let s=[],d=[],y=[],w=o.filter((e=>"ethereum-only"===t?"ethereum"===e.chainType:"solana-only"!==t||"solana"===e.chainType)),C=w.find((e=>"wallet_connect_v2"===e.connectorType));for(let[o,m]of(r?[r.wallet]:n).entries()){if("detected_ethereum_wallets"===m)for(let[n,t]of w.filter((({chainType:e,connectorType:n,walletClientType:t})=>"solana"!==e&&("uniswap_wallet_extension"===t||"uniswap_extension"===t?!i.includes("uniswap"):"crypto.com_wallet_extension"===t||"crypto.com_onchain"===t?!i.includes("cryptocom"):"injected"===n&&!i.includes(t)))).entries()){let{walletClientType:l,walletBranding:i,chainType:c}=t;("unknown"===l?d:s).push(/*#__PURE__*/e.jsx(p,{connectOnly:a,provider:l,logo:i.icon,displayName:i.name,connector:t},`${o}-${m}-${l}-${c}-${n}`))}if("detected_solana_wallets"===m)for(let[n,l]of w.filter((({chainType:e,walletClientType:n})=>{if("solana"===e)return"ethereum-only"!==t&&!i.includes(n)})).entries()){let{walletClientType:t,walletBranding:i,chainType:c}=l;("unknown"===t?d:s).push(/*#__PURE__*/e.jsx(p,{connectOnly:a,provider:t,logo:i.icon,displayName:i.name,connector:l},`${o}-${m}-${t}-${c}-${n}`))}if(f.includes(m)){let n=w.find((e=>"injected"===e.connectorType&&e.walletClientType===m||e.connectorType===m));if(n&&s.push(/*#__PURE__*/e.jsx(p,{connectOnly:a,provider:m,connector:n},`${o}-${m}`)),"solana-only"===t||"ethereum-and-solana"===t){let n=w.find((({chainType:e,walletClientType:n})=>"solana"===e&&n===m));n&&s.push(/*#__PURE__*/e.jsx(p,{connectOnly:a,provider:m,connector:n},`${m}-solana`))}}else if(h.includes(m)){let n=w.find((e=>"uniswap"===m?"uniswap_wallet_extension"===e.walletClientType||"uniswap_extension"===e.walletClientType:"cryptocom"===m?"crypto.com_wallet_extension"===e.walletClientType||"crypto.com_onchain"===e.walletClientType:"injected"===e.connectorType&&e.walletClientType===m));if(c&&!n&&(n=C),n&&s.push(/*#__PURE__*/e.jsx(p,{connectOnly:a,provider:m,connector:n,logo:"injected"===n.connectorType?n.walletBranding.icon:void 0,displayName:"injected"===n.connectorType?n.walletBranding.name:void 0},`${o}-${m}`)),"solana-only"===t||"ethereum-and-solana"===t){let n=w.find((({chainType:e,walletClientType:n})=>"solana"===e&&n===m));n&&s.push(/*#__PURE__*/e.jsx(p,{connectOnly:a,provider:m,connector:n},`${m}-solana`))}}else if(u.includes(m)){let n=w.find((({connectorType:e})=>e===m));n&&s.push(/*#__PURE__*/e.jsx(p,{connectOnly:a,provider:m,connector:n,displayName:"coinbase_wallet"===n.walletClientType?"Coinbase":"Base",logo:"coinbase_wallet"===n.walletClientType?l.COINBASE_WALLET_DATA_URI:l.BASE_ACCOUNT_DATA_URI},`${o}-${m}`))}else if(T.includes(m))C&&y.push(/*#__PURE__*/e.jsx(p,{connectOnly:a,provider:m,connector:C},`${o}-${m}`));else if("wallet_connect"===m)C&&y.push(/*#__PURE__*/e.jsx(p,{connectOnly:a,provider:m,connector:C,logo:C.walletBranding.icon,displayName:"WalletConnect"},`${o}-${m}`));else if(m===r?.wallet){let t="ethereum"===r.chainType&&n.includes("detected_ethereum_wallets"),l="solana"===r.chainType&&n.includes("detected_solana_wallets");if(t||l){let n=w.find((({walletClientType:e})=>e===m));n&&s.push(/*#__PURE__*/e.jsx(p,{connectOnly:a,provider:m,displayName:n.walletBranding?.name,logo:n.walletBranding?.icon,connector:n},`${o}-${m}`))}}}return[...d,...s,...y]};
@@ -1 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),t=require("react"),n=require("@privy-io/js-sdk-core");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=/*#__PURE__*/a(require("tinycolor2"));const r={appearance:{landingHeader:"Log in or sign up",theme:"light",walletList:["detected_ethereum_wallets","detected_solana_wallets","metamask","coinbase_wallet","rainbow","base_account","wallet_connect"]},walletConnectCloudProjectId:"34357d3c125c2bcf2ce2bc3309d98715",_render:{standalone:!1},fundingMethodConfig:{moonpay:{useSandbox:!1}}};let l=new Set(["coinbase_wallet","base_account","cryptocom","metamask","okx_wallet","phantom","rainbow","uniswap","zerion","universal_profile","bybit_wallet","ronin_wallet","haha_wallet","wallet_connect","wallet_connect_qr","wallet_connect_qr_solana","detected_solana_wallets","detected_ethereum_wallets","rabby_wallet","safe","solflare","backpack","jupiter","binance","binanceus","bitget_wallet","kraken_wallet"]),i=e=>l.has(e),s=(e,t,n)=>n.indexOf(e)===t;const c=({input:e,overrides:t})=>t?t.primary.concat(t.overflow??[]).filter(i).filter(s):e?e.filter(i).filter(s):r.appearance.walletList;let d=/paymaster\.biconomy\.io\/api/i,u={mode:"SPONSORED",calculateGasLimits:!0,expiryDuration:300,sponsorshipInfo:{webhookData:{},smartAccountInfo:{name:"BICONOMY",version:"2.0.0"}}};const g=(e,t)=>e&&d.test(e)?u:t&&t.policy_id?{policyId:t.policy_id}:void 0;function _(e,t){let n=Math.max(0,Math.min(1,e.toHsl().l+t));return o.default({...e.toHsl(),l:n})}function p(e,t){let n=e.getLuminance(),a=t.getLuminance();return(Math.max(n,a)+.05)/(Math.min(n,a)+.05)}function f(e,t){if(!e){let e=t?b:m;return{accent:o.default(e.background.interactive),accentLight:o.default(e.background.interactive),accentHover:o.default(e.background["interactive-hover"]),accentDark:o.default(e.background["interactive-clicked"]),accentDarkest:o.default(e.background["interactive-disabled"])}}let n=o.default(e);return{accent:n,accentLight:_(n,.15),accentHover:_(n,.3),accentDark:_(n,-.06),accentDarkest:_(n,-.6)}}function h({backgroundTheme:e,accentHex:t}){let n,a;"light"===e?n=!1:"dark"===e?n=!0:(n=.5>=o.default(e).getLuminance(),a=o.default(e).toHslString());let r=n?"dark":"light",l=n?b:m,{accent:i,accentLight:s,accentHover:c,accentDark:d,accentDarkest:u}=f(t,n),g=function(e){let t=o.default(m.text.default),n=o.default(b.text.default),a=p(e,t),r=p(e,n),l=e.toHsl();return l.h>=220&&l.h<=300&&r>=3?b.text.default:a>r?m.text.default:b.text.default}(i),_=o.default(g),h=p(i,o.default(l.background.default))>=3;return{colorScheme:r,background:a||l.background.default,background2:l.background.elevated,background3:l.background.interactive,foreground:l.text.default,foreground2:l.text.muted,foreground3:l.text.placeholder,foreground4:l.border.default,accent:i.toHslString(),accentLight:s.toHslString(),accentHover:c.toHslString(),accentDark:d.toHslString(),accentDarkest:u.toHslString(),foregroundAccent:_.toHslString(),success:l.background.success,successDark:l.text.success,successLight:l.background.success,error:l.text.error,errorLight:l.background.error,warn:l.background.warning,warnLight:l.background.warning,warningDark:l.text.warning,errorDark:l.text.error,successBg:l.background.success,errorBg:l.background.error,errorBgHover:l.background["error-hover"],warnBg:l.background.warning,infoBg:l.background.info,infoBgHover:l.background["info-hover"],borderDefault:l.border.default,borderHover:l.border["default-hover"],borderFocus:l.border.focused,borderError:l.border.error,borderSuccess:l.border.success,borderWarning:l.border.warning,borderInfo:l.border.info,borderInteractive:l.border.interactive,borderInteractiveHover:l.border["interactive-hover"],backgroundHover:l.background["default-hover"],backgroundClicked:l.background["default-clicked"],backgroundDisabled:l.background["default-disabled"],backgroundInteractive:l.background.interactive,backgroundInteractiveHover:l.background["interactive-hover"],backgroundInteractiveClicked:l.background["interactive-clicked"],backgroundInteractiveDisabled:l.background["interactive-disabled"],foregroundHover:l.text.default,foregroundClicked:l.text.default,foregroundDisabled:l.text["default-disabled"],foregroundInteractive:l.text.interactive,foregroundInteractiveHover:l.text["interactive-hover"],accentHasGoodContrast:h?"1":"0",linkNavigationColor:h?i.toHslString():l.text.default,linkNavigationDecoration:h?"none":"underline",iconDefault:l.icon.default,iconMuted:l.icon.muted,iconSubtle:l.icon.subtle,iconInverse:l.icon.inverse,iconSuccess:l.icon.success,iconWarning:l.icon.warning,iconError:l.icon.error,iconInteractive:l.icon.interactive,iconDefaultHover:l.icon["default-hover"],iconMutedHover:l.icon["muted-hover"],iconSubtleHover:l.icon["subtle-hover"],iconDefaultClicked:l.icon["default-clicked"],iconMutedClicked:l.icon["muted-clicked"],iconSubtleClicked:l.icon["subtle-clicked"],iconDefaultDisabled:l.icon["default-disabled"],iconMutedDisabled:l.icon["muted-disabled"],iconSubtleDisabled:l.icon["subtle-disabled"],iconErrorHover:l.icon["error-hover"],iconInteractiveHover:l.icon["interactive-hover"],iconErrorClicked:l.icon["error-clicked"],iconInteractiveClicked:l.icon["interactive-clicked"],iconMutedDisabledAlt:l.icon["muted-disabled"],iconSubtleDisabledAlt:l.icon["subtle-disabled"]}}const b={background:{default:"#020713",elevated:"#1A2230","default-hover":"#101724","default-clicked":"#1A2230","default-disabled":"#020713",success:"#0E3E2D",warning:"#373827",error:"#2E0C18",interactive:"#8B86FF","error-hover":"#441821","interactive-hover":"#7B73E5","interactive-clicked":"#6560CC","interactive-disabled":"#141824",info:"#1F2937","info-hover":"#141824"},icon:{default:"#F8F8F8",muted:"#9BA2AE",subtle:"#7B8491",inverse:"#020713",success:"#88E3B5",warning:"#FDF27B",error:"#EF4444",interactive:"#88B6FF","default-hover":"#F8F8F8","muted-hover":"#AEB3BD","subtle-hover":"#8B939E","default-clicked":"#F8F8F8","muted-clicked":"#9097A5","subtle-clicked":"#78818E","default-disabled":"#404452","muted-disabled":"#404452","subtle-disabled":"#404452","error-hover":"#F05555","interactive-hover":"#7B73E5","error-clicked":"#EF4444","interactive-clicked":"#6560CC"},text:{default:"#F8F8F8",muted:"#9BA2AE",placeholder:"#7B8491",success:"#ACEECB",warning:"#FEF9A0",error:"#FCA5A5",interactive:"#A29EFF","default-disabled":"#404452","interactive-hover":"#8C88E5"},border:{default:"#1F2937",interactive:"#88B0FF",focused:"#F8F8FC",info:"#5B83D3",success:"#317056",warning:"#FBBF24",error:"#F87171","default-hover":"#34304A","interactive-hover":"#88B0FF"}},m={background:{default:"#FFFFFF",elevated:"#F1F2F9","default-hover":"#F8F9FC","default-clicked":"#F1F2F9","default-disabled":"#FFFFFF",success:"#DCFCE7",warning:"#FEF3C7",error:"#FEE2E2",interactive:"#5B4FFF","error-hover":"#FECACA","interactive-hover":"#4F46E5","interactive-clicked":"#4338CA","interactive-disabled":"#F1F2F9",info:"#E0E7FF","info-hover":"#EEF2FF"},icon:{default:"#110F2A",muted:"#64668B",subtle:"#9498B8",inverse:"#FFFFFF",success:"#33B287",warning:"#F59E0B",error:"#EF4444",interactive:"#564FFF","default-hover":"#1D1B35","muted-hover":"#64668B","subtle-hover":"#888AAE","default-clicked":"#060C23","muted-clicked":"#64668B","subtle-clicked":"#788804","default-disabled":"#CBCDE1","muted-disabled":"#CBCDE1","subtle-disabled":"#CBCDE1","error-hover":"#F06060","interactive-hover":"#4F46E5","error-clicked":"#DC3838","interactive-clicked":"#2BA482"},text:{default:"#040217",muted:"#64668B",placeholder:"#9498B8",success:"#135638",warning:"#906218",error:"#991B1B",interactive:"#5B4FFF","default-disabled":"#CBCDE1","interactive-hover":"#5B4FFF"},border:{default:"#E2E3F0",interactive:"#5B4FFF",focused:"#949DF9",info:"#F1F2F9",success:"#87D7B7",warning:"#FACD63",error:"#F69393","default-hover":"#E2E3F0","interactive-hover":"#5B4FFF"}};function v(e,t,a,o,l){let i,s,d,u,_,p,f,b,m,v,C,w,E,k,F,y,A,x=a?console.warn:()=>{},S=[];if(t?.loginMethods)for(let e of(i=t.loginMethods.includes("email"),s=t.loginMethods.includes("sms"),u=t.loginMethods.includes("wallet"),_=t.loginMethods.includes("google"),p=t.loginMethods.includes("twitter"),f=t.loginMethods.includes("discord"),C=t.loginMethods.includes("spotify"),w=t.loginMethods.includes("instagram"),b=t.loginMethods.includes("tiktok"),m=t.loginMethods.includes("line"),v=t.loginMethods.includes("twitch"),k=t.loginMethods.includes("github"),E=t.loginMethods.includes("linkedin"),F=t.loginMethods.includes("apple"),y=t.loginMethods.includes("farcaster"),A=t.loginMethods.includes("telegram"),d=t.loginMethods.includes("passkey"),t.loginMethods))"string"==typeof e&&e.startsWith("privy:")&&S.push(e);else i=e.email_auth,s=e.sms_auth,u=e.wallet_auth||e.solana_wallet_auth,_=e.google_oauth,p=e.twitter_oauth,f=e.discord_oauth,k=e.github_oauth,C=e.spotify_oauth,w=e.instagram_oauth,b=e.tiktok_oauth,m=e.line_oauth,v=e.twitch_oauth,E=e.linkedin_oauth,F=e.apple_oauth,y=e.farcaster_auth,A=e.telegram_auth,d=e.passkey_auth;e.passkey_auth&&(d=!0),"undefined"!=typeof window&&"function"!=typeof window.PublicKeyCredential&&(d=!1);let O=[i,s].filter(Boolean),M=[_,p,f,k,C,w,b,m,E,F,y,A].filter(Boolean),D=[u].filter(Boolean),I=t?.loginMethods?.includes("passkey")??!1,T=e.passkeys_for_signup_enabled??!1,L=[d&&(T||I)].filter(Boolean);if(O.length+M.length+D.length+L.length+S.length===0)throw Error("You must enable at least one login method");let B=void 0!==t?.appearance?.showWalletLoginFirst?t?.appearance?.showWalletLoginFirst:e.show_wallet_login_first;B&&0===D.length?(x("You should only enable `showWalletLoginFirst` when `wallet` logins are also enabled. `showWalletLoginFirst` has been set to false"),B=!1):B||M.length+O.length!==0||(x("You should only disable `showWalletLoginFirst` when `email`, `sms`, or social logins are also enabled. `showWalletLoginFirst` has been set to true"),B=!0);let U=t?.externalWallets?.walletConnect?.enabled??!0;t?.loginMethods&&t.loginMethodsAndOrder&&x("You should only configure one of `loginMethods` or `loginMethodsAndOrder`");let W=c({input:t?.appearance?.walletList,overrides:t?.loginMethodsAndOrder});if((W.includes("wallet_connect_qr")||W.includes("wallet_connect"))&&W.includes("wallet_connect_qr_solana"))throw Error("wallet_connect_qr and wallet_connect_qr_solana cannot both be present in walletList due to WalletConnect session conflicts.");let N=(({input:e})=>{if(!e||!e.primary[0])return;let t=[e.primary[0]],n=[];for(let n of(e.primary.length>4&&console.warn("You should not specify greater than 4 login methods in `loginMethodsAndOrder.primary`"),e.primary.slice(1)))t.includes(n)?console.warn(`Duplicated login method: ${n}`):t.push(n);for(let a of e.overflow??[])t.includes(a)||n.includes(a)?console.warn(`Duplicated login method: ${a}`):n.push(a);return{primary:t,overflow:n}})({input:t?.loginMethodsAndOrder}),H=t?.intl?.defaultCountry??"US",{chains:R,defaultChain:P}=function({supportedChains:e,defaultChainFromConfig:t}){let a;if(e){if(0===e.length)throw Error("`supportedChains` must contain at least one chain");a=n.dedupeSupportedChains(e)}else a=[...n.DEFAULT_SUPPORTED_CHAINS];let o=e?a[0]:n.mainnet,r=t??o;if(!a.find((e=>e.id===r.id)))throw Error("`defaultChain` must be included in `supportedChains`");return{chains:a,defaultChain:r}}({supportedChains:t?.supportedChains,defaultChainFromConfig:t?.defaultChain}),K=!!t?.defaultChain,Y=t?.customAuth?.getCustomAccessToken&&!1!==t?.customAuth?.enabled,q=Y?"all-users":e.embedded_wallet_config.ethereum.create_on_login,j=e.embedded_wallet_config.solana.create_on_login;e.solana_wallet_auth&&!t?.externalWallets?.solana?.connectors&&console.warn("App configuration has Solana wallet login enabled, but no Solana wallet connectors have been passed to Privy. Make sure to pass Solana connectors to the `config.externalWallets.solana.connectors` field of the `PrivyProvider`");let G=e.telegram_auth_config?{botId:e.telegram_auth_config.bot_id,botName:e.telegram_auth_config.bot_name,linkEnabled:e.telegram_auth_config.link_enabled,seamlessAuthEnabled:e.telegram_auth_config.seamless_auth_enabled}:void 0,$=e.funding_config?{methods:e.funding_config.methods,options:e.funding_config.options,defaultRecommendedAmount:e.funding_config.default_recommended_amount,defaultRecommendedCurrency:e.funding_config.default_recommended_currency,promptFundingOnWalletCreation:e.funding_config.prompt_funding_on_wallet_creation,crossChainBridgingEnabled:e.funding_config.cross_chain_bridging_enabled}:void 0,z=e.smart_wallet_config;return{id:e.id,appClientId:l,name:e.name,allowlistConfig:{errorTitle:e.allowlist_config.error_title,errorDetail:e.allowlist_config.error_detail,errorCtaText:e.allowlist_config.cta_text,errorCtaLink:e.allowlist_config.cta_link},legacyWalletUiConfig:e.legacy_wallet_ui_config,appearance:{logo:t?.appearance?.logo??e.logo_url??void 0,landingHeader:t?.appearance?.landingHeader??r.appearance.landingHeader,loginMessage:"string"==typeof t?.appearance?.loginMessage?t?.appearance?.loginMessage.slice(0,100):t?.appearance?.loginMessage,footerLogo:t?.appearance?.footerLogo,palette:h({backgroundTheme:t?.appearance?.theme??r.appearance.theme,accentHex:t?.appearance?.accentColor??e.accent_color}),loginGroupPriority:B?"web3-first":"web2-first",hideDirectWeb2Inputs:!!t?.appearance?.hideDirectWeb2Inputs,walletList:W,walletChainType:t?.appearance?.walletChainType??(({evmWalletAuth:e,solanaWalletAuth:t})=>e&&t?"ethereum-and-solana":e?"ethereum-only":t?"solana-only":"ethereum-only")({evmWalletAuth:e.wallet_auth??!1,solanaWalletAuth:e.solana_wallet_auth??!1})},loginMethods:{wallet:u,email:i,sms:s,passkey:d,google:_,twitter:p,discord:f,github:k,spotify:C,instagram:w,tiktok:b,line:m,twitch:v,linkedin:E,apple:F,farcaster:y,telegram:A},customOAuthProviders:(e.custom_oauth_providers??[]).filter((e=>!1!==e.enabled)),crossAppProviders:S,disablePlusEmails:e.disable_plus_emails,loginMethodsAndOrder:N,legal:{termsAndConditionsUrl:t?.legal?.termsAndConditionsUrl??e.terms_and_conditions_url,privacyPolicyUrl:t?.legal?.privacyPolicyUrl??e.privacy_policy_url,requireUsersAcceptTerms:e.require_users_accept_terms??!1},walletConnectCloudProjectId:t?.walletConnectCloudProjectId??e.wallet_connect_cloud_project_id??r.walletConnectCloudProjectId,rpcConfig:{rpcUrls:{},rpcTimeouts:t?.externalWallets?.signatureRequestTimeouts??{}},chains:R,defaultChain:P,intl:{defaultCountry:H,textLocalization:t?.intl?.textLocalization},shouldEnforceDefaultChainOnConnect:K,captcha:{enabledProvider:e.enabled_captcha_provider??null,siteKey:e.captcha_site_key},externalWallets:{coinbaseWallet:{config:{appName:e.name,appLogoUrl:e.logo_url,preference:{options:"all",...t?.externalWallets?.coinbaseWallet?.config?.preference},...t?.externalWallets?.coinbaseWallet?.config}},baseAccount:{config:{appName:e.name,appLogoUrl:e.logo_url,...t?.externalWallets?.baseAccount?.config,preference:{...t?.externalWallets?.baseAccount?.config?.preference,telemetry:!1}}},walletConnect:{enabled:U},solana:{connectors:t?.externalWallets?.solana?.connectors},disableAllExternalWallets:t?.externalWallets?.disableAllExternalWallets??!1},embeddedWallets:{requireUserOwnedRecoveryOnCreate:!Y&&(e.embedded_wallet_config.require_user_owned_recovery_on_create??!1),userOwnedRecoveryOptions:Y?["user-passcode"]:e.embedded_wallet_config.user_owned_recovery_options,priceDisplay:t?.embeddedWallets?.priceDisplay??{primary:"fiat-currency",secondary:"native-token"},ethereum:{createOnLogin:t?.embeddedWallets?.ethereum?.createOnLogin??q},solana:{createOnLogin:t?.embeddedWallets?.solana?.createOnLogin??j},disableAutomaticMigration:t?.embeddedWallets?.disableAutomaticMigration??!1,mode:e.embedded_wallet_config.mode,showWalletUIs:t?.embeddedWallets?.showWalletUIs??e.enforce_wallet_uis??!0,extendedCalldataDecoding:t?.embeddedWallets?.extendedCalldataDecoding??!1,transactionScanning:{enabled:t?.embeddedWallets?.transactionScanning?.enabled??!1,domain:t?.embeddedWallets?.transactionScanning?.domain??o??"https://auth.privy.io"}},mfa:{methods:e.mfa_methods??[],noPromptOnMfaRequired:t?.mfa?.noPromptOnMfaRequired??!1},passkeys:{shouldUnlinkOnUnenrollMfa:t?.passkeys?.shouldUnlinkOnUnenrollMfa,shouldUnenrollMfaOnUnlink:t?.passkeys?.shouldUnenrollMfaOnUnlink,registration:t?.passkeys?.registration},customAuth:Y?{enabled:!0,...t.customAuth}:void 0,loginConfig:{telegramAuthConfiguration:G,passkeysForSignupEnabled:e.passkeys_for_signup_enabled},headless:!!t?.headless,render:{standalone:t?._render?.standalone??r._render.standalone},fundingConfig:$,fundingMethodConfig:{...t?.fundingMethodConfig??r.fundingMethodConfig,moonpay:{...t?.fundingMethodConfig?.moonpay??r.fundingMethodConfig.moonpay,useSandbox:t?.fundingMethodConfig?.moonpay.useSandbox??r.fundingMethodConfig.moonpay.useSandbox}},whatsAppEnabled:!!e.whatsapp_enabled,customOAuthRedirectUrl:t?.customOAuthRedirectUrl,allowOAuthInEmbeddedBrowsers:t?.allowOAuthInEmbeddedBrowsers??!1,solanaRpcs:{"solana:mainnet":t?.solana?.rpcs?.["solana:mainnet"]??null,"solana:devnet":t?.solana?.rpcs?.["solana:devnet"]??null,"solana:testnet":t?.solana?.rpcs?.["solana:testnet"]??null},smartWallets:z?.enabled?{enabled:z.enabled,smartWalletVersion:z.smart_wallet_version,smartWalletType:z.smart_wallet_type,configuredNetworks:z.configured_networks.map((e=>({chainId:e.chain_id,bundlerUrl:e.bundler_url,paymasterUrl:e.paymaster_url,paymasterContext:g(e.paymaster_url,e.paymaster_context)})))}:{enabled:z?.enabled??!1}}}const C={show_wallet_login_first:!0,allowlist_config:{error_title:null,error_detail:null,cta_text:null,cta_link:null},wallet_auth:!0,email_auth:!0,sms_auth:!1,google_oauth:!1,twitter_oauth:!1,discord_oauth:!1,github_oauth:!1,linkedin_oauth:!1,apple_oauth:!1,disable_plus_emails:!1,terms_and_conditions_url:null,privacy_policy_url:null,embedded_wallet_config:{create_on_login:"off",ethereum:{create_on_login:"off"},solana:{create_on_login:"off"},require_user_owned_recovery_on_create:!1,user_owned_recovery_options:["user-passcode"],mode:"user-controlled-server-wallets-only"},captcha_site_key:"",enforce_wallet_uis:!1,legacy_wallet_ui_config:!1,id:"",name:"",passkeys_for_signup_enabled:!1,whatsapp_enabled:!1},w=v(C,void 0,!1);let E=/*#__PURE__*/t.createContext({appConfig:w,isServerConfigLoaded:!1});exports.CHAIN_ID_MAINNET=1,exports.CLIENT_ANALYTICS_ID_KEY="privy:caid",exports.CODE_VERIFIER_KEY="privy:code_verifier",exports.CONNECTIONS_HISTORY_KEY="privy:connections",exports.CUSTOMER_ACCESS_TOKEN_COOKIE_KEY="privy-token",exports.CUSTOMER_ACCESS_TOKEN_STORAGE_KEY="privy:token",exports.DEFAULT_API_TIMEOUT_MS=2e4,exports.DEFAULT_NETWORK="0x1",exports.DEFAULT_PRIVY_API_URL="https://auth.privy.io",exports.DEFAULT_RPC_TIMEOUT=12e4,exports.DEFAULT_SUCCESS_SCREEN_DURATION_MS=1400,exports.DEFAULT_SUCCESS_SCREEN_EXTRA_LONG_DURATION_MS=4e3,exports.DEFAULT_SUCCESS_SCREEN_LONG_DURATION_MS=2500,exports.DEPRECATED_REFRESH_TOKEN="deprecated",exports.HEADLESS_OAUTH_KEY="privy:headless_oauth",exports.IDENTITY_TOKEN_COOKIE_KEY="privy-id-token",exports.IDENTITY_TOKEN_STORAGE_KEY="privy:id_token",exports.MOONPAY_API_URL="https://api.moonpay.com/v1",exports.MOONPAY_API_URL_SANDBOX="https://api.moonpay.com/v1",exports.MOONPAY_PUBLIC_KEY="pk_live_hirbpu0cVcLHrjktC9l7fbc9ctjv0SL",exports.MOONPAY_PUBLIC_KEY_SANDBOX="pk_test_fqWjXZMSFwloh7orvJsRfjiUHXJqFzI",exports.OAUTH_DISABLE_SIGNUP_KEY="privy:oauth_disable_signup",exports.PRIVY_ACCESS_TOKEN_STORAGE_KEY="privy:pat",exports.PrivyAppConfigProvider=({children:n,client:a,legacyClient:o,clientConfig:r,appClientId:l})=>{let[i,s]=t.useState(null),c=t.useMemo((()=>v(i??C,r,!!i,"undefined"!=typeof window?window.location.origin:void 0,l)),[i,r,l]);return t.useEffect((()=>{if(!i)return;let e=function(e){if(!e)return{};let{appearance:t,supportedChains:n,defaultChain:a,externalWallets:o,...r}=e;return{...r,...n?{supportedChains:n.map((e=>e.id))}:void 0,...a?{defaultChain:a.id}:void 0,...o?{walletConnect:o.walletConnect?{enabled:o.walletConnect.enabled}:void 0,coinbaseWallet:o.coinbaseWallet,solana:{connectors:o.solana?.connectors?.get().map((e=>e.walletClientType))}}:void 0}}(r),t=function(e,t=0){let n=3735928559^t,a=1103547991^t;for(let t,o=0;o<e.length;o++)n=Math.imul(n^(t=e.charCodeAt(o)),2654435761),a=Math.imul(a^t,1597334677);return n=Math.imul(n^n>>>16,2246822507)^Math.imul(a^a>>>13,3266489909),4294967296*(2097151&(a=Math.imul(a^a>>>16,2246822507)^Math.imul(n^n>>>13,3266489909)))+(n>>>0)}(JSON.stringify(e)).toString(),n=`privy:sent:${i.id}:${t}`;localStorage.getItem(n)||(o.createAnalyticsEvent({eventName:"sdk_initialize",payload:e}),localStorage.setItem(n,"t"))}),[r,i]),t.useEffect((()=>{i||(async()=>{try{await a.initialize();let e=a.app.getConfig();e.custom_api_url&&o.updateApiUrl(e.custom_api_url),s(e)}catch(e){console.warn("Error generating app config: ",e)}})()}),[]),/*#__PURE__*/e.jsx(E.Provider,{value:{appConfig:c,isServerConfigLoaded:!!i},children:n})},exports.REFRESH_TOKEN_COOKIE_KEY="privy-refresh-token",exports.REFRESH_TOKEN_STORAGE_KEY="privy:refresh_token",exports.SESSION_COOKIE_KEY="privy-session",exports.STATE_CODE_KEY="privy:state_code",exports.VERSION="3.9.0",exports.WALLET_PROXY_TIMEOUT=3e4,exports.getGuestCredentialStorageKey=e=>`privy:guest:${e}`,exports.getPrivyWalletKey=e=>`privy:wallet:${e}`,exports.getProviderAccessTokenStorageKey=e=>`privy:cross-app:${e}`,exports.useAppConfig=()=>{let{appConfig:e}=t.useContext(E);return e},exports.useIsServerConfigLoaded=()=>{let{isServerConfigLoaded:e}=t.useContext(E);return e};
@@ -1 +0,0 @@
1
- import{jsx as t}from"react/jsx-runtime";import{u as o}from"./context-Dee1TPOi.mjs";import{C as r,L as i}from"./CustomLandingScreenView-BkNtLof4.mjs";import"react";import"@privy-io/js-sdk-core";import"tinycolor2";import"@heroicons/react/24/outline/UserCircleIcon";import"styled-components";import"./ModalHeader-DHXUvTf4.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"./internal-context-e-Eni5bG.mjs";import"ofetch";import"./get-is-unified-wallet-_KIJnP68.mjs";import"viem";import"./index-Dr4t3oWO.mjs";import"uuid";import"jose";import"eventemitter3";import"./useActiveWallet-SiVSXkvG.mjs";import"zustand";import"react-device-detect";import"./prepareFundingModalData-BYy0MVol.mjs";import"./events-context-CI0iqAXA.mjs";import"viem/utils";import"./getPublicClient-A9RSftUZ.mjs";import"./useWallets-gElyEQoU.mjs";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-Bh4N2Hpm.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"js-cookie";import"./frame-CwE9r3cT.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-eEm9Olt_.mjs";import"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import"lucide-react";import"./ConnectEmailForm-Cs3r5aBq.mjs";import"./Button-DJY5dut3.mjs";import"./Chip-Bsgj4Yc-.mjs";import"./LoadingSkeleton-CHdaq3pb.mjs";import"./EmailInputForm-B4hjCxRU.mjs";import"./ErrorMessage-Cx8GKGhL.mjs";import"./farcaster-DPlSjvF5.mjs";import"./ConnectWalletView-DFfXN_9_.mjs";import"@heroicons/react/24/outline";import"@tanstack/react-virtual";import"@heroicons/react/24/outline/CheckIcon";import"./copy-Bx2Jwc5_.mjs";import"./QrCode-CbRLsYtm.mjs";import"qrcode";import"./useI18n-O3hskpuB.mjs";import"./WalletCards-DH1rqayz.mjs";import"./Screen-CKaxnxac.mjs";import"./index-CJMgUOnw.mjs";import"@heroicons/react/24/outline/FingerPrintIcon";import"./Link-DwjLfHwW.mjs";import"./ConnectPhoneForm-Ft9zAuQd.mjs";import"./twitter-6jomarO4.mjs";import"./twitch-5IOe4sIQ.mjs";import"./telegram-B-JqnkqZ.mjs";import"./WalletButtonList-DZp-38Ac.mjs";import"./InjectedWalletIcon-DLcYOGDj.mjs";import"@heroicons/react/24/outline/WalletIcon";import"./ScreenLayout-BQ6FV6yc.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 +0,0 @@
1
- import{jsxs as e,jsx as n,Fragment as t}from"react/jsx-runtime";import{MagnifyingGlassIcon as i}from"@heroicons/react/24/outline";import{useVirtualizer as l}from"@tanstack/react-virtual";import{useState as a,useMemo as o,useCallback as r,useRef as c,useEffect as s}from"react";import{isMobile as d}from"react-device-detect";import{styled as h}from"styled-components";import{B as m}from"./Button-DJY5dut3.mjs";import p from"@heroicons/react/24/outline/CheckIcon";import{C as u}from"./copy-Bx2Jwc5_.mjs";import{T as g}from"./ModalHeader-DHXUvTf4.mjs";import{Q as w}from"./QrCode-CbRLsYtm.mjs";import{E as f}from"./EmailInputForm-B4hjCxRU.mjs";import{u as y,q as v}from"./context-Dee1TPOi.mjs";import{u as b}from"./useI18n-O3hskpuB.mjs";import{M as C,q as x,d as W,e as k,K as T,V as _,w as z,S}from"./useActiveWallet-SiVSXkvG.mjs";import{u as L,P as I,b as N}from"./internal-context-e-Eni5bG.mjs";import{W as A}from"./WalletCards-DH1rqayz.mjs";import{W as B,h as E}from"./prepareFundingModalData-BYy0MVol.mjs";import{S as j}from"./Screen-CKaxnxac.mjs";let O=/*#__PURE__*/h.button.withConfig({displayName:"CopyTextButton",componentId:"sc-4b0620dc-0"})(["display:flex;align-items:center;gap:0.5rem;&:hover{text-decoration:underline;}svg{width:0.875rem;height:0.875rem;}"]),q=/*#__PURE__*/h.span.withConfig({displayName:"CopiedText",componentId:"sc-4b0620dc-1"})(["display:flex;align-items:center;gap:0.25rem;font-size:0.875rem;color:var(--privy-color-foreground-2);"]),U=/*#__PURE__*/h(p).withConfig({displayName:"GreenCheck",componentId:"sc-4b0620dc-2"})(["color:var(--privy-color-success);"]),F=/*#__PURE__*/h(u).withConfig({displayName:"StyledCopy",componentId:"sc-4b0620dc-3"})(["color:var(--privy-color-foreground-3);opactiy:0.5;"]);function M({children:t,iconOnly:i,value:l,hideCopyIcon:o,...r}){let[c,s]=a(!1);/*#__PURE__*/return e(O,{...r,onClick:()=>{navigator.clipboard.writeText(l||t).catch(console.error),s(!0),setTimeout((()=>s(!1)),1500)},children:[t," ",c?/*#__PURE__*/e(q,{children:[/*#__PURE__*/n(U,{})," ",!i&&"Copied"]}):!o&&/*#__PURE__*/n(F,{})]})}const $={phantom:{mobile:{native:"phantom://",universal:"https://phantom.app/ul/"}},solflare:{mobile:{native:void 0,universal:"https://solflare.com/ul/v1/"}},metamask:{image_url:{sm:C,md:C}}};class P{static normalize(e){return e.replace(/[-_]wallet$/,"").replace(/[-_]extension$/,"").toLowerCase()}isEth(e){return e.chains.some((e=>e.startsWith("eip155:")))}isSol(e){return e.chains.some((e=>e.startsWith("solana:")))}inAllowList(e,n){if(!this.normalizedAllowList||0===this.normalizedAllowList.length||"listing"===n&&this.includeWalletConnect)return!0;let t=P.normalize(e);return this.normalizedAllowList.some((e=>t===P.normalize(e)))}inDenyList(e,n){return"listing"===n&&"rabby"===e}chainMatches(e){return"ethereum-only"===this.chainFilter?"ethereum"===e:"solana-only"!==this.chainFilter||"solana"===e}connectorOk(e){return!!("null"!==e.connectorType&&"walletconnect_solana"!==e.walletBranding.id&&this.chainMatches(e.chainType)&&(this.inAllowList(e.walletClientType,"connector")||("injected"===e.connectorType||"solana_adapter"===e.connectorType)&&("ethereum"===e.chainType&&this.detectedEth||"solana"===e.chainType&&this.detectedSol)))}listingOk(e){if(e.slug.includes("coinbase"))return!1;if("ethereum-only"===this.chainFilter){if(!this.isEth(e))return!1}else if("solana-only"===this.chainFilter&&!this.isSol(e))return!1;return!(!this.inAllowList(e.slug,"listing")||this.inDenyList(e.slug,"listing"))}getWallets(e,n){let t=new Map,i=e=>{let n=t.get(e.id);if(n){n.chainType!==e.chainType&&(n.chainType="multi");let t=new Set(n.chains);e.chains.forEach((e=>t.add(e))),n.chains=Array.from(t),!n.icon&&e.icon&&(n.icon=e.icon),!n.url&&e.url&&(n.url=e.url),!n.listing&&e.listing&&(n.listing=e.listing)}else t.set(e.id,e)};e.filter((e=>this.connectorOk(e))).forEach((e=>{let n=P.normalize(e.walletClientType);i({id:n,label:e.walletBranding?.name??n,source:"connector",connector:e,chainType:e.chainType,icon:e.walletBranding?.icon,url:void 0,chains:["ethereum"===e.chainType?"eip155":"solana"]})}));let l=e.find((e=>"wallet_connect_v2"===e.connectorType)),a=e.find((e=>"walletconnect_solana"===e.walletBranding.id));n.filter((e=>this.listingOk(e))).forEach((n=>{let t=[...n.chains].filter((e=>e.includes("eip155:")||e.includes("solana:")));if(e.some((e=>P.normalize(e.walletClientType)===P.normalize(n.slug)&&"ethereum"===e.chainType&&"null"!==e.connectorType))||l||n.mobile.native||n.mobile.universal||x[n.slug]?.chainTypes.includes("ethereum")||(t=t.filter((e=>!e.startsWith("eip155")))),e.some((e=>P.normalize(e.walletClientType)===P.normalize(n.slug)&&"solana"===e.chainType&&"null"!==e.connectorType))||a||n.mobile.native||n.mobile.universal||x[n.slug]?.chainTypes.includes("solana")||(t=t.filter((e=>!e.startsWith("solana")))),!t.length)return;let o=P.normalize(n.slug),r=$[n.slug],c=r?.image_url?.sm||n.image_url?.sm;t.some((e=>e.includes("eip155:")))&&i({id:o,label:n.name||o,source:"listing",listing:n,chainType:"ethereum",icon:c,url:n.homepage,chains:t}),t.some((e=>e.includes("solana:")))&&i({id:o,label:n.name||o,source:"listing",listing:n,chainType:"solana",icon:c,url:n.homepage,chains:t})})),this.includeWalletConnectQr&&l&&i({id:"wallet_connect_qr",label:"WalletConnect",source:"connector",connector:l,chainType:"ethereum",icon:B,url:void 0,chains:["eip155"]}),this.includeWalletConnectQrSolana&&a&&i({id:"wallet_connect_qr_solana",label:"WalletConnect",source:"connector",connector:a,chainType:"solana",icon:B,url:void 0,chains:["solana"]});let o=Array.from(t.values());o.forEach((e=>{let n=$[e.listing?.slug||e.id];n?.image_url?.sm&&(e.icon=n.image_url.sm)}));let r=new Map;return this.normalizedAllowList?.forEach(((e,n)=>{r.set(P.normalize(e),n)})),{wallets:o.slice().sort(((e,n)=>{let t=P.normalize(e.id),i=P.normalize(n.id);"binance-defi"===t?t="binance":"universalprofiles"===t?t="universal_profile":"cryptocom-defi"===t?t="cryptocom":"bitkeep"===t&&(t="bitget_wallet"),"binance-defi"===i?i="binance":"universalprofiles"===i?i="universal_profile":"cryptocom-defi"===i?i="cryptocom":"bitkeep"===i&&(i="bitget_wallet");let l=r.has(t),a=r.has(i);return l&&a?r.get(t)-r.get(i):l?-1:a?1:"connector"===e.source&&"listing"===n.source?-1:"listing"===e.source&&"connector"===n.source?1:e.label.toLowerCase().localeCompare(n.label.toLowerCase())})),walletCount:o.length}}constructor(e,n){this.chainFilter=e,n&&n.length>0&&(this.normalizedAllowList=n.map(String),this.normalizedAllowList.includes("binance")&&this.normalizedAllowList.push("binance-defi-wallet"),this.normalizedAllowList.includes("bitget_wallet")&&this.normalizedAllowList.push("bitkeep")),this.detectedEth=this.normalizedAllowList?.includes("detected_ethereum_wallets")??!1,this.detectedSol=this.normalizedAllowList?.includes("detected_solana_wallets")??!1,this.includeWalletConnect=this.normalizedAllowList?.includes("wallet_connect")??!1,this.includeWalletConnectQr=this.normalizedAllowList?.includes("wallet_connect_qr")??!1,this.includeWalletConnectQrSolana=this.normalizedAllowList?.includes("wallet_connect_qr_solana")??!1}}var Q=t=>/*#__PURE__*/e("svg",{viewBox:"0 0 32 32",xmlns:"http://www.w3.org/2000/svg",...t,children:[/*#__PURE__*/n("path",{d:"m0 0h32v32h-32z",fill:"#5469d4"}),/*#__PURE__*/n("path",{d:"m15.997 5.333-.143.486v14.106l.143.143 6.548-3.87z",fill:"#c2ccf4"}),/*#__PURE__*/n("path",{d:"m15.996 5.333-6.548 10.865 6.548 3.87z",fill:"#fff"}),/*#__PURE__*/n("path",{d:"m15.997 21.306-.08.098v5.025l.08.236 6.552-9.227z",fill:"#c2ccf4"}),/*#__PURE__*/n("path",{d:"m15.996 26.665v-5.36l-6.548-3.867z",fill:"#fff"}),/*#__PURE__*/n("path",{d:"m15.995 20.07 6.548-3.87-6.548-2.976v6.847z",fill:"#8698e8"}),/*#__PURE__*/n("path",{d:"m9.448 16.2 6.548 3.87v-6.846z",fill:"#c2ccf4"})]}),D=t=>/*#__PURE__*/e("svg",{viewBox:"0 0 32 32",xmlns:"http://www.w3.org/2000/svg",...t,children:[/*#__PURE__*/e("linearGradient",{id:"a",gradientUnits:"userSpaceOnUse",x1:"7.233",x2:"24.766",y1:"24.766",y2:"7.234",children:[/*#__PURE__*/n("stop",{offset:"0",stopColor:"#9945ff"}),/*#__PURE__*/n("stop",{offset:".2",stopColor:"#7962e7"}),/*#__PURE__*/n("stop",{offset:"1",stopColor:"#00d18c"})]}),/*#__PURE__*/n("path",{d:"m0 0h32v32h-32z",fill:"#10111a"}),/*#__PURE__*/n("path",{clipRule:"evenodd",d:"m9.873 20.41a.645.645 0 0 1 .476-.21l14.662.012a.323.323 0 0 1 .238.54l-3.123 3.438a.643.643 0 0 1 -.475.21l-14.662-.012a.323.323 0 0 1 -.238-.54zm15.376-2.862a.322.322 0 0 1 -.238.54l-14.662.012a.642.642 0 0 1 -.476-.21l-3.122-3.44a.323.323 0 0 1 .238-.54l14.662-.012a.644.644 0 0 1 .475.21zm-15.376-9.738a.644.644 0 0 1 .476-.21l14.662.012a.322.322 0 0 1 .238.54l-3.123 3.438a.643.643 0 0 1 -.475.21l-14.662-.012a.323.323 0 0 1 -.238-.54z",fill:"url(#a)",fillRule:"evenodd"})]});const H=/*#__PURE__*/h.div.withConfig({displayName:"Header",componentId:"sc-9b65f2b6-0"})(["display:flex;justify-content:space-between;align-items:center;"]),R=/*#__PURE__*/h.button.withConfig({displayName:"CloseButton",componentId:"sc-9b65f2b6-1"})(["padding:0.25rem;height:30px;width:30px;display:flex;align-items:center;justify-content:center;border-radius:var(--privy-border-radius-full);background:var(--privy-color-background-2);"]),V=/*#__PURE__*/h.div.withConfig({displayName:"WalletIconWithActiveIndicator",componentId:"sc-9b65f2b6-2"})(["position:relative;display:inline-flex;align-items:center;&::after{content:' ';border-radius:var(--privy-border-radius-full);height:6px;width:6px;background-color:var(--privy-color-icon-success);position:absolute;right:-3px;top:-3px;}"]),G=/*#__PURE__*/h.img.withConfig({displayName:"WalletIcon",componentId:"sc-9b65f2b6-3"})(["width:32px;height:32px;border-radius:0.25rem;object-fit:contain;"]),Y=/*#__PURE__*/h.span.withConfig({displayName:"Chip",componentId:"sc-9b65f2b6-4"})(["display:flex;gap:0.25rem;align-items:center;padding:0.25rem 0.5rem;font-size:0.75rem;font-weight:500;line-height:1.125rem;border-radius:var(--privy-border-radius-sm);background-color:var(--privy-color-background-2);svg{width:100%;max-width:1rem;max-height:1rem;stroke-width:2;}"]),K=/*#__PURE__*/h.div.withConfig({displayName:"ScrollContainer",componentId:"sc-9b65f2b6-5"})(["display:flex;flex-direction:column;gap:0.5rem;max-height:24rem;overflow-y:scroll;&::-webkit-scrollbar{display:none;}scrollbar-gutter:stable both-edges;scrollbar-width:none;-ms-overflow-style:none;"," background-repeat:no-repeat;background-size:100% 32px,100% 16px;background-attachment:local,scroll;"],(e=>"light"===e.$colorScheme?"background: linear-gradient(var(--privy-color-background), var(--privy-color-background) 70%) bottom, linear-gradient(rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.06)) bottom;":"dark"===e.$colorScheme?"background: linear-gradient(var(--privy-color-background), var(--privy-color-background) 70%) bottom, linear-gradient(rgba(255, 255, 255, 0) 20%, rgba(255, 255, 255, 0.06)) bottom;":void 0));function J({enabled:e=!0,walletList:n,walletChainType:t}){let i=y(),{connectors:l}=L(),{listings:r,loading:c}=W(e),s=t??i.appearance.walletChainType,d=n??i.appearance?.walletList,h=o((()=>new P(s,d)),[s,d]),{wallets:m,walletCount:p}=o((()=>h.getWallets(l,r)),[h,l,r]),[u,g]=a(""),w=o((()=>u?m.filter((e=>e.label.toLowerCase().includes(u.toLowerCase()))):m),[u,m]),[f,v]=a();return{selected:f,setSelected:v,search:u,setSearch:g,loadingListings:c,wallets:w,walletCount:p}}let X=e=>!e||"string"!=typeof e&&(e instanceof z||e instanceof S);const Z=({index:i,style:l,data:a,recent:o})=>{let r=a.wallets[i],{walletChainType:c,handleWalletClick:s}=a,{t:d}=b(),h={...l,boxSizing:"border-box"};return r?/*#__PURE__*/e(ie,{style:h,onClick:()=>s(r),children:[r.icon&&(r.connector&&!X(r.connector)?/*#__PURE__*/n(V,{children:"string"==typeof r.icon?/*#__PURE__*/n(G,{src:r.icon}):/*#__PURE__*/n(r.icon,{style:{width:"32px",height:"32px"}})}):"string"==typeof r.icon?/*#__PURE__*/n(G,{src:r.icon}):/*#__PURE__*/n(r.icon,{style:{width:"32px",height:"32px"}})),/*#__PURE__*/n(oe,{children:r.label}),o?/*#__PURE__*/e(t,{children:[/*#__PURE__*/n(Y,{children:d("connectWallet.lastUsed")}),/*#__PURE__*/n(le,{children:/*#__PURE__*/e(t,{children:["ethereum-only"===c&&/*#__PURE__*/n(Q,{}),"solana-only"===c&&/*#__PURE__*/n(D,{})]})})]}):/*#__PURE__*/n(le,{children:!("ethereum-only"===c||"solana-only"===c)&&/*#__PURE__*/e(t,{children:[r.chains?.some((e=>e.startsWith("eip155")))&&/*#__PURE__*/n(Q,{}),r.chains?.some((e=>e.startsWith("solana")))&&/*#__PURE__*/n(D,{})]})})]}):null};var ee=({className:h,customDescription:p,connectOnly:u,preSelectedWalletId:C,hideHeader:W,...B})=>{let O=y(),{t:q}=b(),{connectors:U}=L(),F=B.walletChainType||O.appearance.walletChainType,M=B.walletList||O.appearance?.walletList,{onBack:H,onClose:R,app:V}=B,{selected:Y,setSelected:K,qrUrl:ee,setQrUrl:ce,connecting:se,uiState:de,errorCode:he,wallets:me,walletCount:pe,handleConnect:ue,handleBack:ge,showSearchBar:we,isInitialConnectView:fe,title:ye,search:ve,setSearch:be}=function({onConnect:e,onBack:n,onClose:t,onConnectError:i,walletList:l,walletChainType:c,app:s}){let h=y(),{connectors:m}=L(),{t:p}=b(),{wallets:u,walletCount:g,search:w,setSearch:f,selected:C,setSelected:x}=J({enabled:k(l??[]),walletList:l,walletChainType:c}),[W,_]=a(),[z,S]=a(),[N,A]=a(),[B,E]=a(),j=!C&&!N&&!B,O=j&&(g>6||w.length>0),q=m.find((e=>"wallet_connect_v2"===e.connectorType)),U=r((async(n,t)=>{if(n){if(B?.connector===n&&"loading"===W)return void console.log("Already connecting to this wallet, skipping duplicate attempt");if(_("loading"),"string"==typeof n)return E({connector:n,name:t?.name??"Wallet",icon:t?.icon}),void window.open(n,"_blank");E({connector:n,name:t?.name??n.walletBranding.name??"Wallet",icon:t?.icon??n.walletBranding.icon});try{let t=await n.connect({showPrompt:!0});if(!t)return _("error"),S(void 0),void i?.(new I("Unable to connect wallet"));_("success"),S(void 0),T({address:t.address,client:t.walletClientType,appId:h.id}),setTimeout((()=>{e({connector:n,wallet:t})}),v)}catch(n){if(console.error("ERROR: ",{e:n}),n?.message?.includes("already pending for origin")||n?.message?.includes("wallet_requestPermissions"))return void console.log("Connection request already pending, maintaining loading state");_("error"),S(n?.privyErrorCode),i?.(n instanceof Error?n:new I(n?.message||"Unable to connect wallet"))}}}),[h.id,e,B,W]),F=r((()=>N?(_(void 0),S(void 0),E(void 0),void A(void 0)):B?(_(void 0),S(void 0),void E(void 0)):C?(_(void 0),S(void 0),E(void 0),void x(void 0)):"error"===W||"loading"===W?(_(void 0),S(void 0),void E(void 0)):void n?.()),[N,B,C,W,n]),M=o((()=>B?.connector===q&&N&&d&&B?.name?p("connectWallet.goToWallet",{walletName:B.name}):B?.connector===q&&N&&B?.name?p("connectWallet.scanToConnect",{walletName:B.name}):N&&B?.name?p(d?"connectWallet.goToWallet":"connectWallet.scanToConnect",{walletName:B.name}):"string"==typeof B?.connector?p("connectWallet.openOrInstall",{walletName:B.name}):C&&!B?p("connectWallet.selectNetwork"):B?null:p("connectWallet.selectYourWallet")),[B,N,C,q,p]);return{selected:C,setSelected:x,qrUrl:N,setQrUrl:A,connecting:B,uiState:W,errorCode:z,search:w,setSearch:f,wallets:u,walletCount:g,wc:q,isInitialConnectView:j,showSearchBar:O,title:M,handleConnect:U,handleBack:F,onClose:t,onConnect:e,app:s}}({...B,walletList:M,walletChainType:F}),Ce=U.find((e=>"wallet_connect_v2"===e.connectorType)),xe=U.find((e=>"walletconnect_solana"===e.walletBranding.id)),We=c(null),ke=l({count:me.length,getScrollElement:()=>We.current,estimateSize:()=>56,overscan:6,gap:5}),Te=r((async e=>{let n="solana-only"!==F&&e.chains?.some((e=>e.startsWith("eip155"))),t="ethereum-only"!==F&&e.chains?.some((e=>e.startsWith("solana"))),i=n=>{let t=P.normalize(e.id);return U.find((e=>P.normalize(e.walletClientType)===t&&e.chainType===n&&!("ethereum"===e.chainType&&e instanceof z||"solana"===e.chainType&&e instanceof S)))},l=async()=>{if(!Ce||!e.listing)return!1;let n=$[e.listing.slug]?{...e.listing,...$[e.listing.slug]}:e.listing;return Ce.setWalletEntry(n,ce),await Ce.resetConnection(e.id),await ue(Ce,{name:e.label,icon:e.icon}),!0},a=async()=>!!xe&&!!e.listing&&(await xe.disconnect(),xe.wallet.setWalletEntry(e.listing,ce),await new Promise((e=>setTimeout(e,100))),await ue(xe,{name:e.label,icon:e.icon}),!0),o=async n=>{let t=(n=>{let t=x[e.id];if(t)return t.getMobileRedirect({isSolana:n,connectOnly:!!u,useUniversalLink:!1})})(n);return!!t&&(await ue(t,{name:e.label,icon:e.icon}),!0)};if(n&&t)K(e);else{if(n&&!t){let n=i("ethereum");if(n&&!X(n))return void await ue(n,{name:e.label,icon:e.icon});if(d&&"phantom"===e.id){if(await o(!1)||await l())return}else if(await l()||await o(!1))return}if(t&&!n){let n=i("solana");if(n&&!X(n))return void await ue(n,{name:e.label,icon:e.icon});if(d){if(await o(!0)||await a())return}else if(await a()||await o(!0))return}if(!X(e.connector)){if(Ce&&"wallet_connect_v2"===e.connector?.connectorType)if(await Ce.resetConnection(e.id),"wallet_connect_qr"!==e.id&&e.listing){let n=$[e.listing.slug]?{...e.listing,...$[e.listing.slug]}:e.listing;Ce.setWalletEntry(n,ce)}else Ce.setWalletEntry({id:"wallet_connect_qr",name:"WalletConnect",rdns:"",slug:"wallet-connect",homepage:"",chains:["eip155"],mobile:{native:"",universal:void 0}},ce);return xe&&"walletconnect_solana"===e.connector?.walletBranding.id&&(await xe.disconnect(),"wallet_connect_qr_solana"!==e.id&&e.listing?xe.wallet.setWalletEntry(e.listing,ce):xe.wallet.setWalletEntry({id:"wallet_connect_solana_qr",name:"WalletConnect",rdns:"",slug:"wallet-connect-solana",homepage:"",chains:["solana"],mobile:{native:"",universal:void 0}},ce),await new Promise((e=>setTimeout(e,100)))),void await ue(e.connector,{name:e.label,icon:e.icon})}e.url&&await ue(e.url,{name:e.label,icon:e.icon})}}),[Ce,xe,ue,K,ce,F,u,U]);return s((()=>{if(!C)return;let e=me.find((({id:e})=>e===C));e&&Te(e).catch(console.error)}),[C]),/*#__PURE__*/e(j,{className:h,children:[/*#__PURE__*/n(j.Header,{icon:W&&fe?void 0:se&&!ee||ee&&d&&se?.icon?se.icon:se?void 0:A,iconVariant:se&&!ee||ee&&d?"loading":void 0,iconLoadingStatus:se&&!ee||ee&&d?{success:"success"===de,fail:"error"===de}:void 0,title:W&&fe?void 0:se&&!ee?q("connectWallet.waitingForWallet",{walletName:se.name}):ee&&d?q("connectWallet.waitingForWallet",{walletName:se?.name??"connection"}):ye,subtitle:W&&fe?void 0:se&&!ee&&"string"==typeof se.connector?q("connectWallet.installAndConnect",{walletName:se.name}):se&&!ee&&"string"!=typeof se.connector?"error"===de?he===N.NO_SOLANA_ACCOUNTS?`The connected wallet has no Solana accounts. Please add a Solana account in ${se.name} and try again.`:q("connectWallet.tryConnectingAgain"):q("connectionStatus.connectOneWallet"):fe?p??(V?q("connectWallet.connectToAccount",{appName:V.name}):null):null,showBack:!!H||!fe,showClose:!0,onBack:H||ge,onClose:R}),/*#__PURE__*/e(j.Body,{ref:We,$colorScheme:O.appearance.palette.colorScheme,style:{marginBottom:ee?"0.5rem":void 0},children:[we&&/*#__PURE__*/n(ne,{children:/*#__PURE__*/e(f,{style:{background:"transparent"},children:[/*#__PURE__*/n(_,{children:/*#__PURE__*/n(i,{})}),/*#__PURE__*/n("input",{className:"login-method-button",type:"text",placeholder:q("connectWallet.searchPlaceholder",{count:String(pe)}),onChange:e=>be(e.target.value),value:ve})]})}),ee&&d&&"loading"===de&&/*#__PURE__*/e("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"1rem"},children:[/*#__PURE__*/n(m,{variant:"primary",onClick:()=>window.open(ee.universal??ee.native,"_blank"),style:{width:"100%"},children:q("connectWallet.openInApp")}),/*#__PURE__*/n(re,{value:ee.universal??ee.native,iconOnly:!0,children:"Copy link"})]}),ee&&!d&&"loading"===de&&/*#__PURE__*/n("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"1rem"},children:/*#__PURE__*/n(re,{value:ee.universal??ee.native,iconOnly:!0,children:q("connectWallet.copyLink")})}),ee&&!d&&/*#__PURE__*/n(w,{size:280,url:ee.universal??ee.native,squareLogoElement:se?.icon?"string"==typeof se.icon?e=>/*#__PURE__*/n("svg",{...e,children:/*#__PURE__*/n("image",{href:se.icon,height:e.height,width:e.width})}):se.icon:E}),/*#__PURE__*/e(te,{children:[se&&!ee&&"string"==typeof se.connector&&/*#__PURE__*/e(ie,{onClick:()=>window.open(se.connector,"_blank"),children:[se.icon&&("string"==typeof se.icon?/*#__PURE__*/n(G,{src:se.icon}):/*#__PURE__*/n(se.icon,{})),/*#__PURE__*/n(oe,{children:se.name})]}),Y?.chains.some((e=>e.startsWith("eip155")))&&!se&&/*#__PURE__*/e(ie,{onClick:()=>Te({...Y,chains:Y.chains.filter((e=>e.startsWith("eip155")))}),children:[Y.icon&&("string"==typeof Y.icon?/*#__PURE__*/n(G,{src:Y.icon}):/*#__PURE__*/n(Y.icon,{})),/*#__PURE__*/n(oe,{children:Y.label}),/*#__PURE__*/n(le,{children:/*#__PURE__*/n(Q,{})})]}),Y?.chains.some((e=>e.startsWith("solana")))&&!se&&/*#__PURE__*/e(ie,{onClick:()=>Te({...Y,chains:Y.chains.filter((e=>e.startsWith("solana")))}),children:[Y.icon&&("string"==typeof Y.icon?/*#__PURE__*/n(G,{src:Y.icon}):/*#__PURE__*/n(Y.icon,{})),/*#__PURE__*/n(oe,{children:Y.label}),/*#__PURE__*/n(le,{children:/*#__PURE__*/n(D,{})})]}),fe&&/*#__PURE__*/e(t,{children:[!(pe>0)&&/*#__PURE__*/n(ae,{children:q("connectWallet.noWalletsFound")}),pe>0&&!ee&&/*#__PURE__*/n("div",{style:{maxHeight:56*Math.min(me.length,5)+5,width:"100%"},children:/*#__PURE__*/n("div",{style:{height:`${ke.getTotalSize()}px`,width:"100%",position:"relative"},children:ke.getVirtualItems().map((e=>/*#__PURE__*/n(Z,{index:e.index,style:{position:"absolute",top:0,left:0,height:`${e.size}px`,transform:`translateY(${e.start}px)`},data:{wallets:me,walletChainType:F,handleWalletClick:Te}},e.key)))})})]})]})]}),/*#__PURE__*/e(j.Footer,{children:[se&&!ee&&"string"!=typeof se.connector&&"error"===de&&/*#__PURE__*/n(j.Actions,{children:/*#__PURE__*/n(m,{style:{width:"100%",alignItems:"center"},variant:"error",onClick:()=>ue(se.connector,{name:se.name,icon:se.icon}),children:q("connectWallet.retry")})}),!!(V&&V.legal.privacyPolicyUrl&&V.legal.termsAndConditionsUrl)&&/*#__PURE__*/n(g,{app:V,alwaysShowImplicitConsent:!0}),/*#__PURE__*/n(j.Watermark,{})]})]})};let ne=/*#__PURE__*/h.div.withConfig({displayName:"StickySearchContainer",componentId:"sc-34a6bff4-0"})(["position:sticky;margin-top:-3px;padding-top:3px;top:-3px;z-index:1;background:var(--privy-color-background);padding-bottom:calc(var(--screen-space) / 2);"]),te=/*#__PURE__*/h.div.withConfig({displayName:"WalletListContainer",componentId:"sc-34a6bff4-1"})(["display:flex;flex-direction:column;gap:","px;"],5),ie=/*#__PURE__*/h.button.withConfig({displayName:"Button",componentId:"sc-34a6bff4-2"})(["&&{gap:0.5rem;align-items:center;display:flex;position:relative;text-align:left;font-weight:500;transition:background 200ms ease-in;width:calc(100% - 4px);border-radius:var(--privy-border-radius-md);padding:0.75em;border:1px solid var(--privy-color-foreground-4);justify-content:space-between;}&:hover{background:var(--privy-color-background-2);}"]),le=/*#__PURE__*/h.span.withConfig({displayName:"ButtonBadge",componentId:"sc-34a6bff4-3"})(["display:flex;align-items:center;justify-content:end;position:relative;& > svg{border-radius:var(--privy-border-radius-full);stroke-width:2.5;width:100%;max-height:1rem;max-width:1rem;flex-shrink:0;}& > svg:not(:last-child){border-radius:var(--privy-border-radius-full);margin-right:-0.375rem;}"]),ae=/*#__PURE__*/h.div.withConfig({displayName:"EmptyContainer",componentId:"sc-34a6bff4-4"})(["height:60px;display:flex;align-items:center;justify-content:center;text-align:center;"]),oe=/*#__PURE__*/h.span.withConfig({displayName:"WalletName",componentId:"sc-34a6bff4-5"})(["text-overflow:ellipsis;white-space:nowrap;color:var(--privy-color-foreground);font-weight:400;flex:1;"]),re=/*#__PURE__*/h(M).withConfig({displayName:"StyledCopyableText",componentId:"sc-34a6bff4-6"})(["&&{margin:0.5rem auto 0 auto;}"]);export{M as C,H,K as S,G as W,Y as a,R as b,P as c,Z as d,ee as i,J as u};
@@ -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 i,q as a}from"./context-Dee1TPOi.mjs";import{R as s}from"./index-Dr4t3oWO.mjs";import{u as n,a as c,e as m,b as l}from"./internal-context-e-Eni5bG.mjs";import{a as p}from"./get-is-unified-wallet-_KIJnP68.mjs";import{z as d}from"./useActiveWallet-SiVSXkvG.mjs";import{s as u}from"./shouldProceedtoEmbeddedWalletCreationFlow-iMnL58wW.mjs";import{S as f}from"./ScreenLayout-BQ6FV6yc.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"uuid";import"jose";import"eventemitter3";import"./useWallets-gElyEQoU.mjs";import"./prepareFundingModalData-BYy0MVol.mjs";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"react-device-detect";import"viem/utils";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-Bh4N2Hpm.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"viem";import"./getPublicClient-A9RSftUZ.mjs";import"ofetch";import"js-cookie";import"./frame-CwE9r3cT.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-eEm9Olt_.mjs";import"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import"./Button-DJY5dut3.mjs";import"./Screen-CKaxnxac.mjs";import"./ModalHeader-DHXUvTf4.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-CJMgUOnw.mjs";const h=({providerApp:o,success:r,error:i,onClose:a})=>{let{title:s,subtitle:n}=t((()=>r?{title:`Successfully connected with ${o.name}`,subtitle:"You're good to go!"}:i?{title:"Authentication failed",subtitle:i.message}:{title:`Connecting to ${o.name}`,subtitle:`Please check the pop-up from ${o.name} to continue`}),[r,i,o.name]);/*#__PURE__*/return e(f,{title:s,subtitle:n,icon:o.logoUrl,iconVariant:"loading",iconLoadingStatus:{success:r,fail:!!i},onBack:a,watermark:!0})},v={component:()=>{let t=i(),{data:f,navigate:v,setModalData:A,onUserCloseViaDialogOrKeybindRef:j}=p(),{crossAppAuthFlow:y,updateWallets:g,closePrivyModal:b,createAnalyticsEvent:C}=n(),{logout:w}=d(),[S,U]=o({}),T=f?.crossAppAuth,k={id:T.appId,name:T.name,logoUrl:T.logoUrl},W=new c(`There was an issue connecting your ${k.name} account. Please try again.`),x=new s((async e=>{if(T.popup)try{let t=await y({appId:e,popup:T.popup,action:T.action});U({data:t})}catch(e){if(e instanceof c)U({error:e});else if(e instanceof m){if(e.privyErrorCode===l.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return A({accountTransfer:{nonce:e.data?.data?.nonce,account:e.data?.data?.subject,displayName:e.data?.data?.account?.displayName,linkMethod:`privy:${k.id}`,embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress,oAuthUserInfo:e.data?.data?.otherUser?.oAuthUserInfo}}),void v("LinkConflictScreen");T.popup&&T.popup.close(),U({error:W})}else U({error:W})}else U({error:W})})),E=()=>{S.data&&(g(),T.onSuccess(S.data),b({shouldCallAuthOnSuccess:!0,isSuccess:!0})),T.onError(S.error??new c("User canceled flow")),b({shouldCallAuthOnSuccess:!1,isSuccess:!1})};return j.current=E,r((()=>{k.id.length&&x.execute(k.id)}),[k.id]),r((()=>{if(!S.data)return;let e=S.data;if(t.legal.requireUsersAcceptTerms&&!e.hasAcceptedTerms){let e=setTimeout((()=>{v("AffirmativeConsentScreen")}),a);return()=>clearTimeout(e)}if(u(e,t.embeddedWallets)){let e=setTimeout((()=>{A({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),C({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,provider:`privy:${k.id}`,screen:"CrossAppAuthScreen"}}),w()},callAuthOnSuccessOnClose:!0}}),v("EmbeddedWalletOnAccountCreateScreen")}),a);return()=>clearTimeout(e)}let o=setTimeout(E,a);return()=>clearTimeout(o)}),[S.data]),/*#__PURE__*/e(h,{providerApp:k,success:!!S.data,error:S.error,onClose:E})},isShownBeforeReady:!0};export{v as CrossAppAuthScreen,h as CrossAppAuthScreenView,v as default};