@privy-io/react-auth 3.18.0 → 3.19.0-beta-20260327145607

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (387) hide show
  1. package/dist/cjs/AccountNotFoundScreen-BGWhw5JF.js +1 -0
  2. package/dist/cjs/{Address-BeuDoSGB.js → Address-Ccb_vB_O.js} +1 -1
  3. package/dist/cjs/AffirmativeConsentScreen-BeNpA8vg.js +6 -0
  4. package/dist/cjs/AllowlistRejectionScreen-DiQ106Je.js +1 -0
  5. package/dist/cjs/AuthenticateWithWalletScreen-fOZ6wpNr.js +1 -0
  6. package/dist/cjs/AwaitingEvmToSolBridgingScreen-5zCafWqh.js +2 -0
  7. package/dist/cjs/AwaitingExternalEthereumTransferScreen-BCDcDb5e.js +2 -0
  8. package/dist/cjs/AwaitingPasswordlessCodeScreen-9ZGMTuto.js +103 -0
  9. package/dist/cjs/AwaitingSolToEvmBridgingScreen-DrU5HjJs.js +2 -0
  10. package/dist/cjs/BridgeNetworkSelectionView-ByOqmqhr.js +69 -0
  11. package/dist/cjs/CaptchaScreen-CpC_t_wY.js +1 -0
  12. package/dist/cjs/CoinbaseOnrampStatusScreen-BED_Uc3M.js +16 -0
  13. package/dist/cjs/ConnectEmailForm-CkOZyqGm.js +3 -0
  14. package/dist/cjs/ConnectLedgerScreen-BRRli2qt.js +9 -0
  15. package/dist/cjs/ConnectOnlyLandingScreen-Cb8nxLme.js +1 -0
  16. package/dist/cjs/ConnectOnlyStatusScreen-BH3D3Vhb.js +1 -0
  17. package/dist/cjs/ConnectOrCreateScreen-DrwTfZH8.js +1 -0
  18. package/dist/cjs/{ConnectPhoneForm-D3q0wloY.js → ConnectPhoneForm-j-Cyd_qm.js} +1 -1
  19. package/dist/cjs/{ConnectWalletView-C6ISoYJv.js → ConnectWalletView-CTLd5C6n.js} +1 -1
  20. package/dist/cjs/ConnectionStatusScreen-Z01aygJs.js +7 -0
  21. package/dist/cjs/CrossAppAuthScreen-piMA7do8.js +1 -0
  22. package/dist/cjs/{CustomLandingScreenView--zrI99Tu.js → CustomLandingScreenView-CheZxCX8.js} +1 -1
  23. package/dist/cjs/DelegatedActionsConsentScreen-Cw3Fo8gM.js +1 -0
  24. package/dist/cjs/DelegatedActionsRevokeScreen-BDzCEVqg.js +1 -0
  25. package/dist/cjs/EmbeddedWalletConnectingScreen-VUzY2VsQ.js +1 -0
  26. package/dist/cjs/EmbeddedWalletCreatedScreen-DYU_efvf.js +1 -0
  27. package/dist/cjs/{EmbeddedWalletKeyExportScreen-DiMRj8ux.js → EmbeddedWalletKeyExportScreen-BZtOjZpV.js} +1 -1
  28. package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-BduYIHj0.js +1 -0
  29. package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-CfehwM23.js +1 -0
  30. package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-cYsDDghn.js +1 -0
  31. package/dist/cjs/{EnrollTotp-RPco748Q.js → EnrollTotp-Ol5CsgOA.js} +1 -1
  32. package/dist/cjs/ErrorScreen-BLknI5mu.js +4 -0
  33. package/dist/cjs/{FarcasterConnectStatusScreen-VcZ3BOP9.js → FarcasterConnectStatusScreen-Bp5BSNvP.js} +3 -3
  34. package/dist/cjs/FarcasterSignerStatusScreen-CQcKmS-B.js +29 -0
  35. package/dist/cjs/FiatOnrampScreen-dUYsHWAv.js +86 -0
  36. package/dist/cjs/FundSolWalletWithExternalSolanaWallet-BrB3MaI7.js +2 -0
  37. package/dist/cjs/{FundWalletMethodHeader-BTGxq_KO.js → FundWalletMethodHeader-Dp0qK8-s.js} +1 -1
  38. package/dist/cjs/{FundWithBankDepositScreen-HfVq1zvk.js → FundWithBankDepositScreen-B7jC-0EU.js} +2 -2
  39. package/dist/cjs/FundingEditAmountScreen-CHIv-Klg.js +1 -0
  40. package/dist/cjs/FundingMethodSelectionScreen-wXU7ZFOV.js +1 -0
  41. package/dist/cjs/InAppBrowserLoginNotPossible-BFWIzrVG.js +1 -0
  42. package/dist/cjs/InstallWalletScreen-vRXPRhOy.js +1 -0
  43. package/dist/cjs/LandingScreen-6YsWMMj3.js +1 -0
  44. package/dist/cjs/{LinkConflictScreen-BsgVq6Bs.js → LinkConflictScreen-DC4hgB0t.js} +1 -1
  45. package/dist/cjs/LinkEmailScreen-BbDbprJy.js +1 -0
  46. package/dist/cjs/{LinkPasskeyScreen-D9Y8PpKL.js → LinkPasskeyScreen-DP4u6Lgj.js} +1 -1
  47. package/dist/cjs/LinkPhoneScreen-B6D_a4Ej.js +1 -0
  48. package/dist/cjs/LoginFailedScreen-BDDXHvvn.js +1 -0
  49. package/dist/cjs/ManualTransferScreen-DQTp_iKx.js +1 -0
  50. package/dist/cjs/MfaAuthEnrollmentFlowScreen-CIbZ0xIA.js +1 -0
  51. package/dist/cjs/MfaAuthVerifyFlowScreen-DCG37dVx.js +1 -0
  52. package/dist/cjs/MfaEnrollmentFlowScreen-BMvFxN4m.js +1 -0
  53. package/dist/cjs/MfaVerifyFlowScreen-A1ir9y_A.js +1 -0
  54. package/dist/cjs/{ModalHeader-C5Wuo3-1.js → ModalHeader-DIWI7Qd8.js} +1 -1
  55. package/dist/cjs/MoonpayStatusScreen-DJIqzTLu.js +16 -0
  56. package/dist/cjs/OAuthStatusScreen-3YsQvDT2.js +1 -0
  57. package/dist/cjs/PasskeySelectSignupOrLogin-CPzx0bS6.js +1 -0
  58. package/dist/cjs/PasskeyStatusScreen-Y0HfrSs0.js +3 -0
  59. package/dist/cjs/PasswordRecoveryScreen-DnBSIkCR.js +20 -0
  60. package/dist/cjs/{QrCode-Bbg48Zky.js → QrCode-DgJWNtET.js} +1 -1
  61. package/dist/cjs/RecoveryOAuthStatusScreen-O90TAb-V.js +1 -0
  62. package/dist/cjs/RecoveryPasswordCreateScreen-CSEj-YHC.js +1 -0
  63. package/dist/cjs/{RecoverySelectionScreen-5crBwkcF.js → RecoverySelectionScreen-ASIhYmAi.js} +2 -2
  64. package/dist/cjs/{Screen-DWnRbzSA.js → Screen-QiXdkVhj.js} +1 -1
  65. package/dist/cjs/{ScreenLayout-C4QHZMbl.js → ScreenLayout-BKim1Ivq.js} +1 -1
  66. package/dist/cjs/{SelectSourceAsset-Mzj-MSFd.js → SelectSourceAsset-Bvvzhx1z.js} +1 -1
  67. package/dist/cjs/{SetAutomaticRecoveryScreen-CYXvomBY.js → SetAutomaticRecoveryScreen-xWSOwMal.js} +2 -2
  68. package/dist/cjs/{SetWalletPasswordForm-BCdbqkFk.js → SetWalletPasswordForm-If1qCSys.js} +1 -1
  69. package/dist/cjs/SignRequestScreen-BsqcuRPT.js +26 -0
  70. package/dist/cjs/{StandardSignAndSendTransactionScreen-BM1NyC8e.js → StandardSignAndSendTransactionScreen-CwrOUIqL.js} +3 -3
  71. package/dist/cjs/TelegramAuthScreen-CCy2dkrp.js +1 -0
  72. package/dist/cjs/{TransactionDetails-BisPbyIV.js → TransactionDetails-6PDseXbG.js} +1 -1
  73. package/dist/cjs/{TransactionErrorView-OoipbwSa.js → TransactionErrorView-kWt_0R3I.js} +1 -1
  74. package/dist/cjs/{TransferFromWalletScreen-BItctfpp.js → TransferFromWalletScreen-0TLfcjLe.js} +1 -1
  75. package/dist/cjs/{TransferOrBridgeLoadingScreen-DsutKbzS.js → TransferOrBridgeLoadingScreen-BkGgll1g.js} +1 -1
  76. package/dist/cjs/UpdateEmailScreen-Bk2OG5C2.js +1 -0
  77. package/dist/cjs/UpdatePhoneScreen-BBSNlATd.js +1 -0
  78. package/dist/cjs/UserLimitReachedScreen-CI5im3l3.js +1 -0
  79. package/dist/cjs/{WalletInfoCard-B7ARTvO5.js → WalletInfoCard-BkhIxyu0.js} +1 -1
  80. package/dist/cjs/WalletInterstitialScreen-DVj91uDW.js +1 -0
  81. package/dist/cjs/{WalletLink-CRWOuFlx.js → WalletLink-BNAUeqsj.js} +1 -1
  82. package/dist/cjs/{WalletOverflowButton-BMn1cJfA.js → WalletOverflowButton-CYOV-_Ot.js} +1 -1
  83. package/dist/cjs/abstract-smart-wallets.js +1 -1
  84. package/dist/cjs/{context-Cg3IEi80.js → context-RXM4aLoW.js} +1 -1
  85. package/dist/cjs/{ethers-p3w-Ig2U.js → ethers-1Tcci65u.js} +1 -1
  86. package/dist/cjs/extended-chains.js +1 -1
  87. package/dist/cjs/get-entropy-details-for-user-CfpHdOOL.js +1 -0
  88. package/dist/cjs/getErc20Balance-D3GMY7bi.js +1 -0
  89. package/dist/cjs/getErc20TokenInfo-D7Op14dW.js +1 -0
  90. package/dist/cjs/index-Cg7lD262.js +174 -0
  91. package/dist/cjs/index-ChrxGj1W.js +12 -0
  92. package/dist/cjs/{index-B6eKyGL-.js → index-D31YtUmO.js} +1 -1
  93. package/dist/cjs/index.js +1 -1
  94. package/dist/cjs/internal.js +1 -1
  95. package/dist/cjs/{privy-context-CrM9_s6G.js → privy-context-CJMUK9qU.js} +1 -1
  96. package/dist/cjs/reservoir-BE47XwpJ.js +1 -0
  97. package/dist/cjs/{shared-CiNVwcTc.js → shared-CX36Xo8K.js} +1 -1
  98. package/dist/cjs/{shouldProceedtoEmbeddedWalletCreationFlow-BUJZ4s-V.js → shouldProceedtoEmbeddedWalletCreationFlow-CPd-uKKS.js} +1 -1
  99. package/dist/cjs/smart-wallets-W-C3-7mX.js +1 -0
  100. package/dist/cjs/smart-wallets.js +1 -1
  101. package/dist/cjs/solana.js +1 -1
  102. package/dist/cjs/{styles-B1M_BS_A.js → styles-CZ7NmfYl.js} +1 -1
  103. package/dist/cjs/{to-ui-error-CS08QD8Q.js → to-ui-error-waPPZTE3.js} +1 -1
  104. package/dist/cjs/ui.js +1 -1
  105. package/dist/cjs/use-export-wallet-D-UqGx7Q.js +1 -0
  106. package/dist/cjs/use-export-wallet-w7BPerzn.js +1 -0
  107. package/dist/cjs/useActiveWallet-mN0aJ9Aw.js +185 -0
  108. package/dist/cjs/{useGetTokenPrice-CSWuvKuF.js → useGetTokenPrice-DYrgDlJ6.js} +1 -1
  109. package/dist/cjs/{useI18n-DUN0YTKn.js → useI18n-B652ZmJJ.js} +1 -1
  110. package/dist/cjs/usePrivy-NgERWVoo.js +1 -0
  111. package/dist/cjs/{useSolanaRpcClient-DuOWyD1p.js → useSolanaRpcClient-H6-9qxr1.js} +1 -1
  112. package/dist/cjs/useWalletBalance-BoqIc-xj.js +1 -0
  113. package/dist/cjs/useWallets-TGALIhje.js +1 -0
  114. package/dist/dts/{events-context-BXis4NRh.d.mts → events-context-B-xMLvZ9.d.mts} +1 -1
  115. package/dist/dts/{events-context-BXis4NRh.d.ts → events-context-B-xMLvZ9.d.ts} +1 -1
  116. package/dist/dts/extended-chains.d.mts +1 -1
  117. package/dist/dts/extended-chains.d.ts +1 -1
  118. package/dist/dts/farcaster.d.mts +1 -1
  119. package/dist/dts/farcaster.d.ts +1 -1
  120. package/dist/dts/index.d.mts +4 -38
  121. package/dist/dts/index.d.ts +4 -38
  122. package/dist/dts/internal.d.mts +1 -1
  123. package/dist/dts/internal.d.ts +1 -1
  124. package/dist/dts/smart-wallets.d.mts +1 -1
  125. package/dist/dts/smart-wallets.d.ts +1 -1
  126. package/dist/dts/solana.d.mts +3 -3
  127. package/dist/dts/solana.d.ts +3 -3
  128. package/dist/dts/{types-Bc9w_mgT.d.mts → types-CHmbtLnY.d.mts} +1 -1
  129. package/dist/dts/{types-Bc9w_mgT.d.ts → types-CHmbtLnY.d.ts} +1 -1
  130. package/dist/dts/ui.d.mts +1 -1
  131. package/dist/dts/ui.d.ts +1 -1
  132. package/dist/esm/AccountNotFoundScreen-iWb1klHB.mjs +1 -0
  133. package/dist/esm/{Address-N-mzBgMy.mjs → Address-PwZSXm9b.mjs} +1 -1
  134. package/dist/esm/AffirmativeConsentScreen-TmfMGlOl.mjs +6 -0
  135. package/dist/esm/AllowlistRejectionScreen-Bg7x1RNv.mjs +1 -0
  136. package/dist/esm/AuthenticateWithWalletScreen-Bfceh8Ep.mjs +1 -0
  137. package/dist/esm/AwaitingEvmToSolBridgingScreen-CPok6C1U.mjs +2 -0
  138. package/dist/esm/AwaitingExternalEthereumTransferScreen-DJ5AqFjU.mjs +2 -0
  139. package/dist/esm/AwaitingPasswordlessCodeScreen-BFhcvo2a.mjs +103 -0
  140. package/dist/esm/AwaitingSolToEvmBridgingScreen-yiXjF4aq.mjs +2 -0
  141. package/dist/esm/BridgeNetworkSelectionView-DTgXCOhN.mjs +69 -0
  142. package/dist/esm/CaptchaScreen-BPixv0U9.mjs +1 -0
  143. package/dist/esm/CoinbaseOnrampStatusScreen-BYIZM_n_.mjs +16 -0
  144. package/dist/esm/ConnectEmailForm-BCqawfO-.mjs +3 -0
  145. package/dist/esm/ConnectLedgerScreen-0WQeyQIz.mjs +9 -0
  146. package/dist/esm/ConnectOnlyLandingScreen-BHOEo5M4.mjs +1 -0
  147. package/dist/esm/ConnectOnlyStatusScreen-CCxiAXex.mjs +1 -0
  148. package/dist/esm/ConnectOrCreateScreen-BnN5Eocd.mjs +1 -0
  149. package/dist/esm/{ConnectPhoneForm-DP4LRtUG.mjs → ConnectPhoneForm-DCm_Nfv1.mjs} +1 -1
  150. package/dist/esm/{ConnectWalletView-pxEyo8WM.mjs → ConnectWalletView-DSry6Xg-.mjs} +1 -1
  151. package/dist/esm/ConnectionStatusScreen-CS1PwenJ.mjs +7 -0
  152. package/dist/esm/CrossAppAuthScreen-XZ2iPEDY.mjs +1 -0
  153. package/dist/esm/{CustomLandingScreenView-BxAx1Co_.mjs → CustomLandingScreenView-l2CDbRP5.mjs} +1 -1
  154. package/dist/esm/DelegatedActionsConsentScreen-C0Dc6Xjx.mjs +1 -0
  155. package/dist/esm/DelegatedActionsRevokeScreen-uqLZgEZY.mjs +1 -0
  156. package/dist/esm/EmbeddedWalletConnectingScreen-Ber6xBu2.mjs +1 -0
  157. package/dist/esm/EmbeddedWalletCreatedScreen-Cf2s9crl.mjs +1 -0
  158. package/dist/esm/{EmbeddedWalletKeyExportScreen-B3GsSPLG.mjs → EmbeddedWalletKeyExportScreen-DTqkrVOj.mjs} +1 -1
  159. package/dist/esm/EmbeddedWalletOnAccountCreateScreen-CRJF2oQX.mjs +1 -0
  160. package/dist/esm/EmbeddedWalletPasswordUpdateScreen-BnFOssqj.mjs +1 -0
  161. package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-CypdEeoF.mjs +1 -0
  162. package/dist/esm/{EnrollTotp-V5tLY1MZ.mjs → EnrollTotp-BMGn5sqG.mjs} +1 -1
  163. package/dist/esm/ErrorScreen-DYZatCfj.mjs +4 -0
  164. package/dist/esm/{FarcasterConnectStatusScreen-DmhyV2vW.mjs → FarcasterConnectStatusScreen-DDm7pIDd.mjs} +4 -4
  165. package/dist/esm/FarcasterSignerStatusScreen-DlCt0kxK.mjs +28 -0
  166. package/dist/esm/FiatOnrampScreen-isedatpo.mjs +86 -0
  167. package/dist/esm/FundSolWalletWithExternalSolanaWallet-gBuJgt9U.mjs +1 -0
  168. package/dist/esm/{FundWalletMethodHeader-Cb-ACySl.mjs → FundWalletMethodHeader-dEfQKUIt.mjs} +1 -1
  169. package/dist/esm/{FundWithBankDepositScreen--e9rfZCc.mjs → FundWithBankDepositScreen-CslZ9KKD.mjs} +2 -2
  170. package/dist/esm/FundingEditAmountScreen-x1Yf2Eyo.mjs +1 -0
  171. package/dist/esm/FundingMethodSelectionScreen-CsMVaK3F.mjs +1 -0
  172. package/dist/esm/InAppBrowserLoginNotPossible-BdS_u6t4.mjs +1 -0
  173. package/dist/esm/InstallWalletScreen-BeYedfev.mjs +1 -0
  174. package/dist/esm/LandingScreen-DUDImYql.mjs +1 -0
  175. package/dist/esm/{LinkConflictScreen-CElxCrSW.mjs → LinkConflictScreen-ClUq6bHA.mjs} +6 -6
  176. package/dist/esm/LinkEmailScreen-DXSe8U9d.mjs +1 -0
  177. package/dist/esm/{LinkPasskeyScreen-DmtRo8xi.mjs → LinkPasskeyScreen-C1QMXwHt.mjs} +6 -6
  178. package/dist/esm/LinkPhoneScreen-CRXA4Hy0.mjs +1 -0
  179. package/dist/esm/LoginFailedScreen-BWx9URVV.mjs +1 -0
  180. package/dist/esm/ManualTransferScreen-CGq7L0Ci.mjs +1 -0
  181. package/dist/esm/MfaAuthEnrollmentFlowScreen-CDtJNWv8.mjs +1 -0
  182. package/dist/esm/MfaAuthVerifyFlowScreen-DT0vQYdD.mjs +1 -0
  183. package/dist/esm/MfaEnrollmentFlowScreen-DoVI0gRh.mjs +1 -0
  184. package/dist/esm/MfaVerifyFlowScreen-p8IPHVQN.mjs +1 -0
  185. package/dist/esm/{ModalHeader-BnVmXtvG.mjs → ModalHeader-Duq1Izpl.mjs} +1 -1
  186. package/dist/esm/MoonpayStatusScreen-C1Z_6gNn.mjs +16 -0
  187. package/dist/esm/OAuthStatusScreen-BTVsCmCg.mjs +1 -0
  188. package/dist/esm/PasskeySelectSignupOrLogin-B-onsqZo.mjs +1 -0
  189. package/dist/esm/PasskeyStatusScreen-B1umlQqV.mjs +3 -0
  190. package/dist/esm/PasswordRecoveryScreen-I3ZUDm0-.mjs +20 -0
  191. package/dist/esm/{QrCode-B84kEIjT.mjs → QrCode-DZ4mEmXc.mjs} +1 -1
  192. package/dist/esm/RecoveryOAuthStatusScreen-GJOLz9Qg.mjs +1 -0
  193. package/dist/esm/RecoveryPasswordCreateScreen-BnvmaEYh.mjs +1 -0
  194. package/dist/esm/{RecoverySelectionScreen-CFkgwzMS.mjs → RecoverySelectionScreen-iOlIYqRe.mjs} +2 -2
  195. package/dist/esm/{Screen-Cycy3IzT.mjs → Screen-Ce8BE24H.mjs} +1 -1
  196. package/dist/esm/{ScreenLayout-D1p_ntex.mjs → ScreenLayout-B6n5Feil.mjs} +1 -1
  197. package/dist/esm/{SelectSourceAsset-C10HQdge.mjs → SelectSourceAsset-zsEmZ5td.mjs} +1 -1
  198. package/dist/esm/{SetAutomaticRecoveryScreen-CaXj1unh.mjs → SetAutomaticRecoveryScreen-BS08blBS.mjs} +2 -2
  199. package/dist/esm/{SetWalletPasswordForm-CbtQ4DZ1.mjs → SetWalletPasswordForm-Dptwfaam.mjs} +1 -1
  200. package/dist/esm/{SignRequestScreen-CKO-pLHy.mjs → SignRequestScreen-DSZ9BlSE.mjs} +1 -1
  201. package/dist/esm/{StandardSignAndSendTransactionScreen-Cya0O4wv.mjs → StandardSignAndSendTransactionScreen-BxF1ai6w.mjs} +2 -2
  202. package/dist/esm/TelegramAuthScreen-BgAQJBxJ.mjs +1 -0
  203. package/dist/esm/{TransactionDetails-DqFIa7IO.mjs → TransactionDetails-CVClqqlA.mjs} +1 -1
  204. package/dist/esm/{TransactionErrorView-BjaCgZpa.mjs → TransactionErrorView-B_dlkXgb.mjs} +1 -1
  205. package/dist/esm/{TransferFromWalletScreen-DMoSgPhn.mjs → TransferFromWalletScreen-7dBrxdtu.mjs} +2 -2
  206. package/dist/esm/{TransferOrBridgeLoadingScreen-DVeIRghG.mjs → TransferOrBridgeLoadingScreen-CknmH__D.mjs} +1 -1
  207. package/dist/esm/UpdateEmailScreen-COQBeTV_.mjs +1 -0
  208. package/dist/esm/UpdatePhoneScreen-SH0ZMLhy.mjs +1 -0
  209. package/dist/esm/UserLimitReachedScreen-Bbjr58Rh.mjs +1 -0
  210. package/dist/esm/{WalletInfoCard-CEcdukTg.mjs → WalletInfoCard-CSqr9o--.mjs} +1 -1
  211. package/dist/esm/WalletInterstitialScreen-C62appnM.mjs +1 -0
  212. package/dist/esm/{WalletLink-DNbGmOPX.mjs → WalletLink-WeWEMb7C.mjs} +1 -1
  213. package/dist/esm/{WalletOverflowButton-CPDxFP5w.mjs → WalletOverflowButton-XkatV0nc.mjs} +1 -1
  214. package/dist/esm/abstract-smart-wallets.mjs +1 -1
  215. package/dist/esm/context-aGvo4MVQ.mjs +1 -0
  216. package/dist/esm/{ethers-Dnv1tMN3.mjs → ethers-BNftJuZG.mjs} +1 -1
  217. package/dist/esm/extended-chains.mjs +1 -1
  218. package/dist/esm/farcaster.mjs +1 -1
  219. package/dist/esm/{frame-uzTmvtww.mjs → frame-CjhCpycO.mjs} +1 -1
  220. package/dist/esm/get-entropy-details-for-user-DkZdXKpr.mjs +1 -0
  221. package/dist/esm/getErc20Balance-B5YTRX0-.mjs +1 -0
  222. package/dist/esm/getErc20TokenInfo-Dx_e_xiA.mjs +1 -0
  223. package/dist/esm/index-6ULxuXBn.mjs +12 -0
  224. package/dist/esm/{index-CvvUk2Lm.mjs → index-BmQvaRvI.mjs} +1 -1
  225. package/dist/esm/index-D23O4czL.mjs +174 -0
  226. package/dist/esm/index.mjs +1 -1
  227. package/dist/esm/{internal-context-Z-fyxadS.mjs → internal-context-C4ZqP8IF.mjs} +1 -1
  228. package/dist/esm/internal.mjs +1 -1
  229. package/dist/esm/{paths-3HW55qZg.mjs → paths-BzM95ysC.mjs} +1 -1
  230. package/dist/esm/{privy-context-DrMxzgOR.mjs → privy-context-CkPtrpbt.mjs} +1 -1
  231. package/dist/esm/reservoir-DGil2p_K.mjs +1 -0
  232. package/dist/esm/{shared-DhWmkz5T.mjs → shared-BivH4vdQ.mjs} +1 -1
  233. package/dist/esm/{shouldProceedtoEmbeddedWalletCreationFlow-D2ZT5lW9.mjs → shouldProceedtoEmbeddedWalletCreationFlow-BSnOzrud.mjs} +1 -1
  234. package/dist/esm/smart-wallets-BhZ-uX3v.mjs +1 -0
  235. package/dist/esm/smart-wallets.mjs +1 -1
  236. package/dist/esm/solana.mjs +1 -1
  237. package/dist/esm/{styles-DDaGxKdi.mjs → styles--34ZnZR_.mjs} +1 -1
  238. package/dist/esm/{to-ui-error-YOQlKk5D.mjs → to-ui-error-DgTXOCnh.mjs} +2 -2
  239. package/dist/esm/ui.mjs +9 -9
  240. package/dist/esm/use-export-wallet-BqvE_ud1.mjs +1 -0
  241. package/dist/esm/use-export-wallet-Db8GdSAT.mjs +1 -0
  242. package/dist/esm/{use-sign-with-user-signer-Do5Oi_rb.mjs → use-sign-with-user-signer-BYctG7hm.mjs} +1 -1
  243. package/dist/esm/useActiveWallet-By6UNJY1.mjs +185 -0
  244. package/dist/esm/{useGetSolPrice-DwwjjGbd.mjs → useGetSolPrice-DaxM-vxD.mjs} +1 -1
  245. package/dist/esm/{useGetTokenPrice-LPJMl6JV.mjs → useGetTokenPrice-CveNETyP.mjs} +1 -1
  246. package/dist/esm/{useI18n-C4fmUAf3.mjs → useI18n-D3p37xc_.mjs} +1 -1
  247. package/dist/esm/usePrivy-DPZ1iMmn.mjs +1 -0
  248. package/dist/esm/{useSolanaRpcClient-71aYSqHX.mjs → useSolanaRpcClient-DgxuhW6A.mjs} +1 -1
  249. package/dist/esm/useWalletBalance-DyK680KW.mjs +1 -0
  250. package/dist/esm/useWallets-DHM1PNtl.mjs +1 -0
  251. package/package.json +8 -7
  252. package/dist/cjs/AccountNotFoundScreen-B3YeQpWL.js +0 -1
  253. package/dist/cjs/AffirmativeConsentScreen-BxXaVIHv.js +0 -6
  254. package/dist/cjs/AllowlistRejectionScreen-BD_J-XYk.js +0 -1
  255. package/dist/cjs/AuthenticateWithWalletScreen-Cq6uIAU2.js +0 -1
  256. package/dist/cjs/AwaitingEvmToSolBridgingScreen-4-zu3acA.js +0 -2
  257. package/dist/cjs/AwaitingExternalEthereumTransferScreen-D29PTwhu.js +0 -2
  258. package/dist/cjs/AwaitingPasswordlessCodeScreen-C1mky_bR.js +0 -103
  259. package/dist/cjs/AwaitingSolToEvmBridgingScreen-C8F1Te8E.js +0 -2
  260. package/dist/cjs/BridgeNetworkSelectionView-DKogJoIK.js +0 -69
  261. package/dist/cjs/CaptchaScreen-DBhEtYLQ.js +0 -1
  262. package/dist/cjs/CoinbaseOnrampStatusScreen-Dfnox1A2.js +0 -16
  263. package/dist/cjs/ConnectEmailForm-CnoGdJHM.js +0 -3
  264. package/dist/cjs/ConnectLedgerScreen-C65stJPS.js +0 -9
  265. package/dist/cjs/ConnectOnlyLandingScreen-CtEavMfn.js +0 -1
  266. package/dist/cjs/ConnectOnlyStatusScreen-_MF8WNxi.js +0 -1
  267. package/dist/cjs/ConnectOrCreateScreen-Dio0_2A7.js +0 -1
  268. package/dist/cjs/ConnectionStatusScreen-D2KorLaB.js +0 -7
  269. package/dist/cjs/CrossAppAuthScreen-Hg4b16x6.js +0 -1
  270. package/dist/cjs/DelegatedActionsConsentScreen-Sexxy676.js +0 -1
  271. package/dist/cjs/DelegatedActionsRevokeScreen-3ghpT6XE.js +0 -1
  272. package/dist/cjs/EmbeddedWalletConnectingScreen-Br1aDNP5.js +0 -1
  273. package/dist/cjs/EmbeddedWalletCreatedScreen-BpEQig7I.js +0 -1
  274. package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-DjbrcMWa.js +0 -1
  275. package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-BakLaUGz.js +0 -1
  276. package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-sIrTUqTo.js +0 -1
  277. package/dist/cjs/ErrorScreen-CL31INic.js +0 -4
  278. package/dist/cjs/FarcasterSignerStatusScreen-CZMxSZ2B.js +0 -29
  279. package/dist/cjs/FiatOnrampScreen-BWE-wzus.js +0 -86
  280. package/dist/cjs/FundSolWalletWithExternalSolanaWallet-e1pL6w1L.js +0 -2
  281. package/dist/cjs/FundingEditAmountScreen-CIOt-oGd.js +0 -1
  282. package/dist/cjs/FundingMethodSelectionScreen-BGeCpJBJ.js +0 -1
  283. package/dist/cjs/InAppBrowserLoginNotPossible-CywcWPkZ.js +0 -1
  284. package/dist/cjs/InstallWalletScreen-JfaInrUT.js +0 -1
  285. package/dist/cjs/LandingScreen-CfjeYypD.js +0 -1
  286. package/dist/cjs/LinkEmailScreen-DFTW39Tg.js +0 -1
  287. package/dist/cjs/LinkPhoneScreen-C2upPfpV.js +0 -1
  288. package/dist/cjs/LoginFailedScreen-BIu3aXER.js +0 -1
  289. package/dist/cjs/ManualTransferScreen-CV6De31D.js +0 -1
  290. package/dist/cjs/MfaAuthEnrollmentFlowScreen-BWPXMD7y.js +0 -1
  291. package/dist/cjs/MfaAuthVerifyFlowScreen-BUmI5UD9.js +0 -1
  292. package/dist/cjs/MfaEnrollmentFlowScreen-DtN8H9mT.js +0 -1
  293. package/dist/cjs/MfaVerifyFlowScreen-DJJ9kTZP.js +0 -1
  294. package/dist/cjs/MoonpayStatusScreen-w3skMb5T.js +0 -16
  295. package/dist/cjs/OAuthStatusScreen-G1IaSk2E.js +0 -1
  296. package/dist/cjs/PasskeySelectSignupOrLogin-BsYJUF4P.js +0 -1
  297. package/dist/cjs/PasskeyStatusScreen-hu8v0vH3.js +0 -3
  298. package/dist/cjs/PasswordRecoveryScreen-C0fjY1Ij.js +0 -20
  299. package/dist/cjs/RecoveryOAuthStatusScreen-Bv2UEdKD.js +0 -1
  300. package/dist/cjs/RecoveryPasswordCreateScreen-CFg7-HMy.js +0 -1
  301. package/dist/cjs/SignRequestScreen-BfqKiJ9G.js +0 -26
  302. package/dist/cjs/TelegramAuthScreen-D1eqNUPF.js +0 -1
  303. package/dist/cjs/UpdateEmailScreen-BvoRUAa3.js +0 -1
  304. package/dist/cjs/UpdatePhoneScreen-a-ISQK3q.js +0 -1
  305. package/dist/cjs/UserLimitReachedScreen-twyMZzVF.js +0 -1
  306. package/dist/cjs/WalletInterstitialScreen-D0fMvmub.js +0 -1
  307. package/dist/cjs/getErc20Balance-CTO0RtgK.js +0 -1
  308. package/dist/cjs/getErc20TokenInfo-D0BUvlN2.js +0 -1
  309. package/dist/cjs/index-DchMyzt9.js +0 -174
  310. package/dist/cjs/index-DrQAmIx6.js +0 -12
  311. package/dist/cjs/reservoir-Bx0HQwbb.js +0 -1
  312. package/dist/cjs/smart-wallets-COAgLX4N.js +0 -1
  313. package/dist/cjs/use-export-wallet-DknByx6S.js +0 -1
  314. package/dist/cjs/use-export-wallet-_EIyxyle.js +0 -1
  315. package/dist/cjs/useActiveWallet-BfMD5hzE.js +0 -185
  316. package/dist/cjs/usePrivy-C-Rab7yP.js +0 -1
  317. package/dist/cjs/useWalletBalance-v_jFKi4B.js +0 -1
  318. package/dist/cjs/useWallets-DX7GoSc-.js +0 -1
  319. package/dist/cjs/useWallets-dikDynAG.js +0 -1
  320. package/dist/esm/AccountNotFoundScreen-D59Em28p.mjs +0 -1
  321. package/dist/esm/AffirmativeConsentScreen-nijRFoNp.mjs +0 -6
  322. package/dist/esm/AllowlistRejectionScreen-CpZy18yk.mjs +0 -1
  323. package/dist/esm/AuthenticateWithWalletScreen-BWicCqKg.mjs +0 -1
  324. package/dist/esm/AwaitingEvmToSolBridgingScreen-Bca7Dq5r.mjs +0 -2
  325. package/dist/esm/AwaitingExternalEthereumTransferScreen-NbFK0A1q.mjs +0 -2
  326. package/dist/esm/AwaitingPasswordlessCodeScreen-cLUlwC9S.mjs +0 -103
  327. package/dist/esm/AwaitingSolToEvmBridgingScreen-CXPb-Ukz.mjs +0 -2
  328. package/dist/esm/BridgeNetworkSelectionView-CiJQDIy_.mjs +0 -69
  329. package/dist/esm/CaptchaScreen-Cu3_cr8h.mjs +0 -1
  330. package/dist/esm/CoinbaseOnrampStatusScreen-lD0tNDQe.mjs +0 -16
  331. package/dist/esm/ConnectEmailForm-bgA9z3L3.mjs +0 -3
  332. package/dist/esm/ConnectLedgerScreen-BbsW8DSt.mjs +0 -9
  333. package/dist/esm/ConnectOnlyLandingScreen-D7uxtarL.mjs +0 -1
  334. package/dist/esm/ConnectOnlyStatusScreen-DpKUDVIK.mjs +0 -1
  335. package/dist/esm/ConnectOrCreateScreen-BNNYF6Ns.mjs +0 -1
  336. package/dist/esm/ConnectionStatusScreen-Dfv_mgId.mjs +0 -7
  337. package/dist/esm/CrossAppAuthScreen-BOCFddJL.mjs +0 -1
  338. package/dist/esm/DelegatedActionsConsentScreen-CS1yCHBG.mjs +0 -1
  339. package/dist/esm/DelegatedActionsRevokeScreen-Cw1FPv8x.mjs +0 -1
  340. package/dist/esm/EmbeddedWalletConnectingScreen-DGY8j-Si.mjs +0 -1
  341. package/dist/esm/EmbeddedWalletCreatedScreen-DLR7TF4o.mjs +0 -1
  342. package/dist/esm/EmbeddedWalletOnAccountCreateScreen-ColmQZ-q.mjs +0 -1
  343. package/dist/esm/EmbeddedWalletPasswordUpdateScreen-BRG9dsaW.mjs +0 -1
  344. package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-B3cMml6w.mjs +0 -1
  345. package/dist/esm/ErrorScreen-sNIfGI6q.mjs +0 -4
  346. package/dist/esm/FarcasterSignerStatusScreen-DqEULwox.mjs +0 -28
  347. package/dist/esm/FiatOnrampScreen-A5_TNfEg.mjs +0 -86
  348. package/dist/esm/FundSolWalletWithExternalSolanaWallet-Cy3gO2rc.mjs +0 -1
  349. package/dist/esm/FundingEditAmountScreen-BLmy4zpf.mjs +0 -1
  350. package/dist/esm/FundingMethodSelectionScreen-CFTtSc8T.mjs +0 -1
  351. package/dist/esm/InAppBrowserLoginNotPossible-BcEZlehe.mjs +0 -1
  352. package/dist/esm/InstallWalletScreen-CtJuryxO.mjs +0 -1
  353. package/dist/esm/LandingScreen-yPpishM-.mjs +0 -1
  354. package/dist/esm/LinkEmailScreen-C08N0_oz.mjs +0 -1
  355. package/dist/esm/LinkPhoneScreen-aZRsfGsF.mjs +0 -1
  356. package/dist/esm/LoginFailedScreen-C8ktIEOG.mjs +0 -1
  357. package/dist/esm/ManualTransferScreen-DiSMGPNF.mjs +0 -1
  358. package/dist/esm/MfaAuthEnrollmentFlowScreen-DnpsjnqC.mjs +0 -1
  359. package/dist/esm/MfaAuthVerifyFlowScreen-cdXMRh6f.mjs +0 -1
  360. package/dist/esm/MfaEnrollmentFlowScreen-_yDQyI2u.mjs +0 -1
  361. package/dist/esm/MfaVerifyFlowScreen-lPVdBldW.mjs +0 -1
  362. package/dist/esm/MoonpayStatusScreen-tZ8mdR2X.mjs +0 -16
  363. package/dist/esm/OAuthStatusScreen-GWwbWdSi.mjs +0 -1
  364. package/dist/esm/PasskeySelectSignupOrLogin-Dl5rDsw7.mjs +0 -1
  365. package/dist/esm/PasskeyStatusScreen-2znvW7Lc.mjs +0 -3
  366. package/dist/esm/PasswordRecoveryScreen-DBLHkrI_.mjs +0 -20
  367. package/dist/esm/RecoveryOAuthStatusScreen-7cATjPBS.mjs +0 -1
  368. package/dist/esm/RecoveryPasswordCreateScreen-OrukIxHX.mjs +0 -1
  369. package/dist/esm/TelegramAuthScreen-DMBY4HLl.mjs +0 -1
  370. package/dist/esm/UpdateEmailScreen-Dtbkg-xg.mjs +0 -1
  371. package/dist/esm/UpdatePhoneScreen-DJzzJhXJ.mjs +0 -1
  372. package/dist/esm/UserLimitReachedScreen-DsJc40Yi.mjs +0 -1
  373. package/dist/esm/WalletInterstitialScreen-CK6FWlf-.mjs +0 -1
  374. package/dist/esm/context-DLtU3JQy.mjs +0 -1
  375. package/dist/esm/getErc20Balance-o7J9W1su.mjs +0 -1
  376. package/dist/esm/getErc20TokenInfo-wKW6b8bj.mjs +0 -1
  377. package/dist/esm/index-B7Y-7rkw.mjs +0 -12
  378. package/dist/esm/index-YDEix4mU.mjs +0 -174
  379. package/dist/esm/reservoir-0wfhnc0j.mjs +0 -1
  380. package/dist/esm/smart-wallets-l4nwJjoH.mjs +0 -1
  381. package/dist/esm/use-export-wallet-BMt6c-lN.mjs +0 -1
  382. package/dist/esm/use-export-wallet-_wu5ex5t.mjs +0 -1
  383. package/dist/esm/useActiveWallet-CvP7iYvj.mjs +0 -185
  384. package/dist/esm/usePrivy-C_sY2Duk.mjs +0 -1
  385. package/dist/esm/useWalletBalance-RmRvKAUV.mjs +0 -1
  386. package/dist/esm/useWallets-BzNCTucF.mjs +0 -1
  387. package/dist/esm/useWallets-z8NFrORr.mjs +0 -1
