@privy-io/react-auth 3.13.1 → 3.14.0-beta-20260213175842
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-5vIT9Vj5.js +1 -0
- package/dist/cjs/{Address-BAzd87pQ.js → Address-CSvwjtZr.js} +1 -1
- package/dist/cjs/AffirmativeConsentScreen-CkZG9t3r.js +6 -0
- package/dist/cjs/AllowlistRejectionScreen-BIpHpSsP.js +1 -0
- package/dist/cjs/AuthenticateWithWalletScreen-DxE4Mo3e.js +1 -0
- package/dist/cjs/AwaitingEvmToSolBridgingScreen-C4cZT6jZ.js +2 -0
- package/dist/cjs/AwaitingExternalEthereumTransferScreen-DysfSqRu.js +2 -0
- package/dist/cjs/AwaitingPasswordlessCodeScreen-BKgo7WSz.js +103 -0
- package/dist/cjs/AwaitingSolToEvmBridgingScreen-By2XqcuD.js +2 -0
- package/dist/cjs/{BridgeNetworkSelectionView-BBifxbuQ.js → BridgeNetworkSelectionView-Cbcwjeju.js} +7 -7
- package/dist/cjs/CaptchaScreen-DLafB2fk.js +1 -0
- package/dist/cjs/CoinbaseOnrampStatusScreen-BOecfziJ.js +16 -0
- package/dist/cjs/{ConnectEmailForm-DSB_ECav.js → ConnectEmailForm-DxGEbc_v.js} +1 -1
- package/dist/cjs/ConnectLedgerScreen-Bt6fqaYQ.js +9 -0
- package/dist/cjs/ConnectOnlyLandingScreen-Drw33dcK.js +1 -0
- package/dist/cjs/ConnectOnlyStatusScreen-Bo8cxqDk.js +1 -0
- package/dist/cjs/ConnectOrCreateScreen-L6lv1fMf.js +1 -0
- package/dist/cjs/{ConnectPhoneForm-lBXP5nI1.js → ConnectPhoneForm-H8tbcWjZ.js} +1 -1
- package/dist/cjs/ConnectWalletView-C90zRo3A.js +147 -0
- package/dist/cjs/ConnectionStatusScreen-B0xQfUL_.js +7 -0
- package/dist/cjs/CopyToClipboard-CC0DCGEH.js +39 -0
- package/dist/cjs/CopyableText-DbFeIZI0.js +23 -0
- package/dist/cjs/CrossAppAuthScreen-DmbfWG4K.js +1 -0
- package/dist/cjs/{CustomLandingScreenView-CQqBEerN.js → CustomLandingScreenView-F5WyUe3t.js} +3 -3
- package/dist/cjs/DelegatedActionsConsentScreen-DaARlIlY.js +1 -0
- package/dist/cjs/DelegatedActionsRevokeScreen-Ckwh9Fde.js +1 -0
- package/dist/cjs/EmbeddedWalletConnectingScreen-Dt0qglpB.js +1 -0
- package/dist/cjs/EmbeddedWalletCreatedScreen-D-U2qhvc.js +1 -0
- package/dist/cjs/{EmbeddedWalletKeyExportScreen-CLwKZG9l.js → EmbeddedWalletKeyExportScreen-DHAE6n6A.js} +3 -3
- package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-BLM0P_Et.js +1 -0
- package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-DDwEP_VK.js +1 -0
- package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-xcFuRZ6Q.js +1 -0
- package/dist/cjs/{EnrollTotp-Dzazx21f.js → EnrollTotp-BrTAAhHi.js} +8 -8
- package/dist/cjs/ErrorScreen-CDPwlNzs.js +4 -0
- package/dist/cjs/{FarcasterConnectStatusScreen-B7w0TBzB.js → FarcasterConnectStatusScreen-DbxK9gJn.js} +6 -6
- package/dist/cjs/FarcasterSignerStatusScreen-BOMNzi1f.js +29 -0
- package/dist/cjs/FundSolWalletWithExternalSolanaWallet-Dmqm7veU.js +2 -0
- package/dist/cjs/{FundWalletMethodHeader-2kXHTrGK.js → FundWalletMethodHeader-DJyBd0Vy.js} +1 -1
- package/dist/cjs/FundWithBankDepositScreen-Czy1E-yH.js +175 -0
- package/dist/cjs/FundingEditAmountScreen-6frvmbbd.js +1 -0
- package/dist/cjs/FundingMethodSelectionScreen-yOWUZZMX.js +1 -0
- package/dist/cjs/InAppBrowserLoginNotPossible-B4w2nX7Y.js +1 -0
- package/dist/cjs/{InfoBanner-C15hE_sj.js → InfoBanner-D5_XYHKY.js} +9 -6
- package/dist/cjs/InstallWalletScreen-CzTSvUdl.js +1 -0
- package/dist/cjs/LandingScreen-DNxGiYzs.js +1 -0
- package/dist/cjs/{LinkConflictScreen-CQiPRZsR.js → LinkConflictScreen-BPOi68lz.js} +3 -3
- package/dist/cjs/LinkEmailScreen-DhYoI9Vx.js +1 -0
- package/dist/cjs/{LinkPasskeyScreen-DR1inEW4.js → LinkPasskeyScreen-BVFUwWQG.js} +11 -11
- package/dist/cjs/LinkPhoneScreen-BqHYoNzR.js +1 -0
- package/dist/cjs/LoginFailedScreen-D0WLbTBb.js +1 -0
- package/dist/cjs/ManualTransferScreen-CRJmPuoR.js +1 -0
- package/dist/cjs/MfaAuthEnrollmentFlowScreen-BOZc_N-x.js +1 -0
- package/dist/cjs/MfaAuthVerifyFlowScreen-CN0qs3DP.js +1 -0
- package/dist/cjs/MfaEnrollmentFlowScreen-BpP8OUm7.js +1 -0
- package/dist/cjs/MfaVerifyFlowScreen-B8ij23uJ.js +1 -0
- package/dist/cjs/{ModalHeader-CabvEpAG.js → ModalHeader-CSz_JC8Q.js} +18 -12
- package/dist/cjs/MoonpayStatusScreen-CBADlt11.js +16 -0
- package/dist/cjs/OAuthStatusScreen-DQ5Tw8M1.js +1 -0
- package/dist/cjs/PasskeySelectSignupOrLogin-DsjVGCMc.js +1 -0
- package/dist/cjs/PasskeyStatusScreen-l2rYZ1IG.js +3 -0
- package/dist/cjs/PasswordRecoveryScreen-V3DheMKe.js +20 -0
- package/dist/cjs/{QrCode-B5K0VLPw.js → QrCode-CeAi1LRZ.js} +1 -1
- package/dist/cjs/RecoveryOAuthStatusScreen-tu_yyjoG.js +1 -0
- package/dist/cjs/RecoveryPasswordCreateScreen-Z7ucSNLS.js +1 -0
- package/dist/cjs/{RecoverySelectionScreen-C2tuntn9.js → RecoverySelectionScreen-DWqGXp3l.js} +2 -2
- package/dist/cjs/{Screen-BXzBiTIN.js → Screen-D6ig-IDr.js} +20 -10
- package/dist/cjs/ScreenLayout-Dkt0mrht.js +1 -0
- package/dist/cjs/{SetAutomaticRecoveryScreen-DDVOX064.js → SetAutomaticRecoveryScreen-DHNuiSgK.js} +2 -2
- package/dist/cjs/{SetWalletPasswordForm-CjifRxS3.js → SetWalletPasswordForm-R9Somnyp.js} +2 -2
- package/dist/cjs/{SignRequestScreen-B6fS5qTS.js → SignRequestScreen-ZokQxsYU.js} +2 -2
- package/dist/cjs/{StandardSignAndSendTransactionScreen-B5BX6LFZ.js → StandardSignAndSendTransactionScreen-wTGPTlgg.js} +2 -2
- package/dist/cjs/TelegramAuthScreen-BFDvy3uz.js +1 -0
- package/dist/cjs/{TransactionDetails-CGZ0hDXd.js → TransactionDetails-ddaXz8YV.js} +1 -1
- package/dist/cjs/{TransactionErrorView-C5-4kCDL.js → TransactionErrorView-CrjFmgNv.js} +5 -5
- package/dist/cjs/{TransferFromWalletScreen-Be_N5MeO.js → TransferFromWalletScreen-Rt6vEVf4.js} +2 -2
- package/dist/cjs/{TransferOrBridgeLoadingScreen-BGp5x3h8.js → TransferOrBridgeLoadingScreen-Dp_vpEYG.js} +2 -2
- package/dist/cjs/UpdateEmailScreen-6gNNAUvB.js +1 -0
- package/dist/cjs/UpdatePhoneScreen-C7qjXMNn.js +1 -0
- package/dist/cjs/UserLimitReachedScreen-DWgXgQyy.js +1 -0
- package/dist/cjs/{WalletInfoCard-BYZGsWwj.js → WalletInfoCard-CO7fOCNd.js} +4 -4
- package/dist/cjs/WalletInterstitialScreen-C05fMGUR.js +1 -0
- package/dist/cjs/{WalletLink-Bj02lEf9.js → WalletLink-Bldwftgh.js} +5 -5
- package/dist/cjs/{WalletOverflowButton-p3vpo0QR.js → WalletOverflowButton-D6xV7e4O.js} +1 -1
- package/dist/cjs/abstract-smart-wallets.js +1 -1
- package/dist/cjs/{context-CuNnvCIL.js → context-6PrkFAzG.js} +1 -1
- package/dist/cjs/{ethers-C_dhPYcC.js → ethers-_hdpXGqQ.js} +1 -1
- package/dist/cjs/extended-chains.js +1 -1
- package/dist/cjs/{get-is-unified-wallet-C2yi08Zy.js → get-is-unified-wallet-Cd_IhZS9.js} +1 -1
- package/dist/cjs/{getErc20Balance-CJvcxOe9.js → getErc20Balance-D2jXMvJ8.js} +1 -1
- package/dist/cjs/{getErc20TokenInfo-DqY-nDYo.js → getErc20TokenInfo-DxDd_HN6.js} +1 -1
- package/dist/cjs/{index-CKUeuhfu.js → index-BlUF144d.js} +1 -1
- package/dist/cjs/index-CaGJR6Wm.js +174 -0
- package/dist/cjs/{index-TUET0BYX.js → index-rArQaM8n.js} +3 -3
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/internal.js +1 -1
- package/dist/cjs/{shared-AII0g-d1.js → shared-hn3VMWc8.js} +1 -1
- package/dist/cjs/{shouldProceedtoEmbeddedWalletCreationFlow-DE4oGpYl.js → shouldProceedtoEmbeddedWalletCreationFlow-KizljXLw.js} +1 -1
- package/dist/cjs/{smart-wallets-BypZdOsC.js → smart-wallets-B7Oeb874.js} +1 -1
- package/dist/cjs/smart-wallets.js +1 -1
- package/dist/cjs/solana.js +1 -1
- package/dist/cjs/{styles-D7QQZERY.js → styles-Dthqo7lh.js} +4 -4
- package/dist/cjs/{to-ui-error-DNNop_FY.js → to-ui-error-DfSSp7Nk.js} +2 -2
- package/dist/cjs/ui.js +40 -40
- package/dist/cjs/{use-export-wallet-B7CUqWdP.js → use-export-wallet-Ce_CCutn.js} +1 -1
- package/dist/cjs/use-export-wallet-DZ-GzASy.js +1 -0
- package/dist/cjs/{useActiveWallet-D5qqs3GS.js → useActiveWallet-B-qt_lhr.js} +1 -1
- package/dist/cjs/{useGetTokenPrice-BRQnbdi2.js → useGetTokenPrice-C8Me29xD.js} +1 -1
- package/dist/cjs/{useI18n-DKrZl8KW.js → useI18n-Bffg27Cp.js} +1 -1
- package/dist/cjs/{usePrivy-BKHhRZMn.js → usePrivy-CLwa9i8X.js} +1 -1
- package/dist/cjs/{useSolanaRpcClient-DXykrMtX.js → useSolanaRpcClient-COyhHAzq.js} +1 -1
- package/dist/cjs/{useWallets-CP2-zXxW.js → useWallets-C3RaxJM1.js} +1 -1
- package/dist/cjs/{useWallets-Bv9SU-di.js → useWallets-DMj2ztZn.js} +1 -1
- package/dist/dts/{events-context-CV9PiG6M.d.ts → events-context-JU6EgMXK.d.mts} +1 -1
- package/dist/dts/{events-context-CV9PiG6M.d.mts → events-context-JU6EgMXK.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 +27 -7
- package/dist/dts/index.d.ts +27 -7
- 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-xIUh0rN4.d.mts → types-BVn8nTiQ.d.mts} +48 -2
- package/dist/dts/{types-xIUh0rN4.d.ts → types-BVn8nTiQ.d.ts} +48 -2
- package/dist/dts/ui.d.mts +1 -1
- package/dist/dts/ui.d.ts +1 -1
- package/dist/esm/AccountNotFoundScreen-C2pbqBG5.mjs +1 -0
- package/dist/esm/{Address-BmCgxKQR.mjs → Address-BUuQgiKx.mjs} +1 -1
- package/dist/esm/AffirmativeConsentScreen-Dzep5iOm.mjs +6 -0
- package/dist/esm/AllowlistRejectionScreen-BsdZulEI.mjs +1 -0
- package/dist/esm/AuthenticateWithWalletScreen-CsJMj128.mjs +1 -0
- package/dist/esm/AwaitingEvmToSolBridgingScreen-DLbhkxwX.mjs +2 -0
- package/dist/esm/AwaitingExternalEthereumTransferScreen-DnC6EHU3.mjs +2 -0
- package/dist/esm/AwaitingPasswordlessCodeScreen-C7ijDazf.mjs +103 -0
- package/dist/esm/AwaitingSolToEvmBridgingScreen-Dyj2FHsc.mjs +2 -0
- package/dist/esm/{BridgeNetworkSelectionView-tyz86GlM.mjs → BridgeNetworkSelectionView-BxMqN8K9.mjs} +2 -2
- package/dist/esm/CaptchaScreen-whJmro23.mjs +1 -0
- package/dist/esm/CoinbaseOnrampStatusScreen-BUQ33EPn.mjs +16 -0
- package/dist/esm/ConnectEmailForm-7WKXyLIX.mjs +3 -0
- package/dist/esm/ConnectLedgerScreen-0KV09asJ.mjs +9 -0
- package/dist/esm/ConnectOnlyLandingScreen-zmLwJak1.mjs +1 -0
- package/dist/esm/ConnectOnlyStatusScreen-1icMWuif.mjs +1 -0
- package/dist/esm/ConnectOrCreateScreen-2TykrLcn.mjs +1 -0
- package/dist/esm/{ConnectPhoneForm-nVYECWzo.mjs → ConnectPhoneForm-Bww6OFqd.mjs} +1 -1
- package/dist/esm/ConnectWalletView-DQNMKorC.mjs +147 -0
- package/dist/esm/ConnectionStatusScreen-VsYDFXuf.mjs +7 -0
- package/dist/esm/CopyToClipboard-DSTf_eKU.mjs +39 -0
- package/dist/esm/CopyableText-BCytXyJL.mjs +23 -0
- package/dist/esm/CrossAppAuthScreen-C--90PAJ.mjs +1 -0
- package/dist/esm/{CustomLandingScreenView-B4a5Rc9z.mjs → CustomLandingScreenView-By1LM9_0.mjs} +4 -4
- package/dist/esm/DelegatedActionsConsentScreen-8g9H15c_.mjs +1 -0
- package/dist/esm/DelegatedActionsRevokeScreen-zc8PZT7I.mjs +1 -0
- package/dist/esm/EmbeddedWalletConnectingScreen-BGVioYgV.mjs +1 -0
- package/dist/esm/EmbeddedWalletCreatedScreen-Mhhj67RG.mjs +1 -0
- package/dist/esm/{EmbeddedWalletKeyExportScreen-B-6Lfc6D.mjs → EmbeddedWalletKeyExportScreen-yqPvQfdO.mjs} +3 -3
- package/dist/esm/EmbeddedWalletOnAccountCreateScreen-BOhuDYCL.mjs +1 -0
- package/dist/esm/EmbeddedWalletPasswordUpdateScreen-X518ZR44.mjs +1 -0
- package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-DC4MfkYK.mjs +1 -0
- package/dist/esm/{EnrollTotp-D6VGtjIL.mjs → EnrollTotp-BcCG_2JB.mjs} +5 -5
- package/dist/esm/ErrorScreen-CfvFq4SG.mjs +4 -0
- package/dist/esm/{FarcasterConnectStatusScreen-BN_wRxNV.mjs → FarcasterConnectStatusScreen-BOCl_7jx.mjs} +6 -6
- package/dist/esm/FarcasterSignerStatusScreen-u4I-WK_R.mjs +28 -0
- package/dist/esm/FundSolWalletWithExternalSolanaWallet-BUIK74Vs.mjs +1 -0
- package/dist/esm/{FundWalletMethodHeader-Ce0vLrUa.mjs → FundWalletMethodHeader-CIBx6zhp.mjs} +1 -1
- package/dist/esm/FundWithBankDepositScreen-3QErhg-G.mjs +175 -0
- package/dist/esm/FundingEditAmountScreen-BgoXDEQJ.mjs +1 -0
- package/dist/esm/FundingMethodSelectionScreen-DtehXUD4.mjs +1 -0
- package/dist/esm/InAppBrowserLoginNotPossible-CQh8AsKB.mjs +1 -0
- package/dist/esm/{InfoBanner-Dk1KghcK.mjs → InfoBanner-DkQEPd77.mjs} +7 -4
- package/dist/esm/InstallWalletScreen-DM3c8LSP.mjs +1 -0
- package/dist/esm/LandingScreen-YPDnWhWL.mjs +1 -0
- package/dist/esm/{LinkConflictScreen-B-yRqIRn.mjs → LinkConflictScreen-hKT_zmu4.mjs} +3 -3
- package/dist/esm/LinkEmailScreen-Df1znKnY.mjs +1 -0
- package/dist/esm/{LinkPasskeyScreen-BfGROb2f.mjs → LinkPasskeyScreen-bcve9Yp2.mjs} +5 -5
- package/dist/esm/LinkPhoneScreen-o7rW47jd.mjs +1 -0
- package/dist/esm/LoginFailedScreen-C0I8TCwN.mjs +1 -0
- package/dist/esm/ManualTransferScreen-BvZ-uUht.mjs +1 -0
- package/dist/esm/MfaAuthEnrollmentFlowScreen-DK5SBNG1.mjs +1 -0
- package/dist/esm/MfaAuthVerifyFlowScreen-uFMuo7rY.mjs +1 -0
- package/dist/esm/MfaEnrollmentFlowScreen-D5btQxJc.mjs +1 -0
- package/dist/esm/MfaVerifyFlowScreen-DJVq1as_.mjs +1 -0
- package/dist/esm/{ModalHeader-CvLNEZ0F.mjs → ModalHeader-D0p4fONI.mjs} +31 -25
- package/dist/esm/MoonpayStatusScreen-Cfm8Qiby.mjs +16 -0
- package/dist/esm/OAuthStatusScreen-5eCQuPjc.mjs +1 -0
- package/dist/esm/PasskeySelectSignupOrLogin-Cv5Q8ywD.mjs +1 -0
- package/dist/esm/PasskeyStatusScreen-BvG8ib-c.mjs +3 -0
- package/dist/esm/PasswordRecoveryScreen-DxqMp8Jc.mjs +20 -0
- package/dist/esm/{QrCode-AKgpho6r.mjs → QrCode-DZulv1E7.mjs} +1 -1
- package/dist/esm/RecoveryOAuthStatusScreen-CAgXyVJk.mjs +1 -0
- package/dist/esm/RecoveryPasswordCreateScreen-DKt0Ntjx.mjs +1 -0
- package/dist/esm/{RecoverySelectionScreen-CJG-J3Aj.mjs → RecoverySelectionScreen-DCrjjtfj.mjs} +2 -2
- package/dist/esm/{Screen-DnEl8dVF.mjs → Screen-BVipC9vr.mjs} +21 -11
- package/dist/esm/ScreenLayout-jvcCZKF1.mjs +1 -0
- package/dist/esm/{SetAutomaticRecoveryScreen-CXNCqRU4.mjs → SetAutomaticRecoveryScreen-BfeoWlEq.mjs} +1 -1
- package/dist/esm/{SetWalletPasswordForm-Bns8qtXn.mjs → SetWalletPasswordForm-A8PITZIA.mjs} +4 -4
- package/dist/esm/{SignRequestScreen-7t8KCRXP.mjs → SignRequestScreen-BeJ09qE0.mjs} +4 -4
- package/dist/esm/{StandardSignAndSendTransactionScreen-BIJeFjT1.mjs → StandardSignAndSendTransactionScreen-D7QXH5p4.mjs} +2 -2
- package/dist/esm/TelegramAuthScreen-I0g5mHaE.mjs +1 -0
- package/dist/esm/{TransactionDetails-DhYW2qjK.mjs → TransactionDetails-JIdNJKup.mjs} +4 -4
- package/dist/esm/{TransactionErrorView-DtnhZ5P5.mjs → TransactionErrorView-UHPbTcc8.mjs} +8 -8
- package/dist/esm/{TransferFromWalletScreen-BdIo62Cg.mjs → TransferFromWalletScreen-DtSbt6rX.mjs} +3 -3
- package/dist/esm/{TransferOrBridgeLoadingScreen-C9hX5Ost.mjs → TransferOrBridgeLoadingScreen-bbU-Tw1f.mjs} +1 -1
- package/dist/esm/UpdateEmailScreen-B4t4yIw5.mjs +1 -0
- package/dist/esm/UpdatePhoneScreen-BeYLqIY0.mjs +1 -0
- package/dist/esm/UserLimitReachedScreen-Bj4M7xcN.mjs +1 -0
- package/dist/esm/{WalletInfoCard-CVCh-Z5E.mjs → WalletInfoCard-B-r0es4h.mjs} +2 -2
- package/dist/esm/WalletInterstitialScreen-CWc04MMh.mjs +1 -0
- package/dist/esm/{WalletLink-xufwYyQh.mjs → WalletLink-DlGvmqW7.mjs} +1 -1
- package/dist/esm/{WalletOverflowButton-qXN0KcGe.mjs → WalletOverflowButton-DHr4glN7.mjs} +1 -1
- package/dist/esm/abstract-smart-wallets.mjs +1 -1
- package/dist/esm/context-Drt9FC1y.mjs +1 -0
- package/dist/esm/{ethers-DGsvPPEp.mjs → ethers-UlIaNUWW.mjs} +1 -1
- package/dist/esm/extended-chains.mjs +1 -1
- package/dist/esm/get-is-unified-wallet-BC-7_b8O.mjs +1 -0
- package/dist/esm/{getErc20Balance-D0MGUaOw.mjs → getErc20Balance-DA4dGV9O.mjs} +1 -1
- package/dist/esm/{getErc20TokenInfo-CZJTqd4c.mjs → getErc20TokenInfo-1Q6w1Ibq.mjs} +1 -1
- package/dist/esm/{index-BMpFxPbi.mjs → index-B7hLnfAQ.mjs} +1 -1
- package/dist/esm/index-BZ6FAPh7.mjs +174 -0
- package/dist/esm/{index--X7RfrXS.mjs → index-Df3Phxz2.mjs} +3 -3
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/internal.mjs +1 -1
- package/dist/esm/{shared-CSN6-8CF.mjs → shared-BpuV-mxk.mjs} +1 -1
- package/dist/esm/{shouldProceedtoEmbeddedWalletCreationFlow-BdpCzEJT.mjs → shouldProceedtoEmbeddedWalletCreationFlow-COZ-_baJ.mjs} +1 -1
- package/dist/esm/{smart-wallets-DjBZWleC.mjs → smart-wallets-EqV3QCuS.mjs} +1 -1
- package/dist/esm/smart-wallets.mjs +1 -1
- package/dist/esm/solana.mjs +1 -1
- package/dist/esm/{styles-aArPlAod.mjs → styles-Dl341B8G.mjs} +15 -15
- package/dist/esm/{to-ui-error-DKeOToXI.mjs → to-ui-error-DvLMlZKC.mjs} +2 -2
- package/dist/esm/ui.mjs +16 -16
- package/dist/esm/use-export-wallet-BlKa-i97.mjs +1 -0
- package/dist/esm/{use-export-wallet-BcHSx5WT.mjs → use-export-wallet-CqWaIkKU.mjs} +1 -1
- package/dist/esm/{useActiveWallet-36SuARye.mjs → useActiveWallet-DGV02YBT.mjs} +1 -1
- package/dist/esm/useGetTokenPrice-CyEyHBvW.mjs +1 -0
- package/dist/esm/{useI18n-CbESkJQ7.mjs → useI18n-De-HiNn7.mjs} +1 -1
- package/dist/esm/usePrivy-pdKy_IjS.mjs +1 -0
- package/dist/esm/{useSolanaRpcClient-DajzMnxc.mjs → useSolanaRpcClient-DlKLUp1h.mjs} +1 -1
- package/dist/esm/{useWalletBalance-BDrbQBDX.mjs → useWalletBalance-CDyi5_iR.mjs} +1 -1
- package/dist/esm/{useWallets-BwdySlks.mjs → useWallets-BAZolsyf.mjs} +1 -1
- package/dist/esm/{useWallets-02TRgRMN.mjs → useWallets-CV3WTwML.mjs} +1 -1
- package/package.json +4 -3
- package/dist/cjs/AccountNotFoundScreen-iNQ-eJ82.js +0 -1
- package/dist/cjs/AffirmativeConsentScreen-Ba1XAxqh.js +0 -6
- package/dist/cjs/AllowlistRejectionScreen-CMZahkkw.js +0 -1
- package/dist/cjs/AuthenticateWithWalletScreen-BpfHRQ17.js +0 -1
- package/dist/cjs/AwaitingEvmToSolBridgingScreen-BWaBsau9.js +0 -2
- package/dist/cjs/AwaitingExternalEthereumTransferScreen-DN7h9ETe.js +0 -2
- package/dist/cjs/AwaitingPasswordlessCodeScreen-D2KbYvKF.js +0 -103
- package/dist/cjs/AwaitingSolToEvmBridgingScreen-C06q4jjQ.js +0 -2
- package/dist/cjs/CaptchaScreen-Bj5yik5Q.js +0 -1
- package/dist/cjs/CoinbaseOnrampStatusScreen-CP5PYZBV.js +0 -16
- package/dist/cjs/ConnectLedgerScreen-BazfRtiX.js +0 -9
- package/dist/cjs/ConnectOnlyLandingScreen-CsbSt3la.js +0 -1
- package/dist/cjs/ConnectOnlyStatusScreen-5aAg7ONz.js +0 -1
- package/dist/cjs/ConnectOrCreateScreen-C0t-tK0s.js +0 -1
- package/dist/cjs/ConnectWalletView-EuTf-6Vt.js +0 -171
- package/dist/cjs/ConnectionStatusScreen-BL6n6Ct-.js +0 -7
- package/dist/cjs/CopyToClipboard-BCe_l6_D.js +0 -39
- package/dist/cjs/CrossAppAuthScreen-fjiTzpoh.js +0 -1
- package/dist/cjs/DelegatedActionsConsentScreen-C2DG4aoM.js +0 -1
- package/dist/cjs/DelegatedActionsRevokeScreen-CCr2Kw57.js +0 -1
- package/dist/cjs/EmbeddedWalletConnectingScreen-BW3TLACZ.js +0 -1
- package/dist/cjs/EmbeddedWalletCreatedScreen-yTh0CETA.js +0 -1
- package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-BJ9tuKSI.js +0 -1
- package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-C3Pu2FvV.js +0 -1
- package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-Dzvq3GAs.js +0 -1
- package/dist/cjs/ErrorScreen-Dbie0wkk.js +0 -4
- package/dist/cjs/FarcasterSignerStatusScreen-CTZRoFL3.js +0 -29
- package/dist/cjs/FundSolWalletWithExternalSolanaWallet-Czi1l_qS.js +0 -2
- package/dist/cjs/FundingEditAmountScreen-xtC8kXZ9.js +0 -1
- package/dist/cjs/FundingMethodSelectionScreen-CwORHNKY.js +0 -1
- package/dist/cjs/InAppBrowserLoginNotPossible-D9m4nJvR.js +0 -1
- package/dist/cjs/InstallWalletScreen-D2iE62NY.js +0 -1
- package/dist/cjs/LandingScreen-Cclv1lfx.js +0 -1
- package/dist/cjs/LinkEmailScreen-DaTzx7Fk.js +0 -1
- package/dist/cjs/LinkPhoneScreen-Den2l7u5.js +0 -1
- package/dist/cjs/LoginFailedScreen-CG5VpqB1.js +0 -1
- package/dist/cjs/ManualTransferScreen-QVz0bbM4.js +0 -1
- package/dist/cjs/MfaAuthEnrollmentFlowScreen-CgEdqCAi.js +0 -1
- package/dist/cjs/MfaAuthVerifyFlowScreen-BmhIWVUg.js +0 -1
- package/dist/cjs/MfaEnrollmentFlowScreen-BSALpHSu.js +0 -1
- package/dist/cjs/MfaVerifyFlowScreen-NBi3M6EX.js +0 -1
- package/dist/cjs/MoonpayStatusScreen-DQCYOZ0M.js +0 -16
- package/dist/cjs/OAuthStatusScreen-Dzo0z0tK.js +0 -1
- package/dist/cjs/PasskeySelectSignupOrLogin-D6KxIann.js +0 -1
- package/dist/cjs/PasskeyStatusScreen-DfcsZHZm.js +0 -3
- package/dist/cjs/PasswordRecoveryScreen-DfpNr526.js +0 -20
- package/dist/cjs/RecoveryOAuthStatusScreen-CaoYW19J.js +0 -1
- package/dist/cjs/RecoveryPasswordCreateScreen-BEEpGGv7.js +0 -1
- package/dist/cjs/ScreenLayout-SSjax2iq.js +0 -1
- package/dist/cjs/TelegramAuthScreen-CrpOhr2m.js +0 -1
- package/dist/cjs/UpdateEmailScreen-GKUeQDLE.js +0 -1
- package/dist/cjs/UpdatePhoneScreen-BUA9FZ9k.js +0 -1
- package/dist/cjs/UserLimitReachedScreen-ByQxJS_K.js +0 -1
- package/dist/cjs/WalletInterstitialScreen-t0tp0uiQ.js +0 -1
- package/dist/cjs/copy-BiZ7dtqy.js +0 -1
- package/dist/cjs/index-DyCLWLpL.js +0 -174
- package/dist/cjs/use-export-wallet-COKs2yxH.js +0 -1
- package/dist/esm/AccountNotFoundScreen-Dty9AII6.mjs +0 -1
- package/dist/esm/AffirmativeConsentScreen-CZ3QtNmP.mjs +0 -6
- package/dist/esm/AllowlistRejectionScreen-DUd4GJIK.mjs +0 -1
- package/dist/esm/AuthenticateWithWalletScreen-Fa-n1Sey.mjs +0 -1
- package/dist/esm/AwaitingEvmToSolBridgingScreen-DCpcHpQX.mjs +0 -2
- package/dist/esm/AwaitingExternalEthereumTransferScreen-D1V2_vDk.mjs +0 -2
- package/dist/esm/AwaitingPasswordlessCodeScreen-DGAxwdL6.mjs +0 -103
- package/dist/esm/AwaitingSolToEvmBridgingScreen-B6Xv92AB.mjs +0 -2
- package/dist/esm/CaptchaScreen-BL1nWi7c.mjs +0 -1
- package/dist/esm/CoinbaseOnrampStatusScreen-DhIZ3gwP.mjs +0 -16
- package/dist/esm/ConnectEmailForm-DvQJmoTc.mjs +0 -3
- package/dist/esm/ConnectLedgerScreen-CURsQoYz.mjs +0 -9
- package/dist/esm/ConnectOnlyLandingScreen-CBjbbuDg.mjs +0 -1
- package/dist/esm/ConnectOnlyStatusScreen-VM7nNu6X.mjs +0 -1
- package/dist/esm/ConnectOrCreateScreen-8FxDiOyl.mjs +0 -1
- package/dist/esm/ConnectWalletView-BXqs6pWG.mjs +0 -171
- package/dist/esm/ConnectionStatusScreen-SAx7YO5y.mjs +0 -7
- package/dist/esm/CopyToClipboard-BGTSFnT3.mjs +0 -39
- package/dist/esm/CrossAppAuthScreen-V6LW9fie.mjs +0 -1
- package/dist/esm/DelegatedActionsConsentScreen-0_shAgnh.mjs +0 -1
- package/dist/esm/DelegatedActionsRevokeScreen-olNf5JQw.mjs +0 -1
- package/dist/esm/EmbeddedWalletConnectingScreen-Dleo6nTw.mjs +0 -1
- package/dist/esm/EmbeddedWalletCreatedScreen-Dx0eaEaV.mjs +0 -1
- package/dist/esm/EmbeddedWalletOnAccountCreateScreen-DbiGNXpt.mjs +0 -1
- package/dist/esm/EmbeddedWalletPasswordUpdateScreen-fA9JGXuz.mjs +0 -1
- package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-CTPO_C5V.mjs +0 -1
- package/dist/esm/ErrorScreen-Ba4Ml9CI.mjs +0 -4
- package/dist/esm/FarcasterSignerStatusScreen-B8IyPJhe.mjs +0 -28
- package/dist/esm/FundSolWalletWithExternalSolanaWallet-B3Y84dbg.mjs +0 -1
- package/dist/esm/FundingEditAmountScreen-DeM_ClwN.mjs +0 -1
- package/dist/esm/FundingMethodSelectionScreen-Be8LIw6i.mjs +0 -1
- package/dist/esm/InAppBrowserLoginNotPossible-7kqa69SP.mjs +0 -1
- package/dist/esm/InstallWalletScreen-EfqvUoSZ.mjs +0 -1
- package/dist/esm/LandingScreen-DPaqiLpx.mjs +0 -1
- package/dist/esm/LinkEmailScreen-CQ5mnYS9.mjs +0 -1
- package/dist/esm/LinkPhoneScreen-CVNSbTfD.mjs +0 -1
- package/dist/esm/LoginFailedScreen-B2KtCyAw.mjs +0 -1
- package/dist/esm/ManualTransferScreen-C2Rl54K3.mjs +0 -1
- package/dist/esm/MfaAuthEnrollmentFlowScreen-D6ujM0kh.mjs +0 -1
- package/dist/esm/MfaAuthVerifyFlowScreen-zG9ps8-7.mjs +0 -1
- package/dist/esm/MfaEnrollmentFlowScreen-gELi8Ppl.mjs +0 -1
- package/dist/esm/MfaVerifyFlowScreen-6eccLZxg.mjs +0 -1
- package/dist/esm/MoonpayStatusScreen-u9OjnVb2.mjs +0 -16
- package/dist/esm/OAuthStatusScreen-C4KNGm-v.mjs +0 -1
- package/dist/esm/PasskeySelectSignupOrLogin-DM959Ikc.mjs +0 -1
- package/dist/esm/PasskeyStatusScreen-BfUHTu2T.mjs +0 -3
- package/dist/esm/PasswordRecoveryScreen-BnkB7Xwe.mjs +0 -20
- package/dist/esm/RecoveryOAuthStatusScreen-DaP1Oh1u.mjs +0 -1
- package/dist/esm/RecoveryPasswordCreateScreen-B-dLBQVH.mjs +0 -1
- package/dist/esm/ScreenLayout-kyRBwF5n.mjs +0 -1
- package/dist/esm/TelegramAuthScreen-D-cJY_dj.mjs +0 -1
- package/dist/esm/UpdateEmailScreen-0TGU13Qv.mjs +0 -1
- package/dist/esm/UpdatePhoneScreen-C7fQ2ohl.mjs +0 -1
- package/dist/esm/UserLimitReachedScreen-dLjGUBN-.mjs +0 -1
- package/dist/esm/WalletInterstitialScreen-C8UPLmif.mjs +0 -1
- package/dist/esm/context-CwMpvKNV.mjs +0 -1
- package/dist/esm/copy-Bx2Jwc5_.mjs +0 -1
- package/dist/esm/get-is-unified-wallet-C6sEzDpG.mjs +0 -1
- package/dist/esm/index-C47JxA4c.mjs +0 -174
- package/dist/esm/use-export-wallet-CwQ5-CS4.mjs +0 -1
- package/dist/esm/useGetTokenPrice-CgGm0Ecu.mjs +0 -1
- package/dist/esm/usePrivy-D_kd_mMH.mjs +0 -1
|
@@ -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-6PrkFAzG.js"),i=require("react/jsx-runtime"),a=require("react"),o=require("viem/utils"),s=require("./get-is-unified-wallet-Cd_IhZS9.js"),l=require("./useWallets-DMj2ztZn.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"};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,4 +1,4 @@
|
|
|
1
|
-
"use strict";var e=require("react"),t=require("zustand"),n=require("./context-CuNnvCIL.js"),r=require("styled-components"),i=require("react/jsx-runtime"),o=require("react-device-detect"),l=require("./use-export-wallet-COKs2yxH.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-C2yi08Zy.js"),h=require("./useWallets-Bv9SU-di.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-6PrkFAzG.js"),r=require("styled-components"),i=require("react/jsx-runtime"),o=require("react-device-detect"),l=require("./use-export-wallet-DZ-GzASy.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-Cd_IhZS9.js"),h=require("./useWallets-DMj2ztZn.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-6PrkFAzG.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-6PrkFAzG.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-DZ-GzASy.js"),a=require("./get-is-unified-wallet-Cd_IhZS9.js"),o=require("./events-context-Di6--rDg.js"),i=require("@privy-io/js-sdk-core"),l=require("./useWallets-DMj2ztZn.js"),s=require("./context-6PrkFAzG.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-6PrkFAzG.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("@solana/kit"),t=require("react"),n=require("@privy-io/js-sdk-core"),i=require("./internal-context-BJv4f_bO.js"),s=require("./get-is-unified-wallet-C2yi08Zy.js"),a=require("./usePrivy-BKHhRZMn.js"),r=require("./useWallets-Bv9SU-di.js"),o=require("eventemitter3"),l=require("@scure/base"),d=require("./context-CuNnvCIL.js"),c=require("./use-sign-with-user-signer-Cu_6Bx7m.js"),u=require("./useSolanaRpcClient-DXykrMtX.js"),g=require("./use-export-wallet-COKs2yxH.js");function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var p=/*#__PURE__*/h(o);const y=["solana:mainnet","solana:devnet","solana:testnet"];function f(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var v=0,A="__private_"+v+++"__implementation";class w extends p.default{setImplementation(e){f(this,A)[A]=e}async signMessage(e){return f(this,A)[A].signMessage(e)}async signAndSendTransaction(e){return f(this,A)[A].signAndSendTransaction(e)}async signTransaction(e){return f(this,A)[A].signTransaction(e)}constructor(e){super(),Object.defineProperty(this,A,{writable:!0,value:void 0}),f(this,A)[A]=e}}function E(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var T=0;function b(e){return"__private_"+T+++"_"+e}var m=/*#__PURE__*/b("_address"),S=/*#__PURE__*/b("_publicKey"),P=/*#__PURE__*/b("_chains"),O=/*#__PURE__*/b("_features"),W=/*#__PURE__*/b("_label"),I=/*#__PURE__*/b("_icon");class C{get address(){return E(this,m)[m]}get publicKey(){return E(this,S)[S].slice()}get chains(){return E(this,P)[P].slice()}get features(){return E(this,O)[O].slice()}get label(){return E(this,W)[W]}get icon(){return E(this,I)[I]}constructor({address:e,publicKey:t,label:n,icon:i}){Object.defineProperty(this,m,{writable:!0,value:void 0}),Object.defineProperty(this,S,{writable:!0,value:void 0}),Object.defineProperty(this,P,{writable:!0,value:void 0}),Object.defineProperty(this,O,{writable:!0,value:void 0}),Object.defineProperty(this,W,{writable:!0,value:void 0}),Object.defineProperty(this,I,{writable:!0,value:void 0}),E(this,m)[m]=e,E(this,S)[S]=t,E(this,P)[P]=y,E(this,W)[W]=n,E(this,I)[I]=i,E(this,O)[O]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],new.target===C&&Object.freeze(this)}}function _(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var M=0;function j(e){return"__private_"+M+++"_"+e}var F=/*#__PURE__*/j("_listeners"),U=/*#__PURE__*/j("_version"),D=/*#__PURE__*/j("_name"),N=/*#__PURE__*/j("_icon"),B=/*#__PURE__*/j("_injection"),x=/*#__PURE__*/j("_isPrivyWallet"),R=/*#__PURE__*/j("_accounts"),L=/*#__PURE__*/j("_on"),V=/*#__PURE__*/j("_emit"),q=/*#__PURE__*/j("_off"),Q=/*#__PURE__*/j("_connected"),G=/*#__PURE__*/j("_connect"),H=/*#__PURE__*/j("_disconnect"),K=/*#__PURE__*/j("_signMessage"),J=/*#__PURE__*/j("_signAndSendTransaction"),Y=/*#__PURE__*/j("_signTransaction");function k(e,...t){_(this,F)[F][e]?.forEach((e=>e.apply(null,t)))}function Z(e,t){_(this,F)[F][e]=_(this,F)[F][e]?.filter((e=>t!==e))}function z(t,n,i){let s=structuredClone(e.getTransactionDecoder().decode(t)),a=e.address(n);return a in s.signatures&&(s.signatures[a]=i),new Uint8Array(e.getTransactionEncoder().encode(s))}function X(){let{isHeadlessSigning:e,walletProxy:t,initializeWalletProxy:o,recoverEmbeddedWallet:l,openModal:d,privy:g,client:h}=i.usePrivyInternal(),{user:p}=a.usePrivy(),{setModalData:y}=s.usePrivyModal(),{signWithUserSigner:f}=c.useSignWithUserSigner();return{signMessage:({message:a,address:c,options:v})=>new Promise((async(A,w)=>{let E=s.getPrivyWalletWithAddress(p,c);if("privy"!==E?.walletClientType)return void w(new i.PrivyClientError("Wallet is not a Privy wallet",void 0,i.PrivyErrorCode.EMBEDDED_WALLET_NOT_FOUND));let{entropyId:T,entropyIdVerifier:b}=r.getEntropyDetailsForUser(p,E),m=s.getIsUnifiedWallet(E),S=u.bufferFrom(a).toString("base64");if(S.length<1)return void w(new i.PrivyClientError("Message must be a non-empty string",void 0,i.PrivyErrorCode.INVALID_MESSAGE));let P=async()=>{let e;if(!p)throw Error("User must be authenticated before signing with a Privy wallet");let i=await h.getAccessToken();if(!i)throw Error("User must be authenticated to use their embedded wallet.");let s=t??await o(15e3);if(!s)throw Error("Failed to initialize embedded wallet proxy.");if(!await l({address:E.address}))throw Error("Unable to connect to wallet");if(m){let t=await n.rpc(g,f,{chain_type:"solana",method:"signMessage",params:{message:S,encoding:"base64"},wallet_id:E.id});if(!t.data||!("signature"in t.data))throw Error("Failed to sign message");e=t.data.signature}else{let{response:t}=await s.rpc({accessToken:i,entropyId:T,entropyIdVerifier:b,chainType:"solana",hdWalletIndex:E.walletIndex??0,requesterAppId:v?.uiOptions?.requesterAppId,request:{method:"signMessage",params:{message:S}}});e=t.data.signature}return e};if(e({showWalletUIs:v?.uiOptions?.showWalletUIs}))try{let e=await P(),t=new Uint8Array(u.bufferFrom(e,"base64"));A({signature:t})}catch(e){w(e)}else y({signMessage:{method:"solana_signMessage",data:S,confirmAndSign:P,onSuccess:e=>{A({signature:new Uint8Array(u.bufferFrom(e,"base64"))})},onFailure:e=>{w(e)},uiOptions:v?.uiOptions??{}},connectWallet:{recoveryMethod:E.recoveryMethod,connectingWalletAddress:E.address,entropyId:T,entropyIdVerifier:b,isUnifiedWallet:m,onCompleteNavigateTo:"SignRequestScreen",onFailure:e=>{w(new i.PrivyClientError("Failed to connect to wallet",e,i.PrivyErrorCode.UNKNOWN_CONNECT_WALLET_ERROR))}}}),d("EmbeddedWalletConnectingScreen")}))}}function $(){let{isHeadlessSigning:e,openModal:t}=i.usePrivyInternal(),{setModalData:n}=s.usePrivyModal(),{signMessage:o}=X(),{user:l}=a.usePrivy();return{signTransaction:async({transaction:a,options:d,chain:c="solana:mainnet",address:g})=>{async function h(e){let{signature:t}=await o({message:u.getTransactionMessageBytes(e),address:g,options:{...d,uiOptions:{...d?.uiOptions,showWalletUIs:!1}}});return{signedTransaction:z(e,g,t)}}return e({showWalletUIs:d?.uiOptions?.showWalletUIs})?h(a):new Promise((async(e,o)=>{let u=s.getPrivyWalletWithAddress(l,g);if("privy"!==u?.walletClientType)return void o(new i.PrivyClientError("Wallet is not a Privy wallet",void 0,i.PrivyErrorCode.EMBEDDED_WALLET_NOT_FOUND));let{entropyId:p,entropyIdVerifier:y}=r.getEntropyDetailsForUser(l,u),f=s.getIsUnifiedWallet(u);function v(e){return t=>{t instanceof i.PrivyClientError?o(t):o(new i.PrivyClientError("Failed to connect to wallet",t,e))}}let A={account:u,transaction:a,chain:c,signOnly:!0,uiOptions:d?.uiOptions||{},onConfirm:h,onSuccess:e,onFailure:v(i.PrivyErrorCode.TRANSACTION_FAILURE)};n({connectWallet:{recoveryMethod:u.recoveryMethod,connectingWalletAddress:u.address,entropyId:p,entropyIdVerifier:y,isUnifiedWallet:f,onCompleteNavigateTo:"StandardSignAndSendTransactionScreen",onFailure:v(i.PrivyErrorCode.UNKNOWN_CONNECT_WALLET_ERROR)},standardSignAndSendTransaction:A}),t("EmbeddedWalletConnectingScreen")}))}}}let ee=new w({signTransaction:i.notImplementedWithMessage("signTransaction was not injected"),signAndSendTransaction:i.notImplementedWithMessage("signAndSendTransaction was not injected"),signMessage:i.notImplementedWithMessage("signMessage was not injected")}),te=new class{get version(){return _(this,U)[U]}get name(){return _(this,D)[D]}get icon(){return _(this,N)[N]}get chains(){return y.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:_(this,G)[G]},"standard:disconnect":{version:"1.0.0",disconnect:_(this,H)[H]},"standard:events":{version:"1.0.0",on:_(this,L)[L]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:_(this,J)[J]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:_(this,Y)[Y]},"solana:signMessage":{version:"1.0.0",signMessage:_(this,K)[K]},"privy:":{privy:{signMessage:_(this,B)[B].signMessage,signTransaction:_(this,B)[B].signTransaction,signAndSendTransaction:_(this,B)[B].signAndSendTransaction}}}}get accounts(){return _(this,R)[R].slice()}get isPrivyWallet(){return _(this,x)[x]}constructor({name:e,icon:t,version:n,injection:i,wallets:s}){Object.defineProperty(this,V,{value:k}),Object.defineProperty(this,q,{value:Z}),Object.defineProperty(this,F,{writable:!0,value:void 0}),Object.defineProperty(this,U,{writable:!0,value:void 0}),Object.defineProperty(this,D,{writable:!0,value:void 0}),Object.defineProperty(this,N,{writable:!0,value:void 0}),Object.defineProperty(this,B,{writable:!0,value:void 0}),Object.defineProperty(this,x,{writable:!0,value:void 0}),Object.defineProperty(this,R,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),Object.defineProperty(this,Q,{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,K,{writable:!0,value:void 0}),Object.defineProperty(this,J,{writable:!0,value:void 0}),Object.defineProperty(this,Y,{writable:!0,value:void 0}),_(this,F)[F]={},_(this,L)[L]=(e,t)=>(_(this,F)[F][e]?.push(t)||(_(this,F)[F][e]=[t]),()=>_(this,q)[q](e,t)),_(this,Q)[Q]=e=>{null!=e&&(_(this,R)[R]=e.map((({address:e})=>new C({address:e,publicKey:l.base58.decode(e)})))),_(this,V)[V]("change",{accounts:this.accounts})},_(this,G)[G]=async()=>(_(this,V)[V]("change",{accounts:this.accounts}),{accounts:this.accounts}),_(this,H)[H]=async()=>{_(this,V)[V]("change",{accounts:this.accounts})},_(this,K)[K]=async(...e)=>{let t=[];for(let{account:n,...i}of e){let{signature:e}=await _(this,B)[B].signMessage({...i,address:n.address});t.push({signedMessage:i.message,signature:e})}return t},_(this,J)[J]=async(...e)=>{let t=[];for(let n of e){let{signature:e}=await _(this,B)[B].signAndSendTransaction({...n,transaction:n.transaction,address:n.account.address,chain:n.chain||"solana:mainnet",options:n.options});t.push({signature:e})}return t},_(this,Y)[Y]=async(...e)=>{let t=[];for(let{transaction:n,account:i,options:s,chain:a}of e){let{signedTransaction:e}=await _(this,B)[B].signTransaction({transaction:n,address:i.address,chain:a||"solana:mainnet",options:s});t.push({signedTransaction:e})}return t},_(this,D)[D]=e,_(this,N)[N]=t,_(this,U)[U]=n,_(this,B)[B]=i,_(this,R)[R]=[],_(this,x)[x]=!0,i.on("accountChanged",_(this,Q)[Q],this),_(this,Q)[Q](s)}}({name:"Privy",version:"1.0.0",icon:"data:image/png;base64,AAABAAEAFBQAAAAAIABlAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAUAAAAFAgGAAAAjYkdDQAAAAlwSFlzAAAOwwAADsMBx2+oZAAAAQVJREFUeJxiYMANZIC4E4ivAPFPIP4FxDeAuB+IlfDowwBMQFwJxF+B+D8O/AOI66Bq8QJGIF6ExyB0vAqImfEZmEeCYTDcgMswPiB+T4aB34FYApuBsWQYBsP52AycToGBK7EZuJECAw9jM3AVBQbuwWZgIwUGTsZmoDkFBnpiMxAEjpJh2FV8iVsbiD+TYBgoDVrgMgwGnID4HRGGgTKBGyHDYEAaiBdCSxh0g/5AU4Q8sYYhAzEgjoGmABBOgFo2eACowFABYn0oVgViAVINkQTiZUD8DIj/ATF6GILEXgLxCiCWIsZAbiAuBeKtQHwHiEHJ6C8UfwHie0C8E4jLoWpRAAAAAP//rcbhsQAAAAZJREFUAwBYFs3VKJ0cuQAAAABJRU5ErkJggg==",wallets:[],injection:ee});function ne(){let{ready:e}=r.useWallets(),{user:o}=a.usePrivy(),{signMessage:h}=X(),{signTransaction:p}=$(),{signAndSendTransaction:y}=function(){let e=d.useAppConfig(),{isHeadlessSigning:t,openModal:o,privy:h}=i.usePrivyInternal(),{setModalData:p}=s.usePrivyModal(),{signTransaction:y}=$(),f=u.useSolanaRpcClient(),{user:v}=a.usePrivy(),{signWithUserSigner:A}=c.useSignWithUserSigner();return{signAndSendTransaction:async({transaction:a,address:d,chain:c="solana:mainnet",options:w})=>{let E=s.getPrivyWalletWithAddress(v,d);if("privy"!==E?.walletClientType)throw new i.PrivyClientError("Wallet is not a Privy wallet",void 0,i.PrivyErrorCode.EMBEDDED_WALLET_NOT_FOUND);let T=s.getIsUnifiedWallet(E);async function b(e){if(w?.sponsor)return await(async e=>{if(!T)throw new i.PrivyClientError("Sponsoring transactions is only supported for wallets on the TEE stack",i.PrivyErrorCode.INVALID_DATA);let t=await n.rpc(h,A,{chain_type:"solana",method:"signAndSendTransaction",sponsor:!0,params:{transaction:u.bufferFrom(e).toString("base64"),encoding:"base64"},caip2:`solana:${(await f(c).rpc.getGenesisHash().send()).substring(0,32)}`,wallet_id:E.id});if(t.data&&"hash"in t.data)return{signature:l.base58.decode(t.data.hash)};throw Error("Failed to sign and send transaction")})(e);let{signedTransaction:t}=await y({transaction:e,address:d,chain:c,options:{...w,uiOptions:{...w?.uiOptions,showWalletUIs:!1}}}),{signature:s}=await f(c).sendAndConfirmTransaction(t);return{signature:s}}return t({showWalletUIs:w?.uiOptions?.showWalletUIs})?b(a):new Promise((async(t,n)=>{let s,l,{entropyId:u,entropyIdVerifier:h}=r.getEntropyDetailsForUser(v,E);function y(e){return t=>{t instanceof i.PrivyClientError?n(t):n(new i.PrivyClientError("Failed to connect to wallet",t,e))}}let f={account:E,transaction:a,chain:c,signOnly:!1,uiOptions:w?.uiOptions||{},onConfirm:b,onSuccess:t,onFailure:y(i.PrivyErrorCode.TRANSACTION_FAILURE),isSponsored:!!w?.sponsor},A={recoveryMethod:E.recoveryMethod,connectingWalletAddress:E.address,entropyId:u,entropyIdVerifier:h,isUnifiedWallet:T,onCompleteNavigateTo:"StandardSignAndSendTransactionScreen",onFailure:y(i.PrivyErrorCode.UNKNOWN_CONNECT_WALLET_ERROR)};e.fundingConfig&&(s=g.prepareSolanaFundingModalData({address:d,appConfig:e,methodScreen:"FundingMethodSelectionScreen",fundWalletConfig:{...w,asset:"native-currency",chain:c},externalSolanaFundingScreen:"FundSolWalletWithExternalSolanaWallet"}),l={amount:e.fundingConfig.defaultRecommendedAmount,asset:"SOL",chain:c,destinationAddress:d,afterSuccessScreen:"StandardSignAndSendTransactionScreen",sourceWalletData:void 0}),p({connectWallet:A,standardSignAndSendTransaction:f,funding:s,solanaFundingData:l}),o("EmbeddedWalletConnectingScreen")}))}}}(),f=t.useMemo((()=>{let e=[...s.getPrivySolanaHDWallets(o).sort(((e,t)=>(e.walletIndex??0)-(t.walletIndex??0)))],t=s.getImportedPrivySolanaWallets(o);return t.length?[...e,...t]:e}),[o]),v=t.useMemo((()=>({signMessage:async({message:e,address:t,options:n})=>await h({message:e,address:t,options:n}),signTransaction:async({transaction:e,address:t,chain:n,options:i})=>await p({transaction:e,address:t,chain:n,options:i}),async signAndSendTransaction({transaction:e,address:t,chain:n,options:i}){let{signature:s}=await y({transaction:e,address:t,chain:n,options:i});return{signature:s}}})),[h,p,y]);return t.useEffect((()=>{ee?.setImplementation(v)}),[v]),t.useEffect((()=>{var t;!e||(t=te.accounts).length===f.length&&t.every(((e,t)=>e.address===f[t]?.address))||ee?.emit("accountChanged",f)}),[e,f]),{ready:e,wallet:te}}function ie(){let{client:e}=i.usePrivyInternal(),{ready:n,wallet:s}=ne(),[a,r]=t.useState([]),[o,l]=t.useState([]);return t.useEffect((()=>{let e=[s,...a.filter((e=>"solana"===e.chainType&&!!e.wallet.features)).map((e=>e.wallet))];l(e);let t=a.flatMap((t=>{let n=()=>l([...e]);return t.on("walletsUpdated",n),{connector:t,off:n}})),n=e.map((t=>t.features["standard:events"]?.on("change",(()=>{l([...e])}))));return()=>{n.forEach((e=>e?.())),t.forEach((({connector:e,off:t})=>e.off("walletsUpdated",t)))}}),[a]),t.useEffect((()=>{r(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[]);let t=()=>{r(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[])};return e.connectors?.on("connectorInitialized",t),()=>{e.connectors?.off("connectorInitialized",t)}}),[n,e.connectors]),{ready:n,wallets:o}}exports.SOLANA_CHAINS=y,exports.getAddressFromBuffer=function(t){return e.getBase58Decoder().decode(t)},exports.useSolanaStandardWallets=ie,exports.useWallets=function(){let{ready:e,wallets:i}=ie();return{ready:e,wallets:t.useMemo((()=>i.flatMap((e=>e.accounts.map((t=>new n.ConnectedStandardSolanaWallet({wallet:e,account:t})))))),[i])}};
|
|
1
|
+
"use strict";var e=require("@solana/kit"),t=require("react"),n=require("@privy-io/js-sdk-core"),i=require("./internal-context-BJv4f_bO.js"),s=require("./get-is-unified-wallet-Cd_IhZS9.js"),a=require("./usePrivy-CLwa9i8X.js"),r=require("./useWallets-DMj2ztZn.js"),o=require("eventemitter3"),l=require("@scure/base"),d=require("./context-6PrkFAzG.js"),c=require("./use-sign-with-user-signer-Cu_6Bx7m.js"),u=require("./useSolanaRpcClient-COyhHAzq.js"),g=require("./use-export-wallet-DZ-GzASy.js");function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var p=/*#__PURE__*/h(o);const y=["solana:mainnet","solana:devnet","solana:testnet"];function f(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var v=0,A="__private_"+v+++"__implementation";class w extends p.default{setImplementation(e){f(this,A)[A]=e}async signMessage(e){return f(this,A)[A].signMessage(e)}async signAndSendTransaction(e){return f(this,A)[A].signAndSendTransaction(e)}async signTransaction(e){return f(this,A)[A].signTransaction(e)}constructor(e){super(),Object.defineProperty(this,A,{writable:!0,value:void 0}),f(this,A)[A]=e}}function E(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var T=0;function b(e){return"__private_"+T+++"_"+e}var m=/*#__PURE__*/b("_address"),S=/*#__PURE__*/b("_publicKey"),P=/*#__PURE__*/b("_chains"),O=/*#__PURE__*/b("_features"),W=/*#__PURE__*/b("_label"),I=/*#__PURE__*/b("_icon");class C{get address(){return E(this,m)[m]}get publicKey(){return E(this,S)[S].slice()}get chains(){return E(this,P)[P].slice()}get features(){return E(this,O)[O].slice()}get label(){return E(this,W)[W]}get icon(){return E(this,I)[I]}constructor({address:e,publicKey:t,label:n,icon:i}){Object.defineProperty(this,m,{writable:!0,value:void 0}),Object.defineProperty(this,S,{writable:!0,value:void 0}),Object.defineProperty(this,P,{writable:!0,value:void 0}),Object.defineProperty(this,O,{writable:!0,value:void 0}),Object.defineProperty(this,W,{writable:!0,value:void 0}),Object.defineProperty(this,I,{writable:!0,value:void 0}),E(this,m)[m]=e,E(this,S)[S]=t,E(this,P)[P]=y,E(this,W)[W]=n,E(this,I)[I]=i,E(this,O)[O]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],new.target===C&&Object.freeze(this)}}function _(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var M=0;function j(e){return"__private_"+M+++"_"+e}var F=/*#__PURE__*/j("_listeners"),U=/*#__PURE__*/j("_version"),D=/*#__PURE__*/j("_name"),N=/*#__PURE__*/j("_icon"),B=/*#__PURE__*/j("_injection"),x=/*#__PURE__*/j("_isPrivyWallet"),R=/*#__PURE__*/j("_accounts"),L=/*#__PURE__*/j("_on"),V=/*#__PURE__*/j("_emit"),q=/*#__PURE__*/j("_off"),Q=/*#__PURE__*/j("_connected"),H=/*#__PURE__*/j("_connect"),G=/*#__PURE__*/j("_disconnect"),K=/*#__PURE__*/j("_signMessage"),J=/*#__PURE__*/j("_signAndSendTransaction"),Y=/*#__PURE__*/j("_signTransaction");function k(e,...t){_(this,F)[F][e]?.forEach((e=>e.apply(null,t)))}function Z(e,t){_(this,F)[F][e]=_(this,F)[F][e]?.filter((e=>t!==e))}function z(t,n,i){let s=structuredClone(e.getTransactionDecoder().decode(t)),a=e.address(n);return a in s.signatures&&(s.signatures[a]=i),new Uint8Array(e.getTransactionEncoder().encode(s))}function X(){let{isHeadlessSigning:e,walletProxy:t,initializeWalletProxy:o,recoverEmbeddedWallet:l,openModal:d,privy:g,client:h}=i.usePrivyInternal(),{user:p}=a.usePrivy(),{setModalData:y}=s.usePrivyModal(),{signWithUserSigner:f}=c.useSignWithUserSigner();return{signMessage:({message:a,address:c,options:v})=>new Promise((async(A,w)=>{let E=s.getPrivyWalletWithAddress(p,c);if("privy"!==E?.walletClientType)return void w(new i.PrivyClientError("Wallet is not a Privy wallet",void 0,i.PrivyErrorCode.EMBEDDED_WALLET_NOT_FOUND));let{entropyId:T,entropyIdVerifier:b}=r.getEntropyDetailsForUser(p,E),m=s.getIsUnifiedWallet(E),S=u.bufferFrom(a).toString("base64");if(S.length<1)return void w(new i.PrivyClientError("Message must be a non-empty string",void 0,i.PrivyErrorCode.INVALID_MESSAGE));let P=async()=>{let e;if(!p)throw Error("User must be authenticated before signing with a Privy wallet");let i=await h.getAccessToken();if(!i)throw Error("User must be authenticated to use their embedded wallet.");let s=t??await o(15e3);if(!s)throw Error("Failed to initialize embedded wallet proxy.");if(!await l({address:E.address}))throw Error("Unable to connect to wallet");if(m){let t=await n.rpc(g,f,{chain_type:"solana",method:"signMessage",params:{message:S,encoding:"base64"},wallet_id:E.id});if(!t.data||!("signature"in t.data))throw Error("Failed to sign message");e=t.data.signature}else{let{response:t}=await s.rpc({accessToken:i,entropyId:T,entropyIdVerifier:b,chainType:"solana",hdWalletIndex:E.walletIndex??0,requesterAppId:v?.uiOptions?.requesterAppId,request:{method:"signMessage",params:{message:S}}});e=t.data.signature}return e};if(e({showWalletUIs:v?.uiOptions?.showWalletUIs}))try{let e=await P(),t=new Uint8Array(u.bufferFrom(e,"base64"));A({signature:t})}catch(e){w(e)}else y({signMessage:{method:"solana_signMessage",data:S,confirmAndSign:P,onSuccess:e=>{A({signature:new Uint8Array(u.bufferFrom(e,"base64"))})},onFailure:e=>{w(e)},uiOptions:v?.uiOptions??{}},connectWallet:{recoveryMethod:E.recoveryMethod,connectingWalletAddress:E.address,entropyId:T,entropyIdVerifier:b,isUnifiedWallet:m,onCompleteNavigateTo:"SignRequestScreen",onFailure:e=>{w(new i.PrivyClientError("Failed to connect to wallet",e,i.PrivyErrorCode.UNKNOWN_CONNECT_WALLET_ERROR))}}}),d("EmbeddedWalletConnectingScreen")}))}}function $(){let{isHeadlessSigning:e,openModal:t}=i.usePrivyInternal(),{setModalData:n}=s.usePrivyModal(),{signMessage:o}=X(),{user:l}=a.usePrivy();return{signTransaction:async({transaction:a,options:d,chain:c="solana:mainnet",address:g})=>{async function h(e){let{signature:t}=await o({message:u.getTransactionMessageBytes(e),address:g,options:{...d,uiOptions:{...d?.uiOptions,showWalletUIs:!1}}});return{signedTransaction:z(e,g,t)}}return e({showWalletUIs:d?.uiOptions?.showWalletUIs})?h(a):new Promise((async(e,o)=>{let u=s.getPrivyWalletWithAddress(l,g);if("privy"!==u?.walletClientType)return void o(new i.PrivyClientError("Wallet is not a Privy wallet",void 0,i.PrivyErrorCode.EMBEDDED_WALLET_NOT_FOUND));let{entropyId:p,entropyIdVerifier:y}=r.getEntropyDetailsForUser(l,u),f=s.getIsUnifiedWallet(u);function v(e){return t=>{t instanceof i.PrivyClientError?o(t):o(new i.PrivyClientError("Failed to connect to wallet",t,e))}}let A={account:u,transaction:a,chain:c,signOnly:!0,uiOptions:d?.uiOptions||{},onConfirm:h,onSuccess:e,onFailure:v(i.PrivyErrorCode.TRANSACTION_FAILURE)};n({connectWallet:{recoveryMethod:u.recoveryMethod,connectingWalletAddress:u.address,entropyId:p,entropyIdVerifier:y,isUnifiedWallet:f,onCompleteNavigateTo:"StandardSignAndSendTransactionScreen",onFailure:v(i.PrivyErrorCode.UNKNOWN_CONNECT_WALLET_ERROR)},standardSignAndSendTransaction:A}),t("EmbeddedWalletConnectingScreen")}))}}}let ee=new w({signTransaction:i.notImplementedWithMessage("signTransaction was not injected"),signAndSendTransaction:i.notImplementedWithMessage("signAndSendTransaction was not injected"),signMessage:i.notImplementedWithMessage("signMessage was not injected")}),te=new class{get version(){return _(this,U)[U]}get name(){return _(this,D)[D]}get icon(){return _(this,N)[N]}get chains(){return y.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:_(this,H)[H]},"standard:disconnect":{version:"1.0.0",disconnect:_(this,G)[G]},"standard:events":{version:"1.0.0",on:_(this,L)[L]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:_(this,J)[J]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:_(this,Y)[Y]},"solana:signMessage":{version:"1.0.0",signMessage:_(this,K)[K]},"privy:":{privy:{signMessage:_(this,B)[B].signMessage,signTransaction:_(this,B)[B].signTransaction,signAndSendTransaction:_(this,B)[B].signAndSendTransaction}}}}get accounts(){return _(this,R)[R].slice()}get isPrivyWallet(){return _(this,x)[x]}constructor({name:e,icon:t,version:n,injection:i,wallets:s}){Object.defineProperty(this,V,{value:k}),Object.defineProperty(this,q,{value:Z}),Object.defineProperty(this,F,{writable:!0,value:void 0}),Object.defineProperty(this,U,{writable:!0,value:void 0}),Object.defineProperty(this,D,{writable:!0,value:void 0}),Object.defineProperty(this,N,{writable:!0,value:void 0}),Object.defineProperty(this,B,{writable:!0,value:void 0}),Object.defineProperty(this,x,{writable:!0,value:void 0}),Object.defineProperty(this,R,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),Object.defineProperty(this,Q,{writable:!0,value:void 0}),Object.defineProperty(this,H,{writable:!0,value:void 0}),Object.defineProperty(this,G,{writable:!0,value:void 0}),Object.defineProperty(this,K,{writable:!0,value:void 0}),Object.defineProperty(this,J,{writable:!0,value:void 0}),Object.defineProperty(this,Y,{writable:!0,value:void 0}),_(this,F)[F]={},_(this,L)[L]=(e,t)=>(_(this,F)[F][e]?.push(t)||(_(this,F)[F][e]=[t]),()=>_(this,q)[q](e,t)),_(this,Q)[Q]=e=>{null!=e&&(_(this,R)[R]=e.map((({address:e})=>new C({address:e,publicKey:l.base58.decode(e)})))),_(this,V)[V]("change",{accounts:this.accounts})},_(this,H)[H]=async()=>(_(this,V)[V]("change",{accounts:this.accounts}),{accounts:this.accounts}),_(this,G)[G]=async()=>{_(this,V)[V]("change",{accounts:this.accounts})},_(this,K)[K]=async(...e)=>{let t=[];for(let{account:n,...i}of e){let{signature:e}=await _(this,B)[B].signMessage({...i,address:n.address});t.push({signedMessage:i.message,signature:e})}return t},_(this,J)[J]=async(...e)=>{let t=[];for(let n of e){let{signature:e}=await _(this,B)[B].signAndSendTransaction({...n,transaction:n.transaction,address:n.account.address,chain:n.chain||"solana:mainnet",options:n.options});t.push({signature:e})}return t},_(this,Y)[Y]=async(...e)=>{let t=[];for(let{transaction:n,account:i,options:s,chain:a}of e){let{signedTransaction:e}=await _(this,B)[B].signTransaction({transaction:n,address:i.address,chain:a||"solana:mainnet",options:s});t.push({signedTransaction:e})}return t},_(this,D)[D]=e,_(this,N)[N]=t,_(this,U)[U]=n,_(this,B)[B]=i,_(this,R)[R]=[],_(this,x)[x]=!0,i.on("accountChanged",_(this,Q)[Q],this),_(this,Q)[Q](s)}}({name:"Privy",version:"1.0.0",icon:"data:image/png;base64,AAABAAEAFBQAAAAAIABlAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAUAAAAFAgGAAAAjYkdDQAAAAlwSFlzAAAOwwAADsMBx2+oZAAAAQVJREFUeJxiYMANZIC4E4ivAPFPIP4FxDeAuB+IlfDowwBMQFwJxF+B+D8O/AOI66Bq8QJGIF6ExyB0vAqImfEZmEeCYTDcgMswPiB+T4aB34FYApuBsWQYBsP52AycToGBK7EZuJECAw9jM3AVBQbuwWZgIwUGTsZmoDkFBnpiMxAEjpJh2FV8iVsbiD+TYBgoDVrgMgwGnID4HRGGgTKBGyHDYEAaiBdCSxh0g/5AU4Q8sYYhAzEgjoGmABBOgFo2eACowFABYn0oVgViAVINkQTiZUD8DIj/ATF6GILEXgLxCiCWIsZAbiAuBeKtQHwHiEHJ6C8UfwHie0C8E4jLoWpRAAAAAP//rcbhsQAAAAZJREFUAwBYFs3VKJ0cuQAAAABJRU5ErkJggg==",wallets:[],injection:ee});function ne(){let{ready:e}=r.useWallets(),{user:o}=a.usePrivy(),{signMessage:h}=X(),{signTransaction:p}=$(),{signAndSendTransaction:y}=function(){let e=d.useAppConfig(),{isHeadlessSigning:t,openModal:o,privy:h}=i.usePrivyInternal(),{setModalData:p}=s.usePrivyModal(),{signTransaction:y}=$(),f=u.useSolanaRpcClient(),{user:v}=a.usePrivy(),{signWithUserSigner:A}=c.useSignWithUserSigner();return{signAndSendTransaction:async({transaction:a,address:d,chain:c="solana:mainnet",options:w})=>{let E=s.getPrivyWalletWithAddress(v,d);if("privy"!==E?.walletClientType)throw new i.PrivyClientError("Wallet is not a Privy wallet",void 0,i.PrivyErrorCode.EMBEDDED_WALLET_NOT_FOUND);let T=s.getIsUnifiedWallet(E);async function b(e){if(w?.sponsor)return await(async e=>{if(!T)throw new i.PrivyClientError("Sponsoring transactions is only supported for wallets on the TEE stack",i.PrivyErrorCode.INVALID_DATA);let t=await n.rpc(h,A,{chain_type:"solana",method:"signAndSendTransaction",sponsor:!0,params:{transaction:u.bufferFrom(e).toString("base64"),encoding:"base64"},caip2:`solana:${(await f(c).rpc.getGenesisHash().send()).substring(0,32)}`,wallet_id:E.id});if(t.data&&"hash"in t.data)return{signature:l.base58.decode(t.data.hash)};throw Error("Failed to sign and send transaction")})(e);let{signedTransaction:t}=await y({transaction:e,address:d,chain:c,options:{...w,uiOptions:{...w?.uiOptions,showWalletUIs:!1}}}),{signature:s}=await f(c).sendAndConfirmTransaction(t);return{signature:s}}return t({showWalletUIs:w?.uiOptions?.showWalletUIs})?b(a):new Promise((async(t,n)=>{let s,l,{entropyId:u,entropyIdVerifier:h}=r.getEntropyDetailsForUser(v,E);function y(e){return t=>{t instanceof i.PrivyClientError?n(t):n(new i.PrivyClientError("Failed to connect to wallet",t,e))}}let f={account:E,transaction:a,chain:c,signOnly:!1,uiOptions:w?.uiOptions||{},onConfirm:b,onSuccess:t,onFailure:y(i.PrivyErrorCode.TRANSACTION_FAILURE),isSponsored:!!w?.sponsor},A={recoveryMethod:E.recoveryMethod,connectingWalletAddress:E.address,entropyId:u,entropyIdVerifier:h,isUnifiedWallet:T,onCompleteNavigateTo:"StandardSignAndSendTransactionScreen",onFailure:y(i.PrivyErrorCode.UNKNOWN_CONNECT_WALLET_ERROR)};e.fundingConfig&&(s=g.prepareSolanaFundingModalData({address:d,appConfig:e,methodScreen:"FundingMethodSelectionScreen",fundWalletConfig:{...w,asset:"native-currency",chain:c},externalSolanaFundingScreen:"FundSolWalletWithExternalSolanaWallet"}),l={amount:e.fundingConfig.defaultRecommendedAmount,asset:"SOL",chain:c,destinationAddress:d,afterSuccessScreen:"StandardSignAndSendTransactionScreen",sourceWalletData:void 0}),p({connectWallet:A,standardSignAndSendTransaction:f,funding:s,solanaFundingData:l}),o("EmbeddedWalletConnectingScreen")}))}}}(),f=t.useMemo((()=>{let e=[...s.getPrivySolanaHDWallets(o).sort(((e,t)=>(e.walletIndex??0)-(t.walletIndex??0)))],t=s.getImportedPrivySolanaWallets(o);return t.length?[...e,...t]:e}),[o]),v=t.useMemo((()=>({signMessage:async({message:e,address:t,options:n})=>await h({message:e,address:t,options:n}),signTransaction:async({transaction:e,address:t,chain:n,options:i})=>await p({transaction:e,address:t,chain:n,options:i}),async signAndSendTransaction({transaction:e,address:t,chain:n,options:i}){let{signature:s}=await y({transaction:e,address:t,chain:n,options:i});return{signature:s}}})),[h,p,y]);return t.useEffect((()=>{ee?.setImplementation(v)}),[v]),t.useEffect((()=>{var t;!e||(t=te.accounts).length===f.length&&t.every(((e,t)=>e.address===f[t]?.address))||ee?.emit("accountChanged",f)}),[e,f]),{ready:e,wallet:te}}function ie(){let{client:e}=i.usePrivyInternal(),{ready:n,wallet:s}=ne(),[a,r]=t.useState([]),[o,l]=t.useState([]);return t.useEffect((()=>{let e=[s,...a.filter((e=>"solana"===e.chainType&&!!e.wallet.features)).map((e=>e.wallet))];l(e);let t=a.flatMap((t=>{let n=()=>l([...e]);return t.on("walletsUpdated",n),{connector:t,off:n}})),n=e.map((t=>t.features["standard:events"]?.on("change",(()=>{l([...e])}))));return()=>{n.forEach((e=>e?.())),t.forEach((({connector:e,off:t})=>e.off("walletsUpdated",t)))}}),[a]),t.useEffect((()=>{r(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[]);let t=()=>{r(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[])};return e.connectors?.on("connectorInitialized",t),()=>{e.connectors?.off("connectorInitialized",t)}}),[n,e.connectors]),{ready:n,wallets:o}}exports.SOLANA_CHAINS=y,exports.getAddressFromBuffer=function(t){return e.getBase58Decoder().decode(t)},exports.useSolanaStandardWallets=ie,exports.useWallets=function(){let{ready:e,wallets:i}=ie();return{ready:e,wallets:t.useMemo((()=>i.flatMap((e=>e.accounts.map((t=>new n.ConnectedStandardSolanaWallet({wallet:e,account:t})))))),[i])}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./get-is-unified-wallet-
|
|
1
|
+
"use strict";var e=require("./get-is-unified-wallet-Cd_IhZS9.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};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Chain } from '@privy-io/js-sdk-core';
|
|
2
|
-
import { U as User, L as LoginMethod, a as LinkedAccountWithMetadata, P as PrivyErrorCode, B as BaseConnectedEthereumWallet, b as BaseConnectedSolanaWallet, W as Wallet, M as MfaMethod, c as UserRecoveryMethod, O as OAuthTokens, F as FundingMethod, S as SolanaChain } from './types-
|
|
2
|
+
import { U as User, L as LoginMethod, a as LinkedAccountWithMetadata, P as PrivyErrorCode, B as BaseConnectedEthereumWallet, b as BaseConnectedSolanaWallet, W as Wallet, M as MfaMethod, c as UserRecoveryMethod, O as OAuthTokens, F as FundingMethod, S as SolanaChain } from './types-BVn8nTiQ.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* `CallbackError` optionally includes a second parameter with further error details.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Chain } from '@privy-io/js-sdk-core';
|
|
2
|
-
import { U as User, L as LoginMethod, a as LinkedAccountWithMetadata, P as PrivyErrorCode, B as BaseConnectedEthereumWallet, b as BaseConnectedSolanaWallet, W as Wallet, M as MfaMethod, c as UserRecoveryMethod, O as OAuthTokens, F as FundingMethod, S as SolanaChain } from './types-
|
|
2
|
+
import { U as User, L as LoginMethod, a as LinkedAccountWithMetadata, P as PrivyErrorCode, B as BaseConnectedEthereumWallet, b as BaseConnectedSolanaWallet, W as Wallet, M as MfaMethod, c as UserRecoveryMethod, O as OAuthTokens, F as FundingMethod, S as SolanaChain } from './types-BVn8nTiQ.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* `CallbackError` optionally includes a second parameter with further error details.
|
package/dist/dts/farcaster.d.mts
CHANGED
package/dist/dts/farcaster.d.ts
CHANGED
package/dist/dts/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { k as MfaSubmitArgs, c as UserRecoveryMethod, g as SessionSignerInput, E as EthereumRpcRequestType, l as SolanaRpcRequestType, m as EthereumRpcResponseType, n as SolanaRpcResponseType, o as PrivyFarcasterSignerInitResponse, p as EIP1193Provider, q as EntropyIdVerifier$1, H as HDWalletWithMetadata, r as RequestArguments, s as WalletConnector, B as BaseConnectedEthereumWallet, u as PrivyProxyProvider, v as WalletClientType, w as ConnectedWalletMetadata, x as PrivyClientConfig, y as ConnectorType, z as SetBaseAccountSdkType, A as WalletListEntry, D as AppConfig, G as BaseConnectedWallet, j as SolanaWalletConnector, U as User, I as ConnectWalletModalOptions, J as LoginModalOptions, C as CreateWalletOptions, W as Wallet, K as SetWalletRecoveryOptions, f as SignMessageModalUIOptions, N as SignTypedDataParams, M as MfaMethod, Q as UnsignedTransactionRequest, e as SendTransactionModalUIOptions, T as FundWalletConfig, V as ConnectedWallet, O as OAuthTokens, X as CrossAppProviderDetails, Y as MoonpaySignRequest, Z as MoonpaySignResponse, _ as SiwsMessageType, L as LoginMethod, $ as ExternalWalletMetadata, a0 as TelegramAuthResult, a1 as TelegramWebAppData, a2 as OAuthUserInfo, a3 as OAuthFlowState, a4 as LoginWithCode, a5 as OtpFlowState, a6 as PasskeyFlowState, a7 as SiweFlowState, a as LinkedAccountWithMetadata, a8 as
|
|
2
|
-
export {
|
|
1
|
+
import { k as MfaSubmitArgs, c as UserRecoveryMethod, g as SessionSignerInput, E as EthereumRpcRequestType, l as SolanaRpcRequestType, m as EthereumRpcResponseType, n as SolanaRpcResponseType, o as PrivyFarcasterSignerInitResponse, p as EIP1193Provider, q as EntropyIdVerifier$1, H as HDWalletWithMetadata, r as RequestArguments, s as WalletConnector, B as BaseConnectedEthereumWallet, u as PrivyProxyProvider, v as WalletClientType, w as ConnectedWalletMetadata, x as PrivyClientConfig, y as ConnectorType, z as SetBaseAccountSdkType, A as WalletListEntry, D as AppConfig, G as BaseConnectedWallet, j as SolanaWalletConnector, U as User, I as ConnectWalletModalOptions, J as LoginModalOptions, C as CreateWalletOptions, W as Wallet, K as SetWalletRecoveryOptions, f as SignMessageModalUIOptions, N as SignTypedDataParams, M as MfaMethod, Q as UnsignedTransactionRequest, e as SendTransactionModalUIOptions, T as FundWalletConfig, V as ConnectedWallet, O as OAuthTokens, X as CrossAppProviderDetails, Y as MoonpaySignRequest, Z as MoonpaySignResponse, _ as SiwsMessageType, L as LoginMethod, $ as ExternalWalletMetadata, a0 as TelegramAuthResult, a1 as TelegramWebAppData, a2 as OAuthUserInfo, a3 as OAuthFlowState, a4 as LoginWithCode, a5 as OtpFlowState, a6 as PasskeyFlowState, a7 as SiweFlowState, a as LinkedAccountWithMetadata, a8 as FundWithBankDepositScreenOpts, a9 as FundingResult, aa as BaseAccountSdkType, ab as UnsignedTransactionRequestWithChainId, ac as BaseConnectedWalletType, b as BaseConnectedSolanaWallet, ad as SignerInput, ae as TelegramAuthFlowState } from './types-BVn8nTiQ.js';
|
|
2
|
+
export { ax as Apple, aK as AppleOAuthWithMetadata, aS as ContractUIOptions, aB as CrossAppAccount, aN as CrossAppAccountWithMetadata, au as Discord, aF as DiscordOAuthWithMetadata, aP as Email, ap as EmailWithMetadata, aW as Farcaster, aL as FarcasterWithMetadata, aT as FundingStatus, av as Github, aG as GithubOAuthWithMetadata, as as Google, aD as GoogleOAuthWithMetadata, az as Line, aI as LineOAuthWithMetadata, aC as LinkedAccountType, aw as LinkedIn, aJ as LinkedInOAuthWithMetadata, aY as LoginMethodOrderOption, ah as MessageTypes, aj as MoonpayCurrencyCode, ak as MoonpayPaymentMethod, aU as NativeFundingConfig, ao as NonEmptyArray, aX as Passkey, aO as PasskeyWithMetadata, aQ as Phone, aq as PhoneWithMetadata, aV as PriceDisplayOptions, P as PrivyErrorCode, a_ as PrivyI18nStrings, al as Quantity, aZ as SiwsFlowState, ai as SmartWallet, aA as Telegram, aM as TelegramWithMetadata, ay as Tiktok, aH as TiktokOAuthWithMetadata, am as TransactionLog, an as TransactionReceipt, aR as TransactionUIOptions, at as Twitter, aE as TwitterOAuthWithMetadata, ag as TypedMessage, ar as WalletWithMetadata, af as createCrossTabUserSyncPlugin, a$ as dataSuffix } from './types-BVn8nTiQ.js';
|
|
3
3
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
4
4
|
import { TurnstileProps } from '@marsidev/react-turnstile';
|
|
5
5
|
import EventEmitter from 'eventemitter3';
|
|
@@ -9,14 +9,14 @@ export { DEFAULT_SUPPORTED_CHAINS as SUPPORTED_CHAINS, addPrivyRpcToChain, addRp
|
|
|
9
9
|
import { FirstClassChainType, PasskeyAuthenticateRequestBody, SmartWalletType, CustomOAuthProviderID, User as User$1, OAuthProviderID, CoinbaseOnRampInitInput, CoinbaseOnRampInitResponse, CoinbaseOnRampStatusResponse, TransactionScanningRequestBody, TransactionScanningResponseBody } from '@privy-io/api-types';
|
|
10
10
|
export { OAuthProviderID as OAuthProviderType } from '@privy-io/api-types';
|
|
11
11
|
import * as viem from 'viem';
|
|
12
|
-
import { Address, HttpTransport, Hex } from 'viem';
|
|
12
|
+
import { Address, HttpTransport, Hex, SignableMessage } from 'viem';
|
|
13
13
|
import * as react from 'react';
|
|
14
14
|
import { MouseEvent } from 'react';
|
|
15
15
|
import * as _simplewebauthn_browser from '@simplewebauthn/browser';
|
|
16
16
|
import { PublicKeyCredentialRequestOptionsJSON } from '@simplewebauthn/browser';
|
|
17
17
|
import { FetchOptions } from 'ofetch';
|
|
18
|
-
import { P as PrivyEvents } from './events-context-
|
|
19
|
-
export { C as CallbackError } from './events-context-
|
|
18
|
+
import { P as PrivyEvents } from './events-context-JU6EgMXK.js';
|
|
19
|
+
export { C as CallbackError } from './events-context-JU6EgMXK.js';
|
|
20
20
|
import { PaymentRequirementsSelector } from 'x402/client';
|
|
21
21
|
import { X402Config } from 'x402/types';
|
|
22
22
|
import * as viem_accounts from 'viem/accounts';
|
|
@@ -10314,6 +10314,26 @@ declare function useCreateWallet(callbacks?: PrivyEvents['createWallet']): {
|
|
|
10314
10314
|
createWallet: (options?: CreateWalletOptions | react.MouseEvent<any, any>) => Promise<Wallet>;
|
|
10315
10315
|
};
|
|
10316
10316
|
|
|
10317
|
+
type UseFundWalletWithBankDepositOptions = FundWithBankDepositScreenOpts;
|
|
10318
|
+
type UseFundWalletWithBankDepositResult = {
|
|
10319
|
+
/**
|
|
10320
|
+
* Opens the Privy modal and initiates the Bank transfer flow.
|
|
10321
|
+
*
|
|
10322
|
+
* @param opts options specifying how to fund the wallet
|
|
10323
|
+
* @returns an empty object indicating success, throws if there is an error
|
|
10324
|
+
* @throws
|
|
10325
|
+
*/
|
|
10326
|
+
fund: (opts: UseFundWalletWithBankDepositOptions) => Promise<Record<string, never>>;
|
|
10327
|
+
};
|
|
10328
|
+
/**
|
|
10329
|
+
* @experimental This interface may change at any time
|
|
10330
|
+
*
|
|
10331
|
+
* Hook to trigger a funding flow using a bank transfer.
|
|
10332
|
+
*
|
|
10333
|
+
* @returns a function that triggers the flow
|
|
10334
|
+
*/
|
|
10335
|
+
declare const useFundWalletWithBankDeposit: () => UseFundWalletWithBankDepositResult;
|
|
10336
|
+
|
|
10317
10337
|
/**
|
|
10318
10338
|
* Method to fund a user's wallet via Privy's funding feature by inputting a valid wallet address.
|
|
10319
10339
|
* You can access the fields and methods documented here via the {@link useFundWallet} hook.
|
|
@@ -11258,7 +11278,7 @@ declare const toViemAccount: ({ wallet }: {
|
|
|
11258
11278
|
}) => Promise<Hex>) | undefined;
|
|
11259
11279
|
signAuthorization?: ((parameters: viem.AuthorizationRequest) => Promise<viem_accounts.SignAuthorizationReturnType>) | undefined;
|
|
11260
11280
|
signMessage: ({ message }: {
|
|
11261
|
-
message:
|
|
11281
|
+
message: SignableMessage;
|
|
11262
11282
|
}) => Promise<Hex>;
|
|
11263
11283
|
signTransaction: <serializer extends viem.SerializeTransactionFn<viem.TransactionSerializable> = viem.SerializeTransactionFn<viem.TransactionSerializable>, transaction extends Parameters<serializer>[0] = Parameters<serializer>[0]>(transaction: transaction, options?: {
|
|
11264
11284
|
serializer?: serializer | undefined;
|
|
@@ -11281,4 +11301,4 @@ declare const useMigrateWallets: () => {
|
|
|
11281
11301
|
}>;
|
|
11282
11302
|
};
|
|
11283
11303
|
|
|
11284
|
-
export { BaseConnectedWalletType, Captcha, ConnectWalletModalOptions, ConnectedWallet, ConnectorManager, type CustomAuthFlowState, EIP1193Provider, type EncryptedWalletKey, EthereumWalletConnector, FundWalletConfig, FundingResult, type JwtAuthFlowState, LinkedAccountWithMetadata, LoginModal, LoginModalOptions, LoginWithCode, MfaMethod, OAuthFlowState, OAuthTokens, OtpFlowState, PasskeyFlowState, PrivyClient, PrivyClientConfig, PrivyEvents, type PrivyInterface, PrivyModal, PrivyProvider, type PrivyProviderProps, type SendCodeToEmail, type SendCodeToSms, SendTransactionModalUIOptions, SignMessageModalUIOptions, SignTypedDataParams, SiweFlowState, TelegramAuthFlowState, UnsignedTransactionRequest, type UseAuthorizationSignatureInterface, type UseBaseAccountSdkInterface, type UseConnectBaseAccountInterface, type UseConnectCoinbaseSmartWalletInterface, type UseCustomAuth, type UseDelegatedActionsInterface, type UseFundWalletInterface, type UseGetAccessTokenForProvider, type UseGetWalletPrivateKeyInterface, type UseImportWalletInterface, type UseLinkJwtAccount, type UseLinkWithPasskey, type UseLinkWithSiws, type UseLoginWithEmail, type UseLoginWithPasskey, type UseLoginWithSiws, type UseLoginWithSms, type UseLoginWithTelegram, type UseOAuthTokens, type UseRecoverEmbeddedWalletInterface, type UseSessionSignersInterface, type UseSignersInterface, type UseSignupWithPasskey, type UseSubscribeToJwtAuthWithFlagInput, type UseSyncJwtBasedAuthStateInput, type UseSyncJwtBasedAuthStateInterface, type UseWalletsInterface, type UseX402Fetch, User, VERSION, Wallet, WalletConnector, WalletListEntry, type WrapFetchWithPayment, errorIndicatesMaxMfaRetries, errorIndicatesMfaTimeout, errorIndicatesMfaVerificationFailed, getCustomerAccessToken as getAccessToken, getEmbeddedConnectedWallet, getIdentityToken, toViemAccount, useActiveWallet, useAuthMfa, useAuthMfaEnrollment, useAuthorizationSignature, useBaseAccountSdk, useConnectBaseAccount, useConnectCoinbaseSmartWallet, useConnectOrCreateWallet, useConnectWallet, useCreateWallet, useCrossAppAccounts, useCustomAuth, useDelegatedActions, useExportWallet, useFarcasterSigner, useFundWallet, useGetAccessTokenForProvider, useGetWalletPrivateKey, useGuestAccounts, useHeadlessDelegatedActions, useIdentityToken, useImportWallet, useLinkAccount, useLinkJwtAccount, useLinkWithPasskey, useLinkWithSiwe, useLinkWithSiws, useLogin, useLoginWithEmail, useLoginWithFarcasterV2, useLoginWithOAuth, useLoginWithPasskey, useLoginWithSiwe, useLoginWithSiws, useLoginWithSms, useLoginWithTelegram, useLogout, useMfa, useMfaEnrollment, useMigrateWallets, useModalStatus, useOAuthTokens, usePrivy, useRecoverEmbeddedWallet, useRegisterMfaListener, useSendTransaction, useSessionSigners, useSetWalletRecovery, useSign7702Authorization, useSignMessage, useSignTransaction, useSignTypedData, useSigners, useSignupWithPasskey, useSubscribeToJwtAuthWithFlag, useSyncJwtBasedAuthState, useToken, useUpdateAccount, useUpdateEmail, useUser, useWallets, useX402Fetch };
|
|
11304
|
+
export { BaseConnectedWalletType, Captcha, ConnectWalletModalOptions, ConnectedWallet, ConnectorManager, type CustomAuthFlowState, EIP1193Provider, type EncryptedWalletKey, EthereumWalletConnector, FundWalletConfig, FundingResult, type JwtAuthFlowState, LinkedAccountWithMetadata, LoginModal, LoginModalOptions, LoginWithCode, MfaMethod, OAuthFlowState, OAuthTokens, OtpFlowState, PasskeyFlowState, PrivyClient, PrivyClientConfig, PrivyEvents, type PrivyInterface, PrivyModal, PrivyProvider, type PrivyProviderProps, type SendCodeToEmail, type SendCodeToSms, SendTransactionModalUIOptions, SignMessageModalUIOptions, SignTypedDataParams, SiweFlowState, TelegramAuthFlowState, UnsignedTransactionRequest, type UseAuthorizationSignatureInterface, type UseBaseAccountSdkInterface, type UseConnectBaseAccountInterface, type UseConnectCoinbaseSmartWalletInterface, type UseCustomAuth, type UseDelegatedActionsInterface, type UseFundWalletInterface, type UseGetAccessTokenForProvider, type UseGetWalletPrivateKeyInterface, type UseImportWalletInterface, type UseLinkJwtAccount, type UseLinkWithPasskey, type UseLinkWithSiws, type UseLoginWithEmail, type UseLoginWithPasskey, type UseLoginWithSiws, type UseLoginWithSms, type UseLoginWithTelegram, type UseOAuthTokens, type UseRecoverEmbeddedWalletInterface, type UseSessionSignersInterface, type UseSignersInterface, type UseSignupWithPasskey, type UseSubscribeToJwtAuthWithFlagInput, type UseSyncJwtBasedAuthStateInput, type UseSyncJwtBasedAuthStateInterface, type UseWalletsInterface, type UseX402Fetch, User, VERSION, Wallet, WalletConnector, WalletListEntry, type WrapFetchWithPayment, errorIndicatesMaxMfaRetries, errorIndicatesMfaTimeout, errorIndicatesMfaVerificationFailed, getCustomerAccessToken as getAccessToken, getEmbeddedConnectedWallet, getIdentityToken, toViemAccount, useActiveWallet, useAuthMfa, useAuthMfaEnrollment, useAuthorizationSignature, useBaseAccountSdk, useConnectBaseAccount, useConnectCoinbaseSmartWallet, useConnectOrCreateWallet, useConnectWallet, useCreateWallet, useCrossAppAccounts, useCustomAuth, useDelegatedActions, useExportWallet, useFarcasterSigner, useFundWallet, useFundWalletWithBankDeposit, useGetAccessTokenForProvider, useGetWalletPrivateKey, useGuestAccounts, useHeadlessDelegatedActions, useIdentityToken, useImportWallet, useLinkAccount, useLinkJwtAccount, useLinkWithPasskey, useLinkWithSiwe, useLinkWithSiws, useLogin, useLoginWithEmail, useLoginWithFarcasterV2, useLoginWithOAuth, useLoginWithPasskey, useLoginWithSiwe, useLoginWithSiws, useLoginWithSms, useLoginWithTelegram, useLogout, useMfa, useMfaEnrollment, useMigrateWallets, useModalStatus, useOAuthTokens, usePrivy, useRecoverEmbeddedWallet, useRegisterMfaListener, useSendTransaction, useSessionSigners, useSetWalletRecovery, useSign7702Authorization, useSignMessage, useSignTransaction, useSignTypedData, useSigners, useSignupWithPasskey, useSubscribeToJwtAuthWithFlag, useSyncJwtBasedAuthState, useToken, useUpdateAccount, useUpdateEmail, useUser, useWallets, useX402Fetch };
|
package/dist/dts/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { k as MfaSubmitArgs, c as UserRecoveryMethod, g as SessionSignerInput, E as EthereumRpcRequestType, l as SolanaRpcRequestType, m as EthereumRpcResponseType, n as SolanaRpcResponseType, o as PrivyFarcasterSignerInitResponse, p as EIP1193Provider, q as EntropyIdVerifier$1, H as HDWalletWithMetadata, r as RequestArguments, s as WalletConnector, B as BaseConnectedEthereumWallet, u as PrivyProxyProvider, v as WalletClientType, w as ConnectedWalletMetadata, x as PrivyClientConfig, y as ConnectorType, z as SetBaseAccountSdkType, A as WalletListEntry, D as AppConfig, G as BaseConnectedWallet, j as SolanaWalletConnector, U as User, I as ConnectWalletModalOptions, J as LoginModalOptions, C as CreateWalletOptions, W as Wallet, K as SetWalletRecoveryOptions, f as SignMessageModalUIOptions, N as SignTypedDataParams, M as MfaMethod, Q as UnsignedTransactionRequest, e as SendTransactionModalUIOptions, T as FundWalletConfig, V as ConnectedWallet, O as OAuthTokens, X as CrossAppProviderDetails, Y as MoonpaySignRequest, Z as MoonpaySignResponse, _ as SiwsMessageType, L as LoginMethod, $ as ExternalWalletMetadata, a0 as TelegramAuthResult, a1 as TelegramWebAppData, a2 as OAuthUserInfo, a3 as OAuthFlowState, a4 as LoginWithCode, a5 as OtpFlowState, a6 as PasskeyFlowState, a7 as SiweFlowState, a as LinkedAccountWithMetadata, a8 as
|
|
2
|
-
export {
|
|
1
|
+
import { k as MfaSubmitArgs, c as UserRecoveryMethod, g as SessionSignerInput, E as EthereumRpcRequestType, l as SolanaRpcRequestType, m as EthereumRpcResponseType, n as SolanaRpcResponseType, o as PrivyFarcasterSignerInitResponse, p as EIP1193Provider, q as EntropyIdVerifier$1, H as HDWalletWithMetadata, r as RequestArguments, s as WalletConnector, B as BaseConnectedEthereumWallet, u as PrivyProxyProvider, v as WalletClientType, w as ConnectedWalletMetadata, x as PrivyClientConfig, y as ConnectorType, z as SetBaseAccountSdkType, A as WalletListEntry, D as AppConfig, G as BaseConnectedWallet, j as SolanaWalletConnector, U as User, I as ConnectWalletModalOptions, J as LoginModalOptions, C as CreateWalletOptions, W as Wallet, K as SetWalletRecoveryOptions, f as SignMessageModalUIOptions, N as SignTypedDataParams, M as MfaMethod, Q as UnsignedTransactionRequest, e as SendTransactionModalUIOptions, T as FundWalletConfig, V as ConnectedWallet, O as OAuthTokens, X as CrossAppProviderDetails, Y as MoonpaySignRequest, Z as MoonpaySignResponse, _ as SiwsMessageType, L as LoginMethod, $ as ExternalWalletMetadata, a0 as TelegramAuthResult, a1 as TelegramWebAppData, a2 as OAuthUserInfo, a3 as OAuthFlowState, a4 as LoginWithCode, a5 as OtpFlowState, a6 as PasskeyFlowState, a7 as SiweFlowState, a as LinkedAccountWithMetadata, a8 as FundWithBankDepositScreenOpts, a9 as FundingResult, aa as BaseAccountSdkType, ab as UnsignedTransactionRequestWithChainId, ac as BaseConnectedWalletType, b as BaseConnectedSolanaWallet, ad as SignerInput, ae as TelegramAuthFlowState } from './types-BVn8nTiQ.js';
|
|
2
|
+
export { ax as Apple, aK as AppleOAuthWithMetadata, aS as ContractUIOptions, aB as CrossAppAccount, aN as CrossAppAccountWithMetadata, au as Discord, aF as DiscordOAuthWithMetadata, aP as Email, ap as EmailWithMetadata, aW as Farcaster, aL as FarcasterWithMetadata, aT as FundingStatus, av as Github, aG as GithubOAuthWithMetadata, as as Google, aD as GoogleOAuthWithMetadata, az as Line, aI as LineOAuthWithMetadata, aC as LinkedAccountType, aw as LinkedIn, aJ as LinkedInOAuthWithMetadata, aY as LoginMethodOrderOption, ah as MessageTypes, aj as MoonpayCurrencyCode, ak as MoonpayPaymentMethod, aU as NativeFundingConfig, ao as NonEmptyArray, aX as Passkey, aO as PasskeyWithMetadata, aQ as Phone, aq as PhoneWithMetadata, aV as PriceDisplayOptions, P as PrivyErrorCode, a_ as PrivyI18nStrings, al as Quantity, aZ as SiwsFlowState, ai as SmartWallet, aA as Telegram, aM as TelegramWithMetadata, ay as Tiktok, aH as TiktokOAuthWithMetadata, am as TransactionLog, an as TransactionReceipt, aR as TransactionUIOptions, at as Twitter, aE as TwitterOAuthWithMetadata, ag as TypedMessage, ar as WalletWithMetadata, af as createCrossTabUserSyncPlugin, a$ as dataSuffix } from './types-BVn8nTiQ.js';
|
|
3
3
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
4
4
|
import { TurnstileProps } from '@marsidev/react-turnstile';
|
|
5
5
|
import EventEmitter from 'eventemitter3';
|
|
@@ -9,14 +9,14 @@ export { DEFAULT_SUPPORTED_CHAINS as SUPPORTED_CHAINS, addPrivyRpcToChain, addRp
|
|
|
9
9
|
import { FirstClassChainType, PasskeyAuthenticateRequestBody, SmartWalletType, CustomOAuthProviderID, User as User$1, OAuthProviderID, CoinbaseOnRampInitInput, CoinbaseOnRampInitResponse, CoinbaseOnRampStatusResponse, TransactionScanningRequestBody, TransactionScanningResponseBody } from '@privy-io/api-types';
|
|
10
10
|
export { OAuthProviderID as OAuthProviderType } from '@privy-io/api-types';
|
|
11
11
|
import * as viem from 'viem';
|
|
12
|
-
import { Address, HttpTransport, Hex } from 'viem';
|
|
12
|
+
import { Address, HttpTransport, Hex, SignableMessage } from 'viem';
|
|
13
13
|
import * as react from 'react';
|
|
14
14
|
import { MouseEvent } from 'react';
|
|
15
15
|
import * as _simplewebauthn_browser from '@simplewebauthn/browser';
|
|
16
16
|
import { PublicKeyCredentialRequestOptionsJSON } from '@simplewebauthn/browser';
|
|
17
17
|
import { FetchOptions } from 'ofetch';
|
|
18
|
-
import { P as PrivyEvents } from './events-context-
|
|
19
|
-
export { C as CallbackError } from './events-context-
|
|
18
|
+
import { P as PrivyEvents } from './events-context-JU6EgMXK.js';
|
|
19
|
+
export { C as CallbackError } from './events-context-JU6EgMXK.js';
|
|
20
20
|
import { PaymentRequirementsSelector } from 'x402/client';
|
|
21
21
|
import { X402Config } from 'x402/types';
|
|
22
22
|
import * as viem_accounts from 'viem/accounts';
|
|
@@ -10314,6 +10314,26 @@ declare function useCreateWallet(callbacks?: PrivyEvents['createWallet']): {
|
|
|
10314
10314
|
createWallet: (options?: CreateWalletOptions | react.MouseEvent<any, any>) => Promise<Wallet>;
|
|
10315
10315
|
};
|
|
10316
10316
|
|
|
10317
|
+
type UseFundWalletWithBankDepositOptions = FundWithBankDepositScreenOpts;
|
|
10318
|
+
type UseFundWalletWithBankDepositResult = {
|
|
10319
|
+
/**
|
|
10320
|
+
* Opens the Privy modal and initiates the Bank transfer flow.
|
|
10321
|
+
*
|
|
10322
|
+
* @param opts options specifying how to fund the wallet
|
|
10323
|
+
* @returns an empty object indicating success, throws if there is an error
|
|
10324
|
+
* @throws
|
|
10325
|
+
*/
|
|
10326
|
+
fund: (opts: UseFundWalletWithBankDepositOptions) => Promise<Record<string, never>>;
|
|
10327
|
+
};
|
|
10328
|
+
/**
|
|
10329
|
+
* @experimental This interface may change at any time
|
|
10330
|
+
*
|
|
10331
|
+
* Hook to trigger a funding flow using a bank transfer.
|
|
10332
|
+
*
|
|
10333
|
+
* @returns a function that triggers the flow
|
|
10334
|
+
*/
|
|
10335
|
+
declare const useFundWalletWithBankDeposit: () => UseFundWalletWithBankDepositResult;
|
|
10336
|
+
|
|
10317
10337
|
/**
|
|
10318
10338
|
* Method to fund a user's wallet via Privy's funding feature by inputting a valid wallet address.
|
|
10319
10339
|
* You can access the fields and methods documented here via the {@link useFundWallet} hook.
|
|
@@ -11258,7 +11278,7 @@ declare const toViemAccount: ({ wallet }: {
|
|
|
11258
11278
|
}) => Promise<Hex>) | undefined;
|
|
11259
11279
|
signAuthorization?: ((parameters: viem.AuthorizationRequest) => Promise<viem_accounts.SignAuthorizationReturnType>) | undefined;
|
|
11260
11280
|
signMessage: ({ message }: {
|
|
11261
|
-
message:
|
|
11281
|
+
message: SignableMessage;
|
|
11262
11282
|
}) => Promise<Hex>;
|
|
11263
11283
|
signTransaction: <serializer extends viem.SerializeTransactionFn<viem.TransactionSerializable> = viem.SerializeTransactionFn<viem.TransactionSerializable>, transaction extends Parameters<serializer>[0] = Parameters<serializer>[0]>(transaction: transaction, options?: {
|
|
11264
11284
|
serializer?: serializer | undefined;
|
|
@@ -11281,4 +11301,4 @@ declare const useMigrateWallets: () => {
|
|
|
11281
11301
|
}>;
|
|
11282
11302
|
};
|
|
11283
11303
|
|
|
11284
|
-
export { BaseConnectedWalletType, Captcha, ConnectWalletModalOptions, ConnectedWallet, ConnectorManager, type CustomAuthFlowState, EIP1193Provider, type EncryptedWalletKey, EthereumWalletConnector, FundWalletConfig, FundingResult, type JwtAuthFlowState, LinkedAccountWithMetadata, LoginModal, LoginModalOptions, LoginWithCode, MfaMethod, OAuthFlowState, OAuthTokens, OtpFlowState, PasskeyFlowState, PrivyClient, PrivyClientConfig, PrivyEvents, type PrivyInterface, PrivyModal, PrivyProvider, type PrivyProviderProps, type SendCodeToEmail, type SendCodeToSms, SendTransactionModalUIOptions, SignMessageModalUIOptions, SignTypedDataParams, SiweFlowState, TelegramAuthFlowState, UnsignedTransactionRequest, type UseAuthorizationSignatureInterface, type UseBaseAccountSdkInterface, type UseConnectBaseAccountInterface, type UseConnectCoinbaseSmartWalletInterface, type UseCustomAuth, type UseDelegatedActionsInterface, type UseFundWalletInterface, type UseGetAccessTokenForProvider, type UseGetWalletPrivateKeyInterface, type UseImportWalletInterface, type UseLinkJwtAccount, type UseLinkWithPasskey, type UseLinkWithSiws, type UseLoginWithEmail, type UseLoginWithPasskey, type UseLoginWithSiws, type UseLoginWithSms, type UseLoginWithTelegram, type UseOAuthTokens, type UseRecoverEmbeddedWalletInterface, type UseSessionSignersInterface, type UseSignersInterface, type UseSignupWithPasskey, type UseSubscribeToJwtAuthWithFlagInput, type UseSyncJwtBasedAuthStateInput, type UseSyncJwtBasedAuthStateInterface, type UseWalletsInterface, type UseX402Fetch, User, VERSION, Wallet, WalletConnector, WalletListEntry, type WrapFetchWithPayment, errorIndicatesMaxMfaRetries, errorIndicatesMfaTimeout, errorIndicatesMfaVerificationFailed, getCustomerAccessToken as getAccessToken, getEmbeddedConnectedWallet, getIdentityToken, toViemAccount, useActiveWallet, useAuthMfa, useAuthMfaEnrollment, useAuthorizationSignature, useBaseAccountSdk, useConnectBaseAccount, useConnectCoinbaseSmartWallet, useConnectOrCreateWallet, useConnectWallet, useCreateWallet, useCrossAppAccounts, useCustomAuth, useDelegatedActions, useExportWallet, useFarcasterSigner, useFundWallet, useGetAccessTokenForProvider, useGetWalletPrivateKey, useGuestAccounts, useHeadlessDelegatedActions, useIdentityToken, useImportWallet, useLinkAccount, useLinkJwtAccount, useLinkWithPasskey, useLinkWithSiwe, useLinkWithSiws, useLogin, useLoginWithEmail, useLoginWithFarcasterV2, useLoginWithOAuth, useLoginWithPasskey, useLoginWithSiwe, useLoginWithSiws, useLoginWithSms, useLoginWithTelegram, useLogout, useMfa, useMfaEnrollment, useMigrateWallets, useModalStatus, useOAuthTokens, usePrivy, useRecoverEmbeddedWallet, useRegisterMfaListener, useSendTransaction, useSessionSigners, useSetWalletRecovery, useSign7702Authorization, useSignMessage, useSignTransaction, useSignTypedData, useSigners, useSignupWithPasskey, useSubscribeToJwtAuthWithFlag, useSyncJwtBasedAuthState, useToken, useUpdateAccount, useUpdateEmail, useUser, useWallets, useX402Fetch };
|
|
11304
|
+
export { BaseConnectedWalletType, Captcha, ConnectWalletModalOptions, ConnectedWallet, ConnectorManager, type CustomAuthFlowState, EIP1193Provider, type EncryptedWalletKey, EthereumWalletConnector, FundWalletConfig, FundingResult, type JwtAuthFlowState, LinkedAccountWithMetadata, LoginModal, LoginModalOptions, LoginWithCode, MfaMethod, OAuthFlowState, OAuthTokens, OtpFlowState, PasskeyFlowState, PrivyClient, PrivyClientConfig, PrivyEvents, type PrivyInterface, PrivyModal, PrivyProvider, type PrivyProviderProps, type SendCodeToEmail, type SendCodeToSms, SendTransactionModalUIOptions, SignMessageModalUIOptions, SignTypedDataParams, SiweFlowState, TelegramAuthFlowState, UnsignedTransactionRequest, type UseAuthorizationSignatureInterface, type UseBaseAccountSdkInterface, type UseConnectBaseAccountInterface, type UseConnectCoinbaseSmartWalletInterface, type UseCustomAuth, type UseDelegatedActionsInterface, type UseFundWalletInterface, type UseGetAccessTokenForProvider, type UseGetWalletPrivateKeyInterface, type UseImportWalletInterface, type UseLinkJwtAccount, type UseLinkWithPasskey, type UseLinkWithSiws, type UseLoginWithEmail, type UseLoginWithPasskey, type UseLoginWithSiws, type UseLoginWithSms, type UseLoginWithTelegram, type UseOAuthTokens, type UseRecoverEmbeddedWalletInterface, type UseSessionSignersInterface, type UseSignersInterface, type UseSignupWithPasskey, type UseSubscribeToJwtAuthWithFlagInput, type UseSyncJwtBasedAuthStateInput, type UseSyncJwtBasedAuthStateInterface, type UseWalletsInterface, type UseX402Fetch, User, VERSION, Wallet, WalletConnector, WalletListEntry, type WrapFetchWithPayment, errorIndicatesMaxMfaRetries, errorIndicatesMfaTimeout, errorIndicatesMfaVerificationFailed, getCustomerAccessToken as getAccessToken, getEmbeddedConnectedWallet, getIdentityToken, toViemAccount, useActiveWallet, useAuthMfa, useAuthMfaEnrollment, useAuthorizationSignature, useBaseAccountSdk, useConnectBaseAccount, useConnectCoinbaseSmartWallet, useConnectOrCreateWallet, useConnectWallet, useCreateWallet, useCrossAppAccounts, useCustomAuth, useDelegatedActions, useExportWallet, useFarcasterSigner, useFundWallet, useFundWalletWithBankDeposit, useGetAccessTokenForProvider, useGetWalletPrivateKey, useGuestAccounts, useHeadlessDelegatedActions, useIdentityToken, useImportWallet, useLinkAccount, useLinkJwtAccount, useLinkWithPasskey, useLinkWithSiwe, useLinkWithSiws, useLogin, useLoginWithEmail, useLoginWithFarcasterV2, useLoginWithOAuth, useLoginWithPasskey, useLoginWithSiwe, useLoginWithSiws, useLoginWithSms, useLoginWithTelegram, useLogout, useMfa, useMfaEnrollment, useMigrateWallets, useModalStatus, useOAuthTokens, usePrivy, useRecoverEmbeddedWallet, useRegisterMfaListener, useSendTransaction, useSessionSigners, useSetWalletRecovery, useSign7702Authorization, useSignMessage, useSignTransaction, useSignTypedData, useSigners, useSignupWithPasskey, useSubscribeToJwtAuthWithFlag, useSyncJwtBasedAuthState, useToken, useUpdateAccount, useUpdateEmail, useUser, useWallets, useX402Fetch };
|
package/dist/dts/internal.d.mts
CHANGED
package/dist/dts/internal.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import react__default from 'react';
|
|
3
|
-
import { e as SendTransactionModalUIOptions, f as SignMessageModalUIOptions } from './types-
|
|
3
|
+
import { e as SendTransactionModalUIOptions, f as SignMessageModalUIOptions } from './types-BVn8nTiQ.js';
|
|
4
4
|
import { SmartAccountClient } from 'permissionless';
|
|
5
5
|
import { EIP1193Provider, Chain, PublicClient, HttpTransport, WalletClient, PaymasterRpcSchema, SendTransactionParameters, Hash, SignableMessage, Hex, TypedData, SignTypedDataParameters } from 'viem';
|
|
6
6
|
import { SmartAccount, SendUserOperationParameters } from 'viem/account-abstraction';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import react__default from 'react';
|
|
3
|
-
import { e as SendTransactionModalUIOptions, f as SignMessageModalUIOptions } from './types-
|
|
3
|
+
import { e as SendTransactionModalUIOptions, f as SignMessageModalUIOptions } from './types-BVn8nTiQ.js';
|
|
4
4
|
import { SmartAccountClient } from 'permissionless';
|
|
5
5
|
import { EIP1193Provider, Chain, PublicClient, HttpTransport, WalletClient, PaymasterRpcSchema, SendTransactionParameters, Hash, SignableMessage, Hex, TypedData, SignTypedDataParameters } from 'viem';
|
|
6
6
|
import { SmartAccount, SendUserOperationParameters } from 'viem/account-abstraction';
|
package/dist/dts/solana.d.mts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { g as SessionSignerInput, W as Wallet, f as SignMessageModalUIOptions, S as SolanaChain, h as SolanaStandardWallet, C as CreateWalletOptions, e as SendTransactionModalUIOptions, i as SolanaFundingConfig } from './types-
|
|
2
|
-
export { j as SolanaAdapterConnector, t as toSolanaWalletConnectors } from './types-
|
|
1
|
+
import { g as SessionSignerInput, W as Wallet, f as SignMessageModalUIOptions, S as SolanaChain, h as SolanaStandardWallet, C as CreateWalletOptions, e as SendTransactionModalUIOptions, i as SolanaFundingConfig } from './types-BVn8nTiQ.js';
|
|
2
|
+
export { j as SolanaAdapterConnector, t as toSolanaWalletConnectors } from './types-BVn8nTiQ.js';
|
|
3
3
|
import { SolanaSignAndSendTransactionFeature, SolanaSignTransactionFeature, SolanaSignMessageFeature } from '@solana/wallet-standard-features';
|
|
4
4
|
import { WalletAccount, WalletIcon, WalletVersion } from '@wallet-standard/base';
|
|
5
5
|
import { StandardConnectFeature, StandardDisconnectFeature, StandardEventsFeature } from '@wallet-standard/features';
|
|
6
6
|
import EventEmitter from 'eventemitter3';
|
|
7
7
|
import { SolanaSignAndSendTransactionOptions, SolanaSignTransactionOptions, ConnectedStandardSolanaWallet } from '@privy-io/js-sdk-core';
|
|
8
8
|
export { ConnectedStandardSolanaWallet } from '@privy-io/js-sdk-core';
|
|
9
|
-
import { P as PrivyEvents } from './events-context-
|
|
9
|
+
import { P as PrivyEvents } from './events-context-JU6EgMXK.js';
|
|
10
10
|
import '@coinbase/wallet-sdk';
|
|
11
11
|
import '@simplewebauthn/browser';
|
|
12
12
|
import '@solana/kit';
|