@privy-io/react-auth 3.10.2 → 3.11.0-beta-20260115221418
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/README.md +1 -1
- package/dist/cjs/AccountNotFoundScreen-CwhDiq3O.js +1 -0
- package/dist/cjs/Address-BPnCe7Et.js +17 -0
- package/dist/cjs/AffirmativeConsentScreen-BA7sw_Wd.js +6 -0
- package/dist/cjs/AllowlistRejectionScreen-Dg2qQUCC.js +1 -0
- package/dist/cjs/AuthenticateWithWalletScreen-DL_l0y74.js +1 -0
- package/dist/cjs/AwaitingEvmToSolBridgingScreen-DvGrFYHN.js +2 -0
- package/dist/cjs/AwaitingExternalEthereumTransferScreen-BmrkzC_i.js +2 -0
- package/dist/cjs/AwaitingPasswordlessCodeScreen-Co_V5loZ.js +103 -0
- package/dist/cjs/AwaitingSolToEvmBridgingScreen-CdxhBi75.js +2 -0
- package/dist/cjs/BridgeNetworkSelectionView-DpLB4paD.js +69 -0
- package/dist/cjs/CaptchaScreen-DMRDPM48.js +1 -0
- package/dist/cjs/Checkbox-DzxHC5tk.js +53 -0
- package/dist/cjs/Chip-C6r7fZiR.js +26 -0
- package/dist/cjs/CoinbaseOnrampStatusScreen-ghVwEuDN.js +16 -0
- package/dist/cjs/Column-D8_5wTPp.js +4 -0
- package/dist/cjs/ConnectEmailForm-CLcx5hAJ.js +3 -0
- package/dist/cjs/ConnectLedgerScreen-XtmYNMNP.js +9 -0
- package/dist/cjs/ConnectOnlyLandingScreen-B4suzCQ9.js +1 -0
- package/dist/cjs/ConnectOnlyStatusScreen-CRYtEuDs.js +1 -0
- package/dist/cjs/ConnectOrCreateScreen-CYALNaVN.js +1 -0
- package/dist/cjs/ConnectPhoneForm-DUydl9PB.js +97 -0
- package/dist/cjs/ConnectWalletView-B-T2phwg.js +171 -0
- package/dist/cjs/ConnectionStatusScreen-CPV0_uP7.js +7 -0
- package/dist/cjs/CopyToClipboard-BCe_l6_D.js +39 -0
- package/dist/cjs/CrossAppAuthScreen-C7sEJ5lk.js +1 -0
- package/dist/cjs/CustomLandingScreenView-ZkRRqwv8.js +23 -0
- package/dist/cjs/DelegatedActionsConsentScreen-CCloltIN.js +1 -0
- package/dist/cjs/DelegatedActionsRevokeScreen-C424tTsi.js +1 -0
- package/dist/cjs/EmailInputForm-Y-nHsEtF.js +134 -0
- package/dist/cjs/EmbeddedWalletConnectingScreen-BY8pPl8L.js +1 -0
- package/dist/cjs/EmbeddedWalletCreatedScreen-DB3xOcH5.js +1 -0
- package/dist/cjs/EmbeddedWalletKeyExportScreen-AmRNb5xf.js +40 -0
- package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-C0yyRaA-.js +1 -0
- package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-BMIz5ine.js +1 -0
- package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-Bd_FF9pO.js +1 -0
- package/dist/cjs/EnrollTotp-DX2DwxuX.js +65 -0
- package/dist/cjs/ErrorBanner-dOLclNms.js +15 -0
- package/dist/cjs/ErrorMessage-BfTVyue9.js +8 -0
- package/dist/cjs/ErrorScreen-mFwTqRgU.js +4 -0
- package/dist/cjs/FarcasterConnectStatusScreen-CZ30Csdk.js +76 -0
- package/dist/cjs/FarcasterSignerStatusScreen-DBo98W3P.js +29 -0
- package/dist/cjs/FundSolWalletWithExternalSolanaWallet-CREkLnIc.js +2 -0
- package/dist/cjs/{FundWalletMethodHeader-D2b7Summ.js → FundWalletMethodHeader-4VjLY52r.js} +1 -1
- package/dist/cjs/FundingEditAmountScreen-CNU0vNs6.js +1 -0
- package/dist/cjs/FundingMethodSelectionScreen-CQIDT05-.js +1 -0
- package/dist/cjs/InAppBrowserLoginNotPossible-Dp7FvcEf.js +1 -0
- package/dist/cjs/InfoBanner-C15hE_sj.js +15 -0
- package/dist/cjs/InstallWalletScreen-kcrNZ7LA.js +1 -0
- package/dist/cjs/JsonTree-C28xtYM0.js +34 -0
- package/dist/cjs/LabelXs-C8rLnCfU.js +6 -0
- package/dist/cjs/LandingScreen-HmGqW-Ot.js +1 -0
- package/dist/cjs/Layouts-D3TOcPhm.js +77 -0
- package/dist/cjs/Link-BdtTp2J4.js +36 -0
- package/dist/cjs/LinkConflictScreen-66YlCOcB.js +79 -0
- package/dist/cjs/LinkEmailScreen-CLd6YPGS.js +1 -0
- package/dist/cjs/LinkPasskeyScreen-D8PZaYGV.js +105 -0
- package/dist/cjs/LinkPhoneScreen-BSS7yq5H.js +1 -0
- package/dist/cjs/LoadingSkeleton-BoyADunQ.js +17 -0
- package/dist/cjs/LoginFailedScreen-Dk5bm5nF.js +1 -0
- package/dist/cjs/ManualTransferScreen-BwpMuj8L.js +1 -0
- package/dist/cjs/MfaAuthEnrollmentFlowScreen-CsOyC4ty.js +1 -0
- package/dist/cjs/MfaAuthVerifyFlowScreen-Cq6GkG2E.js +1 -0
- package/dist/cjs/MfaEnrollmentFlowScreen-gTqBCZQj.js +1 -0
- package/dist/cjs/MfaVerifyFlowScreen-C5noVJw3.js +1 -0
- package/dist/cjs/ModalHeader-CrrmvrdJ.js +375 -0
- package/dist/cjs/MoonpayStatusScreen-BbJJzw-b.js +16 -0
- package/dist/cjs/OAuthStatusScreen-BofZaG2a.js +1 -0
- package/dist/cjs/OpenLink-L5LZ-pEm.js +39 -0
- package/dist/cjs/PasskeySelectSignupOrLogin-CKrs61Py.js +1 -0
- package/dist/cjs/PasskeyStatusScreen-g42i4Mvo.js +3 -0
- package/dist/cjs/PasswordRecoveryScreen-BKpzNviy.js +20 -0
- package/dist/cjs/PinInput-B12fA7pp.js +245 -0
- package/dist/cjs/{QrCode-DWvu0AHR.js → QrCode-CpVix74G.js} +16 -2
- package/dist/cjs/RecoveryOAuthStatusScreen-CcmiXAjl.js +1 -0
- package/dist/cjs/RecoveryPasswordCreateScreen-DVM3riPn.js +1 -0
- package/dist/cjs/RecoverySelectionScreen-DIlaAoqP.js +7 -0
- package/dist/cjs/Row-CMqYn75Q.js +11 -0
- package/dist/cjs/Screen-D0YJLo__.js +174 -0
- package/dist/cjs/ScreenHeader-CgYJ5Fmg.js +32 -0
- package/dist/cjs/ScreenLayout-JveHvcJ8.js +1 -0
- package/dist/cjs/SetAutomaticRecoveryScreen-xO_sfXpz.js +14 -0
- package/dist/cjs/SetWalletPasswordForm-8IcEJLVA.js +12 -0
- package/dist/cjs/SignRequestScreen-CamoMMM-.js +26 -0
- package/dist/cjs/StackedContainer-CM36po_U.js +24 -0
- package/dist/cjs/StandardSignAndSendTransactionScreen-6AluYC2k.js +20 -0
- package/dist/cjs/Subtitle-CR8zM7ZJ.js +13 -0
- package/dist/cjs/TelegramAuthScreen-Cb73d07X.js +1 -0
- package/dist/cjs/Title-ifTy35V5.js +7 -0
- package/dist/cjs/TodoList-Cii_KrAk.js +37 -0
- package/dist/cjs/TransactionDetails-qYKVGuJ7.js +111 -0
- package/dist/cjs/TransactionErrorView-B5L9vNDb.js +166 -0
- package/dist/cjs/TransferFromWalletScreen-DPpoJrZz.js +31 -0
- package/dist/cjs/TransferOrBridgeLoadingScreen-TirUWZnM.js +6 -0
- package/dist/cjs/UpdateEmailScreen-D2klV_7q.js +1 -0
- package/dist/cjs/UpdatePhoneScreen-DPK7kqIb.js +1 -0
- package/dist/cjs/UserLimitReachedScreen-N3RJRnTW.js +1 -0
- package/dist/cjs/Value-mhPsfsxe.js +17 -0
- package/dist/cjs/WalletInfoCard-CqAKxpIz.js +29 -0
- package/dist/cjs/WalletInterstitialScreen-P_mZUs5E.js +1 -0
- package/dist/cjs/WalletLink-Cv4ngHRB.js +22 -0
- package/dist/cjs/{WalletOverflowButton-4OUSs2qQ.js → WalletOverflowButton-Btvn5ZIk.js} +1 -1
- package/dist/cjs/WarningBanner-COl_Q0K3.js +15 -0
- package/dist/cjs/abstract-smart-wallets.js +1 -1
- package/dist/cjs/{context-B6zndZbE.js → context-BQBZ_ADw.js} +1 -1
- package/dist/cjs/{ethers-BrWeKm_S.js → ethers-DbNbG59G.js} +1 -1
- package/dist/cjs/extended-chains.js +1 -1
- package/dist/cjs/{get-is-unified-wallet-CYQvifpN.js → get-is-unified-wallet-BvMSdvUc.js} +1 -1
- package/dist/cjs/index-ByFhjjzH.js +70 -0
- package/dist/cjs/{index-xKFTBD9J.js → index-CgX5_MCM.js} +174 -5
- package/dist/cjs/index-D4W5OFmO.js +12 -0
- package/dist/cjs/{index-DBN8rlPN.js → index-DZnN2Bzr.js} +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/internal.js +1 -1
- package/dist/cjs/{prepareFundingModalData-DKaL1Oqz.js → prepareFundingModalData-DjA3GuX5.js} +1 -1
- package/dist/cjs/shared-D3goA11g.js +180 -0
- package/dist/cjs/shared-DBm7PUrg.js +18 -0
- package/dist/cjs/{shouldProceedtoEmbeddedWalletCreationFlow-Brj0fZpr.js → shouldProceedtoEmbeddedWalletCreationFlow-ZoB0nZek.js} +1 -1
- package/dist/cjs/{smart-wallets-DSBosnGS.js → smart-wallets-D4CVoR7Y.js} +1 -1
- package/dist/cjs/smart-wallets.js +1 -1
- package/dist/cjs/solana.js +1 -1
- package/dist/cjs/styles-CQnB5gHS.js +9 -0
- package/dist/cjs/styles-CfB2jpM8.js +93 -0
- package/dist/cjs/to-ui-error-Bn2yiSbL.js +4 -0
- package/dist/cjs/ui.js +294 -2
- package/dist/cjs/{use-create-wallet-without-fallback-DOZsyElA.js → use-create-wallet-without-fallback-CnImLq2R.js} +1 -1
- package/dist/cjs/{use-export-wallet-DYcsnUD8.js → use-export-wallet-B0Yz14lP.js} +1 -1
- package/dist/cjs/useActiveWallet-CJFU5uW9.js +185 -0
- package/dist/cjs/{useGetTokenPrice-tWpOVbJz.js → useGetTokenPrice-CVvPmZ8P.js} +1 -1
- package/dist/cjs/{useI18n-5bG-Cpbl.js → useI18n-BTc713en.js} +1 -1
- package/dist/cjs/{usePrivy-DZJwQPwT.js → usePrivy-CF_OJFHb.js} +1 -1
- package/dist/cjs/{useSolanaRpcClient-CEhNB-sj.js → useSolanaRpcClient-COrWRwgi.js} +1 -1
- package/dist/cjs/{useWallets-DXi6lmEg.js → useWallets-CejVNO5i.js} +1 -1
- package/dist/cjs/{useWallets-CMRZ0IEw.js → useWallets-DfhM_0qx.js} +1 -1
- package/dist/dts/index.d.mts +6793 -23
- package/dist/dts/index.d.ts +6793 -23
- package/dist/esm/AccountNotFoundScreen-SAoRBYPt.mjs +1 -0
- package/dist/esm/Address-DCNT9qfI.mjs +17 -0
- package/dist/esm/AffirmativeConsentScreen-C0OVdF1c.mjs +6 -0
- package/dist/esm/AllowlistRejectionScreen-Cct-waJ2.mjs +1 -0
- package/dist/esm/AuthenticateWithWalletScreen-Bkvu8ujc.mjs +1 -0
- package/dist/esm/AwaitingEvmToSolBridgingScreen-BsN93tBU.mjs +2 -0
- package/dist/esm/AwaitingExternalEthereumTransferScreen-BC11vrIp.mjs +2 -0
- package/dist/esm/AwaitingPasswordlessCodeScreen-GOaBmmDo.mjs +103 -0
- package/dist/esm/AwaitingSolToEvmBridgingScreen-BJ9kOZqs.mjs +2 -0
- package/dist/esm/BridgeNetworkSelectionView-M-oH2oBz.mjs +69 -0
- package/dist/esm/CaptchaScreen-D53Xo41F.mjs +1 -0
- package/dist/esm/Checkbox-BhNoOKjX.mjs +53 -0
- package/dist/esm/Chip-D2-wZOHJ.mjs +26 -0
- package/dist/esm/CoinbaseOnrampStatusScreen-CCI9ghgf.mjs +16 -0
- package/dist/esm/Column-C2X2MHYX.mjs +4 -0
- package/dist/esm/ConnectEmailForm-DYREF18y.mjs +3 -0
- package/dist/esm/ConnectLedgerScreen-DKa2XRwj.mjs +9 -0
- package/dist/esm/ConnectOnlyLandingScreen-CPdHrHlO.mjs +1 -0
- package/dist/esm/ConnectOnlyStatusScreen-BcPIfQVC.mjs +1 -0
- package/dist/esm/ConnectOrCreateScreen-Bqi22g9s.mjs +1 -0
- package/dist/esm/ConnectPhoneForm-Qkb8rJwn.mjs +97 -0
- package/dist/esm/ConnectWalletView-DIPHDDCY.mjs +171 -0
- package/dist/esm/ConnectionStatusScreen-Dq1apJ9v.mjs +7 -0
- package/dist/esm/CopyToClipboard-BGTSFnT3.mjs +39 -0
- package/dist/esm/CrossAppAuthScreen-BWmMkCMj.mjs +1 -0
- package/dist/esm/CustomLandingScreenView-BNfr2T51.mjs +23 -0
- package/dist/esm/DelegatedActionsConsentScreen-BPxadA77.mjs +1 -0
- package/dist/esm/DelegatedActionsRevokeScreen-if7lOzSL.mjs +1 -0
- package/dist/esm/EmailInputForm-Dgoii4vf.mjs +134 -0
- package/dist/esm/EmbeddedWalletConnectingScreen-CaBfDofq.mjs +1 -0
- package/dist/esm/EmbeddedWalletCreatedScreen-CQpQMReB.mjs +1 -0
- package/dist/esm/EmbeddedWalletKeyExportScreen-BENuPlQr.mjs +40 -0
- package/dist/esm/EmbeddedWalletOnAccountCreateScreen-D7KTGcaK.mjs +1 -0
- package/dist/esm/EmbeddedWalletPasswordUpdateScreen-rGoQOLww.mjs +1 -0
- package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-Cnh2RAR3.mjs +1 -0
- package/dist/esm/EnrollTotp-DEV0or6R.mjs +65 -0
- package/dist/esm/ErrorBanner-CQERa7bL.mjs +15 -0
- package/dist/esm/ErrorMessage-D8VaAP5m.mjs +8 -0
- package/dist/esm/ErrorScreen-C7CRlvK4.mjs +4 -0
- package/dist/esm/FarcasterConnectStatusScreen-BncX85cR.mjs +75 -0
- package/dist/esm/FarcasterSignerStatusScreen-BvYUPkuC.mjs +28 -0
- package/dist/esm/FundSolWalletWithExternalSolanaWallet-CtNGbUxH.mjs +1 -0
- package/dist/esm/{FundWalletMethodHeader-C0uPKdYw.mjs → FundWalletMethodHeader-SJUeDFRm.mjs} +1 -1
- package/dist/esm/FundingEditAmountScreen-3QpKWUpq.mjs +1 -0
- package/dist/esm/FundingMethodSelectionScreen-DVIbUia7.mjs +1 -0
- package/dist/esm/InAppBrowserLoginNotPossible-D9yoDlMN.mjs +1 -0
- package/dist/esm/InfoBanner-Dk1KghcK.mjs +15 -0
- package/dist/esm/InstallWalletScreen-UCKqrDea.mjs +1 -0
- package/dist/esm/JsonTree-aPaJmPx7.mjs +34 -0
- package/dist/esm/LabelXs-oqZNqbm_.mjs +6 -0
- package/dist/esm/LandingScreen-CnTxHWb2.mjs +1 -0
- package/dist/esm/Layouts-BlFm53ED.mjs +77 -0
- package/dist/esm/Link-DJ5gq9Di.mjs +36 -0
- package/dist/esm/LinkConflictScreen-DOIDMFMJ.mjs +79 -0
- package/dist/esm/LinkEmailScreen-C6mBQ3be.mjs +1 -0
- package/dist/esm/LinkPasskeyScreen-DIg97p-E.mjs +105 -0
- package/dist/esm/LinkPhoneScreen-CEZjt49Q.mjs +1 -0
- package/dist/esm/LoadingSkeleton-U6-3yFwI.mjs +17 -0
- package/dist/esm/LoginFailedScreen-jhimuKIL.mjs +1 -0
- package/dist/esm/ManualTransferScreen-B0FDKMnc.mjs +1 -0
- package/dist/esm/MfaAuthEnrollmentFlowScreen-ms8oHKbz.mjs +1 -0
- package/dist/esm/MfaAuthVerifyFlowScreen-Cknvwoa7.mjs +1 -0
- package/dist/esm/MfaEnrollmentFlowScreen-Cdnhw-bu.mjs +1 -0
- package/dist/esm/MfaVerifyFlowScreen-FVpFtGlV.mjs +1 -0
- package/dist/esm/ModalHeader-B32Zin0a.mjs +375 -0
- package/dist/esm/MoonpayStatusScreen-B5V9Yl-l.mjs +16 -0
- package/dist/esm/OAuthStatusScreen-B4J3yosy.mjs +1 -0
- package/dist/esm/OpenLink-DZHy38vr.mjs +39 -0
- package/dist/esm/PasskeySelectSignupOrLogin-D2BuKrXP.mjs +1 -0
- package/dist/esm/PasskeyStatusScreen-CTV1zY6O.mjs +3 -0
- package/dist/esm/PasswordRecoveryScreen-BSw8gxaj.mjs +20 -0
- package/dist/esm/PinInput-3SLvbnQa.mjs +245 -0
- package/dist/esm/QrCode-CA7VcP6Y.mjs +16 -0
- package/dist/esm/RecoveryOAuthStatusScreen-DZbf8Bb6.mjs +1 -0
- package/dist/esm/RecoveryPasswordCreateScreen-Br0bjUXH.mjs +1 -0
- package/dist/esm/RecoverySelectionScreen-C8uNTvvv.mjs +7 -0
- package/dist/esm/Row-C9vrS4Zi.mjs +11 -0
- package/dist/esm/Screen-DHkF35VN.mjs +173 -0
- package/dist/esm/ScreenHeader-CHmc4-Lu.mjs +32 -0
- package/dist/esm/ScreenLayout-DptX1e0c.mjs +1 -0
- package/dist/esm/SetAutomaticRecoveryScreen-7R4owaUE.mjs +14 -0
- package/dist/esm/SetWalletPasswordForm-BHKufUYQ.mjs +12 -0
- package/dist/esm/SignRequestScreen-BrotR8aZ.mjs +26 -0
- package/dist/esm/StackedContainer-B2vaEl56.mjs +24 -0
- package/dist/esm/StandardSignAndSendTransactionScreen-BiZtfZUw.mjs +20 -0
- package/dist/esm/Subtitle-CV-2yKE4.mjs +13 -0
- package/dist/esm/TelegramAuthScreen-BPt7Q_Py.mjs +1 -0
- package/dist/esm/Title-BnzYV3Is.mjs +7 -0
- package/dist/esm/TodoList-CgrU7uwu.mjs +37 -0
- package/dist/esm/TransactionDetails-CUlkPVdC.mjs +111 -0
- package/dist/esm/TransactionErrorView-DSf6mRm9.mjs +166 -0
- package/dist/esm/TransferFromWalletScreen-CrnAZtNm.mjs +31 -0
- package/dist/esm/TransferOrBridgeLoadingScreen-DTNFXZqE.mjs +6 -0
- package/dist/esm/UpdateEmailScreen-8JUTZQXY.mjs +1 -0
- package/dist/esm/UpdatePhoneScreen-DXFfn41I.mjs +1 -0
- package/dist/esm/UserLimitReachedScreen-DwqeaCAS.mjs +1 -0
- package/dist/esm/Value-tcJV9e0L.mjs +17 -0
- package/dist/esm/WalletInfoCard-CV_N8dG_.mjs +29 -0
- package/dist/esm/WalletInterstitialScreen-BgxtaYfl.mjs +1 -0
- package/dist/esm/WalletLink-DAJA2_WV.mjs +22 -0
- package/dist/esm/{WalletOverflowButton-yerFFdMA.mjs → WalletOverflowButton-BHHEaMnB.mjs} +1 -1
- package/dist/esm/WarningBanner-c8L53pJ2.mjs +15 -0
- package/dist/esm/abstract-smart-wallets.mjs +1 -1
- package/dist/esm/context-BuN0M_vH.mjs +1 -0
- package/dist/esm/{ethers-CUqPIRrW.mjs → ethers-CJEkGodq.mjs} +1 -1
- package/dist/esm/extended-chains.mjs +1 -1
- package/dist/esm/{get-is-unified-wallet-GLvRyJlT.mjs → get-is-unified-wallet-DF10lirM.mjs} +1 -1
- package/dist/esm/{index-B24hEnAn.mjs → index-B2ZHk27q.mjs} +174 -5
- package/dist/esm/{index-DT54fwyL.mjs → index-CA0UPK2p.mjs} +1 -1
- package/dist/esm/index-CjKmnG3I.mjs +12 -0
- package/dist/esm/index-Dq_xe9dz.mjs +70 -0
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/internal.mjs +1 -1
- package/dist/esm/{prepareFundingModalData-lYYA8ZfI.mjs → prepareFundingModalData-BHP1zZ9a.mjs} +1 -1
- package/dist/esm/shared-8FNFm3Zd.mjs +180 -0
- package/dist/esm/shared-FM0rljBt.mjs +18 -0
- package/dist/esm/{shouldProceedtoEmbeddedWalletCreationFlow-F4FtZ8gq.mjs → shouldProceedtoEmbeddedWalletCreationFlow-Z89kclWd.mjs} +1 -1
- package/dist/esm/{smart-wallets-Bk5LCXUu.mjs → smart-wallets-HoA3s19q.mjs} +1 -1
- package/dist/esm/smart-wallets.mjs +1 -1
- package/dist/esm/solana.mjs +1 -1
- package/dist/esm/styles-BsotlekN.mjs +9 -0
- package/dist/esm/styles-Bz8FxEx_.mjs +93 -0
- package/dist/esm/to-ui-error-CBHFimQU.mjs +4 -0
- package/dist/esm/ui.mjs +294 -2
- package/dist/esm/{use-create-wallet-without-fallback-DCFiaOUd.mjs → use-create-wallet-without-fallback-CMjcGZvq.mjs} +1 -1
- package/dist/esm/{use-export-wallet-BSyJ6wXH.mjs → use-export-wallet-BjUUQuiG.mjs} +1 -1
- package/dist/esm/useActiveWallet-BY2wKTVp.mjs +185 -0
- package/dist/esm/{useGetTokenPrice-DOgFQ9vL.mjs → useGetTokenPrice-B4b3Y3ZV.mjs} +1 -1
- package/dist/esm/{useI18n-BotQj3s2.mjs → useI18n-CS_dxsYR.mjs} +1 -1
- package/dist/esm/{usePrivy-C5z76Qhs.mjs → usePrivy-DQKLhXbj.mjs} +1 -1
- package/dist/esm/{useSolanaRpcClient-BMkY8W80.mjs → useSolanaRpcClient-CRKGswty.mjs} +1 -1
- package/dist/esm/{useWallets-CHDUUIx3.mjs → useWallets-CvGE4Njt.mjs} +1 -1
- package/dist/esm/{useWallets-Aw21dxK9.mjs → useWallets-DTjrHNDw.mjs} +1 -1
- package/package.json +31 -31
- package/dist/cjs/AccountNotFoundScreen-CccXh5Ow.js +0 -1
- package/dist/cjs/Address-szbhr3eZ.js +0 -1
- package/dist/cjs/AffirmativeConsentScreen-DmfPpl2i.js +0 -1
- package/dist/cjs/AllowlistRejectionScreen-B75b3HjF.js +0 -1
- package/dist/cjs/AuthenticateWithWalletScreen-CMdBkn5P.js +0 -1
- package/dist/cjs/AwaitingEvmToSolBridgingScreen-zqMa3M-c.js +0 -2
- package/dist/cjs/AwaitingExternalEthereumTransferScreen-Tm1ncf9g.js +0 -2
- package/dist/cjs/AwaitingPasswordlessCodeScreen-DSJA4ZJF.js +0 -1
- package/dist/cjs/AwaitingSolToEvmBridgingScreen-Wrz0ccTo.js +0 -2
- package/dist/cjs/BridgeNetworkSelectionView-CfUjmKJ-.js +0 -1
- package/dist/cjs/Button-CyX7JNsa.js +0 -2
- package/dist/cjs/CaptchaScreen-MhvzUgNQ.js +0 -1
- package/dist/cjs/Checkbox-DXPQZFlQ.js +0 -1
- package/dist/cjs/Chip-ChrHHazc.js +0 -1
- package/dist/cjs/CoinbaseOnrampStatusScreen-BhR230ZS.js +0 -1
- package/dist/cjs/Column-C2bAbJE0.js +0 -1
- package/dist/cjs/ConnectEmailForm-BSkD5EKc.js +0 -1
- package/dist/cjs/ConnectLedgerScreen-BvlmHoA3.js +0 -1
- package/dist/cjs/ConnectOnlyLandingScreen-nbPM7web.js +0 -1
- package/dist/cjs/ConnectOnlyStatusScreen-C2Wl0jxa.js +0 -1
- package/dist/cjs/ConnectOrCreateScreen-CtzSeQ-J.js +0 -1
- package/dist/cjs/ConnectPhoneForm-BYlpF5oC.js +0 -1
- package/dist/cjs/ConnectWalletView-O70yBQFu.js +0 -1
- package/dist/cjs/ConnectionStatusScreen-DML_ZDfW.js +0 -1
- package/dist/cjs/CopyToClipboard-fd8Z3kQX.js +0 -1
- package/dist/cjs/CrossAppAuthScreen-Dz6PZNOw.js +0 -1
- package/dist/cjs/CustomLandingScreenView-CBW3Yr3o.js +0 -2
- package/dist/cjs/DelegatedActionsConsentScreen-CN5Y30M4.js +0 -1
- package/dist/cjs/DelegatedActionsRevokeScreen-CMkHii4b.js +0 -1
- package/dist/cjs/EmailInputForm-tjrhBacA.js +0 -1
- package/dist/cjs/EmbeddedWalletConnectingScreen-SBfyKPRv.js +0 -1
- package/dist/cjs/EmbeddedWalletCreatedScreen-sMHJGzfv.js +0 -1
- package/dist/cjs/EmbeddedWalletKeyExportScreen-C5uNOzfr.js +0 -2
- package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-B84q1xGE.js +0 -1
- package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-CxeydwO6.js +0 -1
- package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-BVc-qFqk.js +0 -1
- package/dist/cjs/EnrollTotp-DQKYLdAQ.js +0 -1
- package/dist/cjs/ErrorBanner-CMjaobRI.js +0 -1
- package/dist/cjs/ErrorMessage-f0cRWc29.js +0 -1
- package/dist/cjs/ErrorScreen-MrSIGio_.js +0 -1
- package/dist/cjs/FarcasterConnectStatusScreen-BYDqDWAC.js +0 -2
- package/dist/cjs/FarcasterSignerStatusScreen-Bik8wrMR.js +0 -2
- package/dist/cjs/FundSolWalletWithExternalSolanaWallet-CUYnW9m7.js +0 -2
- package/dist/cjs/FundingEditAmountScreen-BNL_9NSc.js +0 -1
- package/dist/cjs/FundingMethodSelectionScreen-pjtPGWB4.js +0 -1
- package/dist/cjs/InAppBrowserLoginNotPossible-BDP_0K6U.js +0 -1
- package/dist/cjs/InfoBanner-CTx1eRnV.js +0 -1
- package/dist/cjs/InstallWalletScreen-DatnwQ5S.js +0 -1
- package/dist/cjs/JsonTree-xaeo0q6z.js +0 -1
- package/dist/cjs/LabelXs-CYMv6rOZ.js +0 -1
- package/dist/cjs/LandingScreen-PhSFsQAW.js +0 -1
- package/dist/cjs/Layouts-dRL0OSpp.js +0 -1
- package/dist/cjs/Link-DmzPZ_M7.js +0 -1
- package/dist/cjs/LinkConflictScreen-DhG3p7sJ.js +0 -1
- package/dist/cjs/LinkEmailScreen-nUhaHOKN.js +0 -1
- package/dist/cjs/LinkPasskeyScreen-n7IJuNlF.js +0 -1
- package/dist/cjs/LinkPhoneScreen-Dek16_Y5.js +0 -1
- package/dist/cjs/LoadingSkeleton-DoCrfGnl.js +0 -1
- package/dist/cjs/LoginFailedScreen-Du15IoL5.js +0 -1
- package/dist/cjs/ManualTransferScreen-CBWn4JvN.js +0 -1
- package/dist/cjs/MfaAuthEnrollmentFlowScreen-BT0TbVv2.js +0 -1
- package/dist/cjs/MfaAuthVerifyFlowScreen-CRQ4FiuC.js +0 -1
- package/dist/cjs/MfaEnrollmentFlowScreen-CqRzU9XV.js +0 -1
- package/dist/cjs/MfaVerifyFlowScreen-BDOehbLb.js +0 -1
- package/dist/cjs/ModalHeader-D9UKo-3h.js +0 -3
- package/dist/cjs/MoonpayStatusScreen-CdZgJRrM.js +0 -1
- package/dist/cjs/OAuthStatusScreen-CIma0mu9.js +0 -1
- package/dist/cjs/OpenLink-BpCUf9iR.js +0 -1
- package/dist/cjs/PasskeySelectSignupOrLogin-D1NqVZW7.js +0 -1
- package/dist/cjs/PasskeyStatusScreen-Q0ehEMbT.js +0 -1
- package/dist/cjs/PasswordRecoveryScreen-C3g17CVW.js +0 -1
- package/dist/cjs/PinInput-DSI6rjOn.js +0 -1
- package/dist/cjs/RecoveryOAuthStatusScreen-DN0I--HN.js +0 -1
- package/dist/cjs/RecoveryPasswordCreateScreen-BAAoBkhn.js +0 -1
- package/dist/cjs/RecoverySelectionScreen-Chnml1GU.js +0 -1
- package/dist/cjs/Row-CxDF-VMy.js +0 -1
- package/dist/cjs/Screen-Cjd8kgCg.js +0 -9
- package/dist/cjs/ScreenHeader-CyURV6Ti.js +0 -2
- package/dist/cjs/ScreenLayout-0BeoRza6.js +0 -1
- package/dist/cjs/SetAutomaticRecoveryScreen-C82NF48g.js +0 -1
- package/dist/cjs/SetWalletPasswordForm-CwwM_HsZ.js +0 -2
- package/dist/cjs/SignRequestScreen-CN-YxEIW.js +0 -1
- package/dist/cjs/StackedContainer-ByB6Mdu0.js +0 -1
- package/dist/cjs/StandardSignAndSendTransactionScreen-BWqXsnZ-.js +0 -1
- package/dist/cjs/Subtitle-Dtmrw8l5.js +0 -1
- package/dist/cjs/TelegramAuthScreen-JINnIb1q.js +0 -1
- package/dist/cjs/Title-C-tHJvrb.js +0 -1
- package/dist/cjs/TodoList-Cm_a93ef.js +0 -2
- package/dist/cjs/TransactionDetails-DHxuRDQm.js +0 -3
- package/dist/cjs/TransactionErrorView-DV1Rbaza.js +0 -2
- package/dist/cjs/TransferFromWalletScreen-D1RGQm-9.js +0 -1
- package/dist/cjs/TransferOrBridgeLoadingScreen-0auJk1V_.js +0 -1
- package/dist/cjs/UpdateEmailScreen-CjEQsyJ6.js +0 -1
- package/dist/cjs/UpdatePhoneScreen-66qCevzc.js +0 -1
- package/dist/cjs/UserLimitReachedScreen-OwK_WZiy.js +0 -1
- package/dist/cjs/Value-C-XtZyFa.js +0 -1
- package/dist/cjs/WalletInfoCard-BgUUNBb1.js +0 -1
- package/dist/cjs/WalletInterstitialScreen-BMQau9a_.js +0 -1
- package/dist/cjs/WalletLink-B8qg2sNq.js +0 -3
- package/dist/cjs/WarningBanner-B_Gs_15p.js +0 -1
- package/dist/cjs/index-CRFXS9pP.js +0 -1
- package/dist/cjs/index-JLbo6ZA0.js +0 -1
- package/dist/cjs/shared-BPGwTh8c.js +0 -1
- package/dist/cjs/shared-DAxDIdOV.js +0 -1
- package/dist/cjs/styles-Ca_DS00a.js +0 -1
- package/dist/cjs/styles-D4VeJNv1.js +0 -1
- package/dist/cjs/to-ui-error-3msE736K.js +0 -1
- package/dist/cjs/useActiveWallet-uEEQi70o.js +0 -1
- package/dist/esm/AccountNotFoundScreen-BANDQZGv.mjs +0 -1
- package/dist/esm/Address-C2aXxM2N.mjs +0 -1
- package/dist/esm/AffirmativeConsentScreen-CFZO2H5q.mjs +0 -1
- package/dist/esm/AllowlistRejectionScreen-DBeGUmgt.mjs +0 -1
- package/dist/esm/AuthenticateWithWalletScreen-ZM6DZFh1.mjs +0 -1
- package/dist/esm/AwaitingEvmToSolBridgingScreen-8IBtNu5_.mjs +0 -2
- package/dist/esm/AwaitingExternalEthereumTransferScreen-BN4n273Y.mjs +0 -2
- package/dist/esm/AwaitingPasswordlessCodeScreen-BquZxC7l.mjs +0 -1
- package/dist/esm/AwaitingSolToEvmBridgingScreen-B0I6wDuo.mjs +0 -2
- package/dist/esm/BridgeNetworkSelectionView-BZmf7ayB.mjs +0 -1
- package/dist/esm/Button-3JMVXKiE.mjs +0 -2
- package/dist/esm/CaptchaScreen-Bnh-Gpgm.mjs +0 -1
- package/dist/esm/Checkbox-NmGCZeKL.mjs +0 -1
- package/dist/esm/Chip-Bsgj4Yc-.mjs +0 -1
- package/dist/esm/CoinbaseOnrampStatusScreen-_W6kQCwE.mjs +0 -1
- package/dist/esm/Column-DQ5Vw9t1.mjs +0 -1
- package/dist/esm/ConnectEmailForm-o04NTrIc.mjs +0 -1
- package/dist/esm/ConnectLedgerScreen-CQUW_48V.mjs +0 -1
- package/dist/esm/ConnectOnlyLandingScreen-BtemYXlu.mjs +0 -1
- package/dist/esm/ConnectOnlyStatusScreen-CN2kWiW2.mjs +0 -1
- package/dist/esm/ConnectOrCreateScreen-BC1JYHYR.mjs +0 -1
- package/dist/esm/ConnectPhoneForm-CK2ZaLcy.mjs +0 -1
- package/dist/esm/ConnectWalletView-D3ZQBnjF.mjs +0 -1
- package/dist/esm/ConnectionStatusScreen-BHg6K1gF.mjs +0 -1
- package/dist/esm/CopyToClipboard-DatKc59_.mjs +0 -1
- package/dist/esm/CrossAppAuthScreen-D1gqy4CI.mjs +0 -1
- package/dist/esm/CustomLandingScreenView-DOwh2oce.mjs +0 -2
- package/dist/esm/DelegatedActionsConsentScreen-C2p3P6bN.mjs +0 -1
- package/dist/esm/DelegatedActionsRevokeScreen-C4XKaajw.mjs +0 -1
- package/dist/esm/EmailInputForm-B4hjCxRU.mjs +0 -1
- package/dist/esm/EmbeddedWalletConnectingScreen-k-UW2In7.mjs +0 -1
- package/dist/esm/EmbeddedWalletCreatedScreen-D-5pbs0R.mjs +0 -1
- package/dist/esm/EmbeddedWalletKeyExportScreen-C35WVhPC.mjs +0 -2
- package/dist/esm/EmbeddedWalletOnAccountCreateScreen-BbhGfibt.mjs +0 -1
- package/dist/esm/EmbeddedWalletPasswordUpdateScreen-B3eyAAfe.mjs +0 -1
- package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-D7wjWeB8.mjs +0 -1
- package/dist/esm/EnrollTotp-BE-JDa07.mjs +0 -1
- package/dist/esm/ErrorBanner-BdiArMwu.mjs +0 -1
- package/dist/esm/ErrorMessage-Cx8GKGhL.mjs +0 -1
- package/dist/esm/ErrorScreen-CR_0-6OL.mjs +0 -1
- package/dist/esm/FarcasterConnectStatusScreen-DcwiNT96.mjs +0 -1
- package/dist/esm/FarcasterSignerStatusScreen-DmELTB-0.mjs +0 -1
- package/dist/esm/FundSolWalletWithExternalSolanaWallet-BDy0ldlm.mjs +0 -1
- package/dist/esm/FundingEditAmountScreen-aSBCTHvs.mjs +0 -1
- package/dist/esm/FundingMethodSelectionScreen-BF0zdnRp.mjs +0 -1
- package/dist/esm/InAppBrowserLoginNotPossible-MMzbXP1G.mjs +0 -1
- package/dist/esm/InfoBanner-D6C6Bt8L.mjs +0 -1
- package/dist/esm/InstallWalletScreen-CrnAF_wK.mjs +0 -1
- package/dist/esm/JsonTree-Bvd2C29R.mjs +0 -1
- package/dist/esm/LabelXs-BOisBtqT.mjs +0 -1
- package/dist/esm/LandingScreen-DvQZRxAA.mjs +0 -1
- package/dist/esm/Layouts-Bmf8DxNP.mjs +0 -1
- package/dist/esm/Link-DwjLfHwW.mjs +0 -1
- package/dist/esm/LinkConflictScreen-CyCVN1lq.mjs +0 -1
- package/dist/esm/LinkEmailScreen-D5s-Ggjy.mjs +0 -1
- package/dist/esm/LinkPasskeyScreen-Br7W1Zmq.mjs +0 -1
- package/dist/esm/LinkPhoneScreen-DbRDyzwM.mjs +0 -1
- package/dist/esm/LoadingSkeleton-CHdaq3pb.mjs +0 -1
- package/dist/esm/LoginFailedScreen-B1tnBE4h.mjs +0 -1
- package/dist/esm/ManualTransferScreen-pFyGqOCu.mjs +0 -1
- package/dist/esm/MfaAuthEnrollmentFlowScreen-C8Pvz5fy.mjs +0 -1
- package/dist/esm/MfaAuthVerifyFlowScreen-CJEESJMU.mjs +0 -1
- package/dist/esm/MfaEnrollmentFlowScreen-DNMYRR9X.mjs +0 -1
- package/dist/esm/MfaVerifyFlowScreen-CzhmszLp.mjs +0 -1
- package/dist/esm/ModalHeader-B27O6soE.mjs +0 -3
- package/dist/esm/MoonpayStatusScreen-CzQ-mLP5.mjs +0 -1
- package/dist/esm/OAuthStatusScreen-D1IVqsCW.mjs +0 -1
- package/dist/esm/OpenLink-BpeNYBKs.mjs +0 -1
- package/dist/esm/PasskeySelectSignupOrLogin-CQUv5kpw.mjs +0 -1
- package/dist/esm/PasskeyStatusScreen-Co_LVG4x.mjs +0 -1
- package/dist/esm/PasswordRecoveryScreen-CKc7ZSJe.mjs +0 -1
- package/dist/esm/PinInput-C3_MNxMt.mjs +0 -1
- package/dist/esm/QrCode-CGBH7ZqU.mjs +0 -2
- package/dist/esm/RecoveryOAuthStatusScreen-Co_qik6B.mjs +0 -1
- package/dist/esm/RecoveryPasswordCreateScreen-DeZGEgr1.mjs +0 -1
- package/dist/esm/RecoverySelectionScreen-BOUh-dCZ.mjs +0 -1
- package/dist/esm/Row-CG0lSY5Z.mjs +0 -1
- package/dist/esm/Screen-Bj-1pwMI.mjs +0 -8
- package/dist/esm/ScreenHeader-Biz1wq02.mjs +0 -2
- package/dist/esm/ScreenLayout-Dp0ezg8Q.mjs +0 -1
- package/dist/esm/SetAutomaticRecoveryScreen-DqeQkzbI.mjs +0 -1
- package/dist/esm/SetWalletPasswordForm-D9WKtYos.mjs +0 -2
- package/dist/esm/SignRequestScreen-ClKQEiLC.mjs +0 -1
- package/dist/esm/StackedContainer-BrIQsdas.mjs +0 -1
- package/dist/esm/StandardSignAndSendTransactionScreen-COscrw9p.mjs +0 -1
- package/dist/esm/Subtitle-DkvfP2Ev.mjs +0 -1
- package/dist/esm/TelegramAuthScreen-DC1ppGbz.mjs +0 -1
- package/dist/esm/Title-D0pfZff-.mjs +0 -1
- package/dist/esm/TodoList-Dn0Qu-vv.mjs +0 -2
- package/dist/esm/TransactionDetails-BBNigCES.mjs +0 -3
- package/dist/esm/TransactionErrorView-DKnANlpi.mjs +0 -2
- package/dist/esm/TransferFromWalletScreen-DW25GKHH.mjs +0 -1
- package/dist/esm/TransferOrBridgeLoadingScreen-R7No-8Yr.mjs +0 -1
- package/dist/esm/UpdateEmailScreen-CXd8_t7z.mjs +0 -1
- package/dist/esm/UpdatePhoneScreen-B9pfgcCa.mjs +0 -1
- package/dist/esm/UserLimitReachedScreen-pxpwGSM-.mjs +0 -1
- package/dist/esm/Value-B4M62ove.mjs +0 -1
- package/dist/esm/WalletInfoCard-DFrqmXTc.mjs +0 -1
- package/dist/esm/WalletInterstitialScreen-BduifiaN.mjs +0 -1
- package/dist/esm/WalletLink-D5DTXYny.mjs +0 -3
- package/dist/esm/WarningBanner-BDp-QC9i.mjs +0 -1
- package/dist/esm/context-BqHnoxK5.mjs +0 -1
- package/dist/esm/index-5iW2YlYC.mjs +0 -1
- package/dist/esm/index-CJMgUOnw.mjs +0 -1
- package/dist/esm/shared-CtYf3O54.mjs +0 -1
- package/dist/esm/shared-RdgpdEMG.mjs +0 -1
- package/dist/esm/styles-BxA7nKxI.mjs +0 -1
- package/dist/esm/styles-DY17fuAX.mjs +0 -1
- package/dist/esm/to-ui-error-ySeuG-hJ.mjs +0 -1
- package/dist/esm/useActiveWallet-CBIiGG1k.mjs +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ofetch as e}from"ofetch";import{useState as t,useRef as n,useEffect as a}from"react";import{M as r,v as o,w as i,x as u}from"./context-
|
|
1
|
+
import{ofetch as e}from"ofetch";import{useState as t,useRef as n,useEffect as a}from"react";import{M as r,v as o,w as i,x as u}from"./context-BuN0M_vH.mjs";import{u as s}from"./internal-context-e-Eni5bG.mjs";import{a as d}from"./get-is-unified-wallet-DF10lirM.mjs";import{O as c}from"./analytics-mkkvFRju.mjs";const m="moonpay";function l(e){return parseFloat(e)}function y(l,y=!1){let[f,g]=t(null),{createAnalyticsEvent:p}=s(),{data:h,navigate:v,setModalData:w}=d(),A=h?.funding,F=n(0);return a((()=>{let t=setInterval((async()=>{if(l)try{let[n]=await async function(t,n){return e(`${n?r:o}/transactions/ext/${t}`,{query:{apiKey:n?i:u}})}(l,y),a="waitingAuthorization"===n.status&&"credit_debit_card"===n.paymentMethod?"pending":n.status;if(["failed","completed","awaitingAuthorization"].includes(a)&&(p({eventName:c,payload:{status:a,provider:m,paymentMethod:n.paymentMethod,cardPaymentType:n.cardPaymentType,currency:n.currency?.code,baseCurrencyAmount:n.baseCurrencyAmount,quoteCurrencyAmount:n.quoteCurrencyAmount,feeAmount:n.feeAmount,extraFeeAmount:n.extraFeeAmount,networkFeeAmount:n.networkFeeAmount,isSandbox:y}}),clearInterval(t)),"failed"===a||"serviceFailure"===a)return w({funding:{...A,errorMessage:"Something went wrong adding funds from Moonpay. Please try again or use another method to fund your wallet."},solanaFundingData:h?.solanaFundingData}),void v("FundingMethodSelectionScreen");g(a)}catch(e){404!==e.response?.status&&(F.current+=1),F.current>=3&&(p({eventName:c,payload:{status:"serviceFailure",provider:m}}),clearInterval(t),w({funding:{...A,errorMessage:"Something went wrong adding funds from Moonpay. Please try again or use another method to fund your wallet."},solanaFundingData:h?.solanaFundingData}),v("FundingMethodSelectionScreen"))}}),3e3);return()=>clearInterval(t)}),[l,F]),f}export{l as a,y as u};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import{jsxs as e,jsx as t,Fragment as n}from"react/jsx-runtime";import{useState as a,useMemo as s,useCallback as i,useEffect as o}from"react";import{createPublicClient as r,http as p,toHex as l,decodeFunctionData as u,decodeAbiParameters as m,formatEther as c}from"viem";import{getJsonRpcEndpointFromChain as d,formatTokenAmount as y,ProviderErrors as f}from"@privy-io/js-sdk-core";import{A as b}from"./Address-DCNT9qfI.mjs";import{u as T,q as h}from"./context-BuN0M_vH.mjs";import{P as g,j as I}from"./prepareFundingModalData-BHP1zZ9a.mjs";import{u as v}from"./internal-context-e-Eni5bG.mjs";import{a as k,u as j}from"./get-is-unified-wallet-DF10lirM.mjs";import{u as E}from"./useGetTokenPrice-B4b3Y3ZV.mjs";import{u as M}from"./useWalletBalance-CkNw6kj0.mjs";import{g as C}from"./getErc20TokenInfo-BFoeg5F6.mjs";import{f as F}from"./formatErc20TokenAmount-BuPk9xcy.mjs";import{g as _,a as w,p as x}from"./ethers-CJEkGodq.mjs";import{Y as N,D as S}from"./useActiveWallet-BY2wKTVp.mjs";import{g as A}from"./getPublicClient-A9RSftUZ.mjs";import{ErrorScreenView as O}from"./ErrorScreen-C7CRlvK4.mjs";import{styled as R}from"styled-components";import{M as D,B as $,P as B}from"./ModalHeader-B32Zin0a.mjs";import{D as P}from"./JsonTree-aPaJmPx7.mjs";import{T as q,S as L}from"./TransactionErrorView-DSf6mRm9.mjs";import{R as U}from"./Layouts-BlFm53ED.mjs";import{S as W}from"./ScreenHeader-CHmc4-Lu.mjs";import{T as V}from"./TransactionDetails-CUlkPVdC.mjs";import{E as G}from"./transfer-CMPmjPsM.mjs";import{p as H}from"./index-B2ZHk27q.mjs";import"lucide-react";import"tinycolor2";import"eventemitter3";import"ofetch";import"./useGetSolPrice-Cfm8o9C5.mjs";import"zustand";import"react-device-detect";import"./events-context-CI0iqAXA.mjs";import"viem/utils";import"./useWallets-DTjrHNDw.mjs";import"./reservoir-kvLjIrEo.mjs";import"./ScreenLayout-DptX1e0c.mjs";import"./Screen-DHkF35VN.mjs";import"./index-Dq_xe9dz.mjs";import"uuid";import"jose";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-DQKLhXbj.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"js-cookie";import"./frame-CwE9r3cT.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-eEm9Olt_.mjs";import"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"@heroicons/react/24/outline";import"./Value-tcJV9e0L.mjs";import"./LoadingSkeleton-U6-3yFwI.mjs";import"./Row-C9vrS4Zi.mjs";import"./ErrorMessage-D8VaAP5m.mjs";import"./LabelXs-oqZNqbm_.mjs";import"./Subtitle-CV-2yKE4.mjs";import"./Title-BnzYV3Is.mjs";import"./WalletInfoCard-CV_N8dG_.mjs";import"./shared-FM0rljBt.mjs";import"./Checkbox-BhNoOKjX.mjs";import"./ErrorBanner-CQERa7bL.mjs";import"@heroicons/react/24/outline/ExclamationCircleIcon";import"./WarningBanner-c8L53pJ2.mjs";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"@heroicons/react/24/outline/ClipboardDocumentCheckIcon";import"@heroicons/react/24/outline/ClipboardDocumentIcon";import"./WalletLink-DAJA2_WV.mjs";import"./getFormattedUsdFromLamports-B6EqSEho.mjs";import"./transaction-CnfuREWo.mjs";import"@heroicons/react/24/outline/ChevronDownIcon";let z=[{constant:!0,inputs:[{name:"_owner",type:"address"}],name:"balanceOf",outputs:[{name:"balance",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"}],J=R.div`
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
min-height: 72px;
|
|
5
|
+
`;var Q=({onBack:n,details:a})=>/*#__PURE__*/e(J,{children:[/*#__PURE__*/t(D,{backFn:n}),/*#__PURE__*/t(P,{data:a}),/*#__PURE__*/t($,{})]});let X=({gasUsed:e,effectiveGasPrice:t})=>{if(e&&t)try{return l(e*t)}catch(e){return}};const Y=({txn:a,receipt:s,transactionInfo:i,onClose:o,tokenPrice:r,tokenSymbol:p,receiptHeader:l,receiptDescription:u})=>/*#__PURE__*/e(n,{children:[/*#__PURE__*/t(D,{onClose:o}),/*#__PURE__*/t(W,{title:l??"Transaction complete!",description:u??"You're all set."}),/*#__PURE__*/t(V,{tokenPrice:r,from:s.from,to:s.to,gas:X(s),txn:a,transactionInfo:i,tokenSymbol:p}),/*#__PURE__*/t(N,{}),/*#__PURE__*/t(K,{loading:!1,onClick:o,children:"All Done"}),/*#__PURE__*/t(U,{}),/*#__PURE__*/t($,{})]});let K=R(B)`
|
|
6
|
+
&& {
|
|
7
|
+
margin-top: 24px;
|
|
8
|
+
}
|
|
9
|
+
transition:
|
|
10
|
+
color 350ms ease,
|
|
11
|
+
background-color 350ms ease;
|
|
12
|
+
`;const Z=[{constant:!1,inputs:[{name:"_salt",type:"bytes32"},{name:"_initializer",type:"bytes"}],name:"deployAccount",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"}],ee=[{name:"from",type:"address"},{name:"param2",type:"address"},{name:"param3",type:"bytes"},{name:"param4",type:"tuple",components:[]},{type:"tuple",components:[{name:"param5",type:"address"},{name:"param6",type:"uint256"},{name:"param7",type:"uint256"},{name:"encodedInitData",type:"bytes"}]}],te=[{constant:!1,inputs:[{name:"spender",type:"address"},{name:"value",type:"uint256"}],name:"approve",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"}],ne=[{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"}],name:"mint",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"},{internalType:"uint256",name:"quantity",type:"uint256"},{internalType:"bytes",name:"data",type:"bytes"}],name:"mint",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"},{internalType:"uint256",name:"quantity",type:"uint256"},{internalType:"bytes",name:"data",type:"bytes"}],name:"mint",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256[]",name:"tokenIds",type:"uint256[]"},{internalType:"uint256[]",name:"quantities",type:"uint256[]"},{internalType:"bytes",name:"data",type:"bytes"}],name:"mintBatch",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256[]",name:"tokenIds",type:"uint256[]"},{internalType:"uint256[]",name:"quantities",type:"uint256[]"},{internalType:"bytes",name:"data",type:"bytes"}],name:"mintBatch",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"quantity",type:"uint256"}],name:"mint",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"quantity",type:"uint256"}],name:"mint",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"}],name:"safeMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"}],name:"safeMint",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"string",name:"uri",type:"string"}],name:"safeMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"string",name:"uri",type:"string"}],name:"safeMint",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"}],name:"safeMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"}],name:"safeMint",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"},{internalType:"string",name:"uri",type:"string"}],name:"safeMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"},{internalType:"string",name:"uri",type:"string"}],name:"safeMint",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"batchMint",outputs:[],stateMutability:"payable",type:"function"}],ae=[{constant:!1,inputs:[{name:"_from",type:"address"},{name:"_to",type:"address"},{name:"_tokenId",type:"uint256"}],name:"safeTransferFrom",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"}],se=[{constant:!1,inputs:[{name:"_operator",type:"address"},{name:"_approved",type:"bool"}],name:"setApprovalForAll",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"}],ie=[{constant:!1,inputs:[{name:"_from",type:"address"},{name:"_to",type:"address"},{name:"_tokenId",type:"uint256"}],name:"transferFrom",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"}],oe=[{constant:!1,inputs:[{name:"_from",type:"address"},{name:"_to",type:"address"},{name:"_tokenIds",type:"uint256[]"},{name:"_amounts",type:"uint256[]"},{name:"_data",type:"bytes"}],name:"safeBatchTransferFrom",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"}],re=[{constant:!1,inputs:[{name:"_from",type:"address"},{name:"_to",type:"address"},{name:"_tokenId",type:"uint256"},{name:"_amount",type:"uint256"},{name:"_data",type:"bytes"}],name:"safeTransferFrom",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"}],pe=(e,t)=>{let n=le(te,e);if(n)return{action:"approve",functionName:"approve",isErc20Ish:!0,isNFTIsh:!1,spender:n.args[0],amount:n.args[1]};let a=le(G,e);if(a)return{action:"transfer",functionName:"transfer",isErc20Ish:!0,isNFTIsh:!1,transferTo:a.args[0],amount:a.args[1]};if(!t)return{action:"transaction",functionName:"",isErc20Ish:!1,isNFTIsh:!1};let s=le(Z,e);if(s&&"string"==typeof s.args[1]){let e=ue(s.args[1]);if(e&&e[4].encodedInitData)return pe(e[4].encodedInitData,t)}let i=le(se,e);if(i)return{action:"approve",functionName:"setApprovalForAll",isNFTIsh:!0,isErc20Ish:!1,operator:i.args[0],approved:i.args[1]};let o=le(ie,e);if(o)return{action:"transfer",functionName:"transferFrom",isNFTIsh:!0,isErc20Ish:!1,transferFrom:o.args[0],transferTo:o.args[1],tokenId:o.args[2]};let r=le(ae,e);if(r)return{action:"transfer",functionName:"safeTransferFrom",isNFTIsh:!0,isErc20Ish:!1,transferFrom:r.args[0],transferTo:r.args[1],tokenId:r.args[2]};let p=le(re,e);if(p)return{action:"transfer",functionName:"safeTransferFrom",isNFTIsh:!0,isErc20Ish:!1,transferFrom:p.args[0],transferTo:p.args[1],tokenId:p.args[2],amount:p.args[3]};let l=le(oe,e);if(l)return{action:"batch transfer",functionName:"safeBatchTransferFrom",isNFTIsh:!0,isErc20Ish:!1,transferFrom:l.args[0],transferTo:l.args[1],tokenIds:l.args[2],amounts:l.args[3]};let u=le(ne,e);return u?{action:"mint",functionName:u.functionName,isNFTIsh:!0,isErc20Ish:!1,args:u.args}:{action:"transaction",isErc20Ish:!1,isNFTIsh:!1}};let le=(e,t)=>{try{let n=u({abi:e,data:t});return{functionName:n.functionName,args:n.args||[]}}catch(e){return null}},ue=e=>{try{if("string"==typeof e)return m(ee,`0x${e.slice(10)}`)}catch(e){return null}},me=e=>`${parseFloat(e).toFixed(2)}`;function ce(e,t){let n=[],a=new Map;if(e)for(let t of e)if(t.in[0]){let e;e="ERC721"===t.asset.type||"approve_for_all"===t.in[0].value?{id:`nft:${t.asset.name}`,nftName:t.asset.name,nftCount:t.in.length}:{id:`token:${t.asset.type}:${t.asset.symbol}:${t.asset.name}`,iconUrl:t.asset.logo_url,value:t.in[0].value,symbol:t.asset.symbol,usdValue:t.in[0].usd_price?me(t.in[0].usd_price):void 0,decimals:t.asset.decimals},n.push(e)}else if(t.out[0]?.value){let e;e="ERC721"===t.asset.type||"approve_for_all"===t.out[0].value?{id:`nft:${t.asset.name}`,nftName:t.asset.name}:{id:`token:${t.asset.type}:${t.asset.symbol}:${t.asset.name}`,iconUrl:t.asset.logo_url,value:t.out[0].value,symbol:t.asset.symbol,usdValue:t.out[0].usd_price?me(t.out[0].usd_price):void 0,decimals:t.asset.decimals},a.has(e.id)||a.set(e.id,e)}for(let e of t)for(let t of Object.keys(e.spenders)){let n;n="ERC721"===e.asset.type||"approve_for_all"===e.spenders[t]?.value?{id:`nft:${e.asset.name}`,nftName:e.asset.name}:{id:`token:${e.asset.type}:${e.asset.symbol}:${e.asset.name}`,iconUrl:e.asset.logo_url,value:e.spenders[t]?.value,symbol:e.asset.symbol,usdValue:e.spenders[t]?.usd_price?me(e.spenders[t]?.usd_price):void 0,decimals:e.asset.decimals},a.has(n.id)||a.set(n.id,n)}return{assetsIn:n,assetsOut:Array.from(a.values())}}const de=(e,t,n,s)=>{let[i,r]=a(null),{walletProxy:p}=v();return o((()=>{i&&r(null),(async()=>{if(!p||!t)return null;let a=[],i=!0,o=await H(e,n,t,s).catch((t=>(t.message&&t.message.includes("Insufficient balance for transaction")||t.message&&t.message.includes("Insufficient funds for gas * price + value")||t.details&&t.details.includes("insufficient funds")?i=!1:a.push(t),e)));return{tx:o,totalGasEstimate:o.gas,hasFunds:i,errors:a}})().then(r)}),[e]),i};let ye=new g(new I("There was an issue preparing your transaction",f.E32603_DEFAULT_INTERNAL_ERROR.eipCode)),fe=(e,t)=>e?.sendTransaction?"transactionRequest"in e.sendTransaction?e.sendTransaction.transactionRequest:e.sendTransaction.transactionRequests[t]:void 0;const be={component:()=>{let{data:l,onUserCloseViaDialogOrKeybindRef:u,setModalData:m,navigate:N}=k(),{client:R,rpcConfig:D,chains:$,closePrivyModal:B,walletProxy:P,showFiatPrices:U}=v(),{user:W}=j(),V=T(),[G,H]=a(0),[J,X]=a(0),[K,Z]=a(fe(l,G)),[ee,te]=a(null),[ne,ae]=a(),[se,ie]=a(!1),[oe,re]=a(null),[le,ue]=a(null),[me,be]=a(null),[Te,he]=a(void 0),[ge,Ie]=a(void 0),[ve,ke]=a(!1),[je,Ee]=a(!1),[Me,Ce]=a([]),[Fe,_e]=a([]),[we,xe]=a("uninitiated"),[Ne,Se]=a(void 0);if(!K||!l?.sendTransaction||!l?.sendTransaction)/*#__PURE__*/return t(O,{error:Error("Invalid transaction request"),allowlistConfig:V.allowlistConfig,onRetry:()=>{l?.sendTransaction?.onFailure(ye),B({shouldCallAuthOnSuccess:!1})}});let{transactingWalletAddress:Ae}=l.sendTransaction,Oe=s((()=>$.find((e=>Number(e.id)===Number(K.chainId)))),[K.chainId]),Re=Oe?.nativeCurrency.symbol??"ETH",De=s((()=>pe(K.data,!!V.embeddedWallets.extendedCalldataDecoding)),[K.data]),{action:$e,isErc20Ish:Be,isNFTIsh:Pe,functionName:qe}=De,{toAddress:Le,tokenAddress:Ue}=s((()=>({toAddress:De.isErc20Ish?De.transferTo:K.to??void 0,tokenAddress:De.isErc20Ish?K.to:void 0})),[De]);o((()=>{K.to&&Oe&&Be&&C({address:K.to,chain:Oe,rpcConfig:V.rpcConfig,privyAppId:V.id}).then(te).catch(console.error)}),[K.to,Oe]);let{tokenPrice:We,isTokenPriceLoading:Ve}=E(K.chainId),{balance:Ge}=M({rpcConfig:V.rpcConfig,appId:V.id,address:Ae,chain:Oe}),He=function({rpcConfig:e,appId:t,address:n,chain:l,tokenInfo:u}){let{chains:m}=v(),[c,f]=a(null),[b,T]=a(!1),h=s((()=>{let n=l||m[0];if(n)return r({chain:l,transport:p(d(n,e,t))})}),[l,e,t]),g=i((async()=>{if(n&&h&&u.address)try{return T(!0),await h.readContract({address:u.address,abi:z,functionName:"balanceOf",args:[n]})}catch(e){console.error(e)}finally{T(!1)}}),[h,n,u?.address,l]);return o((()=>{g().then((e=>null!=e&&f(e)))}),[g]),{balance:c,isLoading:b&&null==c,formattedBalance:y({amount:c??BigInt(0),decimals:u.decimals})}}({rpcConfig:V.rpcConfig,appId:V.id,address:Ae,tokenInfo:{address:Ue||"",decimals:ee?.decimals??18},chain:Oe}),ze=s((()=>A(Number(K.chainId),$,D,{appId:V.id})),[K.chainId,D]),Je=de(K,Ae,ze,l?.sendTransaction?.prepareTransactionRequest);o((()=>{Z(fe(l,G))}),[G]),o((()=>{l.sendTransaction?.getIsSponsored?l.sendTransaction.getIsSponsored().then(ae).catch(console.error):ae(!1)}),[l.sendTransaction.getIsSponsored]);let Qe=()=>{if(!se)return oe?l?.sendTransaction?.onSuccess({hash:oe}):me||Je?.errors[0]?l?.sendTransaction?.onFailure(me??Je?.errors[0]??ye):l?.sendTransaction?.onFailure(new g(new I("The user rejected the request",f.E4001_USER_REJECTED_REQUEST.eipCode))),B({shouldCallAuthOnSuccess:!1})};u.current=Qe;let Xe=!!(l.funding&&l.funding.supportedOptions.length>0),Ye=_(BigInt(Je?.totalGasEstimate??0n),Re),Ke=U&&We?w(BigInt(Je?.totalGasEstimate??0n),We):void 0,Ze=_(Ge??0n,Re,void 0,!0),et=U&&We?w(Ge??0n,We):void 0,tt=ee&&!He.isLoading&&Be&&"approve"!==$e?`${He.formattedBalance} ${ee.symbol}`:void 0,nt=l.sendTransaction?.uiOptions?.transactionInfo?.title;nt||(nt="approve"===$e?Be?"Confirm address":"Confirm action":`Approve ${$e}`);let at=s((()=>{if(l.sendTransaction?.uiOptions?.description)return l.sendTransaction?.uiOptions?.description;if("approve"===$e&&"setApprovalForAll"===qe&&De.approved){let a=/*#__PURE__*/t(b,{address:De.operator||"",url:Oe?.blockExplorers?.default?.url});/*#__PURE__*/return e(n,{children:[V.name," would like your permission for ",a," to transfer tokens on your behalf."]})}if("approve"===$e&&"setApprovalForAll"===qe&&!De.approved){let a=/*#__PURE__*/t(b,{address:De.operator||"",url:Oe?.blockExplorers?.default?.url});/*#__PURE__*/return e(n,{children:[V.name," would like your permission to revoke permissions of ",a," from transferring tokens on your behalf."]})}return Be&&"approve"===$e||Be&&"approve"===$e?`${V.name} would like your permission for ${S(De.spender)} to spend tokens on your behalf.`:`${V.name} wants your permission to approve the following transaction.`}),[V.name,Be,De,l.sendTransaction?.uiOptions.description,qe]),st=l.sendTransaction?.uiOptions?.transactionInfo?.contractInfo?.imgUrl?/*#__PURE__*/t("img",{src:l.sendTransaction.uiOptions.transactionInfo.contractInfo.imgUrl,alt:l.sendTransaction.uiOptions.transactionInfo.contractInfo.imgAltText}):null,it=!(!Je||Je.errors[0]||Je.hasFunds||!1!==ne),ot=it&&Xe,rt=ot?"Add funds":l.sendTransaction?.uiOptions?.buttonText||(G<J?"Continue":"Approve"),pt=e=>{if(!e)throw Error("Transaction scan failed");if("Success"===e.validation.status&&("Benign"===e.validation.result_type?Ie("safe"):"Warning"===e.validation.result_type?Ie("warn"):"Malicious"===e.validation.result_type&&(Ie("error"),Ee(!0))),"Success"!==e.simulation.status)throw Error("Simulation failed");{he(e.simulation.params);let{assetsIn:t,assetsOut:n}=ce(e.simulation.assets_diffs,e.simulation.exposures);if(0===n.length&&0===t.length)throw Error("No tokens found");Ce(n),_e(t)}};if(o((()=>{l.sendTransaction?.scanTransaction&&V.embeddedWallets.transactionScanning.enabled&&"uninitiated"===we&&(xe("in progress"),l.sendTransaction.scanTransaction().then((e=>{pt(e),xe("completed")})).catch((()=>xe("failed"))))}),[!!l.sendTransaction?.scanTransaction]),o((()=>{l.sendTransaction?.scanTransaction&&"failed"!==we||((e,t,n)=>{if(X((e=>e?.sendTransaction?"transactionRequest"in e.sendTransaction?0:e.sendTransaction.transactionRequests.length-1:0)(l)),t.isErc20Ish&&t.amount&&n){let e=F({amount:t.amount,decimals:n.decimals});Se(e),Ce([{value:e,symbol:n?.symbol,decimals:n?.decimals}])}else if(e.value){let t=BigInt(e.value),n=We?w(t,We):void 0;Ce(U&&n?[{value:n}]:[{value:x(t),symbol:Re,decimals:18,usdValue:n}])}else Ce(U?[{value:"$0"}]:[{value:"0",symbol:Re,decimals:18}])})(Je?.tx??K,De,ee)}),[K,Je?.tx,De,ee,we]),le/*#__PURE__*/)return t(Y,{txn:Je?.tx??K,onClose:Qe,receipt:le,transactionInfo:l.sendTransaction?.uiOptions.transactionInfo,tokenPrice:We,tokenSymbol:Re,receiptHeader:l.sendTransaction?.uiOptions.successHeader,receiptDescription:l.sendTransaction?.uiOptions.successDescription});if(me)/*#__PURE__*/return t(q,{transactionError:me,transactionHash:oe??void 0,chainType:"ethereum",chainId:Je?.tx.chainId??K.chainId,onClose:Qe,onRetry:({resetNonce:e})=>{be(null);let t={...Je?.tx??K};e&&(t.nonce=void 0),Z(t)}});let lt=0!==J&&"number"==typeof G&&0!==G?()=>{H(G-1)}:void 0;return ve&&Te?/*#__PURE__*/t(Q,{details:Te,onBack:()=>ke(!1)}):/*#__PURE__*/t(L,{transactionIndex:G,onBack:lt,maxIndex:J,disabled:it&&!Xe||je,isSubmitting:se,submitError:me,isPreparing:!Je,isTokenPriceLoading:Ve,isTokenContractInfoLoading:!Pe&&!ee,prepareError:Je?.errors[0],symbol:ee?.symbol,chain:Oe,img:st,title:nt,subtitle:at,txValue:K.value,fee:Ke??Ye,isSponsored:ne,from:Ae??"",to:Le,tokenAddress:Ue??void 0,network:V.chains.find((e=>e.id===K.chainId))?.name??"",transactionDetails:{...De,formattedAmount:Ne},cta:rt,missingFunds:it,action:$e,balance:tt??et??Ze,onClose:Qe,onClick:ot?async()=>{if(!Ae)return;if(!Xe)throw Error("Funding wallet is not enabled");let e="FundingMethodSelectionScreen";m({...l,funding:{...l.funding,methodScreen:e,chainType:"ethereum",amount:c(BigInt(Je?.tx.value??0)+BigInt(Je?.totalGasEstimate?.toString()??0)),chain:Oe},solanaFundingData:l?.solanaFundingData}),N(e)}:async()=>{if(G<J)H(G+1);else{ie(!0);try{let e=await R.getAccessToken();if(se||!e||!P||!W)return;let t=await l.sendTransaction.onConfirm({transactionRequest:Je?.tx??K});if(re(t),l.sendTransaction?.signOnly)return await new Promise((e=>setTimeout(e,h))),l?.sendTransaction?.onSuccess({hash:t}),B({shouldCallAuthOnSuccess:!1});let n=await ze.waitForTransactionReceipt({hash:t});if("reverted"===n.status)throw Error("Transaction failed");ue(n)}catch(e){console.warn({transaction:Je?.tx??K,error:e}),be(e)}finally{ie(!1)}}},validation:ge,hasScanDetails:!!Te,setIsScanDetailsOpen:ke,preventMaliciousTransaction:je,setPreventMaliciousTransaction:Ee,tokensSent:Me,tokensReceived:Fe,isScanning:"in progress"===we,isCancellable:l.sendTransaction?.uiOptions?.isCancellable??!1,functionName:qe})}};export{be as SendTransactionScreen,be as default};
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import{jsx as i,jsxs as e}from"react/jsx-runtime";import{styled as r}from"styled-components";const t=({size:r,centerIcon:t})=>/*#__PURE__*/i(n,{$size:r,children:/*#__PURE__*/e(o,{children:[/*#__PURE__*/i(a,{}),/*#__PURE__*/i(d,{}),t?/*#__PURE__*/i(s,{children:t}):null]})});let n=r.div`
|
|
2
|
+
--spinner-size: ${i=>i.$size?i.$size:"96px"};
|
|
3
|
+
|
|
4
|
+
display: inline-flex;
|
|
5
|
+
justify-content: center;
|
|
6
|
+
align-items: center;
|
|
7
|
+
|
|
8
|
+
@media all and (display-mode: standalone) {
|
|
9
|
+
margin-bottom: 30px;
|
|
10
|
+
}
|
|
11
|
+
`,o=r.div`
|
|
12
|
+
position: relative;
|
|
13
|
+
height: var(--spinner-size);
|
|
14
|
+
width: var(--spinner-size);
|
|
15
|
+
|
|
16
|
+
opacity: 1;
|
|
17
|
+
animation: fadein 200ms ease;
|
|
18
|
+
`,s=r.div`
|
|
19
|
+
position: absolute;
|
|
20
|
+
top: 0;
|
|
21
|
+
right: 0;
|
|
22
|
+
bottom: 0;
|
|
23
|
+
left: 0;
|
|
24
|
+
display: flex;
|
|
25
|
+
align-items: center;
|
|
26
|
+
justify-content: center;
|
|
27
|
+
svg,
|
|
28
|
+
img {
|
|
29
|
+
width: calc(var(--spinner-size) * 0.4);
|
|
30
|
+
height: calc(var(--spinner-size) * 0.4);
|
|
31
|
+
border-radius: var(--privy-border-radius-full);
|
|
32
|
+
}
|
|
33
|
+
`,a=r.div`
|
|
34
|
+
position: absolute;
|
|
35
|
+
top: 0;
|
|
36
|
+
right: 0;
|
|
37
|
+
bottom: 0;
|
|
38
|
+
left: 0;
|
|
39
|
+
width: var(--spinner-size);
|
|
40
|
+
height: var(--spinner-size);
|
|
41
|
+
|
|
42
|
+
&& {
|
|
43
|
+
border: 4px solid var(--privy-color-border-default);
|
|
44
|
+
border-radius: 50%;
|
|
45
|
+
}
|
|
46
|
+
`,d=r.div`
|
|
47
|
+
position: absolute;
|
|
48
|
+
top: 0;
|
|
49
|
+
right: 0;
|
|
50
|
+
bottom: 0;
|
|
51
|
+
left: 0;
|
|
52
|
+
width: var(--spinner-size);
|
|
53
|
+
height: var(--spinner-size);
|
|
54
|
+
animation: spin 1200ms linear infinite;
|
|
55
|
+
|
|
56
|
+
&& {
|
|
57
|
+
border: 4px solid;
|
|
58
|
+
border-color: var(--privy-color-icon-subtle) transparent transparent transparent;
|
|
59
|
+
border-radius: 50%;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
@keyframes spin {
|
|
63
|
+
from {
|
|
64
|
+
transform: rotate(0deg);
|
|
65
|
+
}
|
|
66
|
+
to {
|
|
67
|
+
transform: rotate(360deg);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
`;export{t as N};
|
package/dist/esm/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{I as Captcha,J as ConnectorManager,aB as LoginModal,L as PrivyClient,aC as PrivyModal,H as PrivyProvider,j as errorIndicatesMaxMfaRetries,h as errorIndicatesMfaTimeout,g as errorIndicatesMfaVerificationFailed,N as getAccessToken,M as getIdentityToken,aD as toViemAccount,ac as useAuthMfa,ad as useAuthMfaEnrollment,ax as useAuthorizationSignature,ab as useBaseAccountSdk,aa as useConnectBaseAccount,a9 as useConnectCoinbaseSmartWallet,$ as useConnectOrCreateWallet,ae as useCrossAppAccounts,aq as useCustomAuth,au as useDelegatedActions,at as useFarcasterSigner,T as useGetAccessTokenForProvider,ag as useGuestAccounts,aA as useHeadlessDelegatedActions,Q as useIdentityToken,a6 as useLinkAccount,ap as useLinkJwtAccount,Z as useLinkWithPasskey,a0 as useLinkWithSiwe,a3 as useLinkWithSiws,V as useLoginWithEmail,O as useLoginWithFarcasterV2,U as useLoginWithOAuth,Y as useLoginWithPasskey,a1 as useLoginWithSiwe,a2 as useLoginWithSiws,_ as useLoginWithSms,az as useLoginWithTelegram,u as useMfa,d as useMfaEnrollment,aE as useMigrateWallets,am as useModalStatus,ao as useOAuthTokens,K as useRecoverEmbeddedWallet,a5 as useRegisterMfaListener,af as useSendTransaction,av as useSessionSigners,ah as useSetWalletRecovery,aj as useSign7702Authorization,ai as useSignMessage,a4 as useSignTransaction,ak as useSignTypedData,aw as useSigners,X as useSignupWithPasskey,as as useSubscribeToJwtAuthWithFlag,ar as useSyncJwtBasedAuthState,an as useToken,a7 as useUpdateAccount,a8 as useUpdateEmail,ay as useUser,al as useX402Fetch}from"./index-
|
|
1
|
+
export{I as Captcha,J as ConnectorManager,aB as LoginModal,L as PrivyClient,aC as PrivyModal,H as PrivyProvider,j as errorIndicatesMaxMfaRetries,h as errorIndicatesMfaTimeout,g as errorIndicatesMfaVerificationFailed,N as getAccessToken,M as getIdentityToken,aD as toViemAccount,ac as useAuthMfa,ad as useAuthMfaEnrollment,ax as useAuthorizationSignature,ab as useBaseAccountSdk,aa as useConnectBaseAccount,a9 as useConnectCoinbaseSmartWallet,$ as useConnectOrCreateWallet,ae as useCrossAppAccounts,aq as useCustomAuth,au as useDelegatedActions,at as useFarcasterSigner,T as useGetAccessTokenForProvider,ag as useGuestAccounts,aA as useHeadlessDelegatedActions,Q as useIdentityToken,a6 as useLinkAccount,ap as useLinkJwtAccount,Z as useLinkWithPasskey,a0 as useLinkWithSiwe,a3 as useLinkWithSiws,V as useLoginWithEmail,O as useLoginWithFarcasterV2,U as useLoginWithOAuth,Y as useLoginWithPasskey,a1 as useLoginWithSiwe,a2 as useLoginWithSiws,_ as useLoginWithSms,az as useLoginWithTelegram,u as useMfa,d as useMfaEnrollment,aE as useMigrateWallets,am as useModalStatus,ao as useOAuthTokens,K as useRecoverEmbeddedWallet,a5 as useRegisterMfaListener,af as useSendTransaction,av as useSessionSigners,ah as useSetWalletRecovery,aj as useSign7702Authorization,ai as useSignMessage,a4 as useSignTransaction,ak as useSignTypedData,aw as useSigners,X as useSignupWithPasskey,as as useSubscribeToJwtAuthWithFlag,ar as useSyncJwtBasedAuthState,an as useToken,a7 as useUpdateAccount,a8 as useUpdateEmail,ay as useUser,al as useX402Fetch}from"./index-B2ZHk27q.mjs";export{c as WalletConnector}from"./prepareFundingModalData-BHP1zZ9a.mjs";export{E as EthereumWalletConnector,C as useActiveWallet,A as useConnectWallet,B as useFundWallet,y as useLogin,z as useLogout}from"./useActiveWallet-BY2wKTVp.mjs";export{u as useWallets}from"./useWallets-DTjrHNDw.mjs";export{g as useCreateWallet,h as useImportWallet,u as usePrivy}from"./usePrivy-DQKLhXbj.mjs";export{V as VERSION}from"./context-BuN0M_vH.mjs";export{DEFAULT_SUPPORTED_CHAINS as SUPPORTED_CHAINS,addPrivyRpcToChain,addRpcUrlOverrideToChain}from"@privy-io/js-sdk-core";export{g as getEmbeddedConnectedWallet}from"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import"react/jsx-runtime";import"react";import"uuid";import"jose";import"./get-is-unified-wallet-DF10lirM.mjs";import"viem";import"./internal-context-e-Eni5bG.mjs";import"ofetch";import"eventemitter3";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"react-device-detect";import"viem/utils";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"@scure/base";import"styled-components";import"./events-context-CI0iqAXA.mjs";import"zustand";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./getPublicClient-A9RSftUZ.mjs";import"js-cookie";import"./frame-CwE9r3cT.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-eEm9Olt_.mjs";import"tinycolor2";
|
package/dist/esm/internal.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as t,f as e,u as o,b as r}from"./internal-context-e-Eni5bG.mjs";import{a7 as n}from"./paths-3HW55qZg.mjs";import{u as s}from"./context-
|
|
1
|
+
import{a as t,f as e,u as o,b as r}from"./internal-context-e-Eni5bG.mjs";import{a7 as n}from"./paths-3HW55qZg.mjs";import{u as s}from"./context-BuN0M_vH.mjs";import{a as i}from"./events-context-CI0iqAXA.mjs";import"ofetch";import"react";import"react/jsx-runtime";import"@privy-io/js-sdk-core";import"tinycolor2";class a{async authenticate(){if(!this.api)throw new t("Auth flow has no API instance");try{return await this.api.post(n,{})}catch(t){throw e(t)}}async link(){throw new t("Linking is not supported for the SSO token flow")}constructor(){this.meta={}}}function c(){let e=s(),n=i(),{client:c,setUser:h,setAuthenticated:l,setIsNewUser:w}=o();return{loginWithSsoToken:async()=>{if(!e.id||!c)throw new t("SDK not yet ready");try{let e=new a;c.startAuthFlow(e);let o=await c.authenticate(),r=o.user,s=o.isNewUser??!1;if(!r)throw new t("Unable to authenticate with SSO response");return h(r),w(s),l(!0),n("login","onComplete",{user:r,isNewUser:s,wasAlreadyAuthenticated:!1,loginMethod:"sso",loginAccount:null}),r}catch(t){throw n("login","onError",t.privyErrorCode||r.UNKNOWN_AUTH_ERROR),t}}}}export{c as useLoginWithSsoToken};
|
package/dist/esm/{prepareFundingModalData-lYYA8ZfI.mjs → prepareFundingModalData-BHP1zZ9a.mjs}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ProviderErrors as e,ConnectedStandardSolanaWallet as t,arbitrumSepolia as n,arbitrum as a,avalancheFuji as i,avalanche as s,baseSepolia as o,base as r,polygonAmoy as c,polygon as l,optimismSepolia as d,optimism as h,sepolia as u,mainnet as f}from"@privy-io/js-sdk-core";import{P as C,c as A,j as m,a as p}from"./internal-context-e-Eni5bG.mjs";import g from"eventemitter3";import{b as w,u as y}from"./context-BqHnoxK5.mjs";import{jsxs as b,jsx as E}from"react/jsx-runtime";class D extends C{constructor(){super("Wallet timeout"),this.type="wallet_error"}}const x=e=>e instanceof C?e:e?.code?new O(e):new C("Unknown connector error",e);class S extends A{constructor(e,t,n){super(e),this.type="provider_error",this.code=t,this.data=n}}class O extends S{constructor(t){super(t.message,t.code,t.data);let n=Object.values(e).find((e=>e.eipCode===t.code));this.details=n||e.UNKNOWN_ERROR,-32002===t.code&&(t.message?.includes("already pending for origin")?t.message?.includes("wallet_requestPermissions")?this.details=e.E32002_CONNECTION_ALREADY_PENDING:this.details=e.E32002_REQUEST_ALREADY_PENDING:t.message?.includes("Already processing")&&t.message.includes("eth_requestAccounts")&&(this.details=e.E32002_WALLET_LOCKED))}}const M={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};class R{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))}}function T(){try{let e="privy:__session_storage__test",t=new R;return t.put(e,"blobby"),t.del(e),!0}catch(e){return!1}}var v="undefined"!=typeof window&&window.localStorage?new R: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 N extends g{constructor(e){super(),this.walletClientType=e,this.connected=!1,this.initialized=!1}}const I=()=>{let e=v.get(w);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 j=["phantom","glow","solflare","backpack","okx_wallet","walletconnect","mobile_wallet_adapter","jupiter"];function W(e){return e.toLowerCase().split(" ").join("_")}class F extends N{get isInstalled(){return!0}get wallet(){return this._wallet}buildConnectedWallet(){return this._wallet.accounts.map((e=>({type:"solana",provider:new t({wallet:this._wallet,account:e}),address:e.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:L(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 m;throw e}if(!await this.isConnected())throw new m;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||!j.includes(this.walletClientType))&&("phantom"!==this.walletClientType&&"metamask"!==this.walletClientType.toLowerCase()||I().some((({walletClientType:e})=>"phantom"===e||"metamask"===e.toLowerCase())))}constructor(e,t){super(W(L(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 x(e)}},this.onChange=()=>{this.syncAccounts()},this._wallet=e,this.autoConnectEnabled=t,this.wallets=[]}}function L(e){return"isWalletConnectSolana"in e&&e.isWalletConnectSolana}const U=({style:e,...t})=>{let n=y();/*#__PURE__*/return b("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__*/E("rect",{width:"28",height:"28",rx:"3",fill:"dark"===n?.appearance.palette.colorScheme?"#3396ff":"#141414"}),/*#__PURE__*/E("g",{clipPath:"url(#clip0_1765_9946)",children:/*#__PURE__*/E("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__*/E("defs",{children:/*#__PURE__*/E("clipPath",{id:"clip0_1765_9946",children:/*#__PURE__*/E("rect",{width:"20",height:"12.2531",fill:"white",transform:"translate(4 8)"})})})]})},_="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";function P(e){return["ethereum","solana"].includes(e.chainType)}function Y(e){let t=e.replace("eip155:","");if(t)return parseInt(t);throw Error("Chain ID not compatible with CAIP-2 format.")}const B=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)))),J={[f.id]:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",[u.id]:"0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238",[h.id]:"0x0b2c639c533813f4aa9d7837caf62653d097ff85",[d.id]:"0x5fd84259d66Cd46123540766Be93DFE6D43130D7",[l.id]:"0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",[c.id]:"0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582",[r.id]:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",[o.id]:"0x036CbD53842c5426634e7929541eC2318f3dCF7e",[s.id]:"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E",[i.id]:"0x5425890298aed601595a70ab815c96711a31bc65",[a.id]:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",[n.id]:"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d"},z=({address:e,appConfig:t,fundWalletConfig:n,methodScreen:a,chainIdOverride:i,comingFromSendTransactionScreen:s=!1,onComplete:o,onError:r})=>{let c,l;if(!t.fundingConfig)throw Error("Wallet funding is not enabled");let d=B(t.fundingConfig.options);if(d.length<1)throw Error("Wallet funding is not enabled");c=i||(n?.chain?n.chain.id:Y(t.fundingConfig.defaultRecommendedCurrency.chain));let h=t.chains.find((e=>e.id===c));if(!h)throw new p(`Funding chain ${c} is not in PrivyProvider chains list`);let u=n?.amount??t.fundingConfig.defaultRecommendedAmount,f=!1;function C(){if(!c)return;let e=J[c];d.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."),l=e,f=!0}n&&"asset"in n?"USDC"===n.asset?C():"string"!=typeof n.asset&&"erc20"in n.asset&&(f=((e,t)=>e===J[t.id])(l=n.asset.erc20,h)):"USDC"===t.fundingConfig.defaultRecommendedCurrency.asset&&C();let A=n?.defaultFundingMethod;return{chainType:"ethereum",address:e,amount:u,chain:h,erc20Address:l,erc20ContractInfo:f?{symbol:"USDC",decimals:6}:void 0,isUSDC:f,methodScreen:a,supportedOptions:d,comingFromSendTransactionScreen:s,defaultFundingMethod:A,usingDefaultFundingMethod:!!A,preferredCardProvider:n?.card?.preferredProvider,crossChainBridgingEnabled:t.fundingConfig.crossChainBridgingEnabled??!1,solanaChain:"solana:mainnet",uiConfig:n&&"uiConfig"in n?n.uiConfig:void 0,externalSolanaFundingScreen:null,onComplete:o??(()=>{}),onError:r??(()=>{})}};function G({address:e,fundWalletConfig:t,appConfig:n,comingFromSendTransactionScreen:a,externalSolanaFundingScreen:i,methodScreen:s}){if(!n.fundingConfig)throw Error("Wallet funding is not enabled");let o=B(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 r=t?.amount??n.fundingConfig.defaultRecommendedAmount,c=t?.defaultFundingMethod;return{chainType:"solana",address:e,supportedOptions:o,amount:r,isUSDC:"USDC"===t?.asset,methodScreen:s,comingFromSendTransactionScreen:a,chain:t?.chain||"solana:mainnet",crossChainBridgingEnabled:n.fundingConfig.crossChainBridgingEnabled??!1,defaultFundingMethod:c,preferredCardProvider:t?.card?.preferredProvider,usingDefaultFundingMethod:!!c,uiConfig:t?.uiConfig,externalSolanaFundingScreen:i,onComplete:()=>{},onError:()=>{}}}export{M as C,O as P,F as S,_ as W,B as a,Y as b,N as c,D as d,T as e,x as f,G as g,U as h,P as i,S as j,I as l,z as p,W as t,v as u};
|
|
1
|
+
import{ProviderErrors as e,ConnectedStandardSolanaWallet as t,arbitrumSepolia as n,arbitrum as a,avalancheFuji as i,avalanche as s,baseSepolia as o,base as r,polygonAmoy as c,polygon as l,optimismSepolia as d,optimism as h,sepolia as u,mainnet as f}from"@privy-io/js-sdk-core";import{P as C,c as A,j as m,a as p}from"./internal-context-e-Eni5bG.mjs";import g from"eventemitter3";import{b as w,u as y}from"./context-BuN0M_vH.mjs";import{jsxs as b,jsx as E}from"react/jsx-runtime";class D extends C{constructor(){super("Wallet timeout"),this.type="wallet_error"}}const x=e=>e instanceof C?e:e?.code?new O(e):new C("Unknown connector error",e);class S extends A{constructor(e,t,n){super(e),this.type="provider_error",this.code=t,this.data=n}}class O extends S{constructor(t){super(t.message,t.code,t.data);let n=Object.values(e).find((e=>e.eipCode===t.code));this.details=n||e.UNKNOWN_ERROR,-32002===t.code&&(t.message?.includes("already pending for origin")?t.message?.includes("wallet_requestPermissions")?this.details=e.E32002_CONNECTION_ALREADY_PENDING:this.details=e.E32002_REQUEST_ALREADY_PENDING:t.message?.includes("Already processing")&&t.message.includes("eth_requestAccounts")&&(this.details=e.E32002_WALLET_LOCKED))}}const M={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};class R{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))}}function T(){try{let e="privy:__session_storage__test",t=new R;return t.put(e,"blobby"),t.del(e),!0}catch(e){return!1}}var v="undefined"!=typeof window&&window.localStorage?new R: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 N extends g{constructor(e){super(),this.walletClientType=e,this.connected=!1,this.initialized=!1}}const I=()=>{let e=v.get(w);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 j=["phantom","glow","solflare","backpack","okx_wallet","walletconnect","mobile_wallet_adapter","jupiter"];function W(e){return e.toLowerCase().split(" ").join("_")}class F extends N{get isInstalled(){return!0}get wallet(){return this._wallet}buildConnectedWallet(){return this._wallet.accounts.map((e=>({type:"solana",provider:new t({wallet:this._wallet,account:e}),address:e.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:L(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 m;throw e}if(!await this.isConnected())throw new m;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||!j.includes(this.walletClientType))&&("phantom"!==this.walletClientType&&"metamask"!==this.walletClientType.toLowerCase()||I().some((({walletClientType:e})=>"phantom"===e||"metamask"===e.toLowerCase())))}constructor(e,t){super(W(L(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 x(e)}},this.onChange=()=>{this.syncAccounts()},this._wallet=e,this.autoConnectEnabled=t,this.wallets=[]}}function L(e){return"isWalletConnectSolana"in e&&e.isWalletConnectSolana}const U=({style:e,...t})=>{let n=y();/*#__PURE__*/return b("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__*/E("rect",{width:"28",height:"28",rx:"3",fill:"dark"===n?.appearance.palette.colorScheme?"#3396ff":"#141414"}),/*#__PURE__*/E("g",{clipPath:"url(#clip0_1765_9946)",children:/*#__PURE__*/E("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__*/E("defs",{children:/*#__PURE__*/E("clipPath",{id:"clip0_1765_9946",children:/*#__PURE__*/E("rect",{width:"20",height:"12.2531",fill:"white",transform:"translate(4 8)"})})})]})},_="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";function P(e){return["ethereum","solana"].includes(e.chainType)}function Y(e){let t=e.replace("eip155:","");if(t)return parseInt(t);throw Error("Chain ID not compatible with CAIP-2 format.")}const B=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)))),J={[f.id]:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",[u.id]:"0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238",[h.id]:"0x0b2c639c533813f4aa9d7837caf62653d097ff85",[d.id]:"0x5fd84259d66Cd46123540766Be93DFE6D43130D7",[l.id]:"0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",[c.id]:"0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582",[r.id]:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",[o.id]:"0x036CbD53842c5426634e7929541eC2318f3dCF7e",[s.id]:"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E",[i.id]:"0x5425890298aed601595a70ab815c96711a31bc65",[a.id]:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",[n.id]:"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d"},z=({address:e,appConfig:t,fundWalletConfig:n,methodScreen:a,chainIdOverride:i,comingFromSendTransactionScreen:s=!1,onComplete:o,onError:r})=>{let c,l;if(!t.fundingConfig)throw Error("Wallet funding is not enabled");let d=B(t.fundingConfig.options);if(d.length<1)throw Error("Wallet funding is not enabled");c=i||(n?.chain?n.chain.id:Y(t.fundingConfig.defaultRecommendedCurrency.chain));let h=t.chains.find((e=>e.id===c));if(!h)throw new p(`Funding chain ${c} is not in PrivyProvider chains list`);let u=n?.amount??t.fundingConfig.defaultRecommendedAmount,f=!1;function C(){if(!c)return;let e=J[c];d.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."),l=e,f=!0}n&&"asset"in n?"USDC"===n.asset?C():"string"!=typeof n.asset&&"erc20"in n.asset&&(f=((e,t)=>e===J[t.id])(l=n.asset.erc20,h)):"USDC"===t.fundingConfig.defaultRecommendedCurrency.asset&&C();let A=n?.defaultFundingMethod;return{chainType:"ethereum",address:e,amount:u,chain:h,erc20Address:l,erc20ContractInfo:f?{symbol:"USDC",decimals:6}:void 0,isUSDC:f,methodScreen:a,supportedOptions:d,comingFromSendTransactionScreen:s,defaultFundingMethod:A,usingDefaultFundingMethod:!!A,preferredCardProvider:n?.card?.preferredProvider,crossChainBridgingEnabled:t.fundingConfig.crossChainBridgingEnabled??!1,solanaChain:"solana:mainnet",uiConfig:n&&"uiConfig"in n?n.uiConfig:void 0,externalSolanaFundingScreen:null,onComplete:o??(()=>{}),onError:r??(()=>{})}};function G({address:e,fundWalletConfig:t,appConfig:n,comingFromSendTransactionScreen:a,externalSolanaFundingScreen:i,methodScreen:s}){if(!n.fundingConfig)throw Error("Wallet funding is not enabled");let o=B(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 r=t?.amount??n.fundingConfig.defaultRecommendedAmount,c=t?.defaultFundingMethod;return{chainType:"solana",address:e,supportedOptions:o,amount:r,isUSDC:"USDC"===t?.asset,methodScreen:s,comingFromSendTransactionScreen:a,chain:t?.chain||"solana:mainnet",crossChainBridgingEnabled:n.fundingConfig.crossChainBridgingEnabled??!1,defaultFundingMethod:c,preferredCardProvider:t?.card?.preferredProvider,usingDefaultFundingMethod:!!c,uiConfig:t?.uiConfig,externalSolanaFundingScreen:i,onComplete:()=>{},onError:()=>{}}}export{M as C,O as P,F as S,_ as W,B as a,Y as b,N as c,D as d,T as e,x as f,G as g,U as h,P as i,S as j,I as l,z as p,W as t,v as u};
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
import r from"@heroicons/react/24/outline/ArrowPathIcon";import e from"@heroicons/react/24/outline/EyeIcon";import o from"@heroicons/react/24/outline/EyeSlashIcon";import{styled as i,css as t}from"styled-components";import{P as a,a as n}from"./ModalHeader-B32Zin0a.mjs";let l=t`
|
|
2
|
+
font-size: 14px;
|
|
3
|
+
font-style: normal;
|
|
4
|
+
font-weight: 400;
|
|
5
|
+
line-height: 20px;
|
|
6
|
+
letter-spacing: -0.008px;
|
|
7
|
+
text-align: left;
|
|
8
|
+
transition: color 0.1s ease-in;
|
|
9
|
+
`;const s=i.span`
|
|
10
|
+
${l}
|
|
11
|
+
transition: color 0.1s ease-in;
|
|
12
|
+
color: ${({error:r})=>r?"var(--privy-color-error)":"var(--privy-color-foreground-3)"};
|
|
13
|
+
text-transform: ${({error:r})=>r?"":"capitalize"};
|
|
14
|
+
|
|
15
|
+
&[aria-hidden='true'] {
|
|
16
|
+
visibility: hidden;
|
|
17
|
+
}
|
|
18
|
+
`,c=i.div`
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-direction: column;
|
|
21
|
+
justify-content: center;
|
|
22
|
+
flex-grow: 1;
|
|
23
|
+
`,p=i(a)`
|
|
24
|
+
${({$hideAnimations:r})=>r&&t`
|
|
25
|
+
&& {
|
|
26
|
+
transition: none;
|
|
27
|
+
}
|
|
28
|
+
`}
|
|
29
|
+
`;let d=t`
|
|
30
|
+
&& {
|
|
31
|
+
width: 100%;
|
|
32
|
+
border-width: 1px;
|
|
33
|
+
border-radius: var(--privy-border-radius-md);
|
|
34
|
+
border-color: var(--privy-color-foreground-3);
|
|
35
|
+
background: var(--privy-color-background);
|
|
36
|
+
color: var(--privy-color-foreground);
|
|
37
|
+
|
|
38
|
+
padding: 12px;
|
|
39
|
+
font-size: 16px;
|
|
40
|
+
font-style: normal;
|
|
41
|
+
font-weight: 300;
|
|
42
|
+
line-height: 22px; /* 137.5% */
|
|
43
|
+
}
|
|
44
|
+
`;const h=i.input`
|
|
45
|
+
${d}
|
|
46
|
+
|
|
47
|
+
&::placeholder {
|
|
48
|
+
color: var(--privy-color-foreground-3);
|
|
49
|
+
font-style: italic;
|
|
50
|
+
font-size: 14px;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
overflow: hidden;
|
|
54
|
+
text-overflow: ellipsis;
|
|
55
|
+
white-space: nowrap;
|
|
56
|
+
`,v=i.div`
|
|
57
|
+
${d}
|
|
58
|
+
`,g=i.div`
|
|
59
|
+
position: relative;
|
|
60
|
+
width: 100%;
|
|
61
|
+
display: flex;
|
|
62
|
+
align-items: center;
|
|
63
|
+
justify-content: ${({centered:r})=>r?"center":"space-between"};
|
|
64
|
+
`,f=i.div`
|
|
65
|
+
display: flex;
|
|
66
|
+
flex-direction: column;
|
|
67
|
+
align-items: center;
|
|
68
|
+
justify-content: center;
|
|
69
|
+
margin: 32px 0;
|
|
70
|
+
gap: 4px;
|
|
71
|
+
|
|
72
|
+
& h3 {
|
|
73
|
+
font-size: 18px;
|
|
74
|
+
font-style: normal;
|
|
75
|
+
font-weight: 600;
|
|
76
|
+
line-height: 24px;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
& p {
|
|
80
|
+
max-width: 300px;
|
|
81
|
+
font-size: 14px;
|
|
82
|
+
font-style: normal;
|
|
83
|
+
font-weight: 400;
|
|
84
|
+
line-height: 20px;
|
|
85
|
+
}
|
|
86
|
+
`,x=i.div`
|
|
87
|
+
display: flex;
|
|
88
|
+
flex-direction: column;
|
|
89
|
+
gap: 10px;
|
|
90
|
+
padding-bottom: 1rem;
|
|
91
|
+
`,m=i.div`
|
|
92
|
+
display: flex;
|
|
93
|
+
text-align: left;
|
|
94
|
+
align-items: center;
|
|
95
|
+
|
|
96
|
+
gap: 8px;
|
|
97
|
+
max-width: 300px;
|
|
98
|
+
|
|
99
|
+
font-size: 14px;
|
|
100
|
+
font-style: normal;
|
|
101
|
+
font-weight: 400;
|
|
102
|
+
line-height: 20px;
|
|
103
|
+
letter-spacing: -0.008px;
|
|
104
|
+
|
|
105
|
+
margin: 0 8px;
|
|
106
|
+
color: var(--privy-color-foreground-2);
|
|
107
|
+
|
|
108
|
+
> :first-child {
|
|
109
|
+
min-width: 24px;
|
|
110
|
+
}
|
|
111
|
+
`;i.div`
|
|
112
|
+
height: var(--privy-height-modal-full);
|
|
113
|
+
|
|
114
|
+
@media (max-width: 440px) {
|
|
115
|
+
height: var(--privy-height-modal-compact);
|
|
116
|
+
}
|
|
117
|
+
`;const y=i(n)`
|
|
118
|
+
display: flex;
|
|
119
|
+
flex: 1;
|
|
120
|
+
gap: 4px;
|
|
121
|
+
justify-content: center;
|
|
122
|
+
|
|
123
|
+
&& {
|
|
124
|
+
background: var(--privy-color-background);
|
|
125
|
+
border-radius: var(--privy-border-radius-md);
|
|
126
|
+
border-color: var(--privy-color-foreground-3);
|
|
127
|
+
border-width: 1px;
|
|
128
|
+
}
|
|
129
|
+
`,u=i.div`
|
|
130
|
+
position: absolute;
|
|
131
|
+
right: 0.5rem;
|
|
132
|
+
|
|
133
|
+
display: flex;
|
|
134
|
+
flex-direction: row;
|
|
135
|
+
justify-content: space-around;
|
|
136
|
+
align-items: center;
|
|
137
|
+
`,w=i(r)`
|
|
138
|
+
height: 1.25rem;
|
|
139
|
+
width: 1.25rem;
|
|
140
|
+
stroke: var(--privy-color-accent);
|
|
141
|
+
cursor: pointer;
|
|
142
|
+
|
|
143
|
+
:active {
|
|
144
|
+
stroke: var(--privy-color-accent-light);
|
|
145
|
+
}
|
|
146
|
+
`,b=i(o)`
|
|
147
|
+
height: 1.25rem;
|
|
148
|
+
width: 1.25rem;
|
|
149
|
+
stroke: var(--privy-color-accent);
|
|
150
|
+
cursor: pointer;
|
|
151
|
+
|
|
152
|
+
:active {
|
|
153
|
+
stroke: var(--privy-color-accent-light);
|
|
154
|
+
}
|
|
155
|
+
`,k=i(e)`
|
|
156
|
+
height: 1.25rem;
|
|
157
|
+
width: 1.25rem;
|
|
158
|
+
stroke: var(--privy-color-accent);
|
|
159
|
+
cursor: pointer;
|
|
160
|
+
|
|
161
|
+
:active {
|
|
162
|
+
stroke: var(--privy-color-accent-light);
|
|
163
|
+
}
|
|
164
|
+
`,$=i.progress`
|
|
165
|
+
height: 4px;
|
|
166
|
+
width: 100%;
|
|
167
|
+
margin: 8px 0;
|
|
168
|
+
|
|
169
|
+
/* border-radius: 9999px; */
|
|
170
|
+
::-webkit-progress-bar {
|
|
171
|
+
border-radius: 8px;
|
|
172
|
+
background: var(--privy-color-foreground-4);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
::-webkit-progress-value {
|
|
176
|
+
border-radius: 8px;
|
|
177
|
+
transition: all 0.1s ease-out;
|
|
178
|
+
background: ${({label:r})=>("Strong"===r?"#78dca6":"Medium"===r&&"var(--privy-color-warn)")||"var(--privy-color-error)"};
|
|
179
|
+
}
|
|
180
|
+
`;export{x as D,c as E,b as H,u as I,p as N,g as P,w as R,k as S,h as a,f as b,s as c,m as d,$ as e,v as f,y as g};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import{styled as r,css as o}from"styled-components";const e=o`
|
|
2
|
+
&& {
|
|
3
|
+
border-width: 1px;
|
|
4
|
+
padding: 0.5rem 1rem;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
width: 100%;
|
|
8
|
+
text-align: left;
|
|
9
|
+
border: solid 1px var(--privy-color-foreground-4);
|
|
10
|
+
border-radius: var(--privy-border-radius-md);
|
|
11
|
+
display: flex;
|
|
12
|
+
justify-content: space-between;
|
|
13
|
+
align-items: center;
|
|
14
|
+
|
|
15
|
+
${r=>"error"===r.$state?"\n border-color: var(--privy-color-error);\n background: var(--privy-color-error-bg);\n ":""}
|
|
16
|
+
`,d=r.div`
|
|
17
|
+
${e}
|
|
18
|
+
`;export{d as B,e as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as e,k as s}from"./index-
|
|
1
|
+
import{s as e,k as s}from"./index-B2ZHk27q.mjs";const a=(a,n)=>e(a,n.ethereum.createOnLogin)||s(a,n.solana.createOnLogin);export{a as s};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useRef as e,useState as t,useCallback as n}from"react";import{http as r,createPublicClient as a}from"viem";import{a as i,u as s,b as o,d as l}from"./get-is-unified-wallet-GLvRyJlT.mjs";import{u as c}from"./context-BqHnoxK5.mjs";import{u as d,a as u}from"./internal-context-e-Eni5bG.mjs";import{u as m,g as p}from"./useWallets-Aw21dxK9.mjs";import{a as y}from"./getPublicClient-A9RSftUZ.mjs";import{a as g}from"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import{createSmartAccountClient as f}from"permissionless";import{toThirdwebSmartAccount as h,toLightSmartAccount as w,toBiconomySmartAccount as P,toKernelSmartAccount as I,toSafeSmartAccount as W}from"permissionless/accounts";import{createPimlicoClient as v}from"permissionless/clients/pimlico";import{entryPoint07Address as F,entryPoint06Address as x,toCoinbaseSmartAccount as S}from"viem/account-abstraction";import{THIRDWEB as C,COINBASE_SMART_WALLET as G,LIGHT_ACCOUNT as T,BICONOMY as b,KERNEL as U,SAFE as M}from"@privy-io/js-sdk-core";let O={address:x,version:"0.6"},V={address:F,version:"0.7"},A=({owner:e,smartWalletType:t,smartWalletVersion:n,publicClient:r})=>{switch(t){case M:return W({client:r,entryPoint:V,owners:[e],version:"1.4.1"});case U:return I({client:r,version:"0.3.1",entryPoint:V,useMetaFactory:"optional",owners:[e]});case b:return P({client:r,owners:[e],entryPoint:O});case T:return w({client:r,entryPoint:O,owner:e,version:"1.1.0"});case G:return async function({client:e,owner:t,version:n}){let[r]=await t.request({method:"eth_accounts"});if(!r)throw Error("Unable to request embedded owner for eth_accounts");return await S({client:e,owners:[{type:"local",source:"privy",address:r,sign:async({hash:e})=>await t.request({method:"secp256k1_sign",params:[e]})}],version:n})}({client:r,owner:e,version:n??"1"});case C:return h({client:r,entryPoint:V,owner:e});default:throw Error(`Invalid smart account type: ${t}.`)}};const D=({calls:e,chain:t,maxPriorityFeePerGas:n,maxFeePerGas:r,nonce:a})=>e.map((e=>({to:e.to||void 0,data:e.data,value:e.value,chainId:t.id,nonce:a,maxFeePerGas:r,maxPriorityFeePerGas:n}))),E=async({chain:e,paymasterContext:t,account:n,signer:i,user:s,smartWalletsConfig:o,rpcConfig:l,privyAppId:c})=>{if(!(o?.enabled&&s&&n&&i))return;let d=o?.configuredNetworks.find((t=>t.chainId===`eip155:${e.id}`));if(!d)throw new u(`The chain ${e.name} (eip155:${e.id}) must be configured in the smart wallet configuration in your dashboard`);let m=s.smartWallet?s.smartWallet.smartWalletType:o.smartWalletType,p=s.smartWallet?s.smartWallet.smartWalletVersion:o.smartWalletVersion,g=y(e,l,c),h=a({chain:e,transport:r(g)}),w=t??d.paymasterContext,P=await(async({owner:e,smartWalletType:t,smartWalletVersion:n,chain:a,publicClient:i,bundlerUrl:s,paymasterUrl:o,paymasterContext:l})=>{let c=await A({owner:e,smartWalletType:t,publicClient:i,smartWalletVersion:n}),d=v({transport:r(s),entryPoint:c.entryPoint}),u=o?v({transport:r(o),entryPoint:c.entryPoint}):void 0;return f({account:c,chain:a,paymaster:u,paymasterContext:l,bundlerTransport:r(s),userOperation:{estimateFeesPerGas:async()=>{if(["public.pimlico.io","api.pimlico.io"].some((e=>s.includes(e))))return await d.getUserOperationGasPrice().then((e=>e.fast));if(["rpc.zerodev.app"].some((e=>s.includes(e))))return(await d.request({method:"zd_getUserOperationGasPrice",params:[]})).fast;if(["g.alchemy.com"].some((e=>s.includes(e)))){let[e,t]=await Promise.all([i.getBlock({blockTag:"latest"}),d.request({method:"rundler_maxPriorityFeePerGas",params:[]})]);if(!e.baseFeePerGas||!t)throw Error("Failed to get block or maxPriorityFeePerGasEstimate");return{maxFeePerGas:150n*e.baseFeePerGas/100n+BigInt(t.toString()),maxPriorityFeePerGas:BigInt(t.toString())}}{let e=await i.estimateFeesPerGas(),t=s.includes("api.developer.coinbase.com")?175n:150n;return{...e,maxFeePerGas:e.maxFeePerGas*t/100n,maxPriorityFeePerGas:e.maxPriorityFeePerGas*t/100n}}}}})})({owner:i,smartWalletType:m,smartWalletVersion:p,chain:e,publicClient:h,paymasterContext:w,...d});if(!P)throw new u(`Failed to create smart wallet client for chain ${e.name} (eip155:${e.id})`);return P},q=({clientConfig:r,smartWalletsConfig:a})=>{let{hideWalletUIs:y,openPrivyModal:f,appId:h,isHeadlessSigning:w}=d(),P=c(),{setModalData:I}=i(),{user:W}=s(),{chains:v}=c(),{chainId:F,clients:x,setChainId:S,chainIdState:C}=(()=>{let n=e(),[r,a]=t();return{clients:e({}),setChainId:e=>{n.current=e,a(e)},chainId:n,chainIdState:r}})(),G=v.find((e=>e.id===C)),{wallets:T}=m(),b=o(W),U=g(T,b?.address),M=!!b&&l(b),O=n((async()=>F.current),[F]),V=n((async({id:e})=>{if(!x.current[e]){let t=await E({chain:v.find((t=>t.id===e)),account:b,signer:await(U?.getEthereumProvider()),user:W,paymasterContext:r?.paymasterContext,smartWalletsConfig:a,rpcConfig:P.rpcConfig,privyAppId:h});t&&(x.current[e]=t)}S(e)}),[v,r,T,W,a]);return{wrapSmartAccountClient:e=>{x.current[e.chain.id]=e,C||S(e.chain.id);return{...e,sendTransaction:async(e,t)=>{let n=x.current[F.current];if(!n)throw new u(`Smart wallet client for chain (eip155:${F.current}) not found`);if(delete e.account,w({showWalletUIs:t?.uiOptions?.showWalletUIs}))return y.current=!0,await n.sendTransaction(e).finally((()=>y.current=!1));let r=[];"calls"in e&&void 0!==e.calls?r=[...e.calls]:"to"in e&&(r=[{to:e.to,value:e.value||BigInt(0),data:e.data||"0x"}]);let a=async()=>{let{paymasterAndData:t,paymasterData:a,maxFeePerGas:i,maxPriorityFeePerGas:s}=await n.prepareUserOperation({calls:r,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0});return 0===Number(i)&&0===Number(s)||Number(t??a??0)>0};return new Promise((async(i,s)=>{y.current=!0;let{entropyId:o,entropyIdVerifier:l}=p(W);I({connectWallet:{recoveryMethod:b.recoveryMethod,connectingWalletAddress:b.address,isUnifiedWallet:M,entropyId:o,entropyIdVerifier:l,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:D({calls:r,chain:n.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),transactingWalletIndex:0,transactingWalletAddress:n.account.address,entropyId:o,entropyIdVerifier:l,getIsSponsored:a,signOnly:!1,onConfirm:()=>n.sendTransaction(e),onSuccess:e=>i(e.hash),onFailure:s,uiOptions:t?.uiOptions??{}}}),f("EmbeddedWalletConnectingScreen")})).finally((()=>{y.current=!1}))},signMessage:async(e,t)=>{let n=x.current[F.current];if(!n)throw new u(`Smart wallet client for chain (eip155:${F.current}) not found`);return w({showWalletUIs:t?.uiOptions?.showWalletUIs})?(y.current=!0,await n.signMessage(e).finally((()=>y.current=!1))):new Promise((async(r,a)=>{let{entropyId:i,entropyIdVerifier:s}=p(W);y.current=!0,I({connectWallet:{recoveryMethod:b.recoveryMethod,connectingWalletAddress:b.address,isUnifiedWallet:M,entropyId:i,entropyIdVerifier:s,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"personal_sign",data:"string"==typeof e.message?e.message:e.message.raw.toString(),confirmAndSign:()=>n.signMessage(e),onSuccess:e=>r(e),onFailure:a,uiOptions:t?.uiOptions??{}}}),f("EmbeddedWalletConnectingScreen")})).finally((()=>{y.current=!1}))},signTypedData:async(e,t)=>{let n=x.current[F.current];if(!n)throw new u(`Smart wallet client for chain (eip155:${F.current}) not found`);return delete e.account,w({showWalletUIs:t?.uiOptions?.showWalletUIs})?(y.current=!0,await n.signTypedData(e).finally((()=>y.current=!1))):new Promise((async(r,a)=>{y.current=!0;let{entropyId:i,entropyIdVerifier:s}=p(W);I({connectWallet:{recoveryMethod:b.recoveryMethod,connectingWalletAddress:b.address,isUnifiedWallet:M,entropyId:i,entropyIdVerifier:s,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:e,confirmAndSign:()=>n.signTypedData(e),onSuccess:e=>r(e),onFailure:a,uiOptions:t?.uiOptions??{}}}),f("EmbeddedWalletConnectingScreen")})).finally((()=>{y.current=!1}))},getChainId:O,chain:G,switchChain:V}}}},N=()=>{let{hideWalletUIs:e,openPrivyModal:t,isHeadlessSigning:n}=d(),{setModalData:r}=i(),{user:a}=s(),c=o(a),u=!!c&&l(c);return{wrapSmartAccountClientWithUIs:i=>({...i,sendTransaction:async(s,o)=>{if(n({showWalletUIs:o?.uiOptions?.showWalletUIs}))return e.current=!0,await i.sendTransaction(s).finally((()=>e.current=!1));let l=[];"calls"in s&&void 0!==s.calls?l=[...s.calls]:"to"in s&&(l=[{to:s.to,value:s.value||BigInt(0),data:s.data||"0x"}]);let d=async()=>{if(!i.paymaster)return!1;let{paymasterData:e,paymasterAndData:t}=await i.prepareUserOperation({calls:l,maxFeePerGas:s.maxFeePerGas,maxPriorityFeePerGas:s.maxPriorityFeePerGas,nonce:s.nonce?BigInt(s.nonce):void 0});return Number(t??e??0)>0};return new Promise((async(n,m)=>{e.current=!0;let{entropyId:y,entropyIdVerifier:g}=p(a);r({connectWallet:{recoveryMethod:c.recoveryMethod,connectingWalletAddress:c.address,isUnifiedWallet:u,entropyId:y,entropyIdVerifier:g,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:D({calls:l,chain:i.chain,maxPriorityFeePerGas:s.maxPriorityFeePerGas,maxFeePerGas:s.maxFeePerGas,nonce:s.nonce?BigInt(s.nonce):void 0}),transactingWalletIndex:0,transactingWalletAddress:i.account.address,entropyId:y,entropyIdVerifier:g,getIsSponsored:d,signOnly:!1,onConfirm:()=>i.sendTransaction(s),onSuccess:e=>n(e.hash),onFailure:m,uiOptions:o?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1}))},signMessage:async(s,o)=>n({showWalletUIs:o?.uiOptions?.showWalletUIs})?(e.current=!0,await i.signMessage(s).finally((()=>e.current=!1))):new Promise((async(n,l)=>{let{entropyId:d,entropyIdVerifier:m}=p(a);e.current=!0,r({connectWallet:{recoveryMethod:c.recoveryMethod,connectingWalletAddress:c.address,isUnifiedWallet:u,entropyId:d,entropyIdVerifier:m,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"personal_sign",data:"string"==typeof s.message?s.message:s.message.raw.toString(),confirmAndSign:()=>i.signMessage(s),onSuccess:e=>n(e),onFailure:l,uiOptions:o?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1})),signTypedData:async(s,o)=>n({showWalletUIs:o?.uiOptions?.showWalletUIs})?(e.current=!0,await i.signTypedData(s).finally((()=>e.current=!1))):new Promise((async(n,l)=>{e.current=!0;let{entropyId:d,entropyIdVerifier:m}=p(a);r({connectWallet:{recoveryMethod:c.recoveryMethod,connectingWalletAddress:c.address,isUnifiedWallet:u,entropyId:d,entropyIdVerifier:m,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:s,confirmAndSign:()=>i.signTypedData(s),onSuccess:e=>n(e),onFailure:l,uiOptions:o?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1}))})}};export{q as a,D as c,E as g,N as u};
|
|
1
|
+
import{useRef as e,useState as t,useCallback as n}from"react";import{http as r,createPublicClient as a}from"viem";import{a as i,u as s,b as o,d as l}from"./get-is-unified-wallet-DF10lirM.mjs";import{u as c}from"./context-BuN0M_vH.mjs";import{u as d,a as u}from"./internal-context-e-Eni5bG.mjs";import{u as m,g as p}from"./useWallets-DTjrHNDw.mjs";import{a as y}from"./getPublicClient-A9RSftUZ.mjs";import{a as g}from"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import{createSmartAccountClient as f}from"permissionless";import{toThirdwebSmartAccount as h,toLightSmartAccount as w,toBiconomySmartAccount as P,toKernelSmartAccount as I,toSafeSmartAccount as W}from"permissionless/accounts";import{createPimlicoClient as v}from"permissionless/clients/pimlico";import{entryPoint07Address as F,entryPoint06Address as x,toCoinbaseSmartAccount as S}from"viem/account-abstraction";import{THIRDWEB as C,COINBASE_SMART_WALLET as G,LIGHT_ACCOUNT as T,BICONOMY as b,KERNEL as U,SAFE as M}from"@privy-io/js-sdk-core";let O={address:x,version:"0.6"},V={address:F,version:"0.7"},A=({owner:e,smartWalletType:t,smartWalletVersion:n,publicClient:r})=>{switch(t){case M:return W({client:r,entryPoint:V,owners:[e],version:"1.4.1"});case U:return I({client:r,version:"0.3.1",entryPoint:V,useMetaFactory:"optional",owners:[e]});case b:return P({client:r,owners:[e],entryPoint:O});case T:return w({client:r,entryPoint:O,owner:e,version:"1.1.0"});case G:return async function({client:e,owner:t,version:n}){let[r]=await t.request({method:"eth_accounts"});if(!r)throw Error("Unable to request embedded owner for eth_accounts");return await S({client:e,owners:[{type:"local",source:"privy",address:r,sign:async({hash:e})=>await t.request({method:"secp256k1_sign",params:[e]})}],version:n})}({client:r,owner:e,version:n??"1"});case C:return h({client:r,entryPoint:V,owner:e});default:throw Error(`Invalid smart account type: ${t}.`)}};const D=({calls:e,chain:t,maxPriorityFeePerGas:n,maxFeePerGas:r,nonce:a})=>e.map((e=>({to:e.to||void 0,data:e.data,value:e.value,chainId:t.id,nonce:a,maxFeePerGas:r,maxPriorityFeePerGas:n}))),E=async({chain:e,paymasterContext:t,account:n,signer:i,user:s,smartWalletsConfig:o,rpcConfig:l,privyAppId:c})=>{if(!(o?.enabled&&s&&n&&i))return;let d=o?.configuredNetworks.find((t=>t.chainId===`eip155:${e.id}`));if(!d)throw new u(`The chain ${e.name} (eip155:${e.id}) must be configured in the smart wallet configuration in your dashboard`);let m=s.smartWallet?s.smartWallet.smartWalletType:o.smartWalletType,p=s.smartWallet?s.smartWallet.smartWalletVersion:o.smartWalletVersion,g=y(e,l,c),h=a({chain:e,transport:r(g)}),w=t??d.paymasterContext,P=await(async({owner:e,smartWalletType:t,smartWalletVersion:n,chain:a,publicClient:i,bundlerUrl:s,paymasterUrl:o,paymasterContext:l})=>{let c=await A({owner:e,smartWalletType:t,publicClient:i,smartWalletVersion:n}),d=v({transport:r(s),entryPoint:c.entryPoint}),u=o?v({transport:r(o),entryPoint:c.entryPoint}):void 0;return f({account:c,chain:a,paymaster:u,paymasterContext:l,bundlerTransport:r(s),userOperation:{estimateFeesPerGas:async()=>{if(["public.pimlico.io","api.pimlico.io"].some((e=>s.includes(e))))return await d.getUserOperationGasPrice().then((e=>e.fast));if(["rpc.zerodev.app"].some((e=>s.includes(e))))return(await d.request({method:"zd_getUserOperationGasPrice",params:[]})).fast;if(["g.alchemy.com"].some((e=>s.includes(e)))){let[e,t]=await Promise.all([i.getBlock({blockTag:"latest"}),d.request({method:"rundler_maxPriorityFeePerGas",params:[]})]);if(!e.baseFeePerGas||!t)throw Error("Failed to get block or maxPriorityFeePerGasEstimate");return{maxFeePerGas:150n*e.baseFeePerGas/100n+BigInt(t.toString()),maxPriorityFeePerGas:BigInt(t.toString())}}{let e=await i.estimateFeesPerGas(),t=s.includes("api.developer.coinbase.com")?175n:150n;return{...e,maxFeePerGas:e.maxFeePerGas*t/100n,maxPriorityFeePerGas:e.maxPriorityFeePerGas*t/100n}}}}})})({owner:i,smartWalletType:m,smartWalletVersion:p,chain:e,publicClient:h,paymasterContext:w,...d});if(!P)throw new u(`Failed to create smart wallet client for chain ${e.name} (eip155:${e.id})`);return P},q=({clientConfig:r,smartWalletsConfig:a})=>{let{hideWalletUIs:y,openPrivyModal:f,appId:h,isHeadlessSigning:w}=d(),P=c(),{setModalData:I}=i(),{user:W}=s(),{chains:v}=c(),{chainId:F,clients:x,setChainId:S,chainIdState:C}=(()=>{let n=e(),[r,a]=t();return{clients:e({}),setChainId:e=>{n.current=e,a(e)},chainId:n,chainIdState:r}})(),G=v.find((e=>e.id===C)),{wallets:T}=m(),b=o(W),U=g(T,b?.address),M=!!b&&l(b),O=n((async()=>F.current),[F]),V=n((async({id:e})=>{if(!x.current[e]){let t=await E({chain:v.find((t=>t.id===e)),account:b,signer:await(U?.getEthereumProvider()),user:W,paymasterContext:r?.paymasterContext,smartWalletsConfig:a,rpcConfig:P.rpcConfig,privyAppId:h});t&&(x.current[e]=t)}S(e)}),[v,r,T,W,a]);return{wrapSmartAccountClient:e=>{x.current[e.chain.id]=e,C||S(e.chain.id);return{...e,sendTransaction:async(e,t)=>{let n=x.current[F.current];if(!n)throw new u(`Smart wallet client for chain (eip155:${F.current}) not found`);if(delete e.account,w({showWalletUIs:t?.uiOptions?.showWalletUIs}))return y.current=!0,await n.sendTransaction(e).finally((()=>y.current=!1));let r=[];"calls"in e&&void 0!==e.calls?r=[...e.calls]:"to"in e&&(r=[{to:e.to,value:e.value||BigInt(0),data:e.data||"0x"}]);let a=async()=>{let{paymasterAndData:t,paymasterData:a,maxFeePerGas:i,maxPriorityFeePerGas:s}=await n.prepareUserOperation({calls:r,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0});return 0===Number(i)&&0===Number(s)||Number(t??a??0)>0};return new Promise((async(i,s)=>{y.current=!0;let{entropyId:o,entropyIdVerifier:l}=p(W);I({connectWallet:{recoveryMethod:b.recoveryMethod,connectingWalletAddress:b.address,isUnifiedWallet:M,entropyId:o,entropyIdVerifier:l,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:D({calls:r,chain:n.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),transactingWalletIndex:0,transactingWalletAddress:n.account.address,entropyId:o,entropyIdVerifier:l,getIsSponsored:a,signOnly:!1,onConfirm:()=>n.sendTransaction(e),onSuccess:e=>i(e.hash),onFailure:s,uiOptions:t?.uiOptions??{}}}),f("EmbeddedWalletConnectingScreen")})).finally((()=>{y.current=!1}))},signMessage:async(e,t)=>{let n=x.current[F.current];if(!n)throw new u(`Smart wallet client for chain (eip155:${F.current}) not found`);return w({showWalletUIs:t?.uiOptions?.showWalletUIs})?(y.current=!0,await n.signMessage(e).finally((()=>y.current=!1))):new Promise((async(r,a)=>{let{entropyId:i,entropyIdVerifier:s}=p(W);y.current=!0,I({connectWallet:{recoveryMethod:b.recoveryMethod,connectingWalletAddress:b.address,isUnifiedWallet:M,entropyId:i,entropyIdVerifier:s,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"personal_sign",data:"string"==typeof e.message?e.message:e.message.raw.toString(),confirmAndSign:()=>n.signMessage(e),onSuccess:e=>r(e),onFailure:a,uiOptions:t?.uiOptions??{}}}),f("EmbeddedWalletConnectingScreen")})).finally((()=>{y.current=!1}))},signTypedData:async(e,t)=>{let n=x.current[F.current];if(!n)throw new u(`Smart wallet client for chain (eip155:${F.current}) not found`);return delete e.account,w({showWalletUIs:t?.uiOptions?.showWalletUIs})?(y.current=!0,await n.signTypedData(e).finally((()=>y.current=!1))):new Promise((async(r,a)=>{y.current=!0;let{entropyId:i,entropyIdVerifier:s}=p(W);I({connectWallet:{recoveryMethod:b.recoveryMethod,connectingWalletAddress:b.address,isUnifiedWallet:M,entropyId:i,entropyIdVerifier:s,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:e,confirmAndSign:()=>n.signTypedData(e),onSuccess:e=>r(e),onFailure:a,uiOptions:t?.uiOptions??{}}}),f("EmbeddedWalletConnectingScreen")})).finally((()=>{y.current=!1}))},getChainId:O,chain:G,switchChain:V}}}},N=()=>{let{hideWalletUIs:e,openPrivyModal:t,isHeadlessSigning:n}=d(),{setModalData:r}=i(),{user:a}=s(),c=o(a),u=!!c&&l(c);return{wrapSmartAccountClientWithUIs:i=>({...i,sendTransaction:async(s,o)=>{if(n({showWalletUIs:o?.uiOptions?.showWalletUIs}))return e.current=!0,await i.sendTransaction(s).finally((()=>e.current=!1));let l=[];"calls"in s&&void 0!==s.calls?l=[...s.calls]:"to"in s&&(l=[{to:s.to,value:s.value||BigInt(0),data:s.data||"0x"}]);let d=async()=>{if(!i.paymaster)return!1;let{paymasterData:e,paymasterAndData:t}=await i.prepareUserOperation({calls:l,maxFeePerGas:s.maxFeePerGas,maxPriorityFeePerGas:s.maxPriorityFeePerGas,nonce:s.nonce?BigInt(s.nonce):void 0});return Number(t??e??0)>0};return new Promise((async(n,m)=>{e.current=!0;let{entropyId:y,entropyIdVerifier:g}=p(a);r({connectWallet:{recoveryMethod:c.recoveryMethod,connectingWalletAddress:c.address,isUnifiedWallet:u,entropyId:y,entropyIdVerifier:g,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:D({calls:l,chain:i.chain,maxPriorityFeePerGas:s.maxPriorityFeePerGas,maxFeePerGas:s.maxFeePerGas,nonce:s.nonce?BigInt(s.nonce):void 0}),transactingWalletIndex:0,transactingWalletAddress:i.account.address,entropyId:y,entropyIdVerifier:g,getIsSponsored:d,signOnly:!1,onConfirm:()=>i.sendTransaction(s),onSuccess:e=>n(e.hash),onFailure:m,uiOptions:o?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1}))},signMessage:async(s,o)=>n({showWalletUIs:o?.uiOptions?.showWalletUIs})?(e.current=!0,await i.signMessage(s).finally((()=>e.current=!1))):new Promise((async(n,l)=>{let{entropyId:d,entropyIdVerifier:m}=p(a);e.current=!0,r({connectWallet:{recoveryMethod:c.recoveryMethod,connectingWalletAddress:c.address,isUnifiedWallet:u,entropyId:d,entropyIdVerifier:m,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"personal_sign",data:"string"==typeof s.message?s.message:s.message.raw.toString(),confirmAndSign:()=>i.signMessage(s),onSuccess:e=>n(e),onFailure:l,uiOptions:o?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1})),signTypedData:async(s,o)=>n({showWalletUIs:o?.uiOptions?.showWalletUIs})?(e.current=!0,await i.signTypedData(s).finally((()=>e.current=!1))):new Promise((async(n,l)=>{e.current=!0;let{entropyId:d,entropyIdVerifier:m}=p(a);r({connectWallet:{recoveryMethod:c.recoveryMethod,connectingWalletAddress:c.address,isUnifiedWallet:u,entropyId:d,entropyIdVerifier:m,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:s,confirmAndSign:()=>i.signTypedData(s),onSuccess:e=>n(e),onFailure:l,uiOptions:o?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1}))})}};export{q as a,D as c,E as g,N as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{useContext as t,createContext as i,useState as r,useEffect as a}from"react";import{u as n,b as l}from"./get-is-unified-wallet-
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{useContext as t,createContext as i,useState as r,useEffect as a}from"react";import{u as n,b as l}from"./get-is-unified-wallet-DF10lirM.mjs";import{u as s}from"./context-BuN0M_vH.mjs";import{u as o,a as c,n as m}from"./internal-context-e-Eni5bG.mjs";import{a as d}from"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import{u as p,g,a as f}from"./smart-wallets-HoA3s19q.mjs";import{u}from"./useWallets-DTjrHNDw.mjs";import"viem";import"@privy-io/js-sdk-core";import"tinycolor2";import"ofetch";import"./getPublicClient-A9RSftUZ.mjs";import"permissionless";import"permissionless/accounts";import"permissionless/clients/pimlico";import"viem/account-abstraction";let h=/*#__PURE__*/i({client:void 0,getClientForChain:m});const C=({config:t,children:i})=>/*#__PURE__*/e(y,{config:t,children:/*#__PURE__*/e(v,{children:i})}),w=()=>{let{client:e,getClientForChain:i}=t(h);return{client:e,getClientForChain:i}};let y=({config:t,children:i})=>{let{appId:m}=o(),{chains:f,defaultChain:h,rpcConfig:C,smartWallets:w}=s(),{wallets:y}=u(),{user:v}=n(),[F,b]=r(),{wrapSmartAccountClientWithUIs:j}=p(),x=l(v),I=d(y,x?.address);a((()=>{(async()=>{if(!w?.enabled)return;let e=w.configuredNetworks.find((e=>e.chainId===`eip155:${h.id}`))?h:f.find((e=>w.configuredNetworks.map((e=>e.chainId)).includes(`eip155:${e.id}`)));if(!e)throw new c("Could not find smart wallets chain configurations for any Privy client configured chains. Please configure smart wallets for your chains in the Privy dashboard.");b(await g({chain:e,privyAppId:m,paymasterContext:t?.paymasterContext,rpcConfig:C,account:x,signer:await(I?.getEthereumProvider()),user:v,smartWalletsConfig:w}))})()}),[!!w?.enabled,!!v?.smartWallet,!!I,!!x]);/*#__PURE__*/return e(W.Provider,{value:{client:F,config:t,getClientForChain:async({id:e})=>{let i=await g({chain:f.find((t=>t.id===e)),privyAppId:m,paymasterContext:t?.paymasterContext,rpcConfig:C,account:x,signer:await(I?.getEthereumProvider()),user:v,smartWalletsConfig:w});if(!i)throw new c(`Failed to create smart wallet client for chain id: ${e}`);return j(i)}},children:i})},W=/*#__PURE__*/i({client:void 0,config:void 0,getClientForChain:m}),v=({children:i})=>{let{smartWallets:r}=s(),{client:l,config:c,getClientForChain:m}=(()=>{let{client:e,config:i,getClientForChain:r}=t(W);return{client:e,config:i,getClientForChain:r}})(),{wrapSmartAccountClient:d}=f({clientConfig:c,smartWalletsConfig:r}),{user:p}=n(),{generateSiweMessageForSmartWallet:g,linkSmartWallet:u,hideWalletUIs:C}=o();return a((()=>{(async()=>{if(l&&p&&!p?.smartWallet&&r?.enabled)try{let e=await g({address:l.account.address,chainId:`eip155:${l.chain.id}`});C.current=!0;let t=await l.signMessage({message:e});await u({signature:t,message:e,smartWalletType:r.smartWalletType,smartWalletVersion:r.smartWalletVersion})}catch(e){console.error("Error creating smart wallet:",e)}finally{C.current=!1}})()}),[!!l,!!p?.smartWallet,!!r?.enabled]),/*#__PURE__*/e(h.Provider,{value:{client:p?.smartWallet&&l?d(l):void 0,getClientForChain:m},children:i})};export{C as SmartWalletsProvider,w as useSmartWallets};
|
package/dist/esm/solana.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useCallback as e}from"react";import{b as t,i as s,S as i,j as n,p as r,e as o,f as l}from"./usePrivy-C5z76Qhs.mjs";import{u as c}from"./context-BqHnoxK5.mjs";import{a as d}from"./events-context-CI0iqAXA.mjs";import{u as h}from"./internal-context-e-Eni5bG.mjs";import{u as p}from"./get-is-unified-wallet-GLvRyJlT.mjs";import{pipe as f,createTransactionMessage as g,setTransactionMessageFeePayerSigner as v,setTransactionMessageLifetimeUsingBlockhash as m,appendTransactionMessageInstructions as y,compileTransaction as w,getTransactionEncoder as b,address as j,setTransactionMessageFeePayer as _,blockhash as P,getTransactionDecoder as O}from"@solana/kit";import{f as S,s as T,g as A}from"./useSolanaRpcClient-BMkY8W80.mjs";import{S as W,g as C}from"./useWallets-CHDUUIx3.mjs";export{a as useStandardWallets,u as useWallets}from"./useWallets-CHDUUIx3.mjs";import{base58 as E,base64 as M}from"@scure/base";import{getAddMemoInstruction as k}from"@solana-program/memo";export{a as useExportWallet,u as useFundWallet}from"./use-export-wallet-BSyJ6wXH.mjs";import{S as U,W as x}from"./prepareFundingModalData-lYYA8ZfI.mjs";import{getWallets as F}from"@wallet-standard/app";import{UniversalProvider as R}from"@walletconnect/universal-provider";import{isMobile as K}from"react-device-detect";import"react/jsx-runtime";import"@privy-io/js-sdk-core";import"./useWallets-Aw21dxK9.mjs";import"tinycolor2";import"ofetch";import"viem";import"eventemitter3";import"./use-sign-with-user-signer-eEm9Olt_.mjs";const q=e=>{let t,{get:s,on:i}=F(),n=e?.shouldAutoConnect??!0,a=new U(new Me,n),r=new Map,o=[];function l(...e){e.forEach((e=>{!(e.features["privy:"]&&"isPrivyWallet"in e&&e.isPrivyWallet||r.has(e.name))&&e.chains.some((e=>"string"==typeof e&&e.startsWith("solana:")))&&r.set(e.name,e)})),o=Array.from(r.values()).map((e=>new U(e,n))).concat(a),t?.(o)}function c(...e){Array.from(r.values()).forEach((t=>!e.includes(t)&&r.delete(t.name))),o=Array.from(r.values()).map((e=>new U(e,n))).concat(a),t?.(o)}let d=[i("register",l),i("unregister",c)];return l(...s()),{_setOnConnectorsUpdated:e=>{t=e},onMount:()=>{d[0]||(d[0]=i("register",l)),d[1]||(d[1]=i("unregister",c))},onUnmount:()=>{let e=d.pop();for(;e;)e(),e=d.pop()},get:()=>o}};function V(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var I=0;function D(e){return"__private_"+I+++"_"+e}var z=/*#__PURE__*/D("_address"),B=/*#__PURE__*/D("_publicKey"),J=/*#__PURE__*/D("_chains"),N=/*#__PURE__*/D("_features"),L=/*#__PURE__*/D("_label"),Y=/*#__PURE__*/D("_icon");class H{get address(){return V(this,z)[z]}get publicKey(){return V(this,B)[B].slice()}get chains(){return V(this,J)[J].slice()}get features(){return V(this,N)[N].slice()}get label(){return V(this,L)[L]}get icon(){return V(this,Y)[Y]}constructor({address:e,publicKey:t,label:s,icon:i}){Object.defineProperty(this,z,{writable:!0,value:void 0}),Object.defineProperty(this,B,{writable:!0,value:void 0}),Object.defineProperty(this,J,{writable:!0,value:void 0}),Object.defineProperty(this,N,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),Object.defineProperty(this,Y,{writable:!0,value:void 0}),V(this,z)[z]=e,V(this,B)[B]=t,V(this,J)[J]=W,V(this,N)[N]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],V(this,L)[L]=s,V(this,Y)[Y]=i}}function G(e){if("string"==typeof e)return E.decode(e);if(e instanceof Uint8Array)return e;let t=e.signature;return"string"==typeof t?E.decode(t):t}function Z(e){if("string"==typeof e){try{return E.decode(e)}catch{}return M.decode(e)}if(e instanceof Uint8Array)return e;let t=e.transaction??e.signature;if(!t)throw Error("Invalid result from signTransaction or signAndSendTransaction attempt");if("string"==typeof t){try{return E.decode(t)}catch{}return M.decode(t)}return t}function $(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var Q=0;function X(e){return"__private_"+Q+++"_"+e}let ee="solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",te="solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1";var se=/*#__PURE__*/X("_listeners"),ie=/*#__PURE__*/X("_version"),ne=/*#__PURE__*/X("_name"),ae=/*#__PURE__*/X("_icon"),re=/*#__PURE__*/X("_provider"),oe=/*#__PURE__*/X("_accounts"),le=/*#__PURE__*/X("_privyAppName"),ce=/*#__PURE__*/X("_walletConnectCloudProjectId"),de=/*#__PURE__*/X("_walletEntry"),he=/*#__PURE__*/X("_onDisplayUriCallback"),ue=/*#__PURE__*/X("_providerEventListeners"),pe=/*#__PURE__*/X("_on"),fe=/*#__PURE__*/X("_emit"),ge=/*#__PURE__*/X("_off"),ve=/*#__PURE__*/X("_connected"),me=/*#__PURE__*/X("_disconnected"),ye=/*#__PURE__*/X("_connect"),we=/*#__PURE__*/X("_disconnect"),be=/*#__PURE__*/X("_signMessage"),je=/*#__PURE__*/X("_signAndSendTransaction"),_e=/*#__PURE__*/X("_signTransaction"),Pe=/*#__PURE__*/X("_getOrCreateProvider"),Oe=/*#__PURE__*/X("_getOrCreateSession"),Se=/*#__PURE__*/X("_restoreSession"),Te=/*#__PURE__*/X("_addProviderEventListener"),Ae=/*#__PURE__*/X("_destroySession"),We=/*#__PURE__*/X("_makeRpcRequest"),Ce=/*#__PURE__*/X("_onDisplayUri"),Ee=/*#__PURE__*/X("_onSessionDelete");class Me{get version(){return $(this,ie)[ie]}get name(){return $(this,ne)[ne]}get icon(){return $(this,ae)[ae]}get chains(){return W.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:$(this,ye)[ye]},"standard:disconnect":{version:"1.0.0",disconnect:$(this,we)[we]},"standard:events":{version:"1.0.0",on:$(this,pe)[pe]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:$(this,je)[je]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:$(this,_e)[_e]},"solana:signMessage":{version:"1.0.0",signMessage:$(this,be)[be]}}}get accounts(){return $(this,oe)[oe].slice()}get isWalletConnectSolana(){return!0}async initialize({walletConnectCloudProjectId:e,privyAppName:t}){$(this,ce)[ce]=e,$(this,le)[le]=t,await $(this,Pe)[Pe](),await $(this,Se)[Se]()}setWalletEntry(e,t){$(this,de)[de]=e,$(this,he)[he]=t}constructor(){Object.defineProperty(this,fe,{value:ke}),Object.defineProperty(this,ge,{value:Ue}),Object.defineProperty(this,se,{writable:!0,value:void 0}),Object.defineProperty(this,ie,{writable:!0,value:void 0}),Object.defineProperty(this,ne,{writable:!0,value:void 0}),Object.defineProperty(this,ae,{writable:!0,value:void 0}),Object.defineProperty(this,re,{writable:!0,value:void 0}),Object.defineProperty(this,oe,{writable:!0,value:void 0}),Object.defineProperty(this,le,{writable:!0,value:void 0}),Object.defineProperty(this,ce,{writable:!0,value:void 0}),Object.defineProperty(this,de,{writable:!0,value:void 0}),Object.defineProperty(this,he,{writable:!0,value:void 0}),Object.defineProperty(this,ue,{writable:!0,value:void 0}),Object.defineProperty(this,pe,{writable:!0,value:void 0}),Object.defineProperty(this,ve,{writable:!0,value:void 0}),Object.defineProperty(this,me,{writable:!0,value:void 0}),Object.defineProperty(this,ye,{writable:!0,value:void 0}),Object.defineProperty(this,we,{writable:!0,value:void 0}),Object.defineProperty(this,be,{writable:!0,value:void 0}),Object.defineProperty(this,je,{writable:!0,value:void 0}),Object.defineProperty(this,_e,{writable:!0,value:void 0}),Object.defineProperty(this,Pe,{writable:!0,value:void 0}),Object.defineProperty(this,Oe,{writable:!0,value:void 0}),Object.defineProperty(this,Se,{writable:!0,value:void 0}),Object.defineProperty(this,Te,{writable:!0,value:void 0}),Object.defineProperty(this,Ae,{writable:!0,value:void 0}),Object.defineProperty(this,We,{writable:!0,value:void 0}),Object.defineProperty(this,Ce,{writable:!0,value:void 0}),Object.defineProperty(this,Ee,{writable:!0,value:void 0}),$(this,se)[se]={},$(this,ie)[ie]="1.0.0",$(this,ne)[ne]="WalletConnect",$(this,ae)[ae]=x,$(this,re)[re]=null,$(this,oe)[oe]=[],$(this,le)[le]="",$(this,ce)[ce]="",$(this,ue)[ue]=new Map,$(this,pe)[pe]=(e,t)=>($(this,se)[se][e]?.push(t)||($(this,se)[se][e]=[t]),()=>$(this,ge)[ge](e,t)),$(this,ve)[ve]=e=>{$(this,ne)[ne]=$(this,re)[re]?.session?.peer?.metadata?.name||$(this,de)[de]?.name||"WalletConnect",$(this,ae)[ae]=$(this,re)[re]?.session?.peer?.metadata?.icons?.[0]||$(this,de)[de]?.image_url?.sm||$(this,ae)[ae],$(this,oe)[oe]=e.map((e=>new H({address:e,publicKey:E.decode(e),label:$(this,ne)[ne],icon:$(this,ae)[ae]}))),$(this,fe)[fe]("change",{accounts:this.accounts})},$(this,me)[me]=()=>{$(this,oe)[oe]=[],$(this,fe)[fe]("change",{accounts:this.accounts})},$(this,ye)[ye]=async()=>(this.accounts.length||await $(this,Oe)[Oe](),{accounts:this.accounts}),$(this,we)[we]=async()=>{await $(this,Ae)[Ae](),$(this,fe)[fe]("change",{accounts:this.accounts})},$(this,be)[be]=async(...e)=>{let t=[];for(let{account:s,message:i}of e){let e=E.encode(i);try{let n=await $(this,We)[We]("solana_signMessage",{message:e,pubkey:s.address},Fe("solana:mainnet"));t.push({signedMessage:i,signature:G(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await $(this,We)[We]("solana:signMessage",{message:e,pubkey:s.address},Fe("solana:mainnet"));t.push({signedMessage:i,signature:G(n)})}throw n}}return t},$(this,je)[je]=async(...e)=>{let t=[];for(let{account:s,chain:i,transaction:n,options:a}of e){let e=M.encode(n);try{let n=await $(this,We)[We]("solana_signAndSendTransaction",{transaction:e,pubkey:s.address,sendOptions:a},Fe(i));t.push({signature:G(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await $(this,We)[We]("solana:signAndSendTransaction",{transaction:e,pubkey:s.address,sendOptions:a},Fe(i));t.push({signature:G(n)})}}}return t},$(this,_e)[_e]=async(...e)=>{let t=[];for(let{account:s,chain:i,transaction:n}of e){let e=M.encode(n);try{let n=await $(this,We)[We]("solana_signTransaction",{transaction:e,pubkey:s.address},Fe(i||"solana:mainnet"));t.push({signedTransaction:Z(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await $(this,We)[We]("solana:signTransaction",{transaction:e,pubkey:s.address},Fe(i||"solana:mainnet"));t.push({signedTransaction:Z(n)})}}}return t},$(this,Pe)[Pe]=async()=>{if($(this,re)[re])return $(this,re)[re];if(!$(this,ce)[ce])throw Error("WalletConnect Cloud Project ID is required");return $(this,re)[re]=await R.init({projectId:$(this,ce)[ce],metadata:{name:$(this,le)[le],description:$(this,le)[le],url:window.location.origin,icons:[]},relayUrl:"wss://relay.walletconnect.com",telemetryEnabled:!1}),$(this,Te)[Te]("display_uri",$(this,Ce)[Ce]),$(this,Te)[Te]("session_delete",$(this,Ee)[Ee]),$(this,Te)[Te]("session_ping",(()=>{})),$(this,Te)[Te]("session_event",(()=>{})),$(this,Te)[Te]("session_update",(()=>{})),$(this,re)[re]},$(this,Oe)[Oe]=async()=>{if(!$(this,re)[re])throw Error("WalletConnectSolana: Failed to get or create session. Provider not initialized");if($(this,re)[re].session)return $(this,re)[re].session;let e=await $(this,re)[re].connect({optionalNamespaces:{solana:{chains:[ee,te],methods:["solana_signMessage","solana_signTransaction","solana_signAndSendTransaction"],events:[]}}});if(!e)throw Error("WalletConnectSolana: Failed to create new session");return $(this,ve)[ve](xe(e)),e},$(this,Se)[Se]=async()=>{let e=$(this,re)[re]?.session;if(e){if(!e.namespaces?.solana)return await($(this,re)[re]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),void($(this,re)[re].session=void 0);$(this,ve)[ve](xe(e))}},$(this,Te)[Te]=(e,t)=>{let s=$(this,ue)[ue].get(e);s&&($(this,re)[re]?.off(e,s),$(this,ue)[ue].delete(e)),$(this,re)[re]?.on(e,t),$(this,ue)[ue].set(e,t)},$(this,Ae)[Ae]=async()=>{try{if($(this,re)[re]?.session&&await($(this,re)[re]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),$(this,re)[re]?.client){let e=$(this,re)[re].client.proposal.getAll();await Promise.allSettled(e.map((e=>$(this,re)[re]?.client.proposal.delete(e.id,{code:6e3,message:"User disconnected"}))));let t=$(this,re)[re].client.pairing.getAll();await Promise.allSettled(t.map((e=>$(this,re)[re]?.client.pairing.delete(e.topic,{code:6e3,message:"User disconnected"}))))}$(this,me)[me]()}catch(e){console.error("WalletConnectSolana: Error destroying session",e)}},$(this,We)[We]=async(e,t,s)=>{try{return await $(this,re)[re].request({method:e,params:t},s)}catch(t){if(console.error(`WalletConnectSolana: RPC Error - ${e}:`,t),t?.message?.includes("without any listeners")&&t.result)return t.result;if(t?.message?.includes("session topic does not exist in keychain"))throw Error("WalletConnectSolana: Wallet connection lost. Please reconnect.");throw t}},$(this,Ce)[Ce]=e=>{if(K&&$(this,de)[de]){let{redirect:s}=t(e,$(this,de)[de]);null==$(this,he)[he]||$(this,he)[he].call(this,{native:s,universal:s})}else null==$(this,he)[he]||$(this,he)[he].call(this,{native:e,universal:void 0})},$(this,Ee)[Ee]=()=>{$(this,me)[me]()}}}function ke(e,...t){$(this,se)[se][e]?.forEach((e=>e.apply(null,t)))}function Ue(e,t){$(this,se)[se][e]=$(this,se)[se][e]?.filter((e=>t!==e))}function xe(e){return e.namespaces.solana.accounts.reduce(((e,t)=>{let s=t.split(":").at(-1);return e.includes(s)||e.push(s),e}),[])}function Fe(e){switch(e){case"solana:mainnet":return ee;case"solana:devnet":return te;default:return e}}const Re=()=>{let{user:t}=p(),{client:i,refreshSessionAndUser:n,initializeWalletProxy:a}=h(),r=d(),o=c();return{importWallet:e((({privateKey:e,additionalSigners:l})=>s({getAccessToken:()=>i.getAccessToken(),user:t,initializeWalletProxy:a,refreshSessionAndUser:n,emitPrivyEvent:r,appConfig:o},{privateKey:e,chainType:"solana",additionalSigners:l})),[t,i,n,a,r,o])}};var Ke={id:i,getSolanaRpcClient:A,createTransactionFromRelayQuote:async function({solanaClient:e,quote:t,source:s}){let i=t.steps[0]?.items?.[0];if(!i)throw Error("Invalid quote");let n=i.data.instructions.map((({keys:e,programId:t,data:s})=>({accounts:e.map((({pubkey:e,isSigner:t,isWritable:s})=>({address:e,role:t&&s?3:t&&!s?2:!t&&s?1:0}))),programAddress:t,data:new Uint8Array(Buffer.from(s,"hex"))}))),{value:a}=await e.rpc.getLatestBlockhash().send(),r=f(g({version:0}),(e=>v({address:s},e)),(e=>m(a,e)),(e=>y(n,e)),(e=>w(e)));return new Uint8Array(b().encode(r))},simulateTransaction:T,getAddressFromBuffer:C,fetchTransactionEstimatedFees:S},qe=()=>n(Ke);var Ve={id:o,createSiwsMemoTransaction:({address:e,nonce:t})=>{let s=k({memo:r({address:j(e),nonce:t})});return f(g({version:"legacy"}),(t=>_(j(e),t)),(e=>m({blockhash:P("GfVcyD5fWFJ6hRm8bsy7CoVPsLSoJhtJKRJYk8T2VVFN"),lastValidBlockHeight:0n},e)),(e=>y([s],e)),(e=>w(e)),(e=>M.encode(Uint8Array.from(b().encode(e)))))},getSignatureFromTransaction:(e,t)=>{let s=O().decode(e).signatures[t];if(!s)throw Error(`Missing transaction signature for address: ${t}`);return M.encode(s)}},Ie=()=>n(Ve);function De(){let{create:e}=l();return{createWallet:async t=>{t&&"target"in t&&t&&(t=void 0);let{account:s}=await e({chainType:"solana",options:t});return{wallet:s}}}}function ze(){return{signMessage:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signMessage({...s,options:s.options}));return 1===e.length?t[0]:[...t]}}}function Be(){return{signTransaction:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signTransaction({...s,chain:s.chain||"solana:mainnet"}));return 1===e.length?t[0]:[...t]}}}function Je(){return{signAndSendTransaction:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signAndSendTransaction({...s,chain:s.chain||"solana:mainnet"}));return 1===e.length?t[0]:[...t]}}}export{U as SolanaAdapterConnector,q as toSolanaWalletConnectors,De as useCreateWallet,Re as useImportWallet,Je as useSignAndSendTransaction,ze as useSignMessage,Be as useSignTransaction,qe as useSolanaFundingPlugin,Ie as useSolanaLedgerPlugin};
|
|
1
|
+
import{useCallback as e}from"react";import{b as t,i as s,S as i,j as n,p as r,e as o,f as l}from"./usePrivy-DQKLhXbj.mjs";import{u as c}from"./context-BuN0M_vH.mjs";import{a as d}from"./events-context-CI0iqAXA.mjs";import{u as h}from"./internal-context-e-Eni5bG.mjs";import{u as p}from"./get-is-unified-wallet-DF10lirM.mjs";import{pipe as f,createTransactionMessage as g,setTransactionMessageFeePayerSigner as v,setTransactionMessageLifetimeUsingBlockhash as m,appendTransactionMessageInstructions as y,compileTransaction as w,getTransactionEncoder as b,address as j,setTransactionMessageFeePayer as _,blockhash as P,getTransactionDecoder as O}from"@solana/kit";import{f as S,s as T,g as A}from"./useSolanaRpcClient-CRKGswty.mjs";import{S as W,g as C}from"./useWallets-CvGE4Njt.mjs";export{a as useStandardWallets,u as useWallets}from"./useWallets-CvGE4Njt.mjs";import{base58 as E,base64 as M}from"@scure/base";import{getAddMemoInstruction as k}from"@solana-program/memo";export{a as useExportWallet,u as useFundWallet}from"./use-export-wallet-BjUUQuiG.mjs";import{S as U,W as x}from"./prepareFundingModalData-BHP1zZ9a.mjs";import{getWallets as F}from"@wallet-standard/app";import{UniversalProvider as R}from"@walletconnect/universal-provider";import{isMobile as K}from"react-device-detect";import"react/jsx-runtime";import"@privy-io/js-sdk-core";import"./useWallets-DTjrHNDw.mjs";import"tinycolor2";import"ofetch";import"viem";import"eventemitter3";import"./use-sign-with-user-signer-eEm9Olt_.mjs";const q=e=>{let t,{get:s,on:i}=F(),n=e?.shouldAutoConnect??!0,a=new U(new Me,n),r=new Map,o=[];function l(...e){e.forEach((e=>{!(e.features["privy:"]&&"isPrivyWallet"in e&&e.isPrivyWallet||r.has(e.name))&&e.chains.some((e=>"string"==typeof e&&e.startsWith("solana:")))&&r.set(e.name,e)})),o=Array.from(r.values()).map((e=>new U(e,n))).concat(a),t?.(o)}function c(...e){Array.from(r.values()).forEach((t=>!e.includes(t)&&r.delete(t.name))),o=Array.from(r.values()).map((e=>new U(e,n))).concat(a),t?.(o)}let d=[i("register",l),i("unregister",c)];return l(...s()),{_setOnConnectorsUpdated:e=>{t=e},onMount:()=>{d[0]||(d[0]=i("register",l)),d[1]||(d[1]=i("unregister",c))},onUnmount:()=>{let e=d.pop();for(;e;)e(),e=d.pop()},get:()=>o}};function V(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var I=0;function D(e){return"__private_"+I+++"_"+e}var z=/*#__PURE__*/D("_address"),B=/*#__PURE__*/D("_publicKey"),J=/*#__PURE__*/D("_chains"),N=/*#__PURE__*/D("_features"),L=/*#__PURE__*/D("_label"),Y=/*#__PURE__*/D("_icon");class G{get address(){return V(this,z)[z]}get publicKey(){return V(this,B)[B].slice()}get chains(){return V(this,J)[J].slice()}get features(){return V(this,N)[N].slice()}get label(){return V(this,L)[L]}get icon(){return V(this,Y)[Y]}constructor({address:e,publicKey:t,label:s,icon:i}){Object.defineProperty(this,z,{writable:!0,value:void 0}),Object.defineProperty(this,B,{writable:!0,value:void 0}),Object.defineProperty(this,J,{writable:!0,value:void 0}),Object.defineProperty(this,N,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),Object.defineProperty(this,Y,{writable:!0,value:void 0}),V(this,z)[z]=e,V(this,B)[B]=t,V(this,J)[J]=W,V(this,N)[N]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],V(this,L)[L]=s,V(this,Y)[Y]=i}}function Z(e){if("string"==typeof e)return E.decode(e);if(e instanceof Uint8Array)return e;let t=e.signature;return"string"==typeof t?E.decode(t):t}function $(e){if("string"==typeof e){try{return E.decode(e)}catch{}return M.decode(e)}if(e instanceof Uint8Array)return e;let t=e.transaction??e.signature;if(!t)throw Error("Invalid result from signTransaction or signAndSendTransaction attempt");if("string"==typeof t){try{return E.decode(t)}catch{}return M.decode(t)}return t}function H(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var Q=0;function X(e){return"__private_"+Q+++"_"+e}let ee="solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",te="solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1";var se=/*#__PURE__*/X("_listeners"),ie=/*#__PURE__*/X("_version"),ne=/*#__PURE__*/X("_name"),ae=/*#__PURE__*/X("_icon"),re=/*#__PURE__*/X("_provider"),oe=/*#__PURE__*/X("_accounts"),le=/*#__PURE__*/X("_privyAppName"),ce=/*#__PURE__*/X("_walletConnectCloudProjectId"),de=/*#__PURE__*/X("_walletEntry"),he=/*#__PURE__*/X("_onDisplayUriCallback"),ue=/*#__PURE__*/X("_providerEventListeners"),pe=/*#__PURE__*/X("_on"),fe=/*#__PURE__*/X("_emit"),ge=/*#__PURE__*/X("_off"),ve=/*#__PURE__*/X("_connected"),me=/*#__PURE__*/X("_disconnected"),ye=/*#__PURE__*/X("_connect"),we=/*#__PURE__*/X("_disconnect"),be=/*#__PURE__*/X("_signMessage"),je=/*#__PURE__*/X("_signAndSendTransaction"),_e=/*#__PURE__*/X("_signTransaction"),Pe=/*#__PURE__*/X("_getOrCreateProvider"),Oe=/*#__PURE__*/X("_getOrCreateSession"),Se=/*#__PURE__*/X("_restoreSession"),Te=/*#__PURE__*/X("_addProviderEventListener"),Ae=/*#__PURE__*/X("_destroySession"),We=/*#__PURE__*/X("_makeRpcRequest"),Ce=/*#__PURE__*/X("_onDisplayUri"),Ee=/*#__PURE__*/X("_onSessionDelete");class Me{get version(){return H(this,ie)[ie]}get name(){return H(this,ne)[ne]}get icon(){return H(this,ae)[ae]}get chains(){return W.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:H(this,ye)[ye]},"standard:disconnect":{version:"1.0.0",disconnect:H(this,we)[we]},"standard:events":{version:"1.0.0",on:H(this,pe)[pe]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:H(this,je)[je]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:H(this,_e)[_e]},"solana:signMessage":{version:"1.0.0",signMessage:H(this,be)[be]}}}get accounts(){return H(this,oe)[oe].slice()}get isWalletConnectSolana(){return!0}async initialize({walletConnectCloudProjectId:e,privyAppName:t}){H(this,ce)[ce]=e,H(this,le)[le]=t,await H(this,Pe)[Pe](),await H(this,Se)[Se]()}setWalletEntry(e,t){H(this,de)[de]=e,H(this,he)[he]=t}constructor(){Object.defineProperty(this,fe,{value:ke}),Object.defineProperty(this,ge,{value:Ue}),Object.defineProperty(this,se,{writable:!0,value:void 0}),Object.defineProperty(this,ie,{writable:!0,value:void 0}),Object.defineProperty(this,ne,{writable:!0,value:void 0}),Object.defineProperty(this,ae,{writable:!0,value:void 0}),Object.defineProperty(this,re,{writable:!0,value:void 0}),Object.defineProperty(this,oe,{writable:!0,value:void 0}),Object.defineProperty(this,le,{writable:!0,value:void 0}),Object.defineProperty(this,ce,{writable:!0,value:void 0}),Object.defineProperty(this,de,{writable:!0,value:void 0}),Object.defineProperty(this,he,{writable:!0,value:void 0}),Object.defineProperty(this,ue,{writable:!0,value:void 0}),Object.defineProperty(this,pe,{writable:!0,value:void 0}),Object.defineProperty(this,ve,{writable:!0,value:void 0}),Object.defineProperty(this,me,{writable:!0,value:void 0}),Object.defineProperty(this,ye,{writable:!0,value:void 0}),Object.defineProperty(this,we,{writable:!0,value:void 0}),Object.defineProperty(this,be,{writable:!0,value:void 0}),Object.defineProperty(this,je,{writable:!0,value:void 0}),Object.defineProperty(this,_e,{writable:!0,value:void 0}),Object.defineProperty(this,Pe,{writable:!0,value:void 0}),Object.defineProperty(this,Oe,{writable:!0,value:void 0}),Object.defineProperty(this,Se,{writable:!0,value:void 0}),Object.defineProperty(this,Te,{writable:!0,value:void 0}),Object.defineProperty(this,Ae,{writable:!0,value:void 0}),Object.defineProperty(this,We,{writable:!0,value:void 0}),Object.defineProperty(this,Ce,{writable:!0,value:void 0}),Object.defineProperty(this,Ee,{writable:!0,value:void 0}),H(this,se)[se]={},H(this,ie)[ie]="1.0.0",H(this,ne)[ne]="WalletConnect",H(this,ae)[ae]=x,H(this,re)[re]=null,H(this,oe)[oe]=[],H(this,le)[le]="",H(this,ce)[ce]="",H(this,ue)[ue]=new Map,H(this,pe)[pe]=(e,t)=>(H(this,se)[se][e]?.push(t)||(H(this,se)[se][e]=[t]),()=>H(this,ge)[ge](e,t)),H(this,ve)[ve]=e=>{H(this,ne)[ne]=H(this,re)[re]?.session?.peer?.metadata?.name||H(this,de)[de]?.name||"WalletConnect",H(this,ae)[ae]=H(this,re)[re]?.session?.peer?.metadata?.icons?.[0]||H(this,de)[de]?.image_url?.sm||H(this,ae)[ae],H(this,oe)[oe]=e.map((e=>new G({address:e,publicKey:E.decode(e),label:H(this,ne)[ne],icon:H(this,ae)[ae]}))),H(this,fe)[fe]("change",{accounts:this.accounts})},H(this,me)[me]=()=>{H(this,oe)[oe]=[],H(this,fe)[fe]("change",{accounts:this.accounts})},H(this,ye)[ye]=async()=>(this.accounts.length||await H(this,Oe)[Oe](),{accounts:this.accounts}),H(this,we)[we]=async()=>{await H(this,Ae)[Ae](),H(this,fe)[fe]("change",{accounts:this.accounts})},H(this,be)[be]=async(...e)=>{let t=[];for(let{account:s,message:i}of e){let e=E.encode(i);try{let n=await H(this,We)[We]("solana_signMessage",{message:e,pubkey:s.address},Fe("solana:mainnet"));t.push({signedMessage:i,signature:Z(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await H(this,We)[We]("solana:signMessage",{message:e,pubkey:s.address},Fe("solana:mainnet"));t.push({signedMessage:i,signature:Z(n)})}throw n}}return t},H(this,je)[je]=async(...e)=>{let t=[];for(let{account:s,chain:i,transaction:n,options:a}of e){let e=M.encode(n);try{let n=await H(this,We)[We]("solana_signAndSendTransaction",{transaction:e,pubkey:s.address,sendOptions:a},Fe(i));t.push({signature:Z(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await H(this,We)[We]("solana:signAndSendTransaction",{transaction:e,pubkey:s.address,sendOptions:a},Fe(i));t.push({signature:Z(n)})}}}return t},H(this,_e)[_e]=async(...e)=>{let t=[];for(let{account:s,chain:i,transaction:n}of e){let e=M.encode(n);try{let n=await H(this,We)[We]("solana_signTransaction",{transaction:e,pubkey:s.address},Fe(i||"solana:mainnet"));t.push({signedTransaction:$(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await H(this,We)[We]("solana:signTransaction",{transaction:e,pubkey:s.address},Fe(i||"solana:mainnet"));t.push({signedTransaction:$(n)})}}}return t},H(this,Pe)[Pe]=async()=>{if(H(this,re)[re])return H(this,re)[re];if(!H(this,ce)[ce])throw Error("WalletConnect Cloud Project ID is required");return H(this,re)[re]=await R.init({projectId:H(this,ce)[ce],metadata:{name:H(this,le)[le],description:H(this,le)[le],url:window.location.origin,icons:[]},relayUrl:"wss://relay.walletconnect.com",telemetryEnabled:!1}),H(this,Te)[Te]("display_uri",H(this,Ce)[Ce]),H(this,Te)[Te]("session_delete",H(this,Ee)[Ee]),H(this,Te)[Te]("session_ping",(()=>{})),H(this,Te)[Te]("session_event",(()=>{})),H(this,Te)[Te]("session_update",(()=>{})),H(this,re)[re]},H(this,Oe)[Oe]=async()=>{if(!H(this,re)[re])throw Error("WalletConnectSolana: Failed to get or create session. Provider not initialized");if(H(this,re)[re].session)return H(this,re)[re].session;let e=await H(this,re)[re].connect({optionalNamespaces:{solana:{chains:[ee,te],methods:["solana_signMessage","solana_signTransaction","solana_signAndSendTransaction"],events:[]}}});if(!e)throw Error("WalletConnectSolana: Failed to create new session");return H(this,ve)[ve](xe(e)),e},H(this,Se)[Se]=async()=>{let e=H(this,re)[re]?.session;if(e){if(!e.namespaces?.solana)return await(H(this,re)[re]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),void(H(this,re)[re].session=void 0);H(this,ve)[ve](xe(e))}},H(this,Te)[Te]=(e,t)=>{let s=H(this,ue)[ue].get(e);s&&(H(this,re)[re]?.off(e,s),H(this,ue)[ue].delete(e)),H(this,re)[re]?.on(e,t),H(this,ue)[ue].set(e,t)},H(this,Ae)[Ae]=async()=>{try{if(H(this,re)[re]?.session&&await(H(this,re)[re]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),H(this,re)[re]?.client){let e=H(this,re)[re].client.proposal.getAll();await Promise.allSettled(e.map((e=>H(this,re)[re]?.client.proposal.delete(e.id,{code:6e3,message:"User disconnected"}))));let t=H(this,re)[re].client.pairing.getAll();await Promise.allSettled(t.map((e=>H(this,re)[re]?.client.pairing.delete(e.topic,{code:6e3,message:"User disconnected"}))))}H(this,me)[me]()}catch(e){console.error("WalletConnectSolana: Error destroying session",e)}},H(this,We)[We]=async(e,t,s)=>{try{return await H(this,re)[re].request({method:e,params:t},s)}catch(t){if(console.error(`WalletConnectSolana: RPC Error - ${e}:`,t),t?.message?.includes("without any listeners")&&t.result)return t.result;if(t?.message?.includes("session topic does not exist in keychain"))throw Error("WalletConnectSolana: Wallet connection lost. Please reconnect.");throw t}},H(this,Ce)[Ce]=e=>{if(K&&H(this,de)[de]){let{redirect:s}=t(e,H(this,de)[de]);null==H(this,he)[he]||H(this,he)[he].call(this,{native:s,universal:s})}else null==H(this,he)[he]||H(this,he)[he].call(this,{native:e,universal:void 0})},H(this,Ee)[Ee]=()=>{H(this,me)[me]()}}}function ke(e,...t){H(this,se)[se][e]?.forEach((e=>e.apply(null,t)))}function Ue(e,t){H(this,se)[se][e]=H(this,se)[se][e]?.filter((e=>t!==e))}function xe(e){return e.namespaces.solana.accounts.reduce(((e,t)=>{let s=t.split(":").at(-1);return e.includes(s)||e.push(s),e}),[])}function Fe(e){switch(e){case"solana:mainnet":return ee;case"solana:devnet":return te;default:return e}}const Re=()=>{let{user:t}=p(),{client:i,refreshSessionAndUser:n,initializeWalletProxy:a}=h(),r=d(),o=c();return{importWallet:e((({privateKey:e,additionalSigners:l})=>s({getAccessToken:()=>i.getAccessToken(),user:t,initializeWalletProxy:a,refreshSessionAndUser:n,emitPrivyEvent:r,appConfig:o},{privateKey:e,chainType:"solana",additionalSigners:l})),[t,i,n,a,r,o])}};var Ke={id:i,getSolanaRpcClient:A,createTransactionFromRelayQuote:async function({solanaClient:e,quote:t,source:s}){let i=t.steps[0]?.items?.[0];if(!i)throw Error("Invalid quote");let n=i.data.instructions.map((({keys:e,programId:t,data:s})=>({accounts:e.map((({pubkey:e,isSigner:t,isWritable:s})=>({address:e,role:t&&s?3:t&&!s?2:!t&&s?1:0}))),programAddress:t,data:new Uint8Array(Buffer.from(s,"hex"))}))),{value:a}=await e.rpc.getLatestBlockhash().send(),r=f(g({version:0}),(e=>v({address:s},e)),(e=>m(a,e)),(e=>y(n,e)),(e=>w(e)));return new Uint8Array(b().encode(r))},simulateTransaction:T,getAddressFromBuffer:C,fetchTransactionEstimatedFees:S},qe=()=>n(Ke);var Ve={id:o,createSiwsMemoTransaction:({address:e,nonce:t})=>{let s=k({memo:r({address:j(e),nonce:t})});return f(g({version:"legacy"}),(t=>_(j(e),t)),(e=>m({blockhash:P("GfVcyD5fWFJ6hRm8bsy7CoVPsLSoJhtJKRJYk8T2VVFN"),lastValidBlockHeight:0n},e)),(e=>y([s],e)),(e=>w(e)),(e=>M.encode(Uint8Array.from(b().encode(e)))))},getSignatureFromTransaction:(e,t)=>{let s=O().decode(e).signatures[t];if(!s)throw Error(`Missing transaction signature for address: ${t}`);return M.encode(s)}},Ie=()=>n(Ve);function De(){let{create:e}=l();return{createWallet:async t=>{t&&"target"in t&&t&&(t=void 0);let{account:s}=await e({chainType:"solana",options:t});return{wallet:s}}}}function ze(){return{signMessage:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signMessage({...s,options:s.options}));return 1===e.length?t[0]:[...t]}}}function Be(){return{signTransaction:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signTransaction({...s,chain:s.chain||"solana:mainnet"}));return 1===e.length?t[0]:[...t]}}}function Je(){return{signAndSendTransaction:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signAndSendTransaction({...s,chain:s.chain||"solana:mainnet"}));return 1===e.length?t[0]:[...t]}}}export{U as SolanaAdapterConnector,q as toSolanaWalletConnectors,De as useCreateWallet,Re as useImportWallet,Je as useSignAndSendTransaction,ze as useSignMessage,Be as useSignTransaction,qe as useSolanaFundingPlugin,Ie as useSolanaLedgerPlugin};
|