@privy-io/react-auth 3.45.0 → 3.46.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/AccountNotFoundScreen-Cdv1or4I.js +2 -0
- package/dist/cjs/AccountNotFoundScreen-Cdv1or4I.js.map +1 -0
- package/dist/cjs/AddFundsSelectionScreen-DEDz-b7h.js +32 -0
- package/dist/cjs/AddFundsSelectionScreen-DEDz-b7h.js.map +1 -0
- package/dist/cjs/Address-DDxwjCoq.js +18 -0
- package/dist/cjs/Address-DDxwjCoq.js.map +1 -0
- package/dist/cjs/AffirmativeConsentScreen-8puaExRl.js +7 -0
- package/dist/cjs/AffirmativeConsentScreen-8puaExRl.js.map +1 -0
- package/dist/cjs/AllowlistRejectionScreen-C9zswxdb.js +2 -0
- package/dist/cjs/AllowlistRejectionScreen-C9zswxdb.js.map +1 -0
- package/dist/cjs/AuthenticateWithWalletScreen-ByEUnMdt.js +2 -0
- package/dist/cjs/AuthenticateWithWalletScreen-ByEUnMdt.js.map +1 -0
- package/dist/cjs/AwaitingEvmToSolBridgingScreen-jn6sldRz.js +3 -0
- package/dist/cjs/AwaitingEvmToSolBridgingScreen-jn6sldRz.js.map +1 -0
- package/dist/cjs/AwaitingExternalEthereumTransferScreen-Dv3Ewsk_.js +3 -0
- package/dist/cjs/AwaitingExternalEthereumTransferScreen-Dv3Ewsk_.js.map +1 -0
- package/dist/cjs/AwaitingPasswordlessCodeScreen-BuCmmigO.js +104 -0
- package/dist/cjs/AwaitingPasswordlessCodeScreen-BuCmmigO.js.map +1 -0
- package/dist/cjs/AwaitingSolToEvmBridgingScreen-OiLr09Zz.js +3 -0
- package/dist/cjs/AwaitingSolToEvmBridgingScreen-OiLr09Zz.js.map +1 -0
- package/dist/cjs/BridgeNetworkSelectionView-rN9mnNz_.js +69 -0
- package/dist/cjs/BridgeNetworkSelectionView-rN9mnNz_.js.map +1 -0
- package/dist/cjs/CaptchaScreen-2NR6YpRm.js +2 -0
- package/dist/cjs/CaptchaScreen-2NR6YpRm.js.map +1 -0
- package/dist/cjs/CoinbaseOnrampStatusScreen-BzVBwOzX.js +17 -0
- package/dist/cjs/CoinbaseOnrampStatusScreen-BzVBwOzX.js.map +1 -0
- package/dist/cjs/ConnectEmailForm-B3-IbX_a.js +4 -0
- package/dist/cjs/ConnectEmailForm-B3-IbX_a.js.map +1 -0
- package/dist/cjs/ConnectLedgerScreen-oTpGHqLA.js +10 -0
- package/dist/cjs/ConnectLedgerScreen-oTpGHqLA.js.map +1 -0
- package/dist/cjs/ConnectOnlyLandingScreen-Bcns-dto.js +2 -0
- package/dist/cjs/ConnectOnlyLandingScreen-Bcns-dto.js.map +1 -0
- package/dist/cjs/ConnectOnlyStatusScreen-C5GTjBet.js +2 -0
- package/dist/cjs/ConnectOnlyStatusScreen-C5GTjBet.js.map +1 -0
- package/dist/cjs/ConnectOrCreateScreen-CUaiZpqf.js +2 -0
- package/dist/cjs/ConnectOrCreateScreen-CUaiZpqf.js.map +1 -0
- package/dist/cjs/ConnectPhoneForm-CKFnPpKz.js +96 -0
- package/dist/cjs/ConnectPhoneForm-CKFnPpKz.js.map +1 -0
- package/dist/cjs/ConnectWalletView-C9e6OSDS.js +75 -0
- package/dist/cjs/ConnectWalletView-C9e6OSDS.js.map +1 -0
- package/dist/cjs/ConnectionStatusScreen-BjeRq7Ir.js +8 -0
- package/dist/cjs/ConnectionStatusScreen-BjeRq7Ir.js.map +1 -0
- package/dist/cjs/CrossAppAuthScreen-CUNUAj08.js +2 -0
- package/dist/cjs/CrossAppAuthScreen-CUNUAj08.js.map +1 -0
- package/dist/cjs/CustomLandingScreenView-DkqRDYPw.js +24 -0
- package/dist/cjs/CustomLandingScreenView-DkqRDYPw.js.map +1 -0
- package/dist/cjs/DelegatedActionsConsentScreen-BjhPLbx3.js +2 -0
- package/dist/cjs/DelegatedActionsConsentScreen-BjhPLbx3.js.map +1 -0
- package/dist/cjs/DelegatedActionsRevokeScreen-n-YGHqib.js +2 -0
- package/dist/cjs/DelegatedActionsRevokeScreen-n-YGHqib.js.map +1 -0
- package/dist/cjs/DepositAddressAddressStepView-C8tNHXbw.js +188 -0
- package/dist/cjs/DepositAddressAddressStepView-C8tNHXbw.js.map +1 -0
- package/dist/cjs/DepositAddressScreen-Dn8IIXSi.js +9 -0
- package/dist/cjs/DepositAddressScreen-Dn8IIXSi.js.map +1 -0
- package/dist/cjs/DepositAddressV3Screen-B5YZ61Vc.js +2 -0
- package/dist/cjs/DepositAddressV3Screen-B5YZ61Vc.js.map +1 -0
- package/dist/cjs/EmbeddedWalletConnectingScreen-UbbYkftr.js +2 -0
- package/dist/cjs/EmbeddedWalletConnectingScreen-UbbYkftr.js.map +1 -0
- package/dist/cjs/EmbeddedWalletCreatedScreen-B7IMmAvI.js +2 -0
- package/dist/cjs/EmbeddedWalletCreatedScreen-B7IMmAvI.js.map +1 -0
- package/dist/cjs/EmbeddedWalletKeyExportScreen-BuraRdOy.js +25 -0
- package/dist/cjs/EmbeddedWalletKeyExportScreen-BuraRdOy.js.map +1 -0
- package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-BV0NrBmo.js +2 -0
- package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-BV0NrBmo.js.map +1 -0
- package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-xxouYN8Y.js +2 -0
- package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-xxouYN8Y.js.map +1 -0
- package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-B8-rNaVx.js +2 -0
- package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-B8-rNaVx.js.map +1 -0
- package/dist/cjs/EnrollTotp-V_CBcWC2.js +64 -0
- package/dist/cjs/EnrollTotp-V_CBcWC2.js.map +1 -0
- package/dist/cjs/ErrorScreen-CVLRHHYj.js +5 -0
- package/dist/cjs/ErrorScreen-CVLRHHYj.js.map +1 -0
- package/dist/cjs/FarcasterConnectStatusScreen-BmIxsyEB.js +77 -0
- package/dist/cjs/FarcasterConnectStatusScreen-BmIxsyEB.js.map +1 -0
- package/dist/cjs/FarcasterSignerStatusScreen-CuNzhwUe.js +30 -0
- package/dist/cjs/FarcasterSignerStatusScreen-CuNzhwUe.js.map +1 -0
- package/dist/cjs/FiatOnrampScreen-BmgwkLQN.js +492 -0
- package/dist/cjs/FiatOnrampScreen-BmgwkLQN.js.map +1 -0
- package/dist/cjs/FundSolWalletWithExternalSolanaWallet-B0Wc3UTO.js +3 -0
- package/dist/cjs/FundSolWalletWithExternalSolanaWallet-B0Wc3UTO.js.map +1 -0
- package/dist/cjs/FundWalletMethodHeader-BNJW7xO2.js +2 -0
- package/dist/cjs/FundWalletMethodHeader-BNJW7xO2.js.map +1 -0
- package/dist/cjs/FundWithBankDepositScreen-DOfsjRKP.js +59 -0
- package/dist/cjs/FundWithBankDepositScreen-DOfsjRKP.js.map +1 -0
- package/dist/cjs/FundingEditAmountScreen-Cp8zfG5o.js +2 -0
- package/dist/cjs/FundingEditAmountScreen-Cp8zfG5o.js.map +1 -0
- package/dist/cjs/FundingMethodSelectionScreen-CF61Pauc.js +2 -0
- package/dist/cjs/FundingMethodSelectionScreen-CF61Pauc.js.map +1 -0
- package/dist/cjs/InAppBrowserLoginNotPossible-_xjqVqUy.js +2 -0
- package/dist/cjs/InAppBrowserLoginNotPossible-_xjqVqUy.js.map +1 -0
- package/dist/cjs/InstallWalletScreen-BVfKAyS7.js +2 -0
- package/dist/cjs/InstallWalletScreen-BVfKAyS7.js.map +1 -0
- package/dist/cjs/LandingScreen-C2o7AU3c.js +2 -0
- package/dist/cjs/LandingScreen-C2o7AU3c.js.map +1 -0
- package/dist/cjs/LinkConflictScreen-kQraH5ZI.js +78 -0
- package/dist/cjs/LinkConflictScreen-kQraH5ZI.js.map +1 -0
- package/dist/cjs/LinkEmailScreen-CjjYZf5g.js +2 -0
- package/dist/cjs/LinkEmailScreen-CjjYZf5g.js.map +1 -0
- package/dist/cjs/LinkPasskeyScreen-C59Ld9lz.js +118 -0
- package/dist/cjs/LinkPasskeyScreen-C59Ld9lz.js.map +1 -0
- package/dist/cjs/LinkPhoneScreen-C6OPMy2w.js +2 -0
- package/dist/cjs/LinkPhoneScreen-C6OPMy2w.js.map +1 -0
- package/dist/cjs/LoginFailedScreen-BhjoFYQz.js +2 -0
- package/dist/cjs/LoginFailedScreen-BhjoFYQz.js.map +1 -0
- package/dist/cjs/ManualTransferScreen-KsVJhRFs.js +2 -0
- package/dist/cjs/ManualTransferScreen-KsVJhRFs.js.map +1 -0
- package/dist/cjs/MfaAuthEnrollmentFlowScreen-BuC6dPvE.js +2 -0
- package/dist/cjs/MfaAuthEnrollmentFlowScreen-BuC6dPvE.js.map +1 -0
- package/dist/cjs/MfaAuthVerifyFlowScreen-DLTTTGIz.js +2 -0
- package/dist/cjs/MfaAuthVerifyFlowScreen-DLTTTGIz.js.map +1 -0
- package/dist/cjs/MfaEnrollmentFlowScreen-BHWGFl5V.js +2 -0
- package/dist/cjs/MfaEnrollmentFlowScreen-BHWGFl5V.js.map +1 -0
- package/dist/cjs/MfaVerifyFlowScreen-Lu8pl6BH.js +2 -0
- package/dist/cjs/MfaVerifyFlowScreen-Lu8pl6BH.js.map +1 -0
- package/dist/cjs/ModalFooter-DreY3fSU.js +40 -0
- package/dist/cjs/ModalFooter-DreY3fSU.js.map +1 -0
- package/dist/cjs/ModalHeader-C2p7hm6p.js +369 -0
- package/dist/cjs/ModalHeader-C2p7hm6p.js.map +1 -0
- package/dist/cjs/MoonpayStatusScreen-CsS_lJ0v.js +17 -0
- package/dist/cjs/MoonpayStatusScreen-CsS_lJ0v.js.map +1 -0
- package/dist/cjs/OAuthStatusScreen-D9eas2Jm.js +2 -0
- package/dist/cjs/OAuthStatusScreen-D9eas2Jm.js.map +1 -0
- package/dist/cjs/PasskeySelectSignupOrLogin-lJ3PwQ2D.js +2 -0
- package/dist/cjs/PasskeySelectSignupOrLogin-lJ3PwQ2D.js.map +1 -0
- package/dist/cjs/PasskeyStatusScreen-DYHO8C2L.js +4 -0
- package/dist/cjs/PasskeyStatusScreen-DYHO8C2L.js.map +1 -0
- package/dist/cjs/PasswordRecoveryScreen-B5-e6dOT.js +21 -0
- package/dist/cjs/PasswordRecoveryScreen-B5-e6dOT.js.map +1 -0
- package/dist/cjs/QrCode-rJHEBp9b.js +17 -0
- package/dist/cjs/QrCode-rJHEBp9b.js.map +1 -0
- package/dist/cjs/RecoveryOAuthStatusScreen-C1Sz4RFU.js +2 -0
- package/dist/cjs/RecoveryOAuthStatusScreen-C1Sz4RFU.js.map +1 -0
- package/dist/cjs/RecoveryPasswordCreateScreen-DId3TF9o.js +2 -0
- package/dist/cjs/RecoveryPasswordCreateScreen-DId3TF9o.js.map +1 -0
- package/dist/cjs/RecoverySelectionScreen-BV5gkC1o.js +8 -0
- package/dist/cjs/RecoverySelectionScreen-BV5gkC1o.js.map +1 -0
- package/dist/cjs/Screen-DdUg-jSi.js +184 -0
- package/dist/cjs/Screen-DdUg-jSi.js.map +1 -0
- package/dist/cjs/ScreenLayout--U8kJCn4.js +2 -0
- package/dist/cjs/ScreenLayout--U8kJCn4.js.map +1 -0
- package/dist/cjs/SelectSourceAsset-UMzFUttS.js +141 -0
- package/dist/cjs/SelectSourceAsset-UMzFUttS.js.map +1 -0
- package/dist/cjs/SetAutomaticRecoveryScreen-DT6n9T8C.js +15 -0
- package/dist/cjs/SetAutomaticRecoveryScreen-DT6n9T8C.js.map +1 -0
- package/dist/cjs/SetWalletPasswordForm-CVREeYd1.js +13 -0
- package/dist/cjs/SetWalletPasswordForm-CVREeYd1.js.map +1 -0
- package/dist/cjs/SignRequestScreen-7yl6API1.js +27 -0
- package/dist/cjs/SignRequestScreen-7yl6API1.js.map +1 -0
- package/dist/cjs/SkeuomorphicDebitCard-CCR6iKxh.js +150 -0
- package/dist/cjs/SkeuomorphicDebitCard-CCR6iKxh.js.map +1 -0
- package/dist/cjs/StandardSignAndSendTransactionScreen-AaMPoc7c.js +21 -0
- package/dist/cjs/StandardSignAndSendTransactionScreen-AaMPoc7c.js.map +1 -0
- package/dist/cjs/TelegramAuthScreen-DIgYvKHs.js +2 -0
- package/dist/cjs/TelegramAuthScreen-DIgYvKHs.js.map +1 -0
- package/dist/cjs/TransactionDetails-BbLQfURZ.js +112 -0
- package/dist/cjs/TransactionDetails-BbLQfURZ.js.map +1 -0
- package/dist/cjs/TransactionErrorView-D-KRoFxP.js +165 -0
- package/dist/cjs/TransactionErrorView-D-KRoFxP.js.map +1 -0
- package/dist/cjs/TransferFromWalletScreen-B_Ib9eJu.js +32 -0
- package/dist/cjs/TransferFromWalletScreen-B_Ib9eJu.js.map +1 -0
- package/dist/cjs/TransferOrBridgeLoadingScreen-9MGXVNGj.js +7 -0
- package/dist/cjs/TransferOrBridgeLoadingScreen-9MGXVNGj.js.map +1 -0
- package/dist/cjs/TurnstileWrapper-CjF-Ovo6.js +2 -0
- package/dist/cjs/TurnstileWrapper-CjF-Ovo6.js.map +1 -0
- package/dist/cjs/UpdateEmailScreen-C3ZkP4-J.js +2 -0
- package/dist/cjs/UpdateEmailScreen-C3ZkP4-J.js.map +1 -0
- package/dist/cjs/UpdatePhoneScreen-N4HFpTVO.js +2 -0
- package/dist/cjs/UpdatePhoneScreen-N4HFpTVO.js.map +1 -0
- package/dist/cjs/UserLimitReachedScreen-D0b0k1KI.js +2 -0
- package/dist/cjs/UserLimitReachedScreen-D0b0k1KI.js.map +1 -0
- package/dist/cjs/WalletInfoCard-CO0sdFSB.js +30 -0
- package/dist/cjs/WalletInfoCard-CO0sdFSB.js.map +1 -0
- package/dist/cjs/WalletInterstitialScreen-DFugV51H.js +2 -0
- package/dist/cjs/WalletInterstitialScreen-DFugV51H.js.map +1 -0
- package/dist/cjs/WalletOverflowButton-D9XCTUwU.js +2 -0
- package/dist/cjs/WalletOverflowButton-D9XCTUwU.js.map +1 -0
- package/dist/cjs/abstract-smart-wallets.js +1 -1
- package/dist/cjs/cards.js +175 -323
- package/dist/cjs/cards.js.map +1 -1
- package/dist/cjs/extended-chains.js +1 -1
- package/dist/cjs/get-entropy-details-for-user-B19oP-d0.js +2 -0
- package/dist/cjs/get-entropy-details-for-user-B19oP-d0.js.map +1 -0
- package/dist/cjs/index-CCeaWPBC.js +13 -0
- package/dist/cjs/index-CCeaWPBC.js.map +1 -0
- package/dist/cjs/index-D41AXA9-.js +34 -0
- package/dist/cjs/index-D41AXA9-.js.map +1 -0
- package/dist/cjs/index-DTco7dAO.js +2 -0
- package/dist/cjs/index-DTco7dAO.js.map +1 -0
- package/dist/cjs/index-Dn52pA44.js +2 -0
- package/dist/cjs/index-Dn52pA44.js.map +1 -0
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/internal.js +1 -1
- package/dist/cjs/internal.js.map +1 -1
- package/dist/cjs/modal-context-D9ww3KeW.js +2 -0
- package/dist/cjs/modal-context-D9ww3KeW.js.map +1 -0
- package/dist/cjs/pkce-Cv2aN63v.js +2 -0
- package/dist/cjs/pkce-Cv2aN63v.js.map +1 -0
- package/dist/cjs/privy-context-BHGd9Pcc.js +2 -0
- package/dist/cjs/privy-context-BHGd9Pcc.js.map +1 -0
- package/dist/cjs/shared-DVbMbBbU.js +194 -0
- package/dist/cjs/shared-DVbMbBbU.js.map +1 -0
- package/dist/cjs/shouldProceedtoEmbeddedWalletCreationFlow-DnWtXMuM.js +2 -0
- package/dist/cjs/shouldProceedtoEmbeddedWalletCreationFlow-DnWtXMuM.js.map +1 -0
- package/dist/cjs/simulateTransaction-uv8PkCiC.js +2 -0
- package/dist/cjs/simulateTransaction-uv8PkCiC.js.map +1 -0
- package/dist/cjs/smart-wallets-s_0ze0--.js +2 -0
- package/dist/cjs/smart-wallets-s_0ze0--.js.map +1 -0
- package/dist/cjs/smart-wallets.js +1 -1
- package/dist/cjs/solana.js +1 -1
- package/dist/cjs/solana.js.map +1 -1
- package/dist/cjs/styles-B7G_bSfU.js +165 -0
- package/dist/cjs/styles-B7G_bSfU.js.map +1 -0
- package/dist/cjs/styles-DYjSZWKU.js +93 -0
- package/dist/cjs/styles-DYjSZWKU.js.map +1 -0
- package/dist/cjs/tempo.js +1 -1
- package/dist/cjs/to-ui-error-CDMZjmNz.js +5 -0
- package/dist/cjs/to-ui-error-CDMZjmNz.js.map +1 -0
- package/dist/cjs/toViemAccount-BMmRBSj1.js +2 -0
- package/dist/cjs/toViemAccount-BMmRBSj1.js.map +1 -0
- package/dist/cjs/ui.js +1 -1
- package/dist/cjs/use-export-wallet-qmhrR95e.js +2 -0
- package/dist/cjs/use-export-wallet-qmhrR95e.js.map +1 -0
- package/dist/cjs/use-headless-crypto-deposit-Q6Aqz8Ce.js +2 -0
- package/dist/cjs/use-headless-crypto-deposit-Q6Aqz8Ce.js.map +1 -0
- package/dist/cjs/use-sign-with-user-signer-jOEdOO6s.js +2 -0
- package/dist/cjs/use-sign-with-user-signer-jOEdOO6s.js.map +1 -0
- package/dist/cjs/use-unlink-wallet-CHCAcxpm.js +2 -0
- package/dist/cjs/use-unlink-wallet-CHCAcxpm.js.map +1 -0
- package/dist/cjs/useActiveWallet-CcNx5TN1.js +124 -0
- package/dist/cjs/useActiveWallet-CcNx5TN1.js.map +1 -0
- package/dist/cjs/useGetTokenPrice-ZhUXnAIF.js +2 -0
- package/dist/cjs/useGetTokenPrice-ZhUXnAIF.js.map +1 -0
- package/dist/cjs/useI18n-DW79JyuB.js +2 -0
- package/dist/cjs/useI18n-DW79JyuB.js.map +1 -0
- package/dist/cjs/useSendTransaction-7lEhU_b9.js +402 -0
- package/dist/cjs/useSendTransaction-7lEhU_b9.js.map +1 -0
- package/dist/cjs/useWallets-D_kjuXrC.js +2 -0
- package/dist/cjs/useWallets-D_kjuXrC.js.map +1 -0
- package/dist/cjs/wallet-connect-CpoK066O.js +2 -0
- package/dist/cjs/wallet-connect-CpoK066O.js.map +1 -0
- package/dist/dts/events-context-8NMDpHyB.d.mts +329 -0
- package/dist/dts/events-context-8NMDpHyB.d.ts +329 -0
- package/dist/dts/extended-chains.d.mts +1 -1
- package/dist/dts/extended-chains.d.ts +1 -1
- package/dist/dts/farcaster.d.mts +1 -1
- package/dist/dts/farcaster.d.ts +1 -1
- package/dist/dts/importWallet-BtAIPo9T.d.mts +12 -0
- package/dist/dts/importWallet-BtAIPo9T.d.ts +12 -0
- package/dist/dts/index.d.mts +66 -17
- package/dist/dts/index.d.ts +66 -17
- package/dist/dts/internal.d.mts +35 -58
- package/dist/dts/internal.d.ts +35 -58
- package/dist/dts/smart-wallets.d.mts +1 -1
- package/dist/dts/smart-wallets.d.ts +1 -1
- package/dist/dts/solana.d.mts +9 -9
- package/dist/dts/solana.d.ts +9 -9
- package/dist/dts/tempo.d.mts +2 -2
- package/dist/dts/tempo.d.ts +2 -2
- package/dist/dts/toViemAccount-CdN0LUdU.d.mts +27 -0
- package/dist/dts/toViemAccount-CdN0LUdU.d.ts +27 -0
- package/dist/dts/types-BOEI6Njl.d.mts +2663 -0
- package/dist/dts/types-BOEI6Njl.d.ts +2663 -0
- package/dist/dts/ui.d.mts +3 -3
- package/dist/dts/ui.d.ts +3 -3
- package/dist/dts/use-headless-crypto-deposit-cP98WxrY.d.mts +130 -0
- package/dist/dts/use-headless-crypto-deposit-cP98WxrY.d.ts +130 -0
- package/dist/dts/useUpdateAccount-BTh9ARX-.d.mts +27 -0
- package/dist/dts/useUpdateAccount-BTh9ARX-.d.ts +27 -0
- package/dist/esm/AccountNotFoundScreen-Bl7Hmtmi.mjs +2 -0
- package/dist/esm/AccountNotFoundScreen-Bl7Hmtmi.mjs.map +1 -0
- package/dist/esm/AddFundsSelectionScreen-Dv-FI_xa.mjs +32 -0
- package/dist/esm/AddFundsSelectionScreen-Dv-FI_xa.mjs.map +1 -0
- package/dist/esm/Address-BixyKRn-.mjs +18 -0
- package/dist/esm/Address-BixyKRn-.mjs.map +1 -0
- package/dist/esm/AffirmativeConsentScreen-bHaPFxOO.mjs +7 -0
- package/dist/esm/AffirmativeConsentScreen-bHaPFxOO.mjs.map +1 -0
- package/dist/esm/AllowlistRejectionScreen-C7xFw_Vl.mjs +2 -0
- package/dist/esm/AllowlistRejectionScreen-C7xFw_Vl.mjs.map +1 -0
- package/dist/esm/AuthenticateWithWalletScreen-BCTIBWcL.mjs +2 -0
- package/dist/esm/AuthenticateWithWalletScreen-BCTIBWcL.mjs.map +1 -0
- package/dist/esm/AwaitingEvmToSolBridgingScreen-Dgoqd0cm.mjs +3 -0
- package/dist/esm/AwaitingEvmToSolBridgingScreen-Dgoqd0cm.mjs.map +1 -0
- package/dist/esm/AwaitingExternalEthereumTransferScreen-FEDd_gmh.mjs +3 -0
- package/dist/esm/AwaitingExternalEthereumTransferScreen-FEDd_gmh.mjs.map +1 -0
- package/dist/esm/AwaitingPasswordlessCodeScreen-DE3s5Nt7.mjs +104 -0
- package/dist/esm/AwaitingPasswordlessCodeScreen-DE3s5Nt7.mjs.map +1 -0
- package/dist/esm/AwaitingSolToEvmBridgingScreen-Glj6MyNv.mjs +3 -0
- package/dist/esm/AwaitingSolToEvmBridgingScreen-Glj6MyNv.mjs.map +1 -0
- package/dist/esm/BridgeNetworkSelectionView-BT7FmIVL.mjs +69 -0
- package/dist/esm/BridgeNetworkSelectionView-BT7FmIVL.mjs.map +1 -0
- package/dist/esm/CaptchaScreen-CNJxFcLz.mjs +2 -0
- package/dist/esm/CaptchaScreen-CNJxFcLz.mjs.map +1 -0
- package/dist/esm/CoinbaseOnrampStatusScreen-DnjOb61Q.mjs +17 -0
- package/dist/esm/CoinbaseOnrampStatusScreen-DnjOb61Q.mjs.map +1 -0
- package/dist/esm/ConnectEmailForm-CUkOCTYn.mjs +4 -0
- package/dist/esm/ConnectEmailForm-CUkOCTYn.mjs.map +1 -0
- package/dist/esm/ConnectLedgerScreen-gJIU_F29.mjs +10 -0
- package/dist/esm/ConnectLedgerScreen-gJIU_F29.mjs.map +1 -0
- package/dist/esm/ConnectOnlyLandingScreen-Db6J_saO.mjs +2 -0
- package/dist/esm/ConnectOnlyLandingScreen-Db6J_saO.mjs.map +1 -0
- package/dist/esm/ConnectOnlyStatusScreen-enc3HgPj.mjs +2 -0
- package/dist/esm/ConnectOnlyStatusScreen-enc3HgPj.mjs.map +1 -0
- package/dist/esm/ConnectOrCreateScreen-jwVhg2Mi.mjs +2 -0
- package/dist/esm/ConnectOrCreateScreen-jwVhg2Mi.mjs.map +1 -0
- package/dist/esm/ConnectPhoneForm-CdFyx21O.mjs +96 -0
- package/dist/esm/ConnectPhoneForm-CdFyx21O.mjs.map +1 -0
- package/dist/esm/ConnectWalletView-CpX2XxBj.mjs +75 -0
- package/dist/esm/ConnectWalletView-CpX2XxBj.mjs.map +1 -0
- package/dist/esm/ConnectionStatusScreen-D2Y-wqNP.mjs +8 -0
- package/dist/esm/ConnectionStatusScreen-D2Y-wqNP.mjs.map +1 -0
- package/dist/esm/CrossAppAuthScreen-BOti_c-6.mjs +2 -0
- package/dist/esm/CrossAppAuthScreen-BOti_c-6.mjs.map +1 -0
- package/dist/esm/CustomLandingScreenView-BQlpHCMq.mjs +24 -0
- package/dist/esm/CustomLandingScreenView-BQlpHCMq.mjs.map +1 -0
- package/dist/esm/DelegatedActionsConsentScreen-BwtldL1j.mjs +2 -0
- package/dist/esm/DelegatedActionsConsentScreen-BwtldL1j.mjs.map +1 -0
- package/dist/esm/DelegatedActionsRevokeScreen-CbprmWNC.mjs +2 -0
- package/dist/esm/DelegatedActionsRevokeScreen-CbprmWNC.mjs.map +1 -0
- package/dist/esm/DepositAddressAddressStepView-SDIe09Bn.mjs +188 -0
- package/dist/esm/DepositAddressAddressStepView-SDIe09Bn.mjs.map +1 -0
- package/dist/esm/DepositAddressScreen-CrFlyPED.mjs +9 -0
- package/dist/esm/DepositAddressScreen-CrFlyPED.mjs.map +1 -0
- package/dist/esm/DepositAddressV3Screen-CeWE2__6.mjs +2 -0
- package/dist/esm/DepositAddressV3Screen-CeWE2__6.mjs.map +1 -0
- package/dist/esm/EmbeddedWalletConnectingScreen-BFVZ0NW9.mjs +2 -0
- package/dist/esm/EmbeddedWalletConnectingScreen-BFVZ0NW9.mjs.map +1 -0
- package/dist/esm/EmbeddedWalletCreatedScreen-Dte9vWYq.mjs +2 -0
- package/dist/esm/EmbeddedWalletCreatedScreen-Dte9vWYq.mjs.map +1 -0
- package/dist/esm/EmbeddedWalletKeyExportScreen-DC2p1NXt.mjs +25 -0
- package/dist/esm/EmbeddedWalletKeyExportScreen-DC2p1NXt.mjs.map +1 -0
- package/dist/esm/EmbeddedWalletOnAccountCreateScreen-XmgkcseA.mjs +2 -0
- package/dist/esm/EmbeddedWalletOnAccountCreateScreen-XmgkcseA.mjs.map +1 -0
- package/dist/esm/EmbeddedWalletPasswordUpdateScreen-DayUjdiv.mjs +2 -0
- package/dist/esm/EmbeddedWalletPasswordUpdateScreen-DayUjdiv.mjs.map +1 -0
- package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-CgBjf0CX.mjs +2 -0
- package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-CgBjf0CX.mjs.map +1 -0
- package/dist/esm/EnrollTotp-B7ypDnV-.mjs +64 -0
- package/dist/esm/EnrollTotp-B7ypDnV-.mjs.map +1 -0
- package/dist/esm/ErrorScreen-CL8ZLhI9.mjs +5 -0
- package/dist/esm/ErrorScreen-CL8ZLhI9.mjs.map +1 -0
- package/dist/esm/FarcasterConnectStatusScreen-e66gOAYv.mjs +76 -0
- package/dist/esm/FarcasterConnectStatusScreen-e66gOAYv.mjs.map +1 -0
- package/dist/esm/FarcasterSignerStatusScreen-WvxEu5GK.mjs +29 -0
- package/dist/esm/FarcasterSignerStatusScreen-WvxEu5GK.mjs.map +1 -0
- package/dist/esm/FiatOnrampScreen-CJlu_7aM.mjs +492 -0
- package/dist/esm/FiatOnrampScreen-CJlu_7aM.mjs.map +1 -0
- package/dist/esm/FundSolWalletWithExternalSolanaWallet-DEnsCMpK.mjs +2 -0
- package/dist/esm/FundSolWalletWithExternalSolanaWallet-DEnsCMpK.mjs.map +1 -0
- package/dist/esm/FundWalletMethodHeader-BMDSDlJZ.mjs +2 -0
- package/dist/esm/FundWalletMethodHeader-BMDSDlJZ.mjs.map +1 -0
- package/dist/esm/FundWithBankDepositScreen-DAevsgLt.mjs +59 -0
- package/dist/esm/FundWithBankDepositScreen-DAevsgLt.mjs.map +1 -0
- package/dist/esm/FundingEditAmountScreen-BUfO3FjN.mjs +2 -0
- package/dist/esm/FundingEditAmountScreen-BUfO3FjN.mjs.map +1 -0
- package/dist/esm/FundingMethodSelectionScreen-B-RbfqEp.mjs +2 -0
- package/dist/esm/FundingMethodSelectionScreen-B-RbfqEp.mjs.map +1 -0
- package/dist/esm/InAppBrowserLoginNotPossible-CLAeLqyR.mjs +2 -0
- package/dist/esm/InAppBrowserLoginNotPossible-CLAeLqyR.mjs.map +1 -0
- package/dist/esm/InstallWalletScreen-Ce0LaKGA.mjs +2 -0
- package/dist/esm/InstallWalletScreen-Ce0LaKGA.mjs.map +1 -0
- package/dist/esm/LandingScreen-C_YGcJ_f.mjs +2 -0
- package/dist/esm/LandingScreen-C_YGcJ_f.mjs.map +1 -0
- package/dist/esm/LinkConflictScreen-BEyeIbc-.mjs +78 -0
- package/dist/esm/LinkConflictScreen-BEyeIbc-.mjs.map +1 -0
- package/dist/esm/LinkEmailScreen-pr3JS6H3.mjs +2 -0
- package/dist/esm/LinkEmailScreen-pr3JS6H3.mjs.map +1 -0
- package/dist/esm/LinkPasskeyScreen-C-l57_F6.mjs +118 -0
- package/dist/esm/LinkPasskeyScreen-C-l57_F6.mjs.map +1 -0
- package/dist/esm/LinkPhoneScreen-C6An6j1b.mjs +2 -0
- package/dist/esm/LinkPhoneScreen-C6An6j1b.mjs.map +1 -0
- package/dist/esm/LoginFailedScreen-35qCQfO7.mjs +2 -0
- package/dist/esm/LoginFailedScreen-35qCQfO7.mjs.map +1 -0
- package/dist/esm/ManualTransferScreen-B2q8dg2f.mjs +2 -0
- package/dist/esm/ManualTransferScreen-B2q8dg2f.mjs.map +1 -0
- package/dist/esm/MfaAuthEnrollmentFlowScreen-BvpXuxB_.mjs +2 -0
- package/dist/esm/MfaAuthEnrollmentFlowScreen-BvpXuxB_.mjs.map +1 -0
- package/dist/esm/MfaAuthVerifyFlowScreen-DPjZyHwa.mjs +2 -0
- package/dist/esm/MfaAuthVerifyFlowScreen-DPjZyHwa.mjs.map +1 -0
- package/dist/esm/MfaEnrollmentFlowScreen-DPgKMnqU.mjs +2 -0
- package/dist/esm/MfaEnrollmentFlowScreen-DPgKMnqU.mjs.map +1 -0
- package/dist/esm/MfaVerifyFlowScreen-CKTjuf1S.mjs +2 -0
- package/dist/esm/MfaVerifyFlowScreen-CKTjuf1S.mjs.map +1 -0
- package/dist/esm/ModalFooter-CZAG7cZB.mjs +40 -0
- package/dist/esm/ModalFooter-CZAG7cZB.mjs.map +1 -0
- package/dist/esm/ModalHeader-yqv_2VJU.mjs +369 -0
- package/dist/esm/ModalHeader-yqv_2VJU.mjs.map +1 -0
- package/dist/esm/MoonpayStatusScreen-wMKsjZeB.mjs +17 -0
- package/dist/esm/MoonpayStatusScreen-wMKsjZeB.mjs.map +1 -0
- package/dist/esm/OAuthStatusScreen-CdfCy4f8.mjs +2 -0
- package/dist/esm/OAuthStatusScreen-CdfCy4f8.mjs.map +1 -0
- package/dist/esm/PasskeySelectSignupOrLogin-D0holwQw.mjs +2 -0
- package/dist/esm/PasskeySelectSignupOrLogin-D0holwQw.mjs.map +1 -0
- package/dist/esm/PasskeyStatusScreen-DivnXZ9b.mjs +4 -0
- package/dist/esm/PasskeyStatusScreen-DivnXZ9b.mjs.map +1 -0
- package/dist/esm/PasswordRecoveryScreen-CEKYNkfv.mjs +21 -0
- package/dist/esm/PasswordRecoveryScreen-CEKYNkfv.mjs.map +1 -0
- package/dist/esm/QrCode-BhHtTQ2f.mjs +17 -0
- package/dist/esm/QrCode-BhHtTQ2f.mjs.map +1 -0
- package/dist/esm/RecoveryOAuthStatusScreen-qCund5Bo.mjs +2 -0
- package/dist/esm/RecoveryOAuthStatusScreen-qCund5Bo.mjs.map +1 -0
- package/dist/esm/RecoveryPasswordCreateScreen-CZtg0Yg0.mjs +2 -0
- package/dist/esm/RecoveryPasswordCreateScreen-CZtg0Yg0.mjs.map +1 -0
- package/dist/esm/RecoverySelectionScreen-DtS8Li1j.mjs +8 -0
- package/dist/esm/RecoverySelectionScreen-DtS8Li1j.mjs.map +1 -0
- package/dist/esm/Screen-B-Xa5qdH.mjs +183 -0
- package/dist/esm/Screen-B-Xa5qdH.mjs.map +1 -0
- package/dist/esm/ScreenLayout-CN3EM1pv.mjs +2 -0
- package/dist/esm/ScreenLayout-CN3EM1pv.mjs.map +1 -0
- package/dist/esm/SelectSourceAsset-BqUnsZDv.mjs +141 -0
- package/dist/esm/SelectSourceAsset-BqUnsZDv.mjs.map +1 -0
- package/dist/esm/SetAutomaticRecoveryScreen-CeOfjTFf.mjs +15 -0
- package/dist/esm/SetAutomaticRecoveryScreen-CeOfjTFf.mjs.map +1 -0
- package/dist/esm/SetWalletPasswordForm-C16M7epz.mjs +13 -0
- package/dist/esm/SetWalletPasswordForm-C16M7epz.mjs.map +1 -0
- package/dist/esm/SignRequestScreen-CDQDlvYS.mjs +27 -0
- package/dist/esm/SignRequestScreen-CDQDlvYS.mjs.map +1 -0
- package/dist/esm/SkeuomorphicDebitCard-DwVpD2QT.mjs +150 -0
- package/dist/esm/SkeuomorphicDebitCard-DwVpD2QT.mjs.map +1 -0
- package/dist/esm/StandardSignAndSendTransactionScreen-CZu-Rkry.mjs +21 -0
- package/dist/esm/StandardSignAndSendTransactionScreen-CZu-Rkry.mjs.map +1 -0
- package/dist/esm/TelegramAuthScreen-KbisIsL4.mjs +2 -0
- package/dist/esm/TelegramAuthScreen-KbisIsL4.mjs.map +1 -0
- package/dist/esm/TransactionDetails-jfoGWugX.mjs +112 -0
- package/dist/esm/TransactionDetails-jfoGWugX.mjs.map +1 -0
- package/dist/esm/TransactionErrorView-DX3dHGI7.mjs +165 -0
- package/dist/esm/TransactionErrorView-DX3dHGI7.mjs.map +1 -0
- package/dist/esm/TransferFromWalletScreen-BxLRlFlO.mjs +32 -0
- package/dist/esm/TransferFromWalletScreen-BxLRlFlO.mjs.map +1 -0
- package/dist/esm/TransferOrBridgeLoadingScreen-Bw52KuJZ.mjs +7 -0
- package/dist/esm/TransferOrBridgeLoadingScreen-Bw52KuJZ.mjs.map +1 -0
- package/dist/esm/TurnstileWrapper-0Q_xQUx_.mjs +2 -0
- package/dist/esm/TurnstileWrapper-0Q_xQUx_.mjs.map +1 -0
- package/dist/esm/UpdateEmailScreen-B2sBFxiH.mjs +2 -0
- package/dist/esm/UpdateEmailScreen-B2sBFxiH.mjs.map +1 -0
- package/dist/esm/UpdatePhoneScreen-C0NURgVx.mjs +2 -0
- package/dist/esm/UpdatePhoneScreen-C0NURgVx.mjs.map +1 -0
- package/dist/esm/UserLimitReachedScreen-BhEvchBo.mjs +2 -0
- package/dist/esm/UserLimitReachedScreen-BhEvchBo.mjs.map +1 -0
- package/dist/esm/WalletInfoCard-CfOo8I1N.mjs +30 -0
- package/dist/esm/WalletInfoCard-CfOo8I1N.mjs.map +1 -0
- package/dist/esm/WalletInterstitialScreen-CyS0BkG_.mjs +2 -0
- package/dist/esm/WalletInterstitialScreen-CyS0BkG_.mjs.map +1 -0
- package/dist/esm/WalletOverflowButton-D1jd_CRf.mjs +2 -0
- package/dist/esm/WalletOverflowButton-D1jd_CRf.mjs.map +1 -0
- package/dist/esm/abstract-smart-wallets.mjs +1 -1
- package/dist/esm/cards.mjs +175 -323
- package/dist/esm/cards.mjs.map +1 -1
- package/dist/esm/extended-chains.mjs +1 -1
- package/dist/esm/get-entropy-details-for-user-NQEot7NZ.mjs +2 -0
- package/dist/esm/get-entropy-details-for-user-NQEot7NZ.mjs.map +1 -0
- package/dist/esm/index-1-pMvnvM.mjs +13 -0
- package/dist/esm/index-1-pMvnvM.mjs.map +1 -0
- package/dist/esm/index-B4kpRHEf.mjs +2 -0
- package/dist/esm/index-B4kpRHEf.mjs.map +1 -0
- package/dist/esm/index-BRVzclkp.mjs +34 -0
- package/dist/esm/index-BRVzclkp.mjs.map +1 -0
- package/dist/esm/index-SQDAZoUX.mjs +2 -0
- package/dist/esm/index-SQDAZoUX.mjs.map +1 -0
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/internal.mjs +1 -1
- package/dist/esm/internal.mjs.map +1 -1
- package/dist/esm/modal-context-2FwelYaK.mjs +2 -0
- package/dist/esm/modal-context-2FwelYaK.mjs.map +1 -0
- package/dist/esm/pkce-DSTNYh_L.mjs +2 -0
- package/dist/esm/pkce-DSTNYh_L.mjs.map +1 -0
- package/dist/esm/privy-context-CoPB1sug.mjs +2 -0
- package/dist/esm/privy-context-CoPB1sug.mjs.map +1 -0
- package/dist/esm/shared-CFpRR5BN.mjs +194 -0
- package/dist/esm/shared-CFpRR5BN.mjs.map +1 -0
- package/dist/esm/shouldProceedtoEmbeddedWalletCreationFlow-BFMDA-dt.mjs +2 -0
- package/dist/esm/shouldProceedtoEmbeddedWalletCreationFlow-BFMDA-dt.mjs.map +1 -0
- package/dist/esm/simulateTransaction-CJe0jK0c.mjs +2 -0
- package/dist/esm/simulateTransaction-CJe0jK0c.mjs.map +1 -0
- package/dist/esm/smart-wallets-BkyniPfF.mjs +2 -0
- package/dist/esm/smart-wallets-BkyniPfF.mjs.map +1 -0
- package/dist/esm/smart-wallets.mjs +1 -1
- package/dist/esm/solana.mjs +1 -1
- package/dist/esm/solana.mjs.map +1 -1
- package/dist/esm/styles-BOmo87-2.mjs +165 -0
- package/dist/esm/styles-BOmo87-2.mjs.map +1 -0
- package/dist/esm/styles-BgIvZc4O.mjs +93 -0
- package/dist/esm/styles-BgIvZc4O.mjs.map +1 -0
- package/dist/esm/tempo.mjs +1 -1
- package/dist/esm/to-ui-error-B_jBEdLF.mjs +5 -0
- package/dist/esm/to-ui-error-B_jBEdLF.mjs.map +1 -0
- package/dist/esm/toViemAccount-moo9TJem.mjs +2 -0
- package/dist/esm/toViemAccount-moo9TJem.mjs.map +1 -0
- package/dist/esm/ui.mjs +1 -1
- package/dist/esm/use-export-wallet-Cv9NoC5i.mjs +2 -0
- package/dist/esm/use-export-wallet-Cv9NoC5i.mjs.map +1 -0
- package/dist/esm/use-headless-crypto-deposit-KWcTJ4P6.mjs +2 -0
- package/dist/esm/use-headless-crypto-deposit-KWcTJ4P6.mjs.map +1 -0
- package/dist/esm/use-sign-with-user-signer-_10G_Z_r.mjs +2 -0
- package/dist/esm/use-sign-with-user-signer-_10G_Z_r.mjs.map +1 -0
- package/dist/esm/use-unlink-wallet-GnCx4meh.mjs +2 -0
- package/dist/esm/use-unlink-wallet-GnCx4meh.mjs.map +1 -0
- package/dist/esm/useActiveWallet-DFpBTXK1.mjs +124 -0
- package/dist/esm/useActiveWallet-DFpBTXK1.mjs.map +1 -0
- package/dist/esm/useGetTokenPrice--krActTS.mjs +2 -0
- package/dist/esm/useGetTokenPrice--krActTS.mjs.map +1 -0
- package/dist/esm/useI18n-BJAxDCw5.mjs +2 -0
- package/dist/esm/useI18n-BJAxDCw5.mjs.map +1 -0
- package/dist/esm/useSendTransaction-CldMjlhn.mjs +402 -0
- package/dist/esm/useSendTransaction-CldMjlhn.mjs.map +1 -0
- package/dist/esm/useWallets-cUJf3hxZ.mjs +2 -0
- package/dist/esm/useWallets-cUJf3hxZ.mjs.map +1 -0
- package/dist/esm/wallet-connect-DwpBuAcu.mjs +2 -0
- package/dist/esm/wallet-connect-DwpBuAcu.mjs.map +1 -0
- package/package.json +5 -5
- package/dist/cjs/AccountNotFoundScreen-C4c5sc5v.js +0 -2
- package/dist/cjs/AccountNotFoundScreen-C4c5sc5v.js.map +0 -1
- package/dist/cjs/AddFundsSelectionScreen-DDEKp5uW.js +0 -32
- package/dist/cjs/AddFundsSelectionScreen-DDEKp5uW.js.map +0 -1
- package/dist/cjs/Address-CU1Rszk-.js +0 -18
- package/dist/cjs/Address-CU1Rszk-.js.map +0 -1
- package/dist/cjs/AffirmativeConsentScreen-QBQqZUoo.js +0 -7
- package/dist/cjs/AffirmativeConsentScreen-QBQqZUoo.js.map +0 -1
- package/dist/cjs/AllowlistRejectionScreen-CKbv4_q-.js +0 -2
- package/dist/cjs/AllowlistRejectionScreen-CKbv4_q-.js.map +0 -1
- package/dist/cjs/AuthenticateWithWalletScreen-BkiUT2ra.js +0 -2
- package/dist/cjs/AuthenticateWithWalletScreen-BkiUT2ra.js.map +0 -1
- package/dist/cjs/AwaitingEvmToSolBridgingScreen-B76syy-q.js +0 -3
- package/dist/cjs/AwaitingEvmToSolBridgingScreen-B76syy-q.js.map +0 -1
- package/dist/cjs/AwaitingExternalEthereumTransferScreen-D1l5Ke_O.js +0 -3
- package/dist/cjs/AwaitingExternalEthereumTransferScreen-D1l5Ke_O.js.map +0 -1
- package/dist/cjs/AwaitingPasswordlessCodeScreen-Czwx39tL.js +0 -104
- package/dist/cjs/AwaitingPasswordlessCodeScreen-Czwx39tL.js.map +0 -1
- package/dist/cjs/AwaitingSolToEvmBridgingScreen-DEQvLQ8Z.js +0 -3
- package/dist/cjs/AwaitingSolToEvmBridgingScreen-DEQvLQ8Z.js.map +0 -1
- package/dist/cjs/BridgeNetworkSelectionView--3PpwxDG.js +0 -69
- package/dist/cjs/BridgeNetworkSelectionView--3PpwxDG.js.map +0 -1
- package/dist/cjs/CaptchaScreen-2k4CKM4-.js +0 -2
- package/dist/cjs/CaptchaScreen-2k4CKM4-.js.map +0 -1
- package/dist/cjs/CoinbaseOnrampStatusScreen-u1w0oDeW.js +0 -17
- package/dist/cjs/CoinbaseOnrampStatusScreen-u1w0oDeW.js.map +0 -1
- package/dist/cjs/ConnectEmailForm-Bu-hpU9d.js +0 -4
- package/dist/cjs/ConnectEmailForm-Bu-hpU9d.js.map +0 -1
- package/dist/cjs/ConnectLedgerScreen-ahtT1Jbe.js +0 -10
- package/dist/cjs/ConnectLedgerScreen-ahtT1Jbe.js.map +0 -1
- package/dist/cjs/ConnectOnlyLandingScreen-Ck9JTyVY.js +0 -2
- package/dist/cjs/ConnectOnlyLandingScreen-Ck9JTyVY.js.map +0 -1
- package/dist/cjs/ConnectOnlyStatusScreen-CR_1yHOV.js +0 -2
- package/dist/cjs/ConnectOnlyStatusScreen-CR_1yHOV.js.map +0 -1
- package/dist/cjs/ConnectOrCreateScreen-tzCzEfJM.js +0 -2
- package/dist/cjs/ConnectOrCreateScreen-tzCzEfJM.js.map +0 -1
- package/dist/cjs/ConnectPhoneForm-CUUD8F2h.js +0 -96
- package/dist/cjs/ConnectPhoneForm-CUUD8F2h.js.map +0 -1
- package/dist/cjs/ConnectWalletView-vp7TvY-P.js +0 -75
- package/dist/cjs/ConnectWalletView-vp7TvY-P.js.map +0 -1
- package/dist/cjs/ConnectionStatusScreen-CKy1qLtw.js +0 -8
- package/dist/cjs/ConnectionStatusScreen-CKy1qLtw.js.map +0 -1
- package/dist/cjs/CrossAppAuthScreen-BvuglP-U.js +0 -2
- package/dist/cjs/CrossAppAuthScreen-BvuglP-U.js.map +0 -1
- package/dist/cjs/CustomLandingScreenView-Bcl1G1aq.js +0 -24
- package/dist/cjs/CustomLandingScreenView-Bcl1G1aq.js.map +0 -1
- package/dist/cjs/DelegatedActionsConsentScreen-BtUGN2vA.js +0 -2
- package/dist/cjs/DelegatedActionsConsentScreen-BtUGN2vA.js.map +0 -1
- package/dist/cjs/DelegatedActionsRevokeScreen-KMGCZmLe.js +0 -2
- package/dist/cjs/DelegatedActionsRevokeScreen-KMGCZmLe.js.map +0 -1
- package/dist/cjs/DepositAddressAddressStepView-C_rvb6W0.js +0 -188
- package/dist/cjs/DepositAddressAddressStepView-C_rvb6W0.js.map +0 -1
- package/dist/cjs/DepositAddressScreen-BUIkTIpd.js +0 -9
- package/dist/cjs/DepositAddressScreen-BUIkTIpd.js.map +0 -1
- package/dist/cjs/DepositAddressV3Screen-Bzu5XdX_.js +0 -2
- package/dist/cjs/DepositAddressV3Screen-Bzu5XdX_.js.map +0 -1
- package/dist/cjs/EmbeddedWalletConnectingScreen-CNKdFjEm.js +0 -2
- package/dist/cjs/EmbeddedWalletConnectingScreen-CNKdFjEm.js.map +0 -1
- package/dist/cjs/EmbeddedWalletCreatedScreen-Bfd37Pl7.js +0 -2
- package/dist/cjs/EmbeddedWalletCreatedScreen-Bfd37Pl7.js.map +0 -1
- package/dist/cjs/EmbeddedWalletKeyExportScreen-BfLWGHFD.js +0 -25
- package/dist/cjs/EmbeddedWalletKeyExportScreen-BfLWGHFD.js.map +0 -1
- package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-n7rwuWSd.js +0 -2
- package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-n7rwuWSd.js.map +0 -1
- package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-Djet6Ho8.js +0 -2
- package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-Djet6Ho8.js.map +0 -1
- package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-CH8cExdC.js +0 -2
- package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-CH8cExdC.js.map +0 -1
- package/dist/cjs/EnrollTotp-DRZgTaU3.js +0 -64
- package/dist/cjs/EnrollTotp-DRZgTaU3.js.map +0 -1
- package/dist/cjs/ErrorScreen-BLUjzV9m.js +0 -5
- package/dist/cjs/ErrorScreen-BLUjzV9m.js.map +0 -1
- package/dist/cjs/FarcasterConnectStatusScreen-Bwq450aj.js +0 -77
- package/dist/cjs/FarcasterConnectStatusScreen-Bwq450aj.js.map +0 -1
- package/dist/cjs/FarcasterSignerStatusScreen-DefyYBMW.js +0 -30
- package/dist/cjs/FarcasterSignerStatusScreen-DefyYBMW.js.map +0 -1
- package/dist/cjs/FiatOnrampScreen-DgEBMhs8.js +0 -492
- package/dist/cjs/FiatOnrampScreen-DgEBMhs8.js.map +0 -1
- package/dist/cjs/FundSolWalletWithExternalSolanaWallet-Bi0qxkQj.js +0 -3
- package/dist/cjs/FundSolWalletWithExternalSolanaWallet-Bi0qxkQj.js.map +0 -1
- package/dist/cjs/FundWalletMethodHeader-DmGjE6Vr.js +0 -2
- package/dist/cjs/FundWalletMethodHeader-DmGjE6Vr.js.map +0 -1
- package/dist/cjs/FundWithBankDepositScreen-Cmm_28O2.js +0 -59
- package/dist/cjs/FundWithBankDepositScreen-Cmm_28O2.js.map +0 -1
- package/dist/cjs/FundingEditAmountScreen-CqP8malW.js +0 -2
- package/dist/cjs/FundingEditAmountScreen-CqP8malW.js.map +0 -1
- package/dist/cjs/FundingMethodSelectionScreen-B7JH6Y5C.js +0 -2
- package/dist/cjs/FundingMethodSelectionScreen-B7JH6Y5C.js.map +0 -1
- package/dist/cjs/InAppBrowserLoginNotPossible-CytrkSdH.js +0 -2
- package/dist/cjs/InAppBrowserLoginNotPossible-CytrkSdH.js.map +0 -1
- package/dist/cjs/InstallWalletScreen-DsLuDMBm.js +0 -2
- package/dist/cjs/InstallWalletScreen-DsLuDMBm.js.map +0 -1
- package/dist/cjs/LandingScreen-D9ZYTZ_o.js +0 -2
- package/dist/cjs/LandingScreen-D9ZYTZ_o.js.map +0 -1
- package/dist/cjs/LinkConflictScreen-Bp--Xqp4.js +0 -78
- package/dist/cjs/LinkConflictScreen-Bp--Xqp4.js.map +0 -1
- package/dist/cjs/LinkEmailScreen-hhXMRWAY.js +0 -2
- package/dist/cjs/LinkEmailScreen-hhXMRWAY.js.map +0 -1
- package/dist/cjs/LinkPasskeyScreen-CFAqa75j.js +0 -118
- package/dist/cjs/LinkPasskeyScreen-CFAqa75j.js.map +0 -1
- package/dist/cjs/LinkPhoneScreen-B8iUx4lx.js +0 -2
- package/dist/cjs/LinkPhoneScreen-B8iUx4lx.js.map +0 -1
- package/dist/cjs/LoginFailedScreen-CiQVR7i2.js +0 -2
- package/dist/cjs/LoginFailedScreen-CiQVR7i2.js.map +0 -1
- package/dist/cjs/ManualTransferScreen-IuvlSK-n.js +0 -2
- package/dist/cjs/ManualTransferScreen-IuvlSK-n.js.map +0 -1
- package/dist/cjs/MfaAuthEnrollmentFlowScreen-CETq5u1Q.js +0 -2
- package/dist/cjs/MfaAuthEnrollmentFlowScreen-CETq5u1Q.js.map +0 -1
- package/dist/cjs/MfaAuthVerifyFlowScreen-DxIdD9Ws.js +0 -2
- package/dist/cjs/MfaAuthVerifyFlowScreen-DxIdD9Ws.js.map +0 -1
- package/dist/cjs/MfaEnrollmentFlowScreen-CXpL4Yna.js +0 -2
- package/dist/cjs/MfaEnrollmentFlowScreen-CXpL4Yna.js.map +0 -1
- package/dist/cjs/MfaVerifyFlowScreen-bie4AJFC.js +0 -2
- package/dist/cjs/MfaVerifyFlowScreen-bie4AJFC.js.map +0 -1
- package/dist/cjs/ModalFooter-KG1rjyKI.js +0 -40
- package/dist/cjs/ModalFooter-KG1rjyKI.js.map +0 -1
- package/dist/cjs/ModalHeader-DZEsUIZI.js +0 -369
- package/dist/cjs/ModalHeader-DZEsUIZI.js.map +0 -1
- package/dist/cjs/MoonpayStatusScreen-CSp9lRav.js +0 -17
- package/dist/cjs/MoonpayStatusScreen-CSp9lRav.js.map +0 -1
- package/dist/cjs/OAuthStatusScreen-CyPoiYzc.js +0 -2
- package/dist/cjs/OAuthStatusScreen-CyPoiYzc.js.map +0 -1
- package/dist/cjs/PasskeySelectSignupOrLogin-DL2hEkaZ.js +0 -2
- package/dist/cjs/PasskeySelectSignupOrLogin-DL2hEkaZ.js.map +0 -1
- package/dist/cjs/PasskeyStatusScreen-3nfKuSmd.js +0 -4
- package/dist/cjs/PasskeyStatusScreen-3nfKuSmd.js.map +0 -1
- package/dist/cjs/PasswordRecoveryScreen-BteZNCGN.js +0 -21
- package/dist/cjs/PasswordRecoveryScreen-BteZNCGN.js.map +0 -1
- package/dist/cjs/QrCode-APK4Q73Q.js +0 -17
- package/dist/cjs/QrCode-APK4Q73Q.js.map +0 -1
- package/dist/cjs/RecoveryOAuthStatusScreen-Xcpnf_VL.js +0 -2
- package/dist/cjs/RecoveryOAuthStatusScreen-Xcpnf_VL.js.map +0 -1
- package/dist/cjs/RecoveryPasswordCreateScreen-D3L5vfjJ.js +0 -2
- package/dist/cjs/RecoveryPasswordCreateScreen-D3L5vfjJ.js.map +0 -1
- package/dist/cjs/RecoverySelectionScreen-Cd0kUoev.js +0 -8
- package/dist/cjs/RecoverySelectionScreen-Cd0kUoev.js.map +0 -1
- package/dist/cjs/Screen-DyQeuPZh.js +0 -184
- package/dist/cjs/Screen-DyQeuPZh.js.map +0 -1
- package/dist/cjs/ScreenLayout-By5Sy-tR.js +0 -2
- package/dist/cjs/ScreenLayout-By5Sy-tR.js.map +0 -1
- package/dist/cjs/SelectSourceAsset-RoPwm9Ph.js +0 -141
- package/dist/cjs/SelectSourceAsset-RoPwm9Ph.js.map +0 -1
- package/dist/cjs/SetAutomaticRecoveryScreen-CiW4r-FS.js +0 -15
- package/dist/cjs/SetAutomaticRecoveryScreen-CiW4r-FS.js.map +0 -1
- package/dist/cjs/SetWalletPasswordForm-CCHtgg_o.js +0 -13
- package/dist/cjs/SetWalletPasswordForm-CCHtgg_o.js.map +0 -1
- package/dist/cjs/SignRequestScreen-DuZmUIUT.js +0 -27
- package/dist/cjs/SignRequestScreen-DuZmUIUT.js.map +0 -1
- package/dist/cjs/StandardSignAndSendTransactionScreen-CHraB4Fe.js +0 -21
- package/dist/cjs/StandardSignAndSendTransactionScreen-CHraB4Fe.js.map +0 -1
- package/dist/cjs/TelegramAuthScreen-B1g4cmyq.js +0 -2
- package/dist/cjs/TelegramAuthScreen-B1g4cmyq.js.map +0 -1
- package/dist/cjs/TransactionDetails-DdKaRrkR.js +0 -112
- package/dist/cjs/TransactionDetails-DdKaRrkR.js.map +0 -1
- package/dist/cjs/TransactionErrorView-C2B3tf6f.js +0 -165
- package/dist/cjs/TransactionErrorView-C2B3tf6f.js.map +0 -1
- package/dist/cjs/TransferFromWalletScreen-BhX0R8RI.js +0 -32
- package/dist/cjs/TransferFromWalletScreen-BhX0R8RI.js.map +0 -1
- package/dist/cjs/TransferOrBridgeLoadingScreen-Bi-q93Rd.js +0 -7
- package/dist/cjs/TransferOrBridgeLoadingScreen-Bi-q93Rd.js.map +0 -1
- package/dist/cjs/TurnstileWrapper-MU8z6KVC.js +0 -2
- package/dist/cjs/TurnstileWrapper-MU8z6KVC.js.map +0 -1
- package/dist/cjs/UpdateEmailScreen-B6DN_q5R.js +0 -2
- package/dist/cjs/UpdateEmailScreen-B6DN_q5R.js.map +0 -1
- package/dist/cjs/UpdatePhoneScreen-B9AdXAUX.js +0 -2
- package/dist/cjs/UpdatePhoneScreen-B9AdXAUX.js.map +0 -1
- package/dist/cjs/UserLimitReachedScreen-BircZae4.js +0 -2
- package/dist/cjs/UserLimitReachedScreen-BircZae4.js.map +0 -1
- package/dist/cjs/WalletInfoCard-Dk-5wLNw.js +0 -30
- package/dist/cjs/WalletInfoCard-Dk-5wLNw.js.map +0 -1
- package/dist/cjs/WalletInterstitialScreen-Om5_Q9W4.js +0 -2
- package/dist/cjs/WalletInterstitialScreen-Om5_Q9W4.js.map +0 -1
- package/dist/cjs/WalletOverflowButton-p9AHJphR.js +0 -2
- package/dist/cjs/WalletOverflowButton-p9AHJphR.js.map +0 -1
- package/dist/cjs/fetch-deposit-config-v3-BKkSddM7.js +0 -2
- package/dist/cjs/fetch-deposit-config-v3-BKkSddM7.js.map +0 -1
- package/dist/cjs/get-entropy-details-for-user-tfp9rocr.js +0 -2
- package/dist/cjs/get-entropy-details-for-user-tfp9rocr.js.map +0 -1
- package/dist/cjs/index-BJnyd0R8.js +0 -13
- package/dist/cjs/index-BJnyd0R8.js.map +0 -1
- package/dist/cjs/index-CgnpUhPS.js +0 -2
- package/dist/cjs/index-CgnpUhPS.js.map +0 -1
- package/dist/cjs/index-DRhjO1Bq.js +0 -2
- package/dist/cjs/index-DRhjO1Bq.js.map +0 -1
- package/dist/cjs/index-DoYrHntd.js +0 -34
- package/dist/cjs/index-DoYrHntd.js.map +0 -1
- package/dist/cjs/modal-context-C34bOHqK.js +0 -2
- package/dist/cjs/modal-context-C34bOHqK.js.map +0 -1
- package/dist/cjs/pkce-DWV0mgI6.js +0 -2
- package/dist/cjs/pkce-DWV0mgI6.js.map +0 -1
- package/dist/cjs/privy-context-bABoNQW2.js +0 -2
- package/dist/cjs/privy-context-bABoNQW2.js.map +0 -1
- package/dist/cjs/shared-CTqihSiF.js +0 -194
- package/dist/cjs/shared-CTqihSiF.js.map +0 -1
- package/dist/cjs/shouldProceedtoEmbeddedWalletCreationFlow-ZJP8LewW.js +0 -2
- package/dist/cjs/shouldProceedtoEmbeddedWalletCreationFlow-ZJP8LewW.js.map +0 -1
- package/dist/cjs/simulateTransaction-CJX3UdY2.js +0 -2
- package/dist/cjs/simulateTransaction-CJX3UdY2.js.map +0 -1
- package/dist/cjs/smart-wallets-C-IMSXdv.js +0 -2
- package/dist/cjs/smart-wallets-C-IMSXdv.js.map +0 -1
- package/dist/cjs/styles-CG-gEXjm.js +0 -93
- package/dist/cjs/styles-CG-gEXjm.js.map +0 -1
- package/dist/cjs/styles-Cw_AKSPP.js +0 -165
- package/dist/cjs/styles-Cw_AKSPP.js.map +0 -1
- package/dist/cjs/to-ui-error-CHmifZX9.js +0 -5
- package/dist/cjs/to-ui-error-CHmifZX9.js.map +0 -1
- package/dist/cjs/toViemAccount-uZZbxLSe.js +0 -2
- package/dist/cjs/toViemAccount-uZZbxLSe.js.map +0 -1
- package/dist/cjs/use-deposit-address-DE8X-QNN.js +0 -2
- package/dist/cjs/use-deposit-address-DE8X-QNN.js.map +0 -1
- package/dist/cjs/use-export-wallet-cefpfMGr.js +0 -2
- package/dist/cjs/use-export-wallet-cefpfMGr.js.map +0 -1
- package/dist/cjs/use-sign-with-user-signer-jp3efHX1.js +0 -2
- package/dist/cjs/use-sign-with-user-signer-jp3efHX1.js.map +0 -1
- package/dist/cjs/use-unlink-wallet-cMVt5WfF.js +0 -2
- package/dist/cjs/use-unlink-wallet-cMVt5WfF.js.map +0 -1
- package/dist/cjs/useActiveWallet-DcFl3LWO.js +0 -124
- package/dist/cjs/useActiveWallet-DcFl3LWO.js.map +0 -1
- package/dist/cjs/useGetTokenPrice-BMY3ji_2.js +0 -2
- package/dist/cjs/useGetTokenPrice-BMY3ji_2.js.map +0 -1
- package/dist/cjs/useI18n--tHVrpy2.js +0 -2
- package/dist/cjs/useI18n--tHVrpy2.js.map +0 -1
- package/dist/cjs/useSendTransaction-BNyXdzpS.js +0 -402
- package/dist/cjs/useSendTransaction-BNyXdzpS.js.map +0 -1
- package/dist/cjs/useWallets-DK9QlgKK.js +0 -2
- package/dist/cjs/useWallets-DK9QlgKK.js.map +0 -1
- package/dist/cjs/wallet-connect-DfwgfC8U.js +0 -2
- package/dist/cjs/wallet-connect-DfwgfC8U.js.map +0 -1
- package/dist/dts/events-context-CJ7iVjnr.d.mts +0 -329
- package/dist/dts/events-context-CJ7iVjnr.d.ts +0 -329
- package/dist/dts/toViemAccount-BlnU5wxK.d.mts +0 -27
- package/dist/dts/toViemAccount-BlnU5wxK.d.ts +0 -27
- package/dist/dts/types-CgWBevVE.d.mts +0 -2663
- package/dist/dts/types-CgWBevVE.d.ts +0 -2663
- package/dist/dts/use-deposit-address-OKmft6lg.d.mts +0 -76
- package/dist/dts/use-deposit-address-OKmft6lg.d.ts +0 -76
- package/dist/dts/useUpdateAccount-Dv7-9xxT.d.mts +0 -27
- package/dist/dts/useUpdateAccount-Dv7-9xxT.d.ts +0 -27
- package/dist/esm/AccountNotFoundScreen-dpvlPdBk.mjs +0 -2
- package/dist/esm/AccountNotFoundScreen-dpvlPdBk.mjs.map +0 -1
- package/dist/esm/AddFundsSelectionScreen-D252cdfE.mjs +0 -32
- package/dist/esm/AddFundsSelectionScreen-D252cdfE.mjs.map +0 -1
- package/dist/esm/Address-DMC9FYV2.mjs +0 -18
- package/dist/esm/Address-DMC9FYV2.mjs.map +0 -1
- package/dist/esm/AffirmativeConsentScreen-CNKhHlgd.mjs +0 -7
- package/dist/esm/AffirmativeConsentScreen-CNKhHlgd.mjs.map +0 -1
- package/dist/esm/AllowlistRejectionScreen-Dxn2QBch.mjs +0 -2
- package/dist/esm/AllowlistRejectionScreen-Dxn2QBch.mjs.map +0 -1
- package/dist/esm/AuthenticateWithWalletScreen-XZW4H6Rp.mjs +0 -2
- package/dist/esm/AuthenticateWithWalletScreen-XZW4H6Rp.mjs.map +0 -1
- package/dist/esm/AwaitingEvmToSolBridgingScreen-kxYkefvS.mjs +0 -3
- package/dist/esm/AwaitingEvmToSolBridgingScreen-kxYkefvS.mjs.map +0 -1
- package/dist/esm/AwaitingExternalEthereumTransferScreen-CRXTmg6K.mjs +0 -3
- package/dist/esm/AwaitingExternalEthereumTransferScreen-CRXTmg6K.mjs.map +0 -1
- package/dist/esm/AwaitingPasswordlessCodeScreen-Y39Smn5S.mjs +0 -104
- package/dist/esm/AwaitingPasswordlessCodeScreen-Y39Smn5S.mjs.map +0 -1
- package/dist/esm/AwaitingSolToEvmBridgingScreen-m93Tmzeb.mjs +0 -3
- package/dist/esm/AwaitingSolToEvmBridgingScreen-m93Tmzeb.mjs.map +0 -1
- package/dist/esm/BridgeNetworkSelectionView-Crnt5gup.mjs +0 -69
- package/dist/esm/BridgeNetworkSelectionView-Crnt5gup.mjs.map +0 -1
- package/dist/esm/CaptchaScreen-CjA52GUM.mjs +0 -2
- package/dist/esm/CaptchaScreen-CjA52GUM.mjs.map +0 -1
- package/dist/esm/CoinbaseOnrampStatusScreen-MwBZBEO8.mjs +0 -17
- package/dist/esm/CoinbaseOnrampStatusScreen-MwBZBEO8.mjs.map +0 -1
- package/dist/esm/ConnectEmailForm-DZRoHv1b.mjs +0 -4
- package/dist/esm/ConnectEmailForm-DZRoHv1b.mjs.map +0 -1
- package/dist/esm/ConnectLedgerScreen-Cbl7rv9-.mjs +0 -10
- package/dist/esm/ConnectLedgerScreen-Cbl7rv9-.mjs.map +0 -1
- package/dist/esm/ConnectOnlyLandingScreen-DRjLarbZ.mjs +0 -2
- package/dist/esm/ConnectOnlyLandingScreen-DRjLarbZ.mjs.map +0 -1
- package/dist/esm/ConnectOnlyStatusScreen-HQr2eWJ8.mjs +0 -2
- package/dist/esm/ConnectOnlyStatusScreen-HQr2eWJ8.mjs.map +0 -1
- package/dist/esm/ConnectOrCreateScreen-DRvyMrwl.mjs +0 -2
- package/dist/esm/ConnectOrCreateScreen-DRvyMrwl.mjs.map +0 -1
- package/dist/esm/ConnectPhoneForm-CSL588et.mjs +0 -96
- package/dist/esm/ConnectPhoneForm-CSL588et.mjs.map +0 -1
- package/dist/esm/ConnectWalletView-BLywHxyt.mjs +0 -75
- package/dist/esm/ConnectWalletView-BLywHxyt.mjs.map +0 -1
- package/dist/esm/ConnectionStatusScreen-CkSP8_A8.mjs +0 -8
- package/dist/esm/ConnectionStatusScreen-CkSP8_A8.mjs.map +0 -1
- package/dist/esm/CrossAppAuthScreen-CjEnrdrJ.mjs +0 -2
- package/dist/esm/CrossAppAuthScreen-CjEnrdrJ.mjs.map +0 -1
- package/dist/esm/CustomLandingScreenView-BKG1b2JP.mjs +0 -24
- package/dist/esm/CustomLandingScreenView-BKG1b2JP.mjs.map +0 -1
- package/dist/esm/DelegatedActionsConsentScreen-CgjAuH1X.mjs +0 -2
- package/dist/esm/DelegatedActionsConsentScreen-CgjAuH1X.mjs.map +0 -1
- package/dist/esm/DelegatedActionsRevokeScreen-Ddfj8i91.mjs +0 -2
- package/dist/esm/DelegatedActionsRevokeScreen-Ddfj8i91.mjs.map +0 -1
- package/dist/esm/DepositAddressAddressStepView-DEuzIXen.mjs +0 -188
- package/dist/esm/DepositAddressAddressStepView-DEuzIXen.mjs.map +0 -1
- package/dist/esm/DepositAddressScreen-DIaAeDcJ.mjs +0 -9
- package/dist/esm/DepositAddressScreen-DIaAeDcJ.mjs.map +0 -1
- package/dist/esm/DepositAddressV3Screen-CrX8jlrq.mjs +0 -2
- package/dist/esm/DepositAddressV3Screen-CrX8jlrq.mjs.map +0 -1
- package/dist/esm/EmbeddedWalletConnectingScreen-DTxYtwkh.mjs +0 -2
- package/dist/esm/EmbeddedWalletConnectingScreen-DTxYtwkh.mjs.map +0 -1
- package/dist/esm/EmbeddedWalletCreatedScreen-njjn_fWc.mjs +0 -2
- package/dist/esm/EmbeddedWalletCreatedScreen-njjn_fWc.mjs.map +0 -1
- package/dist/esm/EmbeddedWalletKeyExportScreen-CkF-zPTJ.mjs +0 -25
- package/dist/esm/EmbeddedWalletKeyExportScreen-CkF-zPTJ.mjs.map +0 -1
- package/dist/esm/EmbeddedWalletOnAccountCreateScreen-DVnOfOJg.mjs +0 -2
- package/dist/esm/EmbeddedWalletOnAccountCreateScreen-DVnOfOJg.mjs.map +0 -1
- package/dist/esm/EmbeddedWalletPasswordUpdateScreen-Ce4369UE.mjs +0 -2
- package/dist/esm/EmbeddedWalletPasswordUpdateScreen-Ce4369UE.mjs.map +0 -1
- package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-B9SS2EuP.mjs +0 -2
- package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-B9SS2EuP.mjs.map +0 -1
- package/dist/esm/EnrollTotp-9U-h-h7Y.mjs +0 -64
- package/dist/esm/EnrollTotp-9U-h-h7Y.mjs.map +0 -1
- package/dist/esm/ErrorScreen-CZXyXJwt.mjs +0 -5
- package/dist/esm/ErrorScreen-CZXyXJwt.mjs.map +0 -1
- package/dist/esm/FarcasterConnectStatusScreen-C9sUwPj2.mjs +0 -76
- package/dist/esm/FarcasterConnectStatusScreen-C9sUwPj2.mjs.map +0 -1
- package/dist/esm/FarcasterSignerStatusScreen-B67IDHNj.mjs +0 -29
- package/dist/esm/FarcasterSignerStatusScreen-B67IDHNj.mjs.map +0 -1
- package/dist/esm/FiatOnrampScreen-mHppmT9g.mjs +0 -492
- package/dist/esm/FiatOnrampScreen-mHppmT9g.mjs.map +0 -1
- package/dist/esm/FundSolWalletWithExternalSolanaWallet-DAgCcGSZ.mjs +0 -2
- package/dist/esm/FundSolWalletWithExternalSolanaWallet-DAgCcGSZ.mjs.map +0 -1
- package/dist/esm/FundWalletMethodHeader-CBdY084Z.mjs +0 -2
- package/dist/esm/FundWalletMethodHeader-CBdY084Z.mjs.map +0 -1
- package/dist/esm/FundWithBankDepositScreen-CPTWNJlt.mjs +0 -59
- package/dist/esm/FundWithBankDepositScreen-CPTWNJlt.mjs.map +0 -1
- package/dist/esm/FundingEditAmountScreen-Sl84OThy.mjs +0 -2
- package/dist/esm/FundingEditAmountScreen-Sl84OThy.mjs.map +0 -1
- package/dist/esm/FundingMethodSelectionScreen-C7QABfvW.mjs +0 -2
- package/dist/esm/FundingMethodSelectionScreen-C7QABfvW.mjs.map +0 -1
- package/dist/esm/InAppBrowserLoginNotPossible-92qfsBpt.mjs +0 -2
- package/dist/esm/InAppBrowserLoginNotPossible-92qfsBpt.mjs.map +0 -1
- package/dist/esm/InstallWalletScreen-Be7abwcn.mjs +0 -2
- package/dist/esm/InstallWalletScreen-Be7abwcn.mjs.map +0 -1
- package/dist/esm/LandingScreen-DRUbwL_z.mjs +0 -2
- package/dist/esm/LandingScreen-DRUbwL_z.mjs.map +0 -1
- package/dist/esm/LinkConflictScreen-BIU8ewTv.mjs +0 -78
- package/dist/esm/LinkConflictScreen-BIU8ewTv.mjs.map +0 -1
- package/dist/esm/LinkEmailScreen-DBYu47Ce.mjs +0 -2
- package/dist/esm/LinkEmailScreen-DBYu47Ce.mjs.map +0 -1
- package/dist/esm/LinkPasskeyScreen-BjrBgk8F.mjs +0 -118
- package/dist/esm/LinkPasskeyScreen-BjrBgk8F.mjs.map +0 -1
- package/dist/esm/LinkPhoneScreen-CxzCokXL.mjs +0 -2
- package/dist/esm/LinkPhoneScreen-CxzCokXL.mjs.map +0 -1
- package/dist/esm/LoginFailedScreen-BogLDpQD.mjs +0 -2
- package/dist/esm/LoginFailedScreen-BogLDpQD.mjs.map +0 -1
- package/dist/esm/ManualTransferScreen-D_NY_W-D.mjs +0 -2
- package/dist/esm/ManualTransferScreen-D_NY_W-D.mjs.map +0 -1
- package/dist/esm/MfaAuthEnrollmentFlowScreen-aQyc42kT.mjs +0 -2
- package/dist/esm/MfaAuthEnrollmentFlowScreen-aQyc42kT.mjs.map +0 -1
- package/dist/esm/MfaAuthVerifyFlowScreen-Caf1mG_p.mjs +0 -2
- package/dist/esm/MfaAuthVerifyFlowScreen-Caf1mG_p.mjs.map +0 -1
- package/dist/esm/MfaEnrollmentFlowScreen-CsCKhXOZ.mjs +0 -2
- package/dist/esm/MfaEnrollmentFlowScreen-CsCKhXOZ.mjs.map +0 -1
- package/dist/esm/MfaVerifyFlowScreen-CH_lq1t9.mjs +0 -2
- package/dist/esm/MfaVerifyFlowScreen-CH_lq1t9.mjs.map +0 -1
- package/dist/esm/ModalFooter-BldNwiHO.mjs +0 -40
- package/dist/esm/ModalFooter-BldNwiHO.mjs.map +0 -1
- package/dist/esm/ModalHeader-DGv5F7AL.mjs +0 -369
- package/dist/esm/ModalHeader-DGv5F7AL.mjs.map +0 -1
- package/dist/esm/MoonpayStatusScreen-C_ioqmOe.mjs +0 -17
- package/dist/esm/MoonpayStatusScreen-C_ioqmOe.mjs.map +0 -1
- package/dist/esm/OAuthStatusScreen-CippSqIJ.mjs +0 -2
- package/dist/esm/OAuthStatusScreen-CippSqIJ.mjs.map +0 -1
- package/dist/esm/PasskeySelectSignupOrLogin-Bz4eA1kT.mjs +0 -2
- package/dist/esm/PasskeySelectSignupOrLogin-Bz4eA1kT.mjs.map +0 -1
- package/dist/esm/PasskeyStatusScreen-CPNqvDoG.mjs +0 -4
- package/dist/esm/PasskeyStatusScreen-CPNqvDoG.mjs.map +0 -1
- package/dist/esm/PasswordRecoveryScreen-BBadAC-E.mjs +0 -21
- package/dist/esm/PasswordRecoveryScreen-BBadAC-E.mjs.map +0 -1
- package/dist/esm/QrCode-cA9rnMIN.mjs +0 -17
- package/dist/esm/QrCode-cA9rnMIN.mjs.map +0 -1
- package/dist/esm/RecoveryOAuthStatusScreen-x9acanvl.mjs +0 -2
- package/dist/esm/RecoveryOAuthStatusScreen-x9acanvl.mjs.map +0 -1
- package/dist/esm/RecoveryPasswordCreateScreen-BLH8kpZr.mjs +0 -2
- package/dist/esm/RecoveryPasswordCreateScreen-BLH8kpZr.mjs.map +0 -1
- package/dist/esm/RecoverySelectionScreen-B4zO4H6R.mjs +0 -8
- package/dist/esm/RecoverySelectionScreen-B4zO4H6R.mjs.map +0 -1
- package/dist/esm/Screen-Dtn4lspb.mjs +0 -183
- package/dist/esm/Screen-Dtn4lspb.mjs.map +0 -1
- package/dist/esm/ScreenLayout-XFsWudNK.mjs +0 -2
- package/dist/esm/ScreenLayout-XFsWudNK.mjs.map +0 -1
- package/dist/esm/SelectSourceAsset-BE6EzMW7.mjs +0 -141
- package/dist/esm/SelectSourceAsset-BE6EzMW7.mjs.map +0 -1
- package/dist/esm/SetAutomaticRecoveryScreen-GtEwf97v.mjs +0 -15
- package/dist/esm/SetAutomaticRecoveryScreen-GtEwf97v.mjs.map +0 -1
- package/dist/esm/SetWalletPasswordForm-mtF9E932.mjs +0 -13
- package/dist/esm/SetWalletPasswordForm-mtF9E932.mjs.map +0 -1
- package/dist/esm/SignRequestScreen-Chf6Z75H.mjs +0 -27
- package/dist/esm/SignRequestScreen-Chf6Z75H.mjs.map +0 -1
- package/dist/esm/StandardSignAndSendTransactionScreen-BlF4_0ms.mjs +0 -21
- package/dist/esm/StandardSignAndSendTransactionScreen-BlF4_0ms.mjs.map +0 -1
- package/dist/esm/TelegramAuthScreen-BG263Fwa.mjs +0 -2
- package/dist/esm/TelegramAuthScreen-BG263Fwa.mjs.map +0 -1
- package/dist/esm/TransactionDetails-BOeB1w20.mjs +0 -112
- package/dist/esm/TransactionDetails-BOeB1w20.mjs.map +0 -1
- package/dist/esm/TransactionErrorView-CHChscnJ.mjs +0 -165
- package/dist/esm/TransactionErrorView-CHChscnJ.mjs.map +0 -1
- package/dist/esm/TransferFromWalletScreen-FPypY7tU.mjs +0 -32
- package/dist/esm/TransferFromWalletScreen-FPypY7tU.mjs.map +0 -1
- package/dist/esm/TransferOrBridgeLoadingScreen-BHVCJFXe.mjs +0 -7
- package/dist/esm/TransferOrBridgeLoadingScreen-BHVCJFXe.mjs.map +0 -1
- package/dist/esm/TurnstileWrapper-20sam7uS.mjs +0 -2
- package/dist/esm/TurnstileWrapper-20sam7uS.mjs.map +0 -1
- package/dist/esm/UpdateEmailScreen-D_Zhi8bE.mjs +0 -2
- package/dist/esm/UpdateEmailScreen-D_Zhi8bE.mjs.map +0 -1
- package/dist/esm/UpdatePhoneScreen-XtZryXw-.mjs +0 -2
- package/dist/esm/UpdatePhoneScreen-XtZryXw-.mjs.map +0 -1
- package/dist/esm/UserLimitReachedScreen-cTdLG4Aq.mjs +0 -2
- package/dist/esm/UserLimitReachedScreen-cTdLG4Aq.mjs.map +0 -1
- package/dist/esm/WalletInfoCard-zmo6O2YN.mjs +0 -30
- package/dist/esm/WalletInfoCard-zmo6O2YN.mjs.map +0 -1
- package/dist/esm/WalletInterstitialScreen-Bb1Dv0ks.mjs +0 -2
- package/dist/esm/WalletInterstitialScreen-Bb1Dv0ks.mjs.map +0 -1
- package/dist/esm/WalletOverflowButton-BQB3rBwe.mjs +0 -2
- package/dist/esm/WalletOverflowButton-BQB3rBwe.mjs.map +0 -1
- package/dist/esm/fetch-deposit-config-v3-BfmcE7Uy.mjs +0 -2
- package/dist/esm/fetch-deposit-config-v3-BfmcE7Uy.mjs.map +0 -1
- package/dist/esm/get-entropy-details-for-user-CWaM1Zij.mjs +0 -2
- package/dist/esm/get-entropy-details-for-user-CWaM1Zij.mjs.map +0 -1
- package/dist/esm/index-BStyLWM-.mjs +0 -34
- package/dist/esm/index-BStyLWM-.mjs.map +0 -1
- package/dist/esm/index-D8ngJizK.mjs +0 -2
- package/dist/esm/index-D8ngJizK.mjs.map +0 -1
- package/dist/esm/index-DEvxmE29.mjs +0 -13
- package/dist/esm/index-DEvxmE29.mjs.map +0 -1
- package/dist/esm/index-DjJmUJpR.mjs +0 -2
- package/dist/esm/index-DjJmUJpR.mjs.map +0 -1
- package/dist/esm/modal-context-C9-YL9cl.mjs +0 -2
- package/dist/esm/modal-context-C9-YL9cl.mjs.map +0 -1
- package/dist/esm/pkce-9IlxxmsH.mjs +0 -2
- package/dist/esm/pkce-9IlxxmsH.mjs.map +0 -1
- package/dist/esm/privy-context-CHgh9ALO.mjs +0 -2
- package/dist/esm/privy-context-CHgh9ALO.mjs.map +0 -1
- package/dist/esm/shared-C4KM7VSO.mjs +0 -194
- package/dist/esm/shared-C4KM7VSO.mjs.map +0 -1
- package/dist/esm/shouldProceedtoEmbeddedWalletCreationFlow-BxvaW_Vy.mjs +0 -2
- package/dist/esm/shouldProceedtoEmbeddedWalletCreationFlow-BxvaW_Vy.mjs.map +0 -1
- package/dist/esm/simulateTransaction-CP42l5SJ.mjs +0 -2
- package/dist/esm/simulateTransaction-CP42l5SJ.mjs.map +0 -1
- package/dist/esm/smart-wallets-DYkxLSLV.mjs +0 -2
- package/dist/esm/smart-wallets-DYkxLSLV.mjs.map +0 -1
- package/dist/esm/styles-BSL8-rdX.mjs +0 -165
- package/dist/esm/styles-BSL8-rdX.mjs.map +0 -1
- package/dist/esm/styles-C4IROdYt.mjs +0 -93
- package/dist/esm/styles-C4IROdYt.mjs.map +0 -1
- package/dist/esm/to-ui-error-DriSyvzX.mjs +0 -5
- package/dist/esm/to-ui-error-DriSyvzX.mjs.map +0 -1
- package/dist/esm/toViemAccount-BEZt_I8V.mjs +0 -2
- package/dist/esm/toViemAccount-BEZt_I8V.mjs.map +0 -1
- package/dist/esm/use-deposit-address-BdO356-0.mjs +0 -2
- package/dist/esm/use-deposit-address-BdO356-0.mjs.map +0 -1
- package/dist/esm/use-export-wallet-Dsuleueq.mjs +0 -2
- package/dist/esm/use-export-wallet-Dsuleueq.mjs.map +0 -1
- package/dist/esm/use-sign-with-user-signer-OxgKiUdW.mjs +0 -2
- package/dist/esm/use-sign-with-user-signer-OxgKiUdW.mjs.map +0 -1
- package/dist/esm/use-unlink-wallet-CzhLmtfX.mjs +0 -2
- package/dist/esm/use-unlink-wallet-CzhLmtfX.mjs.map +0 -1
- package/dist/esm/useActiveWallet-DCQDqX3Q.mjs +0 -124
- package/dist/esm/useActiveWallet-DCQDqX3Q.mjs.map +0 -1
- package/dist/esm/useGetTokenPrice-Ufl46eND.mjs +0 -2
- package/dist/esm/useGetTokenPrice-Ufl46eND.mjs.map +0 -1
- package/dist/esm/useI18n-DJGbXMkU.mjs +0 -2
- package/dist/esm/useI18n-DJGbXMkU.mjs.map +0 -1
- package/dist/esm/useSendTransaction-CahhhdIF.mjs +0 -402
- package/dist/esm/useSendTransaction-CahhhdIF.mjs.map +0 -1
- package/dist/esm/useWallets-Bdalx8ys.mjs +0 -2
- package/dist/esm/useWallets-Bdalx8ys.mjs.map +0 -1
- package/dist/esm/wallet-connect-Ca-N52lE.mjs +0 -2
- package/dist/esm/wallet-connect-Ca-N52lE.mjs.map +0 -1
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as r}from"react/jsx-runtime";import{useContext as a,createContext as n,useRef as i,useState as s,useMemo as o,useEffect as l,Suspense as c,lazy as d,useCallback as u}from"react";import h,{buildSolanaOffchainMessage as p,toWalletApiUnsignedEthTransaction as w,rpc as m,DATA_SUFFIX_PLUGIN_ID as g,getWallet as y,updateWallet as f,generateAuthorizationSignature as v,transfer as A,listWalletActions as S,getWalletAction as T}from"@privy-io/js-sdk-core";import{R as E,g as _,C as k,a as C,i as b,t as I,S as U,p as W,E as O,b as P,U as R,c as N,O as M,h as F,l as L,W as x,d as D,e as j,f as q,j as H,T as K,k as V,G as z,m as B}from"./toViemAccount-moo9TJem.mjs";import{O as G,H as $,S as Y,u as J,a as X,C as Z,b as Q,g as ee,i as te,c as re,d as ae,e as ne,f as ie,h as se,j as oe,P as le,D as ce,k as de,l as ue,m as he,n as pe,o as we,p as me,q as ge,r as ye,W as fe}from"./privy-context-CoPB1sug.mjs";import{P as ve,f as Ae,a as Se,b as Te,c as Ee,d as _e,e as ke}from"./errors-BQ3N-RVt.mjs";import{u as Ce,g as be,P as Ie}from"./PrivyPluginContext-DA-yS5vO.mjs";import{s as Ue,p as We,i as Oe,t as Pe,g as Re,a as Ne,e as Me,f as Fe,b as Le}from"./storage-DWGw0C_e.mjs";import{createStore as xe}from"mipd";import{isMobile as De,isIOS as je,isAndroid as qe}from"react-device-detect";import{toHex as He,isHex as Ke,hashAuthorization as Ve}from"viem/utils";import{o as ze}from"./walletconnect-registry-xxG8XLCb.mjs";import{f as Be,a as Ge,b as $e,c as Ye,p as Je,d as Xe,e as Ze,g as Qe,h as et,i as tt,t as rt,j as at}from"./paths-D5yr69aj.mjs";import{base58 as nt,base64 as it}from"@scure/base";import{p as st,S as ot,a as lt,b as ct}from"./id-UqEwL2BI.mjs";import{n as dt,a as ut,u as ht,I as pt}from"./internal-context-dfitw7Ot.mjs";import{styled as wt}from"styled-components";import{u as mt,M as gt}from"./modal-context-2FwelYaK.mjs";import{H as yt,u as ft,a as vt,R as At,e as St}from"./useActiveWallet-DFpBTXK1.mjs";import{u as Tt,a as Et,i as _t,f as kt,p as Ct,e as bt,P as It,b as Ut,c as Wt}from"./use-unlink-wallet-GnCx4meh.mjs";import{create as Ot}from"zustand";import{S as Pt,D as Rt,G as Nt}from"./useSendTransaction-CldMjlhn.mjs";import{L as Mt}from"./Loader-UAZqxsnw.mjs";import{u as Ft,t as Lt,a as xt,g as Dt,b as jt,s as qt,c as Ht,P as Kt,d as Vt,e as zt,f as Bt}from"./get-entropy-details-for-user-NQEot7NZ.mjs";import{g as Gt,u as $t,s as Yt,i as Jt,a as Xt,b as Zt,c as Qt}from"./index-SQDAZoUX.mjs";import{l as er,P as tr,c as rr}from"./wallet-connect-DwpBuAcu.mjs";import{constructURL as ar}from"@privy-io/urls";import{w as nr,u as ir,a as sr,b as or,r as lr,B as cr}from"./use-headless-crypto-deposit-KWcTJ4P6.mjs";import{c as dr,u as ur,g as hr,a as pr,r as wr,b as mr,d as gr,e as yr}from"./useWallets-cUJf3hxZ.mjs";import{g as fr,a as vr}from"./getPublicClient-39RNz8yA.mjs";import Ar from"eventemitter3";import{isTempoTransactionRequest as Sr,toViemTransactionSerializable as Tr}from"@privy-io/ethereum";import{F as Er}from"./frame-CzIkml29.mjs";import{MfaAuthPasskeyVerify as _r,MfaAuthPasskeyInit as kr,MfaAuthTotpVerify as Cr,MfaAuthPasskeyEnrollment as br,MfaAuthTotpUnenroll as Ir,MfaAuthTotpEnroll as Ur,MfaAuthTotpInit as Wr}from"@privy-io/routes";import{zeroAddress as Or,getAddress as Pr,createWalletClient as Rr,http as Nr,parseSignature as Mr}from"viem";import{selectPaymentRequirements as Fr,createPaymentHeader as Lr}from"x402/client";import{InvalidInputError as xr}from"@privy-io/api-base";import{areAddressesEqual as Dr}from"@privy-io/are-addresses-equal";import{u as jr}from"./use-sign-with-user-signer-_10G_Z_r.mjs";import"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";function qr(){let e=new URLSearchParams(window.location.search),t=e.get("privy_oauth_code"),r=e.get("privy_oauth_state"),a=e.get("privy_oauth_provider");if(!t||!r||!a)return{inProgress:!1};let n=!1;try{n=!!window.opener.location.origin}catch{}return{inProgress:!0,authorizationCode:t,stateCode:r,provider:a,withPrivyUi:!Ue.get($),popupFlow:null!==window.opener&&n,disableSignup:!!Ue.get(G)}}function Hr(){let e=new URL(window.location.href);e.searchParams.delete("privy_oauth_code"),e.searchParams.delete("privy_oauth_provider"),e.searchParams.delete("privy_oauth_state"),Ue.del(Y),window.history.replaceState({},"",e)}class Kr{get meta(){return this._meta}async authenticate(){if(!this.api)throw new ve("Auth flow has no API instance");if(!this.meta.channelToken)throw new ve("Auth flow must be initialized first");try{let e=await this.api.post(Be,{channel_token:this.meta.channelToken,message:this.message,signature:this.signature,fid:this.fid,mode:this.meta.disableSignup?"no-signup":"login-or-sign-up"});if(!e)throw new ve("No response from authentication");return e}catch(e){throw Ae(e)}}async link(){if(!this.api)throw new ve("Auth flow has no API instance");try{return await this.api.post(Ge,{channel_token:this.meta.channelToken,message:this.message,signature:this.signature,fid:this.fid})}catch(e){throw Ae(e)}}async _startChannelOnce(){if(!this.api)throw new ve("Auth flow has no API instance");let e=await this.api.post($e,{token:this.captchaToken});De&&!je&&e.connect_uri&&ze(e.connect_uri,"_blank"),this._meta={...this._meta,connectUri:e.connect_uri,channelToken:e.channel_token}}async initializeFarcasterConnect(){if(!this.api)throw new ve("Auth flow has no API instance");await this.startChannelOnce.execute()}async _pollForReady(){if(!this.api)throw new ve("Auth flow has no API instance");if(!this.meta.channelToken)throw new ve("Auth flow must be initialized first");let e=await this.api.get(Ye,{headers:{"farcaster-channel-token":this.meta.channelToken}});return"completed"===e.state&&(this.message=e.message,this.signature=e.signature,this.fid=e.fid,!0)}constructor(e,t=!1){this._meta={disableSignup:!1},this.captchaToken=e,this.startChannelOnce=new E(this._startChannelOnce.bind(this)),this.pollForReady=new E(this._pollForReady.bind(this)),this._meta.disableSignup=t}}class Vr{async initRegisterFlow(e){if(!this.api)throw new ve("Auth flow has no API instance");this.authenticateForRegistration=!0,this.meta.initRegisterResponse=await this.initRegisterOnce.execute(e)}async initAuthenticationFlow(e){if(!this.api)throw new ve("Auth flow has no API instance");this.authenticateForRegistration=!1,this.meta.initAuthenticateResponse=await this.initAuthenticateOnce.execute(e)}async initLinkFlow(){if(!this.api)throw new ve("Auth flow has no API instance");this.meta.initLinkResponse=await this.initLinkOnce.execute()}async register(){let e=await import("@simplewebauthn/browser");if(!this.api)throw new ve("Auth flow has no API instance");if(!e.browserSupportsWebAuthn())throw new ve("WebAuthn is not supported in this browser");this.meta.initRegisterResponse||(this.meta.initRegisterResponse=await this.initRegisterOnce.execute());try{let t=this.meta.initRegisterResponse.options,r=await e.startRegistration({optionsJSON:this._transformInitLinkOptionsToCamelCase(t)});return this.meta.setPasskeyAuthState?.({status:"submitting-response"}),await this.api.post(Je,{relying_party:this.meta.initRegisterResponse.relying_party,authenticator_response:this._transformRegistrationResponseToSnakeCase(r)})}catch(e){if("NotAllowedError"===e.name)throw new ve("Passkey request timed out or rejected by user.",void 0,Se.PASSKEY_NOT_ALLOWED);throw Ae(e)}}async authenticate(){if(this.authenticateForRegistration)return this.register();let e=await import("@simplewebauthn/browser");if(!this.api)throw new ve("Auth flow has no API instance");if(!e.browserSupportsWebAuthn())throw new ve("WebAuthn is not supported in this browser");this.meta.initAuthenticateResponse||(this.meta.initAuthenticateResponse=await this.initAuthenticateOnce.execute());let t=this.meta.allowedCredentialsIds?.map((e=>({type:"public-key",id:e})))??this.meta.initAuthenticateResponse.options.allow_credentials;try{let r=await e.startAuthentication({optionsJSON:this._transformInitAuthenticateOptionsToCamelCase({...this.meta.initAuthenticateResponse.options,allow_credentials:t})});return this.meta.setPasskeyAuthState?.({status:"submitting-response"}),await this.api.post(Xe,{relying_party:this.meta.initAuthenticateResponse.relying_party,challenge:this.meta.initAuthenticateResponse.options.challenge,authenticator_response:this._transformAuthenticationResponseToSnakeCase(r)})}catch(e){if("NotAllowedError"===e.name)throw new ve("Passkey request timed out or rejected by user.",void 0,Se.PASSKEY_NOT_ALLOWED);throw Ae(e)}}async link(){let e=await import("@simplewebauthn/browser");if(!this.api)throw new ve("Auth flow has no API instance");if(!e.browserSupportsWebAuthn())throw new ve("WebAuthn is not supported in this browser");this.meta.initLinkResponse||(this.meta.initLinkResponse=await this.initLinkOnce.execute());try{let t=this.meta.initLinkResponse.options,r=await e.startRegistration({optionsJSON:this._transformInitLinkOptionsToCamelCase(t)});return this.meta.setPasskeyAuthState?.({status:"submitting-response"}),await this.api.post(Ze,{relying_party:this.meta.initLinkResponse.relying_party,authenticator_response:this._transformRegistrationResponseToSnakeCase(r)})}catch(e){if("NotAllowedError"===e.name)throw new ve("Passkey request timed out or rejected by user.",void 0,Se.PASSKEY_NOT_ALLOWED);throw Ae(e)}}async _initRegisterOnce(e){if(!this.api)throw new ve("Auth flow has no API instance");let t=_(e);return await this.api.post(Qe,{token:this.meta.captchaToken},{headers:{...t}})}async _initAuthenticateOnce(e){if(!this.api)throw new ve("Auth flow has no API instance");let t=_(e);return await this.api.post(et,{token:this.meta.captchaToken},{headers:{...t}})}async _initLinkOnce(){if(!this.api)throw new ve("Auth flow has no API instance");return await this.api.post(tt,{})}_transformInitLinkOptionsToCamelCase(e){let t=this.meta.name?.trim()||void 0;return{rp:e.rp,user:{id:e.user.id,name:t??e.user.name,displayName:t??e.user.display_name},challenge:e.challenge,pubKeyCredParams:e.pub_key_cred_params.map((e=>({type:e.type,alg:e.alg}))),timeout:e.timeout,excludeCredentials:e.exclude_credentials?.map((e=>({id:e.id,type:e.type,transports:e.transports}))),authenticatorSelection:{authenticatorAttachment:e.authenticator_selection?.authenticator_attachment,requireResidentKey:e.authenticator_selection?.require_resident_key,residentKey:e.authenticator_selection?.resident_key,userVerification:e.authenticator_selection?.user_verification},attestation:e.attestation,extensions:{appid:e.extensions?.app_id,credProps:e.extensions?.cred_props?.rk,hmacCreateSecret:e.extensions?.hmac_create_secret},hints:this.meta.hints}}_transformRegistrationResponseToSnakeCase(e){return{id:e.id,raw_id:e.rawId,response:{client_data_json:e.response.clientDataJSON,attestation_object:e.response.attestationObject,authenticator_data:e.response.authenticatorData},authenticator_attachment:e.authenticatorAttachment,client_extension_results:{app_id:e.clientExtensionResults.appid,cred_props:e.clientExtensionResults.credProps,hmac_create_secret:e.clientExtensionResults.hmacCreateSecret},type:e.type}}_transformInitAuthenticateOptionsToCamelCase(e){return{rpId:e.rp_id,challenge:e.challenge,allowCredentials:e.allow_credentials?.map((e=>({id:e.id,type:e.type,transports:e.transports})))||[],timeout:e.timeout,extensions:{appid:e.extensions?.app_id,credProps:e.extensions?.cred_props,hmacCreateSecret:e.extensions?.hmac_create_secret},userVerification:e.user_verification}}_transformAuthenticationResponseToSnakeCase(e){return{id:e.id,raw_id:e.rawId,response:{client_data_json:e.response.clientDataJSON,authenticator_data:e.response.authenticatorData,signature:e.response.signature,user_handle:e.response.userHandle},authenticator_attachment:e.authenticatorAttachment,client_extension_results:{app_id:e.clientExtensionResults.appid,cred_props:e.clientExtensionResults.credProps,hmac_create_secret:e.clientExtensionResults.hmacCreateSecret},type:e.type}}constructor({captchaToken:e,setPasskeyAuthState:t,hints:r}){this.authenticateForRegistration=!1,this.initRegisterOnce=new E(this._initRegisterOnce.bind(this)),this.initAuthenticateOnce=new E(this._initAuthenticateOnce.bind(this)),this.initLinkOnce=new E(this._initLinkOnce.bind(this)),this.meta={captchaToken:e,setPasskeyAuthState:t,hints:r}}}class zr{get meta(){return{connectorType:this.wallet.connectorType,walletClientType:this.wallet.walletClientType,disableSignup:this._meta.disableSignup,messageType:this._meta.messageType,address:this.wallet?.address}}set messageType(e){this._meta.messageType=e}async authenticate(){if(!this.client)throw new ve("SiwsFlow has no client instance");try{let{message:e,signature:t}=await this.sign();return await this.client.authenticateWithSiwsInternal({message:e,signature:t,walletClientType:this.wallet.walletClientType,connectorType:this.wallet.connectorType,mode:this.meta.disableSignup?"no-signup":"login-or-sign-up",messageType:this.meta.messageType})}catch(e){throw Ae(e)}}async link(){if(!this.client)throw new ve("SiwsFlow has no client instance");try{let{message:e,signature:t}=await this.sign();return await this.client.linkWithSiwsInternal({message:e,signature:t,walletClientType:this.wallet.walletClientType,connectorType:this.wallet.connectorType,messageType:this.meta.messageType})}catch(e){throw Ae(e)}}async sign(){let e,t;if(!this.client)throw new ve("SiwsFlow has no client instance");await this.buildMessage();let r="transaction"===this.meta.messageType,a="offchain-message"===this.meta.messageType;if(!this.preparedMessage)throw new ve("Could not prepare SIWS message");if(!r&&!this.wallet.provider.signMessage||r&&!this.wallet.provider.signTransaction)throw new ve("Wallet does not support the necessary signing methods");if(a){let r=p({message:this.preparedMessage,signerPublicKey:nt.decode(this.wallet.address),domain:window.location.origin}),a=await this.wallet.provider.signMessage({message:r});e=this.preparedMessage,t=it.encode(a.signature)}else if(r&&this._plugin){let r=await this.wallet.provider.signTransaction({transaction:it.decode(this.preparedMessage)});e=it.encode(r.signedTransaction),t=this._plugin.getSignatureFromTransaction(r.signedTransaction,this.wallet.address)}else{e=this.preparedMessage;let r=await this.wallet.provider.signMessage({message:(new TextEncoder).encode(this.preparedMessage)});t=it.encode(r.signature)}return{message:e,signature:t}}async _getNonceOnce(){if(!this.client)throw new ve("SiwsFlow has no client instance");return await this.client.generateSiwsNonce({address:this.wallet.address,captchaToken:this.captchaToken})}async buildMessage(){if(!this.client)throw new ve("SiwsFlow has no client instance");let e=this.wallet.address;return this.nonce||(this.nonce=await this.getNonceOnce.execute()),"transaction"===this.meta.messageType&&this._plugin?this.preparedMessage=this._plugin.createSiwsMemoTransaction({address:e,nonce:this.nonce}):this.preparedMessage=st({address:e,nonce:this.nonce}),this.preparedMessage}constructor(e,t,r,a=!1,n="plain",i){this._meta={disableSignup:!1,messageType:"plain"},this.getNonceOnce=new E(this._getNonceOnce.bind(this)),this.wallet=e,this.captchaToken=r,this.client=t,this._meta.disableSignup=a,this._meta.messageType=n,this._plugin=i}}const Br=/*#__PURE__*/n({enabled:!1,siteKey:"",provider:void 0,appId:void 0,token:void 0,error:void 0,status:"disabled",setToken:dt,setError:dt,setExecuting:dt,waitForResult:()=>Promise.resolve(""),ref:{current:null},remove:ut,reset:dt,execute:dt});class Gr extends Te{constructor(e,t,r){super(e||"Captcha failed"),this.type="Captcha",t instanceof Error&&(this.cause=t),this.privyErrorCode=r}}const $r=({children:t,appId:r,captchaSiteKey:a,enabledCaptchaProvider:n})=>{let l=i(null),c=i(null),[d,u]=s(),[h,p]=s(),[w,m]=s(!1),g=o((()=>n?w||d||h?!w||d||h?d&&!h?{status:"success",token:d}:h?{status:"error",error:h}:{status:"ready"}:{status:"loading"}:{status:"ready"}:{status:"disabled"}),[n,d,h,w]),y=o((()=>n?"turnstile"===n?{remove:()=>{l.current?.remove(),m(!1),p(void 0),u(void 0)},reset:()=>{l.current?.reset(),m(!1),p(void 0),u(void 0)},execute:()=>{m(!0),l.current?.execute()},waitForResult:async()=>{try{return await We((()=>l.current?.getResponse()),{interval:200,timeout:2e4})}catch(e){throw new Gr("Captcha failed",null,Se.CAPTCHA_TIMEOUT)}}}:{remove:()=>{c.current?.removeCaptcha(),m(!1),p(void 0),u(void 0)},reset:()=>{c.current?.resetCaptcha(),m(!1),p(void 0),u(void 0)},execute:()=>{m(!0),c.current?.execute()},waitForResult:async()=>{try{return await We((()=>{let e=c.current?.getResponse();if(e)return e}),{interval:200,timeout:2e4})}catch(e){throw new Gr("Captcha failed",null,Se.CAPTCHA_TIMEOUT)}}}:null),[n]),f=o((()=>{if(!n||!y)return{...g,enabled:!1,siteKey:"",appId:r,setToken:dt,setError:dt,setExecuting:dt,waitForResult:()=>Promise.resolve(void 0),remove:ut,reset:dt,execute:dt,provider:void 0,ref:{current:null}};let e={...g,enabled:!0,appId:r,setToken:u,setError:p,setExecuting:m};return"turnstile"===n?{...e,provider:"turnstile",ref:l,siteKey:a.split("t:")[1]??"",...y}:{...e,provider:"hcaptcha",ref:c,siteKey:a.split("h:")[1]??"",...y}}),[g,n,y,r,a]);/*#__PURE__*/return e(Br.Provider,{value:f,children:t})},Yr=()=>a(Br);async function Jr(e){if(e.enabled){if("error"===e.status)throw new Gr(e.error,null,Se.CAPTCHA_FAILURE);return"success"===e.status?e.token:(e.execute(),await e.waitForResult())}}class Xr{async authenticate(){if(!this.api)throw new ve("Auth flow has no API instance");try{return await this.api.post(rt,{captcha_token:this.meta.captchaToken,telegram_auth_result:this.meta.telegramAuthResult,telegram_web_app_data:this.meta.telegramWebAppData,mode:this.meta.disableSignup?"no-signup":"login-or-sign-up"})}catch(e){throw Ae(e)}}async link(){if(!this.api)throw new ve("Auth flow has no API instance");try{return await this.api.post(at,{telegram_auth_result:this.meta.telegramAuthResult,telegram_web_app_data:this.meta.telegramWebAppData})}catch(e){throw Ae(e)}}constructor(e,t=!1){this.meta={disableSignup:!1},this.meta={captchaToken:e,disableSignup:!1},this.meta.disableSignup=t}}function Zr(e){let t={detail:"",retryable:!1};return e?.privyErrorCode===Se.LINKED_TO_ANOTHER_USER&&(t.detail="This account has already been linked to another user."),e?.privyErrorCode===Se.DISALLOWED_LOGIN_METHOD&&(t.detail="Login with Telegram not allowed."),e?.privyErrorCode===Se.INVALID_DATA&&(t.retryable=!0,t.detail="Something went wrong. Try again."),e?.privyErrorCode===Se.CANNOT_LINK_MORE_OF_TYPE&&(t.retryable=!0,t.detail="Something went wrong. Try again."),e?.privyErrorCode===Se.INVALID_CREDENTIALS&&(t.retryable=!0,t.detail="Something went wrong. Try again."),e?.privyErrorCode===Se.TOO_MANY_REQUESTS&&(t.detail="Too many requests. Please wait before trying again."),e?.privyErrorCode===Se.TOO_MANY_REQUESTS&&e.message.includes("rate limit")&&(t.detail="Request limit reached for Telegram. Please wait a moment and try again."),e instanceof Gr&&(t.retryable=!0,t.detail="Something went wrong. Try again."),t}function Qr(e){return Object.fromEntries(decodeURIComponent(e).split("&").map((e=>e.split("=").map(decodeURIComponent))))}function ea(){let e=new URL(window.location.href);e.searchParams.delete("id"),e.searchParams.delete("hash"),e.searchParams.delete("auth_date"),e.searchParams.delete("first_name"),e.searchParams.delete("last_name"),e.searchParams.delete("username"),e.searchParams.delete("photo_url"),e.hash="",window.history.replaceState({},"",e)}let ta=/*#__PURE__*/d((()=>import("./TurnstileWrapper-0Q_xQUx_.mjs"))),ra=/*#__PURE__*/d((()=>import("./HCaptchaWrapper-CUi9LJsp.mjs")));const aa=r=>{let a=Yr();return l((()=>a.remove),[a.remove]),a.enabled&&a.provider?/*#__PURE__*/e(c,{fallback:null,children:/*#__PURE__*/t("div",{className:"hidden h-0 w-0",children:["turnstile"===a.provider&&/*#__PURE__*/e(ta,{...r,captchaContext:a}),"hcaptcha"===a.provider&&/*#__PURE__*/e(ra,{...r,captchaContext:a})]})}):null};var na=/*#__PURE__*/Object.freeze({__proto__:null,AccountNotFoundScreen:()=>import("./AccountNotFoundScreen-Bl7Hmtmi.mjs"),AddFundsSelectionScreen:()=>import("./AddFundsSelectionScreen-Dv-FI_xa.mjs"),AffirmativeConsentScreen:()=>import("./AffirmativeConsentScreen-bHaPFxOO.mjs"),AllowlistRejectionScreen:()=>import("./AllowlistRejectionScreen-C7xFw_Vl.mjs"),AuthenticateWithWalletScreen:()=>import("./AuthenticateWithWalletScreen-BCTIBWcL.mjs"),AwaitingEvmToSolBridgingScreen:()=>import("./AwaitingEvmToSolBridgingScreen-Dgoqd0cm.mjs"),AwaitingExternalEthereumTransferScreen:()=>import("./AwaitingExternalEthereumTransferScreen-FEDd_gmh.mjs"),AwaitingPasswordlessCodeScreen:()=>import("./AwaitingPasswordlessCodeScreen-DE3s5Nt7.mjs"),AwaitingSolToEvmBridgingScreen:()=>import("./AwaitingSolToEvmBridgingScreen-Glj6MyNv.mjs"),CaptchaScreen:()=>import("./CaptchaScreen-CNJxFcLz.mjs"),CoinbaseOnrampStatusScreen:()=>import("./CoinbaseOnrampStatusScreen-DnjOb61Q.mjs"),ConnectLedgerScreen:()=>import("./ConnectLedgerScreen-gJIU_F29.mjs"),ConnectOnlyLandingScreen:()=>import("./ConnectOnlyLandingScreen-Db6J_saO.mjs"),ConnectOnlyStatusScreen:()=>import("./ConnectOnlyStatusScreen-enc3HgPj.mjs"),ConnectOrCreateScreen:()=>import("./ConnectOrCreateScreen-jwVhg2Mi.mjs"),ConnectionStatusScreen:()=>import("./ConnectionStatusScreen-D2Y-wqNP.mjs"),CrossAppAuthScreen:()=>import("./CrossAppAuthScreen-BOti_c-6.mjs"),DelegatedActionsConsentScreen:()=>import("./DelegatedActionsConsentScreen-BwtldL1j.mjs"),DelegatedActionsRevokeScreen:()=>import("./DelegatedActionsRevokeScreen-CbprmWNC.mjs"),DepositAddressScreen:()=>import("./DepositAddressScreen-CrFlyPED.mjs"),DepositAddressV3Screen:()=>import("./DepositAddressV3Screen-CeWE2__6.mjs"),EmbeddedWalletConnectingScreen:()=>import("./EmbeddedWalletConnectingScreen-BFVZ0NW9.mjs"),EmbeddedWalletCreatedScreen:()=>import("./EmbeddedWalletCreatedScreen-Dte9vWYq.mjs"),EmbeddedWalletKeyExportScreen:()=>import("./EmbeddedWalletKeyExportScreen-DC2p1NXt.mjs"),EmbeddedWalletOnAccountCreateScreen:()=>import("./EmbeddedWalletOnAccountCreateScreen-XmgkcseA.mjs"),EmbeddedWalletPasswordCreateScreen:()=>import("./RecoveryPasswordCreateScreen-CZtg0Yg0.mjs"),EmbeddedWalletPasswordUpdateScreen:()=>import("./EmbeddedWalletPasswordUpdateScreen-DayUjdiv.mjs"),EmbeddedWalletPasswordUpdateSplashScreen:()=>import("./EmbeddedWalletPasswordUpdateSplashScreen-CgBjf0CX.mjs"),ErrorScreen:()=>import("./ErrorScreen-CL8ZLhI9.mjs"),FarcasterConnectStatusScreen:()=>import("./FarcasterConnectStatusScreen-e66gOAYv.mjs"),FarcasterSignerStatusScreen:()=>import("./FarcasterSignerStatusScreen-WvxEu5GK.mjs"),FiatOnrampScreen:()=>import("./FiatOnrampScreen-CJlu_7aM.mjs"),FundSolWalletWithExternalSolanaWallet:()=>import("./FundSolWalletWithExternalSolanaWallet-DEnsCMpK.mjs"),FundWithBankDepositScreen:()=>import("./FundWithBankDepositScreen-DAevsgLt.mjs"),FundingAmountEditScreen:()=>import("./FundingEditAmountScreen-BUfO3FjN.mjs"),FundingMethodSelectionScreen:()=>import("./FundingMethodSelectionScreen-B-RbfqEp.mjs"),InAppBrowserLoginNotPossible:()=>import("./InAppBrowserLoginNotPossible-CLAeLqyR.mjs"),InstallWalletScreen:()=>import("./InstallWalletScreen-Ce0LaKGA.mjs"),LandingScreen:()=>import("./LandingScreen-C_YGcJ_f.mjs"),LinkConflictScreen:()=>import("./LinkConflictScreen-BEyeIbc-.mjs"),LinkEmailScreen:()=>import("./LinkEmailScreen-pr3JS6H3.mjs"),LinkPasskeyScreen:()=>import("./LinkPasskeyScreen-C-l57_F6.mjs"),LinkPhoneScreen:()=>import("./LinkPhoneScreen-C6An6j1b.mjs"),LoginFailedScreen:()=>import("./LoginFailedScreen-35qCQfO7.mjs"),ManualTransferScreen:()=>import("./ManualTransferScreen-B2q8dg2f.mjs"),MfaAuthEnrollmentFlowScreen:()=>import("./MfaAuthEnrollmentFlowScreen-BvpXuxB_.mjs"),MfaAuthVerifyFlowScreen:()=>import("./MfaAuthVerifyFlowScreen-DPjZyHwa.mjs"),MfaEnrollmentFlowScreen:()=>import("./MfaEnrollmentFlowScreen-DPgKMnqU.mjs"),MoonpayStatusScreen:()=>import("./MoonpayStatusScreen-wMKsjZeB.mjs"),OAuthStatusScreen:()=>import("./OAuthStatusScreen-CdfCy4f8.mjs"),PasskeySelectSignupOrLogin:()=>import("./PasskeySelectSignupOrLogin-D0holwQw.mjs"),PasskeyStatusScreen:()=>import("./PasskeyStatusScreen-DivnXZ9b.mjs"),PasswordRecoveryScreen:()=>import("./PasswordRecoveryScreen-CEKYNkfv.mjs"),RecoveryOAuthScreen:()=>import("./RecoveryOAuthStatusScreen-qCund5Bo.mjs"),RecoverySelectionScreen:()=>import("./RecoverySelectionScreen-DtS8Li1j.mjs"),SendTransactionScreen:()=>import("./index-1-pMvnvM.mjs"),SetAutomaticRecoveryScreen:()=>import("./SetAutomaticRecoveryScreen-CeOfjTFf.mjs"),SignRequestScreen:()=>import("./SignRequestScreen-CDQDlvYS.mjs"),StandardSignAndSendTransactionScreen:()=>import("./StandardSignAndSendTransactionScreen-CZu-Rkry.mjs"),TelegramAuthScreen:()=>import("./TelegramAuthScreen-KbisIsL4.mjs"),TransferFromWalletScreen:()=>import("./TransferFromWalletScreen-BxLRlFlO.mjs"),UpdateEmailScreen:()=>import("./UpdateEmailScreen-B2sBFxiH.mjs"),UpdatePhoneScreen:()=>import("./UpdatePhoneScreen-C0NURgVx.mjs"),UserLimitReachedScreen:()=>import("./UserLimitReachedScreen-BhEvchBo.mjs"),WalletInterstitialScreen:()=>import("./WalletInterstitialScreen-CyS0BkG_.mjs")});function ia(e){Tt("configureMfa",e)}const sa=Ot((()=>({inProgressMfaFlow:void 0})));const oa=()=>{let{ready:e}=J(),{currentScreen:t}=mt(),[r,a]=s(null),[n,o]=s(!1),c=function(e){let[t,r]=s(!1),a=i(null),n=i(null),o=i(null);return l((()=>{if(a.current&&(clearTimeout(a.current),a.current=null),n.current&&(clearTimeout(n.current),n.current=null),e)o.current=Date.now(),a.current=setTimeout((()=>{r(!0)}),150);else if(null!==o.current){let e=Date.now()-o.current;if(e>=150){let t=Math.max(0,400-(e-150));n.current=setTimeout((()=>{r(!1),o.current=null}),t)}else a.current&&(clearTimeout(a.current),a.current=null),r(!1),o.current=null}return()=>{a.current&&clearTimeout(a.current),n.current&&clearTimeout(n.current)}}),[e]),t}(n);return l((()=>{if(!t)return a(null),void o(!1);o(!0),na[t]().then((r=>{(!t||e||r.default.isShownBeforeReady)&&(a((()=>r.default.component)),o(!1))})).catch((()=>{a(null),o(!1)}))}),[t,e]),{component:r,isLoading:c}};let la=/*#__PURE__*/d((()=>import("./MfaVerifyFlowScreen-CKTjuf1S.mjs"))),ca=/*#__PURE__*/d((()=>(e=>na[e]().then((e=>({default:e.default.component}))))("MfaAuthVerifyFlowScreen"))),da=()=>/*#__PURE__*/e(ga,{children:/*#__PURE__*/e(Mt,{})}),ua=()=>{let{currentScreen:a}=mt(),n=sa((e=>e.inProgressMfaFlow)),i=()=>sa.setState({inProgressMfaFlow:void 0}),{component:o,isLoading:d}=oa();return function(){let{isModalOpen:e}=J(),{headless:t}=X(),{currentScreen:r}=mt(),{status:a,execute:n,reset:i,enabled:o}=Yr(),[c,d]=s(!1);l((()=>{!e&&o&&i()}),[e,o,i]),l((()=>{r?na[r]().then((e=>{d(!!e.default.isCaptchaRequired)})).catch((()=>{d(!1)})):d(!1)}),[r]),l((()=>{e&&c&&!t&&"ready"===a&&o&&n()}),[e,c,t,a,o,n])}(),a||"txn"!==n?d?/*#__PURE__*/e(da,{}):o?
|
|
2
|
+
/*#__PURE__*/t(r,{children:[/*#__PURE__*/e(yt,{$if:!!n,children:/*#__PURE__*/e(c,{children:/*#__PURE__*/e(o,{})})}),/*#__PURE__*/t(c,{children:["txn"===n&&/*#__PURE__*/e(la,{onClose:i}),"auth"===n&&/*#__PURE__*/e(ca,{})]})]}):null:/*#__PURE__*/e(c,{children:/*#__PURE__*/e(la,{onClose:i})})},ha=()=>{let t=i(null);/*#__PURE__*/return e(ma,{style:{height:ft(t)},id:"privy-modal-content",children:/*#__PURE__*/e("div",{ref:t,children:/*#__PURE__*/e(ua,{})})})};const pa=({open:t})=>{let r=X(),{gracefulClosePrivyModal:a}=(()=>{let{closePrivyModal:e}=ht(),{onUserCloseViaDialogOrKeybindRef:t}=mt();return{gracefulClosePrivyModal:u((()=>{if(!t?.current)return e({shouldCallAuthOnSuccess:!1});t.current()}),[e,t])}})(),n=sa((e=>e.inProgressMfaFlow));return ia({onMfaRequired:()=>{r.mfa.noPromptOnMfaRequired||sa.setState({inProgressMfaFlow:"txn"})}}),r.render.standalone?/*#__PURE__*/e(Pt,{children:/*#__PURE__*/e(wa,{id:"privy-modal-content",children:/*#__PURE__*/e(ua,{})})}):/*#__PURE__*/e(Rt,{open:!(!t&&!n),id:"privy-dialog","aria-label":"log in or sign up","aria-labelledby":"privy-dialog-title",onClick:()=>a(),children:/*#__PURE__*/e(Pt,{children:/*#__PURE__*/e(ha,{})})})};let wa=wt.div`
|
|
3
|
+
display: flex;
|
|
4
|
+
flex-direction: column;
|
|
5
|
+
text-align: center;
|
|
6
|
+
font-size: 14px;
|
|
7
|
+
line-height: 20px;
|
|
8
|
+
width: 100%;
|
|
9
|
+
background: var(--privy-color-background);
|
|
10
|
+
padding: 0 16px;
|
|
11
|
+
`,ma=wt(wa)`
|
|
12
|
+
transition: height 150ms ease-out;
|
|
13
|
+
overflow: hidden auto;
|
|
14
|
+
scrollbar-width: none;
|
|
15
|
+
|
|
16
|
+
/* Ensure the modal gets pinned to the top if it ever gets too tall */
|
|
17
|
+
max-height: calc(100svh - 32px);
|
|
18
|
+
|
|
19
|
+
border-radius: var(--privy-border-radius-lg) var(--privy-border-radius-lg) 0 0;
|
|
20
|
+
box-shadow: var(--privy-shadow-sheet);
|
|
21
|
+
|
|
22
|
+
@media (min-width: 441px) {
|
|
23
|
+
box-shadow: var(--privy-shadow-modal);
|
|
24
|
+
border-radius: var(--privy-border-radius-lg);
|
|
25
|
+
}
|
|
26
|
+
`,ga=wt.div`
|
|
27
|
+
display: flex;
|
|
28
|
+
align-items: center;
|
|
29
|
+
justify-content: center;
|
|
30
|
+
min-height: 300px;
|
|
31
|
+
padding: 2rem;
|
|
32
|
+
`;function ya(t){let r=i(null),a=i(null);return l((()=>{a.current?.remove(),a.current=function({botUsername:e,scriptHost:t}){let r=document.createElement("script"),{origin:a}=new URL(t);return r.async=!0,r.src=`${a}/js/telegram-login.js`,r.setAttribute("data-telegram-login",e),r.setAttribute("data-request-access","write"),r.setAttribute("data-lang","en"),r}(t),r.current?.after(a.current)}),[t]),/*#__PURE__*/e("div",{ref:r,hidden:!0})}const fa=()=>{let{ready:e,wallets:t}=Ft();return l((()=>{if(!e)return;let r=t.map((e=>({address:e.address,connectorType:e.connectorType,walletClientType:e.walletClientType,connectedAt:e.connectedAt,id:e.meta.id})));Ue.put(Z,r)}),[e,t]),null},va=(e,t,r)=>{let{promise:a,reject:n}=nr(),i=setTimeout((()=>n(Error(`Timed out after ${t}ms`))),t);return r&&r.addEventListener("abort",(()=>clearTimeout(i)),{once:!0}),Promise.race([e,a]).finally((()=>clearTimeout(i)))},Aa=["error","invalid_request_arguments","wallet_not_on_device","invalid_recovery_pin","insufficient_funds","missing_or_invalid_mfa","mfa_verification_max_attempts_reached","mfa_timeout","twilio_verification_failed"];class Sa extends Error{constructor(e,t){super(t),this.type=e}}function Ta(e){let t=e.type;return"string"==typeof t&&Aa.includes(t)}function Ea(e){return Ta(e)&&"wallet_not_on_device"===e.type}function _a(e){return Ta(e)&&("invalid_recovery_pin"===e.type||"invalid_request_arguments"===e.type)}function ka(e){return!!Ta(e)&&"mfa_timeout"===e.type}function Ca(e){return!!Ta(e)&&"missing_or_invalid_mfa"===e.type}function ba(e){return!!Ta(e)&&"mfa_verification_max_attempts_reached"===e.type}function Ia(e){return!(!Ta(e)||!e.message.includes("code 429"))}function Ua(e){return!!function(e){let t=e.type;return"string"==typeof t&&"client_error"===t}(e)&&"MFA canceled"===e.message}async function Wa(e,t,r,a,n,i=!1){let s=i,o=async o=>{if(s&&t&&t.length>0){o===(i?0:1)?n("configureMfa","onMfaRequired",{mfaMethods:t}):a.current?.reject(new Sa("missing_or_invalid_mfa","MFA verification failed, retry."));let s=await new Promise(((e,t)=>{r.current={resolve:e,reject:t},setTimeout((()=>{let e=new Sa("mfa_timeout","Timed out waiting for MFA code");a.current?.reject(e),t(e)}),3e5)}));return await e(s)}return await e()},l=null;for(let e=0;e<4;e++)try{l=await o(e),a.current?.resolve(void 0);break}catch(e){if("missing_or_invalid_mfa"!==e.type)throw a.current?.resolve(void 0),e;s=!0}if(null===l){let e=new Sa("mfa_verification_max_attempts_reached","Max MFA verification attempts reached");throw a.current?.reject(e),e}return l}var Oa;let Pa=(Oa=0,()=>"id-"+Oa++);function Ra(e){return void 0!==e.error}let Na=new class{enqueue(e,t){this.callbacks[e]=t}dequeue(e,t){let r=this.callbacks[t];if(!r)throw Error(`cannot dequeue ${e} event: no event found for id ${t}`);switch(delete this.callbacks[t],e){case"privy:iframe:ready":case"privy:user-signer:sign":case"privy:wallets:add":case"privy:wallets:import":case"privy:wallets:import-seed-phrase":case"privy:wallets:set-recovery":case"privy:wallets:connect":case"privy:wallets:recover":case"privy:wallets:rpc":case"privy:wallet:create":case"privy:mfa:verify":case"privy:mfa:init-enrollment":case"privy:mfa:submit-enrollment":case"privy:mfa:unenroll":case"privy:mfa:clear":case"privy:auth:unlink-passkey":case"privy:farcaster:init-signer":case"privy:farcaster:sign":case"privy:solana-wallet:create":case"privy:delegated-actions:consent":return r;default:throw Error(`invalid wallet event type ${e}`)}}constructor(){this.callbacks={}}},Ma=new Map,Fa=(e,t)=>"bigint"==typeof t?t.toString():t;function La(e,t,r,a){let n=r.contentWindow;if(!n)throw Error("iframe not initialized");let i=((e,t)=>`${e}${JSON.stringify(t,Fa)}`)(e,t);if("privy:wallet:create"===e||"privy:wallets:add"===e||"privy:solana-wallet:create"===e){let e=Ma.get(i);if(e)return e}let s=new Promise(((r,i)=>{let s=Pa();Na.enqueue(s,{resolve:r,reject:i}),n.postMessage({id:s,event:e,data:t},a)})).finally((()=>{Ma.delete(i)}));return Ma.set(i,s),s}function xa(t){let r=Q(),a=i(null),n=i(t.mfaMethods),o=Et(),[c,d]=s(!1);return n.current=t.mfaMethods,l((()=>{if(!c)return;let e=a.current;if(!e)return;function r(e){var r;e&&e.origin===t.origin&&"string"==typeof(r=e.data).event&&/^privy:.+/.test(r.event)&&function(e){switch(e.event){case"privy:iframe:ready":let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data);case"privy:user-signer:sign":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:wallets:add":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:wallets:set-recovery":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:wallets:connect":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:wallets:recover":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:wallets:rpc":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:wallet:create":let r=Na.dequeue(e.event,e.id);return Ra(e)?r.reject(new Sa(e.error.type,e.error.message)):r.resolve(e.data);case"privy:wallets:import":let a=Na.dequeue(e.event,e.id);return Ra(e)?a.reject(new Sa(e.error.type,e.error.message)):a.resolve(e.data);case"privy:wallets:import-seed-phrase":let n=Na.dequeue(e.event,e.id);return Ra(e)?n.reject(new Sa(e.error.type,e.error.message)):n.resolve(e.data);case"privy:mfa:verify":let i=Na.dequeue(e.event,e.id);return Ra(e)?i.reject(new Sa(e.error.type,e.error.message)):i.resolve(e.data);case"privy:mfa:init-enrollment":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:mfa:submit-enrollment":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:mfa:unenroll":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:mfa:clear":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:auth:unlink-passkey":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:solana-wallet:create":let s=Na.dequeue(e.event,e.id);return Ra(e)?s.reject(new Sa(e.error.type,e.error.message)):s.resolve(e.data);case"privy:farcaster:init-signer":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:farcaster:sign":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}case"privy:delegated-actions:consent":{let t=Na.dequeue(e.event,e.id);return Ra(e)?t.reject(new Sa(e.error.type,e.error.message)):t.resolve(e.data)}default:console.warn("Unsupported wallet proxy method:",e)}}(e.data)}let i={signWithUserSigner:r=>Wa((a=>La("privy:user-signer:sign",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o),addWallet:r=>Wa((a=>La("privy:wallets:add",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o),setRecovery:r=>Wa((a=>La("privy:wallets:set-recovery",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o),connect:r=>Wa((a=>La("privy:wallets:connect",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o),recover:r=>Wa((a=>La("privy:wallets:recover",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o,!r.recoveryAccessToken&&!r.recoveryPassword&&!r.recoverySecretOverride),rpc:r=>Wa((a=>La("privy:wallets:rpc",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o),create:r=>La("privy:wallet:create",r,e,t.origin),importWallet:r=>La("privy:wallets:import",r,e,t.origin),importSeedPhrase:r=>La("privy:wallets:import-seed-phrase",r,e,t.origin),createSolana:r=>Wa((a=>La("privy:solana-wallet:create",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o),createDelegatedAction:r=>Wa((a=>La("privy:delegated-actions:consent",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o),verifyMfa:r=>Wa((a=>La("privy:mfa:verify",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o,!0),initEnrollMfa:r=>Wa((a=>La("privy:mfa:init-enrollment",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o),submitEnrollMfa:r=>Wa((a=>La("privy:mfa:submit-enrollment",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o),unenrollMfa:r=>Wa((a=>La("privy:mfa:unenroll",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o),clearMfa:r=>va(La("privy:mfa:clear",r,e,t.origin),15e3).catch((e=>{if(e instanceof Error&&e.message.includes("Timed out"))throw new Sa("mfa_timeout","MFA operation timed out");throw e})),unlinkPasskeyAccount:r=>Wa((a=>La("privy:auth:unlink-passkey",{...r,...a},e,t.origin)),n.current,t.mfaPromise,t.mfaSubmitPromise,o),initFarcasterSigner:r=>La("privy:farcaster:init-signer",r,e,t.origin),signFarcasterMessage:r=>La("privy:farcaster:sign",r,e,t.origin)};window.addEventListener("message",r);let s=new AbortController;return Oe((()=>La("privy:iframe:ready",{},e,t.origin)),{abortSignal:s.signal}).then((()=>t.onLoad(i)),((...e)=>{console.warn("Privy iframe failed to load: ",...e),t.onLoadFailed()})),()=>{window.removeEventListener("message",r),s.abort()}}),[c]),r?
|
|
33
|
+
/*#__PURE__*/e("iframe",{ref:a,width:"0",height:"0",style:{display:"none",height:"0px",width:"0px"},onLoad:()=>d(!0),src:ar({origin:t.origin,path:`/apps/${t.appId}/embedded-wallets`,query:{caid:t.clientAnalyticsId,client_id:t.appClientId}})}):null}const Da=({address:e,user:t})=>{let r=t.linkedAccounts.find((t=>"wallet"===t.type&&"privy"===t.walletClientType&&t.address===e));if(!r)throw new ve("Address to delegate is not associated with current user.");if(!_t(r))throw new ve(`useDelegatedActions is not supported for ${r.chainType} wallets. Use the useSessionSigners hook to provision server side access on behalf of your users.`);return{address:r.address,chainType:r.chainType,walletIndex:r.walletIndex??0}},ja=({address:e,user:t})=>{let r=t.linkedAccounts.find((t=>"wallet"===t.type&&"privy"===t.walletClientType&&t.address===e));if(!r)throw new ve("Address to delegate is not associated with current user.");let a=r.imported?r:ee(t);if(!a)throw new ve("Unable to determine root address for delegated address.");if(!_t(a))throw new ve(`useDelegatedActions is not supported for ${a.chainType} wallets. Use the useSessionSigners hook to provision server side access on behalf of your users.`);return{address:a.address,chainType:a.chainType,imported:a.imported}},qa=e=>e.linkedAccounts.filter((e=>"wallet"===e.type&&"privy"===e.walletClientType&&e.delegated));const Ha="popup-privy-oauth",Ka="PRIVY_OAUTH_USE_BROADCAST_CHANNEL";function Va({isCreatingWallet:e,skipSplashScreen:t}){return e?"EmbeddedWalletPasswordCreateScreen":t?"EmbeddedWalletPasswordUpdateScreen":"EmbeddedWalletPasswordUpdateSplashScreen"}function za({walletAction:e,availableRecoveryMethods:t,legacySetWalletPasswordFlow:r,isResettingPassword:a,showAutomaticRecovery:n}){return n?"SetAutomaticRecoveryScreen":r||1===t.length?Va({isCreatingWallet:"create"===e,skipSplashScreen:a}):"RecoverySelectionScreen"}function Ba(e){switch(e){case"user-passcode":return"PasswordRecoveryScreen";case"google-drive":case"icloud":return"RecoveryOAuthScreen";default:throw Error("Recovery method not supported")}}let Ga=["warpcast.com","farcaster.xyz"],$a=["farcaster","fid"];async function Ya(){if(void 0!==globalThis.window&&function(){if(void 0===globalThis.window)return!1;try{if(void 0===globalThis.document)return!1;let e=globalThis.window,t=globalThis.document,r=!1;if(t.referrer){let e=t.referrer.toLowerCase();r=Ga.some((t=>e.includes(t)))}let a=!!e.farcaster,n=new URLSearchParams(e.location.search),i=$a.some((e=>n.has(e)));return r||a||i}catch{return!1}}())try{await import("@farcaster/mini-app-solana"),console.debug("[Privy] Farcaster Solana wallet registered")}catch(e){console.debug("[Privy] Farcaster Solana wallet not available (package may not be installed)"),function(){try{return"undefined"!=typeof process&&"development"===process.env?.NODE_ENV}catch{return!1}}()&&e&&console.debug("[Privy] Farcaster Solana init error:",e)}}function Ja(e,t){if(e.onComplete)switch(t){case"external":e.fundingResult?e.onComplete({...e.fundingResult,fundingMethod:t}):e.onComplete({status:"cancelled",address:e.address,fundingMethod:t,amount:e.amount});break;case null:e.onComplete({status:"cancelled",address:e.address,fundingMethod:void 0,amount:e.amount});break;default:e.onComplete({status:"completed",address:e.address,fundingMethod:t,amount:e.amount})}}function Xa(e,t,r,a,n,i,s){return{...e,funding:e?.funding?{...e.funding,fundingResult:{status:t,address:e.funding.address,fundingMethod:void 0,transactionHash:r,amount:e.funding.amount,assetType:n?i?.symbol||"ETH":s.nativeCurrency.symbol||"ETH",metadata:{walletClientType:a}}}:void 0,solanaFundingData:e?.solanaFundingData,sendTransaction:e?.sendTransaction}}const Za=new Map([["FundingMethodSelectionScreen",null],["TransferFromWalletScreen","external"],["FundingAmountEditScreen","external"],["ConnectOnlyLandingScreen","external"],["ConnectOnlyStatusScreen","external"],["AwaitingExternalEthereumTransferScreen","external"],["AwaitingEvmToSolBridgingScreen","external"],["AwaitingSolToEvmBridgingScreen","external"],["ManualTransferScreen","manual"],["MoonpayStatusScreen","moonpay"],["CoinbaseOnrampStatusScreen","coinbase-onramp"]]);function Qa(e){let t=e.toLowerCase();return!!window?.webkit?.messageHandlers?.ReactNativeWebView||!!window?.ReactNativeWebView||["fbav","fban","instagram","snapchat","linkedinapp"].some((e=>t.includes(e)))}async function en({rpc:e,address:t}){return(await e.getBalance(t,{commitment:"confirmed"}).send()).value??0n}function tn(){return function(){if("undefined"!=typeof window)return window.Telegram}()?.WebApp?.initData||void 0}let rn={apple_oauth:"apple",custom_auth:"custom",discord_oauth:"discord",email:"email",farcaster:"farcaster",github_oauth:"github",google_oauth:"google",instagram_oauth:"instagram",linkedin_oauth:"linkedin",passkey:"passkey",phone:"sms",spotify_oauth:"spotify",telegram:"telegram",tiktok_oauth:"tiktok",line_oauth:"line",twitch_oauth:"twitch",twitter_oauth:"twitter",wallet:"siwe",smart_wallet:"siwe",cross_app:"privy:"};const an=e=>{if(te(e))return{displayName:e.replace("custom:",""),loginMethod:"custom"};let t=rn[e];return"wallet"===e||"phone"===e?{displayName:e,loginMethod:t}:{displayName:t,loginMethod:t}},nn=()=>{let e=X(),{user:t}=J(),{client:r,refreshSessionAndUser:a,walletProxy:n}=ht();return{migrate:u((async()=>{if("legacy-embedded-wallets-only"===e.embeddedWallets.mode)return{success:!0,migrated:!1};if(!t)throw new ve("User must be authenticated before migrating wallets",Se.MUST_BE_AUTHENTICATED);if(!n)throw new ve("Cannot connect to wallet proxy");let i=await r.getAccessToken();if(!i)throw new ve("User must be authenticated before migrating wallets",Se.MUST_BE_AUTHENTICATED);let s=t.linkedAccounts.filter((e=>"wallet"===e.type&&"privy"===e.walletClientType&&_t(e)&&!re(e)));if(0===s.length)return{success:!0,migrated:!1};let o=s.filter((e=>e.imported)),l=s.filter((e=>!e.imported));if(l.length>0){let e=l.find((e=>"ethereum"===e.chainType&&0===e.walletIndex))??l.find((e=>"solana"===e.chainType&&0===e.walletIndex))??null;if(!e)throw new ve("Primary wallet not found");let{entropyId:t,entropyIdVerifier:r}=Lt(e);try{await n.connect({accessToken:i,entropyId:t,entropyIdVerifier:r})}catch(a){if(!Ea(a)||"privy"!==e.recoveryMethod)throw a;await n.recover({accessToken:i,entropyId:t,entropyIdVerifier:r})}await n.createDelegatedAction({accessToken:i,rootWallet:{address:e.address,chainType:e.chainType,imported:!1},delegatedWallets:l.map((e=>({address:e.address,chainType:e.chainType,walletIndex:e.walletIndex??0})))})}for(let e of o){let{entropyId:t,entropyIdVerifier:r}=Lt(e);try{await n.connect({accessToken:i,entropyId:t,entropyIdVerifier:r})}catch(o){if(!Ea(o)||"privy"!==e.recoveryMethod)throw o;await n.recover({accessToken:i,entropyId:t,entropyIdVerifier:r})}await n.createDelegatedAction({accessToken:i,rootWallet:{address:e.address,chainType:e.chainType,imported:!0},delegatedWallets:[{address:e.address,chainType:e.chainType,walletIndex:e.walletIndex??0}]})}return await a(),{success:!0,migrated:!0}}),[e.embeddedWallets.mode,t,n,r,a])}},sn=({disabled:e})=>{let{migrate:t}=nn(),{user:r}=J(),{walletProxy:a}=ht(),n=i(!1),s=i(0);return l((()=>{e||s.current>2||n.current||!r||!a||(n.current=!0,s.current++,t().catch((e=>{console.debug("Unable to migrate wallets: ",e)})).finally((()=>{n.current=!1})))}),[r,a,e,t]),null},on=e=>({id:e.id,raw_id:e.rawId,response:{client_data_json:e.response.clientDataJSON,authenticator_data:e.response.authenticatorData,signature:e.response.signature,user_handle:e.response.userHandle},authenticator_attachment:e.authenticatorAttachment,client_extension_results:{app_id:e.clientExtensionResults.appid,cred_props:e.clientExtensionResults.credProps,hmac_create_secret:e.clientExtensionResults.hmacCreateSecret},type:e.type}),ln=()=>{let{ethereumEmbedded:e,ethereumExternal:t}=xt.getState();return[...e,...t]},cn=(e,t,r)=>!(ae(e).length>0||ne(e).length>0||!1===r||"all-users"!==t&&("users-without-wallets"!==t||dn(e).length));let dn=e=>e.linkedAccounts.filter((e=>"wallet"===e.type&&"ethereum"===e.chainType));const un=(e,t,r)=>!(ie(e).length>0||se(e).length>0||!1===r||"all-users"!==t&&("users-without-wallets"!==t||hn(e).length));let hn=e=>e.linkedAccounts.filter((e=>"wallet"===e.type&&"solana"===e.chainType));const pn=Symbol("wallet-creation-on-login-plugin");function wn(e){return{id:pn,shouldCreateWallet:e.shouldCreateWallet}}const mn=()=>{let{walletProxy:e,recoverEmbeddedWallet:t,setUser:r,refreshSessionAndUser:a,privy:n,client:i}=ht(),s=X();return{create:async({walletIndex:o,chainType:l,latestUser:c,recoveryMethod:d,recoveryPassword:u,recoveryAccessToken:h,idempotencyKey:p})=>{let w=c;w||(w=await a());let m=await i.getAccessToken();if(!w||!m||!e)throw Error("User must be authenticated before creating a Privy wallet");return await dr({appConfig:s,user:w,refreshSessionAndUser:a,privy:n,accessToken:m,proxy:e,recoverEmbeddedWallet:t,setUser:r,walletIndex:o,chainType:l,recoveryMethod:d,recoveryPassword:u,recoveryAccessToken:h,idempotencyKey:p})}}};function gn({subscribe:e,getExternalJwt:t,enabled:r=!0,onAuthenticated:a,onUnauthenticated:n,onError:o}){let{client:c,setAuthenticated:d,setUser:u,setIsNewUser:h}=ht(),{logout:p,authenticated:w,ready:m}=ur(),g=Ce(),{create:y}=mn(),f=X();if(!c)throw new ve("`useSyncJwtBasedAuthState` must be used within a `PrivyProvider`");let[v,A]=s({status:"initial"}),S=i(void 0),T=i(!1),E=i(t);l((()=>{E.current=t}),[t]);let _=i(a);l((()=>{_.current=a}),[a]);let C=i(n);l((()=>{C.current=n}),[n]);let b=i(o);l((()=>{b.current=o}),[o]);let I=i(y);l((()=>{I.current=y}),[y]);let U=i(f.embeddedWallets.ethereum.createOnLogin);l((()=>{U.current=f.embeddedWallets.ethereum.createOnLogin}),[f.embeddedWallets.ethereum.createOnLogin]);let W=i(f.embeddedWallets.solana.createOnLogin);l((()=>{W.current=f.embeddedWallets.solana.createOnLogin}),[f.embeddedWallets.solana.createOnLogin]);let O=i(u);l((()=>{O.current=u}),[u]);let P=i(h);l((()=>{P.current=h}),[h]);let R=i(d);return l((()=>{R.current=d}),[d]),l((()=>{if(!r||!m)return;let t=async()=>{if(!T.current){T.current=!0;try{A({status:"loading"});let e=await E.current();if(void 0!==S.current&&S.current===e)return void A({status:"done"});if(!e)return w&&(await p(),C.current?.()),S.current=e,void A({status:"done"});c.startAuthFlow(new k(e));let{user:t,isNewUser:r=!1}=await c.authenticate();if(!t)throw new ve("Failed to sync with custom auth provider");_.current?.({user:t,isNewUser:r}),O.current(t),P.current(r),R.current(!0);let a=g(pn)?.shouldCreateWallet({user:t}),n=cn(t,U.current,a),i=un(t,W.current,a);if(n&&i){let e=await I.current({chainType:"ethereum",walletIndex:0,latestUser:t});await I.current({chainType:"solana",walletIndex:0,latestUser:e.user})}else i?await I.current({chainType:"solana",walletIndex:0,latestUser:t}):n&&await I.current({chainType:"ethereum",walletIndex:0,latestUser:t});S.current=e,A({status:"done"})}catch(e){if(console.warn(e),await p().catch((()=>{})),C.current?.(),e instanceof Ee&&e.privyErrorCode===Se.LINKED_TO_ANOTHER_USER)return A({status:"initial"}),void setTimeout((()=>{t()}),0);b.current?.(e),A({status:"error",error:e})}finally{T.current=!1}}};return t(),e(t)}),[e,c,w,p,r,m,g]),r?{state:v}:{state:{status:"not-enabled"}}}let yn=Ot((()=>({jwtAuthFlowState:{status:"not-enabled"}})));function fn({customAuth:e}){let{jwtAuthFlowState:t}=function({customAuth:e}){let t=Et(),r=i(void 0),a=u((e=>(r.current=e,()=>{r.current=void 0})),[]),n=e?.getCustomAccessToken??(()=>Promise.resolve(void 0)),{state:s}=gn({enabled:!0===e?.enabled,subscribe:a,getExternalJwt:n,onAuthenticated:({user:e,isNewUser:r})=>{t("login","onComplete",{user:e,isNewUser:r,wasAlreadyAuthenticated:!1,loginMethod:"custom",loginAccount:null}),t("customAuth","onAuthenticated",{user:e})},onUnauthenticated:()=>{t("customAuth","onUnauthenticated")},onError:e=>{t("login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR)}});return l((()=>{(async()=>{e&&!e.isLoading&&r.current?.()})()}),[e?.enabled,e?.getCustomAccessToken,e?.isLoading]),{jwtAuthFlowState:s}}({customAuth:e});return l((()=>{yn.setState({jwtAuthFlowState:t})}),[t]),null}const vn=["eth_sign","eth_populateTransactionRequest","eth_signTransaction","personal_sign","eth_signTypedData_v4","csw_signUserOperation","secp256k1_sign"];class An extends Error{constructor(e,t,r){super(e),this.code=t,this.data=r}}class Sn extends Ar{async handleSendTransaction(e){if(!e.params||!Array.isArray(e.params))throw new An(`Invalid params for ${e.method}`,4200);let t=e.params[0];if(Sr(t))throw new An("Tempo (type 118) transactions are not supported via the EIP-1193 provider. Use useSendTransaction from @privy-io/react-auth/tempo instead.",4200);if(!await C()||!this.address)throw new An("Disconnected",4900);let r={...t,chainId:t.chainId??Pe(this.chainId)},{hash:a}=await Mn(r,{address:this.address});return a}async handleSignTransaction(e){if(!e.params||!Array.isArray(e.params))throw new An(`Invalid params for ${e.method}`,4200);let t=e.params[0];if(b(t))return this.handleSignTempoTransaction(t);if(!await C()||!this.address)throw new An("Disconnected",4900);let r={...t,chainId:t.chainId??Pe(this.chainId)},{signature:a}=await Nn(r,{address:this.address});return a}async handleSignTempoTransaction(e){let t,r=await C();if(!r||!this.address)throw new An("Disconnected",4900);let a=this.walletAccount;if(!a||!re(a))throw new An("Tempo (type 118) transactions are only supported on Unified embedded wallets",4200);let n=this.privyClient;if(!n)throw new An("Disconnected",4900);try{t=w(I(e))}catch(e){throw new An(e instanceof Error?e.message:"Invalid Tempo transaction",4200)}let i=await m(n,(async({message:e})=>this.walletProxy.signWithUserSigner({accessToken:r,message:e})),{chain_type:"ethereum",method:"eth_signTransaction",wallet_id:a.id,params:{transaction:t}});if("eth_signTransaction"!==i.method||!("signed_transaction"in i.data))throw new An("Unable to sign transaction",4200);return i.data.signed_transaction}handleSwitchEthereumChain(e){let t;if(!e.params||!Array.isArray(e.params))throw new An(`Invalid params for ${e.method}`,4200);if("string"==typeof e.params[0])t=e.params[0];else{if(!("chainId"in e.params[0])||"string"!=typeof e.params[0].chainId)throw new An(`Invalid params for ${e.method}`,4200);t=e.params[0].chainId}this.chainId=Number(t),this.publicClient=fr(this.chainId,this.chains,this.rpcConfig,{appId:this.appId}),this.emit("chainChanged",t)}async handlePersonalSign(e){if(!e.params||!Array.isArray(e.params))throw Error("Invalid params for personal_sign");let t=e.params[0],r=e.params[1],{signature:a}=await Pn({message:t},{address:r});return a}async handleSignedTypedData(e){if(!e.params||!Array.isArray(e.params))throw Error("Invalid params for eth_signTypedData_v4");let t=e.params[0],r="string"==typeof e.params[1]?JSON.parse(e.params[1]):e.params[1],a=e.params[2],{signature:n}=await Rn(Re(r),{address:t,signatureOptions:a?.signatureOptions,caip2:a?.caip2});return n}async handleEstimateGas(e){if(!e.params||!Array.isArray(e.params))throw Error("Invalid params for eth_estimateGas");if(delete e.params[0].gasPrice,delete e.params[0].maxFeePerGas,delete e.params[0].maxPriorityFeePerGas,Sr(e.params[0]))throw new An("Tempo (type 118) transactions are not supported via the EIP-1193 provider. Use useSendTransaction from @privy-io/react-auth/tempo instead.",4200);let t={...e.params[0],chainId:Pe(this.chainId)};return await this.publicClient.estimateGas({account:t.from??this.address,...Tr(t)})}async request(e){switch(console.debug("Embedded1193Provider.request() called with args",e),e.method){case"eth_accounts":case"eth_requestAccounts":return this.address?[this.address]:[];case"eth_chainId":return Pe(this.chainId);case"eth_estimateGas":return this.handleEstimateGas(e);case"eth_sendTransaction":return this.handleSendTransaction(e);case"eth_signTransaction":return this.handleSignTransaction(e);case"wallet_switchEthereumChain":return this.handleSwitchEthereumChain(e);case"personal_sign":return this.handlePersonalSign(e);case"eth_signTypedData_v4":return this.handleSignedTypedData(e)}if(!(e=>vn.includes(e))(e.method))return this.publicClient.request({method:e.method,params:e.params});{let t=await C();if(await Fn({address:this.address}),!t||!this.address)throw new An("Disconnected",4900);try{let r={method:e.method,params:e.params},a=this.walletAccount;return a&&re(a)?this.handleWalletApiRequest(r,a,t):(await this.walletProxy.rpc({accessToken:t,entropyId:this.entropyId,entropyIdVerifier:this.entropyIdVerifier,chainType:"ethereum",hdWalletIndex:this.walletIndex,request:r})).response.data}catch(e){throw console.error(e),new An("Disconnected",4900)}}}async handleWalletApiRequest(e,t,r){let a=this.privyClient;if(!a)throw new An("Disconnected",4900);if("secp256k1_sign"===e.method){let n=await m(a,(async({message:e})=>this.walletProxy.signWithUserSigner({accessToken:r,message:e})),{chain_type:"ethereum",method:"secp256k1_sign",wallet_id:t.id,params:{hash:e.params[0]}});if("secp256k1_sign"!==n.method)throw new An(`Invalid params for ${e.method}`,4200);return n.data.signature}throw new An(`Method not supported: ${e.method}`,4200)}constructor({walletProxy:e,address:t,entropyId:r,entropyIdVerifier:a,rpcConfig:n,chains:i,appId:s,chainId:o=1,walletIndex:l,privyClient:c,walletAccount:d}){super(),this.walletProxy=e,this.address=t,this.entropyId=r,this.entropyIdVerifier=a,this.chainId=o,this.rpcConfig=n,this.chains=i,this.publicClient=fr(o,this.chains,n,{appId:s}),this.rpcTimeoutDuration=Gt(n,"privy"),this.appId=s,this.walletIndex=l,this.privyClient=c,this.walletAccount=d}}const Tn=({...t}={})=>/*#__PURE__*/e("svg",{width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t,children:/*#__PURE__*/e("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.37126 11.0323C2.37126 12.696 3.90598 13.4421 5.40654 13.4468C8.91753 13.4468 12.8021 11.2897 12.7819 7.67984C12.7673 5.07728 10.3748 2.86167 7.54357 2.88296C4.8495 2.88296 2.21821 4.6411 2.21803 7.03628C2.21803 7.67951 2.58722 8.30178 3.55231 8.37184C2.74763 9.16826 2.37126 10.1225 2.37126 11.0323ZM7.55283 8.68012C8.11562 8.68012 8.57186 8.13217 8.57186 7.45624C8.57186 6.78032 8.11562 6.23237 7.55283 6.23237C6.99003 6.23237 6.53379 6.78032 6.53379 7.45624C6.53379 8.13217 6.99003 8.68012 7.55283 8.68012ZM10.4747 8.68012C11.0375 8.68012 11.4937 8.13217 11.4937 7.45625C11.4937 6.78032 11.0375 6.23237 10.4747 6.23237C9.91186 6.23237 9.45562 6.78032 9.45562 7.45625C9.45562 8.13217 9.91186 8.68012 10.4747 8.68012Z",fill:t.color||"var(--privy-color-foreground-3)"})});let En=[],_n={};const kn=()=>((()=>{let e=X(),{user:t}=J(),{walletProxy:r,privy:a}=ht(),{fundWallet:n}=vt(),[c,d]=s(_n),u=i(n);l((()=>{u.current=n}),[n]);let h=o((()=>t&&r?t.linkedAccounts.filter((e=>"wallet"===e.type&&"ethereum"===e.chainType&&null!==e.walletIndex&&"privy"===e.walletClientType)):En),[t,r]);l((()=>{if(h.length<1)return void xt.setState({ethereumEmbedded:[]});let n=er(),i=h.map((i=>{let s=c[i.address]??e.defaultChain.id,o=()=>{if(!t||!r)throw new ve("User not ready");let{entropyId:n,entropyIdVerifier:o}=Dt(t,i);return new Sn({walletProxy:r,address:i.address,entropyId:n,entropyIdVerifier:o,rpcConfig:e.rpcConfig,chains:e.chains,appId:e.id,chainId:s,walletIndex:i.walletIndex,privyClient:a,walletAccount:i})},l=n.find((e=>e.address===i.address&&e.connectorType===i.connectorType&&e.walletClientType===i.walletClientType))?.connectedAt??i.firstVerifiedAt?.getTime()??Date.now();return{fund:async e=>{await u.current({address:i.address,options:e})},type:"ethereum",chainId:`eip155:${s}`,switchChain:async e=>{d((t=>({...t,[i.address]:Number(e)})))},getEthereumProvider:async()=>o(),sign:async e=>{let t=o();return await t.request({method:"personal_sign",params:[He(e),i.address]})},address:i.address,connectedAt:l,walletClientType:"privy",connectorType:i.imported?"embedded_imported":"embedded",imported:i.imported,meta:{name:"Privy Wallet",icon:Tn,id:"io.privy.wallet"},isConnected:async()=>!0,disconnect:()=>{},linked:!0,loginOrLink:async()=>{throw new ve("Cannot link or login with embedded wallet")},unlink:async()=>{throw new ve("Cannot unlink with embedded wallet")},walletIndex:i.walletIndex}}));xt.setState((e=>e.ethereumEmbedded.length===i.length&&e.ethereumEmbedded.every(((e,t)=>{let r=i[t];return e.address===r.address&&e.chainId===r.chainId&&e.connectorType===r.connectorType&&e.connectedAt===r.connectedAt}))?{}:{ethereumEmbedded:i}))}),[h,e.chains,e.defaultChain.id,e.id,e.rpcConfig,c,a,t,r])})(),null);let Cn,bn,In,Un,Wn;const On=r=>{let a=r.client,n=r.privy,o=X();$t(Yt(o?.appearance.walletList??[]));let[c,d]=s(!1),h=sa((e=>e.inProgressMfaFlow)),[p,w]=s(!1),y=jt((e=>e.user)),[f,v]=s(void 0),[A,S]=s(!1),[T,E]=s(null),[_,k]=s(!1),[b,I]=s({status:"disconnected",connectedWallet:null,connectError:null,connector:null,connectRetry:dt}),[j,q]=s({status:"initial"}),[H,K]=s({status:"initial"}),[V,z]=s({status:"initial"}),[B,J]=s({status:"initial"}),[Z,ae]=s({status:"initial"}),[ie,me]=s({status:"initial"}),[ge,ye]=s(null),fe=Q(),{initializationError:Ae,setInitializationError:Ee}=oe(),[Ce,Ie]=s({}),[We,Oe]=s(null),Pe=i(null),Le=i(null),De=i(null),je=i(Ct),Ve=jt((e=>e.authenticated)),ze=u((e=>{qt(e),!e&&T&&na[T]().then((e=>{e.default.isUnauthenticatedScreem&&E(null)}))}),[T]);a.onStoreCustomerAccessToken=e=>{e&&bt(je,"accessToken","onAccessTokenGranted",{accessToken:e})},a.onDeleteCustomerAccessToken=()=>{Ht(null),ze(!1),bt(je,"accessToken","onAccessTokenRemoved")};let Be=i(null),Ge=i(null),$e=i(!1),Ye=({showWalletUIs:e})=>$e.current?$e.current:void 0!==e?!e:!o.embeddedWallets.showWalletUIs,Je=e=>{E(e),setTimeout((()=>{d(!!e)}),15)};l((()=>{ge&&Pe.current?.(ge)}),[ge]),l((()=>{if(o.externalWallets.solana.connectors)return o.externalWallets.solana.connectors.onMount(),()=>o.externalWallets.solana.connectors?.onUnmount()}),[o.externalWallets.solana.connectors]),l((()=>{Ya()}),[]),l((()=>{!p&&fe&&async function(){let e,t=Xe(),r=Ze(),n=xe();a.initializeConnectorManager({walletConnectCloudProjectId:o.walletConnectCloudProjectId,rpcConfig:o.rpcConfig,chains:o.chains,defaultChain:o.defaultChain,store:n,walletList:o.appearance.walletList,shouldEnforceDefaultChainOnConnect:o.shouldEnforceDefaultChainOnConnect,externalWalletConfig:o.externalWallets,appName:o.name??"Privy",walletChainType:o.appearance.walletChainType,setBaseAccountSdk:v,connectorsDebugLogs:o.connectorsDebugLogs}),a.connectors?.on("connectorInitialized",(()=>{e&&clearTimeout(e);let t=a.connectors.walletConnectors.length,r=a.connectors.walletConnectors.reduce(((e,t)=>e+(t.initialized?1:0)),0);r===t?Vt(!0):e=setTimeout((()=>{console.debug({message:"Unable to initialize all expected connectors before timeout",initialized:r,expected:t}),Vt(!0)}),1500)})),a.connectors?.initialize().then((()=>{nt()}));let i=await a.getAuthenticatedUser();if(zt(!0),r&&i){let e,t=a.authFlow;if(t.meta.telegramWebAppData?.user)try{e=String(JSON.parse(t.meta.telegramWebAppData.user).id)}catch{}let r=i.telegram?.telegramUserId;e&&r!==e&&(await a.logout(),a.startAuthFlow(t),i=null)}let s=!!i;return o.legal.requireUsersAcceptTerms&&i&&!i.hasAcceptedTerms?(await a.logout(),Et.setReadyToTrue(!0),void bt(je,"logout","onSuccess")):(o.customAuth?.enabled||(ze(!!i),i&&bt(je,"login","onComplete",{user:i,isNewUser:!1,wasAlreadyAuthenticated:!0,loginMethod:null,loginAccount:null}),Ht(i)),t?void(Ge.current=s?"link":"login"):r&&!s||Qe(!!i)&&!s?(Ge.current="login",Be.current="telegram",Ie({telegramAuthModalData:{seamlessAuth:!0}}),void Je("TelegramAuthScreen")):void Et.setReadyToTrue(!!i))}().catch((e=>{let t=e instanceof Error?e:Error(String(e));Ee(t),console.warn("Error initializing Privy provider: ",t)}))}),[a,We,p,fe,Ee]),l((()=>{a.connectors?.setWalletList(o.appearance.walletList)}),[o.appearance.walletList.join()]);let Xe=()=>{let e=qr();return e.inProgress&&e.popupFlow?window.opener.location.origin!==window.location.origin?void window.opener.postMessage({type:"PRIVY_OAUTH_ERROR",error:"Origins between parent and child windows do not match."}):"error"===e.authorizationCode?void window.opener.postMessage({type:"PRIVY_OAUTH_ERROR",error:"Something went wrong. Try again."}):void window.opener.postMessage({type:"PRIVY_OAUTH_RESPONSE",stateCode:e.stateCode,authorizationCode:e.authorizationCode}):(e.inProgress&&e.provider.startsWith("privy:")&&!e.popupFlow&&(new BroadcastChannel(Ha).postMessage({type:"PRIVY_OAUTH_RESPONSE",stateCode:e.stateCode,authorizationCode:e.authorizationCode}),window.close()),!!e.inProgress&&!!e.withPrivyUi&&(a.startAuthFlow(new M({...e,customOAuthRedirectUrl:o.customOAuthRedirectUrl})),Je("OAuthStatusScreen"),!0))},Ze=()=>{if(!o.loginConfig.telegramHasHmacCredentials)return;let e=function(){let e;return(e=function(){let e=new URLSearchParams(window.location.search),t=Number(e.get("id")||""),r=e.get("hash"),a=Number(e.get("auth_date")||""),n=e.get("first_name");if(t&&n&&a&&r)return Object.fromEntries(e.entries())}())?(ea(),{flowType:"login-url",authData:e}):(e=function(){let e=window.location.hash;if(!e||!e.startsWith("#tgWebAppData"))return;let t=Qr(e.replace("#tgWebAppData=","")),{user:r,auth_date:a,hash:n}=t;return r&&a&&n?t:void 0}())?(ea(),{flowType:"web-app",authData:e}):void 0}();if(!e||!o.loginMethods.telegram||!o.loginConfig.telegramAuthConfiguration?.seamlessAuthEnabled)return;let t=new Xr;return a.startAuthFlow(t),"login-url"===e.flowType&&(t.meta.telegramWebAppData=void 0,t.meta.telegramAuthResult=e.authData),"web-app"===e.flowType&&(t.meta.telegramAuthResult=void 0,t.meta.telegramWebAppData=e.authData),!0},Qe=e=>{if(!o.loginMethods.telegram||o.loginConfig.telegramHasHmacCredentials||!o.loginConfig.telegramSeamlessAuthEnabled||e)return!1;let t=tn();if(!t)return!1;let r=function(e){try{let t=e.split("&").filter((e=>e.length>0)).map((e=>{let t=e.indexOf("=");return-1===t?[decodeURIComponent(e),""]:[decodeURIComponent(e.slice(0,t)),decodeURIComponent(e.slice(t+1))]})),r=Object.fromEntries(t);return r.signature?r:null}catch{return null}}(t);if(!r)return!1;let n=new Xr;return a.startAuthFlow(n),n.meta.telegramAuthResult=void 0,n.meta.telegramWebAppData=r,!0},et=async(e,t,r,n)=>{if("solana_adapter"!==e)tt(await(a.connectors?.createEthereumWalletConnector({connectorType:e,walletClientType:t}))||null,t,r,n);else{let e=a.connectors?.findSolanaWalletConnector(t);if(!e)return;tt(e,t,r,n)}};async function tt(e,t,r,a){if(!e)return I({status:"disconnected",connectedWallet:null,connectError:new ke("Unable to connect to wallet."),connector:null,connectRetry:dt}),a?.(null,r);I({status:"disconnected",connectedWallet:null,connectError:null,connector:e,connectRetry:dt}),e instanceof x&&t&&await e.resetConnection(t),I({connector:e,status:"connecting",connectedWallet:null,connectError:null,connectRetry:()=>tt(e,t,r,a)});try{let t=await e.connect({showPrompt:!0});return t&&Jt(t)&&await St(t,o,(()=>{I((t=>({...t,connector:e,status:"switching_to_supported_chain",connectedWallet:null,connectError:null,connectRetry:dt})))})),I((e=>({...e,status:"connected",connectedWallet:t,connectError:null,connectRetry:dt}))),t&&bt(je,"connectWallet","onSuccess",{wallet:t}),a?.(t,r)}catch(e){return e instanceof Te?(console.warn(e.cause?e.cause:e.message),bt(je,"connectWallet","onError",e.privyErrorCode||Se.GENERIC_CONNECT_WALLET_ERROR)):(console.warn(e),bt(je,"connectWallet","onError",Se.UNKNOWN_CONNECT_WALLET_ERROR)),I((t=>({...t,status:"disconnected",connectedWallet:null,connectError:e}))),a?.(null,r)}}let rt=async(e,t,r)=>{if(null===e||!Jt(e))return;let n=new U(a,e,t,r);a.startAuthFlow(n)},at=async(e,t,r,n="plain")=>{let i=be(lt);if("transaction"===n&&!i)throw new ve("useSolanaLedger plugin hook must be mounted");if(null===e||!Qt(e))return;let s=new zr(e,a,t,r,n,i);a.startAuthFlow(s)},nt=async()=>{let e=new URLSearchParams(window.location.search),t=e.get("privy_connector"),r=e.get("privy_wallet_client"),n="true"===e.get("privy_connect_only");if(!t||!r)return;rr.debug("Mobile wallet return detected",{connectorType:t,wallet:r,connectOnly:n});let i=Zt({connectorType:t,walletClientType:r});if(!i||!i.isInstalled)return rr.warn("Wallet not installed on mobile return",{wallet:r,hasConfig:!!i,isInstalled:i?.isInstalled}),Je("LoginFailedScreen");if(!a.connectors)throw new ve("Connector not initialized");await Je(n?"ConnectOnlyStatusScreen":"ConnectionStatusScreen");let s=new URL(window.location.href);s.searchParams.delete("privy_connector"),s.searchParams.delete("privy_wallet_client"),s.searchParams.delete("privy_connect_only"),window.history.pushState({},"",s),rr.debug("Launching connection flow from mobile return",{wallet:r,connectorType:t,connectOnly:n}),et(t,r,void 0,n?void 0:"solana_adapter"===t?at:rt)};l((()=>{p&&Ve&&null===y&&a.getAuthenticatedUser().then(Ht)}),[p,Ve,y,a]);let it=e=>{if(!Ve)throw bt(je,"linkAccount","onError",Se.MUST_BE_AUTHENTICATED,{linkMethod:e}),new ve("User must be authenticated before linking an account.")},st=e=>{if(!Ve||!y)return!1;if("privy"===e.walletClientType)return!0;for(let t of y.linkedAccounts)if("wallet"===t.type&&t.address===e.address&&"privy"!==t.walletClientType)return!0;return!1},ct=()=>{xt.setState((e=>{let t=a.connectors?.wallets.filter(Jt).map((e=>({...e,linked:st(e),loginOrLink:async()=>{if(!await e.isConnected())throw new ve("Wallet is not connected");if("embedded"===e.connectorType&&"privy"===e.walletClientType)throw new ve("Cannot link or login with embedded wallet");(async e=>{let t;if(!a.connectors)throw new ve("Connector not initialized");t="ethereum"===e.type?a.connectors.findWalletConnector(e.connectorType,e.walletClientType)||null:a.connectors.findSolanaWalletConnector(e.walletClientType)||null,I((r=>({...r,connector:t,status:"connected",connectedWallet:e,connectError:null,connectRetry:dt}))),o.captcha.enabledProvider&&!Ve?(Ie({captchaModalData:{callback:t=>Jt(e)?rt(e,t):at(e,t),userIntentRequired:!1,onSuccessNavigateTo:"ConnectionStatusScreen",onErrorNavigateTo:"ErrorScreen"}}),await Je("CaptchaScreen")):(Jt(e)?await rt(e):await at(e),await Je("ConnectionStatusScreen"))})(e)},fund:async t=>{await Et.fundWallet(e.address,t)},unlink:async()=>{if(!Ve)throw new ve("User is not authenticated.");if("embedded"===e.connectorType&&"privy"===e.walletClientType)throw new ve("Cannot unlink an embedded wallet");Ht(await a.unlinkEthereumWallet(e.address))}})))||[];return Xt(e.ethereumExternal,t)?{}:{ethereumExternal:t}}))};l((()=>{ct()}),[y?.linkedAccounts,Ve,p]),l((()=>{if(p){if(!a.connectors)throw new ve("Connector not initialized");ct(),a.connectors.on("walletsUpdated",ct)}}),[p]),l((()=>{[...o.loginMethodsAndOrder?.primary??[],...o.loginMethodsAndOrder?.overflow??[]].filter((e=>e.startsWith("privy:"))).forEach((e=>a.getCrossAppProviderDetails(e.replace("privy:",""))))}),[!!a]);let ut=({transaction:e,sponsor:t,uiOptions:i,fundWalletConfig:s,address:l,signOnly:c})=>new Promise((async(d,u)=>{let{requesterAppId:h}=i||{},p=c?"signTransaction":"sendTransaction",w=l?de(y,l):ue(y);if(!w&&l){let r=he(ln(),l);if(r){if(t)return u(new ve("Cannot sponsor transactions for externally connected wallet.")),void bt(je,p,"onError",Se.TRANSACTION_FAILURE);try{let t=await r.getEthereumProvider(),a=e.data,n=be(g);n&&(a=n.appendDataSuffix({data:a}));let i={...e,from:l,chainId:e.chainId||Number(r.chainId.replace("eip155:","")),value:void 0!==e.value?He(e.value):void 0,data:a},s=await t.request({method:"sendTransaction"===p?"eth_sendTransaction":"eth_signTransaction",params:[i]});return bt(je,p,"onSuccess",{hash:s}),void d({hash:s})}catch(e){return bt(je,p,"onError",Se.TRANSACTION_FAILURE),void u(e??new tr("Unable to "+p+e))}}}if(!w)return bt(je,p,"onError",Se.EMBEDDED_WALLET_NOT_FOUND),void u(new ve("No embedded or connected wallet found for address."));if(!Ve||!y)return bt(je,p,"onError",Se.MUST_BE_AUTHENTICATED),void u(Error("User must be authenticated before signing with a Privy wallet"));let f=w.address,v=w.walletIndex??0,{entropyId:A,entropyIdVerifier:S}=Dt(y,w),T=he(ln(),f);if(!T)return bt(je,p,"onError",Se.EMBEDDED_WALLET_NOT_FOUND),void u(Error("Must have a Privy wallet before signing"));let E=await T.getEthereumProvider(),_=await E.request({method:"eth_chainId"}),k=e.chainId?Number(e.chainId):Wt(_);(e=>{if(!o.chains.map((e=>e.id)).includes(e))throw new ke(`Chain ID ${e} is not supported. It must be added to the config.supportedChains property of the PrivyProvider.`,Se.UNSUPPORTED_CHAIN_ID)})(k);let b=be(g),I=e.data;b&&!t&&(I=b.appendDataSuffix({data:I}));let U={...e,from:e.from??f,chainId:k,data:I},W=await C();if(!W||!ge)return bt(je,p,"onError",Se.EMBEDDED_WALLET_NOT_FOUND),void u(Error("Must have valid access token and Privy wallet to send transaction"));let O=fr(U.chainId,o.chains,o.rpcConfig,{appId:r.appId}),P=re(w),R=async({transactionRequest:e})=>{try{let r;if(!await Et.recoverEmbeddedWallet({address:f}))throw bt(je,p,"onError",Se.UNKNOWN_CONNECT_WALLET_ERROR),u(Error("Unable to connect to wallet")),Error("Unable to connect to wallet");if(t){let t=await(async({transactionRequest:e})=>{if(!P)throw new ve("Sponsoring is only supported for wallets on the TEE stack");if(c)throw new ve("Cannot sponsor a sign transaction request");let t=e=>null==e?void 0:He(e),r=await m(n,(async({message:e})=>await ge.signWithUserSigner({accessToken:W,requesterAppId:h,message:e})),{chain_type:"ethereum",method:"eth_sendTransaction",caip2:Fe(He(e.chainId)),sponsor:!0,...b?{experimental_data_suffix:b.suffix}:{},params:{transaction:{from:e.from,to:e.to,chain_id:t(e.chainId),data:Ke(e.data)?e.data?e.data:He(Uint8Array.from(e.data)):void 0,value:t(e.value)}},wallet_id:w.id});if(r.data&&"hash"in r.data)return r.data.hash;throw new tr("Unable to sign transaction")})({transactionRequest:e});return bt(je,"sendTransaction","onSuccess",{hash:t}),t}if(P){let t=e=>{if(null!=e)return Ke(e)?e:He(e)},a=await m(n,(async({message:e})=>await ge.signWithUserSigner({accessToken:W,requesterAppId:h,message:e})),{chain_type:"ethereum",method:"eth_signTransaction",params:{transaction:{from:e.from,to:e.to,nonce:t(e.nonce),chain_id:t(e.chainId),data:Ke(e.data)?e.data?e.data:He(Uint8Array.from(e.data)):void 0,value:t(e.value),type:e.type,gas_limit:t(e.gasLimit??e.gas),gas_price:t(e.gasPrice??e.gas),max_fee_per_gas:t(e.maxFeePerGas),max_priority_fee_per_gas:t(e.maxPriorityFeePerGas)}},wallet_id:w.id});if(!a.data||!("signed_transaction"in a.data))throw new tr("Unable to sign transaction");r=a.data.signed_transaction}else r=await async function({accessToken:e,entropyId:t,entropyIdVerifier:r,transactingWalletIndex:a,walletProxy:n,transactionRequest:i,requesterAppId:s}){return(await n.rpc({entropyId:t,entropyIdVerifier:r,hdWalletIndex:a??0,chainType:"ethereum",accessToken:e,requesterAppId:s,request:{method:"eth_signTransaction",params:[i]}})).response.data}({accessToken:W,entropyId:A,entropyIdVerifier:S,transactingWalletIndex:v,walletProxy:ge,transactionRequest:e,requesterAppId:h});if(c)return bt(je,"signTransaction","onSuccess",{signature:r}),r;{let e=await O.sendRawTransaction({serializedTransaction:r});return bt(je,"sendTransaction","onSuccess",{hash:e}),e}}catch(e){throw bt(je,p,"onError",Se.TRANSACTION_FAILURE),e}};if(Ye({showWalletUIs:i?.showWalletUIs}))try{let e=c||t?U:await D(U,O,U.from),r=await R({transactionRequest:e});c?bt(je,"signTransaction","onSuccess",{signature:r}):bt(je,"sendTransaction","onSuccess",{hash:r}),d({hash:r})}catch(e){bt(je,p,"onError",Se.TRANSACTION_FAILURE),u(e)}else{let e={connectingWalletAddress:f,recoveryMethod:w.recoveryMethod,entropyId:A,entropyIdVerifier:S,onCompleteNavigateTo:"SendTransactionScreen",isUnifiedWallet:P,onFailure:e=>{bt(je,p,"onError",Se.UNKNOWN_CONNECT_WALLET_ERROR),u(e)}},r=(e=>!!e.fundingConfig&&kt(e.fundingConfig.options).length>=1)(o)?Ut({address:f,appConfig:o,fundWalletConfig:s,methodScreen:"FundingMethodSelectionScreen",chainIdOverride:U.chainId,comingFromSendTransactionScreen:!0}):void 0;Ie({connectWallet:e,sendTransaction:{transactionRequest:U,transactingWalletIndex:v,transactingWalletAddress:f,entropyId:A,entropyIdVerifier:S,signOnly:c,scanTransaction:async()=>{let e=await D(U,O,U.from);return await a.scanTransaction({metadata:{domain:o.embeddedWallets.transactionScanning.domain},chain_id:e.chainId.toString(),request:{method:"eth_sendTransaction",params:[{from:e.from,to:e.to,value:e.value?.toString(),gas:e.gas?.toString(),gasPrice:e.gasPrice?.toString(),nonce:e.nonce?.toString(),data:e.data}]}})},getIsSponsored:async()=>!!t,onConfirm:({transactionRequest:e})=>R({transactionRequest:e}),onSuccess:e=>{c?bt(je,"signTransaction","onSuccess",{signature:e.hash}):bt(je,"sendTransaction","onSuccess",{hash:e.hash}),d(e)},onFailure:e=>{bt(je,p,"onError",Se.TRANSACTION_FAILURE),u(e)},uiOptions:i||{},fundWalletConfig:s,requesterAppId:h},funding:r}),Je("EmbeddedWalletConnectingScreen")}}));function ht(){return new Promise((async(e,t)=>{if(!y||0===y.mfaMethods.length)return e();let r=await C();if(!r||!ge)throw Error("Must have valid access token to enroll in MFA");try{await ge.verifyMfa({accessToken:r}),e()}catch(e){t(e)}}))}let wt=e=>e?.linkedAccounts.filter((e=>null!==e.latestVerifiedAt&&!("wallet"===e.type&&"privy"===e.walletClientType))).sort(((e,t)=>t.latestVerifiedAt.getTime()-e.latestVerifiedAt.getTime()))[0],mt=e=>{let t=y?.linkedAccounts.filter((t=>t.type===e)).length??0,{displayName:r,loginMethod:a}=an(e);if("passkey"===e&&t>=5||"passkey"!==e&&t>=1)throw bt(je,"linkAccount","onError",Se.CANNOT_LINK_MORE_OF_TYPE,{linkMethod:a}),new ve(`User already has an account of type ${r} linked.`)};async function ft({showAutomaticRecovery:e=!1,legacySetWalletPasswordFlow:t=!1}){E(null);let r=t?"setWalletPassword":"setWalletRecovery";if(!Ve||!y)throw bt(je,r,"onError",Se.MUST_BE_AUTHENTICATED),Error("User must be authenticated before adding recovery method to Privy wallet");let a=ee(y);if(!a||!ge)throw bt(je,r,"onError",Se.EMBEDDED_WALLET_NOT_FOUND),Error("Must have a Privy wallet to add a recovery method");let n=re(a);if(n)throw bt(je,r,"onError",Se.UNSUPPORTED_WALLET_TYPE),new ve("User owned wallet recovery is only supported for on-device execution and this app uses TEE execution. Learn more https://docs.privy.io/recipes/tee-wallet-migration-guide");try{await ht()}catch(e){throw bt(je,r,"onError",Se.MISSING_MFA_CREDENTIALS),e}return new Promise(((i,s)=>{let l="user-passcode"===a.recoveryMethod,c=za({walletAction:"update",availableRecoveryMethods:o.embeddedWallets.userOwnedRecoveryOptions,legacySetWalletPasswordFlow:t,isResettingPassword:l,showAutomaticRecovery:e}),{entropyId:d,entropyIdVerifier:u}=Dt(y),h={recoveryMethod:a.recoveryMethod,connectingWalletAddress:a.address,onCompleteNavigateTo:c,shouldForceMFA:!1,entropyId:d,isUnifiedWallet:n,entropyIdVerifier:u,onFailure:e=>{bt(je,r,"onError",Se.UNKNOWN_CONNECT_WALLET_ERROR),s(e)}};Ie({setWalletPassword:{onSuccess:e=>{bt(je,r,"onSuccess",{method:"user-passcode",wallet:e}),i(e)},onFailure:e=>{bt(je,r,"onError",Se.USER_EXITED_SET_PASSWORD_FLOW),s(e)},callAuthOnSuccessOnClose:!1},recoverWallet:{entropyId:d,entropyIdVerifier:u,onFailure:s},connectWallet:h,recoverySelection:{isInAccountCreateFlow:!1,isResettingPassword:l,shouldCreateEth:!1,shouldCreateSol:!1}}),Je("EmbeddedWalletConnectingScreen")}))}let vt={ready:p,authenticated:Ve,user:y,error:Ae,walletConnectors:a.connectors||null,connectWallet:e=>{e&&"target"in e&&e&&(e=void 0),Ie({externalConnectWallet:{walletList:e?.walletList&&e?.walletList.length>0?e.walletList:void 0,walletChainType:e?.walletChainType,description:e?.description,hideHeader:e?.hideHeader}}),Je("ConnectOnlyLandingScreen")},linkWallet:e=>(e&&"target"in e&&e&&(e=void 0),it("siwe"),Be.current="siwe",Ge.current="link",Ie({...Ce,externalConnectWallet:{...Ce.externalConnectWallet,walletList:e?.walletList,walletChainType:e?.walletChainType,description:e?.description||`Link a wallet to your ${o?.name} account`}}),Je("AuthenticateWithWalletScreen")),linkEmail:()=>{it("email"),mt("email"),Be.current="email",Ge.current="link",Je("LinkEmailScreen")},linkPhone:()=>{it("sms"),mt("phone"),Be.current="sms",Ge.current="link",Je("LinkPhoneScreen")},linkGoogle:async()=>{it("google"),mt("google_oauth"),Ge.current="link",await Et.initLoginWithOAuth("google")},linkTwitter:async()=>{it("twitter"),mt("twitter_oauth"),Ge.current="link",await Et.initLoginWithOAuth("twitter")},linkTwitch:async()=>{it("twitch"),mt("twitch_oauth"),Ge.current="link",await Et.initLoginWithOAuth("twitch")},linkDiscord:async()=>{it("discord"),mt("discord_oauth"),Ge.current="link",await Et.initLoginWithOAuth("discord")},linkGithub:async()=>{it("github"),mt("github_oauth"),Ge.current="link",await Et.initLoginWithOAuth("github")},linkSpotify:async()=>{it("spotify"),mt("spotify_oauth"),Ge.current="link",await Et.initLoginWithOAuth("spotify")},linkInstagram:async()=>{it("instagram"),mt("instagram_oauth"),Ge.current="link",await Et.initLoginWithOAuth("instagram")},linkTiktok:async()=>{it("tiktok"),mt("tiktok_oauth"),Ge.current="link",await Et.initLoginWithOAuth("tiktok")},linkLine:async()=>{it("line"),mt("line_oauth"),Ge.current="link",await Et.initLoginWithOAuth("line")},linkLinkedIn:async()=>{it("linkedin"),mt("linkedin_oauth"),Ge.current="link",await Et.initLoginWithOAuth("linkedin")},linkApple:async()=>{it("apple"),mt("apple_oauth"),Ge.current="link",await Et.initLoginWithOAuth("apple")},linkOAuth:async({provider:e})=>{it(e),mt(te(e)?e:`${e}_oauth`),Ge.current="link",await Et.initLoginWithOAuth(e)},linkPasskey:async e=>{it("passkey"),mt("passkey"),await Et.initLinkWithPasskey(),Ie({passkeyAuthModalData:{passkeySignupFlow:!1,name:e?.name}}),Je("LinkPasskeyScreen")},linkTelegram:async e=>{if(it("telegram"),mt("telegram"),!o.loginConfig.telegramHasHmacCredentials)throw new ve('linkTelegram requires HMAC bot credentials. Use linkWithOAuth("telegram") for OIDC-configured apps.');if(Ge.current="link",Be.current="telegram",e?.launchParams)if(e.launchParams.initDataRaw){let t=new Xr;a.startAuthFlow(t),t.meta.telegramAuthResult=void 0,t.meta.telegramWebAppData=Qr(e.launchParams.initDataRaw),Ie({telegramAuthModalData:{seamlessAuth:!0}}),Je("TelegramAuthScreen")}else bt(je,"linkAccount","onError",Se.INVALID_DATA,{linkMethod:"telegram"});else await Et.initLoginWithTelegram();Je("TelegramAuthScreen")},linkFarcaster:async()=>{it("farcaster"),mt("farcaster"),await Et.initLoginWithFarcaster(),Ge.current="link",Be.current="farcaster",Je("FarcasterConnectStatusScreen")},login:async e=>{e&&"target"in e&&e&&(e=void 0);let t="Attempted to log in, but user is already logged in. Use a `link` helper instead.";if(!p){let e=await new Promise((e=>{Oe((t=>e.bind(t)))}));if(Oe(null),e)return void console.warn(t)}!y||y.isGuest?(Ge.current="login",Ie({login:e}),Je("LandingScreen")):console.warn(t)},connectOrCreateWallet:async()=>{p||(await new Promise((e=>{Oe((()=>e))})),Oe(null)),Ve?console.warn("User must be unauthenticated to `connectOrCreateWallet`"):(Ge.current="connect-or-create",Je("ConnectOrCreateScreen"))},logout:async()=>{if(Ge.current=null,Be.current=null,y&&a.clearProviderAcccessTokens(y),E(null),await a.logout(),y&&ge)try{await ge.clearMfa({userId:y.id})}catch(e){}Ht(null),ze(!1),S(!1),K({status:"initial"}),z({status:"initial"}),q({status:"initial"}),J({status:"initial"}),ae({status:"initial"}),me({status:"initial"}),bt(je,"logout","onSuccess"),d(!1),Ue.del(pe),Ue.del(we(o.id))},getAccessToken:u((async()=>{let e=await a.getCustomerAccessToken();return e&&!Ve&&ze(!0),e}),[a,Ve]),setWalletRecovery:async e=>ft({legacySetWalletPasswordFlow:!1,showAutomaticRecovery:e?.showAutomaticRecovery??!1}),setWalletPassword:async()=>ft({legacySetWalletPasswordFlow:!0,showAutomaticRecovery:!1}),signMessage:(e,t)=>new Promise((async(r,i)=>{let{requesterAppId:s}=t?.uiOptions||{},o=e.message,l=t?.address?de(y,t.address):ue(y);if(!l&&void 0!==t?.address){let e=he(ln(),t.address);if(e)try{let t=await e.getEthereumProvider(),a=await t.request({method:"personal_sign",params:[o,e.address]});return bt(je,"signMessage","onSuccess",{signature:a}),void r({signature:a})}catch(e){return bt(je,"signMessage","onError",Se.UNABLE_TO_SIGN),void i(e??new tr("Unable to sign message"))}}if(!l)throw new ve("No embedded or connected wallet found for address.");if(!Ve||!y)return bt(je,"signMessage","onError",Se.MUST_BE_AUTHENTICATED),void i(Error("User must be authenticated before signing with a Privy wallet"));let c=l.address,d=l.walletIndex??0,{entropyId:u,entropyIdVerifier:h}=Dt(y,l),p=re(l);if("string"!=typeof o||o.length<1)return bt(je,"signMessage","onError",Se.INVALID_MESSAGE),void i(Error("Message must be a non-empty string"));let w=async()=>{let t;if(!Ve)throw Error("User must be authenticated before signing with a Privy wallet");let r=await C();if(!ge||!r||!await Et.recoverEmbeddedWallet({address:c}))throw Error("Unable to connect to wallet");if(a.createAnalyticsEvent({eventName:"embedded_wallet_sign_message_started",payload:{walletAddress:c,requesterAppId:s}}),p){let a=Ke(e.message,{strict:!0}),i=await m(n,(async({message:e})=>await ge.signWithUserSigner({accessToken:r,requesterAppId:s,message:e})),{chain_type:"ethereum",method:"personal_sign",params:a?{message:o.slice(2),encoding:"hex"}:{message:o,encoding:"utf-8"},wallet_id:l.id});if(!i.data||!("signature"in i.data))throw new tr("Unable to sign message");t=i.data.signature}else{let{response:e}=await ge.rpc({accessToken:r,entropyId:u,entropyIdVerifier:h,chainType:"ethereum",hdWalletIndex:d,requesterAppId:s,request:{method:"personal_sign",params:[o,c]}});t=e.data}return a.createAnalyticsEvent({eventName:"embedded_wallet_sign_message_completed",payload:{walletAddress:c,requesterAppId:s}}),t};if(Ye({showWalletUIs:t?.uiOptions?.showWalletUIs}))try{let e=await w();bt(je,"signMessage","onSuccess",{signature:e}),r({signature:e})}catch(e){bt(je,"signMessage","onError",Se.UNABLE_TO_SIGN),i(e??new tr("Unable to sign message"))}else Ie({signMessage:{method:"personal_sign",data:o,confirmAndSign:w,onSuccess:e=>{bt(je,"signMessage","onSuccess",{signature:e}),r({signature:e})},onFailure:e=>{bt(je,"signMessage","onError",Se.UNABLE_TO_SIGN),i(e)},uiOptions:t?.uiOptions||{}},connectWallet:{recoveryMethod:l.recoveryMethod,connectingWalletAddress:c,entropyId:u,entropyIdVerifier:h,onCompleteNavigateTo:"SignRequestScreen",isUnifiedWallet:p,onFailure:e=>{bt(je,"signMessage","onError",Se.UNKNOWN_CONNECT_WALLET_ERROR),i(e)}}}),Je("EmbeddedWalletConnectingScreen")})),signTypedData:(e,t)=>new Promise((async(r,i)=>{let{requesterAppId:s}=t?.uiOptions||{},o=t?.address?de(y,t.address):ue(y);if(!o&&t?.address){let a=he(ln(),t.address);if(a)try{let t=await a.getEthereumProvider(),n=Re(e),i=await t.request({method:"eth_signTypedData_v4",params:[a.address,JSON.stringify(n,((e,t)=>"bigint"==typeof t?t.toString():t))]});return bt(je,"signTypedData","onSuccess",{signature:i}),void r({signature:i})}catch(e){return bt(je,"signTypedData","onError",Se.UNABLE_TO_SIGN),void i(e??new tr("Unable to sign typed data "+e))}}if(!o)throw new ve("No embedded or connected wallet found for address.");if(!Ve||!y)return bt(je,"signTypedData","onError",Se.MUST_BE_AUTHENTICATED),void i(Error("User must be authenticated before signing with a Privy wallet"));let l=o.address,c=o.walletIndex??0,{entropyId:d,entropyIdVerifier:u}=Dt(y,o),h=re(o),p=Re(e),w=async()=>{let e;if(!Ve)throw Error("User must be authenticated before signing with a Privy wallet");let r=await C();if(!ge||!r||!await Et.recoverEmbeddedWallet({address:l}))throw Error("Unable to connect to wallet");if(a.createAnalyticsEvent({eventName:"embedded_wallet_sign_typed_data_started",payload:{walletAddress:l,requesterAppId:s}}),h){let{domain:a,types:i,primaryType:l,message:c}=p,d=await m(n,(async({message:e})=>await ge.signWithUserSigner({accessToken:r,requesterAppId:s,message:e})),{chain_type:"ethereum",method:"eth_signTypedData_v4",params:{typed_data:{domain:a,types:i,primary_type:l,message:c}},wallet_id:o.id,...t?.signatureOptions?{signature_options:t.signatureOptions}:{},...t?.caip2?{caip2:t.caip2}:{}});if(!d.data||!("signature"in d.data))throw new tr("Unable to sign message");e=d.data.signature}else{let{response:t}=await ge.rpc({accessToken:r,entropyId:d,entropyIdVerifier:u,chainType:"ethereum",hdWalletIndex:c,requesterAppId:s,request:{method:"eth_signTypedData_v4",params:[l,p]}});e=t.data}return a.createAnalyticsEvent({eventName:"embedded_wallet_sign_typed_data_completed",payload:{walletAddress:l,requesterAppId:s}}),e};if(Ye({showWalletUIs:t?.uiOptions?.showWalletUIs}))try{let e=await w();bt(je,"signTypedData","onSuccess",{signature:e}),r({signature:e})}catch(e){bt(je,"signTypedData","onError",Se.UNABLE_TO_SIGN),i(e??new tr("Unable to sign message"))}else Ie({signMessage:{method:"eth_signTypedData_v4",data:p,confirmAndSign:w,onSuccess:e=>{bt(je,"signTypedData","onSuccess",{signature:e}),r({signature:e})},onFailure:e=>{bt(je,"signTypedData","onError",Se.UNABLE_TO_SIGN),i(e)},uiOptions:t?.uiOptions||{}},connectWallet:{recoveryMethod:o.recoveryMethod,connectingWalletAddress:o.address,entropyId:d,isUnifiedWallet:h,entropyIdVerifier:u,onCompleteNavigateTo:"SignRequestScreen",onFailure:e=>{bt(je,"signMessage","onError",Se.UNKNOWN_CONNECT_WALLET_ERROR),i(e)}}}),Je("EmbeddedWalletConnectingScreen")})),sendTransaction:async(e,t)=>await ut({transaction:e,sponsor:t?.sponsor,uiOptions:t?.uiOptions,fundWalletConfig:t?.fundWalletConfig,address:t?.address,signOnly:!1}),signTransaction:async(e,t)=>({signature:(await ut({transaction:e,uiOptions:t?.uiOptions,address:t?.address,signOnly:!0})).hash}),promptMfa:ht,async init(e){switch(e){case"sms":return void await a.initMfaSmsVerification();case"passkey":return await a.initMfaPasskeyVerification();case"totp":return;default:throw Error(`Unsupported MFA method: ${e}`)}},async submit(e,t){switch(e){case"totp":case"sms":if("string"!=typeof t)throw new ve("Invalid MFA code");Le.current?.resolve({mfaMethod:e,mfaCode:t,relyingParty:window.origin}),await new Promise(((e,t)=>{De.current={resolve:e,reject:t}}));break;case"passkey":if("string"==typeof t)throw new ve("Invalid authenticator response");let r=await import("@simplewebauthn/browser"),a=on(await r.startAuthentication({optionsJSON:t}));Le.current?.resolve({mfaMethod:e,mfaCode:a,relyingParty:window.origin}),await new Promise(((e,t)=>{De.current={resolve:e,reject:t}}));break;default:throw Le.current?.reject(new ve("Unsupported MFA method")),new ve(`Unsupported MFA method: ${e}`)}},cancel(){Le.current?.reject(new ve("MFA canceled"))},async clear(){if(!y||!ge)throw Error("Must be authenticated to clear MFA");await ge.clearMfa({userId:y.id})},async initEnrollmentWithSms(e){let t=await C();if(!t||!ge)throw Error("Must have valid access token to enroll in MFA");await ge.initEnrollMfa({method:"sms",accessToken:t,phoneNumber:e.phoneNumber})},enrollInMfa:e=>new Promise(((t,r)=>{if(!e)return Et.closePrivyModal(),void t();o.mfa.noPromptOnMfaRequired&&console.warn("[Privy Warning] Triggering the 'showMfaEnrollmentModal' function when 'noPromptOnMfaRequired' is set to true is unexpected. If this is intentional, ensure that you are building custom UIs for MFA verification."),Ie({mfaEnrollmentFlow:{mfaMethods:o.mfa.methods,shouldUnlinkOnUnenrollMfa:o.passkeys.shouldUnlinkOnUnenrollMfa,onSuccess:t,onFailure:r}}),Je("MfaEnrollmentFlowScreen")})),async initEnrollmentWithTotp(){let e=await C();if(!e||!ge)throw Error("Must have valid access token to enroll in MFA");let t=await ge.initEnrollMfa({method:"totp",accessToken:e});return{secret:t.secret,authUrl:t.authUrl}},async submitEnrollmentWithSms(e){let t=await C();if(!t||!ge)throw Error("Must have valid access token to enroll in MFA");await ge.submitEnrollMfa({method:"sms",accessToken:t,phoneNumber:e.phoneNumber,code:e.mfaCode}),Ht(await a.getAuthenticatedUser())},async submitEnrollmentWithTotp(e){let t=await C();if(!t||!ge)throw Error("Must have valid access token to enroll in MFA");await ge.submitEnrollMfa({method:"totp",accessToken:t,code:e.mfaCode}),Ht(await a.getAuthenticatedUser())},async initEnrollmentWithPasskey(){},async submitEnrollmentWithPasskey({credentialIds:e},t={}){let r=await C();if(!r||!ge)throw Error("Must have valid access token to enroll in MFA");await ge.submitEnrollMfa({method:"passkey",accessToken:r,credentialIds:e,removeForLogin:t.removeForLogin}),Ht(await a.getAuthenticatedUser())},async unenroll(e,t={}){let r=await C();if(!r||!ge)throw Error("Must have valid access token to remove MFA");"passkey"===e?await ge.submitEnrollMfa({method:"passkey",accessToken:r,credentialIds:[],removeForLogin:t.removeForLogin}):await ge.unenrollMfa({method:e,accessToken:r});let n=await a.getAuthenticatedUser();if(Ht(n),n&&0===n.mfaMethods.length)try{await ge.clearMfa({userId:n.id})}catch(e){}},isModalOpen:c||!!h,mfaMethods:o.mfa.methods};Cn=vt.signMessage,bn=vt.signTypedData,Un=async(e,t)=>await ut({transaction:e,...t,signOnly:!1}),In=async(e,t)=>({signature:(await ut({transaction:e,...t,signOnly:!0})).hash});let Tt=async e=>{let t,r,n;k(!0),ae({status:"loading"}),a.startAuthFlow(new M({...e,customOAuthRedirectUrl:o.customOAuthRedirectUrl}));let i=Ue.get(Y),s=e.stateCode;if(i!==s)throw a.createAnalyticsEvent({eventName:"possible_phishing_attempt",payload:{provider:e.provider,storedStateCode:i??"",returnedStateCode:s??""}}),k(!1),new ve("Unexpected auth flow. This may be a phishing attempt.",void 0,Se.OAUTH_UNEXPECTED);if(null!==await a.getAccessToken())try{({user:t,oAuthTokens:n}=await a.link()),Be.current=e.provider;let r=wt(t);t&&r&&bt(je,"linkAccount","onSuccess",{user:t,linkMethod:Be.current,linkedAccount:r})}catch(t){throw k(!1),bt(je,"linkAccount","onError",t.privyErrorCode||Se.FAILED_TO_LINK_ACCOUNT,{linkMethod:e.provider}),t}else try{({user:t,isNewUser:r,oAuthTokens:n}=await a.authenticate()),Be.current=e.provider;let i=wt(t);t&&i&&void 0!==r&&bt(je,"login","onComplete",{user:t,isNewUser:r,wasAlreadyAuthenticated:!1,loginMethod:Be.current,loginAccount:i})}catch(e){throw k(!1),ae({status:"error",error:e}),bt(je,"login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),e}return Ht(t),S(r||!1),ze(!0),k(!1),ae({status:"done"}),n&&t&&bt(je,"oAuthAuthorization","onOAuthTokenGrant",{oAuthTokens:n,user:t}),t??void 0},Et={privy:n,setAuthenticated:ze,setUser:Ht,setIsNewUser:S,isNewUserThisSession:A,pendingTransaction:null,walletConnectionStatus:b,setWalletConnectionStatus:I,connectors:a.connectors?.walletConnectors??[],rpcConfig:o.rpcConfig,chains:o.chains,appId:r.appId,showFiatPrices:"native-token"!==o.embeddedWallets.priceDisplay.primary,clientAnalyticsId:a.clientAnalyticsId,hideWalletUIs:$e,isHeadlessSigning:u(Ye,[o.embeddedWallets.showWalletUIs]),emailOtpState:H,setEmailOtpState:K,smsOtpState:V,setSmsOtpState:z,oAuthState:Z,setOAuthState:ae,telegramAuthState:ie,setTelegramAuthState:me,siweState:B,setSiweState:J,isHeadlessOAuthLoading:_,baseAccountSdk:f,setBaseAccountSdk:v,nativeTokenSymbolForChainId:e=>o.chains.find((t=>t.id===Number(e)))?.nativeCurrency.symbol,initializeWalletProxy:async e=>{if(ge)return ge;let t=new Promise((e=>{Pe.current=e})),r=new Promise((t=>setTimeout((()=>t(null)),e))),a=await Promise.race([t,r]);return Pe.current=null,a},getAuthFlow:()=>a.authFlow,getAuthMeta:()=>a.authFlow?.meta,client:a,closePrivyModal:async(e={shouldCallAuthOnSuccess:!0,isSuccess:!1})=>{let t,n=p&&Ve&&y;if(n&&Be.current&&(t=wt(y)),"login"===Ge.current)e.shouldCallAuthOnSuccess&&n&&Be.current?bt(je,"login","onComplete",{user:y,isNewUser:A,wasAlreadyAuthenticated:!1,loginMethod:Be.current,loginAccount:t??null}):bt(je,"login","onError",Se.USER_EXITED_AUTH_FLOW);else if("link"===Ge.current&&t)e.isSuccess&&n&&Be.current?bt(je,"linkAccount","onSuccess",{user:y,linkMethod:Be.current,linkedAccount:t}):Be.current&&bt(je,"linkAccount","onError",Se.USER_EXITED_LINK_FLOW,{linkMethod:Be.current});else if("update"===Ge.current&&t)e.isSuccess&&n&&Be.current?bt(je,"update","onSuccess",{user:y,updateMethod:Be.current,updatedAccount:t}):Be.current&&bt(je,"update","onError",Se.USER_EXITED_UPDATE_FLOW,{linkMethod:Be.current});else if("connect-or-create"===Ge.current){let e=ln();e[0]?bt(je,"connectOrCreateWallet","onSuccess",{wallet:e[0]}):bt(je,"connectOrCreateWallet","onError",Se.USER_EXITED_AUTH_FLOW)}let i=T&&Za.has(T),s="ErrorScreen"===T&&Ce.errorModalData&&Za.has(Ce.errorModalData.previousScreen);if((i||s)&&Ce.funding){let e,t=Za.get(T)??null;if(s&&Ce.funding?.onError){let e=Ce.errorModalData?.error,t=e?.privyErrorCode||Se.UNKNOWN_FUNDING_ERROR,r=new ve(e?.message||"Funding failed",e,t);Ce.funding?.onError?.(r)}if("solana"===Ce.funding.chainType){let r=o.solanaRpcs[Ce.funding.chain];if(!r)return console.warn("Unable to load solana rpc, skipping balance"),bt(je,"fundSolanaWallet","onUserExited",{address:Ce.funding.address,fundingMethod:t,chain:Ce.funding.chain,balance:e}),d(!1),void Ja(Ce.funding,t);if(be(ot))try{e=await en({rpc:r.rpc,address:Ce.funding.address})}catch{console.error("Unable to pull wallet balance")}else console.warn("Unable to load solana plugin, skipping balance");bt(je,"fundSolanaWallet","onUserExited",{address:Ce.funding.address,fundingMethod:t,chain:Ce.funding.chain,balance:e})}else{let a=fr(Ce.funding.chain.id,o.chains,o.rpcConfig,{appId:r.appId});try{e=await a.getBalance({address:Ce.funding.address})}catch{console.error("Unable to pull wallet balance")}bt(je,"fundWallet","onUserExited",{address:Ce.funding.address,chain:Ce.funding.chain,fundingMethod:t,balance:e}),Ja(Ce.funding,t)}}Ie((e=>({...e,externalConnectWallet:{}}))),Ge.current=null,Be.current=null,S(!1),d(!1),I({status:"disconnected",connectedWallet:null,connector:null,connectError:null,connectRetry:()=>{}}),setTimeout((()=>{a.authFlow=void 0}),200)},openPrivyModal:Je,connectWallet:tt,initLoginWithWallet:async(e,t,r,a)=>{Jt(e)?(Be.current="siwe",rt(e,t,r)):(Be.current="siws",at(e,t,r,a))},loginWithWallet:async()=>{let e,t,r;if(!p)throw new _e;if(a.authFlow instanceof U?e="siwe":a.authFlow instanceof zr&&(e="siws"),!e)throw new ve("Must initialize SIWE/SIWS flow first.");if(null!==await a.getAccessToken())try{({user:t}=await a.link()),Be.current=e}catch(t){throw bt(je,"linkAccount","onError",t.privyErrorCode||Se.FAILED_TO_LINK_ACCOUNT,{linkMethod:e}),t}else try{({user:t,isNewUser:r}=await a.authenticate()),Be.current=e}catch(e){throw bt(je,"login","onError",e.privyErrorCode||Se.GENERIC_CONNECT_WALLET_ERROR),e}Ht(t||y||null),S(r||!1),ze(!0)},delegateWallet:async({address:e,chainType:t,showDelegationUIs:r})=>new Promise((async(a,n)=>{let i=await C();if(!Ve||!y||!i)throw new ve("User must be authenticated and have an embedded wallet to delegate actions.");if("solana"!==t&&"ethereum"!==t)throw new ve("Only Solana and Ethereum embedded wallets are supported for delegation and revocation.");let s=Et.walletProxy??await Et.initializeWalletProxy(15e3);if(!s)throw new ve("Wallet proxy not initialized.");if((({address:e,user:t})=>!!qa(t).find((t=>t.address===e)))({address:e,user:y}))return a();let o=de(y,e);if(!o)throw new ve("Address to delegate is not associated with current user.");if(re(o))throw new ve("useDelegatedActions is only supported for on-device execution and this app uses TEE execution. Use the useSessionSigners hook to provision server side access on behalf of your users. Learn more at https://docs.privy.io/recipes/tee-wallet-migration-guide");let l=Da({address:e,user:y}),c=ja({address:e,user:y}),d=async()=>{await s.createDelegatedAction({accessToken:i,rootWallet:c,delegatedWallets:[l]}),await Et.refreshSessionAndUser()};if(await Et.recoverEmbeddedWallet({address:e}),r)Ie({delegatedActions:{consent:{address:e,onDelegate:d,onSuccess:async()=>{a()},onError:async e=>{n(e)}}}}),Je("DelegatedActionsConsentScreen");else try{await d(),a()}catch(e){n(e)}})),revokeDelegatedWallets:async({showDelegationUIs:e})=>new Promise((async(t,r)=>{if(!Ve||!y)throw new ve("User must be authenticated and have an embedded wallet to revoke a delegated wallet.");let n=qa(y);if(0===n.length)throw new ve("User has no delegated wallets to revoke.");if(n.some(re))throw new ve("useDelegatedActions is only supported for on-device execution and this app uses TEE execution. Use the useSessionSigners hook to provision server side access on behalf of your users. Learn more at https://docs.privy.io/recipes/tee-wallet-migration-guide");let i=async()=>{await a.revokeDelegatedWallet(),await Et.refreshSessionAndUser()};if(e)Ie({delegatedActions:{revoke:{onRevoke:i,onSuccess:async()=>{t()},onError:async e=>{r(e)}}}}),Je("DelegatedActionsRevokeScreen");else try{await i(),t()}catch(e){r(e)}})),initLoginWithFarcaster:async(e,t)=>{let r=new Kr(e,t);a.startAuthFlow(r);try{Be.current="farcaster",await r.initializeFarcasterConnect()}catch(e){throw"login"===Ge.current?bt(je,"login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR):"link"===Ge.current&&bt(je,"linkAccount","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR,{linkMethod:"farcaster"}),e}},loginWithFarcaster:async()=>{let e,t;if(!p)throw new _e;if(!(a.authFlow instanceof Kr))throw new ve("Must initialize Farcaster flow first.");if(null!==await a.getAccessToken())try{({user:e}=await a.link()),Be.current="farcaster"}catch(e){throw bt(je,"linkAccount","onError",e.privyErrorCode||Se.FAILED_TO_LINK_ACCOUNT,{linkMethod:"farcaster"}),e}else try{({user:e,isNewUser:t}=await a.authenticate()),Be.current="farcaster"}catch(e){throw bt(je,"login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),e}Ht(e||null),S(t||!1),ze(!0)},async crossAppAuthFlow({appId:e,popup:t,action:r,disableSignup:n}){let i=`privy:${e}`;Be.current=i;let{url:s,stateCode:o,codeVerifier:l}=await hr({api:a.api,appId:e});if(!s)throw a.createAnalyticsEvent({eventName:"cross_app_auth_error",payload:{error:"Unable to open cross-app auth popup",appId:e}}),new ve("No authorization URL returned for cross-app auth.");try{let c=await async function({url:e,popup:t}){return t.location=e,new Promise(((e,r)=>{let a,n=setTimeout((()=>{r(new ve("Authorization request timed out after 2 minutes.")),i()}),12e4);function i(){t?.close(),window.removeEventListener("message",o)}let s=setInterval((()=>{t?.closed&&!a&&(i(),clearInterval(s),clearTimeout(n),r(new ve("User rejected request")))}),300);function o(t){t.data&&("PRIVY_OAUTH_RESPONSE"===t.data.type&&t.data.stateCode&&t.data.authorizationCode&&(clearTimeout(n),e(t.data),i()),"PRIVY_OAUTH_ERROR"===t.data.type&&(clearTimeout(n),r(new ve(t.data.error)),i()),t.data.type===Ka&&((a=new BroadcastChannel(Ha)).onmessage=o))}window.addEventListener("message",o)}))}({url:s,popup:t,provider:i}),d=c.stateCode,u=c.authorizationCode;if(d!==o)throw a.createAnalyticsEvent({eventName:"possible_phishing_attempt",payload:{provider:i,storedStateCode:o??"",returnedStateCode:d??""}}),new ve("Unexpected auth flow. This may be a phishing attempt.",void 0,Se.OAUTH_UNEXPECTED);let h=await pr({appId:e,codeVerifier:l,stateCode:d,authorizationCode:u,action:r,client:a,disableSignup:n});h&&a.storeProviderAccessToken(e,h);let p=await Et.refreshSessionAndUser();if(!p)throw new ve("Unable to update user");return a.createAnalyticsEvent({eventName:"cross_app_auth_completed",payload:{providerAppId:e}}),p}catch(e){throw a.createAnalyticsEvent({eventName:"cross_app_auth_error",payload:{error:e.toString(),provider:i}}),e}},async initLoginWithOAuth(e,t,r){if(Be.current=e,!Me())return void Je("InAppBrowserLoginNotPossible");if("google"===e&&!o.allowOAuthInEmbeddedBrowsers&&Qa(window.navigator.userAgent))return void Je("InAppBrowserLoginNotPossible");"twitter"===e&&window.opener&&window.opener.postMessage({type:Ka},"*"),Ue.del($),Ue.del(G);let n=new M({provider:e,disableSignup:!!r,withPrivyUi:!0,customOAuthRedirectUrl:o.customOAuthRedirectUrl});t&&n.addCaptchaToken(t),a.startAuthFlow(n);let i=await a.authFlow.getAuthorizationUrl();if(i&&i.url)if("twitter"===e&&qe&&(i.url=i.url.replace("x.com","twitter.com")),"chrome-extension:"===window.location.protocol&&F())try{let{privyOAuthCode:e,privyOAuthState:t}=await L(i.url);Je("OAuthStatusScreen"),n.meta.stateCode=t,n.meta.authorizationCode=e}catch(e){throw console.error("OAuth in chrome extension flow failed:",e),e}else window.location.assign(i.url)},async initLoginWithTelegram(e,t){if(!p)throw new _e;Be.current="telegram";let r=new Xr(e,t);a.startAuthFlow(r),me({status:"loading"}),r.meta.telegramWebAppData=void 0,r.meta.telegramAuthResult=await new Promise(((e,t)=>o.loginConfig.telegramAuthConfiguration?window.Telegram?void window.Telegram.Login.auth({bot_id:o.loginConfig.telegramAuthConfiguration.botId,request_access:!0},(r=>r?e(r):("link"===Ge.current?bt(je,"linkAccount","onError",Se.FAILED_TO_LINK_ACCOUNT,{linkMethod:"telegram"}):"login"===Ge.current?bt(je,"login","onError",Se.INVALID_CREDENTIALS):"update"===Ge.current&&bt(je,"login","onError",Se.FAILED_TO_UPDATE_ACCOUNT),t(new ve("Telegram auth failed or was canceled by the client"))))):t(new ve("Telegram was not initialized")):t(new ve("Telegram Auth configuration is not loaded"))))},async loginWithTelegram(e){let t,r;if(!(a.authFlow instanceof Xr))throw new ve("Must initialize Telegram flow before calling loginWithTelegram");a.authFlow.meta.captchaToken||=e?.captchaToken;let n=await C(),i=e?.intent||Ge.current;if("login"===i)try{let e=await a.authenticate();t=e.user,r=e.isNewUser,Be.current="telegram"}catch(e){throw bt(je,"login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),e}else{if("link"!==i)throw new ve("Unknown auth intent");try{t=(await a.link()).user,Be.current="telegram"}catch(e){throw bt(je,"linkAccount","onError",e.privyErrorCode||Se.FAILED_TO_LINK_ACCOUNT,{linkMethod:"telegram"}),e}}Ht(t),S(r||!1),ze(!0),me({status:"done"});let s=t?.linkedAccounts.find((({type:e})=>"telegram"===e))||null;return{user:t,isNewUser:r||!1,wasAlreadyAuthenticated:!!n,loginAccount:s}},async loginWithOAuth(e){let t,r,n;if(!(a.authFlow instanceof M))throw new ve("Must initialize OAuth flow before calling loginWithOAuth");let i=Ue.get(Y),s=a.authFlow.meta.stateCode;if(i!==s)throw a.createAnalyticsEvent({eventName:"possible_phishing_attempt",payload:{provider:e,storedStateCode:i??"",returnedStateCode:s??""}}),new ve("Unexpected auth flow. This may be a phishing attempt.",void 0,Se.OAUTH_UNEXPECTED);if(null!==await a.getAccessToken())try{let i=await a.link();t=i.user,r=!1,n=i.oAuthTokens,Be.current=e}catch(t){throw bt(je,"linkAccount","onError",t.privyErrorCode||Se.FAILED_TO_LINK_ACCOUNT,{linkMethod:e}),t}else try{let i=await a.authenticate();t=i.user,r=i.isNewUser,n=i.oAuthTokens,Be.current=e}catch(t){throw"login"===Ge.current?bt(je,"login","onError",t.privyErrorCode||Se.UNKNOWN_AUTH_ERROR):"link"===Ge.current&&bt(je,"linkAccount","onError",t.privyErrorCode||Se.FAILED_TO_LINK_ACCOUNT,{linkMethod:e}),t}return Ht(t),S(r||!1),ze(!0),n&&t&&bt(je,"oAuthAuthorization","onOAuthTokenGrant",{oAuthTokens:n,user:t}),n},passkeyAuthState:j,setPasskeyAuthState:q,async initSignupWithPasskey({captchaToken:e,withPrivyUi:t}){let r=new Vr({captchaToken:e,setPasskeyAuthState:q,hints:o.passkeys.registration?.hints});a.startAuthFlow(r),Ge.current="login";try{Be.current="passkey",q({status:"generating-challenge"}),await r.initRegisterFlow(t),q({status:"awaiting-passkey"})}catch(e){throw q({status:"error",error:e}),bt(je,"login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),e}},async signupWithPasskey(){let e,t;if(!p)throw new _e;if(!(a.authFlow instanceof Vr))throw new ve("Must initialize Passkey flow first.");if("passkey"!==Be.current){let e=new ve("Must init login with Passkey flow first.");throw q({status:"error",error:e}),e}let r=await C();try{Be.current="passkey",q({status:"awaiting-passkey"}),({user:e,isNewUser:t}=await a.authenticate())}catch(e){throw q({status:"error",error:e}),bt(je,"login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),e}Ht(e),S(t||!1),ze(!0),q({status:"done"});let n=e?.linkedAccounts.find((({type:e})=>"passkey"===e))||null;return{user:e,isNewUser:t||!1,wasAlreadyAuthenticated:!!r,loginAccount:n}},async initLoginWithPasskey({captchaToken:e,withPrivyUi:t}){let r=new Vr({captchaToken:e,setPasskeyAuthState:q,hints:void 0});a.startAuthFlow(r),Ge.current="login";try{Be.current="passkey",q({status:"generating-challenge"}),await r.initAuthenticationFlow(t),q({status:"awaiting-passkey"})}catch(e){throw q({status:"error",error:e}),bt(je,"login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),e}},async loginWithPasskey(e){let t,r;if(!p)throw new _e;if(!(a.authFlow instanceof Vr))throw new ve("Must initialize Passkey flow first.");if(e?.credentialIds&&(a.authFlow.meta.allowedCredentialsIds=e.credentialIds),"passkey"!==Be.current){let e=new ve("Must init login with Passkey flow first.");throw q({status:"error",error:e}),e}let n=await C();try{Be.current="passkey",q({status:"awaiting-passkey"}),({user:t,isNewUser:r}=await a.authenticate())}catch(e){throw q({status:"error",error:e}),bt(je,"login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),e}Ht(t),S(r||!1),ze(!0),q({status:"done"});let i=t?.linkedAccounts.find((({type:e})=>"passkey"===e))||null;return{user:t,isNewUser:r||!1,wasAlreadyAuthenticated:!!n,loginAccount:i}},async initLinkWithPasskey(e){let t=new Vr({captchaToken:e,hints:o.passkeys.registration?.hints});a.startAuthFlow(t),Ge.current="link",Be.current="passkey",q({status:"generating-challenge"});try{await t.initLinkFlow(),q({status:"awaiting-passkey"})}catch(e){throw bt(je,"linkAccount","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR,{linkMethod:"passkey"}),q({status:"error",error:e}),e}},async linkWithPasskey(e){let t;if(!p)throw new _e;if(!(a.authFlow instanceof Vr))throw new ve("Must initialize Passkey flow first.");if("passkey"!==Be.current)throw new ve("Must init login with Passkey flow first.");try{Be.current="passkey",a.authFlow.meta.name=e?.name,({user:t}=await a.link())}catch(e){throw bt(je,"linkAccount","onError",e.privyErrorCode||Se.FAILED_TO_LINK_ACCOUNT,{linkMethod:"passkey"}),e}return Ht(t||y||null),q({status:"done"}),t},async initLoginWithHeadlessOAuth(e,t,r){if(!Me())throw Error("It looks like you're using an in-app browser. To log in, please try again using an external browser.");if("google"===e&&!o.allowOAuthInEmbeddedBrowsers&&Qa(window.navigator.userAgent))throw Error("It looks like you're using an in-app browser. To log in, please try again using an external browser.");let n=new M({provider:e,withPrivyUi:!1,disableSignup:r??!1,customOAuthRedirectUrl:o.customOAuthRedirectUrl});t&&n.addCaptchaToken(t),ae({status:"loading"});let i=await a.startAuthFlow(n).getAuthorizationUrl();if(i?.url)if("chrome-extension:"===window.location.protocol&&F())try{let{privyOAuthCode:e,privyOAuthState:t}=await L(i.url);n.meta.stateCode=t,n.meta.authorizationCode=e,await Tt(n.meta)}catch(e){throw ae({status:"error",error:e}),e}else window.location.assign(i.url)},loginWithHeadlessOAuth:Tt,initLoginWithEmail:async({email:e,captchaToken:t,disableSignup:r,withPrivyUi:n})=>{let i=new O({email:e,captchaToken:t,disableSignup:r});a.startAuthFlow(i);try{Be.current="email",K({status:"sending-code"});let e=await i.sendCodeEmail({withPrivyUi:n});if(e?.ssoRedirectUrl)return window.location.href=e.ssoRedirectUrl,void await Ne(1e4);K({status:"awaiting-code-input"})}catch(e){throw K({status:"error",error:e}),"login"===Ge.current?bt(je,"login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR):"link"===Ge.current&&bt(je,"linkAccount","onError",e.privyErrorCode||Se.FAILED_TO_LINK_ACCOUNT,{linkMethod:"email"}),e}},initUpdateEmail:async({oldAddress:e,newAddress:t,captchaToken:r})=>{let n=new N(e,t,r);a.startAuthFlow(n);try{await n.sendCodeEmail({withPrivyUi:!0})}catch(e){throw bt(je,"update","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR,{linkMethod:Be.current}),e}},initUpdatePhone:async(e,t,r)=>{let n=new R(e,t,r);a.startAuthFlow(n);try{await n.sendSmsCode({withPrivyUi:!0})}catch(e){bt(je,"update","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR,{linkMethod:Be.current})}},initLoginWithSms:async({phoneNumber:e,captchaToken:t,disableSignup:r,withPrivyUi:n})=>{z({status:"sending-code"});let i=new P({phoneNumber:e,captchaToken:t,disableSignup:r});a.startAuthFlow(i);try{Be.current="sms",await i.sendSmsCode({withPrivyUi:n}),z({status:"awaiting-code-input"})}catch(e){throw z({status:"error",error:e}),"login"===Ge.current?bt(je,"login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR):"link"===Ge.current&&bt(je,"linkAccount","onError",e.privyErrorCode||Se.FAILED_TO_LINK_ACCOUNT,{linkMethod:"sms"}),e}},resendEmailCode:async()=>{await(a.authFlow?.sendCodeEmail({withPrivyUi:!0}))},resendSmsCode:async()=>{await(a.authFlow?.sendSmsCode({withPrivyUi:!0}))},loginWithCode:async e=>{let t,r;function n(e){a.authFlow instanceof O?K(e):a.authFlow instanceof P&&z(e)}if(n({status:"submitting-code"}),!p){let e=new _e;throw n({status:"error",error:e}),e}if(a.authFlow instanceof O)a.authFlow.meta.emailCode=e.trim();else{if(!(a.authFlow instanceof P)){let e=new ve("Must initialize a passwordless code flow first");throw n({status:"error",error:e}),e}a.authFlow.meta.smsCode=e.trim()}let i=await C();if("link"===Ge.current)try{({user:t}=await a.link())}catch(e){throw n({status:"error",error:e}),bt(je,"linkAccount","onError",e.privyErrorCode||Se.FAILED_TO_LINK_ACCOUNT,{linkMethod:Be.current}),e}else if("update"===Ge.current)try{({user:t}=await a.link())}catch(e){throw n({status:"error",error:e}),bt(je,"update","onError",e.privyErrorCode||Se.FAILED_TO_UPDATE_ACCOUNT,{linkMethod:Be.current}),e}else try{({user:t,isNewUser:r}=await a.authenticate())}catch(e){throw n({status:"error",error:e}),bt(je,"login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),e}let s=t||y;Ht(s||null),S(r||!1),ze(!0),n({status:"done"});let o=null;return a.authFlow instanceof O?o=s?.linkedAccounts.find((({type:e})=>"email"===e))||null:a.authFlow instanceof P&&(o=s?.linkedAccounts.find((({type:e})=>"phone"===e))||null),{user:s,isNewUser:r||!1,wasAlreadyAuthenticated:!!i,linkedAccount:o}},generateSiweMessage:async({address:e,chainId:t,captchaToken:r})=>{Ge.current=Ve?"link":"login",Be.current="siwe",J({status:"generating-message"});let n=await a.generateSiweNonce({address:e,captchaToken:r});return J({status:"awaiting-signature"}),W({address:e,chainId:t.replace("eip155:",""),nonce:n})},generateSiweMessageForSmartWallet:async({address:e,chainId:t})=>{let r=await a.generateSiweNonce({address:e});return W({address:e,chainId:t.replace("eip155:",""),nonce:r})},linkSmartWallet:async({message:e,signature:t,smartWalletType:r,smartWalletVersion:n})=>{let i;i=await a.linkSmartWallet({message:e,signature:t,smartWalletType:r,smartWalletVersion:n}),Ht((i=await Et.refreshSessionAndUser()??i)||y||null)},loginWithSiwe:async({message:e,signature:t,captchaToken:r,disableSignup:n,walletClientType:i,connectorType:s})=>{let o,l=null;try{if(y)throw Error("User already authenticated");let c=new U(a,void 0,r,n,{message:e,signature:t,walletClientType:i,connectorType:s});a.startAuthFlow(c),Be.current="siwe",Ge.current="login",J({status:"submitting-signature"});let d=await a.authenticate();if(({user:l,isNewUser:o}=d),!l)throw Error("Authentication failed - no user returned")}catch(e){throw bt(je,"login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),J({status:"error",error:e}),e}return Ht(l),S(o||!1),ze(!0),J({status:"done"}),Ge.current=null,Be.current=null,{user:l,isNewUser:o||!1}},linkWithSiwe:async({message:e,signature:t,chainId:r,walletClientType:n,connectorType:i})=>{let s;it("siwe");let o=null;try{J({status:"submitting-signature"}),s=await a.linkWithSiwe({message:e,signature:t,chainId:r,walletClientType:n,connectorType:i}),s=await Et.refreshSessionAndUser()??s,J({status:"done"}),(o=wt(s)||null)&&bt(je,"linkAccount","onSuccess",{user:s,linkMethod:"siwe",linkedAccount:o})}catch(e){throw bt(je,"linkAccount","onError",e.privyErrorCode||Se.FAILED_TO_LINK_ACCOUNT,{linkMethod:"siwe"}),Ge.current=null,Be.current=null,J({status:"error",error:e}),e}let l=s||y;return Ht(l||null),Ge.current=null,Be.current=null,{user:l,linkedAccount:o}},refreshSessionAndUser:async()=>{let e=await a.getAuthenticatedUser();return ze(!!e),Ht(e),e},walletProxy:ge,createAnalyticsEvent:({eventName:e,payload:t,timestamp:r})=>a.createAnalyticsEvent({eventName:e,payload:t,timestamp:r}),acceptTerms:async()=>{let e=await a.acceptTerms();return Ht(e),e},getUsdTokenPrice:e=>a.getUsdTokenPrice(e),getUsdPriceForSol:()=>a.getUsdPriceForSol(),getSplTokenMetadata:e=>a.getSplTokenMetadata(e),recoverEmbeddedWallet:async e=>new Promise((async(t,r)=>{if(!y)return void t(!0);let n=e?.address?de(y,e.address):ee(y)||ne(y).at(0)||se(y).at(0);if(!n||re(n))return void t(!0);let i=await C();if(!i||!ge||!n)return void r(Error("Must have valid access token and Privy wallet to recover wallet"));let{entropyId:s,entropyIdVerifier:o}=Dt(y,n);try{await ge.connect({accessToken:i,entropyId:s,entropyIdVerifier:o}),t(!0)}catch(e){if(Ea(e)&&"privy"===n.recoveryMethod){let e;a.createAnalyticsEvent({eventName:"embedded_wallet_pinless_recovery_started",payload:{walletAddress:n.address}});try{e=await ge.recover({entropyId:s,entropyIdVerifier:o,accessToken:i})}catch(e){return void r(e)}e.entropyId||r(Error("Unable to recover wallet")),a.createAnalyticsEvent({eventName:"embedded_wallet_recovery_completed",payload:{walletAddress:n.address}}),t(!0)}else Ea(e)&&"privy"!==n.recoveryMethod&&"privy-v2"!==n.recoveryMethod?(Ie((e=>({...e,recoverWallet:{entropyId:s,entropyIdVerifier:o,onFailure:r,onSuccess:()=>{t(!0)},onCompleteNavigateTo:e.createWallet?"EmbeddedWalletOnAccountCreateScreen":void 0},recoveryOAuthStatus:{provider:n.recoveryMethod,action:"recover",shouldCreateEth:!1,shouldCreateSol:!1,isInAccountCreateFlow:!!e.createWallet}}))),Je(Ba(n.recoveryMethod))):r(e)}})),setReadyToTrue:e=>{w(!0),We?.(e)},updateWallets:()=>ct(),fundWallet:async(e,t)=>{let r="FundingMethodSelectionScreen";return new Promise(((a,n)=>{Ie({funding:{...Ut({address:e,appConfig:o,fundWalletConfig:t,methodScreen:r,onComplete:a,onError:n})}}),Je(r)}))},openModal:Je,requestFarcasterSignerStatus:async e=>{let t=await C(),r=y?.linkedAccounts.find((e=>"wallet"===e.type&&"privy"===e.walletClientType));if(!t)throw Error("Must have valid access token to connect with Farcaster");if(!ge||!r)throw Error("Must have an embedded wallet to use Farcaster signers");if(!y?.farcaster?.fid)throw Error("Must have Farcaster account to use Farcaster signers");let n=await a.requestFarcasterSignerStatus(e);return"approved"===n.status&&Ht(await a.getAuthenticatedUser()||y||null),n},connectCoinbaseSmartWallet:async()=>{o.externalWallets.coinbaseWallet.config.preference={...o.externalWallets.coinbaseWallet.config.preference,options:"smartWalletOnly"};let e=a.connectors?.findWalletConnector("coinbase_wallet","coinbase_smart_wallet")||a.connectors?.findWalletConnector("coinbase_wallet","coinbase_wallet");if(e)return e.updateConnectionPreference("smartWalletOnly"),tt(e);await et("coinbase_wallet","coinbase_smart_wallet")},connectBaseAccount:async()=>{let e=a.connectors?.findWalletConnector("base_account","base_account");if(e)return tt(e);await et("base_account","base_account")},initiateAccountTransfer:async({nonce:e,account:t,accountType:r,externalWalletMetadata:n,telegramAuthResult:i,telegramWebAppData:s,farcasterEmbeddedAddress:o,oAuthUserInfo:l})=>{let c=await a.sendAccountTransferRequest({nonce:e,account:t,accountType:r,externalWalletMetadata:n,telegramAuthResult:i,telegramWebAppData:s,farcasterEmbeddedAddress:o,oAuthUserInfo:l});return Ht(c),c},inProgressAuthFlowRef:Ge,inProgressLoginOrLinkMethodRef:Be};Wn=Et.recoverEmbeddedWallet,Et.recoverEmbeddedWallet;let _t=a.authFlow instanceof Xr,{siteKey:Ot,enabledProvider:Pt}=o.captcha,Rt=!o.headless&&Pt&&!Ve&&(p||_t);/*#__PURE__*/return e(Kt.Provider,{value:!0,children:/*#__PURE__*/e(le.Provider,{value:vt,children:/*#__PURE__*/e(It.Provider,{value:je,children:/*#__PURE__*/e($r,{appId:o.id,captchaSiteKey:Ot,enabledCaptchaProvider:Pt,children:/*#__PURE__*/t(pt.Provider,{value:Et,children:[/*#__PURE__*/e(At,{children:/*#__PURE__*/t(gt,{data:Ce,setModalData:Ie,setInitialScreen:E,initialScreen:T,authenticated:Ve,open:c,children:[r.children,/*#__PURE__*/e(fn,{customAuth:o.customAuth}),Rt&&/*#__PURE__*/e(aa,{delayedExecution:!1}),/*#__PURE__*/e(fa,{}),/*#__PURE__*/e(kn,{}),/*#__PURE__*/e(sn,{disabled:o.embeddedWallets.disableAutomaticMigration}),/*#__PURE__*/e(Nt,{palette:o.appearance.palette||{}}),!o.render.standalone&&/*#__PURE__*/e(pa,{open:c})]})}),/*#__PURE__*/e(xa,{appId:r.appId,appClientId:r.clientId,clientAnalyticsId:a.clientAnalyticsId,origin:a.apiUrl,mfaMethods:y?.mfaMethods,mfaPromise:Le,mfaSubmitPromise:De,onLoad:ye,onLoadFailed:()=>null}),o.loginConfig.telegramHasHmacCredentials&&o.loginConfig.telegramAuthConfiguration&&/*#__PURE__*/e(yt,{$if:!0,children:/*#__PURE__*/e(ya,{scriptHost:r.apiUrl||ce,botUsername:o.loginConfig.telegramAuthConfiguration.botName})})]})})})})})},Pn=(e,t)=>Cn(e,t),Rn=(e,t)=>bn(e,t),Nn=(e,t)=>In(e,t),Mn=(e,t)=>Un(e,t),Fn=e=>Wn(e),Ln=({config:t,...r})=>{Bt(),function(){if("undefined"==typeof window)return;let e=["localhost","127.0.0.1"].includes(window.location.hostname),t="https:"===window.location.protocol||"chrome-extension:"===window.location.protocol;if(!e&&!t)throw new ve("Embedded wallet is only available over HTTPS")}(),function(e){if("string"!=typeof e||25!==e.length)throw new ve("Cannot initialize the Privy provider with an invalid Privy app ID")}(r.appId),j(r);let a=o((()=>new h({appId:r.appId,clientId:r.clientId,storage:Ue,baseUrl:r.apiUrl,sdkVersion:"react-auth:3.46.0"})),[]),n=q(),i=Object.assign({},t);/*#__PURE__*/return e(me,{client:a,legacyClient:n,appClientId:r.clientId,clientConfig:i,children:/*#__PURE__*/e(Ie,{configPlugins:t?.plugins,children:/*#__PURE__*/e(On,{...r,client:n,privy:a})})})};function xn(e,t=Date.now()){return e.expiresAt>t}function Dn(e){let t=crypto.randomUUID(),r=`PRIVY_CROSS_TAB_REFRESH_LOCK:${e}`;function a(){try{let e=localStorage.getItem(r);if(!e)return null;let t=JSON.parse(e);return"object"==typeof t&&null!==t&&"string"==typeof t.ownerTabId&&"string"==typeof t.requestId&&"number"==typeof t.startedAt&&"number"==typeof t.expiresAt&&function(e){let t=e.expiresAt-e.startedAt;return Number.isFinite(t)&&t>=0&&t<=1e4}(t)?t:null}catch{return"unavailable"}}async function n(e){return"undefined"==typeof window?"timed_out":await new Promise((t=>{let n=!1,i=e=>{n||(n=!0,window.removeEventListener("storage",s),window.clearTimeout(l),t(e))},s=t=>{t.key===r&&(()=>{let t=a();"unavailable"!==t?t?t.ownerTabId===e.ownerTabId&&t.requestId===e.requestId||i(xn(t)?"timed_out":"released"):i("released"):i("unavailable")})()},o=Math.min(1e4,Math.max(0,e.expiresAt-Date.now())),l=window.setTimeout((()=>{let t=a();i("unavailable"!==t?t&&(t.ownerTabId===e.ownerTabId&&t.requestId===e.requestId||xn(t))?"timed_out":"released":"unavailable")}),o);window.addEventListener("storage",s)}))}return{async withRefreshLock({onLeader:e,onFollowerReleased:i}){if("undefined"==typeof window)return await e();for(;;){let s=function(){let e=a();if("unavailable"===e)return"unavailable";if(e&&xn(e))return null;let n={ownerTabId:t,requestId:crypto.randomUUID(),startedAt:Date.now(),expiresAt:Date.now()+1e4};try{localStorage.setItem(r,JSON.stringify(n))}catch{return"unavailable"}let i=a();return"unavailable"===i?"unavailable":i?.ownerTabId===n.ownerTabId&&i.requestId===n.requestId?n:null}();if("unavailable"===s)return await e();if(s)try{return await e()}finally{!function(e){let t=a();if("unavailable"!==t&&t?.ownerTabId===e.ownerTabId&&t.requestId===e.requestId)try{localStorage.removeItem(r)}catch{}}(s)}let o=a();if("unavailable"===o)return await e();if(!o||!xn(o))continue;let l=await n(o);if("unavailable"===l)return await e();if("released"===l)return await i()}}}}let jn=null,qn=null,Hn=!1;function Kn(e){if(!e.channelId)throw Error("[Privy] Cross-tab sync plugin requires a channelId.");let t=Dn(e.channelId);return"undefined"==typeof BroadcastChannel||jn||((jn=new BroadcastChannel(`PRIVY_CROSS_TAB_CHANNEL:${e.channelId}`)).onmessage=e=>{e.data.eventId!==qn&&(qn=e.data.eventId,Hn=!0,Ht(e.data.user),qt(!!e.data.user),Hn=!1)},jt.subscribe(((e,t)=>{if(e.user===t.user||Hn)return;let r=crypto.randomUUID();qn=r,jn?.postMessage({user:e.user,eventId:r})}))),{id:H,withRefreshLock:t.withRefreshLock}}const Vn=()=>{let{privy:e}=a(pt);return e},zn=()=>{let{user:e}=J(),{walletProxy:t}=ht();return{recover:u((async r=>{if(!t)throw Error("Wallet proxy is not ready");let a=await C();if(!e||!a)throw new ve("User must be logged in before attempting to modify the recovery method.");let{entropyId:n,entropyIdVerifier:i}=Dt(e);try{await t.recover({entropyId:n,entropyIdVerifier:i,accessToken:a,...r})}catch{throw new ve("Unable to recover wallets")}}),[t,e])}};function Bn(){let{promptMfa:e,init:t,submit:r,cancel:n,clear:i,mfaMethods:s}=a(le);return{promptMfa:e,init:t,submit:r,cancel:n,clear:i,mfaMethods:s}}function Gn(){let{initEnrollmentWithSms:e,initEnrollmentWithTotp:t,initEnrollmentWithPasskey:r,submitEnrollmentWithSms:n,submitEnrollmentWithTotp:i,submitEnrollmentWithPasskey:s,unenroll:o,enrollInMfa:l}=a(le);return{initEnrollmentWithSms:e,initEnrollmentWithTotp:t,initEnrollmentWithPasskey:r,submitEnrollmentWithSms:n,submitEnrollmentWithTotp:i,submitEnrollmentWithPasskey:s,unenrollWithSms:()=>o("sms"),unenrollWithTotp:()=>o("totp"),unenrollWithPasskey:e=>o("passkey",e),showMfaEnrollmentModal:()=>l(!0),closeMfaEnrollmentModal:()=>l(!1)}}function $n(){let e=q();return e?e.getCustomerAccessToken():Promise.resolve(Ue.get(ge)||null)}const Yn=()=>{let{client:e,setAuthenticated:t,setUser:r}=ht();return o((()=>({init:async()=>{if(!e)throw new ve("Must initialize Privy client first.");let t=new Er;return e.startAuthFlow(t),await t.init()},login:async({fid:a,message:n,signature:i})=>{if(!e)throw new ve("Must initialize Privy client first.");if(!(e.authFlow instanceof Er))throw new ve("Must initialize Farcaster Mini App flow first.");e.authFlow.setAuthData({message:n,signature:i,fid:a});let{user:s}=await e.authenticate();if(!s)throw new ve("Failed to login with Farcaster V2");return r(s),t(!0),{user:s}}})),[e,r,t])};function Jn(){let{acceptTerms:e}=ht();return{acceptTerms:async()=>({user:await e()})}}const Xn=()=>o((()=>({getAccessTokenForProvider:({appId:e})=>{try{let t=Ue.get(ye(e));if("string"!=typeof t)return{token:null};{let r=new K(t);return r.isExpired()?(Ue.del(ye(e)),{token:null}):{token:r.value}}}catch(e){return console.error(e),{token:null}}}})),[]),Zn=e=>{Tt("login",e);let t=Yr(),r=Q(),{ready:a,user:n}=J(),{initLoginWithHeadlessOAuth:i,loginWithHeadlessOAuth:s,oAuthState:o,setOAuthState:c,isHeadlessOAuthLoading:d}=ht(),h=u((async e=>{try{if(t.enabled&&"success"!==t.status)throw new Gr(t.error,null,Se.CAPTCHA_FAILURE);return await i(e.provider,t.token,e.disableSignup)}catch(e){throw c({status:"error",error:e}),e}}),[i,t]),p=u((async()=>{let e=qr();try{if(!e.inProgress)throw Error("Cannot login with OAuth because no OAuth flow is in progress");let t=e.provider;if(te(t)){if(n&&n.linkedAccounts.some((e=>e.type===t)))return console.warn("User is already logged in with this OAuth provider"),n}else if(n&&t in n&&n[t])return console.warn("User is already logged in with this OAuth provider"),n;if(e.popupFlow)return}catch(e){throw c({status:"error",error:e}),e}try{return await s(e)}catch(e){throw c({status:"error",error:e}),e}finally{Hr()}}),[s]);return l((()=>{let e=qr();a&&r&&e.inProgress&&!e.withPrivyUi&&!e.popupFlow&&p().catch((()=>{}))}),[a,r]),{initOAuth:h,loading:d,state:o}};let Qn=e=>te(e)?e:`${e}_oauth`;const ei=()=>{let{ready:e,authenticated:t,user:r}=J(),{initLoginWithHeadlessOAuth:a,loginWithHeadlessOAuth:n,oAuthState:i,setOAuthState:s,isHeadlessOAuthLoading:o}=ht(),c=u((async({provider:e})=>{try{if(!t)throw new ve("User must be authenticated before linking an OAuth account.",void 0,Se.MUST_BE_AUTHENTICATED);let n=Qn(e);if(r?.linkedAccounts.some((e=>e.type===n)))throw new ve("User already has an account for this OAuth provider linked.",void 0,Se.CANNOT_LINK_MORE_OF_TYPE);return await a(e)}catch(e){throw s({status:"error",error:e}),e}}),[t,a,s,r]),d=u((async()=>{let e=qr();try{if(!e.inProgress)throw Error("Cannot login with OAuth because no OAuth flow is in progress");let t=e.provider;if(te(t)){if(r&&r.linkedAccounts.some((e=>e.type===t)))return console.warn("User is already logged in with this OAuth provider"),r}else{let e=Qn(t);if(r&&r.linkedAccounts.some((t=>t.type===e)))return console.warn("User is already logged in with this OAuth provider"),r}if(e.popupFlow)return}catch(e){throw s({status:"error",error:e}),e}try{return await n(e)}catch(e){throw s({status:"error",error:e}),e}finally{Hr()}}),[n]);return l((()=>{let r=qr();e&&t&&r.inProgress&&!r.withPrivyUi&&!r.popupFlow&&d().catch((()=>{}))}),[e]),{initOAuth:c,loading:o,state:i}},ti=e=>{let t=Yr(),{emailOtpState:r,setEmailOtpState:a,initLoginWithEmail:n,loginWithCode:i}=ht();return{sendCode:u((async({email:r,disableSignup:i})=>{try{if(!r)throw Error("Email required to send OTP code");let e=await Jr(t);return await n({email:r,captchaToken:e,disableSignup:i,withPrivyUi:!1})}catch(r){throw a({status:"error",error:r}),e?.onError?.(r.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),r}}),[n,t]),loginWithCode:u((async({code:t})=>{try{let{user:r,isNewUser:a,wasAlreadyAuthenticated:n,linkedAccount:s}=await i(t);e?.onComplete?.({user:r,isNewUser:a,wasAlreadyAuthenticated:n,loginMethod:"email",loginAccount:s})}catch(t){throw a({status:"error",error:t}),e?.onError?.(t.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),t}}),[i]),state:r}},ri=()=>{let e=Yr(),{user:t}=ur(),{client:r,loginWithCode:a,emailOtpState:n,setEmailOtpState:i,inProgressAuthFlowRef:s,inProgressLoginOrLinkMethodRef:o}=ht();return{sendCode:u((async({email:a})=>{try{if(!t)throw new ve("User must be authenticated before linking an account.",void 0,Se.MUST_BE_AUTHENTICATED);if(t?.linkedAccounts.some((e=>"email"===e.type)))throw new ve("User already has an email account linked.",void 0,Se.CANNOT_LINK_MORE_OF_TYPE);if(!a)throw Error("Email required to send OTP code");let n=await Jr(e);s.current="link",o.current="email",i({status:"sending-code"});let l=new O({email:a,captchaToken:n});r.startAuthFlow(l),await l.sendCodeEmail({email:a,captchaToken:n,withPrivyUi:!1}),i({status:"awaiting-code-input"})}catch(a){throw i({status:"error",error:a}),a}}),[t,e,r,s,o,i]),linkWithCode:u((async({code:e})=>{let{user:t}=await a(e);return{user:t}}),[a]),state:n}},ai=e=>{let t=Yr(),{initSignupWithPasskey:r,signupWithPasskey:a,passkeyAuthState:n,setPasskeyAuthState:i}=ht();return{signupWithPasskey:u((async()=>{try{let n=await Jr(t);await r({captchaToken:n,withPrivyUi:!1});let{user:i,isNewUser:s,wasAlreadyAuthenticated:o,loginAccount:l}=await a();e?.onComplete?.({user:i,isNewUser:s,wasAlreadyAuthenticated:o,loginMethod:"passkey",loginAccount:l})}catch(t){throw i({status:"error",error:t}),e?.onError?.(t.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),t}}),[a,t]),state:n}},ni=e=>{let t=Yr(),{initLoginWithPasskey:r,loginWithPasskey:a,passkeyAuthState:n,setPasskeyAuthState:i}=ht();return{loginWithPasskey:u((async n=>{try{let i=await Jr(t);await r({captchaToken:i,withPrivyUi:!1});let{user:s,isNewUser:o,wasAlreadyAuthenticated:l,loginAccount:c}=await a(n);e?.onComplete?.({user:s,isNewUser:o,wasAlreadyAuthenticated:l,loginMethod:"passkey",loginAccount:c})}catch(n){throw i({status:"error",error:n}),e?.onError?.(n.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),n}}),[a,t]),state:n}},ii=e=>{let{initLinkWithPasskey:t,linkWithPasskey:r,passkeyAuthState:a,setPasskeyAuthState:n}=ht();return{linkWithPasskey:u((async a=>{try{await t();let n=await r(a);if(!n)throw Error("Error, user not found");let i=n.linkedAccounts.filter((e=>"passkey"===e.type)).sort(((e,t)=>t.latestVerifiedAt.getTime()-e.latestVerifiedAt.getTime()))[0];e?.onSuccess?.({user:n,linkMethod:"passkey",linkedAccount:i})}catch(a){throw n({status:"error",error:a}),e?.onError?.(a.privyErrorCode||Se.UNKNOWN_AUTH_ERROR,{linkMethod:"passkey"}),a}}),[r]),state:a}},si=e=>{let t=Yr(),{smsOtpState:r,setSmsOtpState:a,initLoginWithSms:n,loginWithCode:i}=ht();return{sendCode:u((async({phoneNumber:r,disableSignup:i})=>{try{if(!r)throw Error("SMS required to send OTP code");let e=await Jr(t);return await n({phoneNumber:r,captchaToken:e,disableSignup:i,withPrivyUi:!1})}catch(r){throw a({status:"error",error:r}),e?.onError?.(r.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),r}}),[n,t]),loginWithCode:u((async({code:t})=>{try{let{user:r,isNewUser:a,wasAlreadyAuthenticated:n,linkedAccount:s}=await i(t);e?.onComplete?.({user:r,isNewUser:a,wasAlreadyAuthenticated:n,loginMethod:"sms",loginAccount:s})}catch(t){throw a({status:"error",error:t}),e?.onError?.(t.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),t}}),[i]),state:r}},oi=()=>{let e=Yr(),{user:t}=ur(),{client:r,loginWithCode:a,smsOtpState:n,setSmsOtpState:i,inProgressAuthFlowRef:s,inProgressLoginOrLinkMethodRef:o}=ht();return{sendCode:u((async({phoneNumber:a})=>{try{if(!t)throw new ve("User must be authenticated before linking an account.",void 0,Se.MUST_BE_AUTHENTICATED);if(t?.linkedAccounts.some((e=>"phone"===e.type)))throw new ve("User already has a phone account linked.",void 0,Se.CANNOT_LINK_MORE_OF_TYPE);if(!a)throw Error("Phone number required to send OTP code");let n=await Jr(e);s.current="link",o.current="sms",i({status:"sending-code"});let l=new P({phoneNumber:a,captchaToken:n});r.startAuthFlow(l),await l.sendSmsCode({phoneNumber:a,captchaToken:n,withPrivyUi:!1}),i({status:"awaiting-code-input"})}catch(a){throw i({status:"error",error:a}),a}}),[t,e,r,s,o,i]),linkWithCode:u((async({code:e})=>{let{user:t}=await a(e);return{user:t}}),[a]),state:n}},li=e=>{let{connectOrCreateWallet:t}=J();return Tt("connectOrCreateWallet",e),{connectOrCreateWallet:t}},ci=e=>{let t=Yr(),{siweState:r,setSiweState:a,linkWithSiwe:n,generateSiweMessage:i}=ht();return{generateSiweMessage:u((async({address:t,chainId:r})=>{try{if(!t||!r)throw Error("wallet address and chainId required to generate nonce");return await i({address:t,chainId:r}).then((e=>e))}catch(t){throw a({status:"error",error:t}),e?.onError?.(t.privyErrorCode||Se.UNKNOWN_AUTH_ERROR,{linkMethod:"siwe"}),t}}),[i]),linkWithSiwe:u((async({signature:r,message:i,chainId:s,walletClientType:o,connectorType:l})=>{try{if(t.enabled&&"success"!==t.status)throw new Gr(t.error,null,Se.CAPTCHA_FAILURE);let{user:a,linkedAccount:c}=await n({message:i,signature:r,chainId:s,walletClientType:o,connectorType:l});c&&e?.onSuccess?.({user:a,linkMethod:"siwe",linkedAccount:c})}catch(r){throw a({status:"error",error:r}),e?.onError?.(r.privyErrorCode||Se.UNKNOWN_AUTH_ERROR,{linkMethod:"siwe"}),r}}),[n,t.status]),state:r}},di=e=>{let t=Yr(),{siweState:r,setSiweState:a,client:n,generateSiweMessage:i,loginWithSiwe:s}=ht();return{generateSiweNonce:u((async r=>{try{let e=await Jr(t);a({status:"generating-message"});let i=await n.generateSiweNonce({address:r?.address,captchaToken:e});return a({status:"awaiting-signature"}),i}catch(r){throw a({status:"error",error:r}),e?.onError?.(r.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),r}}),[n,t]),generateSiweMessage:u((async({address:r,chainId:n})=>{try{let e=await Jr(t);return await i({address:r,chainId:n,captchaToken:e})}catch(r){throw a({status:"error",error:r}),e?.onError?.(r.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),r}}),[i,t]),loginWithSiwe:u((async({message:r,signature:n,disableSignup:i,walletClientType:o,connectorType:l})=>{try{let a=await Jr(t),{user:c,isNewUser:d}=await s({message:r,signature:n,captchaToken:a,disableSignup:i,walletClientType:o,connectorType:l});return e?.onComplete?.({user:c,isNewUser:d,wasAlreadyAuthenticated:!1,loginMethod:"siwe",loginAccount:null}),c}catch(r){throw a({status:"error",error:r}),e?.onError?.(r.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),r}}),[s,t]),state:r}},ui=()=>{let e=Yr(),{client:t,setAuthenticated:r,setUser:a,setIsNewUser:n}=ht(),{authenticated:i}=ur();return{generateSiwsMessage:u((async({address:r})=>{let a=await Jr(e),n=await t.generateSiwsNonce({address:r,captchaToken:a});return st({address:r,nonce:n})}),[e,t]),generateSiwsOffchainMessage:u((({message:e,address:t})=>ct({message:e,address:t})),[]),loginWithSiws:u((async({message:e,signature:s,disableSignup:o,walletClientType:l,connectorType:c,messageType:d="plain"})=>{if(i)throw Error("User already authenticated");let{user:u,isNewUser:h}=await t.authenticateWithSiws({message:e,signature:s,walletClientType:l,connectorType:c,mode:o?"no-signup":"login-or-sign-up",messageType:d});if(!u)throw Error("Authentication failed - no user returned");return a(u),n(h||!1),r(!0),u}),[i,t,r,a,n])}},hi=()=>{let e=Yr(),{client:t,setUser:r,refreshSessionAndUser:a}=ht(),{authenticated:n}=ur();return{generateSiwsMessage:u((async({address:r})=>{let a=await Jr(e),n=await t.generateSiwsNonce({address:r,captchaToken:a});return st({address:r,nonce:n})}),[e,t]),generateSiwsOffchainMessage:u((({message:e,address:t})=>ct({message:e,address:t})),[]),linkWithSiws:u((async({signature:i,message:s,walletClientType:o,connectorType:l,messageType:c="plain"})=>{if(!n)throw Error("User must be authenticated before linking");await Jr(e);let d=await t.linkWithSiws({message:s,signature:i,walletClientType:o,connectorType:l,messageType:c}),u=(e=>{if(!e)return;let t=e.linkedAccounts;return t&&0!==t.length?t[t.length-1]:void 0})(d=await a()??d)||null;return r(d||null),{user:d,linkedAccount:u}}),[n,e,t,a,r])}};function pi(){let{signTransaction:e}=a(le);return{signTransaction:e}}function wi(e){let{linkEmail:t,linkPhone:r,linkWallet:n,linkGoogle:i,linkApple:s,linkTwitter:o,linkTwitch:l,linkDiscord:c,linkGithub:d,linkLinkedIn:u,linkTiktok:h,linkLine:p,linkSpotify:w,linkInstagram:m,linkTelegram:g,linkFarcaster:y,linkPasskey:f,linkOAuth:v}=a(le);return Tt("linkAccount",e),{linkEmail:t,linkPhone:r,linkWallet:n,linkGoogle:i,linkApple:s,linkTwitter:o,linkTwitch:l,linkDiscord:c,linkGithub:d,linkLinkedIn:u,linkTiktok:h,linkLine:p,linkSpotify:w,linkInstagram:m,linkFarcaster:y,linkTelegram:g,linkPasskey:f,linkOAuth:v}}const mi=e=>{let{user:t}=J(),{loginWithCode:r,emailOtpState:a,setEmailOtpState:n,client:i,inProgressAuthFlowRef:s,inProgressLoginOrLinkMethodRef:o}=ht();return{state:a,sendCode:u((async({newEmailAddress:r})=>{try{if(!t?.email)throw Error("User is required to have an email address to update it.");let e=new N(t.email.address,r);i.startAuthFlow(e),await e.sendCodeEmail({withPrivyUi:!1})}catch(r){n({status:"error",error:r}),e?.onError?.(r.privyErrorCode||Se.UNKNOWN_AUTH_ERROR,{linkMethod:"email"})}}),[t?.email]),verifyCode:u((async({code:a})=>{try{if(!t?.email)throw Error("User is required to have an email address to update it.");s.current="update",o.current="email";let{user:n,linkedAccount:i}=await r(a);return e?.onSuccess?.({user:n,updateMethod:"email",updatedAccount:i}),{user:n}}catch(a){n({status:"error",error:a}),e?.onError?.(a.privyErrorCode||Se.UNKNOWN_AUTH_ERROR,{linkMethod:"email"})}}),[t?.email])}},gi=()=>{let{user:e}=J(),{loginWithCode:t,smsOtpState:r,setSmsOtpState:a,client:n,inProgressAuthFlowRef:i,inProgressLoginOrLinkMethodRef:s}=ht();return{state:r,sendCode:u((async({newPhoneNumber:t})=>{try{if(!e?.phone)throw Error("User is required to have a phone number to update it.");a({status:"sending-code"});let r=new R(e.phone.number,t);n.startAuthFlow(r),await r.sendSmsCode({withPrivyUi:!1}),a({status:"awaiting-code-input"})}catch(t){throw a({status:"error",error:t}),t}}),[n,a,e?.phone]),verifyCode:u((async({code:r})=>{try{if(!e?.phone)throw Error("User is required to have a phone number to update it.");i.current="update",s.current="sms";let{user:a}=await t(r);return{user:a}}catch(r){throw a({status:"error",error:r}),r}}),[i,s,t,a,e?.phone])}};const yi=()=>{let{fund:e}=ir(),{createDepositAddress:t}=sr(),{openModal:r,closePrivyModal:a}=ht(),{navigate:n}=mt();return o((()=>({addFunds:async i=>{if(!i.destination?.address)throw Error("Invalid input: expected destination.address");if(!i.destination?.chain)throw Error("Invalid input: expected destination.chain");if(!i.destination?.asset)throw Error("Invalid input: expected destination.asset");if(!jt.getState().user)throw Error("User must be authenticated to add funds");if(or.getState())throw Error("Existing funding flow in progress");if(0===i.fiat?.source?.assets?.length)throw Error("Invalid input: expected non-empty fiat.source.assets");let{resolve:s,reject:o,promise:l}=nr();if(!i.fiat&&!i.crypto){let e=Error("At least one of fiat or crypto config must be provided");return or.setState({error:e.message,onCancel:async()=>{lr(),r(null),await a({shouldCallAuthOnSuccess:!1,isSuccess:!1}),o(e)}}),r("AddFundsSelectionScreen"),await l}let c=async t=>{try{let r=await e({source:i.fiat?.source??{},destination:i.destination,environment:i.fiat?.environment,defaultAmount:i.fiat?.defaultAmount,showBackButton:!(!i.fiat||!i.crypto),paymentMethod:t});lr(),s({method:"fiat",status:r.status})}catch(e){h(e)}},d=async()=>{try{let e={destinationChain:i.destination.chain,destinationCurrency:i.destination.asset,destinationAddress:i.destination.address,refundAddress:i.crypto?.refundAddress,slippageBps:i.crypto?.slippageBps,showBackButton:!(!i.fiat||!i.crypto),entrySource:"unified_funding"};await t(e),lr(),s({method:"crypto",status:"completed"})}catch(e){h(e)}},u=()=>{or.setState({startFiat:c,startCrypto:d,onCancel:async()=>{lr(),r(null),await a({shouldCallAuthOnSuccess:!1,isSuccess:!1}),o(Error("User cancelled funding"))}})},h=e=>{if((e=>e instanceof cr)(e))return u(),void n("AddFundsSelectionScreen");lr(),o(e)};return i.fiat&&!i.crypto?c():i.crypto&&!i.fiat?d():(u(),r("AddFundsSelectionScreen")),await l}})),[a,t,e,n,r])},fi=()=>{let{connectCoinbaseSmartWallet:e}=ht();return{connectCoinbaseSmartWallet:e}},vi=()=>{let{connectBaseAccount:e}=ht();return{connectBaseAccount:e}},Ai=()=>{let{baseAccountSdk:e}=ht();return{baseAccountSdk:e}},Si=()=>{let{setModalData:e}=mt(),{openModal:t,privy:r,closePrivyModal:a}=ht(),{user:n}=J();return o((()=>({verify:async({standalone:i=!0}={standalone:!0})=>new Promise(((s,o)=>n?0===n.mfaMethods.length?s():(e((e=>({...e,mfaVerify:{onSuccess:async()=>{i?await a({shouldCallAuthOnSuccess:!1,isSuccess:!0}):sa.setState({inProgressMfaFlow:void 0}),s()},onFailure:async e=>{i?await a({shouldCallAuthOnSuccess:!1,isSuccess:!1}):sa.setState({inProgressMfaFlow:void 0}),o(e)},sendSmsCode:async()=>{throw Error("Not enabled")},verifySmsCode:async()=>{throw Error("Not enabled")},verifyTotpCode:async e=>{await r.fetchPrivyRoute(Cr,{body:{code:e}})},generateOptions:async()=>V((await r.fetchPrivyRoute(kr,{body:{}})).options),verifyPasskey:async e=>{let t=await import("@simplewebauthn/browser"),a=await t.startAuthentication({optionsJSON:e});await r.fetchPrivyRoute(_r,{body:{authenticator_response:on(a)}})}}}))),void(i?t("MfaAuthVerifyFlowScreen"):sa.setState({inProgressMfaFlow:"auth"}))):o(Error("Must be logged in to verify MFA"))))})),[r,e,t,a])},Ti=()=>{let e=X(),{setModalData:t}=mt(),{verify:r}=Si(),{openModal:a,privy:n,closePrivyModal:i,refreshSessionAndUser:s,setUser:l}=ht();return o((()=>({enroll:async o=>new Promise(((c,d)=>{t({mfaEnroll:{onSuccess:async e=>{await i({shouldCallAuthOnSuccess:!1,isSuccess:!0}),c(e)},onFailure:async e=>{await i({shouldCallAuthOnSuccess:!1,isSuccess:!1}),d(e)},onBack:o?.onBack?async()=>{await i({shouldCallAuthOnSuccess:!1,isSuccess:!1}),d(Error("User canceled MFA enrollment flow.")),o.onBack?.()}:void 0,verify:()=>r({standalone:!1}),shouldUnlinkOnUnenrollMfa:!0,mfaMethods:e.mfa.methods,sendSmsCode:async()=>{throw Error("Not enabled")},enrollSms:async()=>{throw Error("Not enabled")},unenrollSms:async()=>{throw Error("Not enabled")},generateTotpSecret:async()=>await n.fetchPrivyRoute(Wr,{body:{}}),enrollTotp:async e=>{await n.fetchPrivyRoute(Ur,{body:{code:e}});let t=await s();return l(t),t},unenrollTotp:async()=>{await n.fetchPrivyRoute(Ir,{body:{}});let e=await s();return l(e),e},enrollPasskey:async e=>{await n.fetchPrivyRoute(br,{body:{credential_ids:e,remove_for_login:!0}});let t=await s();return l(t),t}}}),a("MfaAuthEnrollmentFlowScreen")}))})),[n,t,a,i])},Ei=()=>{let{user:e}=J(),{client:t,refreshSessionAndUser:r,initializeWalletProxy:a}=ht(),n=Et(),i=X();return{importSeedPhrase:u((s=>((e,{mnemonic:t,chainType:r,additionalSigners:a})=>{if("on-device"===wr(e.appConfig))throw new ve("Seed phrase imports require TEE wallet execution mode");return mr(e,{chainType:r,additionalSigners:a},(({proxy:e,accessToken:n})=>e.importSeedPhrase({mnemonic:t,accessToken:n,chainType:r,additionalSigners:a})))})({getAccessToken:()=>t.getAccessToken(),user:e,initializeWalletProxy:a,refreshSessionAndUser:r,emitPrivyEvent:n,appConfig:i},s)),[e,t,r,a,n,i])}},_i=()=>{let{startCrossAppAuthFlow:e,unlinkCrossAppAccount:t,signMessageWithCrossAppWallet:r,signTypedDataWithCrossAppWallet:a,sendTransactionWithCrossAppWallet:n,signTransactionWithCrossAppWallet:i}=gr();return{loginWithCrossAppAccount:({appId:t})=>e({appId:t,action:"login"}),linkCrossAppAccount:({appId:t})=>e({appId:t,action:"link"}),unlinkCrossAppAccount:t,signMessage:r,signTypedData:a,sendTransaction:n,signTransaction:i}};function ki(){let e=X(),t=Et(),r=Ce(),{client:a,setUser:n,setAuthenticated:i,setIsNewUser:s,initializeWalletProxy:o}=ht(),{create:l}=yr();return{createGuestAccount:async()=>{if(!e.id||!a)throw Error("SDK not yet ready");a.startAuthFlow(new z(e.id));try{let c=await a.authenticate(),d=c.user,u=c.isNewUser??!1;if(!d)throw new ve("Unable to authenticate guest account");let h=await a.getAccessToken(),p=await o(fe);if(h&&p)try{let t=r(pn)?.shouldCreateWallet({user:d}),a=cn(d,e.embeddedWallets.ethereum.createOnLogin,t),i=un(d,e.embeddedWallets.solana.createOnLogin,t);a&&i?(d=(await l({chainType:"ethereum",latestUser:d})).user,d=(await l({chainType:"solana",latestUser:d})).user):i?d=(await l({chainType:"solana",latestUser:d})).user:a?d=(await l({chainType:"ethereum",latestUser:d})).user:n(d)}catch(e){n(d),console.warn("Unable to create embedded wallet for guest account")}return s(u),i(!0),t("login","onComplete",{user:d,isNewUser:u,wasAlreadyAuthenticated:!1,loginMethod:"guest",loginAccount:null}),d}catch(e){throw t("login","onError",e.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),e}}}}function Ci(e){let{setWalletRecovery:t}=a(le);return Tt("setWalletRecovery",e),{setWalletRecovery:t}}function bi(e){let{signMessage:t}=a(le);return Tt("signMessage",e),{signMessage:t}}const Ii=()=>{let{ready:e,wallets:t}=Ft(),{user:r}=J(),{rpcConfig:a,chains:n,appId:i}=ht();return{signAuthorization:u((async(s,o)=>{let l;if(!r)throw Error("User must be authenticated before signing with a Privy wallet");if(!e)throw Error("Wallets are not ready");let c=o?.address??ue(r)?.address??Or,d=t.find((e=>Pr(e.address)===Pr(c)));if(!d)throw Error("Signing wallet not found.");let u=s.chainId??Number(d.chainId.split(":")[1]);if(0===u)l={chainId:0,address:s.contractAddress,nonce:s.nonce??0};else{let e=n.find((e=>e.id===u));if(!e)throw Error("Error, chain not configured in PrivyProvider config");let t=Rr({account:c,chain:e,transport:Nr(vr(e,a,i))});l=await t.prepareAuthorization({...s})}let h=await d.getEthereumProvider(),p=await h.request({method:"secp256k1_sign",params:[Ve(l)]});return{...l,...Mr(p)}}),[e,t,r,n])}};function Ui(e){let{signTypedData:t}=a(le);return Tt("signTypedData",e),{signTypedData:t}}let Wi={base:["0x833589fcd6edb6e08f4c7c32d4f71b54bda02913"],"base-sepolia":["0x036cbd53842c5426634e7929541ec2318f3dcf7e"],avalanche:["0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e"],"avalanche-fuji":["0x5425890298aed601595a70ab815c96711a31bc65"],polygon:["0x3c499c542cef5e3811e1192ce70d8cc03d5c3359"],"polygon-amoy":["0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582"],abstract:["0x84a71ccd554cc1b02749b35d22f684cc8ec987e1"],"abstract-testnet":["0xe4c7fbb0a626ed208021ccaba6be1566905e2dfc"],sei:["0xe15fc38f6d8c56af07bbcbe3baf5708a2bf42392"],solana:["EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"],"solana-devnet":["4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU"]};function Oi(e,t,r){let a=(r??Wi)[t];return!!a&&"string"==typeof e&&a.some((t=>t.toLowerCase()===e.toLowerCase()))}const Pi=()=>{let{wallets:e}=Ft();return o((()=>({wrapFetchWithPayment:({walletAddress:t,fetch:r,maxValue:a=BigInt(1e5),allowedAssets:n,paymentRequirementsSelector:i=Fr,config:s,signatureOptions:o})=>{let l=t||e[0]?.address;if(!l)throw new xr("No wallet available for payment");let c=e.find((e=>Dr(e.address,l)));if(!c)throw new xr(`Wallet ${l} not found in connected wallets`);return async(e,t)=>{let l=await r(e,t);if(402!==l.status)return l;if(t?.__is402Retry)throw Error("Payment already attempted for this request");let{x402Version:d,accepts:u}=await l.json(),h=i(u,void 0,"exact");if(null!==n){let e=h.asset,t=h.network;if(!Oi(e,t,n))throw new xr(`Payment asset ${e} on ${t} is not in the allowed assets list`)}if(BigInt(h.maxAmountRequired)>a)throw new xr("Payment amount exceeds maximum allowed");let p=await B({wallet:c,signatureOptions:o}),w=await Lr(p,d,h,s),m={...t,headers:{...t?.headers||{},"X-PAYMENT":w,"Access-Control-Expose-Headers":"X-PAYMENT-RESPONSE"},__is402Retry:!0};return await r(e,m)}}})),[e])},Ri=()=>{let{isModalOpen:e}=a(le);return{isOpen:e}};function Ni(e){let{getAccessToken:t}=a(le);return Tt("accessToken",e),{getAccessToken:t}}function Mi(e){let{authenticated:t,user:r}=J(),{initLoginWithOAuth:a}=ht(),n=Et();return Tt("oAuthAuthorization",e),{reauthorize:e=>Fi(t,r,a,n,e.provider)}}let Fi=async(e,t,r,a,n)=>{if(!e)throw a("linkAccount","onError",Se.MUST_BE_AUTHENTICATED,{linkMethod:n}),new ve("User must be authenticated before linking an account.");if(!t?.linkedAccounts.some((e=>e.type.includes(n))))throw new ve(`OAuth account of type ${n} not linked to the account.`);await r(n)};function Li(e){let{client:t}=ht(),[r,a]=s({status:"initial"});return{linkWithCustomJwt:u((async r=>{try{a({status:"initial"}),t.startAuthFlow(new k(r)),a({status:"loading"});let{user:n}=await t.link();if(!n)throw Error("Error, user not found");let i=n.linkedAccounts.filter((e=>"custom_auth"===e.type)).sort(((e,t)=>t.latestVerifiedAt.getTime()-e.latestVerifiedAt.getTime())).at(0);return a({status:"done"}),e?.onSuccess?.({user:n,linkMethod:"custom",linkedAccount:i}),{user:n}}catch(r){throw a({status:"error",error:r}),e?.onError?.(r.privyErrorCode||Se.UNKNOWN_AUTH_ERROR,{linkMethod:"custom"}),r}}),[t.startAuthFlow,t.link]),state:r}}const xi=e=>{let t=yn((e=>e.jwtAuthFlowState));return Tt("customAuth",e),{status:t}};function Di({isAuthenticated:e,isLoading:t,...r}){let a=i(void 0);l((()=>{t||a.current?.()}),[e,t]);let n=u((e=>(a.current=e,()=>{a.current=void 0})),[]);return gn({...r,subscribe:n})}const ji=()=>{let{user:e,getAccessToken:t}=J(),r=ht(),{walletProxy:a}=r;return{getFarcasterSignerPublicKey:u((async()=>{let n,i=await t(),s=e?.linkedAccounts.find((e=>"wallet"===e.type&&"privy"===e.walletClientType));if(!i)throw Error("Must have valid access token to connect with Farcaster");if(!a||!s)throw Error("Must have an embedded wallet to use Farcaster signers");if(re(s))throw new ve("Farcaster signers are only supported for on-device execution and this app uses TEE execution. Learn more at https://docs.privy.io/recipes/tee-wallet-migration-guide");if(!e?.farcaster?.fid)throw Error("Must have Farcaster account to use Farcaster signers");if(!await r.recoverEmbeddedWallet({address:s.address}))throw Error("Unable to connect to wallet");if(!e.farcaster?.signerPublicKey)throw Error("Must have a Farcaster signer public key to sign");return n=e.farcaster.signerPublicKey.slice(2),Uint8Array.from(n.match(/.{1,2}/g).map((e=>parseInt(e,16))))}),[t,e,a,r])}},qi=()=>{let{user:e,getAccessToken:t}=J(),r=ht(),{client:a,setUser:n,walletProxy:i,openModal:s}=r,{setModalData:o}=mt();return{requestFarcasterSignerFromWarpcast:u((async()=>{let l=await t(),c=e?.linkedAccounts.find((e=>"wallet"===e.type&&"privy"===e.walletClientType));if(!l)throw Error("Must have valid access token to connect with Farcaster");if(!i||!c)throw Error("Must have an embedded wallet to use Farcaster signers");if(re(c))throw new ve("Farcaster signers are only supported for on-device execution and this app uses TEE execution. Learn more at https://docs.privy.io/recipes/tee-wallet-migration-guide");if(!e?.farcaster?.fid)throw Error("Must have Farcaster account to use Farcaster signers");if(!await r.recoverEmbeddedWallet({address:c.address}))throw Error("Unable to connect to wallet");let d=await i.initFarcasterSigner({address:c.address,hdWalletIndex:null,accessToken:l,mfaCode:null,mfaMethod:null,relyingParty:window.origin});"approved"===d.status&&n(await a.getAuthenticatedUser()||e||null),o({farcasterSigner:d}),s("FarcasterSignerStatusScreen")}),[t,e,i,r,a,n,o,s])}},Hi=()=>{let{user:e,getAccessToken:t}=J(),r=ht(),{walletProxy:a}=r;return{signFarcasterMessage:u((async n=>{let i=await t(),s=e?.linkedAccounts.find((e=>"wallet"===e.type&&"privy"===e.walletClientType));if(!i)throw Error("Must have valid access token to connect with Farcaster");if(!a||!s)throw Error("Must have an embedded wallet to use Farcaster signers");if(re(s))throw new ve("Farcaster signers are only supported for on-device execution and this app uses TEE execution. Learn more at https://docs.privy.io/recipes/tee-wallet-migration-guide");if(!e?.farcaster?.fid)throw Error("Must have Farcaster account to use Farcaster signers");if(!await r.recoverEmbeddedWallet({address:s.address}))throw Error("Unable to connect to wallet");if(!e.farcaster?.signerPublicKey)throw Error("Must have a Farcaster signer public key to sign");let o=await import("@simplewebauthn/browser"),l=await a.signFarcasterMessage({address:s.address,hdWalletIndex:null,accessToken:i,mfaCode:null,mfaMethod:null,payload:{hash:o.bufferToBase64URLString(new Uint8Array(n).buffer)},fid:BigInt(e.farcaster.fid),relyingParty:window.origin});return new Uint8Array(o.base64URLStringToBuffer(l.signature))}),[t,e,a,r])}},Ki=()=>{let{requestFarcasterSignerFromWarpcast:e}=qi(),{getFarcasterSignerPublicKey:t}=ji(),{signFarcasterMessage:r}=Hi();return{getFarcasterSignerPublicKey:t,signFarcasterMessage:r,requestFarcasterSignerFromWarpcast:e}},Vi=()=>{let{revokeDelegatedWallets:e,delegateWallet:t}=ht();return{delegateWallet:async({address:e,chainType:r})=>await t({address:e,chainType:r,showDelegationUIs:!0}),revokeWallets:async()=>await e({showDelegationUIs:!0})}},zi=()=>{let{user:e}=J(),t=ht(),{signWithUserSigner:r}=jr(),a=async({wallet:a,additional_signers:n})=>{let i=await t.client.getAccessToken();if(!e||!i)throw new ve("User must be authenticated and have an embedded wallet to delegate actions.");if(!a.id)throw new ve("Wallet to add signers to must have ID on server");if(!t.walletProxy)throw new ve("Wallet proxy not initialized.");await f(t.privy,{wallet_id:a.id},r,{additional_signers:n})};return{addSessionSignersInternal:async({address:r,signers:n})=>{let i=await t.client.getAccessToken();if(!e||!i)throw new ve("User must be authenticated and have an embedded wallet to add a session signer.");let s=t.walletProxy??await t.initializeWalletProxy(15e3);if(!s)throw new ve("Wallet proxy not initialized.");let o=de(e,r);if(!o)throw new ve("Address to add signers too is not associated with current user.");if(re(o)){if(0===n.length)throw new ve("Must specify at least one signer to add.");let e=[...(await y(t.privy,{wallet_id:o.id})).additional_signers,...Le(n)];await a({wallet:o,additional_signers:e})}else{if(o.delegated)return{user:e};if(n.length>0)throw new ve("Specifying signers in addSessionSigners is only supported for TEE execution and this app uses On-device execution. Pass an empty array for signers instead. Learn more https://docs.privy.io/recipes/tee-wallet-migration-guide");let a=Da({address:r,user:e}),l=ja({address:r,user:e});await t.recoverEmbeddedWallet({address:r}),await s.createDelegatedAction({accessToken:i,rootWallet:l,delegatedWallets:[a]})}let l=await t.refreshSessionAndUser();if(!l)throw Error("Could not refresh user");return{user:l}},removeSessionSignersInternal:async({address:r})=>{let n=await t.client.getAccessToken();if(!e||!n)throw new ve("User must be authenticated and have an embedded wallet to delegate actions.");if(!(t.walletProxy??await t.initializeWalletProxy(15e3)))throw new ve("Wallet proxy not initialized.");let i=de(e,r);if(!i)throw new ve("Address to remove signers from is not associated with current user.");re(i)?await a({wallet:i,additional_signers:[]}):await t.client.revokeDelegatedWallet();let s=await t.refreshSessionAndUser();if(!s)throw Error("Could not refresh user");return{user:s}}}},Bi=()=>{let{addSessionSignersInternal:e,removeSessionSignersInternal:t}=zi();return{addSessionSigners:async({address:t,signers:r})=>e({address:t,signers:r}),removeSessionSigners:async({address:e})=>t({address:e})}},Gi=()=>{let{addSessionSignersInternal:e,removeSessionSignersInternal:t}=zi();return{addSigners:async({address:t,signers:r})=>e({address:t,signers:r}),removeSigners:async({address:e})=>t({address:e})}},$i=()=>{let{signWithUserSigner:e}=jr();return o((()=>({async generateAuthorizationSignature(t){if(t instanceof Uint8Array){let{signature:r}=await v(e,t);return{signature:r}}let{targetAppId:r,...a}=t,{signature:n}=await v((async({message:t})=>e({message:t,targetAppId:r})),a);return{signature:n}}})),[e])},Yi=()=>{let{privy:e}=ht(),{signWithUserSigner:t}=jr();return o((()=>({transfer:(r,a)=>A(e,t,{wallet_id:r,...a})})),[e,t])},Ji=()=>{let{privy:e}=ht();return o((()=>({getAction:(t,r)=>T(e,{wallet_id:t,action_id:r}),listActions:(t,r)=>S(e,{wallet_id:t,...r})})),[e])},Xi=()=>{let{setUser:e,client:t}=a(pt),{user:r}=a(le);return{user:r,refreshUser:u((async()=>{let r=await(t?.updateUserAndIdToken());return e(r??null),r}),[t,e])}};function Zi(){let{user:e}=J(),{client:t}=ht(),r=X(),a=u((async({address:a,recipientPublicKey:n})=>{if(!e)throw new ve("User must be authenticated before exporting their wallet");let i=await t.getAccessToken();if(!i)throw new ve("Must have valid access token");let s=de(e,a);if(!s)throw new ve("User does not have a wallet with this address");if(!re(s))throw new ve("Client export is only supported for unified stack wallets. On-device wallets are not supported.");return function(e,t,r){let a=document.createElement("iframe");return a.style.display="none",a.src=e,document.body.appendChild(a),new Promise(((e,n)=>{let i=null,s=()=>{null!==i&&(clearTimeout(i),i=null),window.removeEventListener("message",o),a.parentNode&&a.parentNode.removeChild(a)},o=t=>{var a;t.origin===r&&"object"==typeof(a=t.data)&&null!==a&&"type"in a&&("CLIENT_EXPORT_RESPONSE"===a.type||"CLIENT_EXPORT_ERROR"===a.type)&&(s(),"CLIENT_EXPORT_ERROR"===t.data.type?n(new ve(t.data.error)):e({ciphertext:t.data.ciphertext,encapsulatedKey:t.data.encapsulatedKey,chainType:t.data.chainType}))};window.addEventListener("message",o),a.onload=()=>{a.contentWindow?.postMessage({type:"CLIENT_EXPORT_REQUEST",recipientPublicKey:t},r)},i=setTimeout((()=>{s(),n(new ve("Wallet export timed out"))}),3e4)}))}(ar({origin:t.apiUrl,path:`/apps/${r.id}/embedded-wallets/export`,query:{v:"1-unified",wallet_id:s.id,client_id:r.appClientId,mode:"client-export"},hash:{token:i}}),n,t.apiUrl)}),[e,t,r.id,r.appClientId]);return o((()=>({getWalletPrivateKey:a})),[a])}const Qi=e=>{let t=Yr(),{initLoginWithTelegram:r,loginWithTelegram:a,telegramAuthState:n,setTelegramAuthState:i}=ht();return{login:u((async n=>{try{if(t.enabled&&"success"!==t.status)throw new Gr(t.error,null,Se.CAPTCHA_FAILURE);await r(t.token,n?.disableSignup);let{user:i,isNewUser:s,loginAccount:o,wasAlreadyAuthenticated:l}=await a({intent:"login"});e?.onComplete?.({user:i,isNewUser:s,wasAlreadyAuthenticated:l,loginMethod:"telegram",loginAccount:o})}catch(n){throw i({status:"error",error:n}),e?.onError?.(n.privyErrorCode||Se.UNKNOWN_AUTH_ERROR),n}}),[r,a,t]),state:n}},es=()=>{let{revokeDelegatedWallets:e,delegateWallet:t}=ht();return{delegateWallet:async({address:e,chainType:r})=>await t({address:e,chainType:r,showDelegationUIs:!1}),revokeWallets:async()=>await e({showDelegationUIs:!1})}},ts=pa;export{Ei as $,Kn as A,Tn as B,Gr as C,wn as D,$n as E,Jn as F,yi as G,Si as H,Ti as I,$i as J,Ai as K,ts as L,vi as M,fi as N,li as O,Sa as P,_i as Q,xi as R,zr as S,Vi as T,Ki as U,Xn as V,pn as W,ji as X,Zi as Y,ki as Z,es as _,Yr as a,wi as a0,ri as a1,Li as a2,oi as a3,ei as a4,ii as a5,ci as a6,hi as a7,ti as a8,Yn as a9,mi as aA,gi as aB,Xi as aC,Ji as aD,Pi as aE,Zn as aa,ni as ab,di as ac,ui as ad,si as ae,Qi as af,nn as ag,Ri as ah,Mi as ai,Vn as aj,zn as ak,ia as al,qi as am,Bi as an,Ci as ao,Ii as ap,Hi as aq,bi as ar,pi as as,Ui as at,Gi as au,ai as av,Di as aw,gn as ax,Ni as ay,Yi as az,Ba as b,ba as c,Ca as d,Ea as e,ka as f,un as g,Gn as h,Ia as i,Ua as j,Hr as k,Zr as l,_a as m,mn as n,Va as o,en as p,Xa as q,Qa as r,cn as s,an as t,Bn as u,za as v,va as w,aa as x,pa as y,Ln as z};
|
|
34
|
+
//# sourceMappingURL=index-BRVzclkp.mjs.map
|