@@ -1 +1 @@
1
- import{jsxs as e,Fragment as r,jsx as l}from"react/jsx-runtime";import{a as t}from"./ModalHeader-BnVmXtvG.mjs";import{S as a}from"./Screen-Cycy3IzT.mjs";const n=({primaryCta:n,secondaryCta:i,helpText:d,footerText:o,watermark:c=!0,children:s,...m})=>{let h=n||i?/*#__PURE__*/e(r,{children:[n&&(()=>{let{label:e,...r}=n,a=r.variant||"primary";/*#__PURE__*/return l(t,{...r,variant:a,style:{width:"100%",...r.style},children:e})})(),i&&(()=>{let{label:e,...r}=i,a=r.variant||"secondary";/*#__PURE__*/return l(t,{...r,variant:a,style:{width:"100%",...r.style},children:e})})()]}):null;/*#__PURE__*/return e(a,{id:m.id,className:m.className,children:[/*#__PURE__*/l(a.Header,{...m}),s?/*#__PURE__*/l(a.Body,{children:s}):null,d||h||c?/*#__PURE__*/e(a.Footer,{children:[d?/*#__PURE__*/l(a.HelpText,{children:d}):null,h?/*#__PURE__*/l(a.Actions,{children:h}):null,c?/*#__PURE__*/l(a.Watermark,{}):null]}):null,o?/*#__PURE__*/l(a.FooterText,{children:o}):null]})};export{n as S};
1
+ import{jsxs as e,Fragment as r,jsx as l}from"react/jsx-runtime";import{a as t}from"./ModalHeader-Duq1Izpl.mjs";import{S as a}from"./Screen-Ce8BE24H.mjs";const n=({primaryCta:n,secondaryCta:i,helpText:d,footerText:o,watermark:c=!0,children:s,...m})=>{let h=n||i?/*#__PURE__*/e(r,{children:[n&&(()=>{let{label:e,...r}=n,a=r.variant||"primary";/*#__PURE__*/return l(t,{...r,variant:a,style:{width:"100%",...r.style},children:e})})(),i&&(()=>{let{label:e,...r}=i,a=r.variant||"secondary";/*#__PURE__*/return l(t,{...r,variant:a,style:{width:"100%",...r.style},children:e})})()]}):null;/*#__PURE__*/return e(a,{id:m.id,className:m.className,children:[/*#__PURE__*/l(a.Header,{...m}),s?/*#__PURE__*/l(a.Body,{children:s}):null,d||h||c?/*#__PURE__*/e(a.Footer,{children:[d?/*#__PURE__*/l(a.HelpText,{children:d}):null,h?/*#__PURE__*/l(a.Actions,{children:h}):null,c?/*#__PURE__*/l(a.Watermark,{}):null]}):null,o?/*#__PURE__*/l(a.FooterText,{children:o}):null]})};export{n as S};
@@ -1,4 +1,4 @@
1
- import{k as e}from"./use-export-wallet-_wu5ex5t.mjs";import{jsxs as r,jsx as t}from"react/jsx-runtime";import{ChevronDown as o}from"lucide-react";import{useState as n,useRef as i,useCallback as a,useMemo as l}from"react";import{styled as s}from"styled-components";import{K as d}from"./index-YDEix4mU.mjs";import{S as c}from"./ScreenLayout-D1p_ntex.mjs";const u=async({operation:r,until:t,delay:o,interval:n,attempts:i,signal:a})=>{let l,s=0;for(;s<i;){if(a?.aborted)return{status:"aborted",result:l,attempts:s};s++;try{if(l=await r(),t(l))return{status:"success",result:l,attempts:s};s<i&&await e(n)}catch(r){s<i&&await e(n)}}return{status:"max_attempts",result:l,attempts:s}},m=e=>{try{return e.location.origin}catch{return}},p=async(e,r)=>{let t=await u({operation:async()=>({done:m(e)===window.location.origin,closed:e.closed}),until:({done:e,closed:r})=>e||r,delay:0,interval:500,attempts:360,signal:r});return"aborted"===t.status?(e.close(),{status:"aborted"}):"max_attempts"===t.status?{status:"timeout"}:t.result.done?(e.close(),{status:"redirected"}):{status:"closed"}},f=({currency:e="usd",value:o,onChange:s,inputMode:c="decimal",autoFocus:u})=>{let[m,p]=n("0"),f=i(null),h=o??m,v=d[e]?.symbol??"$",w=a((e=>{let r=e.target.value,t=(r=r.replace(/[^\d.]/g,"")).split(".");t.length>2&&(r=t[0]+"."+t.slice(1).join("")),2===t.length&&t[1].length>2&&(r=`${t[0]}.${t[1].slice(0,2)}`),r.length>1&&"0"===r[0]&&"."!==r[1]&&(r=r.slice(1)),(""===r||"."===r)&&(r="0"),s?s(r):p(r)}),[s]),b=a((e=>{!(["Delete","Backspace","Tab","Escape","Enter",".","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"].includes(e.key)||(e.ctrlKey||e.metaKey)&&["a","c","v","x"].includes(e.key.toLowerCase()))&&(e.key>="0"&&e.key<="9"||e.preventDefault())}),[]),x=l((()=>(h.includes("."),h)),[h]);/*#__PURE__*/return r(g,{onClick:()=>f.current?.focus(),children:[/*#__PURE__*/t(y,{children:v}),x,/*#__PURE__*/t("input",{ref:f,type:"text",inputMode:c,value:x,onChange:w,onKeyDown:b,autoFocus:u,placeholder:"0",style:{width:1,height:"1rem",opacity:0,alignSelf:"center",fontSize:"1rem"}}),/*#__PURE__*/t(y,{style:{opacity:0},children:v})]})},h=({selectedAsset:e,onEditSourceAsset:n})=>{let{icon:i}=d[e];/*#__PURE__*/return r(v,{onClick:n,children:[/*#__PURE__*/t(w,{children:i}),/*#__PURE__*/t(b,{children:e.toLocaleUpperCase()}),/*#__PURE__*/t(x,{children:/*#__PURE__*/t(o,{})})]})};let g=s.span`
1
+ import{n as e}from"./use-export-wallet-Db8GdSAT.mjs";import{jsxs as r,jsx as t}from"react/jsx-runtime";import{ChevronDown as o}from"lucide-react";import{useState as n,useRef as i,useCallback as a,useMemo as l}from"react";import{styled as s}from"styled-components";import{K as d}from"./index-D23O4czL.mjs";import{S as c}from"./ScreenLayout-B6n5Feil.mjs";const u=async({operation:r,until:t,delay:o,interval:n,attempts:i,signal:a})=>{let l,s=0;for(;s<i;){if(a?.aborted)return{status:"aborted",result:l,attempts:s};s++;try{if(l=await r(),t(l))return{status:"success",result:l,attempts:s};s<i&&await e(n)}catch(r){s<i&&await e(n)}}return{status:"max_attempts",result:l,attempts:s}},m=e=>{try{return e.location.origin}catch{return}},p=async(e,r)=>{let t=await u({operation:async()=>({done:m(e)===window.location.origin,closed:e.closed}),until:({done:e,closed:r})=>e||r,delay:0,interval:500,attempts:360,signal:r});return"aborted"===t.status?(e.close(),{status:"aborted"}):"max_attempts"===t.status?{status:"timeout"}:t.result.done?(e.close(),{status:"redirected"}):{status:"closed"}},f=({currency:e="usd",value:o,onChange:s,inputMode:c="decimal",autoFocus:u})=>{let[m,p]=n("0"),f=i(null),h=o??m,v=d[e]?.symbol??"$",w=a((e=>{let r=e.target.value,t=(r=r.replace(/[^\d.]/g,"")).split(".");t.length>2&&(r=t[0]+"."+t.slice(1).join("")),2===t.length&&t[1].length>2&&(r=`${t[0]}.${t[1].slice(0,2)}`),r.length>1&&"0"===r[0]&&"."!==r[1]&&(r=r.slice(1)),(""===r||"."===r)&&(r="0"),s?s(r):p(r)}),[s]),b=a((e=>{!(["Delete","Backspace","Tab","Escape","Enter",".","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"].includes(e.key)||(e.ctrlKey||e.metaKey)&&["a","c","v","x"].includes(e.key.toLowerCase()))&&(e.key>="0"&&e.key<="9"||e.preventDefault())}),[]),x=l((()=>(h.includes("."),h)),[h]);/*#__PURE__*/return r(g,{onClick:()=>f.current?.focus(),children:[/*#__PURE__*/t(y,{children:v}),x,/*#__PURE__*/t("input",{ref:f,type:"text",inputMode:c,value:x,onChange:w,onKeyDown:b,autoFocus:u,placeholder:"0",style:{width:1,height:"1rem",opacity:0,alignSelf:"center",fontSize:"1rem"}}),/*#__PURE__*/t(y,{style:{opacity:0},children:v})]})},h=({selectedAsset:e,onEditSourceAsset:n})=>{let{icon:i}=d[e];/*#__PURE__*/return r(v,{onClick:n,children:[/*#__PURE__*/t(w,{children:i}),/*#__PURE__*/t(b,{children:e.toLocaleUpperCase()}),/*#__PURE__*/t(x,{children:/*#__PURE__*/t(o,{})})]})};let g=s.span`
2
2
  background-color: var(--privy-color-background);
3
3
  width: 100%;
4
4
  text-align: center;
@@ -1,4 +1,4 @@
1
- import{jsxs as e,Fragment as r,jsx as o}from"react/jsx-runtime";import t from"@heroicons/react/24/outline/ExclamationTriangleIcon";import i from"@heroicons/react/24/outline/LockClosedIcon";import{useState as n}from"react";import{u as l,a,j as s}from"./privy-context-DrMxzgOR.mjs";import{M as c,c as m,B as d}from"./ModalHeader-BnVmXtvG.mjs";import{styled as p}from"styled-components";import{S as u}from"./Subtitle-CV-2yKE4.mjs";import{T as y}from"./Title-BnzYV3Is.mjs";import{q as h}from"./context-DLtU3JQy.mjs";import{u as f}from"./internal-context-Z-fyxadS.mjs";import{G as v}from"./useActiveWallet-CvP7iYvj.mjs";import"@privy-io/are-addresses-equal";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"@privy-io/js-sdk-core";import"tinycolor2";import"ofetch";import"zustand";import"react-device-detect";import"./use-export-wallet-_wu5ex5t.mjs";import"./useWallets-BzNCTucF.mjs";import"viem";import"eventemitter3";import"viem/utils";import"./events-context-CI0iqAXA.mjs";const g=p.div`
1
+ import{jsxs as e,Fragment as r,jsx as o}from"react/jsx-runtime";import t from"@heroicons/react/24/outline/ExclamationTriangleIcon";import i from"@heroicons/react/24/outline/LockClosedIcon";import{useState as n}from"react";import{u as l,a,j as s}from"./privy-context-CkPtrpbt.mjs";import{M as c,c as m,B as d}from"./ModalHeader-Duq1Izpl.mjs";import{styled as p}from"styled-components";import{S as u}from"./Subtitle-CV-2yKE4.mjs";import{T as y}from"./Title-BnzYV3Is.mjs";import{q as f}from"./context-aGvo4MVQ.mjs";import{u as h}from"./internal-context-C4ZqP8IF.mjs";import{G as v}from"./useActiveWallet-By6UNJY1.mjs";import"@privy-io/are-addresses-equal";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"@privy-io/js-sdk-core";import"tinycolor2";import"ofetch";import"zustand";import"viem";import"viem/utils";import"./use-export-wallet-Db8GdSAT.mjs";import"./get-entropy-details-for-user-DkZdXKpr.mjs";import"eventemitter3";import"react-device-detect";import"./events-context-CI0iqAXA.mjs";const g=p.div`
2
2
  && {
3
3
  border-width: 4px;
4
4
  }
@@ -11,4 +11,4 @@ import{jsxs as e,Fragment as r,jsx as o}from"react/jsx-runtime";import t from"@h
11
11
  border-style: solid;
12
12
  border-color: ${e=>e.$color??"var(--privy-color-accent)"};
13
13
  border-radius: 50%;
