@privy-io/react-auth 3.14.0 → 3.14.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.
- package/dist/cjs/{AccountNotFoundScreen-B2BwM9IL.js → AccountNotFoundScreen-C25iBRLm.js} +1 -1
- package/dist/cjs/{Address-CMUXgM3h.js → Address-CHKhHgKJ.js} +1 -1
- package/dist/cjs/{AffirmativeConsentScreen-B7nTfKFs.js → AffirmativeConsentScreen-DT0ojGpw.js} +1 -1
- package/dist/cjs/{AllowlistRejectionScreen-C0ubkz2f.js → AllowlistRejectionScreen-D0I4vTcK.js} +1 -1
- package/dist/cjs/{AuthenticateWithWalletScreen-DHRXcjT5.js → AuthenticateWithWalletScreen-dcVrFqXU.js} +1 -1
- package/dist/cjs/{AwaitingEvmToSolBridgingScreen-D6MB0SW8.js → AwaitingEvmToSolBridgingScreen-20Lokl_2.js} +1 -1
- package/dist/cjs/{AwaitingExternalEthereumTransferScreen-BcnofXQv.js → AwaitingExternalEthereumTransferScreen-B2BOyvEP.js} +1 -1
- package/dist/cjs/{AwaitingPasswordlessCodeScreen-CMMIM_Pj.js → AwaitingPasswordlessCodeScreen-CjeHuBk7.js} +1 -1
- package/dist/cjs/{AwaitingSolToEvmBridgingScreen-C2Op_A4L.js → AwaitingSolToEvmBridgingScreen-NSyS8djM.js} +1 -1
- package/dist/cjs/{BridgeNetworkSelectionView-BU5hxQ4Z.js → BridgeNetworkSelectionView-Cy4dUUah.js} +1 -1
- package/dist/cjs/{CaptchaScreen-TVUbEsJK.js → CaptchaScreen-CchfnELg.js} +1 -1
- package/dist/cjs/{CoinbaseOnrampStatusScreen-_mCdKOIM.js → CoinbaseOnrampStatusScreen-RmmivwEu.js} +1 -1
- package/dist/cjs/{ConnectEmailForm-BgS2Yn3u.js → ConnectEmailForm-BibKRhlR.js} +1 -1
- package/dist/cjs/{ConnectLedgerScreen-DjDvgzxV.js → ConnectLedgerScreen-CB1oTLjq.js} +1 -1
- package/dist/cjs/{ConnectOnlyLandingScreen-CbUMwYrO.js → ConnectOnlyLandingScreen-BI0zDj3o.js} +1 -1
- package/dist/cjs/{ConnectOnlyStatusScreen-DyoV_8V9.js → ConnectOnlyStatusScreen-BAUS-OpP.js} +1 -1
- package/dist/cjs/{ConnectOrCreateScreen-DpR4OmSO.js → ConnectOrCreateScreen-CdoSL34u.js} +1 -1
- package/dist/cjs/{ConnectPhoneForm-CdRNa4Lg.js → ConnectPhoneForm-BPgbe0j3.js} +1 -1
- package/dist/cjs/{ConnectWalletView-Bb4271wb.js → ConnectWalletView-BB2DjcE-.js} +1 -1
- package/dist/cjs/{ConnectionStatusScreen-B8TxWdVC.js → ConnectionStatusScreen-D2pFs10v.js} +1 -1
- package/dist/cjs/{CrossAppAuthScreen-By4i5UqT.js → CrossAppAuthScreen-Dzqgp4fv.js} +1 -1
- package/dist/cjs/{CustomLandingScreenView-C0Vky31_.js → CustomLandingScreenView-Pamy7vPb.js} +1 -1
- package/dist/cjs/{DelegatedActionsConsentScreen-CjUYU339.js → DelegatedActionsConsentScreen-B1RznIyD.js} +1 -1
- package/dist/cjs/{DelegatedActionsRevokeScreen-BGATOJGL.js → DelegatedActionsRevokeScreen-BfYkymoM.js} +1 -1
- package/dist/cjs/{EmbeddedWalletConnectingScreen-GZ8nOvWq.js → EmbeddedWalletConnectingScreen-DaOL3Ico.js} +1 -1
- package/dist/cjs/{EmbeddedWalletCreatedScreen-Be8AYwZh.js → EmbeddedWalletCreatedScreen-B5K1ek4V.js} +1 -1
- package/dist/cjs/{EmbeddedWalletKeyExportScreen-DXa54jFw.js → EmbeddedWalletKeyExportScreen-BJTyn-Lk.js} +1 -1
- package/dist/cjs/{EmbeddedWalletOnAccountCreateScreen-C8-LkEhs.js → EmbeddedWalletOnAccountCreateScreen-BbZKkeLp.js} +1 -1
- package/dist/cjs/{EmbeddedWalletPasswordUpdateScreen-B7N8Noqf.js → EmbeddedWalletPasswordUpdateScreen-DMx4Tn8E.js} +1 -1
- package/dist/cjs/{EmbeddedWalletPasswordUpdateSplashScreen-kiTrvJ2h.js → EmbeddedWalletPasswordUpdateSplashScreen-wUfHEYpF.js} +1 -1
- package/dist/cjs/{EnrollTotp-Bxzun51r.js → EnrollTotp-B1qE1mCx.js} +1 -1
- package/dist/cjs/{ErrorScreen-BsvL8i4R.js → ErrorScreen-BPXQabSS.js} +1 -1
- package/dist/cjs/{FarcasterConnectStatusScreen-DMnzjTAV.js → FarcasterConnectStatusScreen-C_NK2UCS.js} +1 -1
- package/dist/cjs/{FarcasterSignerStatusScreen-Xb4KBH8f.js → FarcasterSignerStatusScreen-D3DUvPPw.js} +1 -1
- package/dist/cjs/{FundSolWalletWithExternalSolanaWallet-BT4nT21N.js → FundSolWalletWithExternalSolanaWallet-BoOhBVX9.js} +1 -1
- package/dist/cjs/{FundWalletMethodHeader-D_l3529h.js → FundWalletMethodHeader-BUHyY_8M.js} +1 -1
- package/dist/cjs/FundWithBankDepositScreen-D_qA2wCk.js +176 -0
- package/dist/cjs/{FundingEditAmountScreen-CBp--May.js → FundingEditAmountScreen-DLWLIjEZ.js} +1 -1
- package/dist/cjs/FundingMethodSelectionScreen-BRz8TLz5.js +1 -0
- package/dist/cjs/{InAppBrowserLoginNotPossible-fTc3VwS8.js → InAppBrowserLoginNotPossible-iLA0OVLk.js} +1 -1
- package/dist/cjs/{InstallWalletScreen-Bm_jzHEL.js → InstallWalletScreen-BS2Bwxvi.js} +1 -1
- package/dist/cjs/{LandingScreen-D6094d73.js → LandingScreen-C4KpTL08.js} +1 -1
- package/dist/cjs/{LinkConflictScreen-Bic4pZUv.js → LinkConflictScreen-CNQSun1F.js} +1 -1
- package/dist/cjs/{LinkEmailScreen-BuuqcFAa.js → LinkEmailScreen-oNzcpVes.js} +1 -1
- package/dist/cjs/{LinkPasskeyScreen-CbuNym_z.js → LinkPasskeyScreen-CjdxFDoA.js} +1 -1
- package/dist/cjs/{LinkPhoneScreen-ZIe5uzPN.js → LinkPhoneScreen-B6OzKZnd.js} +1 -1
- package/dist/cjs/{LoginFailedScreen-JnBtBxi1.js → LoginFailedScreen-Cj3ATfwH.js} +1 -1
- package/dist/cjs/{ManualTransferScreen-B4TkbelL.js → ManualTransferScreen-M26HCQmU.js} +1 -1
- package/dist/cjs/{MfaAuthEnrollmentFlowScreen-CmLIp9Ll.js → MfaAuthEnrollmentFlowScreen-D1zKxqD8.js} +1 -1
- package/dist/cjs/{MfaAuthVerifyFlowScreen-B3ATEO7f.js → MfaAuthVerifyFlowScreen-D3eQj9zt.js} +1 -1
- package/dist/cjs/{MfaEnrollmentFlowScreen-COciRqP3.js → MfaEnrollmentFlowScreen-B2gvvMfX.js} +1 -1
- package/dist/cjs/{MfaVerifyFlowScreen-BuljrcdS.js → MfaVerifyFlowScreen-AyHxACnF.js} +1 -1
- package/dist/cjs/{ModalHeader-C45fdSY0.js → ModalHeader-BCPQgekO.js} +1 -1
- package/dist/cjs/{MoonpayStatusScreen-zWJq589Z.js → MoonpayStatusScreen-BQaJBdWu.js} +1 -1
- package/dist/cjs/{OAuthStatusScreen-ecJqpiHx.js → OAuthStatusScreen-JHIOff6A.js} +1 -1
- package/dist/cjs/{PasskeySelectSignupOrLogin-B-0EIFsW.js → PasskeySelectSignupOrLogin-B9J49RMF.js} +1 -1
- package/dist/cjs/{PasskeyStatusScreen-DzuiIFq2.js → PasskeyStatusScreen-ms-tH4cc.js} +1 -1
- package/dist/cjs/{PasswordRecoveryScreen-DQEy0Nqy.js → PasswordRecoveryScreen-CDHZosNL.js} +1 -1
- package/dist/cjs/{QrCode-BKnLFoFt.js → QrCode-CE12LRBB.js} +1 -1
- package/dist/cjs/{RecoveryOAuthStatusScreen-06xKXwi8.js → RecoveryOAuthStatusScreen-BUxNTtqd.js} +1 -1
- package/dist/cjs/{RecoveryPasswordCreateScreen-yfl_af11.js → RecoveryPasswordCreateScreen-BkFOrb6m.js} +1 -1
- package/dist/cjs/{RecoverySelectionScreen-BdHkBTuB.js → RecoverySelectionScreen-HBLOm2va.js} +1 -1
- package/dist/cjs/{Screen-ChnafgL7.js → Screen-BfKedqka.js} +1 -1
- package/dist/cjs/{ScreenLayout-CpclvUVQ.js → ScreenLayout-CMb-Fua0.js} +1 -1
- package/dist/cjs/{SetAutomaticRecoveryScreen-JwwwXok0.js → SetAutomaticRecoveryScreen-DPjXBMos.js} +1 -1
- package/dist/cjs/{SetWalletPasswordForm-ByGHfNqH.js → SetWalletPasswordForm-BslxSGLC.js} +1 -1
- package/dist/cjs/{SignRequestScreen-Bcr25XmN.js → SignRequestScreen-Cjn1PsqC.js} +1 -1
- package/dist/cjs/{StandardSignAndSendTransactionScreen-D-63yMIJ.js → StandardSignAndSendTransactionScreen-BIh1TSV6.js} +1 -1
- package/dist/cjs/{TelegramAuthScreen-DxZS64fR.js → TelegramAuthScreen-BZpPqkC8.js} +1 -1
- package/dist/cjs/{TransactionDetails-DBFsWnn1.js → TransactionDetails-BY2Ynu2J.js} +1 -1
- package/dist/cjs/{TransactionErrorView-nUOKizXV.js → TransactionErrorView-CueeggTz.js} +1 -1
- package/dist/cjs/{TransferFromWalletScreen-CYPZmSPV.js → TransferFromWalletScreen-BfWPkgYH.js} +1 -1
- package/dist/cjs/{TransferOrBridgeLoadingScreen-DiPwnn60.js → TransferOrBridgeLoadingScreen-CI2oh7CB.js} +1 -1
- package/dist/cjs/{UpdateEmailScreen-Bwxxqz1k.js → UpdateEmailScreen-BHgHi-KQ.js} +1 -1
- package/dist/cjs/{UpdatePhoneScreen-DU7RGenX.js → UpdatePhoneScreen-J83rbDYY.js} +1 -1
- package/dist/cjs/{UserLimitReachedScreen-fuIfecOX.js → UserLimitReachedScreen-CYNd-wAp.js} +1 -1
- package/dist/cjs/{WalletInfoCard-DmD26XB9.js → WalletInfoCard-CHdyZdLe.js} +1 -1
- package/dist/cjs/{WalletInterstitialScreen-Bn8l3kCq.js → WalletInterstitialScreen-CmqF-Oas.js} +1 -1
- package/dist/cjs/{WalletLink-D7Q4z7WW.js → WalletLink-Bs_1C81F.js} +1 -1
- package/dist/cjs/{WalletOverflowButton-fU7XMRV1.js → WalletOverflowButton-BqeWaSEy.js} +1 -1
- package/dist/cjs/abstract-smart-wallets.js +1 -1
- package/dist/cjs/{context-DK3qW12H.js → context-D-ZJYjUg.js} +1 -1
- package/dist/cjs/{ethers-DpiO5t5F.js → ethers-SCb3aakT.js} +1 -1
- package/dist/cjs/extended-chains.js +1 -1
- package/dist/cjs/{get-is-unified-wallet-CMHZpDfE.js → get-is-unified-wallet-UpdjHxOV.js} +1 -1
- package/dist/cjs/{index-DhmrMcn2.js → index-BcyDbfqY.js} +1 -1
- package/dist/cjs/{index-CgsQCH2r.js → index-C8lpxYDX.js} +3 -3
- package/dist/cjs/{index-VgEQ4kaA.js → index-gohEbwKU.js} +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/internal.js +1 -1
- package/dist/cjs/{shared-BTeM_5HJ.js → shared-e1wjsjhc.js} +1 -1
- package/dist/cjs/{shouldProceedtoEmbeddedWalletCreationFlow-eB6IctoD.js → shouldProceedtoEmbeddedWalletCreationFlow-DADJI9f0.js} +1 -1
- package/dist/cjs/{smart-wallets-DPXIV14D.js → smart-wallets-D-oPjsFS.js} +1 -1
- package/dist/cjs/smart-wallets.js +1 -1
- package/dist/cjs/solana.js +1 -1
- package/dist/cjs/{styles-BfCR4pAO.js → styles-DUvzIwf1.js} +1 -1
- package/dist/cjs/{to-ui-error-CQ9FNFg-.js → to-ui-error-BJRhg6yc.js} +1 -1
- package/dist/cjs/ui.js +1 -1
- package/dist/cjs/use-export-wallet-B5ujV5Nk.js +1 -0
- package/dist/cjs/{use-export-wallet-Ddpx0kgg.js → use-export-wallet-Dt1qheK5.js} +1 -1
- package/dist/cjs/{useActiveWallet-BgdIZtS6.js → useActiveWallet-Cn6zOXx5.js} +1 -1
- package/dist/cjs/{useGetTokenPrice-CouzWOSt.js → useGetTokenPrice-761HAiva.js} +1 -1
- package/dist/cjs/{useI18n-DDbtkfuB.js → useI18n-DFGBJl_S.js} +1 -1
- package/dist/cjs/{usePrivy-DUT7RIf5.js → usePrivy-cfS6o4tX.js} +1 -1
- package/dist/cjs/{useSolanaRpcClient-CefJOh8Z.js → useSolanaRpcClient-PnNtmWdo.js} +1 -1
- package/dist/cjs/{useWallets-XTVLGZyz.js → useWallets-CKAypPZB.js} +1 -1
- package/dist/cjs/{useWallets-DXWvKTyb.js → useWallets-DeTGSqF_.js} +1 -1
- package/dist/dts/{events-context-Fks6josE.d.ts → events-context-Bz1yk0zU.d.mts} +1 -1
- package/dist/dts/{events-context-Fks6josE.d.mts → events-context-Bz1yk0zU.d.ts} +1 -1
- package/dist/dts/extended-chains.d.mts +1 -1
- package/dist/dts/extended-chains.d.ts +1 -1
- package/dist/dts/farcaster.d.mts +1 -1
- package/dist/dts/farcaster.d.ts +1 -1
- package/dist/dts/index.d.mts +4 -4
- package/dist/dts/index.d.ts +4 -4
- package/dist/dts/internal.d.mts +1 -1
- package/dist/dts/internal.d.ts +1 -1
- package/dist/dts/smart-wallets.d.mts +1 -1
- package/dist/dts/smart-wallets.d.ts +1 -1
- package/dist/dts/solana.d.mts +3 -3
- package/dist/dts/solana.d.ts +3 -3
- package/dist/dts/{types-CjDYScKX.d.mts → types-CIvz-X6P.d.mts} +21 -5
- package/dist/dts/{types-CjDYScKX.d.ts → types-CIvz-X6P.d.ts} +21 -5
- package/dist/dts/ui.d.mts +1 -1
- package/dist/dts/ui.d.ts +1 -1
- package/dist/esm/{AccountNotFoundScreen-DzQ8Ded6.mjs → AccountNotFoundScreen-C055cesr.mjs} +1 -1
- package/dist/esm/{Address-ClnXOtX_.mjs → Address-BjZb-TIL.mjs} +1 -1
- package/dist/esm/{AffirmativeConsentScreen-CGLpvQm4.mjs → AffirmativeConsentScreen-DXy2kEcy.mjs} +1 -1
- package/dist/esm/{AllowlistRejectionScreen-0T0W1npW.mjs → AllowlistRejectionScreen-BIzWPeoe.mjs} +1 -1
- package/dist/esm/{AuthenticateWithWalletScreen-aIIbB44q.mjs → AuthenticateWithWalletScreen-q3jQKiH6.mjs} +1 -1
- package/dist/esm/{AwaitingEvmToSolBridgingScreen-Bcx6oRJE.mjs → AwaitingEvmToSolBridgingScreen-B4R4PEVm.mjs} +1 -1
- package/dist/esm/{AwaitingExternalEthereumTransferScreen-BlmM5W1W.mjs → AwaitingExternalEthereumTransferScreen-Dwy69FD1.mjs} +1 -1
- package/dist/esm/{AwaitingPasswordlessCodeScreen-DxV44L8v.mjs → AwaitingPasswordlessCodeScreen-Ch_YXDTX.mjs} +1 -1
- package/dist/esm/{AwaitingSolToEvmBridgingScreen-C_VwI_Sw.mjs → AwaitingSolToEvmBridgingScreen-spElnpUE.mjs} +1 -1
- package/dist/esm/{BridgeNetworkSelectionView-F7koQMl8.mjs → BridgeNetworkSelectionView-CaDh-Zck.mjs} +1 -1
- package/dist/esm/{CaptchaScreen-BeoBh2yB.mjs → CaptchaScreen-BZy78GrD.mjs} +1 -1
- package/dist/esm/{CoinbaseOnrampStatusScreen-h359lw0u.mjs → CoinbaseOnrampStatusScreen-CTWZaE1o.mjs} +1 -1
- package/dist/esm/{ConnectEmailForm-D96RP15S.mjs → ConnectEmailForm-0GOHNayM.mjs} +1 -1
- package/dist/esm/{ConnectLedgerScreen-DlzVqbV7.mjs → ConnectLedgerScreen-CIPOaq8e.mjs} +1 -1
- package/dist/esm/{ConnectOnlyLandingScreen-wbu-70B6.mjs → ConnectOnlyLandingScreen-CbLV-cj4.mjs} +1 -1
- package/dist/esm/{ConnectOnlyStatusScreen-CbWmfcm8.mjs → ConnectOnlyStatusScreen-bmx1wwk1.mjs} +1 -1
- package/dist/esm/{ConnectOrCreateScreen-CSKKpNhC.mjs → ConnectOrCreateScreen-DXw5Y8gN.mjs} +1 -1
- package/dist/esm/{ConnectPhoneForm-Cfdo1Hxx.mjs → ConnectPhoneForm-_lOAQG_X.mjs} +1 -1
- package/dist/esm/{ConnectWalletView-D9FJQoQd.mjs → ConnectWalletView-CDqboUej.mjs} +1 -1
- package/dist/esm/{ConnectionStatusScreen-BCZOSVuo.mjs → ConnectionStatusScreen-D-9fLZfA.mjs} +1 -1
- package/dist/esm/{CrossAppAuthScreen-C9Y8UmMT.mjs → CrossAppAuthScreen-Co723kT3.mjs} +1 -1
- package/dist/esm/{CustomLandingScreenView-C9zIdEBy.mjs → CustomLandingScreenView-9mrgsDhT.mjs} +1 -1
- package/dist/esm/{DelegatedActionsConsentScreen-CRlv1sFS.mjs → DelegatedActionsConsentScreen-CyQTJHgT.mjs} +1 -1
- package/dist/esm/{DelegatedActionsRevokeScreen-CfOOZLtD.mjs → DelegatedActionsRevokeScreen-CFm4F3CM.mjs} +1 -1
- package/dist/esm/{EmbeddedWalletConnectingScreen-DuSxBQbx.mjs → EmbeddedWalletConnectingScreen-DmTtzGwq.mjs} +1 -1
- package/dist/esm/{EmbeddedWalletCreatedScreen--ZpH1G0k.mjs → EmbeddedWalletCreatedScreen-Cj1c5KyP.mjs} +1 -1
- package/dist/esm/{EmbeddedWalletKeyExportScreen-CSJq1Sik.mjs → EmbeddedWalletKeyExportScreen-CsWRTEgd.mjs} +1 -1
- package/dist/esm/{EmbeddedWalletOnAccountCreateScreen-DOSya90v.mjs → EmbeddedWalletOnAccountCreateScreen-DBAmWm90.mjs} +1 -1
- package/dist/esm/{EmbeddedWalletPasswordUpdateScreen-C_es2EpS.mjs → EmbeddedWalletPasswordUpdateScreen-B5w6wtgf.mjs} +1 -1
- package/dist/esm/{EmbeddedWalletPasswordUpdateSplashScreen-DhwnqiCK.mjs → EmbeddedWalletPasswordUpdateSplashScreen-BvsscceO.mjs} +1 -1
- package/dist/esm/{EnrollTotp-YxZ_oitd.mjs → EnrollTotp-uSQt9d2Q.mjs} +1 -1
- package/dist/esm/{ErrorScreen-DZ153hPv.mjs → ErrorScreen-DtGc3Chy.mjs} +1 -1
- package/dist/esm/{FarcasterConnectStatusScreen-CwQhh_aC.mjs → FarcasterConnectStatusScreen-DGeCyr6b.mjs} +1 -1
- package/dist/esm/{FarcasterSignerStatusScreen-D1SKEl4x.mjs → FarcasterSignerStatusScreen-DASa1xq2.mjs} +1 -1
- package/dist/esm/{FundSolWalletWithExternalSolanaWallet-CH85fmbL.mjs → FundSolWalletWithExternalSolanaWallet-0jNi_hvn.mjs} +1 -1
- package/dist/esm/{FundWalletMethodHeader-D0DhWPu0.mjs → FundWalletMethodHeader-Cfci4-83.mjs} +1 -1
- package/dist/esm/FundWithBankDepositScreen-D_uu3GEF.mjs +176 -0
- package/dist/esm/{FundingEditAmountScreen-C_YGQD1r.mjs → FundingEditAmountScreen-vQUS-a80.mjs} +1 -1
- package/dist/esm/FundingMethodSelectionScreen-G8gkM1Mk.mjs +1 -0
- package/dist/esm/{InAppBrowserLoginNotPossible-BiwxWFju.mjs → InAppBrowserLoginNotPossible-C8mlSbYe.mjs} +1 -1
- package/dist/esm/{InstallWalletScreen-DHPONpNA.mjs → InstallWalletScreen-D0kdHc5W.mjs} +1 -1
- package/dist/esm/{LandingScreen-DBZbonr_.mjs → LandingScreen-0MlIkV3C.mjs} +1 -1
- package/dist/esm/{LinkConflictScreen-D0TlabXV.mjs → LinkConflictScreen-DW31R5fr.mjs} +1 -1
- package/dist/esm/{LinkEmailScreen-D9zKrb4E.mjs → LinkEmailScreen-B10iXGH8.mjs} +1 -1
- package/dist/esm/{LinkPasskeyScreen-3_thbT6t.mjs → LinkPasskeyScreen-OxaghvUl.mjs} +1 -1
- package/dist/esm/{LinkPhoneScreen-BwBdaLqt.mjs → LinkPhoneScreen-Cdg3eg7w.mjs} +1 -1
- package/dist/esm/{LoginFailedScreen-Dxi-7tx8.mjs → LoginFailedScreen-BVOo2ycm.mjs} +1 -1
- package/dist/esm/{ManualTransferScreen-e347H8JC.mjs → ManualTransferScreen-_04Sq7zU.mjs} +1 -1
- package/dist/esm/{MfaAuthEnrollmentFlowScreen-BUF154dJ.mjs → MfaAuthEnrollmentFlowScreen-DApO6DPY.mjs} +1 -1
- package/dist/esm/{MfaAuthVerifyFlowScreen-BJ4ZNRWe.mjs → MfaAuthVerifyFlowScreen-mdmdgWdO.mjs} +1 -1
- package/dist/esm/{MfaEnrollmentFlowScreen-B5DfdOkM.mjs → MfaEnrollmentFlowScreen-DRZTnt-I.mjs} +1 -1
- package/dist/esm/{MfaVerifyFlowScreen-fjVmi3M8.mjs → MfaVerifyFlowScreen-mrf95cEs.mjs} +1 -1
- package/dist/esm/{ModalHeader-DBfMXKy4.mjs → ModalHeader-D8-mhjp4.mjs} +1 -1
- package/dist/esm/{MoonpayStatusScreen-BeZtoeAo.mjs → MoonpayStatusScreen-DDSK5dda.mjs} +1 -1
- package/dist/esm/{OAuthStatusScreen-BVLexXQC.mjs → OAuthStatusScreen-DSAUQ_YN.mjs} +1 -1
- package/dist/esm/{PasskeySelectSignupOrLogin-CejGrqSb.mjs → PasskeySelectSignupOrLogin-G19VpAdI.mjs} +1 -1
- package/dist/esm/{PasskeyStatusScreen-BrDLZfaA.mjs → PasskeyStatusScreen-TD2nYAnk.mjs} +1 -1
- package/dist/esm/{PasswordRecoveryScreen-Bks4ITku.mjs → PasswordRecoveryScreen-C0oVVZYe.mjs} +1 -1
- package/dist/esm/{QrCode-CKNL79V_.mjs → QrCode-C1tgJtOy.mjs} +1 -1
- package/dist/esm/{RecoveryOAuthStatusScreen-TsrFc2KU.mjs → RecoveryOAuthStatusScreen-Ca9VYOrA.mjs} +1 -1
- package/dist/esm/{RecoveryPasswordCreateScreen--aWRhenB.mjs → RecoveryPasswordCreateScreen-Q1zuy9fu.mjs} +1 -1
- package/dist/esm/{RecoverySelectionScreen-DJ33E1hd.mjs → RecoverySelectionScreen-scmqFA8Y.mjs} +1 -1
- package/dist/esm/{Screen-omroCwTV.mjs → Screen-Bp-TN9gb.mjs} +1 -1
- package/dist/esm/{ScreenLayout-z1I4hafk.mjs → ScreenLayout-DTmQLGPf.mjs} +1 -1
- package/dist/esm/{SetAutomaticRecoveryScreen-DelsQl1S.mjs → SetAutomaticRecoveryScreen-D-__1Pf7.mjs} +1 -1
- package/dist/esm/{SetWalletPasswordForm-DyVubYdV.mjs → SetWalletPasswordForm-0nuoz3XZ.mjs} +1 -1
- package/dist/esm/{SignRequestScreen-C6XvfvXV.mjs → SignRequestScreen-D6HSUOxx.mjs} +1 -1
- package/dist/esm/{StandardSignAndSendTransactionScreen-FQcyAQoq.mjs → StandardSignAndSendTransactionScreen-YlstFfkB.mjs} +1 -1
- package/dist/esm/{TelegramAuthScreen-LB2IdLqW.mjs → TelegramAuthScreen-DHCcieoC.mjs} +1 -1
- package/dist/esm/{TransactionDetails-CLHEcWFe.mjs → TransactionDetails-BurRo8R0.mjs} +1 -1
- package/dist/esm/{TransactionErrorView-D7uZmR_V.mjs → TransactionErrorView-CPFrt0L4.mjs} +1 -1
- package/dist/esm/{TransferFromWalletScreen-BLLYNl1T.mjs → TransferFromWalletScreen-BG5Mj5tz.mjs} +1 -1
- package/dist/esm/{TransferOrBridgeLoadingScreen-DgS9Jr0v.mjs → TransferOrBridgeLoadingScreen-DcCdHB-g.mjs} +1 -1
- package/dist/esm/{UpdateEmailScreen-DGAco54E.mjs → UpdateEmailScreen-ndRi1gY6.mjs} +1 -1
- package/dist/esm/{UpdatePhoneScreen-CLCixHYj.mjs → UpdatePhoneScreen-DoH__glA.mjs} +1 -1
- package/dist/esm/{UserLimitReachedScreen-ClahBH0m.mjs → UserLimitReachedScreen-BLzaOW7F.mjs} +1 -1
- package/dist/esm/{WalletInfoCard-BURM3rIP.mjs → WalletInfoCard-DFt8ndGE.mjs} +1 -1
- package/dist/esm/{WalletInterstitialScreen-CBzg1He2.mjs → WalletInterstitialScreen-BQ-ku50j.mjs} +1 -1
- package/dist/esm/{WalletLink-BXlPbPVx.mjs → WalletLink--05Hzo2b.mjs} +1 -1
- package/dist/esm/{WalletOverflowButton-CWeBF-Wv.mjs → WalletOverflowButton-BlijhJnI.mjs} +1 -1
- package/dist/esm/abstract-smart-wallets.mjs +1 -1
- package/dist/esm/{context-CCRnMB8L.mjs → context-WTldtXS8.mjs} +1 -1
- package/dist/esm/{ethers-B0Y3_-Pp.mjs → ethers-D1WT71Ay.mjs} +1 -1
- package/dist/esm/extended-chains.mjs +1 -1
- package/dist/esm/{get-is-unified-wallet-j2fzd2YE.mjs → get-is-unified-wallet-Boa8DYrQ.mjs} +1 -1
- package/dist/esm/{index-BgGYO9kN.mjs → index-BBRkihRn.mjs} +3 -3
- package/dist/esm/{index-CIjObncO.mjs → index-BH9-XZRZ.mjs} +1 -1
- package/dist/esm/{index-Dk-s5iXx.mjs → index-C9k7EfLZ.mjs} +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/internal.mjs +1 -1
- package/dist/esm/{shared-B_TYFBiH.mjs → shared-CwuyxHmv.mjs} +1 -1
- package/dist/esm/{shouldProceedtoEmbeddedWalletCreationFlow-DjxNSuIS.mjs → shouldProceedtoEmbeddedWalletCreationFlow-BMF_3TVv.mjs} +1 -1
- package/dist/esm/{smart-wallets-DL1EjW8i.mjs → smart-wallets-DOAgnxKI.mjs} +1 -1
- package/dist/esm/smart-wallets.mjs +1 -1
- package/dist/esm/solana.mjs +1 -1
- package/dist/esm/{styles-BeQ5nIO3.mjs → styles-BmZHuqSX.mjs} +1 -1
- package/dist/esm/{to-ui-error-DR840l8Y.mjs → to-ui-error-REESv0kM.mjs} +1 -1
- package/dist/esm/ui.mjs +1 -1
- package/dist/esm/use-export-wallet-CV4p7L0b.mjs +1 -0
- package/dist/esm/{use-export-wallet-AwUSjJIc.mjs → use-export-wallet-DQde4t0V.mjs} +1 -1
- package/dist/esm/{useActiveWallet-Dqi9nNxj.mjs → useActiveWallet-3RHPIBxJ.mjs} +1 -1
- package/dist/esm/{useGetTokenPrice-Djb6UHOW.mjs → useGetTokenPrice-BPBpM07F.mjs} +1 -1
- package/dist/esm/{useI18n-BK0a87xw.mjs → useI18n-BuIe8nUA.mjs} +1 -1
- package/dist/esm/{usePrivy-D9f62ILp.mjs → usePrivy-6nkpbErN.mjs} +1 -1
- package/dist/esm/{useSolanaRpcClient-DizarIU5.mjs → useSolanaRpcClient-BUWOblv_.mjs} +1 -1
- package/dist/esm/{useWallets-BKPOCKnv.mjs → useWallets-CR0z5IIt.mjs} +1 -1
- package/dist/esm/{useWallets-DQOA0__U.mjs → useWallets-C_dCo2_Q.mjs} +1 -1
- package/package.json +6 -6
- package/dist/cjs/FundWithBankDepositScreen-C1BRYtc8.js +0 -175
- package/dist/cjs/FundingMethodSelectionScreen-CL9xLuBR.js +0 -1
- package/dist/cjs/use-export-wallet-BEW54Ynq.js +0 -1
- package/dist/esm/FundWithBankDepositScreen-BJk-wxSq.mjs +0 -175
- package/dist/esm/FundingMethodSelectionScreen-gGZKP4LD.mjs +0 -1
- package/dist/esm/use-export-wallet-Voe8hSb9.mjs +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("ofetch"),t=require("react"),n=require("./context-
|
|
1
|
+
"use strict";var e=require("ofetch"),t=require("react"),n=require("./context-D-ZJYjUg.js"),a=require("./internal-context-BJv4f_bO.js"),r=require("./get-is-unified-wallet-UpdjHxOV.js"),o=require("./analytics-C6C_4JmG.js");const u="moonpay";exports.amountToMoonpayAmount=function(e){return parseFloat(e)},exports.usePollMoonpayTransactionStatus=function(i,s=!1){let[c,d]=t.useState(null),{createAnalyticsEvent:l}=a.usePrivyInternal(),{data:y,navigate:A,setModalData:m}=r.usePrivyModal(),f=y?.funding,g=t.useRef(0);return t.useEffect((()=>{let t=setInterval((async()=>{if(i)try{let[a]=await async function(t,a){return e.ofetch(`${a?n.MOONPAY_API_URL_SANDBOX:n.MOONPAY_API_URL}/transactions/ext/${t}`,{query:{apiKey:a?n.MOONPAY_PUBLIC_KEY_SANDBOX:n.MOONPAY_PUBLIC_KEY}})}(i,s),r="waitingAuthorization"===a.status&&"credit_debit_card"===a.paymentMethod?"pending":a.status;if(["failed","completed","awaitingAuthorization"].includes(r)&&(l({eventName:o.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{status:r,provider:u,paymentMethod:a.paymentMethod,cardPaymentType:a.cardPaymentType,currency:a.currency?.code,baseCurrencyAmount:a.baseCurrencyAmount,quoteCurrencyAmount:a.quoteCurrencyAmount,feeAmount:a.feeAmount,extraFeeAmount:a.extraFeeAmount,networkFeeAmount:a.networkFeeAmount,isSandbox:s}}),clearInterval(t)),"failed"===r||"serviceFailure"===r)return m({funding:{...f,errorMessage:"Something went wrong adding funds from Moonpay. Please try again or use another method to fund your wallet."},solanaFundingData:y?.solanaFundingData}),void A("FundingMethodSelectionScreen");d(r)}catch(e){404!==e.response?.status&&(g.current+=1),g.current>=3&&(l({eventName:o.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{status:"serviceFailure",provider:u}}),clearInterval(t),m({funding:{...f,errorMessage:"Something went wrong adding funds from Moonpay. Please try again or use another method to fund your wallet."},solanaFundingData:y?.solanaFundingData}),A("FundingMethodSelectionScreen"))}}),3e3);return()=>clearInterval(t)}),[i,g]),c};
|
package/dist/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./index-
|
|
1
|
+
"use strict";var e=require("./index-C8lpxYDX.js"),t=require("./use-export-wallet-B5ujV5Nk.js"),s=require("./useActiveWallet-Cn6zOXx5.js"),r=require("./useWallets-CKAypPZB.js"),i=require("./usePrivy-cfS6o4tX.js"),o=require("./context-D-ZJYjUg.js"),u=require("@privy-io/js-sdk-core"),n=require("./getEmbeddedConnectedWallet-pJd-l936.js");require("react/jsx-runtime"),require("react"),require("uuid"),require("jose"),require("./get-is-unified-wallet-UpdjHxOV.js"),require("@privy-io/are-addresses-equal"),require("./internal-context-BJv4f_bO.js"),require("ofetch"),require("eventemitter3"),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("@scure/base"),require("styled-components"),require("./events-context-Di6--rDg.js"),require("zustand"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("@privy-io/urls"),require("viem"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getPublicClient-BsmZyCGX.js"),require("js-cookie"),require("./frame-Oz7volks.js"),require("@privy-io/routes"),require("x402/client"),require("@privy-io/api-base"),require("viem/accounts"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("tinycolor2"),exports.Captcha=e.Captcha,exports.ConnectorManager=e.ConnectorManager,exports.LoginModal=e.LoginModal,exports.PrivyClient=e.PrivyClient,exports.PrivyModal=e.PrivyModal,exports.PrivyProvider=e.PrivyProvider,exports.createCrossTabUserSyncPlugin=e.createCrossTabUserSyncPlugin,exports.errorIndicatesMaxMfaRetries=e.errorIndicatesMaxMfaRetries,exports.errorIndicatesMfaTimeout=e.errorIndicatesMfaTimeout,exports.errorIndicatesMfaVerificationFailed=e.errorIndicatesMfaVerificationFailed,exports.getAccessToken=e.getCustomerAccessToken,exports.getIdentityToken=e.getIdentityToken,exports.toViemAccount=e.toViemAccount,exports.useAuthMfa=e.useAuthMfa,exports.useAuthMfaEnrollment=e.useAuthMfaEnrollment,exports.useAuthorizationSignature=e.useAuthorizationSignature,exports.useBaseAccountSdk=e.useBaseAccountSdk,exports.useConnectBaseAccount=e.useConnectBaseAccount,exports.useConnectCoinbaseSmartWallet=e.useConnectCoinbaseSmartWallet,exports.useConnectOrCreateWallet=e.useConnectOrCreateWallet,exports.useCrossAppAccounts=e.useCrossAppAccounts,exports.useCustomAuth=e.useCustomAuth,exports.useDelegatedActions=e.useDelegatedActions,exports.useFarcasterSigner=e.useFarcasterSigner,exports.useFundWalletWithBankDeposit=e.useFundWalletWithBankDeposit,exports.useGetAccessTokenForProvider=e.useGetAccessTokenForProvider,exports.useGetWalletPrivateKey=e.useGetWalletPrivateKey,exports.useGuestAccounts=e.useGuestAccounts,exports.useHeadlessDelegatedActions=e.useHeadlessDelegatedActions,exports.useIdentityToken=e.useIdentityToken,exports.useLinkAccount=e.useLinkAccount,exports.useLinkJwtAccount=e.useLinkJwtAccount,exports.useLinkWithPasskey=e.useLinkWithPasskey,exports.useLinkWithSiwe=e.useLinkWithSiwe,exports.useLinkWithSiws=e.useLinkWithSiws,exports.useLoginWithEmail=e.useLoginWithEmail,exports.useLoginWithFarcasterV2=e.useLoginWithFarcasterV2,exports.useLoginWithOAuth=e.useLoginWithOAuth,exports.useLoginWithPasskey=e.useLoginWithPasskey,exports.useLoginWithSiwe=e.useLoginWithSiwe,exports.useLoginWithSiws=e.useLoginWithSiws,exports.useLoginWithSms=e.useLoginWithSms,exports.useLoginWithTelegram=e.useLoginWithTelegram,exports.useMfa=e.useMfa,exports.useMfaEnrollment=e.useMfaEnrollment,exports.useMigrateWallets=e.useMigrateWallets,exports.useModalStatus=e.useModalStatus,exports.useOAuthTokens=e.useOAuthTokens,exports.useRecoverEmbeddedWallet=e.useRecoverEmbeddedWallet,exports.useRegisterMfaListener=e.useRegisterMfaListener,exports.useSendTransaction=e.useSendTransaction,exports.useSessionSigners=e.useSessionSigners,exports.useSetWalletRecovery=e.useSetWalletRecovery,exports.useSign7702Authorization=e.useSign7702Authorization,exports.useSignMessage=e.useSignMessage,exports.useSignTransaction=e.useSignTransaction,exports.useSignTypedData=e.useSignTypedData,exports.useSigners=e.useSigners,exports.useSignupWithPasskey=e.useSignupWithPasskey,exports.useSubscribeToJwtAuthWithFlag=e.useSubscribeToJwtAuthWithFlag,exports.useSyncJwtBasedAuthState=e.useSyncJwtBasedAuthState,exports.useToken=e.useToken,exports.useUpdateAccount=e.useUpdateAccount,exports.useUpdateEmail=e.useUpdateEmail,exports.useUser=e.useUser,exports.useX402Fetch=e.useX402Fetch,exports.WalletConnector=t.WalletConnector,exports.useExportWallet=t.useExportWallet,exports.EthereumWalletConnector=s.EthereumWalletConnector,exports.useActiveWallet=s.useActiveWallet,exports.useConnectWallet=s.useConnectWallet,exports.useFundWallet=s.useFundWallet,exports.useLogin=s.useLogin,exports.useLogout=s.useLogout,exports.useWallets=r.useWallets,exports.useCreateWallet=i.useCreateWallet,exports.useImportWallet=i.useImportWallet,exports.usePrivy=i.usePrivy,exports.VERSION=o.VERSION,Object.defineProperty(exports,"SUPPORTED_CHAINS",{enumerable:!0,get:function(){return u.DEFAULT_SUPPORTED_CHAINS}}),Object.defineProperty(exports,"addPrivyRpcToChain",{enumerable:!0,get:function(){return u.addPrivyRpcToChain}}),Object.defineProperty(exports,"addRpcUrlOverrideToChain",{enumerable:!0,get:function(){return u.addRpcUrlOverrideToChain}}),exports.dataSuffix=n.createDataSuffixPlugin,exports.getEmbeddedConnectedWallet=n.getEmbeddedConnectedWallet;
|
package/dist/cjs/internal.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./internal-context-BJv4f_bO.js"),t=require("./paths-DizMb-lU.js"),r=require("./context-
|
|
1
|
+
"use strict";var e=require("./internal-context-BJv4f_bO.js"),t=require("./paths-DizMb-lU.js"),r=require("./context-D-ZJYjUg.js"),i=require("./events-context-Di6--rDg.js");require("ofetch"),require("react"),require("react/jsx-runtime"),require("@privy-io/js-sdk-core"),require("tinycolor2");class n{async authenticate(){if(!this.api)throw new e.PrivyClientError("Auth flow has no API instance");try{return await this.api.post(t.ssoAuthenticatePath,{})}catch(t){throw e.formatApiError(t)}}async link(){throw new e.PrivyClientError("Linking is not supported for the SSO token flow")}constructor(){this.meta={}}}exports.useLoginWithSsoToken=function(){let t=r.useAppConfig(),o=i.useEmitPrivyEvent(),{client:s,setUser:a,setAuthenticated:u,setIsNewUser:c}=e.usePrivyInternal();return{loginWithSsoToken:async()=>{if(!t.id||!s)throw new e.PrivyClientError("SDK not yet ready");try{let t=new n;s.startAuthFlow(t);let r=await s.authenticate(),i=r.user,h=r.isNewUser??!1;if(!i)throw new e.PrivyClientError("Unable to authenticate with SSO response");return a(i),c(h),u(!0),o("login","onComplete",{user:i,isNewUser:h,wasAlreadyAuthenticated:!1,loginMethod:"sso",loginAccount:null}),i}catch(t){throw o("login","onError",t.privyErrorCode||e.PrivyErrorCode.UNKNOWN_AUTH_ERROR),t}}}};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var e=require("@heroicons/react/24/outline/ArrowPathIcon"),r=require("@heroicons/react/24/outline/EyeIcon"),t=require("@heroicons/react/24/outline/EyeSlashIcon"),o=require("styled-components"),i=require("./ModalHeader-
|
|
1
|
+
"use strict";var e=require("@heroicons/react/24/outline/ArrowPathIcon"),r=require("@heroicons/react/24/outline/EyeIcon"),t=require("@heroicons/react/24/outline/EyeSlashIcon"),o=require("styled-components"),i=require("./ModalHeader-BCPQgekO.js");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=/*#__PURE__*/n(e),s=/*#__PURE__*/n(r),l=/*#__PURE__*/n(t);let d=o.css`
|
|
2
2
|
font-size: 14px;
|
|
3
3
|
font-style: normal;
|
|
4
4
|
font-weight: 400;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./index-
|
|
1
|
+
"use strict";var e=require("./index-C8lpxYDX.js");exports.shouldProceedtoEmbeddedWalletCreationFlow=(d,t)=>e.shouldCreateEmbeddedEthWallet(d,t.ethereum.createOnLogin)||e.shouldCreateEmbeddedSolWallet(d,t.solana.createOnLogin);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("react"),t=require("viem"),r=require("./get-is-unified-wallet-CMHZpDfE.js"),n=require("./context-DK3qW12H.js"),a=require("./internal-context-BJv4f_bO.js"),i=require("./useWallets-XTVLGZyz.js"),s=require("./PrivyPluginContext-DsgaS6n9.js"),o=require("./getEmbeddedConnectedWallet-pJd-l936.js"),l=require("./getPublicClient-BsmZyCGX.js"),c=require("permissionless"),d=require("permissionless/accounts"),u=require("permissionless/clients/pimlico"),m=require("viem/account-abstraction"),p=require("@privy-io/js-sdk-core");let y={address:m.entryPoint06Address,version:"0.6"},g={address:m.entryPoint07Address,version:"0.7"},P=({owner:e,smartWalletType:t,smartWalletVersion:r,publicClient:n})=>{switch(t){case p.SAFE:return d.toSafeSmartAccount({client:n,entryPoint:g,owners:[e],version:"1.4.1"});case p.KERNEL:return d.toKernelSmartAccount({client:n,version:"0.3.1",entryPoint:g,useMetaFactory:"optional",owners:[e]});case p.BICONOMY:return d.toBiconomySmartAccount({client:n,owners:[e],entryPoint:y});case p.LIGHT_ACCOUNT:return d.toLightSmartAccount({client:n,entryPoint:y,owner:e,version:"1.1.0"});case p.COINBASE_SMART_WALLET:return async function({client:e,owner:t,version:r}){let[n]=await t.request({method:"eth_accounts"});if(!n)throw Error("Unable to request embedded owner for eth_accounts");return await m.toCoinbaseSmartAccount({client:e,owners:[{type:"local",source:"privy",address:n,sign:async({hash:e})=>await t.request({method:"secp256k1_sign",params:[e]})}],version:r})}({client:n,owner:e,version:r??"1"});case p.THIRDWEB:return d.toThirdwebSmartAccount({client:n,entryPoint:g,owner:e});default:throw Error(`Invalid smart account type: ${t}.`)}};const h=({calls:e,chain:t,maxPriorityFeePerGas:r,maxFeePerGas:n,nonce:a})=>e.map((e=>({to:e.to||void 0,data:e.data,value:e.value,chainId:t.id,nonce:a,maxFeePerGas:n,maxPriorityFeePerGas:r}))),f=async({chain:e,paymasterContext:r,account:n,signer:i,user:s,smartWalletsConfig:o,rpcConfig:d,privyAppId:m})=>{if(!(o?.enabled&&s&&n&&i))return;let p=o?.configuredNetworks.find((t=>t.chainId===`eip155:${e.id}`));if(!p)throw new a.PrivyClientError(`The chain ${e.name} (eip155:${e.id}) must be configured in the smart wallet configuration in your dashboard`);let y=s.smartWallet?s.smartWallet.smartWalletType:o.smartWalletType,g=s.smartWallet?s.smartWallet.smartWalletVersion:o.smartWalletVersion,h=l.getJsonRpcEndpointFromChain(e,d,m),f=t.createPublicClient({chain:e,transport:t.http(h)}),I=r??p.paymasterContext,F=await(async({owner:e,smartWalletType:r,smartWalletVersion:n,chain:a,publicClient:i,bundlerUrl:s,paymasterUrl:o,paymasterContext:l})=>{let d=await P({owner:e,smartWalletType:r,publicClient:i,smartWalletVersion:n}),m=u.createPimlicoClient({transport:t.http(s),entryPoint:d.entryPoint}),p=o?u.createPimlicoClient({transport:t.http(o),entryPoint:d.entryPoint}):void 0;return c.createSmartAccountClient({account:d,chain:a,paymaster:p,paymasterContext:l,bundlerTransport:t.http(s),userOperation:{estimateFeesPerGas:async()=>{if(["public.pimlico.io","api.pimlico.io"].some((e=>s.includes(e))))return await m.getUserOperationGasPrice().then((e=>e.fast));if(["rpc.zerodev.app"].some((e=>s.includes(e))))return(await m.request({method:"zd_getUserOperationGasPrice",params:[]})).fast;if(["g.alchemy.com"].some((e=>s.includes(e)))){let[e,t]=await Promise.all([i.getBlock({blockTag:"latest"}),m.request({method:"rundler_maxPriorityFeePerGas",params:[]})]);if(!e.baseFeePerGas||!t)throw Error("Failed to get block or maxPriorityFeePerGasEstimate");return{maxFeePerGas:150n*e.baseFeePerGas/100n+BigInt(t.toString()),maxPriorityFeePerGas:BigInt(t.toString())}}{let e=await i.estimateFeesPerGas(),t=s.includes("api.developer.coinbase.com")?175n:150n;return{...e,maxFeePerGas:e.maxFeePerGas*t/100n,maxPriorityFeePerGas:e.maxPriorityFeePerGas*t/100n}}}}})})({owner:i,smartWalletType:y,smartWalletVersion:g,chain:e,publicClient:f,paymasterContext:I,...p});if(!F)throw new a.PrivyClientError(`Failed to create smart wallet client for chain ${e.name} (eip155:${e.id})`);return F};exports.callsToTransactionRequests=h,exports.getSmartWalletClient=f,exports.useSmartWalletsUIWrapper=()=>{let{hideWalletUIs:e,openPrivyModal:t,isHeadlessSigning:n}=a.usePrivyInternal(),{setModalData:l}=r.usePrivyModal(),{user:c}=r.usePrivyContext(),d=s.usePlugins(),u=r.getPrivyEthereumWallet(c),m=!!u&&r.getIsUnifiedWallet(u);return{wrapSmartAccountClientWithUIs:r=>({...r,sendTransaction:async(a,s)=>{let p=[];"calls"in a&&void 0!==a.calls?p=[...a.calls]:"to"in a&&(p=[{to:a.to,value:a.value||BigInt(0),data:a.data||"0x"}]);let y=(await r.prepareUserOperation({calls:p,maxFeePerGas:a.maxFeePerGas,maxPriorityFeePerGas:a.maxPriorityFeePerGas,nonce:a.nonce?BigInt(a.nonce):void 0})).callData,g=d(o.DATA_SUFFIX_PLUGIN_ID);if(g&&(y=g.appendDataSuffix({data:y})),n({showWalletUIs:s?.uiOptions?.showWalletUIs}))return e.current=!0,await r.sendTransaction({callData:y,maxFeePerGas:a.maxFeePerGas,maxPriorityFeePerGas:a.maxPriorityFeePerGas,nonce:a.nonce?BigInt(a.nonce):void 0}).finally((()=>e.current=!1));let P=async()=>{if(!r.paymaster)return!1;let{paymasterData:e,paymasterAndData:t}=await r.prepareUserOperation({calls:p,maxFeePerGas:a.maxFeePerGas,maxPriorityFeePerGas:a.maxPriorityFeePerGas,nonce:a.nonce?BigInt(a.nonce):void 0});return Number(t??e??0)>0};return new Promise((async(n,o)=>{e.current=!0;let{entropyId:d,entropyIdVerifier:g}=i.getEntropyDetailsForUser(c);l({connectWallet:{recoveryMethod:u.recoveryMethod,connectingWalletAddress:u.address,isUnifiedWallet:m,entropyId:d,entropyIdVerifier:g,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:h({calls:p,chain:r.chain,maxPriorityFeePerGas:a.maxPriorityFeePerGas,maxFeePerGas:a.maxFeePerGas,nonce:a.nonce?BigInt(a.nonce):void 0}),transactingWalletIndex:0,transactingWalletAddress:r.account.address,entropyId:d,entropyIdVerifier:g,getIsSponsored:P,signOnly:!1,onConfirm:async()=>r.sendTransaction({callData:y,maxFeePerGas:a.maxFeePerGas,maxPriorityFeePerGas:a.maxPriorityFeePerGas,nonce:a.nonce?BigInt(a.nonce):void 0}),onSuccess:e=>n(e.hash),onFailure:o,uiOptions:s?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1}))},signMessage:async(a,s)=>n({showWalletUIs:s?.uiOptions?.showWalletUIs})?(e.current=!0,await r.signMessage(a).finally((()=>e.current=!1))):new Promise((async(n,o)=>{let{entropyId:d,entropyIdVerifier:p}=i.getEntropyDetailsForUser(c);e.current=!0,l({connectWallet:{recoveryMethod:u.recoveryMethod,connectingWalletAddress:u.address,isUnifiedWallet:m,entropyId:d,entropyIdVerifier:p,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"personal_sign",data:"string"==typeof a.message?a.message:a.message.raw.toString(),confirmAndSign:()=>r.signMessage(a),onSuccess:e=>n(e),onFailure:o,uiOptions:s?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1})),signTypedData:async(a,s)=>n({showWalletUIs:s?.uiOptions?.showWalletUIs})?(e.current=!0,await r.signTypedData(a).finally((()=>e.current=!1))):new Promise((async(n,o)=>{e.current=!0;let{entropyId:d,entropyIdVerifier:p}=i.getEntropyDetailsForUser(c);l({connectWallet:{recoveryMethod:u.recoveryMethod,connectingWalletAddress:u.address,isUnifiedWallet:m,entropyId:d,entropyIdVerifier:p,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:a,confirmAndSign:()=>r.signTypedData(a),onSuccess:e=>n(e),onFailure:o,uiOptions:s?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1}))})}},exports.useSmartWalletsWrapper=({clientConfig:t,smartWalletsConfig:l})=>{let{hideWalletUIs:c,openPrivyModal:d,appId:u,isHeadlessSigning:m}=a.usePrivyInternal(),p=n.useAppConfig(),{setModalData:y}=r.usePrivyModal(),{user:g}=r.usePrivyContext(),{chains:P}=n.useAppConfig(),I=s.usePlugins(),{chainId:F,clients:w,setChainId:W,chainIdState:x}=(()=>{let t=e.useRef(),[r,n]=e.useState();return{clients:e.useRef({}),setChainId:e=>{t.current=e,n(e)},chainId:t,chainIdState:r}})(),v=P.find((e=>e.id===x)),{wallets:C}=i.useWallets(),G=r.getPrivyEthereumWallet(g),S=o.getEmbeddedConnectedWalletWithAddress(C,G?.address),U=!!G&&r.getIsUnifiedWallet(G),T=e.useCallback((async()=>F.current),[F]),A=e.useCallback((async({id:e})=>{if(!w.current[e]){let r=await f({chain:P.find((t=>t.id===e)),account:G,signer:await(S?.getEthereumProvider()),user:g,paymasterContext:t?.paymasterContext,smartWalletsConfig:l,rpcConfig:p.rpcConfig,privyAppId:u});r&&(w.current[e]=r)}W(e)}),[P,t,C,g,l]);return{wrapSmartAccountClient:e=>{w.current[e.chain.id]=e,x||W(e.chain.id);return{...e,sendTransaction:async(e,t)=>{let r=w.current[F.current];if(!r)throw new a.PrivyClientError(`Smart wallet client for chain (eip155:${F.current}) not found`);delete e.account;let n=[];"calls"in e&&void 0!==e.calls?n=[...e.calls]:"to"in e&&(n=[{to:e.to,value:e.value||BigInt(0),data:e.data||"0x"}]);let s=(await r.prepareUserOperation({calls:n,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0})).callData,l=I(o.DATA_SUFFIX_PLUGIN_ID);if(l&&(s=l.appendDataSuffix({data:s})),m({showWalletUIs:t?.uiOptions?.showWalletUIs}))return c.current=!0,await r.sendTransaction({callData:s,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}).finally((()=>c.current=!1));let u=async()=>{let{paymasterAndData:t,paymasterData:a,maxFeePerGas:i,maxPriorityFeePerGas:s}=await r.prepareUserOperation({calls:n,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0});return 0===Number(i)&&0===Number(s)||Number(t??a??0)>0};return new Promise((async(a,o)=>{c.current=!0;let{entropyId:l,entropyIdVerifier:m}=i.getEntropyDetailsForUser(g);y({connectWallet:{recoveryMethod:G.recoveryMethod,connectingWalletAddress:G.address,isUnifiedWallet:U,entropyId:l,entropyIdVerifier:m,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:h({calls:n,chain:r.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),transactingWalletIndex:0,transactingWalletAddress:r.account.address,entropyId:l,entropyIdVerifier:m,getIsSponsored:u,signOnly:!1,onConfirm:async()=>r.sendTransaction({callData:s,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),onSuccess:e=>a(e.hash),onFailure:o,uiOptions:t?.uiOptions??{}}}),d("EmbeddedWalletConnectingScreen")})).finally((()=>{c.current=!1}))},signMessage:async(e,t)=>{let r=w.current[F.current];if(!r)throw new a.PrivyClientError(`Smart wallet client for chain (eip155:${F.current}) not found`);return m({showWalletUIs:t?.uiOptions?.showWalletUIs})?(c.current=!0,await r.signMessage(e).finally((()=>c.current=!1))):new Promise((async(n,a)=>{let{entropyId:s,entropyIdVerifier:o}=i.getEntropyDetailsForUser(g);c.current=!0,y({connectWallet:{recoveryMethod:G.recoveryMethod,connectingWalletAddress:G.address,isUnifiedWallet:U,entropyId:s,entropyIdVerifier:o,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"personal_sign",data:"string"==typeof e.message?e.message:e.message.raw.toString(),confirmAndSign:()=>r.signMessage(e),onSuccess:e=>n(e),onFailure:a,uiOptions:t?.uiOptions??{}}}),d("EmbeddedWalletConnectingScreen")})).finally((()=>{c.current=!1}))},signTypedData:async(e,t)=>{let r=w.current[F.current];if(!r)throw new a.PrivyClientError(`Smart wallet client for chain (eip155:${F.current}) not found`);return delete e.account,m({showWalletUIs:t?.uiOptions?.showWalletUIs})?(c.current=!0,await r.signTypedData(e).finally((()=>c.current=!1))):new Promise((async(n,a)=>{c.current=!0;let{entropyId:s,entropyIdVerifier:o}=i.getEntropyDetailsForUser(g);y({connectWallet:{recoveryMethod:G.recoveryMethod,connectingWalletAddress:G.address,isUnifiedWallet:U,entropyId:s,entropyIdVerifier:o,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:e,confirmAndSign:()=>r.signTypedData(e),onSuccess:e=>n(e),onFailure:a,uiOptions:t?.uiOptions??{}}}),d("EmbeddedWalletConnectingScreen")})).finally((()=>{c.current=!1}))},getChainId:T,chain:v,switchChain:A}}}};
|
|
1
|
+
"use strict";var e=require("react"),t=require("viem"),r=require("./get-is-unified-wallet-UpdjHxOV.js"),n=require("./context-D-ZJYjUg.js"),a=require("./internal-context-BJv4f_bO.js"),i=require("./useWallets-CKAypPZB.js"),s=require("./PrivyPluginContext-DsgaS6n9.js"),o=require("./getEmbeddedConnectedWallet-pJd-l936.js"),l=require("./getPublicClient-BsmZyCGX.js"),c=require("permissionless"),d=require("permissionless/accounts"),u=require("permissionless/clients/pimlico"),m=require("viem/account-abstraction"),p=require("@privy-io/js-sdk-core");let y={address:m.entryPoint06Address,version:"0.6"},g={address:m.entryPoint07Address,version:"0.7"},P=({owner:e,smartWalletType:t,smartWalletVersion:r,publicClient:n})=>{switch(t){case p.SAFE:return d.toSafeSmartAccount({client:n,entryPoint:g,owners:[e],version:"1.4.1"});case p.KERNEL:return d.toKernelSmartAccount({client:n,version:"0.3.1",entryPoint:g,useMetaFactory:"optional",owners:[e]});case p.BICONOMY:return d.toBiconomySmartAccount({client:n,owners:[e],entryPoint:y});case p.LIGHT_ACCOUNT:return d.toLightSmartAccount({client:n,entryPoint:y,owner:e,version:"1.1.0"});case p.COINBASE_SMART_WALLET:return async function({client:e,owner:t,version:r}){let[n]=await t.request({method:"eth_accounts"});if(!n)throw Error("Unable to request embedded owner for eth_accounts");return await m.toCoinbaseSmartAccount({client:e,owners:[{type:"local",source:"privy",address:n,sign:async({hash:e})=>await t.request({method:"secp256k1_sign",params:[e]})}],version:r})}({client:n,owner:e,version:r??"1"});case p.THIRDWEB:return d.toThirdwebSmartAccount({client:n,entryPoint:g,owner:e});default:throw Error(`Invalid smart account type: ${t}.`)}};const h=({calls:e,chain:t,maxPriorityFeePerGas:r,maxFeePerGas:n,nonce:a})=>e.map((e=>({to:e.to||void 0,data:e.data,value:e.value,chainId:t.id,nonce:a,maxFeePerGas:n,maxPriorityFeePerGas:r}))),f=async({chain:e,paymasterContext:r,account:n,signer:i,user:s,smartWalletsConfig:o,rpcConfig:d,privyAppId:m})=>{if(!(o?.enabled&&s&&n&&i))return;let p=o?.configuredNetworks.find((t=>t.chainId===`eip155:${e.id}`));if(!p)throw new a.PrivyClientError(`The chain ${e.name} (eip155:${e.id}) must be configured in the smart wallet configuration in your dashboard`);let y=s.smartWallet?s.smartWallet.smartWalletType:o.smartWalletType,g=s.smartWallet?s.smartWallet.smartWalletVersion:o.smartWalletVersion,h=l.getJsonRpcEndpointFromChain(e,d,m),f=t.createPublicClient({chain:e,transport:t.http(h)}),I=r??p.paymasterContext,F=await(async({owner:e,smartWalletType:r,smartWalletVersion:n,chain:a,publicClient:i,bundlerUrl:s,paymasterUrl:o,paymasterContext:l})=>{let d=await P({owner:e,smartWalletType:r,publicClient:i,smartWalletVersion:n}),m=u.createPimlicoClient({transport:t.http(s),entryPoint:d.entryPoint}),p=o?u.createPimlicoClient({transport:t.http(o),entryPoint:d.entryPoint}):void 0;return c.createSmartAccountClient({account:d,chain:a,paymaster:p,paymasterContext:l,bundlerTransport:t.http(s),userOperation:{estimateFeesPerGas:async()=>{if(["public.pimlico.io","api.pimlico.io"].some((e=>s.includes(e))))return await m.getUserOperationGasPrice().then((e=>e.fast));if(["rpc.zerodev.app"].some((e=>s.includes(e))))return(await m.request({method:"zd_getUserOperationGasPrice",params:[]})).fast;if(["g.alchemy.com"].some((e=>s.includes(e)))){let[e,t]=await Promise.all([i.getBlock({blockTag:"latest"}),m.request({method:"rundler_maxPriorityFeePerGas",params:[]})]);if(!e.baseFeePerGas||!t)throw Error("Failed to get block or maxPriorityFeePerGasEstimate");return{maxFeePerGas:150n*e.baseFeePerGas/100n+BigInt(t.toString()),maxPriorityFeePerGas:BigInt(t.toString())}}{let e=await i.estimateFeesPerGas(),t=s.includes("api.developer.coinbase.com")?175n:150n;return{...e,maxFeePerGas:e.maxFeePerGas*t/100n,maxPriorityFeePerGas:e.maxPriorityFeePerGas*t/100n}}}}})})({owner:i,smartWalletType:y,smartWalletVersion:g,chain:e,publicClient:f,paymasterContext:I,...p});if(!F)throw new a.PrivyClientError(`Failed to create smart wallet client for chain ${e.name} (eip155:${e.id})`);return F};exports.callsToTransactionRequests=h,exports.getSmartWalletClient=f,exports.useSmartWalletsUIWrapper=()=>{let{hideWalletUIs:e,openPrivyModal:t,isHeadlessSigning:n}=a.usePrivyInternal(),{setModalData:l}=r.usePrivyModal(),{user:c}=r.usePrivyContext(),d=s.usePlugins(),u=r.getPrivyEthereumWallet(c),m=!!u&&r.getIsUnifiedWallet(u);return{wrapSmartAccountClientWithUIs:r=>({...r,sendTransaction:async(a,s)=>{let p=[];"calls"in a&&void 0!==a.calls?p=[...a.calls]:"to"in a&&(p=[{to:a.to,value:a.value||BigInt(0),data:a.data||"0x"}]);let y=(await r.prepareUserOperation({calls:p,maxFeePerGas:a.maxFeePerGas,maxPriorityFeePerGas:a.maxPriorityFeePerGas,nonce:a.nonce?BigInt(a.nonce):void 0})).callData,g=d(o.DATA_SUFFIX_PLUGIN_ID);if(g&&(y=g.appendDataSuffix({data:y})),n({showWalletUIs:s?.uiOptions?.showWalletUIs}))return e.current=!0,await r.sendTransaction({callData:y,maxFeePerGas:a.maxFeePerGas,maxPriorityFeePerGas:a.maxPriorityFeePerGas,nonce:a.nonce?BigInt(a.nonce):void 0}).finally((()=>e.current=!1));let P=async()=>{if(!r.paymaster)return!1;let{paymasterData:e,paymasterAndData:t}=await r.prepareUserOperation({calls:p,maxFeePerGas:a.maxFeePerGas,maxPriorityFeePerGas:a.maxPriorityFeePerGas,nonce:a.nonce?BigInt(a.nonce):void 0});return Number(t??e??0)>0};return new Promise((async(n,o)=>{e.current=!0;let{entropyId:d,entropyIdVerifier:g}=i.getEntropyDetailsForUser(c);l({connectWallet:{recoveryMethod:u.recoveryMethod,connectingWalletAddress:u.address,isUnifiedWallet:m,entropyId:d,entropyIdVerifier:g,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:h({calls:p,chain:r.chain,maxPriorityFeePerGas:a.maxPriorityFeePerGas,maxFeePerGas:a.maxFeePerGas,nonce:a.nonce?BigInt(a.nonce):void 0}),transactingWalletIndex:0,transactingWalletAddress:r.account.address,entropyId:d,entropyIdVerifier:g,getIsSponsored:P,signOnly:!1,onConfirm:async()=>r.sendTransaction({callData:y,maxFeePerGas:a.maxFeePerGas,maxPriorityFeePerGas:a.maxPriorityFeePerGas,nonce:a.nonce?BigInt(a.nonce):void 0}),onSuccess:e=>n(e.hash),onFailure:o,uiOptions:s?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1}))},signMessage:async(a,s)=>n({showWalletUIs:s?.uiOptions?.showWalletUIs})?(e.current=!0,await r.signMessage(a).finally((()=>e.current=!1))):new Promise((async(n,o)=>{let{entropyId:d,entropyIdVerifier:p}=i.getEntropyDetailsForUser(c);e.current=!0,l({connectWallet:{recoveryMethod:u.recoveryMethod,connectingWalletAddress:u.address,isUnifiedWallet:m,entropyId:d,entropyIdVerifier:p,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"personal_sign",data:"string"==typeof a.message?a.message:a.message.raw.toString(),confirmAndSign:()=>r.signMessage(a),onSuccess:e=>n(e),onFailure:o,uiOptions:s?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1})),signTypedData:async(a,s)=>n({showWalletUIs:s?.uiOptions?.showWalletUIs})?(e.current=!0,await r.signTypedData(a).finally((()=>e.current=!1))):new Promise((async(n,o)=>{e.current=!0;let{entropyId:d,entropyIdVerifier:p}=i.getEntropyDetailsForUser(c);l({connectWallet:{recoveryMethod:u.recoveryMethod,connectingWalletAddress:u.address,isUnifiedWallet:m,entropyId:d,entropyIdVerifier:p,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:a,confirmAndSign:()=>r.signTypedData(a),onSuccess:e=>n(e),onFailure:o,uiOptions:s?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1}))})}},exports.useSmartWalletsWrapper=({clientConfig:t,smartWalletsConfig:l})=>{let{hideWalletUIs:c,openPrivyModal:d,appId:u,isHeadlessSigning:m}=a.usePrivyInternal(),p=n.useAppConfig(),{setModalData:y}=r.usePrivyModal(),{user:g}=r.usePrivyContext(),{chains:P}=n.useAppConfig(),I=s.usePlugins(),{chainId:F,clients:w,setChainId:W,chainIdState:x}=(()=>{let t=e.useRef(),[r,n]=e.useState();return{clients:e.useRef({}),setChainId:e=>{t.current=e,n(e)},chainId:t,chainIdState:r}})(),v=P.find((e=>e.id===x)),{wallets:C}=i.useWallets(),G=r.getPrivyEthereumWallet(g),S=o.getEmbeddedConnectedWalletWithAddress(C,G?.address),U=!!G&&r.getIsUnifiedWallet(G),T=e.useCallback((async()=>F.current),[F]),A=e.useCallback((async({id:e})=>{if(!w.current[e]){let r=await f({chain:P.find((t=>t.id===e)),account:G,signer:await(S?.getEthereumProvider()),user:g,paymasterContext:t?.paymasterContext,smartWalletsConfig:l,rpcConfig:p.rpcConfig,privyAppId:u});r&&(w.current[e]=r)}W(e)}),[P,t,C,g,l]);return{wrapSmartAccountClient:e=>{w.current[e.chain.id]=e,x||W(e.chain.id);return{...e,sendTransaction:async(e,t)=>{let r=w.current[F.current];if(!r)throw new a.PrivyClientError(`Smart wallet client for chain (eip155:${F.current}) not found`);delete e.account;let n=[];"calls"in e&&void 0!==e.calls?n=[...e.calls]:"to"in e&&(n=[{to:e.to,value:e.value||BigInt(0),data:e.data||"0x"}]);let s=(await r.prepareUserOperation({calls:n,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0})).callData,l=I(o.DATA_SUFFIX_PLUGIN_ID);if(l&&(s=l.appendDataSuffix({data:s})),m({showWalletUIs:t?.uiOptions?.showWalletUIs}))return c.current=!0,await r.sendTransaction({callData:s,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}).finally((()=>c.current=!1));let u=async()=>{let{paymasterAndData:t,paymasterData:a,maxFeePerGas:i,maxPriorityFeePerGas:s}=await r.prepareUserOperation({calls:n,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0});return 0===Number(i)&&0===Number(s)||Number(t??a??0)>0};return new Promise((async(a,o)=>{c.current=!0;let{entropyId:l,entropyIdVerifier:m}=i.getEntropyDetailsForUser(g);y({connectWallet:{recoveryMethod:G.recoveryMethod,connectingWalletAddress:G.address,isUnifiedWallet:U,entropyId:l,entropyIdVerifier:m,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:h({calls:n,chain:r.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),transactingWalletIndex:0,transactingWalletAddress:r.account.address,entropyId:l,entropyIdVerifier:m,getIsSponsored:u,signOnly:!1,onConfirm:async()=>r.sendTransaction({callData:s,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),onSuccess:e=>a(e.hash),onFailure:o,uiOptions:t?.uiOptions??{}}}),d("EmbeddedWalletConnectingScreen")})).finally((()=>{c.current=!1}))},signMessage:async(e,t)=>{let r=w.current[F.current];if(!r)throw new a.PrivyClientError(`Smart wallet client for chain (eip155:${F.current}) not found`);return m({showWalletUIs:t?.uiOptions?.showWalletUIs})?(c.current=!0,await r.signMessage(e).finally((()=>c.current=!1))):new Promise((async(n,a)=>{let{entropyId:s,entropyIdVerifier:o}=i.getEntropyDetailsForUser(g);c.current=!0,y({connectWallet:{recoveryMethod:G.recoveryMethod,connectingWalletAddress:G.address,isUnifiedWallet:U,entropyId:s,entropyIdVerifier:o,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"personal_sign",data:"string"==typeof e.message?e.message:e.message.raw.toString(),confirmAndSign:()=>r.signMessage(e),onSuccess:e=>n(e),onFailure:a,uiOptions:t?.uiOptions??{}}}),d("EmbeddedWalletConnectingScreen")})).finally((()=>{c.current=!1}))},signTypedData:async(e,t)=>{let r=w.current[F.current];if(!r)throw new a.PrivyClientError(`Smart wallet client for chain (eip155:${F.current}) not found`);return delete e.account,m({showWalletUIs:t?.uiOptions?.showWalletUIs})?(c.current=!0,await r.signTypedData(e).finally((()=>c.current=!1))):new Promise((async(n,a)=>{c.current=!0;let{entropyId:s,entropyIdVerifier:o}=i.getEntropyDetailsForUser(g);y({connectWallet:{recoveryMethod:G.recoveryMethod,connectingWalletAddress:G.address,isUnifiedWallet:U,entropyId:s,entropyIdVerifier:o,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:e,confirmAndSign:()=>r.signTypedData(e),onSuccess:e=>n(e),onFailure:a,uiOptions:t?.uiOptions??{}}}),d("EmbeddedWalletConnectingScreen")})).finally((()=>{c.current=!1}))},getChainId:T,chain:v,switchChain:A}}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),t=require("react"),r=require("./get-is-unified-wallet-
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),t=require("react"),r=require("./get-is-unified-wallet-UpdjHxOV.js"),i=require("./context-D-ZJYjUg.js"),a=require("./internal-context-BJv4f_bO.js"),n=require("./getEmbeddedConnectedWallet-pJd-l936.js"),l=require("./smart-wallets-D-oPjsFS.js"),s=require("./useWallets-CKAypPZB.js");require("@privy-io/are-addresses-equal"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("ofetch"),require("viem"),require("./PrivyPluginContext-DsgaS6n9.js"),require("./getPublicClient-BsmZyCGX.js"),require("permissionless"),require("permissionless/accounts"),require("permissionless/clients/pimlico"),require("viem/account-abstraction");let o=/*#__PURE__*/t.createContext({client:void 0,getClientForChain:a.notImplemented});let c=({config:o,children:c})=>{let{appId:d}=a.usePrivyInternal(),{chains:g,defaultChain:m,rpcConfig:C,smartWallets:f}=i.useAppConfig(),{wallets:p}=s.useWallets(),{user:h}=r.usePrivyContext(),[W,v]=t.useState(),{wrapSmartAccountClientWithUIs:y}=l.useSmartWalletsUIWrapper(),w=r.getPrivyEthereumWallet(h),q=n.getEmbeddedConnectedWalletWithAddress(p,w?.address);t.useEffect((()=>{(async()=>{if(!f?.enabled)return;let e=f.configuredNetworks.find((e=>e.chainId===`eip155:${m.id}`))?m:g.find((e=>f.configuredNetworks.map((e=>e.chainId)).includes(`eip155:${e.id}`)));if(!e)throw new a.PrivyClientError("Could not find smart wallets chain configurations for any Privy client configured chains. Please configure smart wallets for your chains in the Privy dashboard.");v(await l.getSmartWalletClient({chain:e,privyAppId:d,paymasterContext:o?.paymasterContext,rpcConfig:C,account:w,signer:await(q?.getEthereumProvider()),user:h,smartWalletsConfig:f}))})()}),[!!f?.enabled,!!h?.smartWallet,!!q,!!w]);/*#__PURE__*/return e.jsx(u.Provider,{value:{client:W,config:o,getClientForChain:async({id:e})=>{let t=await l.getSmartWalletClient({chain:g.find((t=>t.id===e)),privyAppId:d,paymasterContext:o?.paymasterContext,rpcConfig:C,account:w,signer:await(q?.getEthereumProvider()),user:h,smartWalletsConfig:f});if(!t)throw new a.PrivyClientError(`Failed to create smart wallet client for chain id: ${e}`);return y(t)}},children:c})},u=/*#__PURE__*/t.createContext({client:void 0,config:void 0,getClientForChain:a.notImplemented}),d=({children:n})=>{let{smartWallets:s}=i.useAppConfig(),{client:c,config:d,getClientForChain:g}=(()=>{let{client:e,config:r,getClientForChain:i}=t.useContext(u);return{client:e,config:r,getClientForChain:i}})(),{wrapSmartAccountClient:m}=l.useSmartWalletsWrapper({clientConfig:d,smartWalletsConfig:s}),{user:C}=r.usePrivyContext(),{generateSiweMessageForSmartWallet:f,linkSmartWallet:p,hideWalletUIs:h}=a.usePrivyInternal();return t.useEffect((()=>{(async()=>{if(c&&C&&!C?.smartWallet&&s?.enabled)try{let e=await f({address:c.account.address,chainId:`eip155:${c.chain.id}`});h.current=!0;let t=await c.signMessage({message:e});await p({signature:t,message:e,smartWalletType:s.smartWalletType,smartWalletVersion:s.smartWalletVersion})}catch(e){console.error("Error creating smart wallet:",e)}finally{h.current=!1}})()}),[!!c,!!C?.smartWallet,!!s?.enabled]),/*#__PURE__*/e.jsx(o.Provider,{value:{client:C?.smartWallet&&c?m(c):void 0,getClientForChain:g},children:n})};exports.SmartWalletsProvider=({config:t,children:r})=>/*#__PURE__*/e.jsx(c,{config:t,children:/*#__PURE__*/e.jsx(d,{children:r})}),exports.useSmartWallets=()=>{let{client:e,getClientForChain:r}=t.useContext(o);return{client:e,getClientForChain:r}};
|
package/dist/cjs/solana.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("react"),t=require("./usePrivy-DUT7RIf5.js"),s=require("./context-DK3qW12H.js"),i=require("./events-context-Di6--rDg.js"),n=require("./internal-context-BJv4f_bO.js"),a=require("./get-is-unified-wallet-CMHZpDfE.js"),r=require("./PrivyPluginContext-DsgaS6n9.js"),o=require("@solana/kit"),l=require("./useSolanaRpcClient-CefJOh8Z.js"),c=require("./useWallets-DXWvKTyb.js"),u=require("@scure/base"),d=require("@solana-program/memo"),h=require("./use-export-wallet-Ddpx0kgg.js"),p=require("./use-export-wallet-BEW54Ynq.js"),g=require("@wallet-standard/app"),v=require("@walletconnect/universal-provider"),f=require("react-device-detect");require("@privy-io/js-sdk-core"),require("./useWallets-XTVLGZyz.js"),require("react/jsx-runtime"),require("tinycolor2"),require("ofetch"),require("@privy-io/are-addresses-equal"),require("eventemitter3"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("viem/utils");function y(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var b=0;function w(e){return"__private_"+b+++"_"+e}var m=/*#__PURE__*/w("_address"),P=/*#__PURE__*/w("_publicKey"),_=/*#__PURE__*/w("_chains"),T=/*#__PURE__*/w("_features"),S=/*#__PURE__*/w("_label"),j=/*#__PURE__*/w("_icon");class O{get address(){return y(this,m)[m]}get publicKey(){return y(this,P)[P].slice()}get chains(){return y(this,_)[_].slice()}get features(){return y(this,T)[T].slice()}get label(){return y(this,S)[S]}get icon(){return y(this,j)[j]}constructor({address:e,publicKey:t,label:s,icon:i}){Object.defineProperty(this,m,{writable:!0,value:void 0}),Object.defineProperty(this,P,{writable:!0,value:void 0}),Object.defineProperty(this,_,{writable:!0,value:void 0}),Object.defineProperty(this,T,{writable:!0,value:void 0}),Object.defineProperty(this,S,{writable:!0,value:void 0}),Object.defineProperty(this,j,{writable:!0,value:void 0}),y(this,m)[m]=e,y(this,P)[P]=t,y(this,_)[_]=c.SOLANA_CHAINS,y(this,T)[T]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],y(this,S)[S]=s,y(this,j)[j]=i}}function A(e){if("string"==typeof e)return u.base58.decode(e);if(e instanceof Uint8Array)return e;let t=e.signature;return"string"==typeof t?u.base58.decode(t):t}function W(e){if("string"==typeof e){try{return u.base58.decode(e)}catch{}return u.base64.decode(e)}if(e instanceof Uint8Array)return e;let t=e.transaction??e.signature;if(!t)throw Error("Invalid result from signTransaction or signAndSendTransaction attempt");if("string"==typeof t){try{return u.base58.decode(t)}catch{}return u.base64.decode(t)}return t}function C(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var q=0;function E(e){return"__private_"+q+++"_"+e}let M="solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",x="solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1";var k=/*#__PURE__*/E("_listeners"),U=/*#__PURE__*/E("_version"),I=/*#__PURE__*/E("_name"),N=/*#__PURE__*/E("_icon"),F=/*#__PURE__*/E("_provider"),L=/*#__PURE__*/E("_accounts"),R=/*#__PURE__*/E("_privyAppName"),D=/*#__PURE__*/E("_walletConnectCloudProjectId"),K=/*#__PURE__*/E("_walletEntry"),B=/*#__PURE__*/E("_onDisplayUriCallback"),V=/*#__PURE__*/E("_providerEventListeners"),G=/*#__PURE__*/E("_on"),z=/*#__PURE__*/E("_emit"),J=/*#__PURE__*/E("_off"),H=/*#__PURE__*/E("_connected"),Y=/*#__PURE__*/E("_disconnected"),Z=/*#__PURE__*/E("_connect"),$=/*#__PURE__*/E("_disconnect"),Q=/*#__PURE__*/E("_signMessage"),X=/*#__PURE__*/E("_signAndSendTransaction"),ee=/*#__PURE__*/E("_signTransaction"),te=/*#__PURE__*/E("_getOrCreateProvider"),se=/*#__PURE__*/E("_getOrCreateSession"),ie=/*#__PURE__*/E("_restoreSession"),ne=/*#__PURE__*/E("_addProviderEventListener"),ae=/*#__PURE__*/E("_destroySession"),re=/*#__PURE__*/E("_makeRpcRequest"),oe=/*#__PURE__*/E("_onDisplayUri"),le=/*#__PURE__*/E("_onSessionDelete");class ce{get version(){return C(this,U)[U]}get name(){return C(this,I)[I]}get icon(){return C(this,N)[N]}get chains(){return c.SOLANA_CHAINS.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:C(this,Z)[Z]},"standard:disconnect":{version:"1.0.0",disconnect:C(this,$)[$]},"standard:events":{version:"1.0.0",on:C(this,G)[G]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:C(this,X)[X]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:C(this,ee)[ee]},"solana:signMessage":{version:"1.0.0",signMessage:C(this,Q)[Q]}}}get accounts(){return C(this,L)[L].slice()}get isWalletConnectSolana(){return!0}async initialize({walletConnectCloudProjectId:e,privyAppName:t}){C(this,D)[D]=e,C(this,R)[R]=t,await C(this,te)[te](),await C(this,ie)[ie]()}setWalletEntry(e,t){C(this,K)[K]=e,C(this,B)[B]=t}constructor(){Object.defineProperty(this,z,{value:ue}),Object.defineProperty(this,J,{value:de}),Object.defineProperty(this,k,{writable:!0,value:void 0}),Object.defineProperty(this,U,{writable:!0,value:void 0}),Object.defineProperty(this,I,{writable:!0,value:void 0}),Object.defineProperty(this,N,{writable:!0,value:void 0}),Object.defineProperty(this,F,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),Object.defineProperty(this,R,{writable:!0,value:void 0}),Object.defineProperty(this,D,{writable:!0,value:void 0}),Object.defineProperty(this,K,{writable:!0,value:void 0}),Object.defineProperty(this,B,{writable:!0,value:void 0}),Object.defineProperty(this,V,{writable:!0,value:void 0}),Object.defineProperty(this,G,{writable:!0,value:void 0}),Object.defineProperty(this,H,{writable:!0,value:void 0}),Object.defineProperty(this,Y,{writable:!0,value:void 0}),Object.defineProperty(this,Z,{writable:!0,value:void 0}),Object.defineProperty(this,$,{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,ee,{writable:!0,value:void 0}),Object.defineProperty(this,te,{writable:!0,value:void 0}),Object.defineProperty(this,se,{writable:!0,value:void 0}),Object.defineProperty(this,ie,{writable:!0,value:void 0}),Object.defineProperty(this,ne,{writable:!0,value:void 0}),Object.defineProperty(this,ae,{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,le,{writable:!0,value:void 0}),C(this,k)[k]={},C(this,U)[U]="1.0.0",C(this,I)[I]="WalletConnect",C(this,N)[N]=p.WALLET_CONNECT_LOGO_DATA_URI,C(this,F)[F]=null,C(this,L)[L]=[],C(this,R)[R]="",C(this,D)[D]="",C(this,V)[V]=new Map,C(this,G)[G]=(e,t)=>(C(this,k)[k][e]?.push(t)||(C(this,k)[k][e]=[t]),()=>C(this,J)[J](e,t)),C(this,H)[H]=e=>{C(this,I)[I]=C(this,F)[F]?.session?.peer?.metadata?.name||C(this,K)[K]?.name||"WalletConnect",C(this,N)[N]=C(this,F)[F]?.session?.peer?.metadata?.icons?.[0]||C(this,K)[K]?.image_url?.sm||C(this,N)[N],C(this,L)[L]=e.map((e=>new O({address:e,publicKey:u.base58.decode(e),label:C(this,I)[I],icon:C(this,N)[N]}))),C(this,z)[z]("change",{accounts:this.accounts})},C(this,Y)[Y]=()=>{C(this,L)[L]=[],C(this,z)[z]("change",{accounts:this.accounts})},C(this,Z)[Z]=async()=>(this.accounts.length||await C(this,se)[se](),{accounts:this.accounts}),C(this,$)[$]=async()=>{await C(this,ae)[ae](),C(this,z)[z]("change",{accounts:this.accounts})},C(this,Q)[Q]=async(...e)=>{let t=[];for(let{account:s,message:i}of e){let e=u.base58.encode(i);try{let n=await C(this,re)[re]("solana_signMessage",{message:e,pubkey:s.address},pe("solana:mainnet"));t.push({signedMessage:i,signature:A(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await C(this,re)[re]("solana:signMessage",{message:e,pubkey:s.address},pe("solana:mainnet"));t.push({signedMessage:i,signature:A(n)})}throw n}}return t},C(this,X)[X]=async(...e)=>{let t=[];for(let{account:s,chain:i,transaction:n,options:a}of e){let e=u.base64.encode(n);try{let n=await C(this,re)[re]("solana_signAndSendTransaction",{transaction:e,pubkey:s.address,sendOptions:a},pe(i));t.push({signature:A(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await C(this,re)[re]("solana:signAndSendTransaction",{transaction:e,pubkey:s.address,sendOptions:a},pe(i));t.push({signature:A(n)})}}}return t},C(this,ee)[ee]=async(...e)=>{let t=[];for(let{account:s,chain:i,transaction:n}of e){let e=u.base64.encode(n);try{let n=await C(this,re)[re]("solana_signTransaction",{transaction:e,pubkey:s.address},pe(i||"solana:mainnet"));t.push({signedTransaction:W(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await C(this,re)[re]("solana:signTransaction",{transaction:e,pubkey:s.address},pe(i||"solana:mainnet"));t.push({signedTransaction:W(n)})}}}return t},C(this,te)[te]=async()=>{if(C(this,F)[F])return C(this,F)[F];if(!C(this,D)[D])throw Error("WalletConnect Cloud Project ID is required");return C(this,F)[F]=await v.UniversalProvider.init({projectId:C(this,D)[D],metadata:{name:C(this,R)[R],description:C(this,R)[R],url:window.location.origin,icons:[]},relayUrl:"wss://relay.walletconnect.com",telemetryEnabled:!1}),C(this,ne)[ne]("display_uri",C(this,oe)[oe]),C(this,ne)[ne]("session_delete",C(this,le)[le]),C(this,ne)[ne]("session_ping",(()=>{})),C(this,ne)[ne]("session_event",(()=>{})),C(this,ne)[ne]("session_update",(()=>{})),C(this,F)[F]},C(this,se)[se]=async()=>{if(!C(this,F)[F])throw Error("WalletConnectSolana: Failed to get or create session. Provider not initialized");if(C(this,F)[F].session)return C(this,F)[F].session;let e=await C(this,F)[F].connect({optionalNamespaces:{solana:{chains:[M,x],methods:["solana_signMessage","solana_signTransaction","solana_signAndSendTransaction"],events:[]}}});if(!e)throw Error("WalletConnectSolana: Failed to create new session");return C(this,H)[H](he(e)),e},C(this,ie)[ie]=async()=>{let e=C(this,F)[F]?.session;if(e){if(!e.namespaces?.solana)return await(C(this,F)[F]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),void(C(this,F)[F].session=void 0);C(this,H)[H](he(e))}},C(this,ne)[ne]=(e,t)=>{let s=C(this,V)[V].get(e);s&&(C(this,F)[F]?.off(e,s),C(this,V)[V].delete(e)),C(this,F)[F]?.on(e,t),C(this,V)[V].set(e,t)},C(this,ae)[ae]=async()=>{try{if(C(this,F)[F]?.session&&await(C(this,F)[F]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),C(this,F)[F]?.client){let e=C(this,F)[F].client.proposal.getAll();await Promise.allSettled(e.map((e=>C(this,F)[F]?.client.proposal.delete(e.id,{code:6e3,message:"User disconnected"}))));let t=C(this,F)[F].client.pairing.getAll();await Promise.allSettled(t.map((e=>C(this,F)[F]?.client.pairing.delete(e.topic,{code:6e3,message:"User disconnected"}))))}C(this,Y)[Y]()}catch(e){console.error("WalletConnectSolana: Error destroying session",e)}},C(this,re)[re]=async(e,t,s)=>{try{return await C(this,F)[F].request({method:e,params:t},s)}catch(t){if(console.error(`WalletConnectSolana: RPC Error - ${e}:`,t),t?.message?.includes("without any listeners")&&t.result)return t.result;if(t?.message?.includes("session topic does not exist in keychain"))throw Error("WalletConnectSolana: Wallet connection lost. Please reconnect.");throw t}},C(this,oe)[oe]=e=>{if(f.isMobile&&C(this,K)[K]){let{redirect:s}=t.buildTargetUrl(e,C(this,K)[K]);null==C(this,B)[B]||C(this,B)[B].call(this,{native:s,universal:s})}else null==C(this,B)[B]||C(this,B)[B].call(this,{native:e,universal:void 0})},C(this,le)[le]=()=>{C(this,Y)[Y]()}}}function ue(e,...t){C(this,k)[k][e]?.forEach((e=>e.apply(null,t)))}function de(e,t){C(this,k)[k][e]=C(this,k)[k][e]?.filter((e=>t!==e))}function he(e){return e.namespaces.solana.accounts.reduce(((e,t)=>{let s=t.split(":").at(-1);return e.includes(s)||e.push(s),e}),[])}function pe(e){switch(e){case"solana:mainnet":return M;case"solana:devnet":return x;default:return e}}var ge={id:t.SOLANA_FUNDING_PLUGIN_ID,getSolanaRpcClient:l.getSolanaRpcClient,createTransactionFromRelayQuote:async function({solanaClient:e,quote:t,source:s}){let i=t.steps[0]?.items?.[0];if(!i)throw Error("Invalid quote");let n=i.data.instructions.map((({keys:e,programId:t,data:s})=>({accounts:e.map((({pubkey:e,isSigner:t,isWritable:s})=>({address:e,role:t&&s?3:t&&!s?2:!t&&s?1:0}))),programAddress:t,data:new Uint8Array(Buffer.from(s,"hex"))}))),{value:a}=await e.rpc.getLatestBlockhash().send(),r=o.pipe(o.createTransactionMessage({version:0}),(e=>o.setTransactionMessageFeePayerSigner({address:s},e)),(e=>o.setTransactionMessageLifetimeUsingBlockhash(a,e)),(e=>o.appendTransactionMessageInstructions(n,e)),(e=>o.compileTransaction(e)));return new Uint8Array(o.getTransactionEncoder().encode(r))},simulateTransaction:l.simulateTransaction,getAddressFromBuffer:c.getAddressFromBuffer,fetchTransactionEstimatedFees:l.fetchTransactionEstimatedFees};var ve={id:t.SOLANA_LEDGER_PLUGIN_ID,createSiwsMemoTransaction:({address:e,nonce:s})=>{let i=d.getAddMemoInstruction({memo:t.prepareSiwsMessageWithNonce({address:o.address(e),nonce:s})});return o.pipe(o.createTransactionMessage({version:"legacy"}),(t=>o.setTransactionMessageFeePayer(o.address(e),t)),(e=>o.setTransactionMessageLifetimeUsingBlockhash({blockhash:o.blockhash("GfVcyD5fWFJ6hRm8bsy7CoVPsLSoJhtJKRJYk8T2VVFN"),lastValidBlockHeight:0n},e)),(e=>o.appendTransactionMessageInstructions([i],e)),(e=>o.compileTransaction(e)),(e=>u.base64.encode(Uint8Array.from(o.getTransactionEncoder().encode(e)))))},getSignatureFromTransaction:(e,t)=>{let s=o.getTransactionDecoder().decode(e).signatures[t];if(!s)throw Error(`Missing transaction signature for address: ${t}`);return u.base64.encode(s)}};exports.useStandardWallets=c.useSolanaStandardWallets,exports.useWallets=c.useWallets,exports.useExportWallet=h.useExportWallet,exports.useFundWallet=h.useFundWallet,exports.SolanaAdapterConnector=p.SolanaWalletConnector,exports.toSolanaWalletConnectors=e=>{let t,{get:s,on:i}=g.getWallets(),n=e?.shouldAutoConnect??!0,a=new p.SolanaWalletConnector(new ce,n),r=new Map,o=[];function l(...e){e.forEach((e=>{!(e.features["privy:"]&&"isPrivyWallet"in e&&e.isPrivyWallet||r.has(e.name))&&e.chains.some((e=>"string"==typeof e&&e.startsWith("solana:")))&&r.set(e.name,e)})),o=Array.from(r.values()).map((e=>new p.SolanaWalletConnector(e,n))).concat(a),t?.(o)}function c(...e){Array.from(r.values()).forEach((t=>!e.includes(t)&&r.delete(t.name))),o=Array.from(r.values()).map((e=>new p.SolanaWalletConnector(e,n))).concat(a),t?.(o)}let u=[i("register",l),i("unregister",c)];return l(...s()),{_setOnConnectorsUpdated:e=>{t=e},onMount:()=>{u[0]||(u[0]=i("register",l)),u[1]||(u[1]=i("unregister",c))},onUnmount:()=>{let e=u.pop();for(;e;)e(),e=u.pop()},get:()=>o}},exports.useCreateWallet=function(){let{create:e}=t.useCreateWalletInternal();return{createWallet:async t=>{t&&"target"in t&&t&&(t=void 0);let{account:s}=await e({chainType:"solana",options:t});return{wallet:s}}}},exports.useImportWallet=()=>{let{user:r}=a.usePrivyContext(),{client:o,refreshSessionAndUser:l,initializeWalletProxy:c}=n.usePrivyInternal(),u=i.useEmitPrivyEvent(),d=s.useAppConfig();return{importWallet:e.useCallback((({privateKey:e,additionalSigners:s})=>t.importWallet({getAccessToken:()=>o.getAccessToken(),user:r,initializeWalletProxy:c,refreshSessionAndUser:l,emitPrivyEvent:u,appConfig:d},{privateKey:e,chainType:"solana",additionalSigners:s})),[r,o,l,c,u,d])}},exports.useSignAndSendTransaction=function(){return{signAndSendTransaction:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signAndSendTransaction({...s,chain:s.chain||"solana:mainnet"}));return 1===e.length?t[0]:[...t]}}},exports.useSignMessage=function(){return{signMessage:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signMessage({...s,options:s.options}));return 1===e.length?t[0]:[...t]}}},exports.useSignTransaction=function(){return{signTransaction:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signTransaction({...s,chain:s.chain||"solana:mainnet"}));return 1===e.length?t[0]:[...t]}}},exports.useSolanaFundingPlugin=()=>r.useRegisterPlugin(ge),exports.useSolanaLedgerPlugin=()=>r.useRegisterPlugin(ve);
|
|
1
|
+
"use strict";var e=require("react"),t=require("./usePrivy-cfS6o4tX.js"),s=require("./context-D-ZJYjUg.js"),i=require("./events-context-Di6--rDg.js"),n=require("./internal-context-BJv4f_bO.js"),a=require("./get-is-unified-wallet-UpdjHxOV.js"),r=require("./PrivyPluginContext-DsgaS6n9.js"),o=require("@solana/kit"),l=require("./useSolanaRpcClient-PnNtmWdo.js"),c=require("./useWallets-DeTGSqF_.js"),u=require("@scure/base"),d=require("@solana-program/memo"),h=require("./use-export-wallet-Dt1qheK5.js"),p=require("./use-export-wallet-B5ujV5Nk.js"),g=require("@wallet-standard/app"),v=require("@walletconnect/universal-provider"),f=require("react-device-detect");require("@privy-io/js-sdk-core"),require("./useWallets-CKAypPZB.js"),require("react/jsx-runtime"),require("tinycolor2"),require("ofetch"),require("@privy-io/are-addresses-equal"),require("eventemitter3"),require("./use-sign-with-user-signer-Cu_6Bx7m.js"),require("viem/utils");function y(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var b=0;function w(e){return"__private_"+b+++"_"+e}var m=/*#__PURE__*/w("_address"),P=/*#__PURE__*/w("_publicKey"),_=/*#__PURE__*/w("_chains"),T=/*#__PURE__*/w("_features"),S=/*#__PURE__*/w("_label"),j=/*#__PURE__*/w("_icon");class O{get address(){return y(this,m)[m]}get publicKey(){return y(this,P)[P].slice()}get chains(){return y(this,_)[_].slice()}get features(){return y(this,T)[T].slice()}get label(){return y(this,S)[S]}get icon(){return y(this,j)[j]}constructor({address:e,publicKey:t,label:s,icon:i}){Object.defineProperty(this,m,{writable:!0,value:void 0}),Object.defineProperty(this,P,{writable:!0,value:void 0}),Object.defineProperty(this,_,{writable:!0,value:void 0}),Object.defineProperty(this,T,{writable:!0,value:void 0}),Object.defineProperty(this,S,{writable:!0,value:void 0}),Object.defineProperty(this,j,{writable:!0,value:void 0}),y(this,m)[m]=e,y(this,P)[P]=t,y(this,_)[_]=c.SOLANA_CHAINS,y(this,T)[T]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],y(this,S)[S]=s,y(this,j)[j]=i}}function A(e){if("string"==typeof e)return u.base58.decode(e);if(e instanceof Uint8Array)return e;let t=e.signature;return"string"==typeof t?u.base58.decode(t):t}function W(e){if("string"==typeof e){try{return u.base58.decode(e)}catch{}return u.base64.decode(e)}if(e instanceof Uint8Array)return e;let t=e.transaction??e.signature;if(!t)throw Error("Invalid result from signTransaction or signAndSendTransaction attempt");if("string"==typeof t){try{return u.base58.decode(t)}catch{}return u.base64.decode(t)}return t}function C(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var q=0;function E(e){return"__private_"+q+++"_"+e}let M="solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",x="solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1";var k=/*#__PURE__*/E("_listeners"),U=/*#__PURE__*/E("_version"),I=/*#__PURE__*/E("_name"),N=/*#__PURE__*/E("_icon"),F=/*#__PURE__*/E("_provider"),L=/*#__PURE__*/E("_accounts"),R=/*#__PURE__*/E("_privyAppName"),D=/*#__PURE__*/E("_walletConnectCloudProjectId"),K=/*#__PURE__*/E("_walletEntry"),B=/*#__PURE__*/E("_onDisplayUriCallback"),V=/*#__PURE__*/E("_providerEventListeners"),G=/*#__PURE__*/E("_on"),z=/*#__PURE__*/E("_emit"),J=/*#__PURE__*/E("_off"),H=/*#__PURE__*/E("_connected"),Y=/*#__PURE__*/E("_disconnected"),Z=/*#__PURE__*/E("_connect"),$=/*#__PURE__*/E("_disconnect"),Q=/*#__PURE__*/E("_signMessage"),X=/*#__PURE__*/E("_signAndSendTransaction"),ee=/*#__PURE__*/E("_signTransaction"),te=/*#__PURE__*/E("_getOrCreateProvider"),se=/*#__PURE__*/E("_getOrCreateSession"),ie=/*#__PURE__*/E("_restoreSession"),ne=/*#__PURE__*/E("_addProviderEventListener"),ae=/*#__PURE__*/E("_destroySession"),re=/*#__PURE__*/E("_makeRpcRequest"),oe=/*#__PURE__*/E("_onDisplayUri"),le=/*#__PURE__*/E("_onSessionDelete");class ce{get version(){return C(this,U)[U]}get name(){return C(this,I)[I]}get icon(){return C(this,N)[N]}get chains(){return c.SOLANA_CHAINS.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:C(this,Z)[Z]},"standard:disconnect":{version:"1.0.0",disconnect:C(this,$)[$]},"standard:events":{version:"1.0.0",on:C(this,G)[G]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:C(this,X)[X]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:C(this,ee)[ee]},"solana:signMessage":{version:"1.0.0",signMessage:C(this,Q)[Q]}}}get accounts(){return C(this,L)[L].slice()}get isWalletConnectSolana(){return!0}async initialize({walletConnectCloudProjectId:e,privyAppName:t}){C(this,D)[D]=e,C(this,R)[R]=t,await C(this,te)[te](),await C(this,ie)[ie]()}setWalletEntry(e,t){C(this,K)[K]=e,C(this,B)[B]=t}constructor(){Object.defineProperty(this,z,{value:ue}),Object.defineProperty(this,J,{value:de}),Object.defineProperty(this,k,{writable:!0,value:void 0}),Object.defineProperty(this,U,{writable:!0,value:void 0}),Object.defineProperty(this,I,{writable:!0,value:void 0}),Object.defineProperty(this,N,{writable:!0,value:void 0}),Object.defineProperty(this,F,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),Object.defineProperty(this,R,{writable:!0,value:void 0}),Object.defineProperty(this,D,{writable:!0,value:void 0}),Object.defineProperty(this,K,{writable:!0,value:void 0}),Object.defineProperty(this,B,{writable:!0,value:void 0}),Object.defineProperty(this,V,{writable:!0,value:void 0}),Object.defineProperty(this,G,{writable:!0,value:void 0}),Object.defineProperty(this,H,{writable:!0,value:void 0}),Object.defineProperty(this,Y,{writable:!0,value:void 0}),Object.defineProperty(this,Z,{writable:!0,value:void 0}),Object.defineProperty(this,$,{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,ee,{writable:!0,value:void 0}),Object.defineProperty(this,te,{writable:!0,value:void 0}),Object.defineProperty(this,se,{writable:!0,value:void 0}),Object.defineProperty(this,ie,{writable:!0,value:void 0}),Object.defineProperty(this,ne,{writable:!0,value:void 0}),Object.defineProperty(this,ae,{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,le,{writable:!0,value:void 0}),C(this,k)[k]={},C(this,U)[U]="1.0.0",C(this,I)[I]="WalletConnect",C(this,N)[N]=p.WALLET_CONNECT_LOGO_DATA_URI,C(this,F)[F]=null,C(this,L)[L]=[],C(this,R)[R]="",C(this,D)[D]="",C(this,V)[V]=new Map,C(this,G)[G]=(e,t)=>(C(this,k)[k][e]?.push(t)||(C(this,k)[k][e]=[t]),()=>C(this,J)[J](e,t)),C(this,H)[H]=e=>{C(this,I)[I]=C(this,F)[F]?.session?.peer?.metadata?.name||C(this,K)[K]?.name||"WalletConnect",C(this,N)[N]=C(this,F)[F]?.session?.peer?.metadata?.icons?.[0]||C(this,K)[K]?.image_url?.sm||C(this,N)[N],C(this,L)[L]=e.map((e=>new O({address:e,publicKey:u.base58.decode(e),label:C(this,I)[I],icon:C(this,N)[N]}))),C(this,z)[z]("change",{accounts:this.accounts})},C(this,Y)[Y]=()=>{C(this,L)[L]=[],C(this,z)[z]("change",{accounts:this.accounts})},C(this,Z)[Z]=async()=>(this.accounts.length||await C(this,se)[se](),{accounts:this.accounts}),C(this,$)[$]=async()=>{await C(this,ae)[ae](),C(this,z)[z]("change",{accounts:this.accounts})},C(this,Q)[Q]=async(...e)=>{let t=[];for(let{account:s,message:i}of e){let e=u.base58.encode(i);try{let n=await C(this,re)[re]("solana_signMessage",{message:e,pubkey:s.address},pe("solana:mainnet"));t.push({signedMessage:i,signature:A(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await C(this,re)[re]("solana:signMessage",{message:e,pubkey:s.address},pe("solana:mainnet"));t.push({signedMessage:i,signature:A(n)})}throw n}}return t},C(this,X)[X]=async(...e)=>{let t=[];for(let{account:s,chain:i,transaction:n,options:a}of e){let e=u.base64.encode(n);try{let n=await C(this,re)[re]("solana_signAndSendTransaction",{transaction:e,pubkey:s.address,sendOptions:a},pe(i));t.push({signature:A(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await C(this,re)[re]("solana:signAndSendTransaction",{transaction:e,pubkey:s.address,sendOptions:a},pe(i));t.push({signature:A(n)})}}}return t},C(this,ee)[ee]=async(...e)=>{let t=[];for(let{account:s,chain:i,transaction:n}of e){let e=u.base64.encode(n);try{let n=await C(this,re)[re]("solana_signTransaction",{transaction:e,pubkey:s.address},pe(i||"solana:mainnet"));t.push({signedTransaction:W(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await C(this,re)[re]("solana:signTransaction",{transaction:e,pubkey:s.address},pe(i||"solana:mainnet"));t.push({signedTransaction:W(n)})}}}return t},C(this,te)[te]=async()=>{if(C(this,F)[F])return C(this,F)[F];if(!C(this,D)[D])throw Error("WalletConnect Cloud Project ID is required");return C(this,F)[F]=await v.UniversalProvider.init({projectId:C(this,D)[D],metadata:{name:C(this,R)[R],description:C(this,R)[R],url:window.location.origin,icons:[]},relayUrl:"wss://relay.walletconnect.com",telemetryEnabled:!1}),C(this,ne)[ne]("display_uri",C(this,oe)[oe]),C(this,ne)[ne]("session_delete",C(this,le)[le]),C(this,ne)[ne]("session_ping",(()=>{})),C(this,ne)[ne]("session_event",(()=>{})),C(this,ne)[ne]("session_update",(()=>{})),C(this,F)[F]},C(this,se)[se]=async()=>{if(!C(this,F)[F])throw Error("WalletConnectSolana: Failed to get or create session. Provider not initialized");if(C(this,F)[F].session)return C(this,F)[F].session;let e=await C(this,F)[F].connect({optionalNamespaces:{solana:{chains:[M,x],methods:["solana_signMessage","solana_signTransaction","solana_signAndSendTransaction"],events:[]}}});if(!e)throw Error("WalletConnectSolana: Failed to create new session");return C(this,H)[H](he(e)),e},C(this,ie)[ie]=async()=>{let e=C(this,F)[F]?.session;if(e){if(!e.namespaces?.solana)return await(C(this,F)[F]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),void(C(this,F)[F].session=void 0);C(this,H)[H](he(e))}},C(this,ne)[ne]=(e,t)=>{let s=C(this,V)[V].get(e);s&&(C(this,F)[F]?.off(e,s),C(this,V)[V].delete(e)),C(this,F)[F]?.on(e,t),C(this,V)[V].set(e,t)},C(this,ae)[ae]=async()=>{try{if(C(this,F)[F]?.session&&await(C(this,F)[F]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),C(this,F)[F]?.client){let e=C(this,F)[F].client.proposal.getAll();await Promise.allSettled(e.map((e=>C(this,F)[F]?.client.proposal.delete(e.id,{code:6e3,message:"User disconnected"}))));let t=C(this,F)[F].client.pairing.getAll();await Promise.allSettled(t.map((e=>C(this,F)[F]?.client.pairing.delete(e.topic,{code:6e3,message:"User disconnected"}))))}C(this,Y)[Y]()}catch(e){console.error("WalletConnectSolana: Error destroying session",e)}},C(this,re)[re]=async(e,t,s)=>{try{return await C(this,F)[F].request({method:e,params:t},s)}catch(t){if(console.error(`WalletConnectSolana: RPC Error - ${e}:`,t),t?.message?.includes("without any listeners")&&t.result)return t.result;if(t?.message?.includes("session topic does not exist in keychain"))throw Error("WalletConnectSolana: Wallet connection lost. Please reconnect.");throw t}},C(this,oe)[oe]=e=>{if(f.isMobile&&C(this,K)[K]){let{redirect:s}=t.buildTargetUrl(e,C(this,K)[K]);null==C(this,B)[B]||C(this,B)[B].call(this,{native:s,universal:s})}else null==C(this,B)[B]||C(this,B)[B].call(this,{native:e,universal:void 0})},C(this,le)[le]=()=>{C(this,Y)[Y]()}}}function ue(e,...t){C(this,k)[k][e]?.forEach((e=>e.apply(null,t)))}function de(e,t){C(this,k)[k][e]=C(this,k)[k][e]?.filter((e=>t!==e))}function he(e){return e.namespaces.solana.accounts.reduce(((e,t)=>{let s=t.split(":").at(-1);return e.includes(s)||e.push(s),e}),[])}function pe(e){switch(e){case"solana:mainnet":return M;case"solana:devnet":return x;default:return e}}var ge={id:t.SOLANA_FUNDING_PLUGIN_ID,getSolanaRpcClient:l.getSolanaRpcClient,createTransactionFromRelayQuote:async function({solanaClient:e,quote:t,source:s}){let i=t.steps[0]?.items?.[0];if(!i)throw Error("Invalid quote");let n=i.data.instructions.map((({keys:e,programId:t,data:s})=>({accounts:e.map((({pubkey:e,isSigner:t,isWritable:s})=>({address:e,role:t&&s?3:t&&!s?2:!t&&s?1:0}))),programAddress:t,data:new Uint8Array(Buffer.from(s,"hex"))}))),{value:a}=await e.rpc.getLatestBlockhash().send(),r=o.pipe(o.createTransactionMessage({version:0}),(e=>o.setTransactionMessageFeePayerSigner({address:s},e)),(e=>o.setTransactionMessageLifetimeUsingBlockhash(a,e)),(e=>o.appendTransactionMessageInstructions(n,e)),(e=>o.compileTransaction(e)));return new Uint8Array(o.getTransactionEncoder().encode(r))},simulateTransaction:l.simulateTransaction,getAddressFromBuffer:c.getAddressFromBuffer,fetchTransactionEstimatedFees:l.fetchTransactionEstimatedFees};var ve={id:t.SOLANA_LEDGER_PLUGIN_ID,createSiwsMemoTransaction:({address:e,nonce:s})=>{let i=d.getAddMemoInstruction({memo:t.prepareSiwsMessageWithNonce({address:o.address(e),nonce:s})});return o.pipe(o.createTransactionMessage({version:"legacy"}),(t=>o.setTransactionMessageFeePayer(o.address(e),t)),(e=>o.setTransactionMessageLifetimeUsingBlockhash({blockhash:o.blockhash("GfVcyD5fWFJ6hRm8bsy7CoVPsLSoJhtJKRJYk8T2VVFN"),lastValidBlockHeight:0n},e)),(e=>o.appendTransactionMessageInstructions([i],e)),(e=>o.compileTransaction(e)),(e=>u.base64.encode(Uint8Array.from(o.getTransactionEncoder().encode(e)))))},getSignatureFromTransaction:(e,t)=>{let s=o.getTransactionDecoder().decode(e).signatures[t];if(!s)throw Error(`Missing transaction signature for address: ${t}`);return u.base64.encode(s)}};exports.useStandardWallets=c.useSolanaStandardWallets,exports.useWallets=c.useWallets,exports.useExportWallet=h.useExportWallet,exports.useFundWallet=h.useFundWallet,exports.SolanaAdapterConnector=p.SolanaWalletConnector,exports.toSolanaWalletConnectors=e=>{let t,{get:s,on:i}=g.getWallets(),n=e?.shouldAutoConnect??!0,a=new p.SolanaWalletConnector(new ce,n),r=new Map,o=[];function l(...e){e.forEach((e=>{!(e.features["privy:"]&&"isPrivyWallet"in e&&e.isPrivyWallet||r.has(e.name))&&e.chains.some((e=>"string"==typeof e&&e.startsWith("solana:")))&&r.set(e.name,e)})),o=Array.from(r.values()).map((e=>new p.SolanaWalletConnector(e,n))).concat(a),t?.(o)}function c(...e){Array.from(r.values()).forEach((t=>!e.includes(t)&&r.delete(t.name))),o=Array.from(r.values()).map((e=>new p.SolanaWalletConnector(e,n))).concat(a),t?.(o)}let u=[i("register",l),i("unregister",c)];return l(...s()),{_setOnConnectorsUpdated:e=>{t=e},onMount:()=>{u[0]||(u[0]=i("register",l)),u[1]||(u[1]=i("unregister",c))},onUnmount:()=>{let e=u.pop();for(;e;)e(),e=u.pop()},get:()=>o}},exports.useCreateWallet=function(){let{create:e}=t.useCreateWalletInternal();return{createWallet:async t=>{t&&"target"in t&&t&&(t=void 0);let{account:s}=await e({chainType:"solana",options:t});return{wallet:s}}}},exports.useImportWallet=()=>{let{user:r}=a.usePrivyContext(),{client:o,refreshSessionAndUser:l,initializeWalletProxy:c}=n.usePrivyInternal(),u=i.useEmitPrivyEvent(),d=s.useAppConfig();return{importWallet:e.useCallback((({privateKey:e,additionalSigners:s})=>t.importWallet({getAccessToken:()=>o.getAccessToken(),user:r,initializeWalletProxy:c,refreshSessionAndUser:l,emitPrivyEvent:u,appConfig:d},{privateKey:e,chainType:"solana",additionalSigners:s})),[r,o,l,c,u,d])}},exports.useSignAndSendTransaction=function(){return{signAndSendTransaction:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signAndSendTransaction({...s,chain:s.chain||"solana:mainnet"}));return 1===e.length?t[0]:[...t]}}},exports.useSignMessage=function(){return{signMessage:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signMessage({...s,options:s.options}));return 1===e.length?t[0]:[...t]}}},exports.useSignTransaction=function(){return{signTransaction:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signTransaction({...s,chain:s.chain||"solana:mainnet"}));return 1===e.length?t[0]:[...t]}}},exports.useSolanaFundingPlugin=()=>r.useRegisterPlugin(ge),exports.useSolanaLedgerPlugin=()=>r.useRegisterPlugin(ve);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var t=require("styled-components"),e=require("./ModalHeader-
|
|
1
|
+
"use strict";var t=require("styled-components"),e=require("./ModalHeader-BCPQgekO.js"),n=require("./LinkPasskeyScreen-CjdxFDoA.js");const o=t.styled.div`
|
|
2
2
|
display: flex;
|
|
3
3
|
flex-direction: column;
|
|
4
4
|
gap: 12px;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),n=require("@heroicons/react/24/outline/FingerPrintIcon"),t=require("@heroicons/react/24/outline/PhoneIcon"),i=require("@heroicons/react/24/outline/ShieldCheckIcon"),o=require("./ModalHeader-
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),n=require("@heroicons/react/24/outline/FingerPrintIcon"),t=require("@heroicons/react/24/outline/PhoneIcon"),i=require("@heroicons/react/24/outline/ShieldCheckIcon"),o=require("./ModalHeader-BCPQgekO.js"),s=require("./ScreenLayout-CMb-Fua0.js"),a=require("./useActiveWallet-Cn6zOXx5.js"),c=require("./PinInput-B12fA7pp.js"),l=require("@heroicons/react/24/outline/CalendarIcon"),d=require("@heroicons/react/24/outline/ExclamationTriangleIcon"),u=require("./StackedContainer-CM36po_U.js"),h=require("./internal-context-BJv4f_bO.js"),x=require("react"),j=require("styled-components"),m=require("viem"),p=require("./useGetTokenPrice-761HAiva.js"),g=require("./useWallets-CKAypPZB.js"),y=require("./index-C8lpxYDX.js"),f=require("./getPublicClient-BsmZyCGX.js"),C=require("./TransactionDetails-BY2Ynu2J.js"),I=require("./context-D-ZJYjUg.js");function k(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var T=/*#__PURE__*/k(r),M=/*#__PURE__*/k(n),S=/*#__PURE__*/k(t),P=/*#__PURE__*/k(i),q=/*#__PURE__*/k(l),v=/*#__PURE__*/k(d);const B=({pendingTransaction:r})=>{let{wallets:n}=g.useWallets(),{walletProxy:t,rpcConfig:i,chains:o,appId:s,nativeTokenSymbolForChainId:a}=h.usePrivyInternal(),[c,l]=x.useState(null),[d,u]=x.useState(r),{tokenPrice:j}=p.useGetTokenPrice(d.chainId),I=a(r.chainId)||"ETH",k=x.useMemo((()=>n.find((e=>"privy"===e.walletClientType))),[n]);return x.useEffect((()=>{(async function(){if(!t||!k)return d;let e=f.getPublicClient(d.chainId,o,i,{appId:s}),r=await y.prepareTransactionRequest(d,e,k.address);return l(m.toHex(BigInt(r.gas??0))),r})().then(u).catch(console.error)}),[t]),k?/*#__PURE__*/e.jsx(b,{children:/*#__PURE__*/e.jsx(C.TransactionDetails,{from:k.address,to:d.to,txn:d,gas:c??void 0,tokenPrice:j,tokenSymbol:I})}):null};let b=j.styled.div`
|
|
2
2
|
width: 100%;
|
|
3
3
|
padding: 1rem 0;
|
|
4
4
|
`;exports.VerifyMethodSelectionScreen=({handleClose:r,mfaMethods:n,onSelect:t})=>/*#__PURE__*/e.jsxs(s.ScreenLayout,{title:"Verify your identity",subtitle:"Choose a verification method",icon:P.default,iconVariant:"subtle",onClose:r,showClose:!0,watermark:!0,children:[/*#__PURE__*/e.jsxs(c.MethodList,{children:[n.includes("totp")&&/*#__PURE__*/e.jsxs(a.LoginMethodButton,{onClick:()=>t("totp"),children:[/*#__PURE__*/e.jsx(a.LoginMethodIconWrapper,{children:/*#__PURE__*/e.jsx(T.default,{})}),"Authenticator app"]},"totp"),n.includes("sms")&&/*#__PURE__*/e.jsxs(a.LoginMethodButton,{onClick:()=>t("sms"),children:[/*#__PURE__*/e.jsx(a.LoginMethodIconWrapper,{children:/*#__PURE__*/e.jsx(S.default,{})}),"SMS"]},"sms"),n.includes("passkey")&&/*#__PURE__*/e.jsxs(a.LoginMethodButton,{onClick:()=>t("passkey"),children:[/*#__PURE__*/e.jsx(a.LoginMethodIconWrapper,{children:/*#__PURE__*/e.jsx(M.default,{})}),"Passkey"]},"passkey")]}),/*#__PURE__*/e.jsx(o.ModalFooter,{})]}),exports.VerifyWithPasskey=({hasBlockingError:r,error:n,onClose:t,onBack:i,handleSubmit:s,account:l,submitSuccess:d})=>{let{pendingTransaction:x}=h.usePrivyInternal();/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(o.ModalHeader,{onClose:t},"header"),/*#__PURE__*/e.jsx(u.e,{children:/*#__PURE__*/e.jsxs("div",{children:[/*#__PURE__*/e.jsx(a.ConnectionLoader,{success:d,fail:!!n}),n?/*#__PURE__*/e.jsx(v.default,{style:{width:"38px",height:"38px"}}):/*#__PURE__*/e.jsx(c.FaceId,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/e.jsx(c.Title,{style:{marginTop:"1rem"},children:"Verifying with passkey"}),/*#__PURE__*/e.jsxs(c.List,{children:[/*#__PURE__*/e.jsxs(c.ListItem,{children:[/*#__PURE__*/e.jsx(c.ListItemIcon,{children:/*#__PURE__*/e.jsx(P.default,{})}),"Approve this action using your touch, face, PIN, or hardware key."]}),/*#__PURE__*/e.jsxs(c.ListItem,{children:[/*#__PURE__*/e.jsx(c.ListItemIcon,{children:/*#__PURE__*/e.jsx(q.default,{})}),"You last added a passkey on"," ",l?.firstVerifiedAt?.toLocaleDateString(void 0,{month:"short",day:"numeric",year:"numeric"}),"."]})]}),x&&/*#__PURE__*/e.jsx(c.Container,{children:/*#__PURE__*/e.jsx(B,{pendingTransaction:x})}),n&&/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(c.ErrorMessage,{style:{marginTop:"1.25rem"},children:n.message}),/*#__PURE__*/e.jsx(o.PrimaryButton,{disabled:r,onClick:s,style:{margin:"1.25rem auto 0"},children:"Try again"})]}),i&&/*#__PURE__*/e.jsx(c.PrimaryTextButton,{style:{marginTop:"1rem"},onClick:i,children:"Choose another method"}),/*#__PURE__*/e.jsx(o.ModalFooter,{})]})},exports.VerifyWithSmsOrTotpCode=({selectedMethod:r,submitSuccess:n,hasBlockingError:t,onClose:i,onBack:s,handleSubmitCode:a})=>{let l=I.useAppConfig(),{pendingTransaction:d}=h.usePrivyInternal();switch(r){case"sms":/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(o.ModalHeader,{onClose:i},"header"),/*#__PURE__*/e.jsx(c.IconWrapper,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/e.jsx(S.default,{})}),/*#__PURE__*/e.jsx(c.Title,{children:"Enter verification code"}),/*#__PURE__*/e.jsxs(c.Container,{children:[/*#__PURE__*/e.jsx(c.NumericPinInput,{success:n,disabled:t,onChange:a}),/*#__PURE__*/e.jsxs(c.SubTitle,{children:["To continue, please enter the 6-digit code sent to your ",/*#__PURE__*/e.jsx("strong",{children:"mobile device"})]}),d&&/*#__PURE__*/e.jsx(B,{pendingTransaction:d})]}),s&&/*#__PURE__*/e.jsx(c.PrimaryTextButton,{theme:l?.appearance.palette.colorScheme,onClick:s,children:"Choose another method"}),/*#__PURE__*/e.jsx(o.SecondaryButton,{onClick:i,children:"Cancel"}),/*#__PURE__*/e.jsx(o.ModalFooter,{})]});case"totp":/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(o.ModalHeader,{onClose:i},"header"),/*#__PURE__*/e.jsx(c.IconWrapper,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/e.jsx(T.default,{})}),/*#__PURE__*/e.jsx(c.Title,{children:"Enter verification code"}),/*#__PURE__*/e.jsxs(c.Container,{children:[/*#__PURE__*/e.jsx(c.NumericPinInput,{success:n,disabled:t,onChange:a}),/*#__PURE__*/e.jsxs(c.SubTitle,{children:["To continue, please enter the 6-digit code generated from your"," ",/*#__PURE__*/e.jsx("strong",{children:"authenticator app"})]}),d&&/*#__PURE__*/e.jsx(B,{pendingTransaction:d})]}),s&&/*#__PURE__*/e.jsx(c.PrimaryTextButton,{theme:l?.appearance.palette.colorScheme,onClick:s,children:"Choose another method"}),/*#__PURE__*/e.jsx(o.SecondaryButton,{onClick:i,children:"Cancel"}),/*#__PURE__*/e.jsx(o.ModalFooter,{})]});default:return null}},exports.toUIError=e=>y.errorIndicatesMaxMfaRetries(e)?{isBlocking:!0,error:Error("You have exceeded the maximum number of attempts. Please close this window and try again in 10 seconds.")}:y.errorIndicatesMfaVerificationFailed(e)?{isBlocking:!1,error:Error("The code you entered is not valid")}:y.errorIndicatesMfaTimeout(e)?{isBlocking:!0,error:Error("You have exceeded the time limit for code entry. Please try again in 30 seconds.")}:(console.error(e),{isBlocking:!1,error:Error("Something went wrong.")});
|
package/dist/cjs/ui.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),t=require("./useActiveWallet-
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),t=require("./useActiveWallet-Cn6zOXx5.js"),s=require("./get-is-unified-wallet-UpdjHxOV.js"),r=require("./useWallets-CKAypPZB.js"),i=require("styled-components"),n=require("./CopyableText-DbFeIZI0.js"),l=require("./context-D-ZJYjUg.js"),a=require("./WalletCards-BfpeHH5n.js"),o=require("./twitch-BNvhZb2Y.js"),d=require("./ModalHeader-BCPQgekO.js"),c=require("react"),h=require("@floating-ui/react"),p=require("@heroicons/react/24/outline/UserIcon"),u=require("./WalletInfoCard-CHdyZdLe.js"),x=require("./internal-context-BJv4f_bO.js"),C=require("./useWalletBalance-DI8AY31i.js"),g=require("./ethers-SCb3aakT.js"),w=require("@heroicons/react/24/outline/EllipsisHorizontalIcon"),f=require("@heroicons/react/24/outline/PlusCircleIcon"),j=require("./use-export-wallet-B5ujV5Nk.js"),m=require("./use-export-wallet-Dt1qheK5.js"),y=require("@headlessui/react"),v=require("./ConnectWalletView-BB2DjcE-.js"),k=require("@heroicons/react/24/outline"),b=require("./Subtitle-CR8zM7ZJ.js"),_=require("./Title-ifTy35V5.js"),M=require("@heroicons/react/24/outline/ChevronDownIcon"),z=require("./Column-D8_5wTPp.js"),A=require("./Row-CMqYn75Q.js"),L=require("./Address-CHKhHgKJ.js"),F=require("./NetworkIcon-BZ9Mj6vV.js"),H=require("./getErc20TokenInfo-DxDd_HN6.js"),I=require("./formatErc20TokenAmount-DxwoWe7e.js"),q=require("./getErc20Balance-D2jXMvJ8.js"),W=require("@heroicons/react/24/outline/CurrencyDollarIcon");function B(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function V(e){if(e&&"object"==typeof e&&"default"in e)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(s){if("default"!==s){var r=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(t,s,r.get?r:{enumerable:!0,get:function(){return e[s]}})}})),t.default=e,Object.freeze(t)}require("zustand"),require("react-device-detect"),require("./events-context-Di6--rDg.js"),require("viem"),require("viem/utils"),require("./getPublicClient-BsmZyCGX.js"),require("@privy-io/are-addresses-equal"),require("lucide-react"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("./ErrorMessage-BfTVyue9.js"),require("./LabelXs-C8rLnCfU.js"),require("./shared-DBm7PUrg.js"),require("ofetch"),require("eventemitter3"),require("@tanstack/react-virtual"),require("./Link-BdtTp2J4.js"),require("./QrCode-CE12LRBB.js"),require("qrcode"),require("./EmailInputForm-Y-nHsEtF.js"),require("./useI18n-DFGBJl_S.js"),require("./Screen-BfKedqka.js"),require("./index-ByFhjjzH.js"),require("@heroicons/react/24/outline/GlobeAltIcon");var P=/*#__PURE__*/V(c),S=/*#__PURE__*/B(p),Z=/*#__PURE__*/B(w),T=/*#__PURE__*/B(f),U=/*#__PURE__*/B(M),R=/*#__PURE__*/B(W);const O=i.styled.button`
|
|
2
2
|
--size: ${({$size:e})=>`${e}px`};
|
|
3
3
|
|
|
4
4
|
-webkit-font-smoothing: antialiased;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var e=require("@privy-io/js-sdk-core"),t=require("./internal-context-BJv4f_bO.js"),n=require("eventemitter3"),r=require("./context-D-ZJYjUg.js"),i=require("react/jsx-runtime"),a=require("react"),o=require("viem/utils"),s=require("./get-is-unified-wallet-UpdjHxOV.js"),l=require("./useWallets-CKAypPZB.js");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=/*#__PURE__*/d(n);class u extends t.PrivyConnectorError{constructor(){super("Wallet timeout"),this.type="wallet_error"}}const h=e=>e instanceof t.PrivyConnectorError?e:e?.code?new C(e):new t.PrivyConnectorError("Unknown connector error",e);class p extends t.PrivyError{constructor(e,t,n){super(e),this.type="provider_error",this.code=t,this.data=n}}class C extends p{constructor(t){super(t.message,t.code,t.data);let n=Object.values(e.ProviderErrors).find((e=>e.eipCode===t.code));this.details=n||e.ProviderErrors.UNKNOWN_ERROR,-32002===t.code&&(t.message?.includes("already pending for origin")?t.message?.includes("wallet_requestPermissions")?this.details=e.ProviderErrors.E32002_CONNECTION_ALREADY_PENDING:this.details=e.ProviderErrors.E32002_REQUEST_ALREADY_PENDING:t.message?.includes("Already processing")&&t.message.includes("eth_requestAccounts")&&(this.details=e.ProviderErrors.E32002_WALLET_LOCKED))}}const f={ERROR_USER_EXISTS:{message:"User already exists for this address",detail:"Try another address!",retryable:!1},ERROR_TIMED_OUT:{message:"Wallet request timed out",detail:"Please try connecting again.",retryable:!0},ERROR_WALLET_CONNECTION:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0},ERROR_USER_LIMIT_REACHED:{message:"Unable to link",detail:"You've reached the maximum number of linked wallets.",retryable:!1},...e.ProviderErrors};class A{get(e){let t=localStorage.getItem(e);return null===t?void 0:JSON.parse(t)}put(e,t){void 0!==t?localStorage.setItem(e,JSON.stringify(t)):this.del(e)}del(e){localStorage.removeItem(e)}getKeys(){return Object.entries(localStorage).map((([e])=>e))}}var m="undefined"!=typeof window&&window.localStorage?new A:new class{get(e){return this._cache[e]}put(e,t){void 0!==t?this._cache[e]=t:this.del(e)}del(e){delete this._cache[e]}getKeys(){return Object.keys(this._cache)}constructor(){this._cache={}}};class g extends c.default{constructor(e){super(),this.walletClientType=e,this.connected=!1,this.initialized=!1}}const w=()=>{let e=m.get(r.CONNECTIONS_HISTORY_KEY);return e&&Array.isArray(e)&&e.map((e=>(e=>e&&"string"==typeof e.address&&"string"==typeof e.connectorType&&"string"==typeof e.walletClientType&&"number"==typeof e.connectedAt)(e))).every(Boolean)?e:[]};let y=["phantom","glow","solflare","backpack","okx_wallet","walletconnect","mobile_wallet_adapter","jupiter"];function E(e){return e.toLowerCase().split(" ").join("_")}function x(e){return"isWalletConnectSolana"in e&&e.isWalletConnectSolana}function b(e){return["ethereum","solana"].includes(e.chainType)}function v(e){let t=e.replace("eip155:","");if(t)return parseInt(t);throw Error("Chain ID not compatible with CAIP-2 format.")}const D=e=>e.filter((e=>"wallets"===e.method||("exchange"===e.method?"coinbase"===e.provider:"card"===e.method||"payment-request"===e.method?"coinbase"===e.provider||"moonpay"===e.provider:(e.method,!1)))),S={[e.mainnet.id]:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",[e.sepolia.id]:"0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238",[e.optimism.id]:"0x0b2c639c533813f4aa9d7837caf62653d097ff85",[e.optimismSepolia.id]:"0x5fd84259d66Cd46123540766Be93DFE6D43130D7",[e.polygon.id]:"0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",[e.polygonAmoy.id]:"0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582",[e.base.id]:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",[e.baseSepolia.id]:"0x036CbD53842c5426634e7929541eC2318f3dCF7e",[e.avalanche.id]:"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E",[e.avalancheFuji.id]:"0x5425890298aed601595a70ab815c96711a31bc65",[e.arbitrum.id]:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",[e.arbitrumSepolia.id]:"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d",[e.hyperEVMMainnet.id]:"0xb88339CB7199b77E23DB6E890353E22632Ba630f",[e.monadMainnet.id]:"0x754704Bc059F8C67012fEd69BC8A327a5aafb603"};exports.ConnectorErrors=f,exports.PrivyProviderRpcError=C,exports.ProviderRpcError=p,exports.SolanaWalletConnector=class extends g{get isInstalled(){return!0}get wallet(){return this._wallet}buildConnectedWallet(){return this._wallet.accounts.map((t=>({type:"solana",provider:new e.ConnectedStandardSolanaWallet({wallet:this._wallet,account:t}),address:t.address,connectedAt:Date.now(),walletClientType:this._wallet.name,connectorType:this.connectorType,imported:!1,meta:{name:this._wallet.name,id:this._wallet.name,icon:this._wallet.icon},isConnected:async()=>this._wallet.accounts.length>0,disconnect:async()=>{await this.disconnect()}})))}async syncAccounts(){this.wallets=this.buildConnectedWallet(),this.emit("walletsUpdated")}get walletBranding(){return{id:x(this.wallet)?"walletconnect_solana":this.wallet.name,name:this.wallet.name,icon:this.wallet.icon}}async initialize(){this.subscribeListeners(),await this.syncAccounts(),this.shouldAttemptAutoConnect()&&(await(this.wallet.features["standard:connect"]?.connect({silent:!0}).catch((()=>{}))),await this.isConnected()&&await this.syncAccounts()),this.initialized=!0,this.emit("initialized")}async connect(e){if(e.showPrompt)try{await this.promptConnection()}catch(e){if(0===this._wallet.accounts.length)throw new t.PrivyNoSolanaAccountsError;throw e}if(!await this.isConnected())throw new t.PrivyNoSolanaAccountsError;return await this.syncAccounts(),this.getConnectedWallet()}async getConnectedWallet(){return this.wallets.sort(((e,t)=>t.connectedAt-e.connectedAt))[0]||null}async isConnected(){return this._wallet.accounts.length>0}subscribeListeners(){this._unsubscribeListeners=this.wallet.features["standard:events"]?.on("change",this.onChange)}unsubscribeListeners(){this._unsubscribeListeners?.()}shouldAttemptAutoConnect(){return!(!this.autoConnectEnabled||!y.includes(this.walletClientType))&&("phantom"!==this.walletClientType&&"metamask"!==this.walletClientType.toLowerCase()||w().some((({walletClientType:e})=>"phantom"===e||"metamask"===e.toLowerCase())))}constructor(e,t){super(E(x(e)?"walletconnect_solana":e.name)),this.chainType="solana",this.connectorType="solana_adapter",this.disconnect=async()=>{await(this.wallet.features["standard:disconnect"]?.disconnect().catch((e=>console.error("Error disconnecting",e)))),await this.syncAccounts()},this.promptConnection=async()=>{try{await(this.wallet.features["standard:connect"]?.connect())}catch(e){throw h(e)}},this.onChange=()=>{this.syncAccounts()},this._wallet=e,this.autoConnectEnabled=t,this.wallets=[]}},exports.WALLET_CONNECT_LOGO_DATA_URI="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAHdElNRQfoDAIVODUC+w+GAAAGsUlEQVRYw6WXbYwWVxXHf+fOLAtCXYS2QJdIaClipGCTknXXNqBQMVHbfmhItH4Aral+IAEaG03UxJgYKQJGTUxtDWjaxDSNtcZqIGDwpRuW1oYiVqpdpZSlpC3qysu+PHPP3w/3mXnmeXZbPzjJZO7cefn/z/mfe865xlscq3dGDIguGiHLaMQVLja4s87FShcLo5jtApdddnHexUmHIy475JmdUkPRAQMu7gzT4ljnxJpdk0QPmMFkyAKN2OfOFpc2uuh1J3MZDrjAvXmVEQUuoosRxw642FcEG7IoDxiFxNiu8NYE+vcUYIFYRKKs113bXWx2Z34CoQZsVHOiCZ7mopdzdsFhv8NexEgRDHMxUSNREbh1bwNZwBsFblmfu/a4a6AEENYO5i3AOoEWeEUCF4MOOxBDMQAOk99OJALA2u80sBCwWGBZWG/yRwMaCAbBIAsQTJT3gea1OWfNeaPzvjoHEI85rA8ObtB1v7cIdJkIHgkh9AXpocy0LJjIKvB2wPpZB0v3wkrw5jdNEjeYeMhFX3BAyfn2ke9NUrgB9LrrcZcGJFCld4fWNddXbvbWfWzGR6xJFZsBGh0cBh3bBIxIEGTQ3W0h4NuDaSAzyAxCmGq11Vzf5uaa1aG8p+WFtrEYQGwvjICJkAEqvC+YNmcmMlMNvEaCdrcbyUvQAWDTjVuESHObM6cPGWHmzDwLaEtmzG9Z3qF1zUpXmuuZBb1z4bqeNC6f0WE1NtUTwHzEloiy3BvFisy0sYoLlQtT6XW15md2Qf9SY+2Ngfdca/TMSm/9ewz+/Boc/It45h/i4kSTsKw90SQJsPTvjSZbkWemDW7qTRZ0JEYJWSKxZJ7xmf6M224MzMzbX1s8F1YugjtvMg6eErt/4/z1jUrz1rXUKxnZC2zIg2mdBTK1mFUOKC1fOt/48kdzVixIz86Nij+eEacvpJWyZJ5xy7th8VzjjpuMJfMCW58QL73ekXPVlhsyE+vyzFiplJyauEIyrGIquruMq7qTxk+dcB495rzyTzFepCUWLIFv/kBg081Gd55WUk1IDGFTS89K++TDYxddzKnWcbluHd450xgdh7EGrOo1rr868PMTzqWJRGZ2d8oB/xpL33Xnxl2rjeNn4blXRXduzJ4B5y+28kWscAwXl+yeR654FFZPHoUb710YuPeDOUdPO48di1xptKpeEeHqOcYXNwQKGd88EDk3mqxtxPSfGRlsXRtYt8z4ytPOH/7eqpg1Aso7fYKgK4NPrMpYvsC4/poMA34yVJIQC3sCD9yecdsNyaV5yPj6ryJnR1PAvSNP4J+/1cgDfLbfePaMGGtM7Qdyl12WmKOmXgKKAp54vmBRTxfLrjE+tSYjBPjRM5FrrzIeuD2jf2lLzw8vN4JlfPVp581LsO1DgXv7jSzAiXPw/d+JiYLpjsu26Yfjf5O0rF5WoxsNT9G/bX0XKxakmPjlSee6HlizJJXSX7/oRDc+vjKR+f2wODcKd78/gR8/C9uedF44myJxmhh4OY/ipMQyqaWxmjn95TfEroMFOzbkvG+RceeqViPx1Aln1yEnOow1AnffHCpJAJ5/Vex4UvzptZRdY/O/1dJIS/NkcNmR6MTYah6qzseA4TfFtw4UvHBW1bc/O+7sPhwZHYf/jMODh5yfPudVbXj2TAJ/8XxrOZagNamj4Ei2/GNfuyRxh8t6BG2l15up+MIVODEiFr8rcPS0+O6RBF6mrrEGHHtFzOo2Lo7Dl37hvPQ6mNV6R9JYKgnYWcE37K5HlE2OT/5A0udaPUBHH+BQOMzuNsYLuDyZflTW+fTcmJFDHhJhaZqewMuewXDxcDR9IYyPN6Jj+6K4MF2vV8qBtZJScqVRNi6lpGONVJis5mpKi1WbgwsY+zIsBpcR8mzIZfuTRVZrtdu9odrptR/Xx5XONXJqBmCN0P6YMUQq9WJiwt0Je102WHdbpxSqydMObBWYdwDWLVcqcIMYe3NPjg0Ht84od0Ajju1w2XCr9e6QoqM9V23ZtnmI6cfAMMb9AY0YEHdb6oobEh4y3H3Ize6LsmGvN5IdUnhttdQ9UVrfLk/ljWEZ9wXsqAdQk1EA+O22GcgdZTke/bAs3OPY4HSdcB20HhvVtTMu0jmI8ekAhz2IICj2hKpNqI60NcuIRUHEej1quzubXa2tmZhenrfZmv3YYQ9ipDAIgvHptmblccuDjdRcmjFpWbDi/9ycZjZkRbk5jYztai/AUwiUx+qdEQB/m+25i9lxyvbcjrg45Lmd0uT/3p7/Fw6ODf+WO019AAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDI0LTEyLTAyVDIxOjU2OjQ4KzAwOjAwMVpslgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyNC0xMi0wMlQyMTo1Njo0OCswMDowMEAH1CoAAAAodEVYdGRhdGU6dGltZXN0YW1wADIwMjQtMTItMDJUMjE6NTY6NTMrMDA6MDDZv6GRAAAAAElFTkSuQmCC",exports.WalletConnect=({style:e,...t})=>{let n=r.useAppConfig();/*#__PURE__*/return i.jsxs("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[/*#__PURE__*/i.jsx("rect",{width:"28",height:"28",rx:"3",fill:"dark"===n?.appearance.palette.colorScheme?"#3396ff":"#141414"}),/*#__PURE__*/i.jsx("g",{clipPath:"url(#clip0_1765_9946)",children:/*#__PURE__*/i.jsx("path",{d:"M8.09448 10.3941C11.3558 7.20196 16.6442 7.20196 19.9055 10.3941L20.2982 10.7782C20.3369 10.8157 20.3677 10.8606 20.3887 10.9102C20.4097 10.9599 20.4206 11.0132 20.4206 11.0671C20.4206 11.121 20.4097 11.1744 20.3887 11.224C20.3677 11.2737 20.3369 11.3186 20.2982 11.3561L18.9554 12.6702C18.9158 12.7086 18.8628 12.7301 18.8077 12.7301C18.7526 12.7301 18.6996 12.7086 18.66 12.6702L18.1198 12.1415C15.8448 9.91503 12.1557 9.91503 9.88015 12.1415L9.30167 12.7075C9.26207 12.7459 9.20909 12.7673 9.15395 12.7673C9.0988 12.7673 9.04582 12.7459 9.00622 12.7075L7.66346 11.3934C7.62475 11.3559 7.59397 11.3109 7.57295 11.2613C7.55193 11.2117 7.5411 11.1583 7.5411 11.1044C7.5411 11.0505 7.55193 10.9971 7.57295 10.9475C7.59397 10.8979 7.62475 10.8529 7.66346 10.8154L8.09448 10.3941ZM22.6829 13.1115L23.8776 14.2814C23.9163 14.319 23.9471 14.3639 23.9681 14.4135C23.9892 14.4632 24 14.5165 24 14.5704C24 14.6243 23.9892 14.6777 23.9681 14.7273C23.9471 14.777 23.9163 14.8219 23.8776 14.8594L18.4893 20.1332C18.4102 20.2101 18.3042 20.2531 18.1938 20.2531C18.0835 20.2531 17.9775 20.2101 17.8984 20.1332L14.0743 16.3901C14.0545 16.3708 14.0279 16.36 14.0003 16.36C13.9726 16.36 13.9461 16.3708 13.9263 16.3901L10.1021 20.1332C10.023 20.2101 9.91703 20.2531 9.8067 20.2531C9.69636 20.2531 9.59038 20.2101 9.51124 20.1332L4.12236 14.8594C4.08365 14.8219 4.05287 14.777 4.03185 14.7273C4.01083 14.6777 4 14.6243 4 14.5704C4 14.5165 4.01083 14.4632 4.03185 14.4135C4.05287 14.3639 4.08365 14.319 4.12236 14.2814L5.31767 13.1115C5.39678 13.0348 5.50265 12.9919 5.61285 12.9919C5.72305 12.9919 5.82892 13.0348 5.90803 13.1115L9.73216 16.8546C9.75194 16.874 9.7785 16.8848 9.80616 16.8848C9.83381 16.8848 9.86037 16.874 9.88015 16.8546L13.7043 13.1115C13.7834 13.0346 13.8894 12.9916 13.9997 12.9916C14.1101 12.9916 14.216 13.0346 14.2952 13.1115L18.1198 16.8546C18.1396 16.874 18.1662 16.8848 18.1938 16.8848C18.2215 16.8848 18.2481 16.874 18.2678 16.8546L22.092 13.1115C22.1711 13.0346 22.2771 12.9916 22.3874 12.9916C22.4977 12.9916 22.6037 13.0346 22.6829 13.1115Z",fill:"white"})}),/*#__PURE__*/i.jsx("defs",{children:/*#__PURE__*/i.jsx("clipPath",{id:"clip0_1765_9946",children:/*#__PURE__*/i.jsx("rect",{width:"20",height:"12.2531",fill:"white",transform:"translate(4 8)"})})})]})},exports.WalletConnector=g,exports.WalletTimeoutError=u,exports.e=function(){try{let e="privy:__session_storage__test",t=new A;return t.put(e,"blobby"),t.del(e),!0}catch(e){return!1}},exports.extractChainIdFromCAIP2=v,exports.filterSupportedOptions=D,exports.formatConnectorError=h,exports.isFirstClassChainWallet=b,exports.loadConnectionHistory=w,exports.prepareFundingModalData=({address:e,appConfig:n,fundWalletConfig:r,methodScreen:i,chainIdOverride:a,comingFromSendTransactionScreen:o=!1,onComplete:s,onError:l})=>{let d,c;if(!n.fundingConfig)throw Error("Wallet funding is not enabled");let u=D(n.fundingConfig.options);if(u.length<1)throw Error("Wallet funding is not enabled");d=a||(r?.chain?r.chain.id:v(n.fundingConfig.defaultRecommendedCurrency.chain));let h=n.chains.find((e=>e.id===d));if(!h)throw new t.PrivyClientError(`Funding chain ${d} is not in PrivyProvider chains list`);let p=r?.amount??n.fundingConfig.defaultRecommendedAmount,C=!1;function f(){if(!d)return;let e=S[d];u.find((e=>"wallets"===e.method))&&!e&&console.warn("Attempting to fund with USDC on chain where USDC address is not known. Funding via external wallet will be disabled."),c=e,C=!0}r&&"asset"in r?"USDC"===r.asset?f():"string"!=typeof r.asset&&"erc20"in r.asset&&(C=((e,t)=>e===S[t.id])(c=r.asset.erc20,h)):"USDC"===n.fundingConfig.defaultRecommendedCurrency.asset&&f();let A=r?.defaultFundingMethod;return{chainType:"ethereum",address:e,amount:p,chain:h,erc20Address:c,erc20ContractInfo:C?{symbol:"USDC",decimals:6}:void 0,isUSDC:C,methodScreen:i,supportedOptions:u,comingFromSendTransactionScreen:o,defaultFundingMethod:A,usingDefaultFundingMethod:!!A,preferredCardProvider:r?.card?.preferredProvider,crossChainBridgingEnabled:n.fundingConfig.crossChainBridgingEnabled??!1,solanaChain:"solana:mainnet",uiConfig:r&&"uiConfig"in r?r.uiConfig:void 0,externalSolanaFundingScreen:null,onComplete:s??(()=>{}),onError:l??(()=>{})}},exports.prepareSolanaFundingModalData=function({address:e,fundWalletConfig:t,appConfig:n,comingFromSendTransactionScreen:r,externalSolanaFundingScreen:i,methodScreen:a}){if(!n.fundingConfig)throw Error("Wallet funding is not enabled");let o=D(n.fundingConfig.options);if(o.length<1)throw Error("Wallet funding is not enabled");if("USDC"===t?.asset&&"solana:testnet"===t?.chain)throw Error("USDC funding is not supported on the Solana testnet");let s=t?.amount??n.fundingConfig.defaultRecommendedAmount,l=t?.defaultFundingMethod;return{chainType:"solana",address:e,supportedOptions:o,amount:s,isUSDC:"USDC"===t?.asset,methodScreen:a,comingFromSendTransactionScreen:r,chain:t?.chain||"solana:mainnet",crossChainBridgingEnabled:n.fundingConfig.crossChainBridgingEnabled??!1,defaultFundingMethod:l,preferredCardProvider:t?.card?.preferredProvider,usingDefaultFundingMethod:!!l,uiConfig:t?.uiConfig,externalSolanaFundingScreen:i,onComplete:()=>{},onError:()=>{}}},exports.s=m,exports.toSolanaWalletClientType=E,exports.useExportWallet=function(){let{user:e,getAccessToken:n}=s.usePrivyContext(),{walletProxy:i,openModal:d,client:c}=t.usePrivyInternal(),{setModalData:u}=s.usePrivyModal(),h=r.useAppConfig();return a.useMemo((()=>({exportWallet:r=>new Promise((async(a,p)=>{if(!e)return void p(Error("User must be authenticated before exporting their Privy wallet"));r&&"target"in r&&r&&(r=void 0);let C=r?.address?s.getPrivyWalletWithAddress(e,r.address):s.getPrivyEthereumWallet(e);if(!C)return void p(new t.PrivyClientError("User must have an embedded wallet."));let f=C.address,{entropyId:A,entropyIdVerifier:m}=l.getEntropyDetailsForUser(e,C),g=s.getIsUnifiedWallet(C);if(!f)return void p(Error("User does not have an HD Ethereum wallet. To export an imported wallet, pass the `address` of the wallet to `exportWallet`."));if(!o.isAddress(f))return void p(Error("Must provide a valid Ethereum address."));let w={recoveryMethod:C.recoveryMethod,connectingWalletAddress:C.address,isUnifiedWallet:g,entropyId:A,entropyIdVerifier:m,onCompleteNavigateTo:"EmbeddedWalletKeyExportScreen",onFailure:p,shouldForceMFA:!0};await n()&&i?b(C)?(u({keyExport:{appId:h.id,appClientId:h.appClientId,origin:c.apiUrl,address:C.address,entropyId:A,entropyIdVerifier:m,hdWalletIndex:C.walletIndex,chainType:C.chainType,walletId:C.id,isUnifiedWallet:g,imported:C.imported,onSuccess:a,onFailure:p,showBackButton:r?.showBackButton},connectWallet:w}),d("EmbeddedWalletConnectingScreen")):p(Error(`Export is not supported for ${C.chainType} wallets`)):p(Error("Must have valid access token."))}))})),[e,n,i,d,c,u,h])};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./context-
|
|
1
|
+
"use strict";var e=require("./context-D-ZJYjUg.js"),t=require("./events-context-Di6--rDg.js"),n=require("./internal-context-BJv4f_bO.js"),r=require("./get-is-unified-wallet-UpdjHxOV.js"),a=require("./use-export-wallet-B5ujV5Nk.js"),i=require("react"),o=require("./useWallets-CKAypPZB.js");exports.useExportWallet=function(){let{user:t,getAccessToken:l}=r.usePrivyContext(),{walletProxy:s,openModal:d,client:u}=n.usePrivyInternal(),{setModalData:c}=r.usePrivyModal(),p=e.useAppConfig();return i.useMemo((()=>({exportWallet:e=>new Promise((async(i,y)=>{if(!t)return void y(new n.PrivyClientError("User must be authenticated before exporting their Privy wallet"));let f=e?.address?r.getPrivyWalletWithAddress(t,e.address):r.getPrivySolanaWallet(t);if(!f)return void y(new n.PrivyClientError("User must have an embedded wallet."));if(!a.isFirstClassChainWallet(f))return void y(Error(`Export is not supported for ${f.chainType} wallets`));let v=r.getIsUnifiedWallet(f),{entropyId:g,entropyIdVerifier:W}=o.getEntropyDetailsForUser(t,f);await l()?s?(c({connectWallet:{recoveryMethod:f.recoveryMethod,connectingWalletAddress:f.address,isUnifiedWallet:v,entropyId:g,entropyIdVerifier:W,onCompleteNavigateTo:"EmbeddedWalletKeyExportScreen",onFailure:y,shouldForceMFA:!0},keyExport:{appId:p.id,appClientId:p.appClientId,origin:u.apiUrl,address:f.address,entropyId:g,entropyIdVerifier:W,hdWalletIndex:f.walletIndex,chainType:f.chainType,walletId:f.id,isUnifiedWallet:v,imported:f.imported,onSuccess:i,onFailure:y,showBackButton:e?.showBackButton}}),d("EmbeddedWalletConnectingScreen")):y(new n.PrivyClientError("Wallet not ready for export")):y(new n.PrivyClientError("Must have valid access token."))}))})),[t,l,s,d,u,c,p])},exports.useFundWallet=function(i){t.usePrivyEventSubscription("fundSolanaWallet",i);let o=e.useAppConfig(),{openModal:l}=n.usePrivyInternal(),{setModalData:s}=r.usePrivyModal();return{fundWallet:async({address:e,options:t})=>{let n=t?.amount||o.fundingConfig?.defaultRecommendedAmount||"1",r=t?.asset||o.fundingConfig?.defaultRecommendedCurrency.asset||"native-currency",i=t?.chain||"solana:mainnet";s({funding:a.prepareSolanaFundingModalData({address:e,appConfig:o,methodScreen:"FundingMethodSelectionScreen",fundWalletConfig:{...t,amount:n,asset:r,chain:i},externalSolanaFundingScreen:"FundSolWalletWithExternalSolanaWallet"}),solanaFundingData:{amount:n,asset:"native-currency"===r?"SOL":"USDC",chain:i,destinationAddress:e,sourceWalletData:void 0}}),l("FundingMethodSelectionScreen")}}};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var e=require("react"),t=require("zustand"),n=require("./context-DK3qW12H.js"),r=require("styled-components"),i=require("react/jsx-runtime"),o=require("react-device-detect"),l=require("./use-export-wallet-BEW54Ynq.js"),a=require("./events-context-Di6--rDg.js"),s=require("viem"),c=require("viem/utils"),d=require("./internal-context-BJv4f_bO.js"),p=require("./getPublicClient-BsmZyCGX.js"),u=require("./get-is-unified-wallet-CMHZpDfE.js"),h=require("./useWallets-XTVLGZyz.js");function m(e){if(e&&"object"==typeof e&&"default"in e)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var w=/*#__PURE__*/m(o);const y=t.create((()=>({listings:[],loading:!1}))),f=y.setState,g=(t=!0)=>{let r=n.useAppConfig(),i=y((e=>e.listings)),o=y((e=>e.loading)),l=!!i.length;return e.useEffect((()=>{t&&!l&&(f({listings:[],loading:!0}),(async e=>{let t=new URL("v3/wallets","https://explorer-api.walletconnect.com");t.searchParams.append("projectId",e);let n=await fetch(t);return n.ok?Object.values((await n.json()).listings).sort((({slug:e},{slug:t})=>"rainbow"===e&&"metamask"===t?1:"metamask"===e||"rainbow"===e?-1:1)):(console.debug(`Failed to fetch WalletConnect listings: ${await n.text().catch((()=>"No response."))}`),[])})(r.walletConnectCloudProjectId).then((e=>f({listings:e,loading:!1}))).catch((e=>{console.error(e),f({listings:[],loading:!1})})))}),[t,l,r.walletConnectCloudProjectId]),{listings:i,loading:o}};function b(e){return"cryptocom"===e?"cryptocom-defi":"binance"===e?"binance-defi":e.replace(/[-_]wallet$/,"")}const x=e=>e.isApexWallet?"Apex Wallet":e.isAvalanche?"Core Wallet":e.isBackpack?"Backpack":e.isBifrost?"Bifrost Wallet":e.isBitKeep?"BitKeep":e.isBitski?"Bitski":e.isBlockWallet?"BlockWallet":e.isBraveWallet?"Brave Wallet":e.isClover?"Clover":e.isCoin98?"Coin98 Wallet":e.isCoinbaseWallet?"Coinbase Wallet":e.isDawn?"Dawn Wallet":e.isDefiant?"Defiant":e.isDesig?"Desig Wallet":e.isEnkrypt?"Enkrypt":e.isExodus?"Exodus":e.isFordefi?"Fordefi":e.isFrame?"Frame":e.isFrontier?"Frontier Wallet":e.isGamestop?"GameStop Wallet":e.isHaqqWallet?"HAQQ Wallet":e.isHyperPay?"HyperPay Wallet":e.isImToken?"ImToken":e.isHaloWallet?"Halo Wallet":e.isKuCoinWallet?"KuCoin Wallet":e.isMathWallet?"MathWallet":e.isNovaWallet?"Nova Wallet":e.isOkxWallet||e.isOKExWallet?"OKX Wallet":e.isOneInchIOSWallet||e.isOneInchAndroidWallet?"1inch Wallet":e.isOneKey?"OneKey Wallet":e.isOpera?"Opera":e.isPhantom||"isPhantom"in e?"Phantom":e.isPortal?"Ripio Portal":e.isRabby?"Rabby Wallet":e.isRainbow?"Rainbow":e.isSafePal?"SafePal Wallet":e.isStatus?"Status":e.isSubWallet?"SubWallet":e.isTalisman?"Talisman":e.isTally||e.isTaho?"Taho":e.isTokenPocket?"TokenPocket":e.isTokenary?"Tokenary":e.isTrust||e.isTrustWallet?"Trust Wallet":e.isTTWallet?"TTWallet":e.isXDEFI?"XDEFI Wallet":e.isZeal?"Zeal":e.isZerion?"Zerion":e.isMetaMask?"MetaMask":void 0,v=(e,t)=>{if(!e.isMetaMask)return!1;if(e.isMetaMask&&!t)return!0;if(e.isBraveWallet&&!e._events&&!e._state||"MetaMask"!==x(e))return!1;if(e.providers)for(let t of e.providers)if(!v(t))return!1;return!0},C=(e,t=3,n=4,r="ethereum")=>{if(!e)return"";let i="ethereum"===r?2:0;return t+n+i+3>=e.length?e:`${e.slice(0,i+t)}...${e.slice(e.length-n,e.length)}`},k=e=>new Promise((t=>setTimeout(t,e)));const P=(e,t={})=>{let n=t.delayMs||150,r=t.maxAttempts||270;return new Promise((async(i,o)=>{let l=!1,a=0;for(;!l&&a<r;){if(t.abortSignal?.aborted)return;e().then((e=>{l=!0,i(e)}),((...e)=>{l=!0,o(...e)})),a+=1,await k(n)}l||o(Error("Exceeded max attempts before resolving function"))}))};function W(e){return`eip155:${String(Number(e))}`}function T(e){return"ethereum"===e.type}function _(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++){let r=e[n],i=t[n];if(r?.address!==i?.address||r&&i&&T(r)&&T(i)&&r?.chainId!==i?.chainId||r?.connectorType!==i?.connectorType||r?.connectedAt!==i?.connectedAt||r?.walletClientType!==i?.walletClientType||r?.isConnected!==i?.isConnected||r?.linked!==i?.linked)return!1}return!0}const E=(e,t)=>e.rpcTimeouts&&e.rpcTimeouts[t]||n.DEFAULT_RPC_TIMEOUT;class j extends l.WalletConnector{buildConnectedWallet(e,t,n,r){let i=async()=>!!this.wallets.find((t=>c.getAddress(t.address)===c.getAddress(e)));return{type:"ethereum",address:c.getAddress(e),chainId:t,meta:n,imported:r,switchChain:async n=>{let r,o;if(!i)throw new d.PrivyConnectorError("Wallet is not currently connected.");let l=this.wallets.find((t=>c.getAddress(t.address)===c.getAddress(e)))?.chainId;if(!l)throw new d.PrivyConnectorError("Unable to determine current chainId.");if("number"==typeof n?(r=`0x${n.toString(16)}`,o=n):(r=n,o=Number(n)),l===W(r))return;let a=this.chains.find((e=>e.id===o));if(!a)throw new d.PrivyConnectorError(`Unsupported chainId: ${n}`);let s=async()=>{await this.proxyProvider.request({method:"wallet_switchEthereumChain",params:[{chainId:r}]})};try{return await s()}catch(e){if(((e,t)=>{switch(t){case"coinbase_wallet":case"base_account":return e.message.includes("addEthereumChain");case"rabby_wallet":return e.message.includes("Unrecognized chain ID");default:return 4902===e.code||e.message?.includes("4902")}})(e,this.walletClientType))return"rabby_wallet"===this.walletClientType&&await k(300),await this.proxyProvider.request({method:"wallet_addEthereumChain",params:[{chainId:r,chainName:a.name,nativeCurrency:a.nativeCurrency,rpcUrls:[a.rpcUrls.default?.http[0]??""],blockExplorerUrls:[a.blockExplorers?.default.url??""]}]}),s();if("rainbow"===this.walletClientType&&e.message?.includes("wallet_switchEthereumChain"))throw new d.PrivyConnectorError(`Rainbow does not support the chainId ${t}`);throw e}},connectedAt:Date.now(),walletClientType:this.walletClientType,connectorType:this.connectorType,isConnected:i,getEthereumProvider:async()=>{if(!await i())throw new d.PrivyConnectorError("Wallet is not currently connected.");return this.proxyProvider},sign:async e=>{if(!await i())throw new d.PrivyConnectorError("Wallet is not currently connected.");return await this.sign(e)},disconnect:()=>{this.disconnect()}}}async syncAccounts(e){let t,r=e;try{if(void 0===r){let e=await P((()=>this.proxyProvider.request({method:"eth_accounts"})),{maxAttempts:10,delayMs:500});console.debug(`eth_accounts for ${this.walletClientType}:`,e),Array.isArray(e)&&(r=e)}}catch(e){console.debug("Wallet did not respond to eth_accounts. Defaulting to prefetched accounts.",e)}if(!r||!Array.isArray(r)||r.length<=0||!r[0])return;let i=r[0];if(!s.isAddress(i))return void console.warn(`Invalid ethereum address reported by ${this.walletClientType}: ${i}`);let o=c.getAddress(i),a=[];if("privy"===this.walletClientType){let e=l.s.get(n.getPrivyWalletKey(o));this.chains.find((t=>t.id===Number(e)))||(l.s.del(n.getPrivyWalletKey(o)),e=null),t=e||`0x${this.defaultChain.id.toString(16)}`;try{await this.proxyProvider.request({method:"wallet_switchEthereumChain",params:[{chainId:t}]})}catch(e){console.warn(`Unable to switch embedded wallet to chain ID ${t} on initialization`)}}else try{let e=await P((()=>this.proxyProvider.request({method:"eth_chainId"})),{maxAttempts:10,delayMs:500});if(console.debug(`eth_chainId for ${this.walletClientType}:`,e),"string"==typeof e)t=e;else{if("number"!=typeof e)throw Error("Invalid chainId returned from provider");t=`0x${e.toString(16)}`}}catch(e){console.warn(`Failed to get chainId from provider, defaulting to ${n.DEFAULT_NETWORK}`,e),t=n.DEFAULT_NETWORK}let d=W(t);if(!a.find((e=>c.getAddress(e.address)===o))){let e={name:this.walletBranding.name,icon:"string"==typeof this.walletBranding.icon?this.walletBranding.icon:void 0,id:this.walletBranding.id};a.push(this.buildConnectedWallet(c.getAddress(i),d,e,"embedded_imported"===this.connectorType))}_(a,this.wallets)||(this.wallets=a,this.emit("walletsUpdated"))}async getConnectedWallet(){let e=await this.proxyProvider.request({method:"eth_accounts"});return this.wallets.sort(((e,t)=>t.connectedAt-e.connectedAt)).find((t=>e.find((e=>c.getAddress(e)===c.getAddress(t.address)))))||null}async isConnected(){let e=await this.proxyProvider.request({method:"eth_accounts"});return Array.isArray(e)&&e.length>0}async sign(e){return await this.connect({showPrompt:!1}),this.proxyProvider.request({method:"personal_sign",params:[c.toHex(e),this.wallets[0]?.address]})}subscribeListeners(){this.proxyProvider.on("accountsChanged",this.onAccountsChanged),this.proxyProvider.on("chainChanged",this.onChainChanged),this.proxyProvider.on("disconnect",this.onDisconnect),this.proxyProvider.on("connect",this.onConnect)}unsubscribeListeners(){this.proxyProvider.removeListener("accountsChanged",this.onAccountsChanged),this.proxyProvider.removeListener("chainChanged",this.onChainChanged),this.proxyProvider.removeListener("disconnect",this.onDisconnect),this.proxyProvider.removeListener("connect",this.onConnect)}constructor(e,t,r,i){super(e),this.chainType="ethereum",this.onAccountsChanged=e=>{0===e.length?this.onDisconnect():this.syncAccounts(e)},this.onChainChanged=e=>{this.wallets.forEach((t=>{t.chainId=W(e),"privy"===this.walletClientType&&l.s.put(n.getPrivyWalletKey(t.address),e)})),this.emit("walletsUpdated")},this.onDisconnect=()=>{this.connected=!1,this.wallets=[],this.emit("walletsUpdated")},this.onConnect=async()=>{"base_account"===this.connectorType&&this.connected||(this.connected=!0,"coinbase_wallet"===this.connectorType&&await k(500),this.syncAccounts())},this.wallets=[],this.walletClientType=e,this.chains=t,this.defaultChain=r,this.rpcConfig=i,this.rpcTimeoutDuration=E(i,e),this.connected=!1,this.initialized=!1}}class S{on(e,t){if(this.walletProvider)return this.walletProvider.on(e,t);this._subscriptions.push({eventName:e,listener:t})}async request(e){if(!this.walletProvider)throw new d.PrivyConnectorError(`A wallet request of type ${e.method} was made before setting a wallet provider.`);return Promise.race([this.walletProvider.request(e),this.walletTimeout()]).catch((e=>{throw l.formatConnectorError(e)}))}constructor(e,t){this.removeListener=(e,t)=>{if(this.walletProvider)try{return this.walletProvider.removeListener(e,t)}catch(e){console.warn("Unable to remove wallet provider listener")}},this.walletTimeout=(e=new l.WalletTimeoutError,t=this.rpcTimeoutDuration)=>new Promise(((n,r)=>setTimeout((()=>{r(e)}),t))),this.setWalletProvider=e=>{this.walletProvider&&this._subscriptions.forEach((e=>{this.removeListener(e.eventName,e.listener)})),this.walletProvider=e,this._subscriptions.forEach((e=>{this.walletProvider?.on(e.eventName,e.listener)}))},this.walletProvider=e,this.rpcTimeoutDuration=t||n.DEFAULT_RPC_TIMEOUT,this._subscriptions=[]}}const I=r.styled.div`
|
|
1
|
+
"use strict";var e=require("react"),t=require("zustand"),n=require("./context-D-ZJYjUg.js"),r=require("styled-components"),i=require("react/jsx-runtime"),o=require("react-device-detect"),l=require("./use-export-wallet-B5ujV5Nk.js"),a=require("./events-context-Di6--rDg.js"),s=require("viem"),c=require("viem/utils"),d=require("./internal-context-BJv4f_bO.js"),p=require("./getPublicClient-BsmZyCGX.js"),u=require("./get-is-unified-wallet-UpdjHxOV.js"),h=require("./useWallets-CKAypPZB.js");function m(e){if(e&&"object"==typeof e&&"default"in e)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var w=/*#__PURE__*/m(o);const y=t.create((()=>({listings:[],loading:!1}))),f=y.setState,g=(t=!0)=>{let r=n.useAppConfig(),i=y((e=>e.listings)),o=y((e=>e.loading)),l=!!i.length;return e.useEffect((()=>{t&&!l&&(f({listings:[],loading:!0}),(async e=>{let t=new URL("v3/wallets","https://explorer-api.walletconnect.com");t.searchParams.append("projectId",e);let n=await fetch(t);return n.ok?Object.values((await n.json()).listings).sort((({slug:e},{slug:t})=>"rainbow"===e&&"metamask"===t?1:"metamask"===e||"rainbow"===e?-1:1)):(console.debug(`Failed to fetch WalletConnect listings: ${await n.text().catch((()=>"No response."))}`),[])})(r.walletConnectCloudProjectId).then((e=>f({listings:e,loading:!1}))).catch((e=>{console.error(e),f({listings:[],loading:!1})})))}),[t,l,r.walletConnectCloudProjectId]),{listings:i,loading:o}};function b(e){return"cryptocom"===e?"cryptocom-defi":"binance"===e?"binance-defi":e.replace(/[-_]wallet$/,"")}const x=e=>e.isApexWallet?"Apex Wallet":e.isAvalanche?"Core Wallet":e.isBackpack?"Backpack":e.isBifrost?"Bifrost Wallet":e.isBitKeep?"BitKeep":e.isBitski?"Bitski":e.isBlockWallet?"BlockWallet":e.isBraveWallet?"Brave Wallet":e.isClover?"Clover":e.isCoin98?"Coin98 Wallet":e.isCoinbaseWallet?"Coinbase Wallet":e.isDawn?"Dawn Wallet":e.isDefiant?"Defiant":e.isDesig?"Desig Wallet":e.isEnkrypt?"Enkrypt":e.isExodus?"Exodus":e.isFordefi?"Fordefi":e.isFrame?"Frame":e.isFrontier?"Frontier Wallet":e.isGamestop?"GameStop Wallet":e.isHaqqWallet?"HAQQ Wallet":e.isHyperPay?"HyperPay Wallet":e.isImToken?"ImToken":e.isHaloWallet?"Halo Wallet":e.isKuCoinWallet?"KuCoin Wallet":e.isMathWallet?"MathWallet":e.isNovaWallet?"Nova Wallet":e.isOkxWallet||e.isOKExWallet?"OKX Wallet":e.isOneInchIOSWallet||e.isOneInchAndroidWallet?"1inch Wallet":e.isOneKey?"OneKey Wallet":e.isOpera?"Opera":e.isPhantom||"isPhantom"in e?"Phantom":e.isPortal?"Ripio Portal":e.isRabby?"Rabby Wallet":e.isRainbow?"Rainbow":e.isSafePal?"SafePal Wallet":e.isStatus?"Status":e.isSubWallet?"SubWallet":e.isTalisman?"Talisman":e.isTally||e.isTaho?"Taho":e.isTokenPocket?"TokenPocket":e.isTokenary?"Tokenary":e.isTrust||e.isTrustWallet?"Trust Wallet":e.isTTWallet?"TTWallet":e.isXDEFI?"XDEFI Wallet":e.isZeal?"Zeal":e.isZerion?"Zerion":e.isMetaMask?"MetaMask":void 0,v=(e,t)=>{if(!e.isMetaMask)return!1;if(e.isMetaMask&&!t)return!0;if(e.isBraveWallet&&!e._events&&!e._state||"MetaMask"!==x(e))return!1;if(e.providers)for(let t of e.providers)if(!v(t))return!1;return!0},C=(e,t=3,n=4,r="ethereum")=>{if(!e)return"";let i="ethereum"===r?2:0;return t+n+i+3>=e.length?e:`${e.slice(0,i+t)}...${e.slice(e.length-n,e.length)}`},k=e=>new Promise((t=>setTimeout(t,e)));const P=(e,t={})=>{let n=t.delayMs||150,r=t.maxAttempts||270;return new Promise((async(i,o)=>{let l=!1,a=0;for(;!l&&a<r;){if(t.abortSignal?.aborted)return;e().then((e=>{l=!0,i(e)}),((...e)=>{l=!0,o(...e)})),a+=1,await k(n)}l||o(Error("Exceeded max attempts before resolving function"))}))};function W(e){return`eip155:${String(Number(e))}`}function T(e){return"ethereum"===e.type}function _(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++){let r=e[n],i=t[n];if(r?.address!==i?.address||r&&i&&T(r)&&T(i)&&r?.chainId!==i?.chainId||r?.connectorType!==i?.connectorType||r?.connectedAt!==i?.connectedAt||r?.walletClientType!==i?.walletClientType||r?.isConnected!==i?.isConnected||r?.linked!==i?.linked)return!1}return!0}const E=(e,t)=>e.rpcTimeouts&&e.rpcTimeouts[t]||n.DEFAULT_RPC_TIMEOUT;class j extends l.WalletConnector{buildConnectedWallet(e,t,n,r){let i=async()=>!!this.wallets.find((t=>c.getAddress(t.address)===c.getAddress(e)));return{type:"ethereum",address:c.getAddress(e),chainId:t,meta:n,imported:r,switchChain:async n=>{let r,o;if(!i)throw new d.PrivyConnectorError("Wallet is not currently connected.");let l=this.wallets.find((t=>c.getAddress(t.address)===c.getAddress(e)))?.chainId;if(!l)throw new d.PrivyConnectorError("Unable to determine current chainId.");if("number"==typeof n?(r=`0x${n.toString(16)}`,o=n):(r=n,o=Number(n)),l===W(r))return;let a=this.chains.find((e=>e.id===o));if(!a)throw new d.PrivyConnectorError(`Unsupported chainId: ${n}`);let s=async()=>{await this.proxyProvider.request({method:"wallet_switchEthereumChain",params:[{chainId:r}]})};try{return await s()}catch(e){if(((e,t)=>{switch(t){case"coinbase_wallet":case"base_account":return e.message.includes("addEthereumChain");case"rabby_wallet":return e.message.includes("Unrecognized chain ID");default:return 4902===e.code||e.message?.includes("4902")}})(e,this.walletClientType))return"rabby_wallet"===this.walletClientType&&await k(300),await this.proxyProvider.request({method:"wallet_addEthereumChain",params:[{chainId:r,chainName:a.name,nativeCurrency:a.nativeCurrency,rpcUrls:[a.rpcUrls.default?.http[0]??""],blockExplorerUrls:[a.blockExplorers?.default.url??""]}]}),s();if("rainbow"===this.walletClientType&&e.message?.includes("wallet_switchEthereumChain"))throw new d.PrivyConnectorError(`Rainbow does not support the chainId ${t}`);throw e}},connectedAt:Date.now(),walletClientType:this.walletClientType,connectorType:this.connectorType,isConnected:i,getEthereumProvider:async()=>{if(!await i())throw new d.PrivyConnectorError("Wallet is not currently connected.");return this.proxyProvider},sign:async e=>{if(!await i())throw new d.PrivyConnectorError("Wallet is not currently connected.");return await this.sign(e)},disconnect:()=>{this.disconnect()}}}async syncAccounts(e){let t,r=e;try{if(void 0===r){let e=await P((()=>this.proxyProvider.request({method:"eth_accounts"})),{maxAttempts:10,delayMs:500});console.debug(`eth_accounts for ${this.walletClientType}:`,e),Array.isArray(e)&&(r=e)}}catch(e){console.debug("Wallet did not respond to eth_accounts. Defaulting to prefetched accounts.",e)}if(!r||!Array.isArray(r)||r.length<=0||!r[0])return;let i=r[0];if(!s.isAddress(i))return void console.warn(`Invalid ethereum address reported by ${this.walletClientType}: ${i}`);let o=c.getAddress(i),a=[];if("privy"===this.walletClientType){let e=l.s.get(n.getPrivyWalletKey(o));this.chains.find((t=>t.id===Number(e)))||(l.s.del(n.getPrivyWalletKey(o)),e=null),t=e||`0x${this.defaultChain.id.toString(16)}`;try{await this.proxyProvider.request({method:"wallet_switchEthereumChain",params:[{chainId:t}]})}catch(e){console.warn(`Unable to switch embedded wallet to chain ID ${t} on initialization`)}}else try{let e=await P((()=>this.proxyProvider.request({method:"eth_chainId"})),{maxAttempts:10,delayMs:500});if(console.debug(`eth_chainId for ${this.walletClientType}:`,e),"string"==typeof e)t=e;else{if("number"!=typeof e)throw Error("Invalid chainId returned from provider");t=`0x${e.toString(16)}`}}catch(e){console.warn(`Failed to get chainId from provider, defaulting to ${n.DEFAULT_NETWORK}`,e),t=n.DEFAULT_NETWORK}let d=W(t);if(!a.find((e=>c.getAddress(e.address)===o))){let e={name:this.walletBranding.name,icon:"string"==typeof this.walletBranding.icon?this.walletBranding.icon:void 0,id:this.walletBranding.id};a.push(this.buildConnectedWallet(c.getAddress(i),d,e,"embedded_imported"===this.connectorType))}_(a,this.wallets)||(this.wallets=a,this.emit("walletsUpdated"))}async getConnectedWallet(){let e=await this.proxyProvider.request({method:"eth_accounts"});return this.wallets.sort(((e,t)=>t.connectedAt-e.connectedAt)).find((t=>e.find((e=>c.getAddress(e)===c.getAddress(t.address)))))||null}async isConnected(){let e=await this.proxyProvider.request({method:"eth_accounts"});return Array.isArray(e)&&e.length>0}async sign(e){return await this.connect({showPrompt:!1}),this.proxyProvider.request({method:"personal_sign",params:[c.toHex(e),this.wallets[0]?.address]})}subscribeListeners(){this.proxyProvider.on("accountsChanged",this.onAccountsChanged),this.proxyProvider.on("chainChanged",this.onChainChanged),this.proxyProvider.on("disconnect",this.onDisconnect),this.proxyProvider.on("connect",this.onConnect)}unsubscribeListeners(){this.proxyProvider.removeListener("accountsChanged",this.onAccountsChanged),this.proxyProvider.removeListener("chainChanged",this.onChainChanged),this.proxyProvider.removeListener("disconnect",this.onDisconnect),this.proxyProvider.removeListener("connect",this.onConnect)}constructor(e,t,r,i){super(e),this.chainType="ethereum",this.onAccountsChanged=e=>{0===e.length?this.onDisconnect():this.syncAccounts(e)},this.onChainChanged=e=>{this.wallets.forEach((t=>{t.chainId=W(e),"privy"===this.walletClientType&&l.s.put(n.getPrivyWalletKey(t.address),e)})),this.emit("walletsUpdated")},this.onDisconnect=()=>{this.connected=!1,this.wallets=[],this.emit("walletsUpdated")},this.onConnect=async()=>{"base_account"===this.connectorType&&this.connected||(this.connected=!0,"coinbase_wallet"===this.connectorType&&await k(500),this.syncAccounts())},this.wallets=[],this.walletClientType=e,this.chains=t,this.defaultChain=r,this.rpcConfig=i,this.rpcTimeoutDuration=E(i,e),this.connected=!1,this.initialized=!1}}class S{on(e,t){if(this.walletProvider)return this.walletProvider.on(e,t);this._subscriptions.push({eventName:e,listener:t})}async request(e){if(!this.walletProvider)throw new d.PrivyConnectorError(`A wallet request of type ${e.method} was made before setting a wallet provider.`);return Promise.race([this.walletProvider.request(e),this.walletTimeout()]).catch((e=>{throw l.formatConnectorError(e)}))}constructor(e,t){this.removeListener=(e,t)=>{if(this.walletProvider)try{return this.walletProvider.removeListener(e,t)}catch(e){console.warn("Unable to remove wallet provider listener")}},this.walletTimeout=(e=new l.WalletTimeoutError,t=this.rpcTimeoutDuration)=>new Promise(((n,r)=>setTimeout((()=>{r(e)}),t))),this.setWalletProvider=e=>{this.walletProvider&&this._subscriptions.forEach((e=>{this.removeListener(e.eventName,e.listener)})),this.walletProvider=e,this._subscriptions.forEach((e=>{this.walletProvider?.on(e.eventName,e.listener)}))},this.walletProvider=e,this.rpcTimeoutDuration=t||n.DEFAULT_RPC_TIMEOUT,this._subscriptions=[]}}const I=r.styled.div`
|
|
2
2
|
text-align: left;
|
|
3
3
|
flex-grow: 1;
|
|
4
4
|
`,z=r.styled.div`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("react"),r=require("@privy-io/js-sdk-core"),i=require("./context-
|
|
1
|
+
"use strict";var e=require("react"),r=require("@privy-io/js-sdk-core"),i=require("./context-D-ZJYjUg.js"),o=require("./internal-context-BJv4f_bO.js"),t=require("./useGetSolPrice-Ca32VAbF.js");let n=t=>{let{showFiatPrices:n,getUsdTokenPrice:c,chains:a}=o.usePrivyInternal(),[s,l]=e.useState(!0),[P,u]=e.useState(void 0),[d,k]=e.useState(void 0);return e.useEffect((()=>{t||=i.CHAIN_ID_MAINNET;let e=r.addToDefaultChains(a).find((e=>e.id===Number(t)));(async()=>{if(n){if(!e)return l(!1),void u(Error(`Unable to fetch token price on chain id ${t}`));try{l(!0);let r=await c(e);r?k(r):u(Error(`Unable to fetch token price on chain id ${e.id}`))}catch(e){u(e)}finally{l(!1)}}else l(!1)})()}),[t]),{tokenPrice:d,isTokenPriceLoading:s,tokenPriceError:P}};exports.useGetTokenPrice=function(e){let{tokenPrice:r,isTokenPriceLoading:i,tokenPriceError:o}=n("solana"===e?-1:e),{solPrice:c,isSolPriceLoading:a,solPriceError:s}=t.useGetSolPrice({enabled:"solana"===e});return"solana"===e?{tokenPrice:c,isTokenPriceLoading:a,tokenPriceError:s}:{tokenPrice:r,isTokenPriceLoading:i,tokenPriceError:o}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./context-
|
|
1
|
+
"use strict";var e=require("./context-D-ZJYjUg.js");const n={"connectionStatus.successfullyConnected":"Successfully connected with {walletName}","connectionStatus.errorTitle":"{errorMessage}","connectionStatus.connecting":"Connecting","connectionStatus.connectOneWallet":"For the best experience, connect only one wallet at a time.","connectionStatus.checkOtherWindows":"Don't see your wallet? Check your other browser windows.","connectionStatus.stillHere":"Still here?","connectionStatus.tryConnectingAgain":"Try connecting again","connectionStatus.or":"or","connectionStatus.useDifferentLink":"use this different link","connectWallet.connectYourWallet":"Connect a wallet","connectWallet.waitingForWallet":"Waiting for {walletName}","connectWallet.connectToAccount":"Connect a wallet to your {appName} account","connectWallet.installAndConnect":"To connect to {walletName}, install and open the app. Then confirm the connection when prompted.","connectWallet.tryConnectingAgain":"Please try connecting again.","connectWallet.openInApp":"Open in app","connectWallet.copyLink":"Copy link","connectWallet.retry":"Retry","connectWallet.searchPlaceholder":"Search through {count} wallets","connectWallet.noWalletsFound":"No wallets found. Try another search.","connectWallet.lastUsed":"Last used","connectWallet.selectYourWallet":"Select your wallet","connectWallet.selectNetwork":"Select network","connectWallet.goToWallet":"Go to {walletName} to continue","connectWallet.scanToConnect":"Scan code to connect to {walletName}","connectWallet.openOrInstall":"Open or install {walletName}"};exports.useI18n=function(){let t=e.useAppConfig();return{t:(e,o)=>function(e,t,o){let c=t?.[e]??n[e];return o&&0!==Object.keys(o).length?c.replace(/\{(\w+)\}/g,((e,n)=>o[n]??e)):c}(e,t.intl.textLocalization,o)}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("react-device-detect"),r=require("./internal-context-BJv4f_bO.js"),t=require("react"),n=require("./use-export-wallet-
|
|
1
|
+
"use strict";var e=require("react-device-detect"),r=require("./internal-context-BJv4f_bO.js"),t=require("react"),n=require("./use-export-wallet-B5ujV5Nk.js"),a=require("./get-is-unified-wallet-UpdjHxOV.js"),o=require("./events-context-Di6--rDg.js"),i=require("@privy-io/js-sdk-core"),l=require("./useWallets-CKAypPZB.js"),s=require("./context-D-ZJYjUg.js");function d(e){return{name:e.metadata?.shortName||e.name||"",universalLink:e.mobile.universal,deepLink:e.mobile.native}}let c="WALLETCONNECT_DEEPLINK_CHOICE";function u(e){return e.startsWith("http://")||e.startsWith("https://")}function p(e,r){if(u(e))return y(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 y(e,r){if(!u(e))return p(e,r);let t=e;return t.endsWith("/")||(t=`${t}/`),{redirect:`${t}wc?uri=${encodeURIComponent(r)}`,href:t}}const E=Symbol("solana-funding-plugin"),v=Symbol("solana-ledger-plugin"),w=(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)))??[],h=async({user:e,accessToken:r,proxy:t,refreshSessionAndUser:n,privy:o,appConfig:s,recoverEmbeddedWallet:d,setUser:c,walletIndex:u,chainType:p,recoveryMethod:y,recoveryPassword:E,recoveryAccessToken:v,idempotencyKey:h})=>{if(0===u)if("user-controlled-server-wallets-only"===s.embeddedWallets.mode)await i.create(o,{request:{chain_type:p},headers:h?{"privy-idempotency-key":h}:void 0});else if("ethereum"===p){let n=a.getPrivySolanaWallet(e);n&&await d({address:n.address}),await t.create({accessToken:r,solanaAddress:n?.address,recoveryMethod:y,recoveryPassword:E,recoveryAccessToken:v})}else{if("solana"!==p)throw Error("Invalid input to create wallet");{let n=a.getPrivyEthereumWallet(e);n&&await d({address:n.address}),await t.createSolana({accessToken:r,ethereumAddress:n?.address,recoveryMethod:y,recoveryPassword:E,recoveryAccessToken:v})}}else if("user-controlled-server-wallets-only"===s.embeddedWallets.mode)await i.create(o,{request:{chain_type:p}});else{let{entropyId:n,entropyIdVerifier:a}=l.getEntropyDetailsForUser(e);await d(),await t.addWallet({accessToken:r,entropyId:n,entropyIdVerifier:a,chainType:p,hdWalletIndex:u})}let m=await n(),f=w(m,{chainType:p,walletIndex:u})[0];return c(m),{user:m,account:f}},m=e=>e.reduce(((e,r)=>!e||e.walletIndex<r.walletIndex?r:e),null);let f=async({accessToken:e,appConfig:t,privy:n,emitPrivyEvent:o,proxy:i,refreshSessionAndUser:l,recoverEmbeddedWallet:s,user:d,walletIndex:c,setModalData:u,openModal:p,chainType:y,setUser:E,idempotencyKey:v})=>{if(c<0)throw o("createWallet","onError",r.PrivyErrorCode.EMBEDDED_WALLET_CREATE_ERROR),Error(`A negative walletIndex (${c}) is invalid.`);let m=a.getPrivyPrimaryWallet(d);if(c>0&&!m)throw o("createWallet","onError",r.PrivyErrorCode.EMBEDDED_WALLET_NOT_FOUND),Error("Must have an existing embedded wallet to create an additional wallet.");if(t.embeddedWallets.requireUserOwnedRecoveryOnCreate&&"user-controlled-server-wallets-only"===t.embeddedWallets.mode)throw o("createWallet","onError",r.PrivyErrorCode.EMBEDDED_WALLET_CREATE_ERROR),Error("User owned recovery not yet supported for this app.");if(!m&&t.embeddedWallets.requireUserOwnedRecoveryOnCreate)return await W({emitPrivyEvent:o,setModalData:u,openModal:p,chainType:y});let f=w(d,{chainType:y,walletIndex:c})[0];if(f)return{user:d,account:f};if(0===c&&!i)return W({emitPrivyEvent:o,setModalData:u,openModal:p,chainType:y});if(!i)throw o("createWallet","onError",r.PrivyErrorCode.UNKNOWN_EMBEDDED_WALLET_ERROR),Error("Failed to connect to wallet proxy");return h({appConfig:t,walletIndex:c,chainType:y,user:d,accessToken:e,proxy:i,refreshSessionAndUser:l,privy:n,recoverEmbeddedWallet:s,setUser:E,idempotencyKey:v})},W=async({emitPrivyEvent:e,setModalData:t,openModal:n,chainType:a})=>new Promise(((o,i)=>{t({createWallet:{onSuccess:({user:r,account:t})=>{e("createWallet","onSuccess",{wallet:t}),o({user:r,account:t})},onFailure:t=>{e("createWallet","onError",r.PrivyErrorCode.UNKNOWN_EMBEDDED_WALLET_ERROR),i(t)},callAuthOnSuccessOnClose:!1,shouldCreateEth:"ethereum"===a,shouldCreateSol:"solana"===a}}),n("EmbeddedWalletOnAccountCreateScreen")}));const T=()=>{let e=s.useAppConfig(),t=o.useEmitPrivyEvent(),{setModalData:n}=a.usePrivyModal(),{initializeWalletProxy:i,recoverEmbeddedWallet:l,setUser:d,openModal:c,refreshSessionAndUser:u,privy:p,client:y}=r.usePrivyInternal();return{create:async({chainType:a,options:o,latestUser:E,idempotencyKey:v})=>{let h=E;if(h||(h=await u()),!h)throw t("createWallet","onError",r.PrivyErrorCode.MUST_BE_AUTHENTICATED),Error("User must be authenticated before creating a Privy wallet");return await(async({appConfig:e,getAccessToken:t,initializeWalletProxy:n,user:a,privy:o,emitPrivyEvent:i,recoverEmbeddedWallet:l,setModalData:s,openModal:d,setUser:c,options:u,timeoutDuration:p,refreshSessionAndUser:y,chainType:E,idempotencyKey:v})=>{let[h,W]=await Promise.all([n(p),t()]);if(!W||!a)throw i("createWallet","onError",r.PrivyErrorCode.MUST_BE_AUTHENTICATED),Error("User must be authenticated before creating a Privy wallet");if(!h&&e.customAuth?.enabled)throw i("createWallet","onError",r.PrivyErrorCode.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",r.PrivyErrorCode.INVALID_DATA),Error("Invalid input, use `createAdditional` instead of `walletIndex` to create additional wallets.");return f({accessToken:W,appConfig:e,privy:o,emitPrivyEvent:i,openModal:d,proxy:h,refreshSessionAndUser:y,recoverEmbeddedWallet:l,setModalData:s,user:a,walletIndex:u.walletIndex,chainType:E,setUser:c})}let T=u&&"createAdditional"in u&&u.createAdditional,A=w(a,{chainType:E});if(A[0]&&!T)throw i("createWallet","onError",r.PrivyErrorCode.EMBEDDED_WALLET_ALREADY_EXISTS),Error("User already has an embedded wallet.");return f({accessToken:W,appConfig:e,privy:o,emitPrivyEvent:i,openModal:d,proxy:h,recoverEmbeddedWallet:l,setModalData:s,user:a,walletIndex:(m(A)?.walletIndex??-1)+1,chainType:E,refreshSessionAndUser:y,setUser:c,idempotencyKey:v})})({appConfig:e,privy:p,getAccessToken:()=>y.getAccessToken(),refreshSessionAndUser:u,initializeWalletProxy:i,user:h,emitPrivyEvent:t,recoverEmbeddedWallet:l,setModalData:n,openModal:c,setUser:d,options:o,timeoutDuration:s.WALLET_PROXY_TIMEOUT,chainType:a,idempotencyKey:v})}}};function A(e){let{create:r}=T();return o.usePrivyEventSubscription("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 x=async({emitPrivyEvent:e,getAccessToken:t,initializeWalletProxy:n,refreshSessionAndUser:o,user:i,appConfig:l},{privateKey:s,chainType:d,additionalSigners:c})=>{if(!i)throw e("linkAccount","onError",r.PrivyErrorCode.MUST_BE_AUTHENTICATED,{linkMethod:"siwe"}),new r.PrivyClientError("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.PrivyClientError("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([t(),n(15e3)]);if(!y||!p)throw e("linkAccount","onError",r.PrivyErrorCode.MUST_BE_AUTHENTICATED,{linkMethod:"siwe"}),new r.PrivyClientError("User must be authenticated before linking an account.");let{address:E}=await y.importWallet({privateKey:s,accessToken:p,chainType:d,mode:u,additionalSigners:c}),v=await o(),w="solana"===d?a.getImportedPrivySolanaWallets(v):a.getImportedPrivyEthereumWallets(v),h=w?.find((e=>e.address===E));if(!h)throw e("createWallet","onError",r.PrivyErrorCode.UNKNOWN_EMBEDDED_WALLET_ERROR),Error("Failed to import wallet");return e("createWallet","onSuccess",{wallet:h}),h},P=()=>{let{user:e}=a.usePrivyContext(),{client:n,refreshSessionAndUser:i,initializeWalletProxy:l}=r.usePrivyInternal(),d=o.useEmitPrivyEvent(),c=s.useAppConfig();return{importWallet:t.useCallback((({privateKey:r,additionalSigners:t})=>x({getAccessToken:()=>n.getAccessToken(),user:e,initializeWalletProxy:l,refreshSessionAndUser:i,emitPrivyEvent:d,appConfig:c},{privateKey:r,chainType:"ethereum",additionalSigners:t})),[e,n,i,l,d,c])}};exports.SOLANA_FUNDING_PLUGIN_ID=E,exports.SOLANA_LEDGER_PLUGIN_ID=v,exports.buildTargetUrl=function(t,n){let a=d(n);if(e.isMobile&&e.isAndroid&&a.universalLink)return y(a.universalLink,t);if(a.deepLink)return p(a.deepLink,t);if(a.universalLink)return y(a.universalLink,t);throw new r.PrivyClientError(`Unsupported wallet ${n.id}`)},exports.buildUniversalFallbackUrl=function(e,r){let t=d(r);if(t.universalLink)return y(t.universalLink,e)},exports.createWalletAtIndex=h,exports.deleteWalletConnectDeepLink=function(){try{localStorage.removeItem(c)}catch{}},exports.importWallet=x,exports.openHref=function(e,r){window.open(e,r,"noreferrer noopener")},exports.prepareSiwsMessageWithNonce=({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`,exports.removeWalletConnectDeepLink=function(){try{localStorage.removeItem(c)}catch{}},exports.setWalletConnectDeepLink=function({href:e,name:r}){try{localStorage.setItem(c,JSON.stringify({href:e,name:r}))}catch{}},exports.useCreateWallet=A,exports.useCreateWalletInternal=T,exports.useImportWallet=P,exports.usePrivy=()=>{let{importWallet:e}=P(),{exportWallet:r}=n.useExportWallet(),{createWallet:o}=A();return{...t.useContext(a.PrivyContext),importWallet:e,createWallet:o,exportWallet:r}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("@solana/kit"),r=require("react"),n=require("./context-
|
|
1
|
+
"use strict";var e=require("@solana/kit"),r=require("react"),n=require("./context-D-ZJYjUg.js"),t=require("./internal-context-BJv4f_bO.js");function o(r){return new Uint8Array(e.getTransactionDecoder().decode(r).messageBytes)}const a=(...e)=>{if("undefined"==typeof Buffer)throw new t.PrivyClientError("Buffer is not defined.",void 0,t.PrivyErrorCode.BUFFER_NOT_DEFINED);return Buffer.from(...e)};async function i({rpcSubscriptions:e,signature:r,timeout:n}){let t=new AbortController,o=await e.signatureNotifications(r,{commitment:"confirmed"}).subscribe({abortSignal:t.signal}),a=await Promise.race([new Promise((e=>{setTimeout((()=>{t.abort(),e(Error("Transaction confirmation timed out"))}),n)})),new Promise((async e=>{for await(let r of o){if(t.abort(),r.value.err)return e(Error("Transaction confirmation failed"));e(void 0)}}))]);if(a instanceof Error)throw a}function s({rpc:r,rpcSubscriptions:n,chain:t,blockExplorerUrl:o}){let s=function({rpc:r,rpcSubscriptions:n}){return async t=>new Promise((async(o,s)=>{try{let s=await r.sendTransaction(a(t).toString("base64"),{preflightCommitment:"confirmed",encoding:"base64"}).send();await i({rpcSubscriptions:n,signature:s,timeout:1e4}),o({signature:new Uint8Array(e.getBase58Encoder().encode(s))})}catch(e){s(e)}}))}({rpc:r,rpcSubscriptions:n});return{rpc:r,rpcSubscriptions:n,chain:t,blockExplorerUrl:o,sendAndConfirmTransaction:s}}exports.bufferFrom=a,exports.fetchTransactionEstimatedFees=async function({solanaClient:r,tx:n}){let t=e.getBase64Decoder().decode(o(n)),{value:a}=await r.rpc.getFeeForMessage(t).send();return a??0n},exports.getSolanaRpcClient=s,exports.getTransactionMessageBytes=o,exports.simulateTransaction=async function r({solanaClient:n,tx:t,replaceRecentBlockhash:o}){let{value:a}=await n.rpc.simulateTransaction(e.getBase64Decoder().decode(t),{commitment:"confirmed",encoding:"base64",sigVerify:!1,replaceRecentBlockhash:o}).send();if("BlockhashNotFound"===a.err&&o)throw Error("Simulation failed: Blockhash not found");return"BlockhashNotFound"===a.err?await r({solanaClient:n,tx:t,replaceRecentBlockhash:!0}):{logs:a.logs??[],error:a.err,hasError:!!a.err,hasFunds:a.logs?.every((e=>!/insufficient funds/gi.test(e)&&!/insufficient lamports/gi.test(e)))??!0}},exports.useSolanaRpcClient=function(){let e=n.useAppConfig(),t=r.useMemo((()=>Object.fromEntries(["solana:mainnet","solana:devnet","solana:testnet"].map((r=>[r,e.solanaRpcs[r]?s({chain:r,rpc:e.solanaRpcs[r].rpc,rpcSubscriptions:e.solanaRpcs[r].rpcSubscriptions,blockExplorerUrl:e.solanaRpcs[r].blockExplorerUrl??`https://explorer.solana.com?cluster=${r.replace("solana:","")}`}):null])))),[e.solanaRpcs]);return r.useCallback((e=>{if(!t[e])throw Error(`No RPC configuration found for chain ${e}`);return t[e]}),[t])},exports.waitForSignatureConfirmation=i;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./get-is-unified-wallet-
|
|
1
|
+
"use strict";var e=require("./get-is-unified-wallet-UpdjHxOV.js"),r=require("react");const t=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")},o=/*#__PURE__*/r.createContext(null);exports.UseWalletsContext=o,exports.getEntropyDetailsForUser=(r,o)=>{if(o?.imported)return t(o);let i=e.getPrivyPrimaryWallet(r);if(!i)throw Error("Failed to find primary wallet");return t(i)},exports.toEntropyDetailsFromAccount=t,exports.useWallets=function(){let e=r.useContext(o);return null===e?(console.warn("`useWallets` was called outside the PrivyProvider component"),{wallets:[],ready:!1}):e};
|