14
- `,w={component:()=>{let{user:p}=l(),{client:w,walletProxy:j,refreshSessionAndUser:x,closePrivyModal:b}=f(),I=a(),{entropyId:T,entropyIdVerifier:k}=I.data?.recoverWallet,[C,M]=n(!1),[S,W]=n(null),[A,U]=n(null);function E(){if(!C){if(A)return I.data?.setWalletPassword?.onFailure(A),void b();if(!S)return I.data?.setWalletPassword?.onFailure(Error("User exited set recovery flow")),void b()}}I.onUserCloseViaDialogOrKeybindRef.current=E;let P=!(!C&&!S);/*#__PURE__*/return e(r,A?{children:[/*#__PURE__*/o(c,{onClose:E},"header"),/*#__PURE__*/o(g,{$color:"var(--privy-color-error)",style:{alignSelf:"center"},children:/*#__PURE__*/o(t,{height:38,width:38,stroke:"var(--privy-color-error)"})}),/*#__PURE__*/o(y,{style:{marginTop:"0.5rem"},children:"Something went wrong"}),/*#__PURE__*/o(v,{style:{minHeight:"2rem"}}),/*#__PURE__*/o(m,{onClick:()=>U(null),children:"Try again"}),/*#__PURE__*/o(d,{})]}:{children:[/*#__PURE__*/o(c,{onClose:E},"header"),/*#__PURE__*/o(i,{style:{width:"3rem",height:"3rem",alignSelf:"center"}}),/*#__PURE__*/o(y,{style:{marginTop:"0.5rem"},children:"Automatically secure your account"}),/*#__PURE__*/o(u,{style:{marginTop:"1rem"},children:"When you log into a new device, you’ll only need to authenticate to access your account. Never get logged out if you forget your password."}),/*#__PURE__*/o(v,{style:{minHeight:"2rem"}}),/*#__PURE__*/o(m,{loading:C,disabled:P,onClick:()=>async function(){M(!0);try{let e=await w.getAccessToken(),r=s(p,T);if(!e||!j||!r)return;if(!(await j.setRecovery({accessToken:e,entropyId:T,entropyIdVerifier:k,existingRecoveryMethod:r.recoveryMethod,recoveryMethod:"privy"})).entropyId)throw Error("Unable to set recovery on wallet");let o=await x();if(!o)throw Error("Unable to set recovery on wallet");let t=s(o,r.address);if(!t)throw Error("Unabled to set recovery on wallet");W(!!o),setTimeout((()=>{I.data?.setWalletPassword?.onSuccess(t),b()}),h)}catch(e){U(e)}finally{M(!1)}}(),children:S?"Success":"Confirm"}),/*#__PURE__*/o(d,{})]})}};export{w as SetAutomaticRecoveryScreen,w as default};
14
+ `,w={component:()=>{let{user:p}=l(),{client:w,walletProxy:j,refreshSessionAndUser:x,closePrivyModal:b}=h(),I=a(),{entropyId:T,entropyIdVerifier:k}=I.data?.recoverWallet,[C,M]=n(!1),[S,A]=n(null),[U,W]=n(null);function E(){if(!C){if(U)return I.data?.setWalletPassword?.onFailure(U),void b();if(!S)return I.data?.setWalletPassword?.onFailure(Error("User exited set recovery flow")),void b()}}I.onUserCloseViaDialogOrKeybindRef.current=E;let P=!(!C&&!S);/*#__PURE__*/return e(r,U?{children:[/*#__PURE__*/o(c,{onClose:E},"header"),/*#__PURE__*/o(g,{$color:"var(--privy-color-error)",style:{alignSelf:"center"},children:/*#__PURE__*/o(t,{height:38,width:38,stroke:"var(--privy-color-error)"})}),/*#__PURE__*/o(y,{style:{marginTop:"0.5rem"},children:"Something went wrong"}),/*#__PURE__*/o(v,{style:{minHeight:"2rem"}}),/*#__PURE__*/o(m,{onClick:()=>W(null),children:"Try again"}),/*#__PURE__*/o(d,{})]}:{children:[/*#__PURE__*/o(c,{onClose:E},"header"),/*#__PURE__*/o(i,{style:{width:"3rem",height:"3rem",alignSelf:"center"}}),/*#__PURE__*/o(y,{style:{marginTop:"0.5rem"},children:"Automatically secure your account"}),/*#__PURE__*/o(u,{style:{marginTop:"1rem"},children:"When you log into a new device, you’ll only need to authenticate to access your account. Never get logged out if you forget your password."}),/*#__PURE__*/o(v,{style:{minHeight:"2rem"}}),/*#__PURE__*/o(m,{loading:C,disabled:P,onClick:()=>async function(){M(!0);try{let e=await w.getAccessToken(),r=s(p,T);if(!e||!j||!r)return;if(!(await j.setRecovery({accessToken:e,entropyId:T,entropyIdVerifier:k,existingRecoveryMethod:r.recoveryMethod,recoveryMethod:"privy"})).entropyId)throw Error("Unable to set recovery on wallet");let o=await x();if(!o)throw Error("Unable to set recovery on wallet");let t=s(o,r.address);if(!t)throw Error("Unabled to set recovery on wallet");A(!!o),setTimeout((()=>{I.data?.setWalletPassword?.onSuccess(t),b()}),f)}catch(e){W(e)}finally{M(!1)}}(),children:S?"Success":"Confirm"}),/*#__PURE__*/o(d,{})]})}};export{w as SetAutomaticRecoveryScreen,w as default};
@@ -1,4 +1,4 @@
1
- import{jsxs as e,Fragment as r,jsx as o}from"react/jsx-runtime";import{useState as n,useEffect as i,useMemo as t,useCallback as a,useReducer as l}from"react";import{q as c}from"./context-DLtU3JQy.mjs";import{a as s}from"./privy-context-DrMxzgOR.mjs";import d from"@heroicons/react/24/outline/ExclamationTriangleIcon";import{b as h,R as p,c as u}from"./Layouts-BlFm53ED.mjs";import{M as m,B as g,S as y,P as v}from"./ModalHeader-BnVmXtvG.mjs";import{E as f,b as w,P as b,a as k,I as C,H as S,S as x,c as $,N as B,D as R,d as P,R as j,e as A,f as I,g as L}from"./shared-DhWmkz5T.mjs";import{styled as E}from"styled-components";import{C as U}from"./Checkbox-BhNoOKjX.mjs";import z from"@heroicons/react/24/outline/KeyIcon";import D from"@heroicons/react/24/solid/CheckCircleIcon";import H from"fast-password-entropy";import*as T from"secure-password-utilities";import{DEFAULT_WORDLIST as F}from"secure-password-utilities/wordlists";import M from"@heroicons/react/24/outline/ArrowDownTrayIcon";import K from"@heroicons/react/24/outline/ClipboardDocumentCheckIcon";import O from"@heroicons/react/24/outline/DocumentDuplicateIcon";import N from"@heroicons/react/24/solid/XCircleIcon";import{C as W}from"./ScreenHeader-CHmc4-Lu.mjs";const Y=({buttonHideAnimations:t,buttonLoading:a,password:l,onSubmit:c,onBack:s})=>{let[u,y]=n(!0),[v,R]=n(!1),[P,j]=n(""),A=l===P;return i((()=>{P&&!v&&R(!0)}),[P]),/*#__PURE__*/e(r,{children:[/*#__PURE__*/o(m,{closeable:!1,backFn:s}),/*#__PURE__*/o(h,{}),/*#__PURE__*/e(f,{children:[/*#__PURE__*/e(w,{children:[/*#__PURE__*/o(d,{height:48,width:48,stroke:"var(--privy-color-background)",fill:"var(--privy-color-accent)"}),/*#__PURE__*/o("h3",{style:{color:"var(--privy-color-foreground)"},children:"Confirm your password"}),/*#__PURE__*/o("p",{style:{color:"var(--privy-color-foreground-2)"},children:"Please re-enter your password below to continue."})]}),/*#__PURE__*/e(b,{children:[/*#__PURE__*/o(k,{value:P,onChange:e=>j(e.target.value),onKeyUp:e=>{"Enter"===e.key&&c()},onBlur:()=>R(!0),placeholder:"confirm your password",type:u?"password":"text",style:{paddingRight:"2.3rem"}}),/*#__PURE__*/o(C,{style:{right:"0.75rem"},children:u?/*#__PURE__*/o(S,{onClick:()=>y(!1)}):/*#__PURE__*/o(x,{onClick:()=>y(!0)})})]}),
1
+ import{jsxs as e,Fragment as r,jsx as o}from"react/jsx-runtime";import{useState as n,useEffect as i,useMemo as t,useCallback as a,useReducer as l}from"react";import{q as c}from"./context-aGvo4MVQ.mjs";import{a as s}from"./privy-context-CkPtrpbt.mjs";import d from"@heroicons/react/24/outline/ExclamationTriangleIcon";import{b as h,R as p,c as u}from"./Layouts-BlFm53ED.mjs";import{M as m,B as g,S as y,P as v}from"./ModalHeader-Duq1Izpl.mjs";import{E as f,b as w,P as b,a as k,I as C,H as S,S as x,c as $,N as B,D as R,d as P,R as j,e as A,f as I,g as L}from"./shared-BivH4vdQ.mjs";import{styled as E}from"styled-components";import{C as U}from"./Checkbox-BhNoOKjX.mjs";import z from"@heroicons/react/24/outline/KeyIcon";import D from"@heroicons/react/24/solid/CheckCircleIcon";import H from"fast-password-entropy";import*as T from"secure-password-utilities";import{DEFAULT_WORDLIST as F}from"secure-password-utilities/wordlists";import M from"@heroicons/react/24/outline/ArrowDownTrayIcon";import K from"@heroicons/react/24/outline/ClipboardDocumentCheckIcon";import O from"@heroicons/react/24/outline/DocumentDuplicateIcon";import N from"@heroicons/react/24/solid/XCircleIcon";import{C as W}from"./ScreenHeader-CHmc4-Lu.mjs";const Y=({buttonHideAnimations:t,buttonLoading:a,password:l,onSubmit:c,onBack:s})=>{let[u,y]=n(!0),[v,R]=n(!1),[P,j]=n(""),A=l===P;return i((()=>{P&&!v&&R(!0)}),[P]),/*#__PURE__*/e(r,{children:[/*#__PURE__*/o(m,{closeable:!1,backFn:s}),/*#__PURE__*/o(h,{}),/*#__PURE__*/e(f,{children:[/*#__PURE__*/e(w,{children:[/*#__PURE__*/o(d,{height:48,width:48,stroke:"var(--privy-color-background)",fill:"var(--privy-color-accent)"}),/*#__PURE__*/o("h3",{style:{color:"var(--privy-color-foreground)"},children:"Confirm your password"}),/*#__PURE__*/o("p",{style:{color:"var(--privy-color-foreground-2)"},children:"Please re-enter your password below to continue."})]}),/*#__PURE__*/e(b,{children:[/*#__PURE__*/o(k,{value:P,onChange:e=>j(e.target.value),onKeyUp:e=>{"Enter"===e.key&&c()},onBlur:()=>R(!0),placeholder:"confirm your password",type:u?"password":"text",style:{paddingRight:"2.3rem"}}),/*#__PURE__*/o(C,{style:{right:"0.75rem"},children:u?/*#__PURE__*/o(S,{onClick:()=>y(!1)}):/*#__PURE__*/o(x,{onClick:()=>y(!0)})})]}),
2
2
  /*#__PURE__*/o($,{"aria-hidden":!v||A,error:!0,children:"Passwords do not match"})]}),/*#__PURE__*/o(B,{onClick:c,loading:a,disabled:!A,$hideAnimations:t,children:"Continue"}),/*#__PURE__*/o(p,{}),/*#__PURE__*/o(g,{})]})},Z=({buttonHideAnimations:i,buttonLoading:t,onSubmit:a,onBack:l,config:c})=>{let[s,u]=n(!1);/*#__PURE__*/return e(r,{children:[/*#__PURE__*/o(m,{closeable:!1,backFn:l}),/*#__PURE__*/o(h,{}),/*#__PURE__*/e(f,{children:[/*#__PURE__*/e(w,{children:[/*#__PURE__*/o(d,{height:48,width:48,stroke:"var(--privy-color-background)",fill:"var(--privy-color-error)"}),/*#__PURE__*/o("h3",{style:{color:"var(--privy-color-foreground)"},children:"Confirm you have saved"}),/*#__PURE__*/o("p",{style:{color:"var(--privy-color-foreground-2)"},children:"Losing access to your password means you will lose access to your account."})]}),/*#__PURE__*/o(R,{children:/*#__PURE__*/e(P,{style:{color:"var(--privy-color-error)",cursor:"pointer"},onClick:e=>{e.preventDefault(),u((e=>!e))},children:[/*#__PURE__*/o(U,{color:"var(--privy-color-error)",readOnly:!0,checked:s}),/*#__PURE__*/o(r,{children:"I understand that if I lose my password and device, I will lose access to my account and my assets."})]})})]}),/*#__PURE__*/e(_,{children:["user"===c.initiatedBy&&/*#__PURE__*/o(y,{onClick:c.onCancel,disabled:t,children:"Cancel"}),/*#__PURE__*/o(B,{onClick:a,loading:t,$hideAnimations:i,disabled:!s,children:"Set Password"})]}),/*#__PURE__*/o(p,{}),/*#__PURE__*/o(g,{})]})};let _=E.div`
3
3
  display: flex;
4
4
  gap: 10px;
@@ -1,4 +1,4 @@
1
- import{jsx as e,jsxs as t,Fragment as o}from"react/jsx-runtime";import{base64 as r}from"@scure/base";import{Edit as i}from"lucide-react";import{useState as n,useEffect as a}from"react";import{styled as s}from"styled-components";import{isHex as l,hexToString as c}from"viem";import{ProviderErrors as m}from"@privy-io/js-sdk-core";import{C as p}from"./CopyToClipboard-DSTf_eKU.mjs";import{a as d}from"./Layouts-BlFm53ED.mjs";import{M as u,D as g}from"./JsonTree-aPaJmPx7.mjs";import{P as y,G as h}from"./use-export-wallet-_wu5ex5t.mjs";import{W as f,q as x}from"./context-DLtU3JQy.mjs";import{u as C}from"./internal-context-Z-fyxadS.mjs";import{u as v,a as b}from"./privy-context-DrMxzgOR.mjs";import{S as w}from"./ScreenLayout-D1p_ntex.mjs";import"./useWallets-BzNCTucF.mjs";import"eventemitter3";import"viem/utils";import"tinycolor2";import"ofetch";import"@privy-io/are-addresses-equal";import"./ModalHeader-BnVmXtvG.mjs";import"./useActiveWallet-CvP7iYvj.mjs";import"zustand";import"react-device-detect";import"./events-context-CI0iqAXA.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const j=s.img`
1
+ import{jsx as e,jsxs as t,Fragment as o}from"react/jsx-runtime";import{base64 as r}from"@scure/base";import{Edit as i}from"lucide-react";import{useState as n,useEffect as a}from"react";import{styled as s}from"styled-components";import{isHex as l,hexToString as c}from"viem";import{ProviderErrors as m}from"@privy-io/js-sdk-core";import{C as p}from"./CopyToClipboard-DSTf_eKU.mjs";import{a as d}from"./Layouts-BlFm53ED.mjs";import{M as u,D as g}from"./JsonTree-aPaJmPx7.mjs";import{P as y,G as h}from"./use-export-wallet-Db8GdSAT.mjs";import{W as f,q as x}from"./context-aGvo4MVQ.mjs";import{u as C}from"./internal-context-C4ZqP8IF.mjs";import{u as v,a as b}from"./privy-context-CkPtrpbt.mjs";import{S as w}from"./ScreenLayout-B6n5Feil.mjs";import"./get-entropy-details-for-user-DkZdXKpr.mjs";import"zustand";import"eventemitter3";import"viem/utils";import"tinycolor2";import"ofetch";import"@privy-io/are-addresses-equal";import"./ModalHeader-Duq1Izpl.mjs";import"./useActiveWallet-By6UNJY1.mjs";import"react-device-detect";import"./events-context-CI0iqAXA.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Ce8BE24H.mjs";import"./index-Dq_xe9dz.mjs";const j=s.img`
2
2
  && {
3
3
  height: ${e=>"sm"===e.size?"65px":"140px"};
4
4
  width: ${e=>"sm"===e.size?"65px":"140px"};
@@ -1,4 +1,4 @@
1
- import{jsxs as t,jsx as n,Fragment as e}from"react/jsx-runtime";import{useState as a,useMemo as r,useEffect as o}from"react";import{formatTokenAmount as i}from"@privy-io/js-sdk-core";import{a as s,u as c,f as l,g as d}from"./privy-context-DrMxzgOR.mjs";import{u}from"./context-DLtU3JQy.mjs";import{u as m}from"./internal-context-Z-fyxadS.mjs";import{u as p}from"./useGetSolPrice-DwwjjGbd.mjs";import{ErrorScreenView as f}from"./ErrorScreen-sNIfGI6q.mjs";import g from"@heroicons/react/24/outline/CheckCircleIcon";import{styled as h}from"styled-components";import{M as y,B as w,P as k}from"./ModalHeader-BnVmXtvG.mjs";import{R as v}from"./Layouts-BlFm53ED.mjs";import{C as b}from"./ScreenHeader-CHmc4-Lu.mjs";import{a as A,R as I}from"./Row-C9vrS4Zi.mjs";import{L as S,V as j}from"./Value-tcJV9e0L.mjs";import{S as C,W as T}from"./WalletLink-DNbGmOPX.mjs";import{e as O}from"./StackedContainer-B2vaEl56.mjs";import{G as x}from"./useActiveWallet-CvP7iYvj.mjs";import{T as $,a as L}from"./TransactionErrorView-BjaCgZpa.mjs";import{g as E}from"./transaction-CnfuREWo.mjs";import{pipe as P,getCompiledTransactionMessageDecoder as _,decompileTransactionMessage as F,setTransactionMessageLifetimeUsingBlockhash as W,compileTransaction as B,getTransactionEncoder as J,getBase58Decoder as R,fetchAddressesForLookupTables as q}from"@solana/kit";import{a as D,f as M,s as U,b as H,u as V}from"./useSolanaRpcClient-71aYSqHX.mjs";import{D as z,T as G,a as X,S as K,A as N,R as Q,J as Y,g as Z}from"./getFormattedUsdFromLamports-B6EqSEho.mjs";import"@privy-io/are-addresses-equal";import"tinycolor2";import"ofetch";import"lucide-react";import"./index-YDEix4mU.mjs";import"uuid";import"jose";import"eventemitter3";import"./useWallets-BzNCTucF.mjs";import"viem";import"./use-export-wallet-_wu5ex5t.mjs";import"viem/utils";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"react-device-detect";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"./events-context-CI0iqAXA.mjs";import"@scure/base";import"zustand";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./PrivyPluginContext-2QN2dVUw.mjs";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"./reservoir-0wfhnc0j.mjs";import"./ScreenLayout-D1p_ntex.mjs";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./LoadingSkeleton-U6-3yFwI.mjs";import"./ethers-Dnv1tMN3.mjs";import"@heroicons/react/24/outline";import"./ErrorMessage-D8VaAP5m.mjs";import"./LabelXs-oqZNqbm_.mjs";import"./Subtitle-CV-2yKE4.mjs";import"./Title-BnzYV3Is.mjs";import"./Address-N-mzBgMy.mjs";import"./WalletInfoCard-CEcdukTg.mjs";import"./shared-FM0rljBt.mjs";import"./Checkbox-BhNoOKjX.mjs";import"./ErrorBanner-CQERa7bL.mjs";import"@heroicons/react/24/outline/ExclamationCircleIcon";import"./WarningBanner-D5LqDt95.mjs";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"@heroicons/react/24/outline/ClipboardDocumentCheckIcon";import"@heroicons/react/24/outline/ClipboardDocumentIcon";const tt=h.span`
1
+ import{jsxs as t,jsx as n,Fragment as e}from"react/jsx-runtime";import{useState as a,useMemo as r,useEffect as o}from"react";import{formatTokenAmount as i}from"@privy-io/js-sdk-core";import{a as s,u as c,h as l,g as d}from"./privy-context-CkPtrpbt.mjs";import{u}from"./context-aGvo4MVQ.mjs";import{u as m}from"./internal-context-C4ZqP8IF.mjs";import{u as p}from"./useGetSolPrice-DaxM-vxD.mjs";import{ErrorScreenView as f}from"./ErrorScreen-DYZatCfj.mjs";import g from"@heroicons/react/24/outline/CheckCircleIcon";import{styled as h}from"styled-components";import{M as y,B as w,P as k}from"./ModalHeader-Duq1Izpl.mjs";import{R as v}from"./Layouts-BlFm53ED.mjs";import{C as b}from"./ScreenHeader-CHmc4-Lu.mjs";import{a as A,R as I}from"./Row-C9vrS4Zi.mjs";import{L as S,V as j}from"./Value-tcJV9e0L.mjs";import{S as C,W as T}from"./WalletLink-WeWEMb7C.mjs";import{e as O}from"./StackedContainer-B2vaEl56.mjs";import{G as x}from"./useActiveWallet-By6UNJY1.mjs";import{T as $,a as L}from"./TransactionErrorView-B_dlkXgb.mjs";import{g as E}from"./transaction-CnfuREWo.mjs";import{pipe as P,getCompiledTransactionMessageDecoder as _,decompileTransactionMessage as F,setTransactionMessageLifetimeUsingBlockhash as B,compileTransaction as W,getTransactionEncoder as J,getBase58Decoder as R,fetchAddressesForLookupTables as q}from"@solana/kit";import{a as D,f as M,s as U,b as H,u as V}from"./useSolanaRpcClient-DgxuhW6A.mjs";import{D as z,T as G,a as X,S as K,A as N,R as Q,J as Y,g as Z}from"./getFormattedUsdFromLamports-B6EqSEho.mjs";import"@privy-io/are-addresses-equal";import"tinycolor2";import"ofetch";import"lucide-react";import"./index-D23O4czL.mjs";import"uuid";import"jose";import"eventemitter3";import"./use-export-wallet-Db8GdSAT.mjs";import"./get-entropy-details-for-user-DkZdXKpr.mjs";import"viem";import"zustand";import"viem/utils";import"@coinbase/wallet-sdk";import"react-device-detect";import"@walletconnect/ethereum-provider";import"./usePrivy-DPZ1iMmn.mjs";import"./events-context-CI0iqAXA.mjs";import"./paths-BzM95ysC.mjs";import"js-cookie";import"./PrivyPluginContext-2QN2dVUw.mjs";import"mipd";import"@privy-io/popup";import"@scure/base";import"@headlessui/react";import"@privy-io/urls";import"@privy-io/ethereum";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"./frame-CjhCpycO.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-BYctG7hm.mjs";import"./reservoir-DGil2p_K.mjs";import"./ScreenLayout-B6n5Feil.mjs";import"./Screen-Ce8BE24H.mjs";import"./index-Dq_xe9dz.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./LoadingSkeleton-U6-3yFwI.mjs";import"./ethers-BNftJuZG.mjs";import"@heroicons/react/24/outline";import"./ErrorMessage-D8VaAP5m.mjs";import"./LabelXs-oqZNqbm_.mjs";import"./Subtitle-CV-2yKE4.mjs";import"./Title-BnzYV3Is.mjs";import"./Address-PwZSXm9b.mjs";import"./WalletInfoCard-CSqr9o--.mjs";import"./shared-FM0rljBt.mjs";import"./Checkbox-BhNoOKjX.mjs";import"./ErrorBanner-CQERa7bL.mjs";import"@heroicons/react/24/outline/ExclamationCircleIcon";import"./WarningBanner-D5LqDt95.mjs";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"@heroicons/react/24/outline/ClipboardDocumentCheckIcon";import"@heroicons/react/24/outline/ClipboardDocumentIcon";const tt=h.span`
2
2
  && {
3
3
  width: 82px;
4
4
  height: 82px;
@@ -17,4 +17,4 @@ import{jsxs as t,jsx as n,Fragment as e}from"react/jsx-runtime";import{useState
17
17
  transition:
18
18
  color 350ms ease,
19
19
  background-color 350ms ease;
20
- `;async function rt(t,n){try{return await t}catch{return n}}function ot(t){switch(t){case"solana:mainnet":return"mainnet-beta";case"solana:devnet":return"devnet";case"solana:testnet":return"testnet"}}async function it({privyClient:t,chain:n,mint:e}){let a=z[n];if(!a[e]){let r=await t.getSplTokenMetadata({mintAddress:e,cluster:ot(n)});r&&(a[e]={address:e,symbol:r.symbol,decimals:r.decimals})}return a[e]}async function st({tx:t,solanaClient:n,privyClient:e,checkFunds:a}){let r=_().decode(D(t)),o=r.staticAccounts[0]??"",i=await M({solanaClient:n,tx:t}),s=a?await rt(U({solanaClient:n,tx:t})):void 0,c=s?.hasFunds??!0,l={},d=[],u=await async function({solanaClient:t,message:n}){if(!("addressTableLookups"in n)||!n.addressTableLookups)return[...n.staticAccounts];let e=n.addressTableLookups.map((t=>t.lookupTableAddress)),a=await q(e,t.rpc),r=e.map(((t,e)=>[...n.addressTableLookups[e]?.writableIndexes.map((n=>{let r=a[t]?.[n];if(r)return{key:r,isWritable:!0,altIdx:e}}))??[],...n.addressTableLookups[e]?.readonlyIndexes.map((n=>{let r=a[t]?.[n];if(r)return{key:r,isWritable:!1,altIdx:e}}))??[]])).flat().filter((t=>!!t)).sort(((t,n)=>t.isWritable!==n.isWritable?t.isWritable?-1:1:t.altIdx-n.altIdx)).map((({key:t})=>t));return[...n.staticAccounts,...r]}({solanaClient:n,message:r});for(let t of r.instructions){let a=r.staticAccounts[t.programAddressIndex]||"";if(a!==G&&a!==X)if(a!==K){if(a===N){let n=await rt(function(t,n,e){let[a,r,o,i]=t.accountIndices?.map((t=>n[t]))??[];return{type:"ata-creation",program:e,payer:a,ata:r,owner:o,mint:i}}(t,u,a));if(!n){d.push({type:"unknown",program:a,discriminator:t.data?.[0]});continue}if(d.push(n),n.ata&&n.owner&&n.mint){l[n.ata]={owner:n.owner,mint:n.mint};continue}}if(Q.includes(a)){let r=await rt(ut(t,u,n,e,a));if(!r){d.push({type:"unknown",program:a,discriminator:t.data?.[0]});continue}d.push(r)}else if(Y.includes(a)){let r=await rt(mt(t,u,n,e,a));if(!r){d.push({type:"unknown",program:a,discriminator:t.data?.[0]});continue}d.push(r)}else d.push({type:"unknown",program:a,discriminator:t.data?.[0]})}else{let n=await rt(dt(t,u));if(!n){d.push({type:"unknown",program:a,discriminator:t.data?.[0]});continue}d.push(n)}else{let r=await rt(lt(t,u,n,e,l,a));if(!r){d.push({type:"unknown",program:a,discriminator:t.data?.[0]});continue}d.push(r),"spl-transfer"===r.type&&(r.fromAta&&r.fromAccount&&r.token.address&&(l[r.fromAta]??={owner:r.fromAccount,mint:r.token.address}),r.toAta&&r.toAccount&&r.token.address&&(l[r.toAta]??={owner:r.toAccount,mint:r.token.address}))}}return{spender:o,fee:i,instructions:d,hasFunds:!!c}}function ct(t,n=0){try{return function(t,n=0){let e=0n;for(let a=0;a<8;a++)e|=BigInt(t[n+a])<<BigInt(8*a);return e}(t,n)}catch{}try{return t.readBigInt64LE(n)}catch{}let e=H(t);try{return((t,n=0)=>{let e=t[n],a=t[n+7];if(!e||!a)throw Error(`Buffer offset out of range: first: ${e}, last: ${a}.`);return(BigInt(t[n+4]+256*t[n+5]+65536*t[n+6]+(a<<24))<<32n)+BigInt(e+256*t[++n]+65536*t[++n]+16777216*t[++n])})(e)}catch{}try{return e.subarray(n).readBigInt64LE()}catch{}try{return e.readBigInt64LE(n)}catch{}return 0n}async function lt(t,n,e,a,r,o){let i=t.data?.[0],s=t.accountIndices?.map((t=>n[t]))??[];if(1===i){let[t,n,e]=s;return{type:"spl-init-account",program:o,account:t,mint:n,owner:e}}if(3===i){let n,i,[c,l,d]=s,u="",m=l?r[l]:void 0;if(m)n=m.owner,u=m.mint;else if(l){let t=await e.rpc.getAccountInfo(l,{commitment:"confirmed",encoding:"jsonParsed"}).send(),a=t.value?.data;n=a?.parsed?.info?.owner,u=a?.parsed?.info?.mint??"",i=a?.parsed?.info?.tokenAmount?.decimals}if(!u&&c){let t=await e.rpc.getAccountInfo(c,{commitment:"confirmed",encoding:"jsonParsed"}).send(),n=t.value?.data;u=n?.parsed?.info?.mint??""}let p=await it({privyClient:a,chain:e.chain,mint:u}),f=p?.symbol??"";return i??=p?.decimals??9,{type:"spl-transfer",program:o,fromAta:c,fromAccount:d,toAta:l,toAccount:n,value:ct(t.data,1),token:{symbol:f,decimals:i,address:u}}}if(9===i){let[t,n,e]=s;return{type:"spl-close-account",program:o,source:t,destination:n,owner:e}}if(17===i)return{type:"spl-sync-native",program:o};throw Error(`Token program instruction type ${i} not supported`)}async function dt(t,n){let e=t.data?.[0],a=t.accountIndices?.map((t=>n[t]))??[];if(0===e){let[,n]=a;return{type:"create-account",program:K,account:n?.toString(),value:ct(t.data,4),withSeed:!1}}if(2===e){let[n,e]=a;return{type:"sol-transfer",program:K,fromAccount:n,toAccount:e,token:{symbol:"SOL",decimals:9},value:ct(t.data,4),withSeed:!1}}if(3===e){let[,n]=a;return{type:"create-account",program:K,account:n,withSeed:!0,value:ct(t.data.slice(t.data.length-32-8-8))}}if(11===e){let[n,e]=a;return{type:"sol-transfer",program:K,fromAccount:n,toAccount:e,value:ct(t.data,4),token:{symbol:"SOL",decimals:9},withSeed:!0}}throw Error(`System program instruction type ${e} not supported`)}async function ut(t,n,e,a,r){let o=t.accountIndices?.map((t=>n[t]))??[],i=t.data?.[0];if(143===i){let n=o[10],i=o[11];return{type:"raydium-swap-base-input",program:r,mintIn:n,mintOut:i,tokenIn:n?await it({privyClient:a,chain:e.chain,mint:n}):void 0,tokenOut:i?await it({privyClient:a,chain:e.chain,mint:i}):void 0,amountIn:ct(t.data,8),minimumAmountOut:ct(t.data,16)}}if(55===i){let n=o[10],i=o[11];return{type:"raydium-swap-base-output",program:r,mintIn:n,mintOut:i,tokenIn:n?await it({privyClient:a,chain:e.chain,mint:n}):void 0,tokenOut:i?await it({privyClient:a,chain:e.chain,mint:i}):void 0,maxAmountIn:ct(t.data,8),amountOut:ct(t.data,16)}}throw Error(`Raydium swap program instruction type ${i} not supported`)}async function mt(t,n,e,a,r){let o=t.data?.[0],i=t.accountIndices?.map((t=>n[t]))??[];if([208,51,239,151,123,43,237,92].includes(o)){let n=i[5],o=i[6];return{type:"jupiter-swap-exact-out-route",program:r,mintIn:n,mintOut:o,tokenIn:n?await it({privyClient:a,chain:e.chain,mint:n}):void 0,tokenOut:o?await it({privyClient:a,chain:e.chain,mint:o}):void 0,outAmount:ct(t.data,t.data.length-1-2-8-8),quotedInAmount:ct(t.data,t.data.length-1-2-8)}}if([176,209,105,168,154,125,69,62].includes(o)){let n=i[7],o=i[8];return{type:"jupiter-swap-exact-out-route",program:r,mintIn:n,mintOut:o,tokenIn:n?await it({privyClient:a,chain:e.chain,mint:n}):void 0,tokenOut:o?await it({privyClient:a,chain:e.chain,mint:o}):void 0,outAmount:ct(t.data,t.data.length-1-2-8-8),quotedInAmount:ct(t.data,t.data.length-1-2-8)}}if([193,32,155,51,65,214,156,129].includes(o)){let n=i[7],o=i[8];return{type:"jupiter-swap-shared-accounts-route",program:r,mintIn:n,mintOut:o,tokenIn:n?await it({privyClient:a,chain:e.chain,mint:n}):void 0,tokenOut:o?await it({privyClient:a,chain:e.chain,mint:o}):void 0,inAmount:ct(t.data,t.data.length-1-2-8-8),quotedOutAmount:ct(t.data,t.data.length-1-2-8)}}throw[62,198,214,193,213,159,108,210].includes(o)&&console.warn("Jupiter swap program instruction 'claim' not implemented"),[116,206,27,191,166,19,0,73].includes(o)&&console.warn("Jupiter swap program instruction 'claim_token' not implemented"),[26,74,236,151,104,64,183,249].includes(o)&&console.warn("Jupiter swap program instruction 'close_token' not implemented"),[229,194,212,172,8,10,134,147].includes(o)&&console.warn("Jupiter swap program instruction 'create_open_orders' not implemented"),[28,226,32,148,188,136,113,171].includes(o)&&console.warn("Jupiter swap program instruction 'create_program_open_orders' not implemented"),[232,242,197,253,240,143,129,52].includes(o)&&console.warn("Jupiter swap program instruction 'create_token_ledger' not implemented"),[147,241,123,100,244,132,174,118].includes(o)&&console.warn("Jupiter swap program instruction 'create_token_account' not implemented"),[229,23,203,151,122,227,173,42].includes(o)&&console.warn("Jupiter swap program instruction 'route' not implemented"),[150,86,71,116,167,93,14,104].includes(o)&&console.warn("Jupiter swap program instruction 'route_with_token_ledger' not implemented"),[228,85,185,112,78,79,77,2].includes(o)&&console.warn("Jupiter swap program instruction 'set_token_ledger' not implemented"),[230,121,143,80,119,159,106,170].includes(o)&&console.warn("Jupiter swap program instruction 'shared_accounts_route_with_token_ledger' not implemented"),Error(`Jupiter swap program instruction type ${o} not supported`)}const pt={component:()=>{let{data:t,onUserCloseViaDialogOrKeybindRef:e,setModalData:g,navigate:h}=s(),{client:y,closePrivyModal:w,walletProxy:k,showFiatPrices:v}=m(),b=u(),{user:A}=c(),I=V()(t?.standardSignAndSendTransaction?.chain??"solana:mainnet"),[S,j]=a(t?.standardSignAndSendTransaction?.transaction),[C,T]=a(),[O,x]=a(),[q,M]=a({value:0n,isLoading:!1}),[U,H]=a(!1),[z,G]=a({}),[X,K]=a(),N=t?.standardSignAndSendTransaction?.account,Q=!!t?.standardSignAndSendTransaction?.signOnly,Y=!!t?.standardSignAndSendTransaction?.isSponsored,tt=N?.imported?l(A).find((t=>t.address===N.address)):d(A),{solPrice:nt,isSolPriceLoading:at}=p({enabled:v}),rt=r((()=>{if(!C)return;let t=C.spender,n=E(C.fee),e=E(q.value,3,!0),a=C.instructions.filter((t=>["sol-transfer","spl-transfer","raydium-swap-base-input","raydium-swap-base-output","jupiter-swap-shared-accounts-route","jupiter-swap-exact-out-route"].includes(t.type))),r=a.at(0);if(!r||a.length>1)return{fee:n,spender:t,balance:e};if("sol-transfer"===r.type)return{fee:n,spender:t,balance:e,total:E(r.value)};if("spl-transfer"===r.type)return{fee:n,spender:t,balance:e,total:`${i({amount:r.value,decimals:r.token.decimals})} ${r.token.symbol}`};if("raydium-swap-base-input"===r.type&&r.tokenIn&&r.tokenOut){return{fee:n,spender:t,balance:e,swap:`${`${i({amount:r.amountIn,decimals:r.tokenIn.decimals})} ${r.tokenIn.symbol}`} → ${`${i({amount:r.minimumAmountOut,decimals:r.tokenOut.decimals})} ${r.tokenOut.symbol}`}`}}if("raydium-swap-base-output"===r.type&&r.tokenIn&&r.tokenOut){return{fee:n,spender:t,balance:e,swap:`${`${i({amount:r.maxAmountIn,decimals:r.tokenIn.decimals})} ${r.tokenIn.symbol}`} → ${`${i({amount:r.amountOut,decimals:r.tokenOut.decimals})} ${r.tokenOut.symbol}`}`}}if("jupiter-swap-shared-accounts-route"===r.type&&r.tokenIn&&r.tokenOut){return{fee:n,spender:t,balance:e,swap:`${`${i({amount:r.inAmount,decimals:r.tokenIn.decimals})} ${r.tokenIn.symbol}`} → ${`${i({amount:r.quotedOutAmount,decimals:r.tokenOut.decimals})} ${r.tokenOut.symbol}`}`}}if("jupiter-swap-exact-out-route"===r.type&&r.tokenIn&&r.tokenOut){return{fee:n,spender:t,balance:e,swap:`${`${i({amount:r.quotedInAmount,decimals:r.tokenIn.decimals})} ${r.tokenIn.symbol}`} → ${`${i({amount:r.outAmount,decimals:r.tokenOut.decimals})} ${r.tokenOut.symbol}`}`}}return{fee:n,spender:t,balance:e}}),[C,N?.address,q]),ot=r((()=>{let t;if(!C||!v||!nt||at)return;function n(...t){return Z(t.reduce(((t,n)=>t+n),0n),nt??0)}N?.address===C.spender&&(t=n(C.fee));let e=n(q.value),a=C.instructions.filter((t=>"sol-transfer"===t.type||"spl-transfer"===t.type)).at(0);return!a||C.instructions.length>1?{fee:t,balance:e}:"sol-transfer"===a.type?{fee:t,balance:e,total:n(a.value,N?.address===C.spender?C.fee:0n)}:"spl-transfer"===a.type?{fee:t,balance:e,total:`${i({amount:a.value,decimals:a.token.decimals})} ${a.token.symbol}`}:{fee:t,balance:e}}),[C,v,nt,at,N?.address,q]);if(o((()=>{!async function(){if(S&&y)try{x(void 0);let t=await st({tx:S,solanaClient:I,privyClient:y,checkFunds:!Q&&!Y});T(t)}catch(t){console.error("Failed to prepare transaction",t),x(t)}}()}),[S,I,y,Q]),o((()=>{(async function(){if(!N)return;M({value:q.value,isLoading:!0});let{value:t}=await I.rpc.getBalance(N.address,{commitment:"confirmed"}).send();M({value:t??0n,isLoading:!1})})().catch(console.error)}),[C]),!S||!t?.standardSignAndSendTransaction||!N){let e=Error("Invalid transaction request");/*#__PURE__*/return n(f,{error:e,allowlistConfig:b.allowlistConfig,onRetry:()=>{t?.standardSignAndSendTransaction?.onFailure(e),w({shouldCallAuthOnSuccess:!1})}})}let it=()=>{if(!U)return z.signature||z.signedTransaction?t?.standardSignAndSendTransaction?.onSuccess({signature:z.signature,signedTransaction:z.signedTransaction}):t?.standardSignAndSendTransaction?.onFailure(X??O??Error("User exited the modal before submitting the transaction")),w({shouldCallAuthOnSuccess:!1})};e.current=it;let ct=t.standardSignAndSendTransaction?.uiOptions?.transactionInfo?.contractInfo?.imgUrl?/*#__PURE__*/n("img",{src:t.standardSignAndSendTransaction.uiOptions.transactionInfo.contractInfo.imgUrl,alt:t.standardSignAndSendTransaction.uiOptions.transactionInfo.contractInfo.imgAltText}):null,lt=!!(t.funding&&t.funding.supportedOptions.length>0),dt=!C?.hasFunds&&lt&&!Y;if(z.signature||z.signedTransaction){let e=C?.instructions.filter((t=>"sol-transfer"===t.type||"spl-transfer"===t.type)),a=1===e?.length?e?.at(0):void 0;/*#__PURE__*/return n(et,{fees:z.fees??0n,onClose:it,transactionInfo:t.standardSignAndSendTransaction?.uiOptions.transactionInfo,solPrice:nt,receiptHeader:t.standardSignAndSendTransaction?.uiOptions.successHeader,receiptDescription:t.standardSignAndSendTransaction?.uiOptions.successDescription,chain:I.chain,signOnly:Q,instruction:"sol-transfer"===a?.type?{to:a.toAccount,amount:a.value}:{to:a?.toAccount||a?.toAta,total:rt?.total}})}return X?/*#__PURE__*/n($,{transactionError:X,chainId:I.chain,onClose:it,chainType:"solana",onRetry:async()=>{K(void 0);let{value:t}=await I.rpc.getLatestBlockhash().send();var n,e;j((n=S,e=t,P(_().decode(D(n)),(t=>F(t)),(t=>W(e,t)),(t=>B(t)),(t=>new Uint8Array(J().encode(t))))))}}):/*#__PURE__*/n(L,{img:ct,title:t.standardSignAndSendTransaction?.uiOptions?.transactionInfo?.title||"Confirm transaction",subtitle:t.standardSignAndSendTransaction?.uiOptions?.description||`${b.name} wants your permission to approve the following transaction.`,cta:dt?"Add funds":t.standardSignAndSendTransaction?.uiOptions?.buttonText||"Approve",instructions:C?.instructions??[],network:"solana:mainnet"==I.chain?"Solana":I.chain.replace("solana:",""),blockExplorerUrl:I.blockExplorerUrl,total:v?ot?.total:rt?.total,fee:v?ot?.fee:rt?.fee,balance:v?ot?.balance:rt?.balance,swap:rt?.swap,transactingWalletAddress:N.address,disabled:!C?.hasFunds&&!lt,isSubmitting:U,isPreparing:!C||q.isLoading,isTokenPriceLoading:v&&at,isMissingFunds:!C?.hasFunds,submitError:X??void 0,isSponsored:!!t.standardSignAndSendTransaction?.isSponsored,parseError:O,onClick:dt?async()=>{if(!N)return;if(!lt)throw Error("Funding wallet is not enabled");let n="FundingMethodSelectionScreen";g({...t,funding:{...t.funding,methodScreen:n},solanaFundingData:t?.solanaFundingData}),h(n)}:async()=>{try{if(H(!0),U||!N||!k||!A||!tt)return;let n=await t.standardSignAndSendTransaction.onConfirm(S);if("signature"in n){let t=await async function({solanaClient:t,signature:n}){let e=R().decode(n),a=await t.rpc.getTransaction(e,{maxSupportedTransactionVersion:0,commitment:"confirmed",encoding:"base64"}).send().catch((()=>null));return a?{fee:a.meta?.fee??0n}:null}({solanaClient:I,signature:n.signature});return void G({...n,fees:t?.fee})}G(n)}catch(t){console.warn({transaction:S,error:t}),K(t)}finally{H(!1)}},onClose:it})}};export{pt as StandardSignAndSendTransactionScreen,pt as default};
20
+ `;async function rt(t,n){try{return await t}catch{return n}}function ot(t){switch(t){case"solana:mainnet":return"mainnet-beta";case"solana:devnet":return"devnet";case"solana:testnet":return"testnet"}}async function it({privyClient:t,chain:n,mint:e}){let a=z[n];if(!a[e]){let r=await t.getSplTokenMetadata({mintAddress:e,cluster:ot(n)});r&&(a[e]={address:e,symbol:r.symbol,decimals:r.decimals})}return a[e]}async function st({tx:t,solanaClient:n,privyClient:e,checkFunds:a}){let r=_().decode(D(t)),o=r.staticAccounts[0]??"",i=await M({solanaClient:n,tx:t}),s=a?await rt(U({solanaClient:n,tx:t})):void 0,c=s?.hasFunds??!0,l={},d=[],u=await async function({solanaClient:t,message:n}){if(!("addressTableLookups"in n)||!n.addressTableLookups)return[...n.staticAccounts];let e=n.addressTableLookups.map((t=>t.lookupTableAddress)),a=await q(e,t.rpc),r=e.map(((t,e)=>[...n.addressTableLookups[e]?.writableIndexes.map((n=>{let r=a[t]?.[n];if(r)return{key:r,isWritable:!0,altIdx:e}}))??[],...n.addressTableLookups[e]?.readonlyIndexes.map((n=>{let r=a[t]?.[n];if(r)return{key:r,isWritable:!1,altIdx:e}}))??[]])).flat().filter((t=>!!t)).sort(((t,n)=>t.isWritable!==n.isWritable?t.isWritable?-1:1:t.altIdx-n.altIdx)).map((({key:t})=>t));return[...n.staticAccounts,...r]}({solanaClient:n,message:r});for(let t of r.instructions){let a=r.staticAccounts[t.programAddressIndex]||"";if(a!==G&&a!==X)if(a!==K){if(a===N){let n=await rt(function(t,n,e){let[a,r,o,i]=t.accountIndices?.map((t=>n[t]))??[];return{type:"ata-creation",program:e,payer:a,ata:r,owner:o,mint:i}}(t,u,a));if(!n){d.push({type:"unknown",program:a,discriminator:t.data?.[0]});continue}if(d.push(n),n.ata&&n.owner&&n.mint){l[n.ata]={owner:n.owner,mint:n.mint};continue}}if(Q.includes(a)){let r=await rt(ut(t,u,n,e,a));if(!r){d.push({type:"unknown",program:a,discriminator:t.data?.[0]});continue}d.push(r)}else if(Y.includes(a)){let r=await rt(mt(t,u,n,e,a));if(!r){d.push({type:"unknown",program:a,discriminator:t.data?.[0]});continue}d.push(r)}else d.push({type:"unknown",program:a,discriminator:t.data?.[0]})}else{let n=await rt(dt(t,u));if(!n){d.push({type:"unknown",program:a,discriminator:t.data?.[0]});continue}d.push(n)}else{let r=await rt(lt(t,u,n,e,l,a));if(!r){d.push({type:"unknown",program:a,discriminator:t.data?.[0]});continue}d.push(r),"spl-transfer"===r.type&&(r.fromAta&&r.fromAccount&&r.token.address&&(l[r.fromAta]??={owner:r.fromAccount,mint:r.token.address}),r.toAta&&r.toAccount&&r.token.address&&(l[r.toAta]??={owner:r.toAccount,mint:r.token.address}))}}return{spender:o,fee:i,instructions:d,hasFunds:!!c}}function ct(t,n=0){try{return function(t,n=0){let e=0n;for(let a=0;a<8;a++)e|=BigInt(t[n+a])<<BigInt(8*a);return e}(t,n)}catch{}try{return t.readBigInt64LE(n)}catch{}let e=H(t);try{return((t,n=0)=>{let e=t[n],a=t[n+7];if(!e||!a)throw Error(`Buffer offset out of range: first: ${e}, last: ${a}.`);return(BigInt(t[n+4]+256*t[n+5]+65536*t[n+6]+(a<<24))<<32n)+BigInt(e+256*t[++n]+65536*t[++n]+16777216*t[++n])})(e)}catch{}try{return e.subarray(n).readBigInt64LE()}catch{}try{return e.readBigInt64LE(n)}catch{}return 0n}async function lt(t,n,e,a,r,o){let i=t.data?.[0],s=t.accountIndices?.map((t=>n[t]))??[];if(1===i){let[t,n,e]=s;return{type:"spl-init-account",program:o,account:t,mint:n,owner:e}}if(3===i){let n,i,[c,l,d]=s,u="",m=l?r[l]:void 0;if(m)n=m.owner,u=m.mint;else if(l){let t=await e.rpc.getAccountInfo(l,{commitment:"confirmed",encoding:"jsonParsed"}).send(),a=t.value?.data;n=a?.parsed?.info?.owner,u=a?.parsed?.info?.mint??"",i=a?.parsed?.info?.tokenAmount?.decimals}if(!u&&c){let t=await e.rpc.getAccountInfo(c,{commitment:"confirmed",encoding:"jsonParsed"}).send(),n=t.value?.data;u=n?.parsed?.info?.mint??""}let p=await it({privyClient:a,chain:e.chain,mint:u}),f=p?.symbol??"";return i??=p?.decimals??9,{type:"spl-transfer",program:o,fromAta:c,fromAccount:d,toAta:l,toAccount:n,value:ct(t.data,1),token:{symbol:f,decimals:i,address:u}}}if(9===i){let[t,n,e]=s;return{type:"spl-close-account",program:o,source:t,destination:n,owner:e}}if(17===i)return{type:"spl-sync-native",program:o};throw Error(`Token program instruction type ${i} not supported`)}async function dt(t,n){let e=t.data?.[0],a=t.accountIndices?.map((t=>n[t]))??[];if(0===e){let[,n]=a;return{type:"create-account",program:K,account:n?.toString(),value:ct(t.data,4),withSeed:!1}}if(2===e){let[n,e]=a;return{type:"sol-transfer",program:K,fromAccount:n,toAccount:e,token:{symbol:"SOL",decimals:9},value:ct(t.data,4),withSeed:!1}}if(3===e){let[,n]=a;return{type:"create-account",program:K,account:n,withSeed:!0,value:ct(t.data.slice(t.data.length-32-8-8))}}if(11===e){let[n,e]=a;return{type:"sol-transfer",program:K,fromAccount:n,toAccount:e,value:ct(t.data,4),token:{symbol:"SOL",decimals:9},withSeed:!0}}throw Error(`System program instruction type ${e} not supported`)}async function ut(t,n,e,a,r){let o=t.accountIndices?.map((t=>n[t]))??[],i=t.data?.[0];if(143===i){let n=o[10],i=o[11];return{type:"raydium-swap-base-input",program:r,mintIn:n,mintOut:i,tokenIn:n?await it({privyClient:a,chain:e.chain,mint:n}):void 0,tokenOut:i?await it({privyClient:a,chain:e.chain,mint:i}):void 0,amountIn:ct(t.data,8),minimumAmountOut:ct(t.data,16)}}if(55===i){let n=o[10],i=o[11];return{type:"raydium-swap-base-output",program:r,mintIn:n,mintOut:i,tokenIn:n?await it({privyClient:a,chain:e.chain,mint:n}):void 0,tokenOut:i?await it({privyClient:a,chain:e.chain,mint:i}):void 0,maxAmountIn:ct(t.data,8),amountOut:ct(t.data,16)}}throw Error(`Raydium swap program instruction type ${i} not supported`)}async function mt(t,n,e,a,r){let o=t.data?.[0],i=t.accountIndices?.map((t=>n[t]))??[];if([208,51,239,151,123,43,237,92].includes(o)){let n=i[5],o=i[6];return{type:"jupiter-swap-exact-out-route",program:r,mintIn:n,mintOut:o,tokenIn:n?await it({privyClient:a,chain:e.chain,mint:n}):void 0,tokenOut:o?await it({privyClient:a,chain:e.chain,mint:o}):void 0,outAmount:ct(t.data,t.data.length-1-2-8-8),quotedInAmount:ct(t.data,t.data.length-1-2-8)}}if([176,209,105,168,154,125,69,62].includes(o)){let n=i[7],o=i[8];return{type:"jupiter-swap-exact-out-route",program:r,mintIn:n,mintOut:o,tokenIn:n?await it({privyClient:a,chain:e.chain,mint:n}):void 0,tokenOut:o?await it({privyClient:a,chain:e.chain,mint:o}):void 0,outAmount:ct(t.data,t.data.length-1-2-8-8),quotedInAmount:ct(t.data,t.data.length-1-2-8)}}if([193,32,155,51,65,214,156,129].includes(o)){let n=i[7],o=i[8];return{type:"jupiter-swap-shared-accounts-route",program:r,mintIn:n,mintOut:o,tokenIn:n?await it({privyClient:a,chain:e.chain,mint:n}):void 0,tokenOut:o?await it({privyClient:a,chain:e.chain,mint:o}):void 0,inAmount:ct(t.data,t.data.length-1-2-8-8),quotedOutAmount:ct(t.data,t.data.length-1-2-8)}}throw[62,198,214,193,213,159,108,210].includes(o)&&console.warn("Jupiter swap program instruction 'claim' not implemented"),[116,206,27,191,166,19,0,73].includes(o)&&console.warn("Jupiter swap program instruction 'claim_token' not implemented"),[26,74,236,151,104,64,183,249].includes(o)&&console.warn("Jupiter swap program instruction 'close_token' not implemented"),[229,194,212,172,8,10,134,147].includes(o)&&console.warn("Jupiter swap program instruction 'create_open_orders' not implemented"),[28,226,32,148,188,136,113,171].includes(o)&&console.warn("Jupiter swap program instruction 'create_program_open_orders' not implemented"),[232,242,197,253,240,143,129,52].includes(o)&&console.warn("Jupiter swap program instruction 'create_token_ledger' not implemented"),[147,241,123,100,244,132,174,118].includes(o)&&console.warn("Jupiter swap program instruction 'create_token_account' not implemented"),[229,23,203,151,122,227,173,42].includes(o)&&console.warn("Jupiter swap program instruction 'route' not implemented"),[150,86,71,116,167,93,14,104].includes(o)&&console.warn("Jupiter swap program instruction 'route_with_token_ledger' not implemented"),[228,85,185,112,78,79,77,2].includes(o)&&console.warn("Jupiter swap program instruction 'set_token_ledger' not implemented"),[230,121,143,80,119,159,106,170].includes(o)&&console.warn("Jupiter swap program instruction 'shared_accounts_route_with_token_ledger' not implemented"),Error(`Jupiter swap program instruction type ${o} not supported`)}const pt={component:()=>{let{data:t,onUserCloseViaDialogOrKeybindRef:e,setModalData:g,navigate:h}=s(),{client:y,closePrivyModal:w,walletProxy:k,showFiatPrices:v}=m(),b=u(),{user:A}=c(),I=V()(t?.standardSignAndSendTransaction?.chain??"solana:mainnet"),[S,j]=a(t?.standardSignAndSendTransaction?.transaction),[C,T]=a(),[O,x]=a(),[q,M]=a({value:0n,isLoading:!1}),[U,H]=a(!1),[z,G]=a({}),[X,K]=a(),N=t?.standardSignAndSendTransaction?.account,Q=!!t?.standardSignAndSendTransaction?.signOnly,Y=!!t?.standardSignAndSendTransaction?.isSponsored,tt=N?.imported?l(A).find((t=>t.address===N.address)):d(A),{solPrice:nt,isSolPriceLoading:at}=p({enabled:v}),rt=r((()=>{if(!C)return;let t=C.spender,n=E(C.fee),e=E(q.value,3,!0),a=C.instructions.filter((t=>["sol-transfer","spl-transfer","raydium-swap-base-input","raydium-swap-base-output","jupiter-swap-shared-accounts-route","jupiter-swap-exact-out-route"].includes(t.type))),r=a.at(0);if(!r||a.length>1)return{fee:n,spender:t,balance:e};if("sol-transfer"===r.type)return{fee:n,spender:t,balance:e,total:E(r.value)};if("spl-transfer"===r.type)return{fee:n,spender:t,balance:e,total:`${i({amount:r.value,decimals:r.token.decimals})} ${r.token.symbol}`};if("raydium-swap-base-input"===r.type&&r.tokenIn&&r.tokenOut){return{fee:n,spender:t,balance:e,swap:`${`${i({amount:r.amountIn,decimals:r.tokenIn.decimals})} ${r.tokenIn.symbol}`} → ${`${i({amount:r.minimumAmountOut,decimals:r.tokenOut.decimals})} ${r.tokenOut.symbol}`}`}}if("raydium-swap-base-output"===r.type&&r.tokenIn&&r.tokenOut){return{fee:n,spender:t,balance:e,swap:`${`${i({amount:r.maxAmountIn,decimals:r.tokenIn.decimals})} ${r.tokenIn.symbol}`} → ${`${i({amount:r.amountOut,decimals:r.tokenOut.decimals})} ${r.tokenOut.symbol}`}`}}if("jupiter-swap-shared-accounts-route"===r.type&&r.tokenIn&&r.tokenOut){return{fee:n,spender:t,balance:e,swap:`${`${i({amount:r.inAmount,decimals:r.tokenIn.decimals})} ${r.tokenIn.symbol}`} → ${`${i({amount:r.quotedOutAmount,decimals:r.tokenOut.decimals})} ${r.tokenOut.symbol}`}`}}if("jupiter-swap-exact-out-route"===r.type&&r.tokenIn&&r.tokenOut){return{fee:n,spender:t,balance:e,swap:`${`${i({amount:r.quotedInAmount,decimals:r.tokenIn.decimals})} ${r.tokenIn.symbol}`} → ${`${i({amount:r.outAmount,decimals:r.tokenOut.decimals})} ${r.tokenOut.symbol}`}`}}return{fee:n,spender:t,balance:e}}),[C,N?.address,q]),ot=r((()=>{let t;if(!C||!v||!nt||at)return;function n(...t){return Z(t.reduce(((t,n)=>t+n),0n),nt??0)}N?.address===C.spender&&(t=n(C.fee));let e=n(q.value),a=C.instructions.filter((t=>"sol-transfer"===t.type||"spl-transfer"===t.type)).at(0);return!a||C.instructions.length>1?{fee:t,balance:e}:"sol-transfer"===a.type?{fee:t,balance:e,total:n(a.value,N?.address===C.spender?C.fee:0n)}:"spl-transfer"===a.type?{fee:t,balance:e,total:`${i({amount:a.value,decimals:a.token.decimals})} ${a.token.symbol}`}:{fee:t,balance:e}}),[C,v,nt,at,N?.address,q]);if(o((()=>{!async function(){if(S&&y)try{x(void 0);let t=await st({tx:S,solanaClient:I,privyClient:y,checkFunds:!Q&&!Y});T(t)}catch(t){console.error("Failed to prepare transaction",t),x(t)}}()}),[S,I,y,Q]),o((()=>{(async function(){if(!N)return;M({value:q.value,isLoading:!0});let{value:t}=await I.rpc.getBalance(N.address,{commitment:"confirmed"}).send();M({value:t??0n,isLoading:!1})})().catch(console.error)}),[C]),!S||!t?.standardSignAndSendTransaction||!N){let e=Error("Invalid transaction request");/*#__PURE__*/return n(f,{error:e,allowlistConfig:b.allowlistConfig,onRetry:()=>{t?.standardSignAndSendTransaction?.onFailure(e),w({shouldCallAuthOnSuccess:!1})}})}let it=()=>{if(!U)return z.signature||z.signedTransaction?t?.standardSignAndSendTransaction?.onSuccess({signature:z.signature,signedTransaction:z.signedTransaction}):t?.standardSignAndSendTransaction?.onFailure(X??O??Error("User exited the modal before submitting the transaction")),w({shouldCallAuthOnSuccess:!1})};e.current=it;let ct=t.standardSignAndSendTransaction?.uiOptions?.transactionInfo?.contractInfo?.imgUrl?/*#__PURE__*/n("img",{src:t.standardSignAndSendTransaction.uiOptions.transactionInfo.contractInfo.imgUrl,alt:t.standardSignAndSendTransaction.uiOptions.transactionInfo.contractInfo.imgAltText}):null,lt=!!(t.funding&&t.funding.supportedOptions.length>0),dt=!C?.hasFunds&&lt&&!Y;if(z.signature||z.signedTransaction){let e=C?.instructions.filter((t=>"sol-transfer"===t.type||"spl-transfer"===t.type)),a=1===e?.length?e?.at(0):void 0;/*#__PURE__*/return n(et,{fees:z.fees??0n,onClose:it,transactionInfo:t.standardSignAndSendTransaction?.uiOptions.transactionInfo,solPrice:nt,receiptHeader:t.standardSignAndSendTransaction?.uiOptions.successHeader,receiptDescription:t.standardSignAndSendTransaction?.uiOptions.successDescription,chain:I.chain,signOnly:Q,instruction:"sol-transfer"===a?.type?{to:a.toAccount,amount:a.value}:{to:a?.toAccount||a?.toAta,total:rt?.total}})}return X?/*#__PURE__*/n($,{transactionError:X,chainId:I.chain,onClose:it,chainType:"solana",onRetry:async()=>{K(void 0);let{value:t}=await I.rpc.getLatestBlockhash().send();var n,e;j((n=S,e=t,P(_().decode(D(n)),(t=>F(t)),(t=>B(e,t)),(t=>W(t)),(t=>new Uint8Array(J().encode(t))))))}}):/*#__PURE__*/n(L,{img:ct,title:t.standardSignAndSendTransaction?.uiOptions?.transactionInfo?.title||"Confirm transaction",subtitle:t.standardSignAndSendTransaction?.uiOptions?.description||`${b.name} wants your permission to approve the following transaction.`,cta:dt?"Add funds":t.standardSignAndSendTransaction?.uiOptions?.buttonText||"Approve",instructions:C?.instructions??[],network:"solana:mainnet"==I.chain?"Solana":I.chain.replace("solana:",""),blockExplorerUrl:I.blockExplorerUrl,total:v?ot?.total:rt?.total,fee:v?ot?.fee:rt?.fee,balance:v?ot?.balance:rt?.balance,swap:rt?.swap,transactingWalletAddress:N.address,disabled:!C?.hasFunds&&!lt,isSubmitting:U,isPreparing:!C||q.isLoading,isTokenPriceLoading:v&&at,isMissingFunds:!C?.hasFunds,submitError:X??void 0,isSponsored:!!t.standardSignAndSendTransaction?.isSponsored,parseError:O,onClick:dt?async()=>{if(!N)return;if(!lt)throw Error("Funding wallet is not enabled");let n="FundingMethodSelectionScreen";g({...t,funding:{...t.funding,methodScreen:n},solanaFundingData:t?.solanaFundingData}),h(n)}:async()=>{try{if(H(!0),U||!N||!k||!A||!tt)return;let n=await t.standardSignAndSendTransaction.onConfirm(S);if("signature"in n){let t=await async function({solanaClient:t,signature:n}){let e=R().decode(n),a=await t.rpc.getTransaction(e,{maxSupportedTransactionVersion:0,commitment:"confirmed",encoding:"base64"}).send().catch((()=>null));return a?{fee:a.meta?.fee??0n}:null}({solanaClient:I,signature:n.signature});return void G({...n,fees:t?.fee})}G(n)}catch(t){console.warn({transaction:S,error:t}),K(t)}finally{H(!1)}},onClose:it})}};export{pt as StandardSignAndSendTransactionScreen,pt as default};
@@ -0,0 +1 @@
1
+ import{jsx as e}from"react/jsx-runtime";import{useState as t,useEffect as r}from"react";import{a as o,m as i,C as a}from"./index-D23O4czL.mjs";import{u as s,q as n}from"./context-aGvo4MVQ.mjs";import{u as m,c as l,k as c}from"./internal-context-C4ZqP8IF.mjs";import{u as d,a as u}from"./privy-context-CkPtrpbt.mjs";import{s as p}from"./shouldProceedtoEmbeddedWalletCreationFlow-BSnOzrud.mjs";import{S as y}from"./ScreenLayout-B6n5Feil.mjs";import{T as v}from"./telegram-B-JqnkqZ.mjs";import"@privy-io/js-sdk-core";import"uuid";import"jose";import"eventemitter3";import"./useActiveWallet-By6UNJY1.mjs";import"zustand";import"viem";import"viem/utils";import"./use-export-wallet-Db8GdSAT.mjs";import"./get-entropy-details-for-user-DkZdXKpr.mjs";import"react-device-detect";import"styled-components";import"./events-context-CI0iqAXA.mjs";import"@coinbase/wallet-sdk";import"@walletconnect/ethereum-provider";import"./usePrivy-DPZ1iMmn.mjs";import"ofetch";import"./paths-BzM95ysC.mjs";import"js-cookie";import"./PrivyPluginContext-2QN2dVUw.mjs";import"mipd";import"@privy-io/popup";import"@scure/base";import"@headlessui/react";import"@privy-io/urls";import"@privy-io/ethereum";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"./frame-CjhCpycO.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"@privy-io/are-addresses-equal";import"viem/accounts";import"./use-sign-with-user-signer-BYctG7hm.mjs";import"tinycolor2";import"./ModalHeader-Duq1Izpl.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Ce8BE24H.mjs";import"./index-Dq_xe9dz.mjs";const g=({success:t,errorMessage:r,onRetry:o})=>{let i=t?"Successfully connected with Telegram":r?r.message:"Verifying connection to Telegram";/*#__PURE__*/return e(y,{title:i,subtitle:t?"You're good to go!":r?r.detail:"Just a few moments more",icon:v,iconVariant:"loading",iconLoadingStatus:{success:t,fail:!!r},secondaryCta:r?.retryable&&o?{label:"Retry",onClick:o}:void 0,watermark:!0})},f={component:()=>{let{authenticated:y,logout:v,ready:f,user:h}=d(),{setModalData:A,navigate:j,resetNavigation:T,data:b}=u(),S=s(),{initLoginWithTelegram:C,loginWithTelegram:w,updateWallets:E,setReadyToTrue:R,closePrivyModal:W,createAnalyticsEvent:_,getAuthMeta:x}=m(),[L,k]=t(!1),[M,I]=t(void 0),D=o();async function N(){try{let e=await async function(){let e;if(!y){if(D.enabled&&"error"===D.status)throw new a(D.error,null,l.CAPTCHA_FAILURE);return D.enabled&&"success"!==D.status&&(D.execute(),e=await D.waitForResult()),e}}();await w({captchaToken:e}),k(!0),R(!0)}catch(e){if(e?.privyErrorCode===l.ALLOWLIST_REJECTED)return I(void 0),T(),void j("AllowlistRejectionScreen");if(e?.privyErrorCode===l.USER_LIMIT_REACHED)return console.error(new c(e).toString()),I(void 0),T(),void j("UserLimitReachedScreen");if(e?.privyErrorCode===l.USER_DOES_NOT_EXIST)return I(void 0),T(),void j("AccountNotFoundScreen");if(e?.privyErrorCode===l.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return I(void 0),T(),A({accountTransfer:{nonce:e.data?.data?.nonce,account:e.data?.data?.subject,telegramAuthResult:x()?.telegramAuthResult,telegramWebAppData:x()?.telegramWebAppData,displayName:e.data?.data?.account?.displayName,linkMethod:"telegram",embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress}}),void j("LinkConflictScreen");let{retryable:t,detail:r}=i(e);I({retryable:t,detail:r,message:"Authentication failed"})}}r((()=>{N()}),[]),r((()=>{if(!(f&&y&&L&&h))return;if(S?.legal.requireUsersAcceptTerms&&!h.hasAcceptedTerms){let e=setTimeout((()=>{j("AffirmativeConsentScreen")}),n);return()=>clearTimeout(e)}if(p(h,S.embeddedWallets)){let e=setTimeout((()=>{A({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),_({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,provider:"telegram",screen:"TelegramAuthScreen"}}),v()},callAuthOnSuccessOnClose:!0}}),j("EmbeddedWalletOnAccountCreateScreen")}),n);return()=>clearTimeout(e)}E();let e=setTimeout((()=>W({shouldCallAuthOnSuccess:!0,isSuccess:!0})),n);return()=>clearTimeout(e)}),[f,y,L,h]);/*#__PURE__*/return e(g,{success:L,errorMessage:M,onRetry:M?.retryable?async()=>{try{I(void 0),b?.telegramAuthModalData?.seamlessAuth||await C(void 0,b?.login?.disableSignup),await N()}catch(e){let{retryable:t,detail:r}=i(e);I({retryable:t,detail:r,message:"Authentication failed"})}}:void 0})},isCaptchaRequired:!0,isShownBeforeReady:!0};export{f as TelegramAuthScreen,g as TelegramAuthScreenView,f as default};
@@ -1,4 +1,4 @@
1
- import{jsxs as e,jsx as i,Fragment as t}from"react/jsx-runtime";import{styled as n}from"styled-components";import{P as r,H as l,W as o}from"./WalletLink-DNbGmOPX.mjs";import{g as d}from"./ethers-Dnv1tMN3.mjs";import{F as a}from"./Layouts-BlFm53ED.mjs";import c from"@heroicons/react/24/outline/ChevronDownIcon";import{createContext as s,useState as h,useContext as p}from"react";import{s as v,u}from"./context-DLtU3JQy.mjs";const g=({label:t,children:n,valueStyles:r})=>/*#__PURE__*/e(f,{children:[/*#__PURE__*/i("div",{children:t}),/*#__PURE__*/i(m,{style:{...r},children:n})]});let f=n.div`
1
+ import{jsxs as e,jsx as i,Fragment as t}from"react/jsx-runtime";import{styled as n}from"styled-components";import{P as r,H as l,W as o}from"./WalletLink-WeWEMb7C.mjs";import{g as d}from"./ethers-BNftJuZG.mjs";import{F as a}from"./Layouts-BlFm53ED.mjs";import c from"@heroicons/react/24/outline/ChevronDownIcon";import{createContext as s,useState as h,useContext as p}from"react";import{s as v,u}from"./context-aGvo4MVQ.mjs";const g=({label:t,children:n,valueStyles:r})=>/*#__PURE__*/e(f,{children:[/*#__PURE__*/i("div",{children:t}),/*#__PURE__*/i(m,{style:{...r},children:n})]});let f=n.div`
2
2
  display: flex;
3
3
  align-items: center;
4
4
  justify-content: space-between;
@@ -1,4 +1,4 @@
1
- import{jsx as e,jsxs as r,Fragment as n}from"react/jsx-runtime";import{BoltIcon as i,ArrowRightIcon as o,ChevronDownIcon as t}from"@heroicons/react/24/outline";import{useState as l}from"react";import{styled as a}from"styled-components";import{formatTokenAmount as s}from"@privy-io/js-sdk-core";import{M as c,P as d,E as h,B as m,b as u}from"./ModalHeader-BnVmXtvG.mjs";import{L as p,V as g,a as f}from"./Value-tcJV9e0L.mjs";import{a as y,R as k}from"./Row-C9vrS4Zi.mjs";import{E as x}from"./ErrorMessage-D8VaAP5m.mjs";import{L as v}from"./LabelXs-oqZNqbm_.mjs";import{S as b}from"./Subtitle-CV-2yKE4.mjs";import{T as w}from"./Title-BnzYV3Is.mjs";import{A as T}from"./Address-N-mzBgMy.mjs";import{W as I}from"./WalletInfoCard-CEcdukTg.mjs";import{u as A}from"./context-DLtU3JQy.mjs";import{G as S}from"./useActiveWallet-CvP7iYvj.mjs";import{L as C}from"./LoadingSkeleton-U6-3yFwI.mjs";import{isAddress as $}from"viem";import{B as j}from"./shared-FM0rljBt.mjs";import{C as M}from"./Checkbox-BhNoOKjX.mjs";import{E}from"./ErrorBanner-CQERa7bL.mjs";import{W as O}from"./WarningBanner-D5LqDt95.mjs";import D from"@heroicons/react/24/outline/ClipboardDocumentCheckIcon";import N from"@heroicons/react/24/outline/ClipboardDocumentIcon";import F from"@heroicons/react/24/outline/ExclamationCircleIcon";import{u as L}from"./internal-context-Z-fyxadS.mjs";const P=a(p)`
1
+ import{jsx as e,jsxs as r,Fragment as n}from"react/jsx-runtime";import{BoltIcon as i,ArrowRightIcon as o,ChevronDownIcon as t}from"@heroicons/react/24/outline";import{useState as l}from"react";import{styled as a}from"styled-components";import{formatTokenAmount as s}from"@privy-io/js-sdk-core";import{M as c,P as d,E as h,B as m,b as u}from"./ModalHeader-Duq1Izpl.mjs";import{L as p,V as g,a as f}from"./Value-tcJV9e0L.mjs";import{a as y,R as k}from"./Row-C9vrS4Zi.mjs";import{E as x}from"./ErrorMessage-D8VaAP5m.mjs";import{L as v}from"./LabelXs-oqZNqbm_.mjs";import{S as b}from"./Subtitle-CV-2yKE4.mjs";import{T as w}from"./Title-BnzYV3Is.mjs";import{A as T}from"./Address-PwZSXm9b.mjs";import{W as I}from"./WalletInfoCard-CSqr9o--.mjs";import{u as A}from"./context-aGvo4MVQ.mjs";import{G as S}from"./useActiveWallet-By6UNJY1.mjs";import{L as C}from"./LoadingSkeleton-U6-3yFwI.mjs";import{isAddress as $}from"viem";import{B as j}from"./shared-FM0rljBt.mjs";import{C as M}from"./Checkbox-BhNoOKjX.mjs";import{E}from"./ErrorBanner-CQERa7bL.mjs";import{W as O}from"./WarningBanner-D5LqDt95.mjs";import D from"@heroicons/react/24/outline/ClipboardDocumentCheckIcon";import N from"@heroicons/react/24/outline/ClipboardDocumentIcon";import F from"@heroicons/react/24/outline/ExclamationCircleIcon";import{u as L}from"./internal-context-C4ZqP8IF.mjs";const P=a(p)`
2
2
  cursor: pointer;
3
3
  display: inline-flex;
4
4
  gap: 8px;
@@ -1,4 +1,4 @@
1
- import{jsxs as e,jsx as n,Fragment as t}from"react/jsx-runtime";import{useState as l,useEffect as a}from"react";import{M as o,B as i}from"./ModalHeader-BnVmXtvG.mjs";import{C as r}from"./ScreenHeader-CHmc4-Lu.mjs";import{t as c}from"./FundWalletMethodHeader-Cb-ACySl.mjs";import{C as s}from"./Chip-D2-wZOHJ.mjs";import{S as p}from"./Subtitle-CV-2yKE4.mjs";import{u as d}from"./context-DLtU3JQy.mjs";import{r as m,z as y,e as u,A as h,j as w,Q as f}from"./useActiveWallet-CvP7iYvj.mjs";import{u as T}from"./internal-context-Z-fyxadS.mjs";import{a as C}from"./privy-context-DrMxzgOR.mjs";import{u as g}from"./useWallets-BzNCTucF.mjs";import{W as v}from"./WalletOverflowButton-CPDxFP5w.mjs";import{A as _,D as j,E as x}from"./index-YDEix4mU.mjs";import{isMobile as S}from"react-device-detect";import{styled as W}from"styled-components";import{I as b}from"./InjectedWalletIcon-DLcYOGDj.mjs";import{y as $}from"./use-export-wallet-_wu5ex5t.mjs";import{I as k}from"./styles-DDaGxKdi.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./LoadingSkeleton-U6-3yFwI.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"zustand";import"./events-context-CI0iqAXA.mjs";import"viem";import"viem/utils";import"ofetch";import"@privy-io/are-addresses-equal";import"lucide-react";import"uuid";import"jose";import"eventemitter3";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-C_sY2Duk.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./PrivyPluginContext-2QN2dVUw.mjs";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"js-cookie";import"./frame-uzTmvtww.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"@heroicons/react/24/outline/WalletIcon";import"./LinkPasskeyScreen-DmtRo8xi.mjs";import"./TodoList-CgrU7uwu.mjs";import"./ScreenLayout-D1p_ntex.mjs";import"./Screen-Cycy3IzT.mjs";import"./index-Dq_xe9dz.mjs";const O=({provider:t,displayName:l,logo:a,connectOnly:o,connector:i})=>{let r,{navigate:c,setModalData:s}=C(),{connectWallet:p}=T(),d=m(),h=y(t),w="wallet_connect_v2"===i.connectorType?t:i.walletClientType,f=window.matchMedia("(display-mode: standalone)").matches,g=u({connectorType:i.connectorType,walletClientType:w});r=g&&g.chainTypes.includes(i.chainType)?()=>{g.isInstalled||"solana"===i.chainType&&"isInstalled"in i&&i.isInstalled?(p(i,w),c(o?"ConnectOnlyStatusScreen":"ConnectionStatusScreen")):S?(s({installWalletModalData:{walletConfig:g,chainType:i.chainType,connectOnly:o}}),c("WalletInterstitialScreen")):(s({installWalletModalData:{walletConfig:g,chainType:i.chainType,connectOnly:o}}),c("InstallWalletScreen"))}:"coinbase_wallet"!==i.connectorType||"eoaOnly"!==i.coinbaseWalletConfig.preference?.options||!S||f||$()?()=>{(!_(window.navigator.userAgent)||event?.isTrusted)&&(p(i,w),o?"wallet_connect_v2"===i.connectorType?(s((e=>({...e,externalConnectWallet:{...e?.externalConnectWallet,preSelectedWalletId:"wallet_connect_qr"}}))),c("ConnectOnlyLandingScreen")):c("ConnectOnlyStatusScreen"):c("ConnectionStatusScreen"))}:()=>{window.location.href=`https://go.cb-w.com/dapp?cb_url=${encodeURI(window.location.href)}`};let v=l||h?.metadata?.shortName||h?.name||i.walletClientType;/*#__PURE__*/return e(D,{onClick:r,children:[/*#__PURE__*/n(b,{icon:a||h?.image_url?.md,name:v}),/*#__PURE__*/n("span",{children:v}),/*#__PURE__*/e(M,{id:"chip-container",children:[d?.walletClientType===w&&d?.chainType===i.chainType?/*#__PURE__*/n(I,{color:"gray",children:"Recent"}):/*#__PURE__*/n("span",{id:"connect-text",children:"Connect"}),"solana"===i.chainType&&/*#__PURE__*/n(I,{color:"gray",children:"Solana"})]})]})};let D=W(h)`
1
+ import{jsxs as e,jsx as n,Fragment as t}from"react/jsx-runtime";import{useState as l,useEffect as a}from"react";import{M as o,B as i}from"./ModalHeader-Duq1Izpl.mjs";import{C as r}from"./ScreenHeader-CHmc4-Lu.mjs";import{t as c}from"./FundWalletMethodHeader-dEfQKUIt.mjs";import{C as s}from"./Chip-D2-wZOHJ.mjs";import{S as p}from"./Subtitle-CV-2yKE4.mjs";import{u as d}from"./context-aGvo4MVQ.mjs";import{r as m,z as y,k as u,A as h,c as w,Q as f}from"./useActiveWallet-By6UNJY1.mjs";import{u as T}from"./internal-context-C4ZqP8IF.mjs";import{a as g}from"./privy-context-CkPtrpbt.mjs";import{u as C}from"./get-entropy-details-for-user-DkZdXKpr.mjs";import{W as v}from"./WalletOverflowButton-XkatV0nc.mjs";import{A as _,D as j,E as x}from"./index-D23O4czL.mjs";import{isMobile as S}from"react-device-detect";import{styled as W}from"styled-components";import{I as b}from"./InjectedWalletIcon-DLcYOGDj.mjs";import{y as k}from"./use-export-wallet-Db8GdSAT.mjs";import{I as $}from"./styles--34ZnZR_.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./LoadingSkeleton-U6-3yFwI.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"zustand";import"viem";import"viem/utils";import"./events-context-CI0iqAXA.mjs";import"ofetch";import"@privy-io/are-addresses-equal";import"lucide-react";import"uuid";import"jose";import"eventemitter3";import"@coinbase/wallet-sdk";import"@walletconnect/ethereum-provider";import"./usePrivy-DPZ1iMmn.mjs";import"./paths-BzM95ysC.mjs";import"js-cookie";import"./PrivyPluginContext-2QN2dVUw.mjs";import"mipd";import"@privy-io/popup";import"@scure/base";import"@headlessui/react";import"@privy-io/urls";import"@privy-io/ethereum";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"./frame-CjhCpycO.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-BYctG7hm.mjs";import"@heroicons/react/24/outline/WalletIcon";import"./LinkPasskeyScreen-C1QMXwHt.mjs";import"./TodoList-CgrU7uwu.mjs";import"./ScreenLayout-B6n5Feil.mjs";import"./Screen-Ce8BE24H.mjs";import"./index-Dq_xe9dz.mjs";const O=({provider:t,displayName:l,logo:a,connectOnly:o,connector:i})=>{let r,{navigate:c,setModalData:s}=g(),{connectWallet:p}=T(),d=m(),h=y(t),w="wallet_connect_v2"===i.connectorType?t:i.walletClientType,f=window.matchMedia("(display-mode: standalone)").matches,C=u({connectorType:i.connectorType,walletClientType:w});r=C&&C.chainTypes.includes(i.chainType)?()=>{C.isInstalled||"solana"===i.chainType&&"isInstalled"in i&&i.isInstalled?(p(i,w),c(o?"ConnectOnlyStatusScreen":"ConnectionStatusScreen")):S?(s({installWalletModalData:{walletConfig:C,chainType:i.chainType,connectOnly:o}}),c("WalletInterstitialScreen")):(s({installWalletModalData:{walletConfig:C,chainType:i.chainType,connectOnly:o}}),c("InstallWalletScreen"))}:"coinbase_wallet"!==i.connectorType||"eoaOnly"!==i.coinbaseWalletConfig.preference?.options||!S||f||k()?()=>{(!_(window.navigator.userAgent)||event?.isTrusted)&&(p(i,w),o?"wallet_connect_v2"===i.connectorType?(s((e=>({...e,externalConnectWallet:{...e?.externalConnectWallet,preSelectedWalletId:"wallet_connect_qr"}}))),c("ConnectOnlyLandingScreen")):c("ConnectOnlyStatusScreen"):c("ConnectionStatusScreen"))}:()=>{window.location.href=`https://go.cb-w.com/dapp?cb_url=${encodeURI(window.location.href)}`};let v=l||h?.metadata?.shortName||h?.name||i.walletClientType;/*#__PURE__*/return e(D,{onClick:r,children:[/*#__PURE__*/n(b,{icon:a||h?.image_url?.md,name:v}),/*#__PURE__*/n("span",{children:v}),/*#__PURE__*/e(M,{id:"chip-container",children:[d?.walletClientType===w&&d?.chainType===i.chainType?/*#__PURE__*/n(I,{color:"gray",children:"Recent"}):/*#__PURE__*/n("span",{id:"connect-text",children:"Connect"}),"solana"===i.chainType&&/*#__PURE__*/n(I,{color:"gray",children:"Solana"})]})]})};let D=W(h)`
2
2
  /* Wallet name text color */
3
3
  > span {
4
4
  color: var(--privy-color-foreground);
@@ -28,4 +28,4 @@ import{jsxs as e,jsx as n,Fragment as t}from"react/jsx-runtime";import{useState
28
28
  flex-wrap: wrap;
29
29
  gap: 8px;
30
30
  margin-left: auto;
31
- `;const F=["coinbase_wallet","base_account"];let A=["metamask","okx_wallet","rainbow","uniswap","bybit_wallet","ronin_wallet","haha_wallet","uniswap_extension","zerion","rabby_wallet","cryptocom","binance","kraken_wallet"];const B=["safe"],E=["phantom","backpack","solflare","jupiter","universal_profile"],L={component:()=>{let s,{connectors:m}=T(),{setModalData:y,data:u,navigate:h}=C(),_=d(),{wallets:S}=g(),W=m.filter(w).flatMap((e=>e.wallets)),[b,$]=l("default"),k="solana"===u?.funding?.chainType,D=!!u?.funding?.crossChainBridgingEnabled;s="ethereum"===u?.funding?.chainType?u.funding.erc20Address&&!u.funding.isUSDC?"ethereum-only":D&&!u.funding.chain.testnet?"ethereum-and-solana":"ethereum-only":D&&!u.funding?.isUSDC?"ethereum-and-solana":"solana-only";let I=S.filter((e=>"privy"!==e.walletClientType)),M=I.map((e=>e.walletClientType)),L=W.filter((e=>"privy"!==e.walletClientType)),P=L.map((e=>e.walletClientType)),q=[],z={...u.funding};z.usingDefaultFundingMethod&&(z.usingDefaultFundingMethod=!1);let H=({wallet:e,walletChainType:n})=>{y({...u,funding:{...z,connectedWallet:e,onContinueWithExternalWallet:()=>h(U({destChainType:k?"solana":"ethereum",sourceChainType:n}))},solanaFundingData:u?.solanaFundingData?{...u.solanaFundingData,sourceWalletData:{address:e.address,walletClientType:e.walletClientType}}:void 0}),h("FundingAmountEditScreen")};"solana-only"!==s&&q.push(...I.map(((e,t)=>/*#__PURE__*/n(N,{onClick:()=>H({wallet:e,walletChainType:"ethereum"}),icon:e.meta.icon,name:e.meta.name,chainType:e.type},t)))),"ethereum-only"!==s&&q.push(...L.map(((e,t)=>/*#__PURE__*/n(N,{onClick:()=>H({wallet:e,walletChainType:"solana"}),icon:e.meta.icon,name:e.meta.name,chainType:e.type},t)))),q.push(...(({walletList:e,walletChainType:t,connectors:l,connectOnly:a,ignore:o,walletConnectEnabled:i,forceWallet:r})=>{let c=[],s=[],p=[],d=l.filter((e=>"ethereum-only"===t?"ethereum"===e.chainType:"solana-only"!==t||"solana"===e.chainType)),m=d.find((e=>"wallet_connect_v2"===e.connectorType));for(let[l,y]of(r?[r.wallet]:e).entries()){if("detected_ethereum_wallets"===y)for(let[e,t]of d.filter((({chainType:e,connectorType:n,walletClientType:t})=>"solana"!==e&&("uniswap_wallet_extension"===t||"uniswap_extension"===t?!o.includes("uniswap"):"crypto.com_wallet_extension"===t||"crypto.com_onchain"===t?!o.includes("cryptocom"):"injected"===n&&!o.includes(t)))).entries()){let{walletClientType:o,walletBranding:i,chainType:r}=t;("unknown"===o?s:c).push(/*#__PURE__*/n(O,{connectOnly:a,provider:o,logo:i.icon,displayName:i.name,connector:t},`${l}-${y}-${o}-${r}-${e}`))}if("detected_solana_wallets"===y)for(let[e,i]of d.filter((({chainType:e,walletClientType:n})=>{if("solana"===e)return"ethereum-only"!==t&&!o.includes(n)})).entries()){let{walletClientType:t,walletBranding:o,chainType:r}=i;("unknown"===t?s:c).push(/*#__PURE__*/n(O,{connectOnly:a,provider:t,logo:o.icon,displayName:o.name,connector:i},`${l}-${y}-${t}-${r}-${e}`))}if(E.includes(y)){let e=d.find((e=>"injected"===e.connectorType&&e.walletClientType===y||e.connectorType===y));if(e&&c.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:e},`${l}-${y}`)),"solana-only"===t||"ethereum-and-solana"===t){let e=d.find((({chainType:e,walletClientType:n})=>"solana"===e&&n===y));e&&c.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:e},`${y}-solana`))}}else if(A.includes(y)){let e=d.find((e=>"uniswap"===y?"uniswap_wallet_extension"===e.walletClientType||"uniswap_extension"===e.walletClientType:"cryptocom"===y?"crypto.com_wallet_extension"===e.walletClientType||"crypto.com_onchain"===e.walletClientType:"injected"===e.connectorType&&e.walletClientType===y));if(i&&!e&&(e=m),e&&c.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:e,logo:"injected"===e.connectorType?e.walletBranding.icon:void 0,displayName:"injected"===e.connectorType?e.walletBranding.name:void 0},`${l}-${y}`)),"solana-only"===t||"ethereum-and-solana"===t){let e=d.find((({chainType:e,walletClientType:n})=>"solana"===e&&n===y));e&&c.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:e},`${y}-solana`))}}else if(F.includes(y)){let e=d.find((({connectorType:e})=>e===y));e&&c.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:e,displayName:"coinbase_wallet"===e.walletClientType?"Coinbase":"Base",logo:"coinbase_wallet"===e.walletClientType?j:x},`${l}-${y}`))}else if(B.includes(y))m&&p.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:m},`${l}-${y}`));else if("wallet_connect"===y)m&&p.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:m,logo:m.walletBranding.icon,displayName:"WalletConnect"},`${l}-${y}`));else if(y===r?.wallet){let t="ethereum"===r.chainType&&e.includes("detected_ethereum_wallets"),o="solana"===r.chainType&&e.includes("detected_solana_wallets");if(t||o){let e=d.find((({walletClientType:e})=>e===y));e&&c.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,displayName:e.walletBranding?.name,logo:e.walletBranding?.icon,connector:e},`${l}-${y}`))}}}return[...s,...c,...p]})({walletList:_.appearance.walletList.filter((e=>!I.some((n=>n.walletClientType===e))&&!L.some((n=>n.walletClientType===e)))),walletChainType:s,connectors:m,connectOnly:!0,ignore:[..._.appearance.walletList,...M,...P],walletConnectEnabled:_.externalWallets.walletConnect.enabled}));let R=/*#__PURE__*/n(v,{text:"More wallets",onClick:()=>$("overflow")}),U=({sourceChainType:e,destChainType:n})=>"ethereum"===e&&"solana"===n?"AwaitingEvmToSolBridgingScreen":"ethereum"===e&&"ethereum"===n?"AwaitingExternalEthereumTransferScreen":"solana"===e&&"ethereum"===n?"AwaitingSolToEvmBridgingScreen":z.externalSolanaFundingScreen;return a((()=>{y({...u,externalConnectWallet:{onCompleteNavigateTo:({address:e,walletClientType:n,walletChainType:t})=>{let l=t??"ethereum",a="ethereum"===l?I.find((t=>t.address===e&&t.walletClientType===n)):L.find((t=>t.address===e&&t.walletClientType===n));return y({...u,funding:{...z,connectedWallet:a,onContinueWithExternalWallet:()=>{h(U({destChainType:k?"solana":"ethereum",sourceChainType:l}))}},solanaFundingData:u?.solanaFundingData?{...u.solanaFundingData,sourceWalletData:{address:e||"",walletClientType:n||""}}:void 0}),"FundingAmountEditScreen"}}})}),[]),/*#__PURE__*/e(t,"overflow"===b?{children:[/*#__PURE__*/n(o,{backFn:()=>$("default")},"header"),/*#__PURE__*/e(f,{children:[/*#__PURE__*/n(p,{style:{color:"var(--privy-color-foreground-3)",textAlign:"left"},children:"More wallets"}),q]}),/*#__PURE__*/n(i,{})]}:{children:[/*#__PURE__*/n(c,{}),/*#__PURE__*/n(r,{title:"Transfer from wallet",description:"Connect a wallet to deposit funds or send funds manually to your wallet address."}),/*#__PURE__*/e(f,{children:[q.length>4?q.slice(0,3):q,q.length>4&&R]}),/*#__PURE__*/n(i,{})]})}};let N=({onClick:t,icon:l,name:a,chainType:o})=>/*#__PURE__*/e(h,{onClick:t,children:[/*#__PURE__*/n(k,{style:{width:20},children:/*#__PURE__*/n("img",{src:l})}),a,/*#__PURE__*/n(s,{color:"gray",style:{marginLeft:"auto"},children:"Connected"}),"solana"===o&&/*#__PURE__*/n(s,{color:"gray",children:"Solana"})]});export{L as TransferFromWalletScreen,L as default};
31
+ `;const F=["coinbase_wallet","base_account"];let A=["metamask","okx_wallet","rainbow","uniswap","bybit_wallet","ronin_wallet","haha_wallet","uniswap_extension","zerion","rabby_wallet","cryptocom","binance","kraken_wallet"];const B=["safe"],E=["phantom","backpack","solflare","jupiter","universal_profile"],L={component:()=>{let s,{connectors:m}=T(),{setModalData:y,data:u,navigate:h}=g(),_=d(),{wallets:S}=C(),W=m.filter(w).flatMap((e=>e.wallets)),[b,k]=l("default"),$="solana"===u?.funding?.chainType,D=!!u?.funding?.crossChainBridgingEnabled;s="ethereum"===u?.funding?.chainType?u.funding.erc20Address&&!u.funding.isUSDC?"ethereum-only":D&&!u.funding.chain.testnet?"ethereum-and-solana":"ethereum-only":D&&!u.funding?.isUSDC?"ethereum-and-solana":"solana-only";let I=S.filter((e=>"privy"!==e.walletClientType)),M=I.map((e=>e.walletClientType)),L=W.filter((e=>"privy"!==e.walletClientType)),P=L.map((e=>e.walletClientType)),q=[],z={...u.funding};z.usingDefaultFundingMethod&&(z.usingDefaultFundingMethod=!1);let H=({wallet:e,walletChainType:n})=>{y({...u,funding:{...z,connectedWallet:e,onContinueWithExternalWallet:()=>h(U({destChainType:$?"solana":"ethereum",sourceChainType:n}))},solanaFundingData:u?.solanaFundingData?{...u.solanaFundingData,sourceWalletData:{address:e.address,walletClientType:e.walletClientType}}:void 0}),h("FundingAmountEditScreen")};"solana-only"!==s&&q.push(...I.map(((e,t)=>/*#__PURE__*/n(N,{onClick:()=>H({wallet:e,walletChainType:"ethereum"}),icon:e.meta.icon,name:e.meta.name,chainType:e.type},t)))),"ethereum-only"!==s&&q.push(...L.map(((e,t)=>/*#__PURE__*/n(N,{onClick:()=>H({wallet:e,walletChainType:"solana"}),icon:e.meta.icon,name:e.meta.name,chainType:e.type},t)))),q.push(...(({walletList:e,walletChainType:t,connectors:l,connectOnly:a,ignore:o,walletConnectEnabled:i,forceWallet:r})=>{let c=[],s=[],p=[],d=l.filter((e=>"ethereum-only"===t?"ethereum"===e.chainType:"solana-only"!==t||"solana"===e.chainType)),m=d.find((e=>"wallet_connect_v2"===e.connectorType));for(let[l,y]of(r?[r.wallet]:e).entries()){if("detected_ethereum_wallets"===y)for(let[e,t]of d.filter((({chainType:e,connectorType:n,walletClientType:t})=>"solana"!==e&&("uniswap_wallet_extension"===t||"uniswap_extension"===t?!o.includes("uniswap"):"crypto.com_wallet_extension"===t||"crypto.com_onchain"===t?!o.includes("cryptocom"):"injected"===n&&!o.includes(t)))).entries()){let{walletClientType:o,walletBranding:i,chainType:r}=t;("unknown"===o?s:c).push(/*#__PURE__*/n(O,{connectOnly:a,provider:o,logo:i.icon,displayName:i.name,connector:t},`${l}-${y}-${o}-${r}-${e}`))}if("detected_solana_wallets"===y)for(let[e,i]of d.filter((({chainType:e,walletClientType:n})=>{if("solana"===e)return"ethereum-only"!==t&&!o.includes(n)})).entries()){let{walletClientType:t,walletBranding:o,chainType:r}=i;("unknown"===t?s:c).push(/*#__PURE__*/n(O,{connectOnly:a,provider:t,logo:o.icon,displayName:o.name,connector:i},`${l}-${y}-${t}-${r}-${e}`))}if(E.includes(y)){let e=d.find((e=>"injected"===e.connectorType&&e.walletClientType===y||e.connectorType===y));if(e&&c.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:e},`${l}-${y}`)),"solana-only"===t||"ethereum-and-solana"===t){let e=d.find((({chainType:e,walletClientType:n})=>"solana"===e&&n===y));e&&c.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:e},`${y}-solana`))}}else if(A.includes(y)){let e=d.find((e=>"uniswap"===y?"uniswap_wallet_extension"===e.walletClientType||"uniswap_extension"===e.walletClientType:"cryptocom"===y?"crypto.com_wallet_extension"===e.walletClientType||"crypto.com_onchain"===e.walletClientType:"injected"===e.connectorType&&e.walletClientType===y));if(i&&!e&&(e=m),e&&c.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:e,logo:"injected"===e.connectorType?e.walletBranding.icon:void 0,displayName:"injected"===e.connectorType?e.walletBranding.name:void 0},`${l}-${y}`)),"solana-only"===t||"ethereum-and-solana"===t){let e=d.find((({chainType:e,walletClientType:n})=>"solana"===e&&n===y));e&&c.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:e},`${y}-solana`))}}else if(F.includes(y)){let e=d.find((({connectorType:e})=>e===y));e&&c.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:e,displayName:"coinbase_wallet"===e.walletClientType?"Coinbase":"Base",logo:"coinbase_wallet"===e.walletClientType?j:x},`${l}-${y}`))}else if(B.includes(y))m&&p.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:m},`${l}-${y}`));else if("wallet_connect"===y)m&&p.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,connector:m,logo:m.walletBranding.icon,displayName:"WalletConnect"},`${l}-${y}`));else if(y===r?.wallet){let t="ethereum"===r.chainType&&e.includes("detected_ethereum_wallets"),o="solana"===r.chainType&&e.includes("detected_solana_wallets");if(t||o){let e=d.find((({walletClientType:e})=>e===y));e&&c.push(/*#__PURE__*/n(O,{connectOnly:a,provider:y,displayName:e.walletBranding?.name,logo:e.walletBranding?.icon,connector:e},`${l}-${y}`))}}}return[...s,...c,...p]})({walletList:_.appearance.walletList.filter((e=>!I.some((n=>n.walletClientType===e))&&!L.some((n=>n.walletClientType===e)))),walletChainType:s,connectors:m,connectOnly:!0,ignore:[..._.appearance.walletList,...M,...P],walletConnectEnabled:_.externalWallets.walletConnect.enabled}));let R=/*#__PURE__*/n(v,{text:"More wallets",onClick:()=>k("overflow")}),U=({sourceChainType:e,destChainType:n})=>"ethereum"===e&&"solana"===n?"AwaitingEvmToSolBridgingScreen":"ethereum"===e&&"ethereum"===n?"AwaitingExternalEthereumTransferScreen":"solana"===e&&"ethereum"===n?"AwaitingSolToEvmBridgingScreen":z.externalSolanaFundingScreen;return a((()=>{y({...u,externalConnectWallet:{onCompleteNavigateTo:({address:e,walletClientType:n,walletChainType:t})=>{let l=t??"ethereum",a="ethereum"===l?I.find((t=>t.address===e&&t.walletClientType===n)):L.find((t=>t.address===e&&t.walletClientType===n));return y({...u,funding:{...z,connectedWallet:a,onContinueWithExternalWallet:()=>{h(U({destChainType:$?"solana":"ethereum",sourceChainType:l}))}},solanaFundingData:u?.solanaFundingData?{...u.solanaFundingData,sourceWalletData:{address:e||"",walletClientType:n||""}}:void 0}),"FundingAmountEditScreen"}}})}),[]),/*#__PURE__*/e(t,"overflow"===b?{children:[/*#__PURE__*/n(o,{backFn:()=>k("default")},"header"),/*#__PURE__*/e(f,{children:[/*#__PURE__*/n(p,{style:{color:"var(--privy-color-foreground-3)",textAlign:"left"},children:"More wallets"}),q]}),/*#__PURE__*/n(i,{})]}:{children:[/*#__PURE__*/n(c,{}),/*#__PURE__*/n(r,{title:"Transfer from wallet",description:"Connect a wallet to deposit funds or send funds manually to your wallet address."}),/*#__PURE__*/e(f,{children:[q.length>4?q.slice(0,3):q,q.length>4&&R]}),/*#__PURE__*/n(i,{})]})}};let N=({onClick:t,icon:l,name:a,chainType:o})=>/*#__PURE__*/e(h,{onClick:t,children:[/*#__PURE__*/n($,{style:{width:20},children:/*#__PURE__*/n("img",{src:l})}),a,/*#__PURE__*/n(s,{color:"gray",style:{marginLeft:"auto"},children:"Connected"}),"solana"===o&&/*#__PURE__*/n(s,{color:"gray",children:"Solana"})]});export{L as TransferFromWalletScreen,L as default};
@@ -1,4 +1,4 @@
1
- import{jsxs as e,Fragment as r,jsx as i}from"react/jsx-runtime";import{styled as t}from"styled-components";import{d as o}from"./Layouts-BlFm53ED.mjs";import{B as n}from"./ModalHeader-BnVmXtvG.mjs";import{C as m}from"./ScreenHeader-CHmc4-Lu.mjs";import{t as s}from"./FundWalletMethodHeader-Cb-ACySl.mjs";import{I as a}from"./InjectedWalletIcon-DLcYOGDj.mjs";import{N as d}from"./index-Dq_xe9dz.mjs";import{a as l,R as c}from"./Row-C9vrS4Zi.mjs";import{L as h,V as p}from"./Value-tcJV9e0L.mjs";import{A as f}from"./Address-N-mzBgMy.mjs";import{N as g}from"./NetworkIcon-B48ilzF8.mjs";import{z as j}from"./useActiveWallet-CvP7iYvj.mjs";const I=({walletClientType:t,displayName:I,addressToFund:w,chainId:y,chainName:x,isBridging:N,isErc20Flow:C,totalPriceInNativeCurrency:T,totalPriceInUsd:v,gasPriceInNativeCurrency:B,gasPriceInUsd:P})=>{let k=j(t);/*#__PURE__*/return e(r,{children:[/*#__PURE__*/i(s,{}),/*#__PURE__*/i(d,{centerIcon:/*#__PURE__*/i(a,{icon:k?.image_url?.md,name:t})}),/*#__PURE__*/i(m,{style:{marginTop:"8px",marginBottom:"12px"},title:`${N?"Bridging":"Confirming"} with ${I}`}),!N&&!C&&/*#__PURE__*/e(l,{children:[/*#__PURE__*/e(c,{children:[/*#__PURE__*/i(h,{children:"Total"}),/*#__PURE__*/i(p,{children:v||T})]}),/*#__PURE__*/e(c,{children:[/*#__PURE__*/i(h,{children:"To"}),/*#__PURE__*/i(p,{children:/*#__PURE__*/i(f,{address:w,showCopyIcon:!1})})]}),/*#__PURE__*/e(c,{children:[/*#__PURE__*/i(h,{children:"Network"}),/*#__PURE__*/i(p,{children:/*#__PURE__*/e(u,{children:[/*#__PURE__*/i(g,{chainId:y,height:16,width:16})," ",x]})})]}),B&&/*#__PURE__*/e(c,{children:[/*#__PURE__*/i(h,{children:"Estimated fee"}),/*#__PURE__*/i(p,{children:P||B})]})]}),/*#__PURE__*/i(o,{height:24}),/*#__PURE__*/i(n,{})]})};let u=t.div`
1
+ import{jsxs as e,Fragment as r,jsx as i}from"react/jsx-runtime";import{styled as t}from"styled-components";import{d as o}from"./Layouts-BlFm53ED.mjs";import{B as n}from"./ModalHeader-Duq1Izpl.mjs";import{C as m}from"./ScreenHeader-CHmc4-Lu.mjs";import{t as s}from"./FundWalletMethodHeader-dEfQKUIt.mjs";import{I as a}from"./InjectedWalletIcon-DLcYOGDj.mjs";import{N as d}from"./index-Dq_xe9dz.mjs";import{a as l,R as c}from"./Row-C9vrS4Zi.mjs";import{L as h,V as p}from"./Value-tcJV9e0L.mjs";import{A as f}from"./Address-PwZSXm9b.mjs";import{N as g}from"./NetworkIcon-B48ilzF8.mjs";import{z as j}from"./useActiveWallet-By6UNJY1.mjs";const I=({walletClientType:t,displayName:I,addressToFund:w,chainId:y,chainName:x,isBridging:N,isErc20Flow:C,totalPriceInNativeCurrency:T,totalPriceInUsd:v,gasPriceInNativeCurrency:B,gasPriceInUsd:P})=>{let k=j(t);/*#__PURE__*/return e(r,{children:[/*#__PURE__*/i(s,{}),/*#__PURE__*/i(d,{centerIcon:/*#__PURE__*/i(a,{icon:k?.image_url?.md,name:t})}),/*#__PURE__*/i(m,{style:{marginTop:"8px",marginBottom:"12px"},title:`${N?"Bridging":"Confirming"} with ${I}`}),!N&&!C&&/*#__PURE__*/e(l,{children:[/*#__PURE__*/e(c,{children:[/*#__PURE__*/i(h,{children:"Total"}),/*#__PURE__*/i(p,{children:v||T})]}),/*#__PURE__*/e(c,{children:[/*#__PURE__*/i(h,{children:"To"}),/*#__PURE__*/i(p,{children:/*#__PURE__*/i(f,{address:w,showCopyIcon:!1})})]}),/*#__PURE__*/e(c,{children:[/*#__PURE__*/i(h,{children:"Network"}),/*#__PURE__*/i(p,{children:/*#__PURE__*/e(u,{children:[/*#__PURE__*/i(g,{chainId:y,height:16,width:16})," ",x]})})]}),B&&/*#__PURE__*/e(c,{children:[/*#__PURE__*/i(h,{children:"Estimated fee"}),/*#__PURE__*/i(p,{children:P||B})]})]}),/*#__PURE__*/i(o,{height:24}),/*#__PURE__*/i(n,{})]})};let u=t.div`
2
2
  display: flex;
3
3
  flex-direction: row;
4
4
  align-items: center;
@@ -0,0 +1 @@
1
+ import{jsxs as e,Fragment as r,jsx as t}from"react/jsx-runtime";import o from"@heroicons/react/24/outline/EnvelopeIcon";import{B as i}from"./Layouts-BlFm53ED.mjs";import{Mail as a}from"lucide-react";import{forwardRef as s,useState as m}from"react";import{u as n}from"./context-aGvo4MVQ.mjs";import{a as l}from"./index-D23O4czL.mjs";import{u as d}from"./internal-context-C4ZqP8IF.mjs";import{u as c,a as p}from"./privy-context-CkPtrpbt.mjs";import{C as u}from"./useActiveWallet-By6UNJY1.mjs";import{B as h}from"./use-export-wallet-Db8GdSAT.mjs";import{E as v,P as f}from"./ModalHeader-Duq1Izpl.mjs";import{I as y,E as j}from"./EmailInputForm-Dgoii4vf.mjs";import{E as g}from"./ErrorMessage-D8VaAP5m.mjs";import{S as w}from"./ScreenLayout-B6n5Feil.mjs";import"styled-components";import"@privy-io/js-sdk-core";import"tinycolor2";import"uuid";import"jose";import"eventemitter3";import"@coinbase/wallet-sdk";import"react-device-detect";import"@walletconnect/ethereum-provider";import"./usePrivy-DPZ1iMmn.mjs";import"./events-context-CI0iqAXA.mjs";import"./get-entropy-details-for-user-DkZdXKpr.mjs";import"viem";import"zustand";import"ofetch";import"./paths-BzM95ysC.mjs";import"js-cookie";import"./PrivyPluginContext-2QN2dVUw.mjs";import"mipd";import"viem/utils";import"@privy-io/popup";import"@scure/base";import"@headlessui/react";import"@privy-io/urls";import"@privy-io/ethereum";import"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import"./frame-CjhCpycO.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"@privy-io/are-addresses-equal";import"viem/accounts";import"./use-sign-with-user-signer-BYctG7hm.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Ce8BE24H.mjs";import"./index-Dq_xe9dz.mjs";const k=/*#__PURE__*/s(((o,i)=>{let[s,y]=m(""),[j,w]=m(""),[k,S]=m(!1),{authenticated:x,user:A}=c(),{initUpdateEmail:C}=d(),{navigate:I,setModalData:P,currentScreen:M}=p(),{enabled:T,token:U}=l(),L=n(),q=h(s)&&(L.disablePlusEmails&&s.includes("+")?(j||w("Please enter a valid email address without a '+'."),!1):(j&&w(""),!0)),D=k||!q,W=()=>{!T||U||x?(async e=>{if(!A?.email)throw Error("User is required to have an email address to update it.");S(!0);try{await C({oldAddress:A.email.address,newAddress:s,captchaToken:e}),I("AwaitingPasswordlessCodeScreen")}catch(e){P({errorModalData:{error:e,previousScreen:M||"LandingScreen"}}),I("ErrorScreen")}S(!1)})(U):(P({captchaModalData:{callback:e=>{if(!A?.email)throw Error("User is required to have an email address to update it.");return C({oldAddress:A.email.address,newAddress:s,captchaToken:e})},userIntentRequired:!1,onSuccessNavigateTo:"AwaitingPasswordlessCodeScreen",onErrorNavigateTo:"ErrorScreen"}}),I("CaptchaScreen"))};/*#__PURE__*/return e(r,{children:[/*#__PURE__*/e(b,{children:[j&&/*#__PURE__*/t(g,{style:{marginTop:"0.25rem",textAlign:"left"},children:j}),/*#__PURE__*/e(E,{$error:!!j,children:[/*#__PURE__*/t(u,{children:/*#__PURE__*/t(a,{})}),/*#__PURE__*/t("input",{ref:i,id:"email-input",type:"email",placeholder:"your@email.com",onChange:e=>y(e.target.value),onKeyUp:e=>{"Enter"===e.key&&W()},value:s,autoComplete:"email"}),o.stacked?null:/*#__PURE__*/t(v,{isSubmitting:k,onClick:W,disabled:D,children:"Submit"})]})]}),o.stacked?/*#__PURE__*/t(f,{loadingText:null,loading:k,disabled:D,onClick:W,style:{width:"100%"},children:"Submit"}):null]})}));let b=y,E=j;const S=({title:e="Update your email",subtitle:r="Add the email address you'd like to use going forward. We'll send you a confirmation code"})=>/*#__PURE__*/t(w,{title:e,subtitle:r,icon:o,watermark:!0,children:/*#__PURE__*/t(i,{children:/*#__PURE__*/t(k,{stacked:!0})})}),x={component:()=>/*#__PURE__*/t(S,{})};export{x as UpdateEmailScreen,S as UpdateEmailScreenView,x as default};
@@ -0,0 +1 @@
1
+ import{jsx as e}from"react/jsx-runtime";import t from"@heroicons/react/24/outline/PhoneIcon";import{useState as o}from"react";import{C as r}from"./ConnectPhoneForm-DCm_Nfv1.mjs";import{u as i}from"./internal-context-C4ZqP8IF.mjs";import{a as n,u as m}from"./privy-context-CkPtrpbt.mjs";import{S as a}from"./ScreenLayout-B6n5Feil.mjs";import"styled-components";import"@privy-io/js-sdk-core";import"./context-aGvo4MVQ.mjs";import"tinycolor2";import"./useActiveWallet-By6UNJY1.mjs";import"zustand";import"viem";import"viem/utils";import"./use-export-wallet-Db8GdSAT.mjs";import"./get-entropy-details-for-user-DkZdXKpr.mjs";import"eventemitter3";import"react-device-detect";import"./events-context-CI0iqAXA.mjs";import"./ModalHeader-Duq1Izpl.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Chip-D2-wZOHJ.mjs";import"./LoadingSkeleton-U6-3yFwI.mjs";import"ofetch";import"@privy-io/are-addresses-equal";import"./Screen-Ce8BE24H.mjs";import"./index-Dq_xe9dz.mjs";const s=({title:i="Update your phone number",subtitle:n="Add the phone number you'd like to use going forward. We'll send you a confirmation code",onSubmit:m,isSubmitting:s=!1})=>{let[c,p]=o(null);/*#__PURE__*/return e(a,{title:i,subtitle:n,icon:t,primaryCta:{label:s?"Submitting":"Update",onClick:async()=>{c?.qualifiedPhoneNumber&&await m(c)},disabled:!c?.isValid||s},watermark:!0,children:/*#__PURE__*/e(r,{onChange:e=>{p(e)},onSubmit:async()=>{},noIncludeSubmitButton:!0,hideRecent:!0})})},c={component:()=>{let{currentScreen:t,data:r,navigate:a,setModalData:c}=n(),{user:p}=m(),{initUpdatePhone:u}=i(),[l,d]=o(!1);/*#__PURE__*/return e(s,{onSubmit:async e=>{d(!0);try{if(!p?.phone?.number)throw Error("User is required to have an phone number to update it.");await u(p?.phone?.number,e.qualifiedPhoneNumber),a("AwaitingPasswordlessCodeScreen")}catch(e){c({errorModalData:{error:e,previousScreen:r?.errorModalData?.previousScreen||t||"LinkPhoneScreen"}}),a("ErrorScreen")}finally{d(!1)}},isSubmitting:l})}};export{c as UpdatePhoneScreen,s as UpdatePhoneScreenView,c as default};
@@ -0,0 +1 @@
1
+ import{jsx as t}from"react/jsx-runtime";import{a as e}from"./privy-context-CkPtrpbt.mjs";import{S as o}from"./ScreenLayout-B6n5Feil.mjs";import"@privy-io/are-addresses-equal";import"react";import"./context-aGvo4MVQ.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"./internal-context-C4ZqP8IF.mjs";import"ofetch";import"./ModalHeader-Duq1Izpl.mjs";import"styled-components";import"./useActiveWallet-By6UNJY1.mjs";import"zustand";import"viem";import"viem/utils";import"./use-export-wallet-Db8GdSAT.mjs";import"./get-entropy-details-for-user-DkZdXKpr.mjs";import"eventemitter3";import"react-device-detect";import"./events-context-CI0iqAXA.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Ce8BE24H.mjs";import"./index-Dq_xe9dz.mjs";const r=({style:e,...o})=>/*#__PURE__*/t("svg",{width:"40",height:"40",viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"38px",width:"38px",...e},...o,children:/*#__PURE__*/t("path",{d:"M20 13.6V20M20 26.4H20.016M36 20C36 28.8365 28.8366 36 20 36C11.1635 36 4.00001 28.8365 4.00001 20C4.00001 11.1634 11.1635 3.99999 20 3.99999C28.8366 3.99999 36 11.1634 36 20Z",stroke:"currentColor",strokeWidth:"3.2",strokeLinecap:"round",strokeLinejoin:"round"})}),i=({title:e="Unable to sign in",subtitle:i="This is a test application that has reached its user limit. To allow more users, this app needs to be upgraded to production.",onGoBack:n})=>/*#__PURE__*/t(o,{title:e,subtitle:i,icon:r,iconVariant:"subtle",primaryCta:{label:"Go back",onClick:n},showBack:!0,onBack:n,watermark:!0}),n={component:()=>{let{navigate:o}=e();/*#__PURE__*/return t(i,{onGoBack:()=>{o("LandingScreen")}})}};export{n as UserLimitReachedScreen,i as UserLimitReachedScreenView,n as default};
@@ -1,4 +1,4 @@
1
- import{jsxs as e,jsx as r,Fragment as o}from"react/jsx-runtime";import{Check as i,Copy as t}from"lucide-react";import{useState as s,useEffect as a}from"react";import{styled as n}from"styled-components";import{S as m}from"./ModalHeader-BnVmXtvG.mjs";import{E as l}from"./ErrorMessage-D8VaAP5m.mjs";import{L as d}from"./LabelXs-oqZNqbm_.mjs";import{A as c}from"./Address-N-mzBgMy.mjs";import{B as p}from"./shared-FM0rljBt.mjs";let h=n(p)`
1
+ import{jsxs as e,jsx as r,Fragment as o}from"react/jsx-runtime";import{Check as i,Copy as t}from"lucide-react";import{useState as s,useEffect as a}from"react";import{styled as n}from"styled-components";import{S as m}from"./ModalHeader-Duq1Izpl.mjs";import{E as l}from"./ErrorMessage-D8VaAP5m.mjs";import{L as d}from"./LabelXs-oqZNqbm_.mjs";import{A as c}from"./Address-PwZSXm9b.mjs";import{B as p}from"./shared-FM0rljBt.mjs";let h=n(p)`
2
2
  && {
3
3
  padding: 0.75rem;
4
4
  height: 56px;
@@ -0,0 +1 @@
1
+ import{jsx as t}from"react/jsx-runtime";import{useState as e}from"react";import{u as o,a as i}from"./privy-context-CkPtrpbt.mjs";import{S as r}from"./ScreenLayout-B6n5Feil.mjs";import"@privy-io/are-addresses-equal";import"./context-aGvo4MVQ.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"./internal-context-C4ZqP8IF.mjs";import"ofetch";import"./ModalHeader-Duq1Izpl.mjs";import"styled-components";import"./useActiveWallet-By6UNJY1.mjs";import"zustand";import"viem";import"viem/utils";import"./use-export-wallet-Db8GdSAT.mjs";import"./get-entropy-details-for-user-DkZdXKpr.mjs";import"eventemitter3";import"react-device-detect";import"./events-context-CI0iqAXA.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./Screen-Ce8BE24H.mjs";import"./index-Dq_xe9dz.mjs";const n=({title:e,subtitle:o,buttonText:i,buttonHref:n,isLoading:l=!1,helpText:a,onButtonClick:s})=>/*#__PURE__*/t(r,{title:e,subtitle:o,primaryCta:{label:i,onClick:()=>{n&&window.open(n,"_self"),s?.()},disabled:l},helpText:a,watermark:!0}),l={component:()=>{let{ready:r}=o(),{data:l}=i(),[a,s]=e(!1);if(!l?.installWalletModalData)throw Error("Wallet data is missing");let{walletConfig:m,connectOnly:c,chainType:p}=l.installWalletModalData,u=m.getMobileRedirect({useUniversalLink:!a,isSolana:"solana"===p,connectOnly:c}),d=m.name.replace(/ wallet/gi,""),h={title:`Redirecting to ${d} Mobile Wallet`,description:`We'll take you to the ${d} Mobile Wallet app to continue your login experience.`,footnote:""};return r&&(h.description=`For the best experience, we'll automatically log you into the ${d} Mobile Wallet in-app browser.`,h.footnote="You can always return here to login via other methods."),a&&(h.title="Still here?",h.description=`You may need to install the ${m.name} mobile app.`,h.footnote=`Once you're done, you can connect with ${m.name} wallet to complete the login.`),/*#__PURE__*/t(n,{title:h.title,subtitle:h.description,buttonText:a?"Go to App Store":"Continue",buttonHref:u,isLoading:r&&!u,helpText:h.footnote||void 0,onButtonClick:()=>{setTimeout((()=>s(!0)),1e3)}})}};export{l as WalletInterstitialScreen,n as WalletInterstitialScreenView,l as default};
@@ -1,4 +1,4 @@
1
- import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import{styled as n}from"styled-components";import{formatUnits as i}from"viem";import{s as o,a as s,g as a,b as l}from"./ethers-Dnv1tMN3.mjs";import{g as c}from"./getFormattedUsdFromLamports-B6EqSEho.mjs";import{g as m}from"./transaction-CnfuREWo.mjs";import{v as d}from"./use-export-wallet-_wu5ex5t.mjs";const p=({weiQuantities:t,tokenPrice:r,tokenSymbol:n})=>{let i=o(t),l=r?s(i,r):void 0,c=a(i,n);/*#__PURE__*/return e(u,{children:l||c})},h=({weiQuantities:n,tokenPrice:i,tokenSymbol:l})=>{let c=o(n),m=i?s(c,i):void 0,d=a(c,l);/*#__PURE__*/return e(u,{children:m?/*#__PURE__*/r(t,{children:[/*#__PURE__*/e(x,{children:"USD"}),"<$0.01"===m?
1
+ import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import{styled as n}from"styled-components";import{formatUnits as i}from"viem";import{s as o,a as s,g as a,b as l}from"./ethers-BNftJuZG.mjs";import{g as c}from"./getFormattedUsdFromLamports-B6EqSEho.mjs";import{g as m}from"./transaction-CnfuREWo.mjs";import{v as d}from"./use-export-wallet-Db8GdSAT.mjs";const p=({weiQuantities:t,tokenPrice:r,tokenSymbol:n})=>{let i=o(t),l=r?s(i,r):void 0,c=a(i,n);/*#__PURE__*/return e(u,{children:l||c})},h=({weiQuantities:n,tokenPrice:i,tokenSymbol:l})=>{let c=o(n),m=i?s(c,i):void 0,d=a(c,l);/*#__PURE__*/return e(u,{children:m?/*#__PURE__*/r(t,{children:[/*#__PURE__*/e(x,{children:"USD"}),"<$0.01"===m?
2
2
  /*#__PURE__*/r(S,{children:[/*#__PURE__*/e(g,{children:"<"}),"$0.01"]}):m]}):d})},f=({quantities:n,tokenPrice:o,tokenSymbol:s="SOL",tokenDecimals:a=9})=>{let l=n.reduce(((e,t)=>e+t),0n),d=o&&"SOL"===s&&9===a?c(l,o):void 0,p="SOL"===s&&9===a?m(l):`${i(l,a)} ${s}`;/*#__PURE__*/return e(u,{children:d?/*#__PURE__*/e(t,{children:"<$0.01"===d?
3
3
  /*#__PURE__*/r(S,{children:[/*#__PURE__*/e(g,{children:"<"}),"$0.01"]}):d}):p})};let u=n.span`
4
4
  font-size: 14px;
@@ -1 +1 @@
1
- import{jsxs as r,jsx as e}from"react/jsx-runtime";import{Wallet as t}from"lucide-react";import{A as i,C as c,G as o}from"./useActiveWallet-CvP7iYvj.mjs";const l=({onClick:l,text:m})=>/*#__PURE__*/r(i,{onClick:l,children:[/*#__PURE__*/e(c,{children:/*#__PURE__*/e(t,{})}),/*#__PURE__*/e(o,{children:m})]});export{l as W};
1
+ import{jsxs as r,jsx as e}from"react/jsx-runtime";import{Wallet as t}from"lucide-react";import{A as i,C as c,G as o}from"./useActiveWallet-By6UNJY1.mjs";const l=({onClick:l,text:m})=>/*#__PURE__*/r(i,{onClick:l,children:[/*#__PURE__*/e(c,{children:/*#__PURE__*/e(t,{})}),/*#__PURE__*/e(o,{children:m})]});export{l as W};
@@ -1 +1 @@
1
- import{createAbstractClient as e}from"@abstract-foundation/agw-client";import{getBatchTransactionObject as a}from"@abstract-foundation/agw-client/actions";import{hexToNumber as n,createWalletClient as t,custom as r,http as s}from"viem";import{toAccount as i}from"viem/accounts";import{abstractTestnet as o,zksync as c}from"viem/chains";import{u as d,a as l,c as p,b as m}from"./privy-context-DrMxzgOR.mjs";import{u}from"./context-DLtU3JQy.mjs";import{u as y}from"./internal-context-Z-fyxadS.mjs";import{u as g,g as f,b as h}from"./useWallets-BzNCTucF.mjs";import{g as v}from"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import{c as I}from"./smart-wallets-l4nwJjoH.mjs";import"@privy-io/are-addresses-equal";import"react/jsx-runtime";import"react";import"@privy-io/js-sdk-core";import"tinycolor2";import"ofetch";import"./PrivyPluginContext-2QN2dVUw.mjs";import"permissionless";import"permissionless/accounts";import"permissionless/clients/pimlico";import"viem/account-abstraction";function T(){let{user:T}=d(),{hideWalletUIs:S,openPrivyModal:w,chains:P,appId:W,rpcConfig:b,client:C}=y(),x=u(),{wallets:F}=g(),{setModalData:M}=l(),_=p(T),q=!!_&&m(_),A=async(a=o.id)=>{let d=v(F);if(!d)throw Error("No connected wallet found");let l="string"==typeof a?n(a):a;if(![o.id,2741,c.id].includes(l))throw Error("Error, only Abstract and ZKSync Era chains are supported");let p=P.find((e=>e.id===l));if(!p)throw Error("Chain not configured");await d.switchChain(p.id);let m=await d.getEthereumProvider(),u=t({account:d.address,transport:r(m)}),y=i({address:d.address,signMessage:u.signMessage,signTransaction:u.signTransaction,signTypedData:u.signTypedData});return await e({chain:p,transport:s(h(p,b,W)),publicTransport:s(h(p,b,W)),signer:y})};return{signMessage:async({message:e},a)=>{let n=await A(a);return new Promise((async(a,t)=>{let{entropyId:r,entropyIdVerifier:s}=f(T);S.current=!0,M({connectWallet:{recoveryMethod:_.recoveryMethod,connectingWalletAddress:_.address,isUnifiedWallet:q,entropyId:r,entropyIdVerifier:s,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"personal_sign",data:e,confirmAndSign:()=>n.signMessage({message:e}),onSuccess:e=>a(e),onFailure:t,uiOptions:{isCancellable:!0}}}),w("EmbeddedWalletConnectingScreen")})).finally((()=>{S.current=!1}))},signTypedData:async(e,a)=>{let n=await A(a);return new Promise((async(a,t)=>{S.current=!0;let{entropyId:r,entropyIdVerifier:s}=f(T);M({connectWallet:{recoveryMethod:_.recoveryMethod,connectingWalletAddress:_.address,isUnifiedWallet:q,entropyId:r,entropyIdVerifier:s,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:e,confirmAndSign:()=>n.signTypedData(e),onSuccess:e=>a(e),onFailure:t,uiOptions:{isCancellable:!0}}}),w("EmbeddedWalletConnectingScreen")})).finally((()=>{S.current=!1}))},sendTransaction:async e=>{let n=await A(e.chainId),t=[],r="calls"in e&&void 0!==e.calls;return t=r?[...e.calls]:[e],new Promise((async(s,i)=>{S.current=!0;let{entropyId:o,entropyIdVerifier:c}=f(T);M({connectWallet:{recoveryMethod:_.recoveryMethod,connectingWalletAddress:_.address,isUnifiedWallet:q,entropyId:o,entropyIdVerifier:c,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:I({calls:t,chain:n.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),entropyId:o,entropyIdVerifier:c,transactingWalletAddress:n.account.address,transactingWalletIndex:void 0,prepareTransactionRequest:async()=>{let t=r?a(n.account.address,e):e;return await n.prepareAbstractTransactionRequest(t)},scanTransaction:async()=>{if(!C)throw Error("Privy client not found");let t=r?a(n.account.address,e):e,s=await n.prepareAbstractTransactionRequest(t);return await C.scanTransaction({metadata:{domain:x.embeddedWallets.transactionScanning.domain},chain_id:e.chainId.toString(),request:{method:"eth_sendTransaction",params:[{from:s.from,to:s.to,value:s.value?.toString(),gas:s.gas?.toString(),gasPrice:s.gasPrice?.toString(),nonce:s.nonce?.toString(),data:s.data,eip_712_meta:{paymaster_params:{paymaster:s.paymaster,paymaster_input:s.paymasterInput}}}]}})},signOnly:!1,getIsSponsored:async()=>void 0!==e.paymaster&&void 0!==e.paymasterInput,onConfirm:()=>r?n.sendTransactionBatch(e):n.sendTransaction(e),onSuccess:e=>s(e.hash),onFailure:i,uiOptions:{isCancellable:!0}}}),w("EmbeddedWalletConnectingScreen")})).finally((()=>{S.current=!1}))},signTransaction:async e=>{let n=await A(e.chainId),t=[],r="calls"in e&&void 0!==e.calls;return t=r?[...e.calls]:[e],new Promise((async(s,i)=>{S.current=!0;let{entropyId:o,entropyIdVerifier:c}=f(T);M({connectWallet:{recoveryMethod:_.recoveryMethod,connectingWalletAddress:_.address,isUnifiedWallet:q,entropyId:o,entropyIdVerifier:c,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:I({calls:t,chain:n.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),entropyId:o,entropyIdVerifier:c,transactingWalletAddress:n.account.address,transactingWalletIndex:void 0,prepareTransactionRequest:async()=>{let t=r?a(n.account.address,e):e;return await n.prepareAbstractTransactionRequest(t)},scanTransaction:async()=>{if(!C)throw Error("Privy client not found");let t=r?a(n.account.address,e):e,s=await n.prepareAbstractTransactionRequest(t);return await C.scanTransaction({metadata:{domain:x.embeddedWallets.transactionScanning.domain},chain_id:e.chainId.toString(),request:{method:"eth_sendTransaction",params:[{from:s.from,to:s.to,value:s.value?.toString(),gas:s.gas?.toString(),gasPrice:s.gasPrice?.toString(),nonce:s.nonce?.toString(),data:s.data,eip_712_meta:{paymaster_params:{paymaster:s.paymaster,paymaster_input:s.paymasterInput}}}]}})},signOnly:!0,getIsSponsored:async()=>void 0!==e.paymaster&&void 0!==e.paymasterInput,onConfirm:async()=>{let t=r?a(n.account.address,e):e,s=await n.prepareAbstractTransactionRequest(t);return n.signTransaction(s)},onSuccess:e=>s(e.hash),onFailure:i,uiOptions:{isCancellable:!0}}}),w("EmbeddedWalletConnectingScreen")})).finally((()=>{S.current=!1}))}}}export{T as useAbstractSmartWallets};
1
+ import{createAbstractClient as e}from"@abstract-foundation/agw-client";import{getBatchTransactionObject as a}from"@abstract-foundation/agw-client/actions";import{hexToNumber as n,createWalletClient as t,custom as r,http as s}from"viem";import{toAccount as i}from"viem/accounts";import{abstractTestnet as o,zksync as c}from"viem/chains";import{u as d,a as l,d as p,b as m}from"./privy-context-CkPtrpbt.mjs";import{u}from"./context-aGvo4MVQ.mjs";import{u as y}from"./internal-context-C4ZqP8IF.mjs";import{u as g,b as f,i as h}from"./get-entropy-details-for-user-DkZdXKpr.mjs";import{g as v}from"./getEmbeddedConnectedWallet-JzK4iD-L.mjs";import{c as I}from"./smart-wallets-BhZ-uX3v.mjs";import"@privy-io/are-addresses-equal";import"react/jsx-runtime";import"react";import"@privy-io/js-sdk-core";import"tinycolor2";import"ofetch";import"zustand";import"./PrivyPluginContext-2QN2dVUw.mjs";import"permissionless";import"permissionless/accounts";import"permissionless/clients/pimlico";import"viem/account-abstraction";function T(){let{user:T}=d(),{hideWalletUIs:S,openPrivyModal:w,chains:P,appId:W,rpcConfig:b,client:C}=y(),x=u(),{wallets:F}=g(),{setModalData:M}=l(),_=p(T),q=!!_&&m(_),A=async(a=o.id)=>{let d=v(F);if(!d)throw Error("No connected wallet found");let l="string"==typeof a?n(a):a;if(![o.id,2741,c.id].includes(l))throw Error("Error, only Abstract and ZKSync Era chains are supported");let p=P.find((e=>e.id===l));if(!p)throw Error("Chain not configured");await d.switchChain(p.id);let m=await d.getEthereumProvider(),u=t({account:d.address,transport:r(m)}),y=i({address:d.address,signMessage:u.signMessage,signTransaction:u.signTransaction,signTypedData:u.signTypedData});return await e({chain:p,transport:s(h(p,b,W)),publicTransport:s(h(p,b,W)),signer:y})};return{signMessage:async({message:e},a)=>{let n=await A(a);return new Promise((async(a,t)=>{let{entropyId:r,entropyIdVerifier:s}=f(T);S.current=!0,M({connectWallet:{recoveryMethod:_.recoveryMethod,connectingWalletAddress:_.address,isUnifiedWallet:q,entropyId:r,entropyIdVerifier:s,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"personal_sign",data:e,confirmAndSign:()=>n.signMessage({message:e}),onSuccess:e=>a(e),onFailure:t,uiOptions:{isCancellable:!0}}}),w("EmbeddedWalletConnectingScreen")})).finally((()=>{S.current=!1}))},signTypedData:async(e,a)=>{let n=await A(a);return new Promise((async(a,t)=>{S.current=!0;let{entropyId:r,entropyIdVerifier:s}=f(T);M({connectWallet:{recoveryMethod:_.recoveryMethod,connectingWalletAddress:_.address,isUnifiedWallet:q,entropyId:r,entropyIdVerifier:s,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:e,confirmAndSign:()=>n.signTypedData(e),onSuccess:e=>a(e),onFailure:t,uiOptions:{isCancellable:!0}}}),w("EmbeddedWalletConnectingScreen")})).finally((()=>{S.current=!1}))},sendTransaction:async e=>{let n=await A(e.chainId),t=[],r="calls"in e&&void 0!==e.calls;return t=r?[...e.calls]:[e],new Promise((async(s,i)=>{S.current=!0;let{entropyId:o,entropyIdVerifier:c}=f(T);M({connectWallet:{recoveryMethod:_.recoveryMethod,connectingWalletAddress:_.address,isUnifiedWallet:q,entropyId:o,entropyIdVerifier:c,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:I({calls:t,chain:n.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),entropyId:o,entropyIdVerifier:c,transactingWalletAddress:n.account.address,transactingWalletIndex:void 0,prepareTransactionRequest:async()=>{let t=r?a(n.account.address,e):e;return await n.prepareAbstractTransactionRequest(t)},scanTransaction:async()=>{if(!C)throw Error("Privy client not found");let t=r?a(n.account.address,e):e,s=await n.prepareAbstractTransactionRequest(t);return await C.scanTransaction({metadata:{domain:x.embeddedWallets.transactionScanning.domain},chain_id:e.chainId.toString(),request:{method:"eth_sendTransaction",params:[{from:s.from,to:s.to,value:s.value?.toString(),gas:s.gas?.toString(),gasPrice:s.gasPrice?.toString(),nonce:s.nonce?.toString(),data:s.data,eip_712_meta:{paymaster_params:{paymaster:s.paymaster,paymaster_input:s.paymasterInput}}}]}})},signOnly:!1,getIsSponsored:async()=>void 0!==e.paymaster&&void 0!==e.paymasterInput,onConfirm:()=>r?n.sendTransactionBatch(e):n.sendTransaction(e),onSuccess:e=>s(e.hash),onFailure:i,uiOptions:{isCancellable:!0}}}),w("EmbeddedWalletConnectingScreen")})).finally((()=>{S.current=!1}))},signTransaction:async e=>{let n=await A(e.chainId),t=[],r="calls"in e&&void 0!==e.calls;return t=r?[...e.calls]:[e],new Promise((async(s,i)=>{S.current=!0;let{entropyId:o,entropyIdVerifier:c}=f(T);M({connectWallet:{recoveryMethod:_.recoveryMethod,connectingWalletAddress:_.address,isUnifiedWallet:q,entropyId:o,entropyIdVerifier:c,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:I({calls:t,chain:n.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),entropyId:o,entropyIdVerifier:c,transactingWalletAddress:n.account.address,transactingWalletIndex:void 0,prepareTransactionRequest:async()=>{let t=r?a(n.account.address,e):e;return await n.prepareAbstractTransactionRequest(t)},scanTransaction:async()=>{if(!C)throw Error("Privy client not found");let t=r?a(n.account.address,e):e,s=await n.prepareAbstractTransactionRequest(t);return await C.scanTransaction({metadata:{domain:x.embeddedWallets.transactionScanning.domain},chain_id:e.chainId.toString(),request:{method:"eth_sendTransaction",params:[{from:s.from,to:s.to,value:s.value?.toString(),gas:s.gas?.toString(),gasPrice:s.gasPrice?.toString(),nonce:s.nonce?.toString(),data:s.data,eip_712_meta:{paymaster_params:{paymaster:s.paymaster,paymaster_input:s.paymasterInput}}}]}})},signOnly:!0,getIsSponsored:async()=>void 0!==e.paymaster&&void 0!==e.paymasterInput,onConfirm:async()=>{let t=r?a(n.account.address,e):e,s=await n.prepareAbstractTransactionRequest(t);return n.signTransaction(s)},onSuccess:e=>s(e.hash),onFailure:i,uiOptions:{isCancellable:!0}}}),w("EmbeddedWalletConnectingScreen")})).finally((()=>{S.current=!1}))}}}export{T as useAbstractSmartWallets};
@@ -0,0 +1 @@
1
+ import{jsx as e}from"react/jsx-runtime";import{useState as t,useMemo as a,useEffect as n,createContext as o,useContext as l}from"react";import{dedupeSupportedChains as r,DEFAULT_SUPPORTED_CHAINS as i,mainnet as s}from"@privy-io/js-sdk-core";import c from"tinycolor2";const d="https://auth.privy.io",u=2e4,g=1400,h=2500,f=4e3,p="3.19.0-beta-20260327145607",_="privy:token",b="privy-token",m="privy:refresh_token",v="privy-refresh-token",w="privy:pat",k="privy:id_token",y="privy-id-token",F="privy-session",C="privy:caid",M=e=>`privy:guest:${e}`,A=e=>`privy:cross-app:${e}`,E="privy:state_code",x="privy:code_verifier",D="privy:headless_oauth",B="privy:oauth_disable_signup",W=e=>`privy:wallet:${e}`,L="privy:connections",S=12e4,H=1,I="0x1",O=3e4,U="https://api.moonpay.com/v1",P="https://api.moonpay.com/v1",q="pk_live_hirbpu0cVcLHrjktC9l7fbc9ctjv0SL",j="pk_test_fqWjXZMSFwloh7orvJsRfjiUHXJqFzI",R="deprecated",T={appearance:{landingHeader:"Log in or sign up",theme:"light",walletList:["detected_ethereum_wallets","detected_solana_wallets","metamask","coinbase_wallet","rainbow","base_account","wallet_connect","phantom"]},walletConnectCloudProjectId:"34357d3c125c2bcf2ce2bc3309d98715",_render:{standalone:!1},fundingMethodConfig:{moonpay:{useSandbox:!1}}};let N=new Set(["coinbase_wallet","base_account","cryptocom","metamask","okx_wallet","phantom","rainbow","uniswap","zerion","universal_profile","bybit_wallet","ronin_wallet","haha_wallet","wallet_connect","wallet_connect_qr","wallet_connect_qr_solana","detected_solana_wallets","detected_ethereum_wallets","rabby_wallet","safe","solflare","backpack","jupiter","binance","binanceus","bitget_wallet","kraken_wallet"]),$=e=>N.has(e),z=(e,t,a)=>a.indexOf(e)===t;const Y=({input:e,overrides:t})=>t?t.primary.concat(t.overflow??[]).filter($).filter(z):e?e.filter($).filter(z):T.appearance.walletList;let G=/paymaster\.biconomy\.io\/api/i,J={mode:"SPONSORED",calculateGasLimits:!0,expiryDuration:300,sponsorshipInfo:{webhookData:{},smartAccountInfo:{name:"BICONOMY",version:"2.0.0"}}};const V=(e,t)=>e&&G.test(e)?J:t&&t.policy_id?{policyId:t.policy_id}:void 0;function K(e,t){let a=Math.max(0,Math.min(1,e.toHsl().l+t));return c({...e.toHsl(),l:a})}function X(e,t){let a=e.getLuminance(),n=t.getLuminance();return(Math.max(a,n)+.05)/(Math.min(a,n)+.05)}function Z(e,t){if(!e){let e=t?ee:te;return{accent:c(e.background.interactive),accentLight:c(e.background.interactive),accentHover:c(e.background["interactive-hover"]),accentDark:c(e.background["interactive-clicked"]),accentDarkest:c(e.background["interactive-disabled"])}}let a=c(e);return{accent:a,accentLight:K(a,.15),accentHover:K(a,.3),accentDark:K(a,-.06),accentDarkest:K(a,-.6)}}function Q({backgroundTheme:e,accentHex:t}){let a,n;"light"===e?a=!1:"dark"===e?a=!0:(a=.5>=c(e).getLuminance(),n=c(e).toHslString());let o=a?"dark":"light",l=a?ee:te,{accent:r,accentLight:i,accentHover:s,accentDark:d,accentDarkest:u}=Z(t,a),g=function(e){let t=c(te.text.default),a=c(ee.text.default),n=X(e,t),o=X(e,a),l=e.toHsl();return l.h>=220&&l.h<=300&&o>=3?ee.text.default:n>o?te.text.default:ee.text.default}(r),h=c(g),f=X(r,c(l.background.default))>=3;return{colorScheme:o,background:n||l.background.default,background2:l.background.elevated,background3:l.background.interactive,foreground:l.text.default,foreground2:l.text.muted,foreground3:l.text.placeholder,foreground4:l.border.default,accent:r.toHslString(),accentLight:i.toHslString(),accentHover:s.toHslString(),accentDark:d.toHslString(),accentDarkest:u.toHslString(),foregroundAccent:h.toHslString(),success:l.background.success,successDark:l.text.success,successLight:l.background.success,error:l.text.error,errorLight:l.background.error,warn:l.background.warning,warnLight:l.background.warning,warningDark:l.text.warning,errorDark:l.text.error,successBg:l.background.success,errorBg:l.background.error,errorBgHover:l.background["error-hover"],warnBg:l.background.warning,infoBg:l.background.info,infoBgHover:l.background["info-hover"],borderDefault:l.border.default,borderHover:l.border["default-hover"],borderFocus:l.border.focused,borderError:l.border.error,borderSuccess:l.border.success,borderWarning:l.border.warning,borderInfo:l.border.info,borderInteractive:l.border.interactive,borderInteractiveHover:l.border["interactive-hover"],backgroundHover:l.background["default-hover"],backgroundClicked:l.background["default-clicked"],backgroundDisabled:l.background["default-disabled"],backgroundInteractive:l.background.interactive,backgroundInteractiveHover:l.background["interactive-hover"],backgroundInteractiveClicked:l.background["interactive-clicked"],backgroundInteractiveDisabled:l.background["interactive-disabled"],foregroundHover:l.text.default,foregroundClicked:l.text.default,foregroundDisabled:l.text["default-disabled"],foregroundInteractive:l.text.interactive,foregroundInteractiveHover:l.text["interactive-hover"],accentHasGoodContrast:f?"1":"0",linkNavigationColor:f?r.toHslString():l.text.default,linkNavigationDecoration:f?"none":"underline",iconDefault:l.icon.default,iconMuted:l.icon.muted,iconSubtle:l.icon.subtle,iconInverse:l.icon.inverse,iconSuccess:l.icon.success,iconWarning:l.icon.warning,iconError:l.icon.error,iconInteractive:l.icon.interactive,iconDefaultHover:l.icon["default-hover"],iconMutedHover:l.icon["muted-hover"],iconSubtleHover:l.icon["subtle-hover"],iconDefaultClicked:l.icon["default-clicked"],iconMutedClicked:l.icon["muted-clicked"],iconSubtleClicked:l.icon["subtle-clicked"],iconDefaultDisabled:l.icon["default-disabled"],iconMutedDisabled:l.icon["muted-disabled"],iconSubtleDisabled:l.icon["subtle-disabled"],iconErrorHover:l.icon["error-hover"],iconInteractiveHover:l.icon["interactive-hover"],iconErrorClicked:l.icon["error-clicked"],iconInteractiveClicked:l.icon["interactive-clicked"],iconMutedDisabledAlt:l.icon["muted-disabled"],iconSubtleDisabledAlt:l.icon["subtle-disabled"]}}const ee={background:{default:"#020713",elevated:"#1A2230","default-hover":"#101724","default-clicked":"#1A2230","default-disabled":"#020713",success:"#0E3E2D",warning:"#373827",error:"#2E0C18",interactive:"#8B86FF","error-hover":"#441821","interactive-hover":"#7B73E5","interactive-clicked":"#6560CC","interactive-disabled":"#141824",info:"#1F2937","info-hover":"#141824"},icon:{default:"#F8F8F8",muted:"#9BA2AE",subtle:"#7B8491",inverse:"#020713",success:"#88E3B5",warning:"#FDF27B",error:"#EF4444",interactive:"#88B6FF","default-hover":"#F8F8F8","muted-hover":"#AEB3BD","subtle-hover":"#8B939E","default-clicked":"#F8F8F8","muted-clicked":"#9097A5","subtle-clicked":"#78818E","default-disabled":"#404452","muted-disabled":"#404452","subtle-disabled":"#404452","error-hover":"#F05555","interactive-hover":"#7B73E5","error-clicked":"#EF4444","interactive-clicked":"#6560CC"},text:{default:"#F8F8F8",muted:"#9BA2AE",placeholder:"#7B8491",success:"#ACEECB",warning:"#FEF9A0",error:"#FCA5A5",interactive:"#A29EFF","default-disabled":"#404452","interactive-hover":"#8C88E5"},border:{default:"#1F2937",interactive:"#88B0FF",focused:"#F8F8FC",info:"#5B83D3",success:"#317056",warning:"#FBBF24",error:"#F87171","default-hover":"#34304A","interactive-hover":"#88B0FF"}},te={background:{default:"#FFFFFF",elevated:"#F1F2F9","default-hover":"#F8F9FC","default-clicked":"#F1F2F9","default-disabled":"#FFFFFF",success:"#DCFCE7",warning:"#FEF3C7",error:"#FEE2E2",interactive:"#5B4FFF","error-hover":"#FECACA","interactive-hover":"#4F46E5","interactive-clicked":"#4338CA","interactive-disabled":"#F1F2F9",info:"#E0E7FF","info-hover":"#EEF2FF"},icon:{default:"#110F2A",muted:"#64668B",subtle:"#9498B8",inverse:"#FFFFFF",success:"#33B287",warning:"#F59E0B",error:"#EF4444",interactive:"#564FFF","default-hover":"#1D1B35","muted-hover":"#64668B","subtle-hover":"#888AAE","default-clicked":"#060C23","muted-clicked":"#64668B","subtle-clicked":"#788804","default-disabled":"#CBCDE1","muted-disabled":"#CBCDE1","subtle-disabled":"#CBCDE1","error-hover":"#F06060","interactive-hover":"#4F46E5","error-clicked":"#DC3838","interactive-clicked":"#2BA482"},text:{default:"#040217",muted:"#64668B",placeholder:"#9498B8",success:"#135638",warning:"#906218",error:"#991B1B",interactive:"#5B4FFF","default-disabled":"#CBCDE1","interactive-hover":"#5B4FFF"},border:{default:"#E2E3F0",interactive:"#5B4FFF",focused:"#949DF9",info:"#F1F2F9",success:"#87D7B7",warning:"#FACD63",error:"#F69393","default-hover":"#E2E3F0","interactive-hover":"#5B4FFF"}};function ae(e,t,a,n,o){let l,c,d,u,g,h,f,p,_,b,m,v,w,k,y,F,C,M,A=a?console.warn:()=>{},E=[];if(t?.loginMethods)for(let e of(l=t.loginMethods.includes("email"),c=t.loginMethods.includes("sms"),u=t.loginMethods.includes("wallet"),g=t.loginMethods.includes("google"),h=t.loginMethods.includes("twitter"),f=t.loginMethods.includes("discord"),m=t.loginMethods.includes("spotify"),v=t.loginMethods.includes("instagram"),p=t.loginMethods.includes("tiktok"),_=t.loginMethods.includes("line"),b=t.loginMethods.includes("twitch"),k=t.loginMethods.includes("github"),w=t.loginMethods.includes("linkedin"),y=t.loginMethods.includes("apple"),F=t.loginMethods.includes("farcaster"),C=t.loginMethods.includes("telegram"),d=t.loginMethods.includes("passkey"),t.loginMethods))"string"==typeof e&&e.startsWith("privy:")&&E.push(e);else l=e.email_auth,c=e.sms_auth,u=e.wallet_auth||e.solana_wallet_auth,g=e.google_oauth,h=e.twitter_oauth,f=e.discord_oauth,k=e.github_oauth,m=e.spotify_oauth,v=e.instagram_oauth,p=e.tiktok_oauth,_=e.line_oauth,b=e.twitch_oauth,w=e.linkedin_oauth,y=e.apple_oauth,F=e.farcaster_auth,C=e.telegram_auth,d=e.passkey_auth,M=e.custom_jwt_auth;e.passkey_auth&&(d=!0),"undefined"!=typeof window&&"function"!=typeof window.PublicKeyCredential&&(d=!1);let x=[l,c].filter(Boolean),D=[g,h,f,k,m,v,p,_,b,w,y,F,C].filter(Boolean),B=[u].filter(Boolean),W=t?.loginMethods?.includes("passkey")??!1,L=e.passkeys_for_signup_enabled??!1,S=[d&&(L||W)].filter(Boolean),H=[M].filter(Boolean);if(x.length+D.length+B.length+S.length+H.length+E.length===0)throw Error("You must enable at least one login method");let I=void 0!==t?.appearance?.showWalletLoginFirst?t?.appearance?.showWalletLoginFirst:e.show_wallet_login_first;I&&0===B.length?(A("You should only enable `showWalletLoginFirst` when `wallet` logins are also enabled. `showWalletLoginFirst` has been set to false"),I=!1):I||D.length+x.length!==0||(A("You should only disable `showWalletLoginFirst` when `email`, `sms`, or social logins are also enabled. `showWalletLoginFirst` has been set to true"),I=!0);let O=t?.externalWallets?.walletConnect?.enabled??!0;t?.loginMethods&&t.loginMethodsAndOrder&&A("You should only configure one of `loginMethods` or `loginMethodsAndOrder`");let U=Y({input:t?.appearance?.walletList,overrides:t?.loginMethodsAndOrder});if((U.includes("wallet_connect_qr")||U.includes("wallet_connect"))&&U.includes("wallet_connect_qr_solana"))throw Error("wallet_connect_qr and wallet_connect_qr_solana cannot both be present in walletList due to WalletConnect session conflicts.");let P=(({input:e})=>{if(!e||!e.primary[0])return;let t=[e.primary[0]],a=[];for(let a of(e.primary.length>4&&console.warn("You should not specify greater than 4 login methods in `loginMethodsAndOrder.primary`"),e.primary.slice(1)))t.includes(a)?console.warn(`Duplicated login method: ${a}`):t.push(a);for(let n of e.overflow??[])t.includes(n)||a.includes(n)?console.warn(`Duplicated login method: ${n}`):a.push(n);return{primary:t,overflow:a}})({input:t?.loginMethodsAndOrder}),q=t?.intl?.defaultCountry??"US",{chains:j,defaultChain:R}=function({supportedChains:e,defaultChainFromConfig:t}){let a;if(e){if(0===e.length)throw Error("`supportedChains` must contain at least one chain");a=r(e)}else a=[...i];let n=e?a[0]:s,o=t??n;if(!a.find((e=>e.id===o.id)))throw Error("`defaultChain` must be included in `supportedChains`");return{chains:a,defaultChain:o}}({supportedChains:t?.supportedChains,defaultChainFromConfig:t?.defaultChain}),N=!!t?.defaultChain,$=t?.customAuth?.getCustomAccessToken&&!1!==t?.customAuth?.enabled,z=$?"all-users":e.embedded_wallet_config.ethereum.create_on_login,G=e.embedded_wallet_config.solana.create_on_login;e.solana_wallet_auth&&!t?.externalWallets?.solana?.connectors&&console.warn("App configuration has Solana wallet login enabled, but no Solana wallet connectors have been passed to Privy. Make sure to pass Solana connectors to the `config.externalWallets.solana.connectors` field of the `PrivyProvider`");let J=e.telegram_auth_config?{botId:e.telegram_auth_config.bot_id,botName:e.telegram_auth_config.bot_name,linkEnabled:e.telegram_auth_config.link_enabled,seamlessAuthEnabled:e.telegram_auth_config.seamless_auth_enabled}:void 0,K=e.funding_config?{methods:e.funding_config.methods,options:e.funding_config.options,defaultRecommendedAmount:e.funding_config.default_recommended_amount,defaultRecommendedCurrency:e.funding_config.default_recommended_currency,promptFundingOnWalletCreation:e.funding_config.prompt_funding_on_wallet_creation,crossChainBridgingEnabled:e.funding_config.cross_chain_bridging_enabled}:void 0,X=e.smart_wallet_config;return{id:e.id,appClientId:o,name:e.name,allowlistConfig:{errorTitle:e.allowlist_config.error_title,errorDetail:e.allowlist_config.error_detail,errorCtaText:e.allowlist_config.cta_text,errorCtaLink:e.allowlist_config.cta_link},legacyWalletUiConfig:e.legacy_wallet_ui_config,appearance:{logo:t?.appearance?.logo??e.logo_url??void 0,landingHeader:t?.appearance?.landingHeader??T.appearance.landingHeader,loginMessage:"string"==typeof t?.appearance?.loginMessage?t?.appearance?.loginMessage.slice(0,100):t?.appearance?.loginMessage,footerLogo:t?.appearance?.footerLogo,palette:Q({backgroundTheme:t?.appearance?.theme??T.appearance.theme,accentHex:t?.appearance?.accentColor??e.accent_color}),loginGroupPriority:I?"web3-first":"web2-first",hideDirectWeb2Inputs:!!t?.appearance?.hideDirectWeb2Inputs,walletList:U,walletChainType:t?.appearance?.walletChainType??(({evmWalletAuth:e,solanaWalletAuth:t})=>e&&t?"ethereum-and-solana":e?"ethereum-only":t?"solana-only":"ethereum-only")({evmWalletAuth:e.wallet_auth??!1,solanaWalletAuth:e.solana_wallet_auth??!1})},loginMethods:{wallet:u,email:l,sms:c,passkey:d,google:g,twitter:h,discord:f,github:k,spotify:m,instagram:v,tiktok:p,line:_,twitch:b,linkedin:w,apple:y,farcaster:F,telegram:C},globalDisablePasskeys:t?.globalDisablePasskeys??!1,customOAuthProviders:(e.custom_oauth_providers??[]).filter((e=>!1!==e.enabled)),crossAppProviders:E,disablePlusEmails:e.disable_plus_emails,loginMethodsAndOrder:P,legal:{termsAndConditionsUrl:t?.legal?.termsAndConditionsUrl??e.terms_and_conditions_url,privacyPolicyUrl:t?.legal?.privacyPolicyUrl??e.privacy_policy_url,requireUsersAcceptTerms:e.require_users_accept_terms??!1},walletConnectCloudProjectId:t?.walletConnectCloudProjectId??e.wallet_connect_cloud_project_id??T.walletConnectCloudProjectId,rpcConfig:{rpcUrls:{},rpcTimeouts:t?.externalWallets?.signatureRequestTimeouts??{}},chains:j,defaultChain:R,intl:{defaultCountry:q,textLocalization:t?.intl?.textLocalization},shouldEnforceDefaultChainOnConnect:N,captcha:{enabledProvider:e.enabled_captcha_provider??null,siteKey:e.captcha_site_key},externalWallets:{coinbaseWallet:{config:{appName:e.name,appLogoUrl:e.logo_url,preference:{options:"all",...t?.externalWallets?.coinbaseWallet?.config?.preference},...t?.externalWallets?.coinbaseWallet?.config}},baseAccount:{config:{appName:e.name,appLogoUrl:e.logo_url,...t?.externalWallets?.baseAccount?.config,preference:{...t?.externalWallets?.baseAccount?.config?.preference,telemetry:!1}}},walletConnect:{enabled:O},solana:{connectors:t?.externalWallets?.solana?.connectors},disableAllExternalWallets:t?.externalWallets?.disableAllExternalWallets??!1},embeddedWallets:{requireUserOwnedRecoveryOnCreate:!$&&(e.embedded_wallet_config.require_user_owned_recovery_on_create??!1),userOwnedRecoveryOptions:$?["user-passcode"]:e.embedded_wallet_config.user_owned_recovery_options,priceDisplay:t?.embeddedWallets?.priceDisplay??{primary:"fiat-currency",secondary:"native-token"},ethereum:{createOnLogin:t?.embeddedWallets?.ethereum?.createOnLogin??z},solana:{createOnLogin:t?.embeddedWallets?.solana?.createOnLogin??G},disableAutomaticMigration:t?.embeddedWallets?.disableAutomaticMigration??!1,mode:e.embedded_wallet_config.mode,showWalletUIs:t?.embeddedWallets?.showWalletUIs??e.enforce_wallet_uis??!0,extendedCalldataDecoding:t?.embeddedWallets?.extendedCalldataDecoding??!1,transactionScanning:{enabled:t?.embeddedWallets?.transactionScanning?.enabled??!1,domain:t?.embeddedWallets?.transactionScanning?.domain??n??"https://auth.privy.io"}},mfa:{methods:e.mfa_methods??[],noPromptOnMfaRequired:t?.mfa?.noPromptOnMfaRequired??!1},passkeys:{shouldUnlinkOnUnenrollMfa:t?.passkeys?.shouldUnlinkOnUnenrollMfa,shouldUnenrollMfaOnUnlink:t?.passkeys?.shouldUnenrollMfaOnUnlink,registration:t?.passkeys?.registration},customAuth:$?{enabled:!0,...t.customAuth}:void 0,loginConfig:{telegramAuthConfiguration:J,passkeysForSignupEnabled:e.passkeys_for_signup_enabled},headless:!!t?.headless,render:{standalone:t?._render?.standalone??T._render.standalone},fundingConfig:K,fundingMethodConfig:{...t?.fundingMethodConfig??T.fundingMethodConfig,moonpay:{...t?.fundingMethodConfig?.moonpay??T.fundingMethodConfig.moonpay,useSandbox:t?.fundingMethodConfig?.moonpay.useSandbox??T.fundingMethodConfig.moonpay.useSandbox}},whatsAppEnabled:!!e.whatsapp_enabled,customOAuthRedirectUrl:t?.customOAuthRedirectUrl,allowOAuthInEmbeddedBrowsers:t?.allowOAuthInEmbeddedBrowsers??!1,solanaRpcs:{"solana:mainnet":t?.solana?.rpcs?.["solana:mainnet"]??null,"solana:devnet":t?.solana?.rpcs?.["solana:devnet"]??null,"solana:testnet":t?.solana?.rpcs?.["solana:testnet"]??null},smartWallets:X?.enabled?{enabled:X.enabled,smartWalletVersion:X.smart_wallet_version,smartWalletType:X.smart_wallet_type,configuredNetworks:X.configured_networks.map((e=>({chainId:e.chain_id,bundlerUrl:e.bundler_url,paymasterUrl:e.paymaster_url,paymasterContext:V(e.paymaster_url,e.paymaster_context)})))}:{enabled:X?.enabled??!1},connectorsDebugLogs:t?.connectorsDebugLogs??!1}}const ne={show_wallet_login_first:!0,allowlist_config:{error_title:null,error_detail:null,cta_text:null,cta_link:null},wallet_auth:!0,email_auth:!0,sms_auth:!1,google_oauth:!1,twitter_oauth:!1,discord_oauth:!1,github_oauth:!1,linkedin_oauth:!1,apple_oauth:!1,disable_plus_emails:!1,terms_and_conditions_url:null,privacy_policy_url:null,embedded_wallet_config:{create_on_login:"off",ethereum:{create_on_login:"off"},solana:{create_on_login:"off"},require_user_owned_recovery_on_create:!1,user_owned_recovery_options:["user-passcode"],mode:"user-controlled-server-wallets-only"},captcha_site_key:"",enforce_wallet_uis:!1,legacy_wallet_ui_config:!1,id:"",name:"",passkeys_for_signup_enabled:!1,whatsapp_enabled:!1};let oe=/*#__PURE__*/o({appConfig:ae(ne,void 0,!1),isServerConfigLoaded:!1});const le=({children:o,client:l,legacyClient:r,clientConfig:i,appClientId:s})=>{let[c,d]=t(null),u=a((()=>ae(c??ne,i,!!c,"undefined"!=typeof window?window.location.origin:void 0,s)),[c,i,s]);return n((()=>{if(!c)return;let e=function(e){if(!e)return{};let{appearance:t,supportedChains:a,defaultChain:n,externalWallets:o,...l}=e;return{...l,...a?{supportedChains:a.map((e=>e.id))}:void 0,...n?{defaultChain:n.id}:void 0,...o?{walletConnect:o.walletConnect?{enabled:o.walletConnect.enabled}:void 0,coinbaseWallet:o.coinbaseWallet,solana:{connectors:o.solana?.connectors?.get().map((e=>e.walletClientType))}}:void 0}}(i),t=function(e,t=0){let a=3735928559^t,n=1103547991^t;for(let t,o=0;o<e.length;o++)a=Math.imul(a^(t=e.charCodeAt(o)),2654435761),n=Math.imul(n^t,1597334677);return a=Math.imul(a^a>>>16,2246822507)^Math.imul(n^n>>>13,3266489909),4294967296*(2097151&(n=Math.imul(n^n>>>16,2246822507)^Math.imul(a^a>>>13,3266489909)))+(a>>>0)}(JSON.stringify(e)).toString(),a=`privy:sent:${c.id}:${t}`;localStorage.getItem(a)||(r.createAnalyticsEvent({eventName:"sdk_initialize",payload:e}),localStorage.setItem(a,"t"))}),[i,c]),n((()=>{c||(async()=>{try{await l.initialize();let e=l.app.getConfig();e.custom_api_url&&r.updateApiUrl(e.custom_api_url),d(e)}catch(e){console.warn("Error generating app config: ",e)}})()}),[]),/*#__PURE__*/e(oe.Provider,{value:{appConfig:u,isServerConfigLoaded:!!c},children:o})},re=()=>{let{appConfig:e}=l(oe);return e},ie=()=>{let{isServerConfigLoaded:e}=l(oe);return e};export{x as C,R as D,D as H,k as I,P as M,B as O,w as P,m as R,E as S,p as V,O as W,_ as a,A as b,F as c,b as d,v as e,y as f,M as g,d as h,u as i,C as j,L as k,ie as l,le as m,S as n,W as o,I as p,g as q,h as r,H as s,f as t,re as u,U as v,j as w,q as x};
@@ -1 +1 @@
1
- import{formatEther as r}from"viem";import{u as e}from"./internal-context-Z-fyxadS.mjs";import{F as t}from"./use-export-wallet-_wu5ex5t.mjs";let a=new Intl.NumberFormat(void 0,{style:"currency",currency:"USD",maximumFractionDigits:2}),s=r=>a.format(r);const n=(r,e)=>{let t=s(e*parseFloat(r));return"$0.00"!==t?t:"<$0.01"},o=(e,t)=>{let a=s(t*parseFloat(r(e)));return"$0.00"===a?"<$0.01":a},c=(r,e,t=6,a=!1)=>`${l(r,t,a)} ${e}`,l=(e,t=6,a=!1)=>{let s=parseFloat(r(e)).toFixed(t).replace(/0+$/,"").replace(/\.$/,"");return a?s:`${"0"===s?"<0.001":s}`},m=r=>r.reduce(((r,e)=>r+e),0n),i=(r,a)=>{let{chains:s}=e(),n=`https://etherscan.io/address/${a}`,o=`${t(r,s)}/address/${a}`;if(!o)return n;try{new URL(o)}catch{return n}return o};export{o as a,i as b,n as c,c as g,l as p,m as s};
1
+ import{formatEther as r}from"viem";import{u as e}from"./internal-context-C4ZqP8IF.mjs";import{F as t}from"./use-export-wallet-Db8GdSAT.mjs";let a=new Intl.NumberFormat(void 0,{style:"currency",currency:"USD",maximumFractionDigits:2}),s=r=>a.format(r);const n=(r,e)=>{let t=s(e*parseFloat(r));return"$0.00"!==t?t:"<$0.01"},o=(e,t)=>{let a=s(t*parseFloat(r(e)));return"$0.00"===a?"<$0.01":a},c=(r,e,t=6,a=!1)=>`${l(r,t,a)} ${e}`,l=(e,t=6,a=!1)=>{let s=parseFloat(r(e)).toFixed(t).replace(/0+$/,"").replace(/\.$/,"");return a?s:`${"0"===s?"<0.001":s}`},m=r=>r.reduce(((r,e)=>r+e),0n),i=(r,a)=>{let{chains:s}=e(),n=`https://etherscan.io/address/${a}`,o=`${t(r,s)}/address/${a}`;if(!o)return n;try{new URL(o)}catch{return n}return o};export{o as a,i as b,n as c,c as g,l as p,m as s};
@@ -1 +1 @@
1
- import{useMemo as e}from"react";import{create as t,rawSign as r}from"@privy-io/js-sdk-core";import{u as a,a as i}from"./internal-context-Z-fyxadS.mjs";import{u as s,a as n,j as o,b as d,m as l}from"./privy-context-DrMxzgOR.mjs";import{u as c}from"./context-DLtU3JQy.mjs";import{u as p}from"./use-sign-with-user-signer-Do5Oi_rb.mjs";import"ofetch";import"@privy-io/are-addresses-equal";import"react/jsx-runtime";import"tinycolor2";const u=()=>{let{refreshSessionAndUser:r,privy:i}=a();return e((()=>({async createWallet(e){let a=await t(i,{request:{chain_type:e.chainType}}),s=await r();if(!s)throw Error("User must be authenticated before creating a Privy wallet");return{user:s,wallet:a}}})),[r,i])};function m(){let{user:t,getAccessToken:r}=s(),{walletProxy:l,openModal:p,client:u}=a(),{setModalData:m}=n(),h=c();return e((()=>({exportWallet:e=>new Promise((async(a,s)=>{if(!t)return void s(new i("User must be authenticated before exporting their Privy wallet"));let n=o(t,e.address);n?d(n)?await r()?l?(m({connectWallet:{recoveryMethod:n.recoveryMethod,connectingWalletAddress:n.address,isUnifiedWallet:!0,onCompleteNavigateTo:"EmbeddedWalletKeyExportScreen",onFailure:s,shouldForceMFA:!0},keyExport:{appId:h.id,appClientId:h.appClientId,origin:u.apiUrl,address:n.address,hdWalletIndex:n.walletIndex,chainType:n.chainType,walletId:n.id,isUnifiedWallet:!0,imported:n.imported,onSuccess:a,onFailure:s}}),p("EmbeddedWalletConnectingScreen")):s(new i("Wallet not ready for export")):s(new i("Must have valid access token.")):s(Error("Export via extended-chains is only supported for unified stack wallets")):s(new i("User must have an embedded wallet."))}))})),[t,r,l,p,u,m,h])}const h=()=>{let{user:t}=s(),{privy:i}=a(),{signWithUserSigner:n}=p();return e((()=>({async signRawHash({address:e,chainType:a,hash:s}){if(!t)throw Error("User must be authenticated before signing");let o=l(t,a).filter((e=>d(e))).find((t=>t.address===e));if(!o)throw Error("Wallet not found");let c=await r(i,n,{wallet_id:o.id,params:{hash:s}});if(c.data&&"signature"in c.data&&"hex"===c.data.encoding)return{signature:c.data.signature};throw Error("Failed to sign")}})),[i,n,t])};export{u as useCreateWallet,m as useExportWallet,h as useSignRawHash};
1
+ import{useMemo as e}from"react";import{create as t,rawSign as r}from"@privy-io/js-sdk-core";import{u as a,b as i}from"./internal-context-C4ZqP8IF.mjs";import{u as s,a as n,j as o,b as d,l}from"./privy-context-CkPtrpbt.mjs";import{u as c}from"./context-aGvo4MVQ.mjs";import{u as p}from"./use-sign-with-user-signer-BYctG7hm.mjs";import"ofetch";import"@privy-io/are-addresses-equal";import"react/jsx-runtime";import"tinycolor2";const u=()=>{let{refreshSessionAndUser:r,privy:i}=a();return e((()=>({async createWallet(e){let a=await t(i,{request:{chain_type:e.chainType}}),s=await r();if(!s)throw Error("User must be authenticated before creating a Privy wallet");return{user:s,wallet:a}}})),[r,i])};function m(){let{user:t,getAccessToken:r}=s(),{walletProxy:l,openModal:p,client:u}=a(),{setModalData:m}=n(),h=c();return e((()=>({exportWallet:e=>new Promise((async(a,s)=>{if(!t)return void s(new i("User must be authenticated before exporting their Privy wallet"));let n=o(t,e.address);n?d(n)?await r()?l?(m({connectWallet:{recoveryMethod:n.recoveryMethod,connectingWalletAddress:n.address,isUnifiedWallet:!0,onCompleteNavigateTo:"EmbeddedWalletKeyExportScreen",onFailure:s,shouldForceMFA:!0},keyExport:{appId:h.id,appClientId:h.appClientId,origin:u.apiUrl,address:n.address,hdWalletIndex:n.walletIndex,chainType:n.chainType,walletId:n.id,isUnifiedWallet:!0,imported:n.imported,onSuccess:a,onFailure:s}}),p("EmbeddedWalletConnectingScreen")):s(new i("Wallet not ready for export")):s(new i("Must have valid access token.")):s(Error("Export via extended-chains is only supported for unified stack wallets")):s(new i("User must have an embedded wallet."))}))})),[t,r,l,p,u,m,h])}const h=()=>{let{user:t}=s(),{privy:i}=a(),{signWithUserSigner:n}=p();return e((()=>({async signRawHash({address:e,chainType:a,hash:s}){if(!t)throw Error("User must be authenticated before signing");let o=l(t,a).filter((e=>d(e))).find((t=>t.address===e));if(!o)throw Error("Wallet not found");let c=await r(i,n,{wallet_id:o.id,params:{hash:s}});if(c.data&&"signature"in c.data&&"hex"===c.data.encoding)return{signature:c.data.signature};throw Error("Failed to sign")}})),[i,n,t])};export{u as useCreateWallet,m as useExportWallet,h as useSignRawHash};
@@ -1 +1 @@
1
- import{useCallback as t}from"react";import{F as i}from"./frame-uzTmvtww.mjs";import{u as e,a as r}from"./internal-context-Z-fyxadS.mjs";import"./paths-3HW55qZg.mjs";import"ofetch";const a=()=>{let{client:a,setAuthenticated:n,setUser:s}=e();return{initLoginToMiniApp:t((async()=>{let t=new i;if(!a)throw new r("Must initialize Privy client first.");return a.startAuthFlow(t),await t.init()}),[a]),loginToMiniApp:t((async({message:t,signature:e})=>{if(!a)throw new r("Must initialize Privy client first.");if(!(a.authFlow instanceof i))throw new r("Must initialize Farcaster Mini App flow first.");let o=(t=>{let i=t.match(/farcaster:\/\/fid\/(\d+)/);return i&&i[1]?parseInt(i[1],10):null})(t);if(!o)throw new r("Invalid message format; could not parse Farcaster ID.");a.authFlow.setAuthData({message:t,signature:e,fid:o});let{user:l}=await a.authenticate();return l&&(s(l),n(!0)),l}),[a,s,n])}};export{a as useLoginToMiniApp};
1
+ import{useCallback as t}from"react";import{F as i}from"./frame-CjhCpycO.mjs";import{u as e,b as r}from"./internal-context-C4ZqP8IF.mjs";import"./paths-BzM95ysC.mjs";import"ofetch";const a=()=>{let{client:a,setAuthenticated:n,setUser:s}=e();return{initLoginToMiniApp:t((async()=>{let t=new i;if(!a)throw new r("Must initialize Privy client first.");return a.startAuthFlow(t),await t.init()}),[a]),loginToMiniApp:t((async({message:t,signature:e})=>{if(!a)throw new r("Must initialize Privy client first.");if(!(a.authFlow instanceof i))throw new r("Must initialize Farcaster Mini App flow first.");let o=(t=>{let i=t.match(/farcaster:\/\/fid\/(\d+)/);return i&&i[1]?parseInt(i[1],10):null})(t);if(!o)throw new r("Invalid message format; could not parse Farcaster ID.");a.authFlow.setAuthData({message:t,signature:e,fid:o});let{user:l}=await a.authenticate();return l&&(s(l),n(!0)),l}),[a,s,n])}};export{a as useLoginToMiniApp};
@@ -1 +1 @@
1
- import{a as t,f as s}from"./internal-context-Z-fyxadS.mjs";import{a5 as i,a6 as a}from"./paths-3HW55qZg.mjs";class e{async init(){if(!this.api)throw new t("Auth flow has no API instance");let{nonce:s,expires_at:a}=await this.api.post(i,{});return{nonce:s,expiresAt:a}}async authenticate(){if(!this.message||!this.signature||!this.fid)throw new t("Auth flow has no message, signature, or fid");if(!this.api)throw new t("Auth flow has no API instance");try{let s=await this.api.post(a,{message:this.message,signature:this.signature,fid:this.fid});if(!s)throw new t("No response from authentication");return s}catch(t){throw s(t)}}async link(){throw Error("Not implemented")}setAuthData({message:t,signature:s,fid:i}){this.message=t,this.signature=s,this.fid=i}constructor(){this.meta={}}}export{e as F};
1
+ import{b as t,f as s}from"./internal-context-C4ZqP8IF.mjs";import{a5 as i,a6 as a}from"./paths-BzM95ysC.mjs";class e{async init(){if(!this.api)throw new t("Auth flow has no API instance");let{nonce:s,expires_at:a}=await this.api.post(i,{});return{nonce:s,expiresAt:a}}async authenticate(){if(!this.message||!this.signature||!this.fid)throw new t("Auth flow has no message, signature, or fid");if(!this.api)throw new t("Auth flow has no API instance");try{let s=await this.api.post(a,{message:this.message,signature:this.signature,fid:this.fid});if(!s)throw new t("No response from authentication");return s}catch(t){throw s(t)}}async link(){throw Error("Not implemented")}setAuthData({message:t,signature:s,fid:i}){this.message=t,this.signature=s,this.fid=i}constructor(){this.meta={}}}export{e as F};
@@ -0,0 +1 @@
1
+ import{createPublicClient as e,http as r}from"viem";import{P as t,b as a,u as s}from"./internal-context-C4ZqP8IF.mjs";import{createContext as i,useContext as n,useMemo as l}from"react";import{create as o}from"zustand";import{g as d}from"./privy-context-CkPtrpbt.mjs";const p=(a,s,i,n)=>{let l=Number(a),o=s.find((e=>e.id===l));if(!o)throw new t(`Unsupported chainId ${a}`,4901);return e({transport:r(c(o,i,n.appId)),chain:o})},c=(e,r,a)=>{let s,i=e.id,n=Number(e.id);if(e.rpcUrls.privyWalletOverride&&e.rpcUrls.privyWalletOverride.http[0])s=e.rpcUrls.privyWalletOverride.http[0];else if(r.rpcUrls&&r.rpcUrls[n])s=r.rpcUrls[n];else if(e.rpcUrls.privy?.http[0]){let r=new URL(e.rpcUrls.privy.http[0]);r.searchParams.append("privyAppId",a),s=r.toString()}else s=e.rpcUrls.public?.http[0]?e.rpcUrls.public.http[0]:e.rpcUrls.default?.http[0];if(!s)throw new t(`No RPC url found for ${i}`);return s},u=(e,{chainType:r,walletIndex:t}={})=>e?.linkedAccounts.filter((e=>!("wallet"!==e.type||"privy"!==e.walletClientType||void 0!==t&&e.walletIndex!==t||void 0!==r&&e.chainType!==r)))??[],h=o((()=>({user:null,authenticated:!1,hasResolvedInitialUser:!1}))),y=e=>h.setState({user:e}),m=e=>h.setState({authenticated:e}),f=e=>h.setState({hasResolvedInitialUser:e}),v=o((()=>({ethereumExternal:[],areExternalConnectorsReady:!1,ethereumEmbedded:[]}))),w=e=>v.setState({areExternalConnectorsReady:e}),U=/*#__PURE__*/i(!1),I=()=>{if(n(U))throw new a("Multiple PrivyProvider instances found","Found multiple instances of PrivyProvider, ensure there is only one mounted in your application tree.")};function x(){let e=n(U),r=s(),t=v((e=>e.ethereumEmbedded)),a=v((e=>e.ethereumExternal)),i=v((e=>e.areExternalConnectorsReady)),o=h((e=>e.user)),d=h((e=>e.hasResolvedInitialUser)),p=l((()=>[...t,...a].sort(((e,r)=>r.connectedAt-e.connectedAt))),[t,a]),c=u(o,{chainType:"ethereum"}).length>0,y=t.length>0,m=!!i&&!!d&&!!r.walletProxy&&(!c||y);return e?l((()=>({wallets:p,ready:m})),[p,m]):(console.warn("`useWallets` was called outside the PrivyProvider component"),{wallets:[],ready:!1})}const P=e=>{if("ethereum"===e.chainType)return{entropyId:e.address,entropyIdVerifier:"ethereum-address-verifier"};if("solana"===e.chainType)return{entropyId:e.address,entropyIdVerifier:"solana-address-verifier"};throw Error("Failed to get account entropy details")},E=(e,r)=>{if(r?.imported)return P(r);let t=d(e);if(!t)throw Error("Failed to find primary wallet");return P(t)};export{U as P,v as a,E as b,h as c,y as d,w as e,f,p as g,I as h,c as i,u as j,m as s,P as t,x as u};
@@ -0,0 +1 @@
1
+ import{createPublicClient as a,http as t}from"viem";import{i as e}from"./get-entropy-details-for-user-DkZdXKpr.mjs";const n=async({chain:n,address:s,appId:c,rpcConfig:i,erc20Address:o})=>{let p=a({chain:n,transport:t(e(n,i,c))});return{balance:await p.readContract({address:o,abi:r,functionName:"balanceOf",args:[s]}).catch((()=>0n)),chain:n}};let r=[{constant:!0,inputs:[{name:"_owner",type:"address"}],name:"balanceOf",outputs:[{name:"balance",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"}];export{n as g};
@@ -0,0 +1 @@
1
+ import{createPublicClient as t,http as e}from"viem";import{i as a}from"./get-entropy-details-for-user-DkZdXKpr.mjs";const n=async({address:n,chain:s,rpcConfig:r,privyAppId:o})=>{try{let l=t({chain:s,transport:e(a(s,r,o))}),[m,p]=await Promise.all([l.readContract({abi:i,address:n,functionName:"symbol"}),l.readContract({abi:i,address:n,functionName:"decimals"})]);return{decimals:p,symbol:m}}catch(t){return console.log(t),null}};let i=[{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"}];export{n as g};