@privy-io/react-auth 3.11.1-beta-20260122161812 → 3.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (416) hide show
  1. package/dist/cjs/AccountNotFoundScreen-BBWWze9O.js +1 -0
  2. package/dist/cjs/{Address-BJFF-dMG.js → Address-6qDWL5TN.js} +4 -4
  3. package/dist/cjs/AffirmativeConsentScreen-CCwAwjH1.js +6 -0
  4. package/dist/cjs/AllowlistRejectionScreen-DEMYbzGA.js +1 -0
  5. package/dist/cjs/AuthenticateWithWalletScreen-dBvBC7MB.js +1 -0
  6. package/dist/cjs/AwaitingEvmToSolBridgingScreen-D9NwI47L.js +2 -0
  7. package/dist/cjs/AwaitingExternalEthereumTransferScreen-D_0NulpI.js +2 -0
  8. package/dist/cjs/AwaitingPasswordlessCodeScreen-B4HAKL4-.js +103 -0
  9. package/dist/cjs/AwaitingSolToEvmBridgingScreen-CnuLLTC0.js +2 -0
  10. package/dist/cjs/{BridgeNetworkSelectionView-BNv-V9G2.js → BridgeNetworkSelectionView-DKA06V8u.js} +11 -11
  11. package/dist/cjs/CaptchaScreen-N-ueJQF3.js +1 -0
  12. package/dist/cjs/CoinbaseOnrampStatusScreen-06yaO6r4.js +16 -0
  13. package/dist/cjs/ConnectEmailForm-DZrCSv9t.js +3 -0
  14. package/dist/cjs/ConnectLedgerScreen-C7vGQocf.js +9 -0
  15. package/dist/cjs/ConnectOnlyLandingScreen-_9y9kOsT.js +1 -0
  16. package/dist/cjs/ConnectOnlyStatusScreen-mZHx4a7S.js +1 -0
  17. package/dist/cjs/ConnectOrCreateScreen-Cp4uExOd.js +1 -0
  18. package/dist/cjs/{ConnectPhoneForm-C8JEoPHB.js → ConnectPhoneForm-BWSmRonl.js} +1 -1
  19. package/dist/cjs/{ConnectWalletView-bug4GgVZ.js → ConnectWalletView-Bh1DK9t5.js} +6 -6
  20. package/dist/cjs/ConnectionStatusScreen-B27DUsGt.js +7 -0
  21. package/dist/cjs/CrossAppAuthScreen-BbLFbCdU.js +1 -0
  22. package/dist/cjs/CustomLandingScreenView-DP1fJrBU.js +23 -0
  23. package/dist/cjs/DelegatedActionsConsentScreen-DzWruJOn.js +1 -0
  24. package/dist/cjs/DelegatedActionsRevokeScreen-D-TwUXyj.js +1 -0
  25. package/dist/cjs/EmbeddedWalletConnectingScreen-CYav4Mjb.js +1 -0
  26. package/dist/cjs/EmbeddedWalletCreatedScreen-m0t_c_AA.js +1 -0
  27. package/dist/cjs/EmbeddedWalletKeyExportScreen-_4GMdJuo.js +40 -0
  28. package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-B5-JBZRJ.js +1 -0
  29. package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-CITAy3i6.js +1 -0
  30. package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-DG5LKyjo.js +1 -0
  31. package/dist/cjs/{EnrollTotp-BpzRLjKc.js → EnrollTotp-leOB_B4o.js} +8 -8
  32. package/dist/cjs/ErrorScreen-xNDIVXx8.js +4 -0
  33. package/dist/cjs/{FarcasterConnectStatusScreen-DuOFuio7.js → FarcasterConnectStatusScreen-Bzmd4izn.js} +9 -9
  34. package/dist/cjs/FarcasterSignerStatusScreen-Cxoi54pp.js +29 -0
  35. package/dist/cjs/FundSolWalletWithExternalSolanaWallet-BCyBv_xe.js +2 -0
  36. package/dist/cjs/{FundWalletMethodHeader-Dn7FrcOp.js → FundWalletMethodHeader-YwNCXAU_.js} +1 -1
  37. package/dist/cjs/FundingEditAmountScreen-CDlb4Acx.js +1 -0
  38. package/dist/cjs/FundingMethodSelectionScreen-DlPxjsJq.js +1 -0
  39. package/dist/cjs/InAppBrowserLoginNotPossible-Bdx0vKyA.js +1 -0
  40. package/dist/cjs/InstallWalletScreen-Cshn01eK.js +1 -0
  41. package/dist/cjs/LandingScreen-0FdwpJ9w.js +1 -0
  42. package/dist/cjs/{LinkConflictScreen-8h7pmzsL.js → LinkConflictScreen-BCzS7Szr.js} +7 -7
  43. package/dist/cjs/LinkEmailScreen-B7rxdQso.js +1 -0
  44. package/dist/cjs/{LinkPasskeyScreen-cUu7WCqn.js → LinkPasskeyScreen-o4qdrAL3.js} +10 -10
  45. package/dist/cjs/LinkPhoneScreen-DweFqlM1.js +1 -0
  46. package/dist/cjs/LoginFailedScreen-mHcvCBEz.js +1 -0
  47. package/dist/cjs/ManualTransferScreen-CfYgtyLD.js +1 -0
  48. package/dist/cjs/MfaAuthEnrollmentFlowScreen-D631h0XW.js +1 -0
  49. package/dist/cjs/MfaAuthVerifyFlowScreen-BZ3IyqAd.js +1 -0
  50. package/dist/cjs/MfaEnrollmentFlowScreen-_tNeX5lT.js +1 -0
  51. package/dist/cjs/MfaVerifyFlowScreen-D_7nkuBq.js +1 -0
  52. package/dist/cjs/{ModalHeader-7knkCFjH.js → ModalHeader-C5O9gNUP.js} +1 -1
  53. package/dist/cjs/{MoonpayStatusScreen-BWA_sZnz.js → MoonpayStatusScreen-DoFbZ_0d.js} +3 -3
  54. package/dist/cjs/OAuthStatusScreen-BZY7BiP5.js +1 -0
  55. package/dist/cjs/PasskeySelectSignupOrLogin-C3k_ixTz.js +1 -0
  56. package/dist/cjs/PasskeyStatusScreen-BX-SOBDr.js +3 -0
  57. package/dist/cjs/PasswordRecoveryScreen-VZQDtt5v.js +20 -0
  58. package/dist/cjs/{QrCode-DPcePk5I.js → QrCode-CLd3Ytk7.js} +3 -3
  59. package/dist/cjs/RecoveryOAuthStatusScreen-DKYx6ECd.js +1 -0
  60. package/dist/cjs/RecoveryPasswordCreateScreen-DP0xOBMA.js +1 -0
  61. package/dist/cjs/RecoverySelectionScreen-Bw9_M6y0.js +7 -0
  62. package/dist/cjs/{Screen-uapp8UP4.js → Screen-BSwlHqPg.js} +4 -4
  63. package/dist/cjs/{ScreenLayout-BENEZm1m.js → ScreenLayout-BtVIYAso.js} +1 -1
  64. package/dist/cjs/SetAutomaticRecoveryScreen-SUOUjBk4.js +14 -0
  65. package/dist/cjs/{SetWalletPasswordForm-NMSn8MW-.js → SetWalletPasswordForm-Gkq-DskE.js} +3 -3
  66. package/dist/cjs/SignRequestScreen-BNcy6yU_.js +26 -0
  67. package/dist/cjs/{StandardSignAndSendTransactionScreen-C0Af9uPz.js → StandardSignAndSendTransactionScreen-z_EUNaeD.js} +3 -3
  68. package/dist/cjs/TelegramAuthScreen-DV8KYJMX.js +1 -0
  69. package/dist/cjs/{TransactionDetails-BCQvuSov.js → TransactionDetails-DYow9ihU.js} +4 -4
  70. package/dist/cjs/{TransactionErrorView-DhdW4Ka8.js → TransactionErrorView-yUMJqqF2.js} +4 -4
  71. package/dist/cjs/TransferFromWalletScreen-Duk7CEcq.js +31 -0
  72. package/dist/cjs/TransferOrBridgeLoadingScreen-DuBLyfE1.js +6 -0
  73. package/dist/cjs/UpdateEmailScreen-DRJv5CZs.js +1 -0
  74. package/dist/cjs/UpdatePhoneScreen-C3myqOv0.js +1 -0
  75. package/dist/cjs/UserLimitReachedScreen-l_e6Vhr0.js +1 -0
  76. package/dist/cjs/{WalletInfoCard-DLnujds6.js → WalletInfoCard-CHEynRZS.js} +4 -4
  77. package/dist/cjs/{WalletInterstitialScreen-CMMSgAk9.js → WalletInterstitialScreen-BgoDwKIp.js} +1 -1
  78. package/dist/cjs/WalletLink-CZLtiI7E.js +22 -0
  79. package/dist/cjs/WalletOverflowButton-FlgoA77a.js +1 -0
  80. package/dist/cjs/abstract-smart-wallets.js +1 -1
  81. package/dist/cjs/{context-P14IM76D.js → context-BeSQM-Ma.js} +1 -1
  82. package/dist/cjs/ethers-XrYC9HG-.js +1 -0
  83. package/dist/cjs/extended-chains.js +1 -1
  84. package/dist/cjs/farcaster.js +1 -1
  85. package/dist/cjs/frame-Oz7volks.js +1 -0
  86. package/dist/cjs/{get-is-unified-wallet-DL_nMXp5.js → get-is-unified-wallet-BwdzQwn_.js} +1 -1
  87. package/dist/cjs/getErc20Balance-CN3JMVjF.js +1 -0
  88. package/dist/cjs/getErc20TokenInfo-DxDd_HN6.js +1 -0
  89. package/dist/cjs/getPublicClient-BsmZyCGX.js +1 -0
  90. package/dist/cjs/index-0-2WrPDo.js +12 -0
  91. package/dist/cjs/index-CzmnSRoa.js +174 -0
  92. package/dist/cjs/{index-BypMyGGH.js → index-W2ZSukRW.js} +1 -1
  93. package/dist/cjs/index.js +1 -1
  94. package/dist/cjs/{internal-context-NWsAL807.js → internal-context-BJv4f_bO.js} +1 -1
  95. package/dist/cjs/internal.js +1 -1
  96. package/dist/cjs/prepareFundingModalData-DDf6xLze.js +1 -0
  97. package/dist/cjs/{reservoir-CQGyEBb7.js → reservoir-Bx0HQwbb.js} +1 -1
  98. package/dist/cjs/{shared-CoZLntA9.js → shared-BcueHfN-.js} +6 -6
  99. package/dist/cjs/shouldProceedtoEmbeddedWalletCreationFlow-j6p9PEm-.js +1 -0
  100. package/dist/cjs/smart-wallets-BBh3vgRq.js +1 -0
  101. package/dist/cjs/smart-wallets.js +1 -1
  102. package/dist/cjs/solana.js +1 -1
  103. package/dist/cjs/{styles-DtykMHfN.js → styles-Csarwypj.js} +1 -1
  104. package/dist/cjs/to-ui-error-C4aac_aM.js +4 -0
  105. package/dist/cjs/ui.js +37 -37
  106. package/dist/cjs/use-export-wallet-C9HWu0Dq.js +1 -0
  107. package/dist/cjs/{use-sign-with-user-signer-BcAsQTGF.js → use-sign-with-user-signer-Cu_6Bx7m.js} +1 -1
  108. package/dist/cjs/useActiveWallet-vlXeDPzp.js +185 -0
  109. package/dist/cjs/{useGetSolPrice-C986iVoO.js → useGetSolPrice-Ca32VAbF.js} +1 -1
  110. package/dist/cjs/{useGetTokenPrice-cA2TnAzD.js → useGetTokenPrice-DJpJnTij.js} +1 -1
  111. package/dist/cjs/{useI18n-D4jKEXmt.js → useI18n-CnsBjm9v.js} +1 -1
  112. package/dist/cjs/usePrivy-Bx2PKTrU.js +1 -0
  113. package/dist/cjs/{useSolanaRpcClient-hHdPoMRE.js → useSolanaRpcClient-CYMWkK7E.js} +1 -1
  114. package/dist/cjs/useWalletBalance-DI8AY31i.js +1 -0
  115. package/dist/cjs/useWallets-BwB7ALB8.js +1 -0
  116. package/dist/cjs/useWallets-DMyuB5aJ.js +1 -0
  117. package/dist/dts/{events-context-vKnpI7Js.d.mts → events-context-DeukTtar.d.mts} +1 -1
  118. package/dist/dts/{events-context-vKnpI7Js.d.ts → events-context-DeukTtar.d.ts} +1 -1
  119. package/dist/dts/extended-chains.d.mts +1 -1
  120. package/dist/dts/extended-chains.d.ts +1 -1
  121. package/dist/dts/farcaster.d.mts +1 -1
  122. package/dist/dts/farcaster.d.ts +1 -1
  123. package/dist/dts/index.d.mts +40 -4
  124. package/dist/dts/index.d.ts +40 -4
  125. package/dist/dts/internal.d.mts +1 -1
  126. package/dist/dts/internal.d.ts +1 -1
  127. package/dist/dts/smart-wallets.d.mts +1 -1
  128. package/dist/dts/smart-wallets.d.ts +1 -1
  129. package/dist/dts/solana.d.mts +3 -3
  130. package/dist/dts/solana.d.ts +3 -3
  131. package/dist/dts/{types-DAzgcrBH.d.mts → types-FifkyCQc.d.mts} +2 -1
  132. package/dist/dts/{types-DAzgcrBH.d.ts → types-FifkyCQc.d.ts} +2 -1
  133. package/dist/dts/ui.d.mts +1 -1
  134. package/dist/dts/ui.d.ts +1 -1
  135. package/dist/esm/AccountNotFoundScreen-C6S8_GyN.mjs +1 -0
  136. package/dist/esm/Address-QmAVCQtO.mjs +17 -0
  137. package/dist/esm/AffirmativeConsentScreen-QfJBfI_f.mjs +6 -0
  138. package/dist/esm/AllowlistRejectionScreen-CX57yv4U.mjs +1 -0
  139. package/dist/esm/AuthenticateWithWalletScreen-CZJ-aWhZ.mjs +1 -0
  140. package/dist/esm/AwaitingEvmToSolBridgingScreen-C1CMtT4Y.mjs +2 -0
  141. package/dist/esm/AwaitingExternalEthereumTransferScreen-DX91STcF.mjs +2 -0
  142. package/dist/esm/AwaitingPasswordlessCodeScreen-BuExr50N.mjs +103 -0
  143. package/dist/esm/AwaitingSolToEvmBridgingScreen-Bm1i_2qW.mjs +2 -0
  144. package/dist/esm/BridgeNetworkSelectionView-DQGcampg.mjs +69 -0
  145. package/dist/esm/CaptchaScreen-B-hFDb5f.mjs +1 -0
  146. package/dist/esm/CoinbaseOnrampStatusScreen-OHm2RUBv.mjs +16 -0
  147. package/dist/esm/ConnectEmailForm-Df5OtmDR.mjs +3 -0
  148. package/dist/esm/ConnectLedgerScreen-BHLYW-F3.mjs +9 -0
  149. package/dist/esm/ConnectOnlyLandingScreen-C6nzEwpN.mjs +1 -0
  150. package/dist/esm/ConnectOnlyStatusScreen-CremlXDY.mjs +1 -0
  151. package/dist/esm/ConnectOrCreateScreen-262UvCdD.mjs +1 -0
  152. package/dist/esm/{ConnectPhoneForm-C1eL0VZH.mjs → ConnectPhoneForm-BMtTIItD.mjs} +1 -1
  153. package/dist/esm/{ConnectWalletView-BtuPwm-c.mjs → ConnectWalletView-BMjEKo1_.mjs} +6 -6
  154. package/dist/esm/ConnectionStatusScreen-mk5beBL7.mjs +7 -0
  155. package/dist/esm/CrossAppAuthScreen-BXjEJQv6.mjs +1 -0
  156. package/dist/esm/CustomLandingScreenView-BlDfJaDr.mjs +23 -0
  157. package/dist/esm/DelegatedActionsConsentScreen-ANmQe-9G.mjs +1 -0
  158. package/dist/esm/DelegatedActionsRevokeScreen-D9X7mWmI.mjs +1 -0
  159. package/dist/esm/EmbeddedWalletConnectingScreen-2g-RrIvW.mjs +1 -0
  160. package/dist/esm/EmbeddedWalletCreatedScreen-BXTAv4_-.mjs +1 -0
  161. package/dist/esm/EmbeddedWalletKeyExportScreen-DYVHVHOj.mjs +40 -0
  162. package/dist/esm/EmbeddedWalletOnAccountCreateScreen-CYyMoMFF.mjs +1 -0
  163. package/dist/esm/EmbeddedWalletPasswordUpdateScreen-oT5ZcPQV.mjs +1 -0
  164. package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-BQcHDyuV.mjs +1 -0
  165. package/dist/esm/{EnrollTotp-Bk2mWeF6.mjs → EnrollTotp-DVLg14UT.mjs} +8 -8
  166. package/dist/esm/ErrorScreen-CLfeO5pd.mjs +4 -0
  167. package/dist/esm/{FarcasterConnectStatusScreen-CHItJej_.mjs → FarcasterConnectStatusScreen-CUO9DKCJ.mjs} +7 -7
  168. package/dist/esm/FarcasterSignerStatusScreen-B135UOnV.mjs +28 -0
  169. package/dist/esm/FundSolWalletWithExternalSolanaWallet-DO3ttgom.mjs +1 -0
  170. package/dist/esm/{FundWalletMethodHeader-B3nAPYAR.mjs → FundWalletMethodHeader-PIxwFzzh.mjs} +1 -1
  171. package/dist/esm/FundingEditAmountScreen-BRQb2ffL.mjs +1 -0
  172. package/dist/esm/FundingMethodSelectionScreen-DTt1Z5RI.mjs +1 -0
  173. package/dist/esm/InAppBrowserLoginNotPossible-DH96QD2c.mjs +1 -0
  174. package/dist/esm/InstallWalletScreen-PnK6VfrP.mjs +1 -0
  175. package/dist/esm/LandingScreen-D_EvjOHf.mjs +1 -0
  176. package/dist/esm/{LinkConflictScreen-DmFrdpwb.mjs → LinkConflictScreen-B94e_-2N.mjs} +7 -7
  177. package/dist/esm/LinkEmailScreen-CT8gAQr3.mjs +1 -0
  178. package/dist/esm/LinkPasskeyScreen-DYfWSjKR.mjs +105 -0
  179. package/dist/esm/LinkPhoneScreen-ccrKA6tf.mjs +1 -0
  180. package/dist/esm/LoginFailedScreen-BwgxhbMf.mjs +1 -0
  181. package/dist/esm/ManualTransferScreen-DgCG2P3B.mjs +1 -0
  182. package/dist/esm/MfaAuthEnrollmentFlowScreen-CNVUTOnE.mjs +1 -0
  183. package/dist/esm/MfaAuthVerifyFlowScreen-2nvvFipu.mjs +1 -0
  184. package/dist/esm/MfaEnrollmentFlowScreen-DfnIqNNU.mjs +1 -0
  185. package/dist/esm/MfaVerifyFlowScreen-BwerwBz5.mjs +1 -0
  186. package/dist/esm/{ModalHeader-cnW8OaHH.mjs → ModalHeader-rCMpqA2a.mjs} +4 -4
  187. package/dist/esm/MoonpayStatusScreen-D5fRCEb3.mjs +16 -0
  188. package/dist/esm/OAuthStatusScreen-DtLgYw89.mjs +1 -0
  189. package/dist/esm/PasskeySelectSignupOrLogin-QoPhmagh.mjs +1 -0
  190. package/dist/esm/PasskeyStatusScreen-DzjU3ZVT.mjs +3 -0
  191. package/dist/esm/PasswordRecoveryScreen-LZYGRBkP.mjs +20 -0
  192. package/dist/esm/{QrCode-BVe4kf2z.mjs → QrCode-DjnQgnaZ.mjs} +3 -3
  193. package/dist/esm/RecoveryOAuthStatusScreen-DKfp8Udh.mjs +1 -0
  194. package/dist/esm/RecoveryPasswordCreateScreen-D4DI5Bom.mjs +1 -0
  195. package/dist/esm/RecoverySelectionScreen-B2V3518x.mjs +7 -0
  196. package/dist/esm/{Screen-DgjLPjok.mjs → Screen-CV2tt2Ap.mjs} +11 -11
  197. package/dist/esm/{ScreenLayout-x3-Xgy2E.mjs → ScreenLayout-DF3DCKOK.mjs} +1 -1
  198. package/dist/esm/SetAutomaticRecoveryScreen-C6cFVbSx.mjs +14 -0
  199. package/dist/esm/{SetWalletPasswordForm-Deqef3mc.mjs → SetWalletPasswordForm-ChA4tW4Y.mjs} +4 -4
  200. package/dist/esm/SignRequestScreen-BslfKJ1N.mjs +26 -0
  201. package/dist/esm/{StandardSignAndSendTransactionScreen-BGAjDFes.mjs → StandardSignAndSendTransactionScreen-D4OBsj5k.mjs} +3 -3
  202. package/dist/esm/TelegramAuthScreen-BJq5f_Rq.mjs +1 -0
  203. package/dist/esm/{TransactionDetails-8R96szrm.mjs → TransactionDetails-BP142O9n.mjs} +4 -4
  204. package/dist/esm/TransactionErrorView-BwwGMqSj.mjs +166 -0
  205. package/dist/esm/TransferFromWalletScreen-BHH0YcI4.mjs +31 -0
  206. package/dist/esm/TransferOrBridgeLoadingScreen-VLQTcf_6.mjs +6 -0
  207. package/dist/esm/UpdateEmailScreen-CMFBvYz5.mjs +1 -0
  208. package/dist/esm/UpdatePhoneScreen-DmhHcNq3.mjs +1 -0
  209. package/dist/esm/UserLimitReachedScreen-DNqgCf3B.mjs +1 -0
  210. package/dist/esm/{WalletInfoCard-CR6-S95l.mjs → WalletInfoCard-ChBHG5L5.mjs} +3 -3
  211. package/dist/esm/WalletInterstitialScreen-RS89fm6t.mjs +1 -0
  212. package/dist/esm/WalletLink-CN4enmsE.mjs +22 -0
  213. package/dist/esm/WalletOverflowButton-B-nEN4GW.mjs +1 -0
  214. package/dist/esm/abstract-smart-wallets.mjs +1 -1
  215. package/dist/esm/context-LVpDfP2H.mjs +1 -0
  216. package/dist/esm/ethers-BQ45eiVv.mjs +1 -0
  217. package/dist/esm/extended-chains.mjs +1 -1
  218. package/dist/esm/farcaster.mjs +1 -1
  219. package/dist/esm/{frame-cjQkGswH.mjs → frame-uzTmvtww.mjs} +1 -1
  220. package/dist/esm/get-is-unified-wallet-CNcx75Dp.mjs +1 -0
  221. package/dist/esm/getErc20Balance-DA4dGV9O.mjs +1 -0
  222. package/dist/esm/getErc20TokenInfo-CxatSwzi.mjs +1 -0
  223. package/dist/esm/getPublicClient-B4uPLKn-.mjs +1 -0
  224. package/dist/esm/{index-0TRQs0PD.mjs → index-2knYP69D.mjs} +3 -3
  225. package/dist/esm/index-DNz_w3-G.mjs +174 -0
  226. package/dist/esm/{index-Cp1MRWbr.mjs → index-DoasOxbi.mjs} +1 -1
  227. package/dist/esm/index.mjs +1 -1
  228. package/dist/esm/{internal-context-D4S2Sfvt.mjs → internal-context-Z-fyxadS.mjs} +1 -1
  229. package/dist/esm/internal.mjs +1 -1
  230. package/dist/esm/{paths-BzM95ysC.mjs → paths-3HW55qZg.mjs} +1 -1
  231. package/dist/esm/prepareFundingModalData-DjTxAoJ1.mjs +1 -0
  232. package/dist/esm/reservoir-0wfhnc0j.mjs +1 -0
  233. package/dist/esm/{shared-C0CllI3K.mjs → shared-DwO5pr5t.mjs} +1 -1
  234. package/dist/esm/shouldProceedtoEmbeddedWalletCreationFlow-Cv_C9s3_.mjs +1 -0
  235. package/dist/esm/smart-wallets-9LKzbfWj.mjs +1 -0
  236. package/dist/esm/smart-wallets.mjs +1 -1
  237. package/dist/esm/solana.mjs +1 -1
  238. package/dist/esm/{styles-Fji1ReGu.mjs → styles-BNn7MnP1.mjs} +1 -1
  239. package/dist/esm/to-ui-error-CCqAdorW.mjs +4 -0
  240. package/dist/esm/ui.mjs +37 -37
  241. package/dist/esm/use-export-wallet-DllHf-2F.mjs +1 -0
  242. package/dist/esm/{use-sign-with-user-signer--95w9BaG.mjs → use-sign-with-user-signer-Do5Oi_rb.mjs} +1 -1
  243. package/dist/esm/useActiveWallet-RZ4w-uGq.mjs +185 -0
  244. package/dist/esm/{useGetSolPrice-usp7QcwI.mjs → useGetSolPrice-DwwjjGbd.mjs} +1 -1
  245. package/dist/esm/{useGetTokenPrice-DgKSvh6T.mjs → useGetTokenPrice-DERdsrmf.mjs} +1 -1
  246. package/dist/esm/{useI18n-DleS41MU.mjs → useI18n-Dk9y58cU.mjs} +1 -1
  247. package/dist/esm/usePrivy-Dj52a5sp.mjs +1 -0
  248. package/dist/esm/useSolanaRpcClient-B7UDPdLi.mjs +1 -0
  249. package/dist/esm/useWalletBalance-CRXiZUj2.mjs +1 -0
  250. package/dist/esm/useWallets-DlGuNtGR.mjs +1 -0
  251. package/dist/esm/useWallets-cSQYA-Jk.mjs +1 -0
  252. package/package.json +6 -6
  253. package/dist/cjs/AccountNotFoundScreen-Clo67iWH.js +0 -1
  254. package/dist/cjs/AffirmativeConsentScreen-2FGovWDj.js +0 -6
  255. package/dist/cjs/AllowlistRejectionScreen-BLcPF2_b.js +0 -1
  256. package/dist/cjs/AuthenticateWithWalletScreen-ByOwd0gq.js +0 -1
  257. package/dist/cjs/AwaitingEvmToSolBridgingScreen-D_dh3tgw.js +0 -2
  258. package/dist/cjs/AwaitingExternalEthereumTransferScreen-CB4SnTRS.js +0 -2
  259. package/dist/cjs/AwaitingPasswordlessCodeScreen-D43lCvaw.js +0 -103
  260. package/dist/cjs/AwaitingSolToEvmBridgingScreen-ppOL2XCp.js +0 -2
  261. package/dist/cjs/CaptchaScreen-oTaZlLej.js +0 -1
  262. package/dist/cjs/CoinbaseOnrampStatusScreen-CO97CoDr.js +0 -16
  263. package/dist/cjs/ConnectEmailForm-DAA-nxD6.js +0 -3
  264. package/dist/cjs/ConnectLedgerScreen-3SrqHJBl.js +0 -9
  265. package/dist/cjs/ConnectOnlyLandingScreen-DkR-VnS2.js +0 -1
  266. package/dist/cjs/ConnectOnlyStatusScreen-Cafk-5gS.js +0 -1
  267. package/dist/cjs/ConnectOrCreateScreen-DttF-fCs.js +0 -1
  268. package/dist/cjs/ConnectionStatusScreen-BfU_d8ZK.js +0 -7
  269. package/dist/cjs/CrossAppAuthScreen-Bs_x-Isw.js +0 -1
  270. package/dist/cjs/CustomLandingScreenView-B93ZDqp2.js +0 -23
  271. package/dist/cjs/DelegatedActionsConsentScreen-Cx5lj2BJ.js +0 -1
  272. package/dist/cjs/DelegatedActionsRevokeScreen-BEucV6g6.js +0 -1
  273. package/dist/cjs/EmbeddedWalletConnectingScreen-BjZ_7QsX.js +0 -1
  274. package/dist/cjs/EmbeddedWalletCreatedScreen-CbmJzZZL.js +0 -1
  275. package/dist/cjs/EmbeddedWalletKeyExportScreen-CdMuowdD.js +0 -40
  276. package/dist/cjs/EmbeddedWalletOnAccountCreateScreen-C_EBP_oR.js +0 -1
  277. package/dist/cjs/EmbeddedWalletPasswordUpdateScreen-DQhHO_tI.js +0 -1
  278. package/dist/cjs/EmbeddedWalletPasswordUpdateSplashScreen-C1dTDHuI.js +0 -1
  279. package/dist/cjs/ErrorScreen-CPDISQKp.js +0 -4
  280. package/dist/cjs/FarcasterSignerStatusScreen-BYnokloK.js +0 -29
  281. package/dist/cjs/FundSolWalletWithExternalSolanaWallet-D-pMJTgQ.js +0 -2
  282. package/dist/cjs/FundingEditAmountScreen-CGYBcgzY.js +0 -1
  283. package/dist/cjs/FundingMethodSelectionScreen-32rXIiuR.js +0 -1
  284. package/dist/cjs/InAppBrowserLoginNotPossible-Wz6tWwN4.js +0 -1
  285. package/dist/cjs/InstallWalletScreen-C6na1HMV.js +0 -1
  286. package/dist/cjs/LandingScreen-GYoGjPT7.js +0 -1
  287. package/dist/cjs/LinkEmailScreen-Bz6DBn1S.js +0 -1
  288. package/dist/cjs/LinkPhoneScreen-BFB7atSV.js +0 -1
  289. package/dist/cjs/LoginFailedScreen-C3X4o4W8.js +0 -1
  290. package/dist/cjs/ManualTransferScreen-Bx5GRcIk.js +0 -1
  291. package/dist/cjs/MfaAuthEnrollmentFlowScreen-D8DE5e8S.js +0 -1
  292. package/dist/cjs/MfaAuthVerifyFlowScreen-BeJSdbHB.js +0 -1
  293. package/dist/cjs/MfaEnrollmentFlowScreen-0X-6htEq.js +0 -1
  294. package/dist/cjs/MfaVerifyFlowScreen-BgdY97r7.js +0 -1
  295. package/dist/cjs/OAuthStatusScreen-DZbrwgcX.js +0 -1
  296. package/dist/cjs/PasskeySelectSignupOrLogin-DWW-VE2d.js +0 -1
  297. package/dist/cjs/PasskeyStatusScreen-DiieGaFn.js +0 -3
  298. package/dist/cjs/PasswordRecoveryScreen-OhRzyQhB.js +0 -20
  299. package/dist/cjs/RecoveryOAuthStatusScreen-DPPwIU7C.js +0 -1
  300. package/dist/cjs/RecoveryPasswordCreateScreen-Bg-E6CB6.js +0 -1
  301. package/dist/cjs/RecoverySelectionScreen-CauE_byN.js +0 -7
  302. package/dist/cjs/SetAutomaticRecoveryScreen-59UByZZC.js +0 -14
  303. package/dist/cjs/SignRequestScreen-CYQvIjLY.js +0 -26
  304. package/dist/cjs/TelegramAuthScreen-DxghStcs.js +0 -1
  305. package/dist/cjs/TransferFromWalletScreen-DSMlo8kv.js +0 -31
  306. package/dist/cjs/TransferOrBridgeLoadingScreen-D9t_WQ5r.js +0 -6
  307. package/dist/cjs/UpdateEmailScreen-CrTIJ16u.js +0 -1
  308. package/dist/cjs/UpdatePhoneScreen-DQzmlkOL.js +0 -1
  309. package/dist/cjs/UserLimitReachedScreen-BQxNahAD.js +0 -1
  310. package/dist/cjs/WalletLink-Bg4We2eg.js +0 -22
  311. package/dist/cjs/WalletOverflowButton-aYewWDKS.js +0 -1
  312. package/dist/cjs/ethers-BlKEtatO.js +0 -1
  313. package/dist/cjs/frame-BmNfc9mp.js +0 -1
  314. package/dist/cjs/getErc20Balance-CP3UfGGz.js +0 -1
  315. package/dist/cjs/getErc20TokenInfo-CVfH_czS.js +0 -1
  316. package/dist/cjs/index-LczlN1Dt.js +0 -12
  317. package/dist/cjs/private-privy-provider-hH9v0z7o.js +0 -358
  318. package/dist/cjs/shouldProceedtoEmbeddedWalletCreationFlow-Cp0BucAr.js +0 -1
  319. package/dist/cjs/smart-wallets-DUl8PaqV.js +0 -1
  320. package/dist/cjs/state-DMsGOICm.js +0 -1
  321. package/dist/cjs/stripUrlOAuthParamsAndRemoveStateCode-2iUOCDfo.js +0 -1
  322. package/dist/cjs/to-ui-error-caFMQ6I1.js +0 -4
  323. package/dist/cjs/use-create-wallet-without-fallback-CrxEFfhb.js +0 -1
  324. package/dist/cjs/use-export-wallet-DeI8q3KQ.js +0 -1
  325. package/dist/cjs/useActiveWallet-BySNV0ev.js +0 -1
  326. package/dist/cjs/useLogout-zT9OSxoO.js +0 -1
  327. package/dist/cjs/useMfa-KC6CWm9H.js +0 -1
  328. package/dist/cjs/useMfaEnrollment-DA9sTwf_.js +0 -1
  329. package/dist/cjs/useWalletBalance-8waYUAmD.js +0 -1
  330. package/dist/cjs/useWallets-2ejSMVGq.js +0 -1
  331. package/dist/esm/AccountNotFoundScreen-Cn6aKFIC.mjs +0 -1
  332. package/dist/esm/Address-CDF4d_Ha.mjs +0 -17
  333. package/dist/esm/AffirmativeConsentScreen-DwMHTAWp.mjs +0 -6
  334. package/dist/esm/AllowlistRejectionScreen-CtVeBy5G.mjs +0 -1
  335. package/dist/esm/AuthenticateWithWalletScreen-CqqsqfqZ.mjs +0 -1
  336. package/dist/esm/AwaitingEvmToSolBridgingScreen-CLkDS6o-.mjs +0 -2
  337. package/dist/esm/AwaitingExternalEthereumTransferScreen-Is2FdGJS.mjs +0 -2
  338. package/dist/esm/AwaitingPasswordlessCodeScreen-CAwXjOBS.mjs +0 -103
  339. package/dist/esm/AwaitingSolToEvmBridgingScreen-BDhpWAv1.mjs +0 -2
  340. package/dist/esm/BridgeNetworkSelectionView-C5xaiL3n.mjs +0 -69
  341. package/dist/esm/CaptchaScreen-CZCosLCJ.mjs +0 -1
  342. package/dist/esm/CoinbaseOnrampStatusScreen-DxbYHDRy.mjs +0 -16
  343. package/dist/esm/ConnectEmailForm-c2xnQzqc.mjs +0 -3
  344. package/dist/esm/ConnectLedgerScreen-CmspFZG8.mjs +0 -9
  345. package/dist/esm/ConnectOnlyLandingScreen-JXhxU6Je.mjs +0 -1
  346. package/dist/esm/ConnectOnlyStatusScreen-CZO6dxUB.mjs +0 -1
  347. package/dist/esm/ConnectOrCreateScreen-DHwSpwLa.mjs +0 -1
  348. package/dist/esm/ConnectionStatusScreen-d8tOwFAz.mjs +0 -7
  349. package/dist/esm/CrossAppAuthScreen-CNvQYKBN.mjs +0 -1
  350. package/dist/esm/CustomLandingScreenView-82pnUZOi.mjs +0 -23
  351. package/dist/esm/DelegatedActionsConsentScreen-D2cB2Jqt.mjs +0 -1
  352. package/dist/esm/DelegatedActionsRevokeScreen-DIdnDrIo.mjs +0 -1
  353. package/dist/esm/EmbeddedWalletConnectingScreen-DNDkMjZg.mjs +0 -1
  354. package/dist/esm/EmbeddedWalletCreatedScreen-6rmCkBPR.mjs +0 -1
  355. package/dist/esm/EmbeddedWalletKeyExportScreen-CrrImf0B.mjs +0 -40
  356. package/dist/esm/EmbeddedWalletOnAccountCreateScreen-MTCypdEY.mjs +0 -1
  357. package/dist/esm/EmbeddedWalletPasswordUpdateScreen-o-ONaPrc.mjs +0 -1
  358. package/dist/esm/EmbeddedWalletPasswordUpdateSplashScreen-BpRZwJZg.mjs +0 -1
  359. package/dist/esm/ErrorScreen-C891Rurl.mjs +0 -4
  360. package/dist/esm/FarcasterSignerStatusScreen-P3NEju7D.mjs +0 -28
  361. package/dist/esm/FundSolWalletWithExternalSolanaWallet-CGZdr_3E.mjs +0 -1
  362. package/dist/esm/FundingEditAmountScreen-B0MYigL_.mjs +0 -1
  363. package/dist/esm/FundingMethodSelectionScreen-CNJYvozR.mjs +0 -1
  364. package/dist/esm/InAppBrowserLoginNotPossible-CVyW-cIh.mjs +0 -1
  365. package/dist/esm/InstallWalletScreen-Bfo00Txs.mjs +0 -1
  366. package/dist/esm/LandingScreen-tAGl1tss.mjs +0 -1
  367. package/dist/esm/LinkEmailScreen-C_G_4bbm.mjs +0 -1
  368. package/dist/esm/LinkPasskeyScreen-DhD51WvM.mjs +0 -105
  369. package/dist/esm/LinkPhoneScreen-Bi5gcAMm.mjs +0 -1
  370. package/dist/esm/LoginFailedScreen-DbAdNYji.mjs +0 -1
  371. package/dist/esm/ManualTransferScreen-CR2QvdVh.mjs +0 -1
  372. package/dist/esm/MfaAuthEnrollmentFlowScreen-BEotfobF.mjs +0 -1
  373. package/dist/esm/MfaAuthVerifyFlowScreen-Cygjr5sH.mjs +0 -1
  374. package/dist/esm/MfaEnrollmentFlowScreen-jupYBcsQ.mjs +0 -1
  375. package/dist/esm/MfaVerifyFlowScreen-B8ONcY5T.mjs +0 -1
  376. package/dist/esm/MoonpayStatusScreen-BjmXS-jc.mjs +0 -16
  377. package/dist/esm/OAuthStatusScreen-YcgvWTtC.mjs +0 -1
  378. package/dist/esm/PasskeySelectSignupOrLogin-Db4EFSYE.mjs +0 -1
  379. package/dist/esm/PasskeyStatusScreen-CR-3RNXX.mjs +0 -3
  380. package/dist/esm/PasswordRecoveryScreen-BnD1OdcX.mjs +0 -20
  381. package/dist/esm/RecoveryOAuthStatusScreen-DhLx5fOQ.mjs +0 -1
  382. package/dist/esm/RecoveryPasswordCreateScreen-BHOh-fE-.mjs +0 -1
  383. package/dist/esm/RecoverySelectionScreen-1seYQLsM.mjs +0 -7
  384. package/dist/esm/SetAutomaticRecoveryScreen-CZLgLNlt.mjs +0 -14
  385. package/dist/esm/SignRequestScreen-EwmYkZZk.mjs +0 -26
  386. package/dist/esm/TelegramAuthScreen-BMWr2M6a.mjs +0 -1
  387. package/dist/esm/TransactionErrorView-CcY_O062.mjs +0 -166
  388. package/dist/esm/TransferFromWalletScreen-BTsyTZMc.mjs +0 -31
  389. package/dist/esm/TransferOrBridgeLoadingScreen-DZ1diPi7.mjs +0 -6
  390. package/dist/esm/UpdateEmailScreen-DyXsKvGA.mjs +0 -1
  391. package/dist/esm/UpdatePhoneScreen-erzZ8qOI.mjs +0 -1
  392. package/dist/esm/UserLimitReachedScreen-CfiHSh4t.mjs +0 -1
  393. package/dist/esm/WalletInterstitialScreen-DCg6fl5S.mjs +0 -1
  394. package/dist/esm/WalletLink-CTp4jR2d.mjs +0 -22
  395. package/dist/esm/WalletOverflowButton-i2nGLvV0.mjs +0 -1
  396. package/dist/esm/context-i_OKSUqt.mjs +0 -1
  397. package/dist/esm/ethers-Cr0T35kS.mjs +0 -1
  398. package/dist/esm/get-is-unified-wallet-Bon2jknh.mjs +0 -1
  399. package/dist/esm/getErc20Balance-BDNkB-EL.mjs +0 -1
  400. package/dist/esm/getErc20TokenInfo-79BQbhYn.mjs +0 -1
  401. package/dist/esm/private-privy-provider-B2_rZ8aq.mjs +0 -358
  402. package/dist/esm/reservoir-DNdkSA7R.mjs +0 -1
  403. package/dist/esm/shouldProceedtoEmbeddedWalletCreationFlow-CDHNJbN9.mjs +0 -1
  404. package/dist/esm/smart-wallets-BNt96zAq.mjs +0 -1
  405. package/dist/esm/state-BG13el3v.mjs +0 -1
  406. package/dist/esm/stripUrlOAuthParamsAndRemoveStateCode-9jsyCRfN.mjs +0 -1
  407. package/dist/esm/to-ui-error-C46oK5ox.mjs +0 -4
  408. package/dist/esm/use-create-wallet-without-fallback-CY32SGw2.mjs +0 -1
  409. package/dist/esm/use-export-wallet-CWry8VMl.mjs +0 -1
  410. package/dist/esm/useActiveWallet-D-T43q8N.mjs +0 -1
  411. package/dist/esm/useLogout-CHtNPDaK.mjs +0 -1
  412. package/dist/esm/useMfa-D20h0FBp.mjs +0 -1
  413. package/dist/esm/useMfaEnrollment-BOyHpB2c.mjs +0 -1
  414. package/dist/esm/useSolanaRpcClient-O9yIYVIZ.mjs +0 -1
  415. package/dist/esm/useWalletBalance-CMO_I7jz.mjs +0 -1
  416. package/dist/esm/useWallets-B3ZcS4km.mjs +0 -1
@@ -1 +1 @@
1
- import{ofetch as e}from"ofetch";import{useState as t,useRef as n,useEffect as a}from"react";import{M as r,v as o,w as i,x as u}from"./context-i_OKSUqt.mjs";import{u as s}from"./internal-context-D4S2Sfvt.mjs";import{a as d}from"./get-is-unified-wallet-Bon2jknh.mjs";import{O as c}from"./analytics-mkkvFRju.mjs";const m="moonpay";function l(e){return parseFloat(e)}function y(l,y=!1){let[f,g]=t(null),{createAnalyticsEvent:p}=s(),{data:h,navigate:v,setModalData:w}=d(),A=h?.funding,F=n(0);return a((()=>{let t=setInterval((async()=>{if(l)try{let[n]=await async function(t,n){return e(`${n?r:o}/transactions/ext/${t}`,{query:{apiKey:n?i:u}})}(l,y),a="waitingAuthorization"===n.status&&"credit_debit_card"===n.paymentMethod?"pending":n.status;if(["failed","completed","awaitingAuthorization"].includes(a)&&(p({eventName:c,payload:{status:a,provider:m,paymentMethod:n.paymentMethod,cardPaymentType:n.cardPaymentType,currency:n.currency?.code,baseCurrencyAmount:n.baseCurrencyAmount,quoteCurrencyAmount:n.quoteCurrencyAmount,feeAmount:n.feeAmount,extraFeeAmount:n.extraFeeAmount,networkFeeAmount:n.networkFeeAmount,isSandbox:y}}),clearInterval(t)),"failed"===a||"serviceFailure"===a)return w({funding:{...A,errorMessage:"Something went wrong adding funds from Moonpay. Please try again or use another method to fund your wallet."},solanaFundingData:h?.solanaFundingData}),void v("FundingMethodSelectionScreen");g(a)}catch(e){404!==e.response?.status&&(F.current+=1),F.current>=3&&(p({eventName:c,payload:{status:"serviceFailure",provider:m}}),clearInterval(t),w({funding:{...A,errorMessage:"Something went wrong adding funds from Moonpay. Please try again or use another method to fund your wallet."},solanaFundingData:h?.solanaFundingData}),v("FundingMethodSelectionScreen"))}}),3e3);return()=>clearInterval(t)}),[l,F]),f}export{l as a,y as u};
1
+ import{ofetch as e}from"ofetch";import{useState as t,useRef as n,useEffect as a}from"react";import{M as r,v as o,w as i,x as u}from"./context-LVpDfP2H.mjs";import{u as s}from"./internal-context-Z-fyxadS.mjs";import{a as d}from"./get-is-unified-wallet-CNcx75Dp.mjs";import{O as c}from"./analytics-mkkvFRju.mjs";const m="moonpay";function l(e){return parseFloat(e)}function y(l,y=!1){let[f,g]=t(null),{createAnalyticsEvent:p}=s(),{data:h,navigate:v,setModalData:w}=d(),A=h?.funding,F=n(0);return a((()=>{let t=setInterval((async()=>{if(l)try{let[n]=await async function(t,n){return e(`${n?r:o}/transactions/ext/${t}`,{query:{apiKey:n?i:u}})}(l,y),a="waitingAuthorization"===n.status&&"credit_debit_card"===n.paymentMethod?"pending":n.status;if(["failed","completed","awaitingAuthorization"].includes(a)&&(p({eventName:c,payload:{status:a,provider:m,paymentMethod:n.paymentMethod,cardPaymentType:n.cardPaymentType,currency:n.currency?.code,baseCurrencyAmount:n.baseCurrencyAmount,quoteCurrencyAmount:n.quoteCurrencyAmount,feeAmount:n.feeAmount,extraFeeAmount:n.extraFeeAmount,networkFeeAmount:n.networkFeeAmount,isSandbox:y}}),clearInterval(t)),"failed"===a||"serviceFailure"===a)return w({funding:{...A,errorMessage:"Something went wrong adding funds from Moonpay. Please try again or use another method to fund your wallet."},solanaFundingData:h?.solanaFundingData}),void v("FundingMethodSelectionScreen");g(a)}catch(e){404!==e.response?.status&&(F.current+=1),F.current>=3&&(p({eventName:c,payload:{status:"serviceFailure",provider:m}}),clearInterval(t),w({funding:{...A,errorMessage:"Something went wrong adding funds from Moonpay. Please try again or use another method to fund your wallet."},solanaFundingData:h?.solanaFundingData}),v("FundingMethodSelectionScreen"))}}),3e3);return()=>clearInterval(t)}),[l,F]),f}export{l as a,y as u};
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useMemo as t,useCallback as r,useEffect as s,useContext as n,useState as i,useRef as o}from"react";import l,{PrivyClientError as c,getWallet as d,updateWallet as h,generateAuthorizationSignature as w}from"@privy-io/js-sdk-core";export{DEFAULT_SUPPORTED_CHAINS as SUPPORTED_CHAINS,addPrivyRpcToChain,addRpcUrlOverrideToChain}from"@privy-io/js-sdk-core";import{u as p,e as y,a as m,g as f,P as A,b as k,c as v,d as S,T,f as U,C,h as P,i as _,j as x,p as j,U as z,t as q,k as G,l as X,m as Y,G as $,s as Z,n as ee,o as te,q as re,r as ae,v as se,w as ne,x as ie,y as oe,z as le,A as ce}from"./private-privy-provider-B2_rZ8aq.mjs";export{B as Captcha,D as ConnectorManager,E as EthereumWalletConnector,J as PrivyClient,W as WalletConnector,H as errorIndicatesMaxMfaRetries,I as errorIndicatesMfaTimeout,F as errorIndicatesMfaVerificationFailed,K as getIdentityToken,N as useCreateWallet,O as useFundWallet,L as useIdentityToken,Q as useImportWallet,R as useMigrateWallets,M as useRegisterMfaListener}from"./private-privy-provider-B2_rZ8aq.mjs";import{P as de,C as ue,g as he,u as we,a as pe,W as ge}from"./context-i_OKSUqt.mjs";export{V as VERSION}from"./context-i_OKSUqt.mjs";import{P as ye,u as me,a as fe,I as Ae}from"./internal-context-D4S2Sfvt.mjs";import{u as ke,i as ve,P as Se,a as Te,g as Ee,b as Ue,c as We,d as Ce}from"./get-is-unified-wallet-Bon2jknh.mjs";export{u as useMfa}from"./useMfa-D20h0FBp.mjs";export{u as useMfaEnrollment}from"./useMfaEnrollment-BOyHpB2c.mjs";export{b as useActiveWallet,a as useConnectWallet,u as useLogin}from"./useActiveWallet-D-T43q8N.mjs";import{F as Ne}from"./frame-cjQkGswH.mjs";export{u as useLogout}from"./useLogout-CHtNPDaK.mjs";import{u as Pe,a as Re}from"./events-context-CI0iqAXA.mjs";import{s as be}from"./stripUrlOAuthParamsAndRemoveStateCode-9jsyCRfN.mjs";import{MfaAuthPasskeyVerify as Oe,MfaAuthPasskeyInit as Me,MfaAuthTotpVerify as _e,MfaAuthPasskeyEnrollment as Ie,MfaAuthTotpUnenroll as Fe,MfaAuthTotpEnroll as xe,MfaAuthTotpInit as He}from"@privy-io/routes";import{zeroAddress as De,getAddress as Le,createWalletClient as je,http as Ke,parseSignature as ze}from"viem";import{hashAuthorization as qe}from"viem/utils";import{selectPaymentRequirements as Ve,createPaymentHeader as Be}from"x402/client";import{InvalidInputError as Ge}from"@privy-io/api-base";import{toAccount as Je}from"viem/accounts";import{u as Xe}from"./use-sign-with-user-signer--95w9BaG.mjs";export{g as getEmbeddedConnectedWallet}from"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import"mipd";import"react-device-detect";import"@privy-io/popup";import"./paths-BzM95ysC.mjs";import"@scure/base";import"uuid";import"jose";import"eventemitter3";import"zustand";import"@coinbase/wallet-sdk";import"@walletconnect/ethereum-provider";import"ofetch";import"js-cookie";import"styled-components";import"@headlessui/react";import"@privy-io/ethereum";import"@privy-io/urls";import"tinycolor2";import"./state-BG13el3v.mjs";const Ye=({config:r,...a})=>{p(),function(){if("undefined"==typeof window)return;let e=["localhost","127.0.0.1"].includes(window.location.hostname),t="https:"===window.location.protocol||"chrome-extension:"===window.location.protocol;if(!e&&!t)throw new ye("Embedded wallet is only available over HTTPS")}(),function(e){if("string"!=typeof e||25!==e.length)throw new ye("Cannot initialize the Privy provider with an invalid Privy app ID")}(a.appId),y(a);let s=t((()=>new l({appId:a.appId,clientId:a.clientId,storage:m,baseUrl:a.apiUrl,sdkVersion:"react-auth:3.11.1-beta-20260122161812"})),[]),n=f(),i=Object.assign({},r);/*#__PURE__*/return e(de,{client:s,legacyClient:n,appClientId:a.clientId,clientConfig:i,children:/*#__PURE__*/e(A,{children:/*#__PURE__*/e(k,{...a,client:n,privy:s})})})},$e=()=>{let{user:e}=ke(),{walletProxy:t}=me();return{recover:r((async r=>{if(!t)throw Error("Wallet proxy is not ready");let a=await v();if(!e||!a)throw new ye("User must be logged in before attempting to modify the recovery method.");let{entropyId:s,entropyIdVerifier:n}=S(e);try{await t.recover({entropyId:s,entropyIdVerifier:n,accessToken:a,...r})}catch{throw new ye("Unable to recover wallets")}}),[t,e])}};function Qe(){let e=f();return e?e.getCustomerAccessToken():Promise.resolve(m.get(ue)||null)}const Ze=()=>{let{client:e,setAuthenticated:r,setUser:a}=me();return t((()=>({init:async()=>{if(!e)throw new ye("Must initialize Privy client first.");let t=new Ne;return e.startAuthFlow(t),await t.init()},login:async({fid:t,message:s,signature:n})=>{if(!e)throw new ye("Must initialize Privy client first.");if(!(e.authFlow instanceof Ne))throw new ye("Must initialize Farcaster Mini App flow first.");e.authFlow.setAuthData({message:s,signature:n,fid:t});let{user:i}=await e.authenticate();if(!i)throw new ye("Failed to login with Farcaster V2");return a(i),r(!0),{user:i}}})),[e,a,r])},et=()=>t((()=>({getAccessTokenForProvider:({appId:e})=>{try{let t=m.get(he(e));if("string"!=typeof t)return{token:null};{let r=new T(t);return r.isExpired()?(m.del(he(e)),{token:null}):{token:r.value}}}catch(e){return console.error(e),{token:null}}}})),[]),tt=e=>{Pe("login",e);let t=U(),a=we(),{ready:n,user:i}=ke(),{initLoginWithHeadlessOAuth:o,loginWithHeadlessOAuth:l,oAuthState:c,setOAuthState:d,isHeadlessOAuthLoading:u}=me(),h=r((async e=>{try{if(t.enabled&&"success"!==t.status)throw new C(t.error,null,fe.CAPTCHA_FAILURE);return await o(e.provider,t.token,e.disableSignup)}catch(e){throw d({status:"error",error:e}),e}}),[o,t]),w=r((async()=>{let e=P();try{if(!e.inProgress)throw Error("Cannot login with OAuth because no OAuth flow is in progress");let t=e.provider;if(ve(t)){if(i&&i.linkedAccounts.some((e=>e.type===t)))return console.warn("User is already logged in with this OAuth provider"),i}else if(i&&t in i&&i[t])return console.warn("User is already logged in with this OAuth provider"),i;if(e.popupFlow)return}catch(e){throw d({status:"error",error:e}),e}try{return await l(e)}catch(e){throw d({status:"error",error:e}),e}finally{be()}}),[l]);return s((()=>{let e=P();n&&a&&e.inProgress&&!e.withPrivyUi&&!e.popupFlow&&w().catch((()=>{}))}),[n,a]),{initOAuth:h,loading:u,state:c}},rt=e=>{let t=U(),{emailOtpState:a,setEmailOtpState:s,initLoginWithEmail:n,loginWithCode:i}=me();return{sendCode:r((async({email:r,disableSignup:a})=>{try{if(!r)throw Error("Email required to send OTP code");let e=await _(t);return await n({email:r,captchaToken:e,disableSignup:a,withPrivyUi:!1})}catch(r){throw s({status:"error",error:r}),e?.onError?.(r.privyErrorCode||fe.UNKNOWN_AUTH_ERROR),r}}),[n,t]),loginWithCode:r((async({code:t})=>{try{let{user:r,isNewUser:a,wasAlreadyAuthenticated:s,linkedAccount:n}=await i(t);e?.onComplete?.({user:r,isNewUser:a,wasAlreadyAuthenticated:s,loginMethod:"email",loginAccount:n})}catch(t){throw s({status:"error",error:t}),e?.onError?.(t.privyErrorCode||fe.UNKNOWN_AUTH_ERROR),t}}),[i]),state:a}},at=e=>{let t=U(),{initSignupWithPasskey:a,signupWithPasskey:s,passkeyAuthState:n,setPasskeyAuthState:i}=me();return{signupWithPasskey:r((async()=>{try{let r=await _(t);await a({captchaToken:r,withPrivyUi:!1});let{user:n,isNewUser:i,wasAlreadyAuthenticated:o,loginAccount:l}=await s();e?.onComplete?.({user:n,isNewUser:i,wasAlreadyAuthenticated:o,loginMethod:"passkey",loginAccount:l})}catch(t){throw i({status:"error",error:t}),e?.onError?.(t.privyErrorCode||fe.UNKNOWN_AUTH_ERROR),t}}),[s,t]),state:n}},st=e=>{let t=U(),{initLoginWithPasskey:a,loginWithPasskey:s,passkeyAuthState:n,setPasskeyAuthState:i}=me();return{loginWithPasskey:r((async r=>{try{let n=await _(t);await a({captchaToken:n,withPrivyUi:!1});let{user:i,isNewUser:o,wasAlreadyAuthenticated:l,loginAccount:c}=await s(r);e?.onComplete?.({user:i,isNewUser:o,wasAlreadyAuthenticated:l,loginMethod:"passkey",loginAccount:c})}catch(r){throw i({status:"error",error:r}),e?.onError?.(r.privyErrorCode||fe.UNKNOWN_AUTH_ERROR),r}}),[s,t]),state:n}},nt=e=>{let{initLinkWithPasskey:t,linkWithPasskey:a,passkeyAuthState:s,setPasskeyAuthState:n}=me();return{linkWithPasskey:r((async()=>{try{await t();let r=await a();if(!r)throw Error("Error, user not found");let s=r.linkedAccounts.filter((e=>"passkey"===e.type)).sort(((e,t)=>t.latestVerifiedAt.getTime()-e.latestVerifiedAt.getTime()))[0];e?.onSuccess?.({user:r,linkMethod:"passkey",linkedAccount:s})}catch(t){throw n({status:"error",error:t}),e?.onError?.(t.privyErrorCode||fe.UNKNOWN_AUTH_ERROR,{linkMethod:"passkey"}),t}}),[a]),state:s}},it=e=>{let t=U(),{smsOtpState:a,setSmsOtpState:s,initLoginWithSms:n,loginWithCode:i}=me();return{sendCode:r((async({phoneNumber:r,disableSignup:a})=>{try{if(!r)throw Error("SMS required to send OTP code");let e=await _(t);return await n({phoneNumber:r,captchaToken:e,disableSignup:a,withPrivyUi:!1})}catch(r){throw s({status:"error",error:r}),e?.onError?.(r.privyErrorCode||fe.UNKNOWN_AUTH_ERROR),r}}),[n,t]),loginWithCode:r((async({code:t})=>{try{let{user:r,isNewUser:a,wasAlreadyAuthenticated:s,linkedAccount:n}=await i(t);e?.onComplete?.({user:r,isNewUser:a,wasAlreadyAuthenticated:s,loginMethod:"sms",loginAccount:n})}catch(t){throw s({status:"error",error:t}),e?.onError?.(t.privyErrorCode||fe.UNKNOWN_AUTH_ERROR),t}}),[i]),state:a}},ot=e=>{let{connectOrCreateWallet:t}=ke();return Pe("connectOrCreateWallet",e),{connectOrCreateWallet:t}},lt=e=>{let t=U(),{siweState:a,setSiweState:s,linkWithSiwe:n,generateSiweMessage:i}=me();return{generateSiweMessage:r((async({address:t,chainId:r})=>{try{if(!t||!r)throw Error("wallet address and chainId required to generate nonce");return await i({address:t,chainId:r}).then((e=>e))}catch(t){throw s({status:"error",error:t}),e?.onError?.(t.privyErrorCode||fe.UNKNOWN_AUTH_ERROR,{linkMethod:"siwe"}),t}}),[i]),linkWithSiwe:r((async({signature:r,message:a,chainId:i,walletClientType:o,connectorType:l})=>{try{if(t.enabled&&"success"!==t.status)throw new C(t.error,null,fe.CAPTCHA_FAILURE);let{user:s,linkedAccount:c}=await n({message:a,signature:r,chainId:i,walletClientType:o,connectorType:l});c&&e?.onSuccess?.({user:s,linkMethod:"siwe",linkedAccount:c})}catch(r){throw s({status:"error",error:r}),e?.onError?.(r.privyErrorCode||fe.UNKNOWN_AUTH_ERROR,{linkMethod:"siwe"}),r}}),[n,t.status]),state:a}},ct=e=>{let t=U(),{siweState:a,setSiweState:s,client:n,generateSiweMessage:i,loginWithSiwe:o}=me();return{generateSiweNonce:r((async r=>{try{let e=await _(t);s({status:"generating-message"});let a=await n.generateSiweNonce({address:r?.address,captchaToken:e});return s({status:"awaiting-signature"}),a}catch(r){throw s({status:"error",error:r}),e?.onError?.(r.privyErrorCode||fe.UNKNOWN_AUTH_ERROR),r}}),[n,t]),generateSiweMessage:r((async({address:r,chainId:a})=>{try{let e=await _(t);return await i({address:r,chainId:a,captchaToken:e})}catch(r){throw s({status:"error",error:r}),e?.onError?.(r.privyErrorCode||fe.UNKNOWN_AUTH_ERROR),r}}),[i,t]),loginWithSiwe:r((async({message:r,signature:a,disableSignup:n,walletClientType:i,connectorType:l})=>{try{let s=await _(t),{user:c,isNewUser:d}=await o({message:r,signature:a,captchaToken:s,disableSignup:n,walletClientType:i,connectorType:l});return e?.onComplete?.({user:c,isNewUser:d,wasAlreadyAuthenticated:!1,loginMethod:"siwe",loginAccount:null}),c}catch(r){throw s({status:"error",error:r}),e?.onError?.(r.privyErrorCode||fe.UNKNOWN_AUTH_ERROR),r}}),[o,t]),state:a}},dt=()=>{let e=U(),{client:t,setAuthenticated:a,setUser:s,setIsNewUser:n}=me(),{authenticated:i}=x();return{generateSiwsMessage:r((async({address:r})=>{let a=await _(e),s=await t.generateSiwsNonce({address:r,captchaToken:a});return j({address:r,nonce:s})}),[e,t]),loginWithSiws:r((async({message:e,signature:r,disableSignup:o,walletClientType:l,connectorType:c})=>{if(i)throw Error("User already authenticated");let{user:d,isNewUser:u}=await t.authenticateWithSiws({message:e,signature:r,walletClientType:l,connectorType:c,mode:o?"no-signup":"login-or-sign-up",messageType:"plain"});if(!d)throw Error("Authentication failed - no user returned");return s(d),n(u||!1),a(!0),d}),[i,t,a,s,n])}},ut=()=>{let e=U(),{client:t,setUser:a,refreshSessionAndUser:s}=me(),{authenticated:n}=x();return{generateSiwsMessage:r((async({address:r})=>{let a=await _(e),s=await t.generateSiwsNonce({address:r,captchaToken:a});return j({address:r,nonce:s})}),[e,t]),linkWithSiws:r((async({signature:r,message:i,walletClientType:o,connectorType:l})=>{if(!n)throw Error("User must be authenticated before linking");await _(e);let c=await t.linkWithSiws({message:i,signature:r,walletClientType:o,connectorType:l,messageType:"plain"}),d=(e=>{if(!e)return;let t=e.linkedAccounts;return t&&0!==t.length?t[t.length-1]:void 0})(c=await s()??c)||null;return a(c||null),{user:c,linkedAccount:d}}),[n,e,t,s,a])}};function ht(){let{signTransaction:e}=n(Se);return{signTransaction:e}}function wt(e){let{linkEmail:t,linkPhone:r,linkWallet:a,linkGoogle:s,linkApple:i,linkTwitter:o,linkTwitch:l,linkDiscord:c,linkGithub:d,linkLinkedIn:u,linkTiktok:h,linkLine:w,linkSpotify:p,linkInstagram:g,linkTelegram:y,linkFarcaster:m,linkPasskey:f}=n(Se);return Pe("linkAccount",e),{linkEmail:t,linkPhone:r,linkWallet:a,linkGoogle:s,linkApple:i,linkTwitter:o,linkTwitch:l,linkDiscord:c,linkGithub:d,linkLinkedIn:u,linkTiktok:h,linkLine:w,linkSpotify:p,linkInstagram:g,linkFarcaster:m,linkTelegram:y,linkPasskey:f}}function pt(e){let{updateEmail:t,updatePhone:r}=n(Se);return Pe("update",e),{updateEmail:t,updatePhone:r}}const gt=e=>{let{user:t}=ke(),{loginWithCode:a,emailOtpState:s,setEmailOtpState:n,client:i,inProgressAuthFlowRef:o,inProgressLoginOrLinkMethodRef:l}=me();return{state:s,sendCode:r((async({newEmailAddress:r})=>{try{if(!t?.email)throw Error("User is required to have an email address to update it.");let e=new z(t.email.address,r);i.startAuthFlow(e),await e.sendCodeEmail({withPrivyUi:!1})}catch(r){n({status:"error",error:r}),e?.onError?.(r.privyErrorCode||fe.UNKNOWN_AUTH_ERROR,{linkMethod:"email"})}}),[t?.email]),verifyCode:r((async({code:r})=>{try{if(!t?.email)throw Error("User is required to have an email address to update it.");o.current="update",l.current="email";let{user:s,linkedAccount:n}=await a(r);return e?.onSuccess?.({user:s,updateMethod:"email",updatedAccount:n}),{user:s}}catch(r){n({status:"error",error:r}),e?.onError?.(r.privyErrorCode||fe.UNKNOWN_AUTH_ERROR,{linkMethod:"email"})}}),[t?.email])}},yt=()=>{let{connectCoinbaseSmartWallet:e}=me();return{connectCoinbaseSmartWallet:e}},mt=()=>{let{connectBaseAccount:e}=me();return{connectBaseAccount:e}},ft=()=>{let{baseAccountSdk:e}=me();return{baseAccountSdk:e}},At=()=>{let{setModalData:e}=Te(),{openModal:r,privy:a,closePrivyModal:s}=me(),{user:n}=ke();return t((()=>({verify:async({standalone:t=!0}={standalone:!0})=>new Promise(((i,o)=>n?0===n.mfaMethods.length?i():(e((e=>({...e,mfaVerify:{onSuccess:async()=>{t?await s({shouldCallAuthOnSuccess:!1,isSuccess:!0}):X.setState({inProgressMfaFlow:void 0}),i()},onFailure:async e=>{t?await s({shouldCallAuthOnSuccess:!1,isSuccess:!1}):X.setState({inProgressMfaFlow:void 0}),o(e)},sendSmsCode:async()=>{throw Error("Not enabled")},verifySmsCode:async()=>{throw Error("Not enabled")},verifyTotpCode:async e=>{await a.fetchPrivyRoute(_e,{body:{code:e}})},generateOptions:async()=>q((await a.fetchPrivyRoute(Me,{body:{}})).options),verifyPasskey:async e=>{let t=await import("@simplewebauthn/browser"),r=await t.startAuthentication({optionsJSON:e});await a.fetchPrivyRoute(Oe,{body:{authenticator_response:G(r)}})}}}))),void(t?r("MfaAuthVerifyFlowScreen"):X.setState({inProgressMfaFlow:"auth"}))):o(Error("Must be logged in to verify MFA"))))})),[a,e,r,s])},kt=()=>{let e=pe(),{setModalData:r}=Te(),{verify:a}=At(),{openModal:s,privy:n,closePrivyModal:i,refreshSessionAndUser:o,setUser:l}=me();return t((()=>({enroll:async t=>new Promise(((c,d)=>{r({mfaEnroll:{onSuccess:async e=>{await i({shouldCallAuthOnSuccess:!1,isSuccess:!0}),c(e)},onFailure:async e=>{await i({shouldCallAuthOnSuccess:!1,isSuccess:!1}),d(e)},onBack:t?.onBack?async()=>{await i({shouldCallAuthOnSuccess:!1,isSuccess:!1}),d(Error("User canceled MFA enrollment flow.")),t.onBack?.()}:void 0,verify:()=>a({standalone:!1}),shouldUnlinkOnUnenrollMfa:!0,mfaMethods:e.mfa.methods,sendSmsCode:async()=>{throw Error("Not enabled")},enrollSms:async()=>{throw Error("Not enabled")},unenrollSms:async()=>{throw Error("Not enabled")},generateTotpSecret:async()=>await n.fetchPrivyRoute(He,{body:{}}),enrollTotp:async e=>{await n.fetchPrivyRoute(xe,{body:{code:e}});let t=await o();return l(t),t},unenrollTotp:async()=>{await n.fetchPrivyRoute(Fe,{body:{}});let e=await o();return l(e),e},enrollPasskey:async e=>{await n.fetchPrivyRoute(Ie,{body:{credential_ids:e,remove_for_login:!0}});let t=await o();return l(t),t}}}),s("MfaAuthEnrollmentFlowScreen")}))})),[n,r,s,i])},vt=()=>{let{startCrossAppAuthFlow:e,unlinkCrossAppAccount:t,signMessageWithCrossAppWallet:r,signTypedDataWithCrossAppWallet:a,sendTransactionWithCrossAppWallet:s,signTransactionWithCrossAppWallet:n}=ke();return{loginWithCrossAppAccount:({appId:t})=>e({appId:t,action:"login"}),linkCrossAppAccount:({appId:t})=>e({appId:t,action:"link"}),unlinkCrossAppAccount:t,signMessage:r,signTypedData:a,sendTransaction:s,signTransaction:n}};function St(e){let{sendTransaction:t}=n(Se);return Pe("sendTransaction",e),{sendTransaction:t}}function Tt(){let e=pe(),t=Re(),{client:r,setUser:a,setAuthenticated:s,setIsNewUser:n,initializeWalletProxy:i}=me(),{create:o}=Y();return{createGuestAccount:async()=>{if(!e.id||!r)throw Error("SDK not yet ready");r.startAuthFlow(new $(e.id));try{let l=await r.authenticate(),c=l.user,d=l.isNewUser??!1;if(!c)throw new ye("Unable to authenticate guest account");let u=await r.getAccessToken(),h=await i(ge);if(u&&h)try{let t=Z(c,e.embeddedWallets.ethereum.createOnLogin),r=ee(c,e.embeddedWallets.solana.createOnLogin);t&&r?(c=(await o({chainType:"ethereum",latestUser:c})).user,c=(await o({chainType:"solana",latestUser:c})).user):r?c=(await o({chainType:"solana",latestUser:c})).user:t?c=(await o({chainType:"ethereum",latestUser:c})).user:a(c)}catch(e){a(c),console.warn("Unable to create embedded wallet for guest account")}return n(d),s(!0),t("login","onComplete",{user:c,isNewUser:d,wasAlreadyAuthenticated:!1,loginMethod:"guest",loginAccount:null}),c}catch(e){throw t("login","onError",e.privyErrorCode||fe.UNKNOWN_AUTH_ERROR),e}}}}function Et(e){let{setWalletRecovery:t}=n(Se);return Pe("setWalletRecovery",e),{setWalletRecovery:t}}function Ut(e){let{signMessage:t}=n(Se);return Pe("signMessage",e),{signMessage:t}}const Wt=()=>{let{ready:e,wallets:t}=te(),{user:a}=ke(),{rpcConfig:s,chains:n,appId:i}=me();return{signAuthorization:r((async(r,o)=>{let l;if(!a)throw Error("User must be authenticated before signing with a Privy wallet");if(!e)throw Error("Wallets are not ready");let c=o?.address??Ee(a)?.address??De,d=t.find((e=>Le(e.address)===Le(c)));if(!d)throw Error("Signing wallet not found.");let u=r.chainId??Number(d.chainId.split(":")[1]);if(0===u)l={chainId:0,address:r.contractAddress,nonce:r.nonce??0};else{let e=n.find((e=>e.id===u));if(!e)throw Error("Error, chain not configured in PrivyProvider config");let t=je({account:c,chain:e,transport:Ke(re(e,s,i))});l=await t.prepareAuthorization({...r})}let h=await d.getEthereumProvider(),w=await h.request({method:"secp256k1_sign",params:[qe(l)]});return{...l,...ze(w)}}),[e,t,a,n])}};function Ct(e){let{signTypedData:t}=n(Se);return Pe("signTypedData",e),{signTypedData:t}}const Nt=async({wallet:e})=>{let t=await e.getEthereumProvider();return Je({address:e.address,sign:async({hash:r})=>{if("privy"!==e.walletClientType)throw new c({error:"Unprefixed signing is not supported by external wallets.",code:"unsupported_wallet_type"});return await t.request({method:"secp256k1_sign",params:[r]})},signMessage:async({message:r})=>await t.request({method:"personal_sign",params:[r,e.address]}),signTypedData:async r=>await t.request({method:"eth_signTypedData_v4",params:[e.address,r]}),signTransaction:async e=>await t.request({method:"eth_signTransaction",params:[e]})})},Pt=()=>{let{wallets:e}=te();return t((()=>({wrapFetchWithPayment:({walletAddress:t,fetch:r,maxValue:a=BigInt(1e5),paymentRequirementsSelector:s=Ve,config:n})=>{let i=t||e[0]?.address;if(!i)throw new Ge("No wallet available for payment");let o=e.find((e=>Ue(e.address,i)));if(!o)throw new Ge(`Wallet ${i} not found in connected wallets`);return async(e,t)=>{let i=await r(e,t);if(402!==i.status)return i;if(t?.__is402Retry)throw Error("Payment already attempted for this request");let{x402Version:l,accepts:c}=await i.json(),d=s(c,void 0,"exact");if(BigInt(d.maxAmountRequired)>a)throw new Ge("Payment amount exceeds maximum allowed");let u=await Nt({wallet:o}),h=await Be(u,l,d,n),w={...t,headers:{...t?.headers||{},"X-PAYMENT":h,"Access-Control-Expose-Headers":"X-PAYMENT-RESPONSE"},__is402Retry:!0};return await r(e,w)}}})),[e])},Rt=()=>{let{isModalOpen:e}=n(Se);return{isOpen:e}};function bt(e){let{getAccessToken:t}=n(Se);return Pe("accessToken",e),{getAccessToken:t}}function Ot(e){let{authenticated:t,user:r}=ke(),{initLoginWithOAuth:a}=me(),s=Re();return Pe("oAuthAuthorization",e),{reauthorize:e=>Mt(t,r,a,s,e.provider)}}let Mt=async(e,t,r,a,s)=>{if(!e)throw a("linkAccount","onError",fe.MUST_BE_AUTHENTICATED,{linkMethod:s}),new ye("User must be authenticated before linking an account.");if(!t?.linkedAccounts.some((e=>e.type.includes(s))))throw new ye(`OAuth account of type ${s} not linked to the account.`);await r(s)};function _t(e){let{client:t}=me(),[a,s]=i({status:"initial"});return{linkWithCustomJwt:r((async r=>{try{s({status:"initial"}),t.startAuthFlow(new ae(r)),s({status:"loading"});let{user:a}=await t.link();if(!a)throw Error("Error, user not found");let n=a.linkedAccounts.filter((e=>"custom_auth"===e.type)).sort(((e,t)=>t.latestVerifiedAt.getTime()-e.latestVerifiedAt.getTime())).at(0);return s({status:"done"}),e?.onSuccess?.({user:a,linkMethod:"custom",linkedAccount:n}),{user:a}}catch(r){throw s({status:"error",error:r}),e?.onError?.(r.privyErrorCode||fe.UNKNOWN_AUTH_ERROR,{linkMethod:"custom"}),r}}),[t.startAuthFlow,t.link]),state:a}}const It=e=>{let t=se();return Pe("customAuth",e),{status:t}};function Ft({isAuthenticated:e,isLoading:t,...a}){let n=o();s((()=>{t||n.current?.()}),[e,t]);let i=r((e=>(n.current=e,()=>{n.current=void 0})),[]);return ne({...a,subscribe:i})}function xt(){let{getFarcasterSignerPublicKey:e,signFarcasterMessage:t,requestFarcasterSignerFromWarpcast:r}=ke();return{getFarcasterSignerPublicKey:e,signFarcasterMessage:t,requestFarcasterSignerFromWarpcast:r}}const Ht=()=>{let{revokeDelegatedWallets:e,delegateWallet:t}=me();return{delegateWallet:async({address:e,chainType:r})=>await t({address:e,chainType:r,showDelegationUIs:!0}),revokeWallets:async()=>await e({showDelegationUIs:!0})}},Dt=()=>{let{user:e}=ke(),t=me(),{signWithUserSigner:r}=Xe(),a=async({wallet:a,additional_signers:s})=>{let n=await t.client.getAccessToken();if(!e||!n)throw new ye("User must be authenticated and have an embedded wallet to delegate actions.");if(!a.id)throw new ye("Wallet to add signers to must have ID on server");if(!t.walletProxy)throw new ye("Wallet proxy not initialized.");await h(t.privy,{wallet_id:a.id},r,{additional_signers:s})};return{addSessionSignersInternal:async({address:r,signers:s})=>{let n=await t.client.getAccessToken();if(!e||!n)throw new ye("User must be authenticated and have an embedded wallet to add a session signer.");let i=t.walletProxy??await t.initializeWalletProxy(15e3);if(!i)throw new ye("Wallet proxy not initialized.");let o=We(e,r);if(!o)throw new ye("Address to add signers too is not associated with current user.");if(Ce(o)){if(0===s.length)throw new ye("Must specify at least one signer to add.");let e=[...(await d(t.privy,{wallet_id:o.id})).additional_signers,...ie(s)];await a({wallet:o,additional_signers:e})}else{if(o.delegated)return{user:e};if(s.length>0)throw new ye("Specifying signers in addSessionSigners is only supported for TEE execution and this app uses On-device execution. Pass an empty array for signers instead. Learn more https://docs.privy.io/recipes/tee-wallet-migration-guide");let a=oe({address:r,user:e}),l=le({address:r,user:e});await t.recoverEmbeddedWallet({address:r}),await i.createDelegatedAction({accessToken:n,rootWallet:l,delegatedWallets:[a]})}let l=await t.refreshSessionAndUser();if(!l)throw Error("Could not refresh user");return{user:l}},removeSessionSignersInternal:async({address:r})=>{let s=await t.client.getAccessToken();if(!e||!s)throw new ye("User must be authenticated and have an embedded wallet to delegate actions.");if(!(t.walletProxy??await t.initializeWalletProxy(15e3)))throw new ye("Wallet proxy not initialized.");let n=We(e,r);if(!n)throw new ye("Address to remove signers from is not associated with current user.");Ce(n)?await a({wallet:n,additional_signers:[]}):await t.client.revokeDelegatedWallet();let i=await t.refreshSessionAndUser();if(!i)throw Error("Could not refresh user");return{user:i}}}},Lt=()=>{let{addSessionSignersInternal:e,removeSessionSignersInternal:t}=Dt();return{addSessionSigners:async({address:t,signers:r})=>e({address:t,signers:r}),removeSessionSigners:async({address:e})=>t({address:e})}},jt=()=>{let{addSessionSignersInternal:e,removeSessionSignersInternal:t}=Dt();return{addSigners:async({address:t,signers:r})=>e({address:t,signers:r}),removeSigners:async({address:e})=>t({address:e})}},Kt=()=>{let{signWithUserSigner:e}=Xe();return t((()=>({async generateAuthorizationSignature(t){let{targetAppId:r,...a}=t,{signature:s}=await w((async({message:t})=>e({message:t,targetAppId:r})),a);return{signature:s}}})),[e])},zt=()=>{let{setUser:e,client:t}=n(Ae),{user:a}=n(Se);return{user:a,refreshUser:r((async()=>{let r=await(t?.updateUserAndIdToken());return e(r??null),r}),[t,e])}},qt=e=>{let t=U(),{initLoginWithTelegram:a,loginWithTelegram:s,telegramAuthState:n,setTelegramAuthState:i}=me();return{login:r((async r=>{try{if(t.enabled&&"success"!==t.status)throw new C(t.error,null,fe.CAPTCHA_FAILURE);await a(t.token,r?.disableSignup);let{user:n,isNewUser:i,loginAccount:o,wasAlreadyAuthenticated:l}=await s({intent:"login"});e?.onComplete?.({user:n,isNewUser:i,wasAlreadyAuthenticated:l,loginMethod:"telegram",loginAccount:o})}catch(r){throw i({status:"error",error:r}),e?.onError?.(r.privyErrorCode||fe.UNKNOWN_AUTH_ERROR),r}}),[a,s,t]),state:n}},Vt=()=>{let{revokeDelegatedWallets:e,delegateWallet:t}=me();return{delegateWallet:async({address:e,chainType:r})=>await t({address:e,chainType:r,showDelegationUIs:!1}),revokeWallets:async()=>await e({showDelegationUIs:!1})}},Bt=ce;export{Bt as LoginModal,ce as PrivyModal,Ye as PrivyProvider,Qe as getAccessToken,Nt as toViemAccount,At as useAuthMfa,kt as useAuthMfaEnrollment,Kt as useAuthorizationSignature,ft as useBaseAccountSdk,mt as useConnectBaseAccount,yt as useConnectCoinbaseSmartWallet,ot as useConnectOrCreateWallet,vt as useCrossAppAccounts,It as useCustomAuth,Ht as useDelegatedActions,xt as useFarcasterSigner,et as useGetAccessTokenForProvider,Tt as useGuestAccounts,Vt as useHeadlessDelegatedActions,wt as useLinkAccount,_t as useLinkJwtAccount,nt as useLinkWithPasskey,lt as useLinkWithSiwe,ut as useLinkWithSiws,rt as useLoginWithEmail,Ze as useLoginWithFarcasterV2,tt as useLoginWithOAuth,st as useLoginWithPasskey,ct as useLoginWithSiwe,dt as useLoginWithSiws,it as useLoginWithSms,qt as useLoginWithTelegram,Rt as useModalStatus,Ot as useOAuthTokens,x as usePrivy,$e as useRecoverEmbeddedWallet,St as useSendTransaction,Lt as useSessionSigners,Et as useSetWalletRecovery,Wt as useSign7702Authorization,Ut as useSignMessage,ht as useSignTransaction,Ct as useSignTypedData,jt as useSigners,at as useSignupWithPasskey,Ft as useSubscribeToJwtAuthWithFlag,ne as useSyncJwtBasedAuthState,bt as useToken,pt as useUpdateAccount,gt as useUpdateEmail,zt as useUser,te as useWallets,Pt as useX402Fetch};
1
+ export{J as Captcha,K as ConnectorManager,aC as LoginModal,M as PrivyClient,aD as PrivyModal,I as PrivyProvider,j as errorIndicatesMaxMfaRetries,h as errorIndicatesMfaTimeout,g as errorIndicatesMfaVerificationFailed,O as getAccessToken,N as getIdentityToken,aE as toViemAccount,ad as useAuthMfa,ae as useAuthMfaEnrollment,ay as useAuthorizationSignature,ac as useBaseAccountSdk,ab as useConnectBaseAccount,aa as useConnectCoinbaseSmartWallet,a0 as useConnectOrCreateWallet,af as useCrossAppAccounts,ar as useCustomAuth,av as useDelegatedActions,au as useFarcasterSigner,U as useGetAccessTokenForProvider,ah as useGuestAccounts,aB as useHeadlessDelegatedActions,T as useIdentityToken,a7 as useLinkAccount,aq as useLinkJwtAccount,_ as useLinkWithPasskey,a1 as useLinkWithSiwe,a4 as useLinkWithSiws,X as useLoginWithEmail,Q as useLoginWithFarcasterV2,V as useLoginWithOAuth,Z as useLoginWithPasskey,a2 as useLoginWithSiwe,a3 as useLoginWithSiws,$ as useLoginWithSms,aA as useLoginWithTelegram,u as useMfa,d as useMfaEnrollment,aF as useMigrateWallets,an as useModalStatus,ap as useOAuthTokens,L as useRecoverEmbeddedWallet,a6 as useRegisterMfaListener,ag as useSendTransaction,aw as useSessionSigners,ai as useSetWalletRecovery,ak as useSign7702Authorization,aj as useSignMessage,a5 as useSignTransaction,al as useSignTypedData,ax as useSigners,Y as useSignupWithPasskey,at as useSubscribeToJwtAuthWithFlag,as as useSyncJwtBasedAuthState,ao as useToken,a8 as useUpdateAccount,a9 as useUpdateEmail,az as useUser,am as useX402Fetch}from"./index-DNz_w3-G.mjs";export{c as WalletConnector}from"./prepareFundingModalData-DjTxAoJ1.mjs";export{E as EthereumWalletConnector,C as useActiveWallet,A as useConnectWallet,B as useFundWallet,y as useLogin,z as useLogout}from"./useActiveWallet-RZ4w-uGq.mjs";export{u as useWallets}from"./useWallets-DlGuNtGR.mjs";export{h as useCreateWallet,i as useImportWallet,u as usePrivy}from"./usePrivy-Dj52a5sp.mjs";export{V as VERSION}from"./context-LVpDfP2H.mjs";export{DEFAULT_SUPPORTED_CHAINS as SUPPORTED_CHAINS,addPrivyRpcToChain,addRpcUrlOverrideToChain}from"@privy-io/js-sdk-core";export{g as getEmbeddedConnectedWallet}from"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import"react/jsx-runtime";import"react";import"uuid";import"jose";import"./get-is-unified-wallet-CNcx75Dp.mjs";import"viem";import"./internal-context-Z-fyxadS.mjs";import"ofetch";import"eventemitter3";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"react-device-detect";import"viem/utils";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"@scure/base";import"styled-components";import"./events-context-CI0iqAXA.mjs";import"zustand";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"./getPublicClient-B4uPLKn-.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"tinycolor2";
@@ -1 +1 @@
1
- import{FetchError as e}from"ofetch";import{useContext as t,createContext as s}from"react";var a;class i extends Error{toString(){return`${this.type}${this.privyErrorCode?`-${this.privyErrorCode}`:""}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}constructor(e,t,s){super(e),t instanceof Error&&(this.cause=t),this.privyErrorCode=s}}class n extends i{constructor(e,t,s,a,i,n){super(s,a,i),this.type=e,this.status=t,this.data=n}}class _ extends i{constructor(e,t,s){super(e,t,s),this.type="client_error"}}class r extends _{constructor(){super("Request timed out",void 0,"client_request_timeout")}}class o extends i{constructor(e,t,s){super(e,t,s),this.type="connector_error"}}const l=t=>{if(t instanceof i)return t;if(!(t instanceof e))return d(t);if(!t.response)return new n("api_error",null,t.message,t);let{type:s,message:a,error:_,code:r}=t.data;return new n(s||"ApiError",t.response.status,a||_,t,r,t.data)},d=e=>e instanceof i?e:e instanceof Error?new _(e.message,e):new _(`Internal error: ${e}`);var u=((a={}).OAUTH_ACCOUNT_SUSPENDED="oauth_account_suspended",a.MISSING_OR_INVALID_PRIVY_APP_ID="missing_or_invalid_privy_app_id",a.MISSING_OR_INVALID_PRIVY_ACCOUNT_ID="missing_or_invalid_privy_account_id",a.MISSING_OR_INVALID_TOKEN="missing_or_invalid_token",a.INVALID_DATA="invalid_data",a.INVALID_CAPTCHA="invalid_captcha",a.LINKED_TO_ANOTHER_USER="linked_to_another_user",a.CANNOT_LINK_MORE_OF_TYPE="cannot_link_more_of_type",a.FAILED_TO_LINK_ACCOUNT="failed_to_link_account",a.FAILED_TO_UPDATE_ACCOUNT="failed_to_update_account",a.USER_EXITED_UPDATE_FLOW="exited_update_flow",a.ALLOWLIST_REJECTED="allowlist_rejected",a.OAUTH_USER_DENIED="oauth_user_denied",a.OAUTH_UNEXPECTED="oauth_unexpected",a.UNKNOWN_AUTH_ERROR="unknown_auth_error",a.USER_EXITED_AUTH_FLOW="exited_auth_flow",a.USER_EXITED_LINK_FLOW="exited_link_flow",a.USER_EXITED_SET_PASSWORD_FLOW="user_exited_set_password_flow",a.MUST_BE_AUTHENTICATED="must_be_authenticated",a.UNKNOWN_CONNECT_WALLET_ERROR="unknown_connect_wallet_error",a.GENERIC_CONNECT_WALLET_ERROR="generic_connect_wallet_error",a.CLIENT_REQUEST_TIMEOUT="client_request_timeout",a.INVALID_CREDENTIALS="invalid_credentials",a.MISSING_MFA_CREDENTIALS="missing_or_invalid_mfa",a.UNKNOWN_MFA_ERROR="unknown_mfa_error",a.EMBEDDED_WALLET_ALREADY_EXISTS="embedded_wallet_already_exists",a.EMBEDDED_WALLET_NOT_FOUND="embedded_wallet_not_found",a.EMBEDDED_WALLET_CREATE_ERROR="embedded_wallet_create_error",a.UNKNOWN_EMBEDDED_WALLET_ERROR="unknown_embedded_wallet_error",a.EMBEDDED_WALLET_PASSWORD_UNCONFIRMED="embedded_wallet_password_unconfirmed",a.EMBEDDED_WALLET_PASSWORD_ALREADY_EXISTS="embedded_wallet_password_already_exists",a.EMBEDDED_WALLET_RECOVERY_ALREADY_EXISTS="embedded_wallet_recovery_already_exists",a.TRANSACTION_FAILURE="transaction_failure",a.UNSUPPORTED_CHAIN_ID="unsupported_chain_id",a.NOT_SUPPORTED="not_supported",a.CAPTCHA_TIMEOUT="captcha_timeout",a.INVALID_MESSAGE="invalid_message",a.UNABLE_TO_SIGN="unable_to_sign",a.CAPTCHA_FAILURE="captcha_failure",a.CAPTCHA_DISABLED="captcha_disabled",a.SESSION_STORAGE_UNAVAILABLE="session_storage_unavailable",a.TOO_MANY_REQUESTS="too_many_requests",a.USER_LIMIT_REACHED="max_accounts_reached",a.DISALLOWED_LOGIN_METHOD="disallowed_login_method",a.DISALLOWED_PLUS_EMAIL="disallowed_plus_email",a.PASSKEY_NOT_ALLOWED="passkey_not_allowed",a.USER_DOES_NOT_EXIST="user_does_not_exist",a.INSUFFICIENT_BALANCE="insufficient_balance",a.ACCOUNT_TRANSFER_REQUIRED="account_transfer_required",a.BUFFER_NOT_DEFINED="buffer_not_defined",a.UNSUPPORTED_WALLET_TYPE="unsupported_wallet_type",a.NO_SOLANA_ACCOUNTS="no_solana_accounts",a.UNKNOWN_FUNDING_ERROR="unknown_funding_error",a);class E extends _{constructor(){super("Method called before `ready`. Ensure you wait until `ready` is true before calling.")}}class c extends _{constructor(e="Embedded wallet error",t){super(e,t,"unknown_embedded_wallet_error")}}class A extends _{constructor(e="User must be authenticated"){super(e,void 0,"must_be_authenticated")}}class S extends _{constructor(e){super("This application is in development mode and must be upgraded to production to log in new users.",e,"max_accounts_reached")}}class T extends o{constructor(){super("No Solana accounts found in wallet",void 0,"no_solana_accounts")}}const h=()=>{throw Error("You need to wrap your application with the <PrivyProvider> initialized with your app id.")},N=e=>()=>{throw Error(e.trim())},p=()=>{},O=/*#__PURE__*/s({setAuthenticated:h,setUser:h,setIsNewUser:h,isNewUserThisSession:!1,walletConnectionStatus:null,setWalletConnectionStatus:h,connectors:[],rpcConfig:{rpcUrls:{}},showFiatPrices:!0,chains:[],clientAnalyticsId:null,pendingTransaction:null,client:null,privy:null,appId:"notAdded",onCustomAuthAuthenticated:h,hideWalletUIs:{current:!1},nativeTokenSymbolForChainId:h,initializeWalletProxy:h,getAuthMeta:h,getAuthFlow:h,closePrivyModal:h,openPrivyModal:h,connectWallet:h,initLoginWithWallet:h,loginWithWallet:h,initLoginWithFarcaster:h,loginWithFarcaster:h,loginWithCode:h,initLoginWithEmail:h,initLoginWithSms:h,initUpdateEmail:h,initUpdatePhone:h,resendEmailCode:h,resendSmsCode:h,initLoginWithHeadlessOAuth:h,loginWithHeadlessOAuth:h,crossAppAuthFlow:h,initLoginWithOAuth:h,loginWithOAuth:h,passkeyAuthState:{status:"initial"},setPasskeyAuthState:h,initSignupWithPasskey:h,signupWithPasskey:h,initLoginWithPasskey:h,loginWithPasskey:h,initLinkWithPasskey:h,linkWithPasskey:h,refreshSessionAndUser:h,walletProxy:null,createAnalyticsEvent:h,acceptTerms:h,getUsdTokenPrice:h,getUsdPriceForSol:h,getSplTokenMetadata:h,recoverEmbeddedWallet:h,updateWallets:h,fundWallet:h,openModal:h,setReadyToTrue:h,requestFarcasterSignerStatus:h,initLoginWithTelegram:h,loginWithTelegram:h,generateSiweMessage:h,generateSiweMessageForSmartWallet:h,loginWithSiwe:h,linkWithSiwe:h,linkSmartWallet:h,delegateWallet:h,revokeDelegatedWallets:h,connectCoinbaseSmartWallet:h,connectBaseAccount:h,initiateAccountTransfer:h,emailOtpState:{status:"initial"},setEmailOtpState:h,smsOtpState:{status:"initial"},setSmsOtpState:h,siweState:{status:"initial"},setSiweState:h,oAuthState:{status:"initial"},setOAuthState:h,telegramAuthState:{status:"initial"},setTelegramAuthState:h,isHeadlessOAuthLoading:!1,isHeadlessSigning:h,inProgressAuthFlowRef:{current:null},inProgressLoginOrLinkMethodRef:{current:null},baseAccountSdk:void 0,setBaseAccountSdk:h}),I=()=>t(O);export{O as I,_ as P,u as a,o as b,i as c,T as d,r as e,l as f,d as g,n as h,p as i,E as j,S as k,N as l,c as m,h as n,A as o,I as u};
1
+ import{FetchError as e}from"ofetch";import{useContext as t,createContext as s}from"react";var a;class i extends Error{toString(){return`${this.type}${this.privyErrorCode?`-${this.privyErrorCode}`:""}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}constructor(e,t,s){super(e),t instanceof Error&&(this.cause=t),this.privyErrorCode=s}}class n extends i{constructor(e,t,s,a,i,n){super(s,a,i),this.type=e,this.status=t,this.data=n}}class _ extends i{constructor(e,t,s){super(e,t,s),this.type="client_error"}}class r extends _{constructor(){super("Request timed out",void 0,"client_request_timeout")}}class o extends i{constructor(e,t,s){super(e,t,s),this.type="connector_error"}}const l=t=>{if(t instanceof i)return t;if(!(t instanceof e))return d(t);if(!t.response)return new n("api_error",null,t.message,t);let{type:s,message:a,error:_,code:r}=t.data;return new n(s||"ApiError",t.response.status,a||_,t,r,t.data)},d=e=>e instanceof i?e:e instanceof Error?new _(e.message,e):new _(`Internal error: ${e}`);var E=((a={}).OAUTH_ACCOUNT_SUSPENDED="oauth_account_suspended",a.MISSING_OR_INVALID_PRIVY_APP_ID="missing_or_invalid_privy_app_id",a.MISSING_OR_INVALID_PRIVY_ACCOUNT_ID="missing_or_invalid_privy_account_id",a.MISSING_OR_INVALID_TOKEN="missing_or_invalid_token",a.INVALID_DATA="invalid_data",a.INVALID_CAPTCHA="invalid_captcha",a.LINKED_TO_ANOTHER_USER="linked_to_another_user",a.CANNOT_LINK_MORE_OF_TYPE="cannot_link_more_of_type",a.FAILED_TO_LINK_ACCOUNT="failed_to_link_account",a.FAILED_TO_UPDATE_ACCOUNT="failed_to_update_account",a.USER_EXITED_UPDATE_FLOW="exited_update_flow",a.ALLOWLIST_REJECTED="allowlist_rejected",a.OAUTH_USER_DENIED="oauth_user_denied",a.OAUTH_UNEXPECTED="oauth_unexpected",a.UNKNOWN_AUTH_ERROR="unknown_auth_error",a.USER_EXITED_AUTH_FLOW="exited_auth_flow",a.USER_EXITED_LINK_FLOW="exited_link_flow",a.USER_EXITED_SET_PASSWORD_FLOW="user_exited_set_password_flow",a.MUST_BE_AUTHENTICATED="must_be_authenticated",a.UNKNOWN_CONNECT_WALLET_ERROR="unknown_connect_wallet_error",a.GENERIC_CONNECT_WALLET_ERROR="generic_connect_wallet_error",a.CLIENT_REQUEST_TIMEOUT="client_request_timeout",a.INVALID_CREDENTIALS="invalid_credentials",a.MISSING_MFA_CREDENTIALS="missing_or_invalid_mfa",a.UNKNOWN_MFA_ERROR="unknown_mfa_error",a.EMBEDDED_WALLET_ALREADY_EXISTS="embedded_wallet_already_exists",a.EMBEDDED_WALLET_NOT_FOUND="embedded_wallet_not_found",a.EMBEDDED_WALLET_CREATE_ERROR="embedded_wallet_create_error",a.UNKNOWN_EMBEDDED_WALLET_ERROR="unknown_embedded_wallet_error",a.EMBEDDED_WALLET_PASSWORD_UNCONFIRMED="embedded_wallet_password_unconfirmed",a.EMBEDDED_WALLET_PASSWORD_ALREADY_EXISTS="embedded_wallet_password_already_exists",a.EMBEDDED_WALLET_RECOVERY_ALREADY_EXISTS="embedded_wallet_recovery_already_exists",a.TRANSACTION_FAILURE="transaction_failure",a.UNSUPPORTED_CHAIN_ID="unsupported_chain_id",a.NOT_SUPPORTED="not_supported",a.CAPTCHA_TIMEOUT="captcha_timeout",a.INVALID_MESSAGE="invalid_message",a.UNABLE_TO_SIGN="unable_to_sign",a.CAPTCHA_FAILURE="captcha_failure",a.CAPTCHA_DISABLED="captcha_disabled",a.SESSION_STORAGE_UNAVAILABLE="session_storage_unavailable",a.TOO_MANY_REQUESTS="too_many_requests",a.USER_LIMIT_REACHED="max_accounts_reached",a.DISALLOWED_LOGIN_METHOD="disallowed_login_method",a.DISALLOWED_PLUS_EMAIL="disallowed_plus_email",a.PASSKEY_NOT_ALLOWED="passkey_not_allowed",a.USER_DOES_NOT_EXIST="user_does_not_exist",a.INSUFFICIENT_BALANCE="insufficient_balance",a.ACCOUNT_TRANSFER_REQUIRED="account_transfer_required",a.BUFFER_NOT_DEFINED="buffer_not_defined",a.UNSUPPORTED_WALLET_TYPE="unsupported_wallet_type",a.NO_SOLANA_ACCOUNTS="no_solana_accounts",a.UNKNOWN_FUNDING_ERROR="unknown_funding_error",a);class u extends _{constructor(){super("Method called before `ready`. Ensure you wait until `ready` is true before calling.")}}class c extends _{constructor(e="Embedded wallet error",t){super(e,t,"unknown_embedded_wallet_error")}}class A extends _{constructor(e="User must be authenticated"){super(e,void 0,"must_be_authenticated")}}class S extends _{constructor(e){super("This application is in development mode and must be upgraded to production to log in new users.",e,"max_accounts_reached")}}class T extends o{constructor(){super("No Solana accounts found in wallet",void 0,"no_solana_accounts")}}const h=()=>{throw Error("You need to wrap your application with the <PrivyProvider> initialized with your app id.")},N=e=>()=>{throw Error(e.trim())},p=()=>{},O=/*#__PURE__*/s({setAuthenticated:h,setUser:h,setIsNewUser:h,isNewUserThisSession:!1,walletConnectionStatus:null,setWalletConnectionStatus:h,connectors:[],rpcConfig:{rpcUrls:{}},showFiatPrices:!0,chains:[],clientAnalyticsId:null,pendingTransaction:null,client:null,privy:null,appId:"notAdded",hideWalletUIs:{current:!1},nativeTokenSymbolForChainId:h,initializeWalletProxy:h,getAuthMeta:h,getAuthFlow:h,closePrivyModal:h,openPrivyModal:h,connectWallet:h,initLoginWithWallet:h,loginWithWallet:h,initLoginWithFarcaster:h,loginWithFarcaster:h,loginWithCode:h,initLoginWithEmail:h,initLoginWithSms:h,initUpdateEmail:h,initUpdatePhone:h,resendEmailCode:h,resendSmsCode:h,initLoginWithHeadlessOAuth:h,loginWithHeadlessOAuth:h,crossAppAuthFlow:h,initLoginWithOAuth:h,loginWithOAuth:h,passkeyAuthState:{status:"initial"},setPasskeyAuthState:h,initSignupWithPasskey:h,signupWithPasskey:h,initLoginWithPasskey:h,loginWithPasskey:h,initLinkWithPasskey:h,linkWithPasskey:h,refreshSessionAndUser:h,walletProxy:null,createAnalyticsEvent:h,acceptTerms:h,getUsdTokenPrice:h,getUsdPriceForSol:h,getSplTokenMetadata:h,recoverEmbeddedWallet:h,updateWallets:h,fundWallet:h,openModal:h,setReadyToTrue:h,requestFarcasterSignerStatus:h,initLoginWithTelegram:h,loginWithTelegram:h,generateSiweMessage:h,generateSiweMessageForSmartWallet:h,loginWithSiwe:h,linkWithSiwe:h,linkSmartWallet:h,delegateWallet:h,revokeDelegatedWallets:h,connectCoinbaseSmartWallet:h,connectBaseAccount:h,initiateAccountTransfer:h,emailOtpState:{status:"initial"},setEmailOtpState:h,smsOtpState:{status:"initial"},setSmsOtpState:h,siweState:{status:"initial"},setSiweState:h,oAuthState:{status:"initial"},setOAuthState:h,telegramAuthState:{status:"initial"},setTelegramAuthState:h,isHeadlessOAuthLoading:!1,isHeadlessSigning:h,inProgressAuthFlowRef:{current:null},inProgressLoginOrLinkMethodRef:{current:null},baseAccountSdk:void 0,setBaseAccountSdk:h}),I=()=>t(O);export{O as I,o as P,_ as a,E as b,i as c,p as d,n as e,l as f,u as g,r as h,d as i,T as j,S as k,N as l,c as m,h as n,A as o,I as u};
@@ -1 +1 @@
1
- import{P as t,f as e,u as o,a as r}from"./internal-context-D4S2Sfvt.mjs";import{a7 as n}from"./paths-BzM95ysC.mjs";import{a as s}from"./context-i_OKSUqt.mjs";import{a as i}from"./events-context-CI0iqAXA.mjs";import"ofetch";import"react";import"react/jsx-runtime";import"@privy-io/js-sdk-core";import"tinycolor2";class a{async authenticate(){if(!this.api)throw new t("Auth flow has no API instance");try{return await this.api.post(n,{})}catch(t){throw e(t)}}async link(){throw new t("Linking is not supported for the SSO token flow")}constructor(){this.meta={}}}function c(){let e=s(),n=i(),{client:c,setUser:h,setAuthenticated:l,setIsNewUser:w}=o();return{loginWithSsoToken:async()=>{if(!e.id||!c)throw new t("SDK not yet ready");try{let e=new a;c.startAuthFlow(e);let o=await c.authenticate(),r=o.user,s=o.isNewUser??!1;if(!r)throw new t("Unable to authenticate with SSO response");return h(r),w(s),l(!0),n("login","onComplete",{user:r,isNewUser:s,wasAlreadyAuthenticated:!1,loginMethod:"sso",loginAccount:null}),r}catch(t){throw n("login","onError",t.privyErrorCode||r.UNKNOWN_AUTH_ERROR),t}}}}export{c as useLoginWithSsoToken};
1
+ import{a as t,f as e,u as o,b as r}from"./internal-context-Z-fyxadS.mjs";import{a7 as n}from"./paths-3HW55qZg.mjs";import{u as s}from"./context-LVpDfP2H.mjs";import{a as i}from"./events-context-CI0iqAXA.mjs";import"ofetch";import"react";import"react/jsx-runtime";import"@privy-io/js-sdk-core";import"tinycolor2";class a{async authenticate(){if(!this.api)throw new t("Auth flow has no API instance");try{return await this.api.post(n,{})}catch(t){throw e(t)}}async link(){throw new t("Linking is not supported for the SSO token flow")}constructor(){this.meta={}}}function c(){let e=s(),n=i(),{client:c,setUser:h,setAuthenticated:l,setIsNewUser:w}=o();return{loginWithSsoToken:async()=>{if(!e.id||!c)throw new t("SDK not yet ready");try{let e=new a;c.startAuthFlow(e);let o=await c.authenticate(),r=o.user,s=o.isNewUser??!1;if(!r)throw new t("Unable to authenticate with SSO response");return h(r),w(s),l(!0),n("login","onComplete",{user:r,isNewUser:s,wasAlreadyAuthenticated:!1,loginMethod:"sso",loginAccount:null}),r}catch(t){throw n("login","onError",t.privyErrorCode||r.UNKNOWN_AUTH_ERROR),t}}}}export{c as useLoginWithSsoToken};
@@ -1 +1 @@
1
- const a="/api/v1/sessions",s="/api/v1/sessions/logout",i="/api/v1/siwe/init",t="/api/v1/siwe/authenticate",e="/api/v1/siwe/link",p="/api/v1/siwe/link_smart_wallet",n="/api/v1/siwe/unlink",v="/api/v1/siwe/transfer",r="/api/v1/siws/init",o="/api/v1/siws/authenticate",u="/api/v1/siws/link",l="/api/v1/siws/unlink",c="/api/v1/siws/transfer",w="/api/v1/farcaster/init",k="/api/v1/farcaster/authenticate",m="/api/v1/farcaster/link",h="/api/v1/farcaster/status",_="/api/v1/farcaster/unlink",f="/api/v1/farcaster/transfer",d="api/v2/farcaster/init",g="api/v2/farcaster/authenticate",y="/api/v1/passwordless/init",b="/api/v1/passwordless/authenticate",j="/api/v1/passwordless/link",x="/api/v1/passwordless/unlink",q="/api/v1/passwordless/update",z="/api/v1/passwordless/transfer",A="/api/v1/passwordless_sms/init",B="/api/v1/passwordless_sms/link",C="/api/v1/passwordless_sms/unlink",D="/api/v1/passwordless_sms/authenticate",E="/api/v1/passwordless_sms/update",F="/api/v1/passwordless_sms/transfer",G="/api/v1/oauth/init",H="/api/v1/oauth/authenticate",I="/api/v1/oauth/link",J="/api/v1/oauth/unlink",K="/api/v1/oauth/transfer",L="/api/v1/recovery/oauth/init",M="/api/v1/recovery/oauth/init_icloud",N="/api/v1/recovery/oauth/authenticate",O="/api/v1/passkeys/link/init",P="/api/v1/passkeys/authenticate/init",Q="/api/v1/passkeys/register/init",R="/api/v1/passkeys/link",S="/api/v1/passkeys/authenticate",T="/api/v1/passkeys/register",U="/api/v1/telegram/authenticate",V="/api/v1/telegram/link",W="/api/v1/telegram/unlink",X="/api/v1/telegram/transfer",Y="/api/v1/sso/authenticate",Z="/api/v1/mfa/passwordless_sms/init",$="/api/v1/mfa/passkeys/init",aa="/api/v1/users/me/accept_terms",sa="/api/v1/analytics_events",ia="/api/v1/custom_jwt_account/authenticate",ta="/api/v1/custom_jwt_account/link",ea="/api/v1/guest/authenticate",pa="/api/v1/plugins/moonpay_on_ramp/sign",na="/api/v1/funding/coinbase_on_ramp/init",va="/api/v1/funding/coinbase_on_ramp/status",ra="/api/v1/wallets/revoke",oa="/api/v1/users/me",ua="/api/v1/scan/transaction";export{R as $,W as A,ra as B,pa as C,na as D,va as E,i as F,t as G,e as H,p as I,r as J,o as K,K as L,c as M,X as N,f as O,v as P,F as Q,z as R,u as S,oa as T,ua as U,k as V,m as W,w as X,h as Y,T as Z,S as _,s as a,Q as a0,P as a1,O as a2,U as a3,V as a4,d as a5,g as a6,Y as a7,N as a8,M as a9,L as aa,sa as b,ia as c,ta as d,j as e,y as f,ea as g,I as h,G as i,D as j,B as k,A as l,E as m,Z as n,H as o,b as p,$ as q,aa as r,a as s,x as t,q as u,C as v,n as w,l as x,J as y,_ as z};
1
+ const a="/api/v1/sessions",s="/api/v1/sessions/logout",i="/api/v1/siwe/init",t="/api/v1/siwe/authenticate",e="/api/v1/siwe/link",p="/api/v1/siwe/link_smart_wallet",n="/api/v1/siwe/unlink",v="/api/v1/siwe/transfer",r="/api/v1/siws/init",o="/api/v1/siws/authenticate",u="/api/v1/siws/link",l="/api/v1/siws/unlink",c="/api/v1/siws/transfer",w="/api/v1/farcaster/init",k="/api/v1/farcaster/authenticate",m="/api/v1/farcaster/link",h="/api/v1/farcaster/status",_="/api/v1/farcaster/unlink",f="/api/v1/farcaster/transfer",d="api/v2/farcaster/init",g="api/v2/farcaster/authenticate",y="/api/v1/passwordless/init",b="/api/v1/passwordless/authenticate",j="/api/v1/passwordless/link",x="/api/v1/passwordless/unlink",q="/api/v1/passwordless/update",z="/api/v1/passwordless/transfer",A="/api/v1/passwordless_sms/init",B="/api/v1/passwordless_sms/link",C="/api/v1/passwordless_sms/unlink",D="/api/v1/passwordless_sms/authenticate",E="/api/v1/passwordless_sms/update",F="/api/v1/passwordless_sms/transfer",G="/api/v1/oauth/init",H="/api/v1/oauth/authenticate",I="/api/v1/oauth/link",J="/api/v1/oauth/unlink",K="/api/v1/oauth/transfer",L="/api/v1/recovery/oauth/init",M="/api/v1/recovery/oauth/init_icloud",N="/api/v1/recovery/oauth/authenticate",O="/api/v1/passkeys/link/init",P="/api/v1/passkeys/authenticate/init",Q="/api/v1/passkeys/register/init",R="/api/v1/passkeys/link",S="/api/v1/passkeys/authenticate",T="/api/v1/passkeys/register",U="/api/v1/telegram/authenticate",V="/api/v1/telegram/link",W="/api/v1/telegram/unlink",X="/api/v1/telegram/transfer",Y="/api/v1/sso/authenticate",Z="/api/v1/mfa/passwordless_sms/init",$="/api/v1/mfa/passkeys/init",aa="/api/v1/users/me/accept_terms",sa="/api/v1/analytics_events",ia="/api/v1/custom_jwt_account/authenticate",ta="/api/v1/custom_jwt_account/link",ea="/api/v1/guest/authenticate",pa="/api/v1/plugins/moonpay_on_ramp/sign",na="/api/v1/funding/coinbase_on_ramp/init",va="/api/v1/funding/coinbase_on_ramp/status",ra="/api/v1/wallets/revoke",oa="/api/v1/users/me",ua="/api/v1/scan/transaction";export{v as $,s as A,sa as B,ea as C,Z as D,$ as E,aa as F,x as G,C as H,n as I,l as J,J as K,_ as L,W as M,ra as N,pa as O,na as P,va as Q,i as R,t as S,e as T,p as U,r as V,o as W,K as X,c as Y,X as Z,f as _,j as a,F as a0,z as a1,u as a2,oa as a3,ua as a4,d as a5,g as a6,Y as a7,N as a8,M as a9,L as aa,y as b,m as c,w as d,h as e,k as f,I as g,G as h,T as i,S as j,R as k,Q as l,P as m,O as n,H as o,b as p,D as q,B as r,A as s,E as t,q as u,U as v,V as w,ia as x,ta as y,a as z};
@@ -0,0 +1 @@
1
+ import{ProviderErrors as e,ConnectedStandardSolanaWallet as t,arbitrumSepolia as n,arbitrum as a,avalancheFuji as i,avalanche as s,baseSepolia as o,base as r,polygonAmoy as c,polygon as l,optimismSepolia as d,optimism as h,sepolia as u,mainnet as f}from"@privy-io/js-sdk-core";import{P as C,c as A,j as m,a as p}from"./internal-context-Z-fyxadS.mjs";import g from"eventemitter3";import{b as w,u as y}from"./context-LVpDfP2H.mjs";import{jsxs as b,jsx as E}from"react/jsx-runtime";class D extends C{constructor(){super("Wallet timeout"),this.type="wallet_error"}}const x=e=>e instanceof C?e:e?.code?new O(e):new C("Unknown connector error",e);class S extends A{constructor(e,t,n){super(e),this.type="provider_error",this.code=t,this.data=n}}class O extends S{constructor(t){super(t.message,t.code,t.data);let n=Object.values(e).find((e=>e.eipCode===t.code));this.details=n||e.UNKNOWN_ERROR,-32002===t.code&&(t.message?.includes("already pending for origin")?t.message?.includes("wallet_requestPermissions")?this.details=e.E32002_CONNECTION_ALREADY_PENDING:this.details=e.E32002_REQUEST_ALREADY_PENDING:t.message?.includes("Already processing")&&t.message.includes("eth_requestAccounts")&&(this.details=e.E32002_WALLET_LOCKED))}}const M={ERROR_USER_EXISTS:{message:"User already exists for this address",detail:"Try another address!",retryable:!1},ERROR_TIMED_OUT:{message:"Wallet request timed out",detail:"Please try connecting again.",retryable:!0},ERROR_WALLET_CONNECTION:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0},ERROR_USER_LIMIT_REACHED:{message:"Unable to link",detail:"You've reached the maximum number of linked wallets.",retryable:!1},...e};class R{get(e){let t=localStorage.getItem(e);return null===t?void 0:JSON.parse(t)}put(e,t){void 0!==t?localStorage.setItem(e,JSON.stringify(t)):this.del(e)}del(e){localStorage.removeItem(e)}getKeys(){return Object.entries(localStorage).map((([e])=>e))}}function T(){try{let e="privy:__session_storage__test",t=new R;return t.put(e,"blobby"),t.del(e),!0}catch(e){return!1}}var v="undefined"!=typeof window&&window.localStorage?new R:new class{get(e){return this._cache[e]}put(e,t){void 0!==t?this._cache[e]=t:this.del(e)}del(e){delete this._cache[e]}getKeys(){return Object.keys(this._cache)}constructor(){this._cache={}}};class N extends g{constructor(e){super(),this.walletClientType=e,this.connected=!1,this.initialized=!1}}const I=()=>{let e=v.get(w);return e&&Array.isArray(e)&&e.map((e=>(e=>e&&"string"==typeof e.address&&"string"==typeof e.connectorType&&"string"==typeof e.walletClientType&&"number"==typeof e.connectedAt)(e))).every(Boolean)?e:[]};let j=["phantom","glow","solflare","backpack","okx_wallet","walletconnect","mobile_wallet_adapter","jupiter"];function W(e){return e.toLowerCase().split(" ").join("_")}class F extends N{get isInstalled(){return!0}get wallet(){return this._wallet}buildConnectedWallet(){return this._wallet.accounts.map((e=>({type:"solana",provider:new t({wallet:this._wallet,account:e}),address:e.address,connectedAt:Date.now(),walletClientType:this._wallet.name,connectorType:this.connectorType,imported:!1,meta:{name:this._wallet.name,id:this._wallet.name,icon:this._wallet.icon},isConnected:async()=>this._wallet.accounts.length>0,disconnect:async()=>{await this.disconnect()}})))}async syncAccounts(){this.wallets=this.buildConnectedWallet(),this.emit("walletsUpdated")}get walletBranding(){return{id:L(this.wallet)?"walletconnect_solana":this.wallet.name,name:this.wallet.name,icon:this.wallet.icon}}async initialize(){this.subscribeListeners(),await this.syncAccounts(),this.shouldAttemptAutoConnect()&&(await(this.wallet.features["standard:connect"]?.connect({silent:!0}).catch((()=>{}))),await this.isConnected()&&await this.syncAccounts()),this.initialized=!0,this.emit("initialized")}async connect(e){if(e.showPrompt)try{await this.promptConnection()}catch(e){if(0===this._wallet.accounts.length)throw new m;throw e}if(!await this.isConnected())throw new m;return await this.syncAccounts(),this.getConnectedWallet()}async getConnectedWallet(){return this.wallets.sort(((e,t)=>t.connectedAt-e.connectedAt))[0]||null}async isConnected(){return this._wallet.accounts.length>0}subscribeListeners(){this._unsubscribeListeners=this.wallet.features["standard:events"]?.on("change",this.onChange)}unsubscribeListeners(){this._unsubscribeListeners?.()}shouldAttemptAutoConnect(){return!(!this.autoConnectEnabled||!j.includes(this.walletClientType))&&("phantom"!==this.walletClientType&&"metamask"!==this.walletClientType.toLowerCase()||I().some((({walletClientType:e})=>"phantom"===e||"metamask"===e.toLowerCase())))}constructor(e,t){super(W(L(e)?"walletconnect_solana":e.name)),this.chainType="solana",this.connectorType="solana_adapter",this.disconnect=async()=>{await(this.wallet.features["standard:disconnect"]?.disconnect().catch((e=>console.error("Error disconnecting",e)))),await this.syncAccounts()},this.promptConnection=async()=>{try{await(this.wallet.features["standard:connect"]?.connect())}catch(e){throw x(e)}},this.onChange=()=>{this.syncAccounts()},this._wallet=e,this.autoConnectEnabled=t,this.wallets=[]}}function L(e){return"isWalletConnectSolana"in e&&e.isWalletConnectSolana}const U=({style:e,...t})=>{let n=y();/*#__PURE__*/return b("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[/*#__PURE__*/E("rect",{width:"28",height:"28",rx:"3",fill:"dark"===n?.appearance.palette.colorScheme?"#3396ff":"#141414"}),/*#__PURE__*/E("g",{clipPath:"url(#clip0_1765_9946)",children:/*#__PURE__*/E("path",{d:"M8.09448 10.3941C11.3558 7.20196 16.6442 7.20196 19.9055 10.3941L20.2982 10.7782C20.3369 10.8157 20.3677 10.8606 20.3887 10.9102C20.4097 10.9599 20.4206 11.0132 20.4206 11.0671C20.4206 11.121 20.4097 11.1744 20.3887 11.224C20.3677 11.2737 20.3369 11.3186 20.2982 11.3561L18.9554 12.6702C18.9158 12.7086 18.8628 12.7301 18.8077 12.7301C18.7526 12.7301 18.6996 12.7086 18.66 12.6702L18.1198 12.1415C15.8448 9.91503 12.1557 9.91503 9.88015 12.1415L9.30167 12.7075C9.26207 12.7459 9.20909 12.7673 9.15395 12.7673C9.0988 12.7673 9.04582 12.7459 9.00622 12.7075L7.66346 11.3934C7.62475 11.3559 7.59397 11.3109 7.57295 11.2613C7.55193 11.2117 7.5411 11.1583 7.5411 11.1044C7.5411 11.0505 7.55193 10.9971 7.57295 10.9475C7.59397 10.8979 7.62475 10.8529 7.66346 10.8154L8.09448 10.3941ZM22.6829 13.1115L23.8776 14.2814C23.9163 14.319 23.9471 14.3639 23.9681 14.4135C23.9892 14.4632 24 14.5165 24 14.5704C24 14.6243 23.9892 14.6777 23.9681 14.7273C23.9471 14.777 23.9163 14.8219 23.8776 14.8594L18.4893 20.1332C18.4102 20.2101 18.3042 20.2531 18.1938 20.2531C18.0835 20.2531 17.9775 20.2101 17.8984 20.1332L14.0743 16.3901C14.0545 16.3708 14.0279 16.36 14.0003 16.36C13.9726 16.36 13.9461 16.3708 13.9263 16.3901L10.1021 20.1332C10.023 20.2101 9.91703 20.2531 9.8067 20.2531C9.69636 20.2531 9.59038 20.2101 9.51124 20.1332L4.12236 14.8594C4.08365 14.8219 4.05287 14.777 4.03185 14.7273C4.01083 14.6777 4 14.6243 4 14.5704C4 14.5165 4.01083 14.4632 4.03185 14.4135C4.05287 14.3639 4.08365 14.319 4.12236 14.2814L5.31767 13.1115C5.39678 13.0348 5.50265 12.9919 5.61285 12.9919C5.72305 12.9919 5.82892 13.0348 5.90803 13.1115L9.73216 16.8546C9.75194 16.874 9.7785 16.8848 9.80616 16.8848C9.83381 16.8848 9.86037 16.874 9.88015 16.8546L13.7043 13.1115C13.7834 13.0346 13.8894 12.9916 13.9997 12.9916C14.1101 12.9916 14.216 13.0346 14.2952 13.1115L18.1198 16.8546C18.1396 16.874 18.1662 16.8848 18.1938 16.8848C18.2215 16.8848 18.2481 16.874 18.2678 16.8546L22.092 13.1115C22.1711 13.0346 22.2771 12.9916 22.3874 12.9916C22.4977 12.9916 22.6037 13.0346 22.6829 13.1115Z",fill:"white"})}),/*#__PURE__*/E("defs",{children:/*#__PURE__*/E("clipPath",{id:"clip0_1765_9946",children:/*#__PURE__*/E("rect",{width:"20",height:"12.2531",fill:"white",transform:"translate(4 8)"})})})]})},_="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAHdElNRQfoDAIVODUC+w+GAAAGsUlEQVRYw6WXbYwWVxXHf+fOLAtCXYS2QJdIaClipGCTknXXNqBQMVHbfmhItH4Aral+IAEaG03UxJgYKQJGTUxtDWjaxDSNtcZqIGDwpRuW1oYiVqpdpZSlpC3qysu+PHPP3w/3mXnmeXZbPzjJZO7cefn/z/mfe865xlscq3dGDIguGiHLaMQVLja4s87FShcLo5jtApdddnHexUmHIy475JmdUkPRAQMu7gzT4ljnxJpdk0QPmMFkyAKN2OfOFpc2uuh1J3MZDrjAvXmVEQUuoosRxw642FcEG7IoDxiFxNiu8NYE+vcUYIFYRKKs113bXWx2Z34CoQZsVHOiCZ7mopdzdsFhv8NexEgRDHMxUSNREbh1bwNZwBsFblmfu/a4a6AEENYO5i3AOoEWeEUCF4MOOxBDMQAOk99OJALA2u80sBCwWGBZWG/yRwMaCAbBIAsQTJT3gea1OWfNeaPzvjoHEI85rA8ObtB1v7cIdJkIHgkh9AXpocy0LJjIKvB2wPpZB0v3wkrw5jdNEjeYeMhFX3BAyfn2ke9NUrgB9LrrcZcGJFCld4fWNddXbvbWfWzGR6xJFZsBGh0cBh3bBIxIEGTQ3W0h4NuDaSAzyAxCmGq11Vzf5uaa1aG8p+WFtrEYQGwvjICJkAEqvC+YNmcmMlMNvEaCdrcbyUvQAWDTjVuESHObM6cPGWHmzDwLaEtmzG9Z3qF1zUpXmuuZBb1z4bqeNC6f0WE1NtUTwHzEloiy3BvFisy0sYoLlQtT6XW15md2Qf9SY+2Ngfdca/TMSm/9ewz+/Boc/It45h/i4kSTsKw90SQJsPTvjSZbkWemDW7qTRZ0JEYJWSKxZJ7xmf6M224MzMzbX1s8F1YugjtvMg6eErt/4/z1jUrz1rXUKxnZC2zIg2mdBTK1mFUOKC1fOt/48kdzVixIz86Nij+eEacvpJWyZJ5xy7th8VzjjpuMJfMCW58QL73ekXPVlhsyE+vyzFiplJyauEIyrGIquruMq7qTxk+dcB495rzyTzFepCUWLIFv/kBg081Gd55WUk1IDGFTS89K++TDYxddzKnWcbluHd450xgdh7EGrOo1rr868PMTzqWJRGZ2d8oB/xpL33Xnxl2rjeNn4blXRXduzJ4B5y+28kWscAwXl+yeR654FFZPHoUb710YuPeDOUdPO48di1xptKpeEeHqOcYXNwQKGd88EDk3mqxtxPSfGRlsXRtYt8z4ytPOH/7eqpg1Aso7fYKgK4NPrMpYvsC4/poMA34yVJIQC3sCD9yecdsNyaV5yPj6ryJnR1PAvSNP4J+/1cgDfLbfePaMGGtM7Qdyl12WmKOmXgKKAp54vmBRTxfLrjE+tSYjBPjRM5FrrzIeuD2jf2lLzw8vN4JlfPVp581LsO1DgXv7jSzAiXPw/d+JiYLpjsu26Yfjf5O0rF5WoxsNT9G/bX0XKxakmPjlSee6HlizJJXSX7/oRDc+vjKR+f2wODcKd78/gR8/C9uedF44myJxmhh4OY/ipMQyqaWxmjn95TfEroMFOzbkvG+RceeqViPx1Aln1yEnOow1AnffHCpJAJ5/Vex4UvzptZRdY/O/1dJIS/NkcNmR6MTYah6qzseA4TfFtw4UvHBW1bc/O+7sPhwZHYf/jMODh5yfPudVbXj2TAJ/8XxrOZagNamj4Ei2/GNfuyRxh8t6BG2l15up+MIVODEiFr8rcPS0+O6RBF6mrrEGHHtFzOo2Lo7Dl37hvPQ6mNV6R9JYKgnYWcE37K5HlE2OT/5A0udaPUBHH+BQOMzuNsYLuDyZflTW+fTcmJFDHhJhaZqewMuewXDxcDR9IYyPN6Jj+6K4MF2vV8qBtZJScqVRNi6lpGONVJis5mpKi1WbgwsY+zIsBpcR8mzIZfuTRVZrtdu9odrptR/Xx5XONXJqBmCN0P6YMUQq9WJiwt0Je102WHdbpxSqydMObBWYdwDWLVcqcIMYe3NPjg0Ht84od0Ajju1w2XCr9e6QoqM9V23ZtnmI6cfAMMb9AY0YEHdb6oobEh4y3H3Ize6LsmGvN5IdUnhttdQ9UVrfLk/ljWEZ9wXsqAdQk1EA+O22GcgdZTke/bAs3OPY4HSdcB20HhvVtTMu0jmI8ekAhz2IICj2hKpNqI60NcuIRUHEej1quzubXa2tmZhenrfZmv3YYQ9ipDAIgvHptmblccuDjdRcmjFpWbDi/9ycZjZkRbk5jYztai/AUwiUx+qdEQB/m+25i9lxyvbcjrg45Lmd0uT/3p7/Fw6ODf+WO019AAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDI0LTEyLTAyVDIxOjU2OjQ4KzAwOjAwMVpslgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyNC0xMi0wMlQyMTo1Njo0OCswMDowMEAH1CoAAAAodEVYdGRhdGU6dGltZXN0YW1wADIwMjQtMTItMDJUMjE6NTY6NTMrMDA6MDDZv6GRAAAAAElFTkSuQmCC";function P(e){return["ethereum","solana"].includes(e.chainType)}function Y(e){let t=e.replace("eip155:","");if(t)return parseInt(t);throw Error("Chain ID not compatible with CAIP-2 format.")}const B=e=>e.filter((e=>"wallets"===e.method||("exchange"===e.method?"coinbase"===e.provider:"card"===e.method||"payment-request"===e.method?"coinbase"===e.provider||"moonpay"===e.provider:(e.method,!1)))),J={[f.id]:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",[u.id]:"0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238",[h.id]:"0x0b2c639c533813f4aa9d7837caf62653d097ff85",[d.id]:"0x5fd84259d66Cd46123540766Be93DFE6D43130D7",[l.id]:"0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",[c.id]:"0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582",[r.id]:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",[o.id]:"0x036CbD53842c5426634e7929541eC2318f3dCF7e",[s.id]:"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E",[i.id]:"0x5425890298aed601595a70ab815c96711a31bc65",[a.id]:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",[n.id]:"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d"},z=({address:e,appConfig:t,fundWalletConfig:n,methodScreen:a,chainIdOverride:i,comingFromSendTransactionScreen:s=!1,onComplete:o,onError:r})=>{let c,l;if(!t.fundingConfig)throw Error("Wallet funding is not enabled");let d=B(t.fundingConfig.options);if(d.length<1)throw Error("Wallet funding is not enabled");c=i||(n?.chain?n.chain.id:Y(t.fundingConfig.defaultRecommendedCurrency.chain));let h=t.chains.find((e=>e.id===c));if(!h)throw new p(`Funding chain ${c} is not in PrivyProvider chains list`);let u=n?.amount??t.fundingConfig.defaultRecommendedAmount,f=!1;function C(){if(!c)return;let e=J[c];d.find((e=>"wallets"===e.method))&&!e&&console.warn("Attempting to fund with USDC on chain where USDC address is not known. Funding via external wallet will be disabled."),l=e,f=!0}n&&"asset"in n?"USDC"===n.asset?C():"string"!=typeof n.asset&&"erc20"in n.asset&&(f=((e,t)=>e===J[t.id])(l=n.asset.erc20,h)):"USDC"===t.fundingConfig.defaultRecommendedCurrency.asset&&C();let A=n?.defaultFundingMethod;return{chainType:"ethereum",address:e,amount:u,chain:h,erc20Address:l,erc20ContractInfo:f?{symbol:"USDC",decimals:6}:void 0,isUSDC:f,methodScreen:a,supportedOptions:d,comingFromSendTransactionScreen:s,defaultFundingMethod:A,usingDefaultFundingMethod:!!A,preferredCardProvider:n?.card?.preferredProvider,crossChainBridgingEnabled:t.fundingConfig.crossChainBridgingEnabled??!1,solanaChain:"solana:mainnet",uiConfig:n&&"uiConfig"in n?n.uiConfig:void 0,externalSolanaFundingScreen:null,onComplete:o??(()=>{}),onError:r??(()=>{})}};function G({address:e,fundWalletConfig:t,appConfig:n,comingFromSendTransactionScreen:a,externalSolanaFundingScreen:i,methodScreen:s}){if(!n.fundingConfig)throw Error("Wallet funding is not enabled");let o=B(n.fundingConfig.options);if(o.length<1)throw Error("Wallet funding is not enabled");if("USDC"===t?.asset&&"solana:testnet"===t?.chain)throw Error("USDC funding is not supported on the Solana testnet");let r=t?.amount??n.fundingConfig.defaultRecommendedAmount,c=t?.defaultFundingMethod;return{chainType:"solana",address:e,supportedOptions:o,amount:r,isUSDC:"USDC"===t?.asset,methodScreen:s,comingFromSendTransactionScreen:a,chain:t?.chain||"solana:mainnet",crossChainBridgingEnabled:n.fundingConfig.crossChainBridgingEnabled??!1,defaultFundingMethod:c,preferredCardProvider:t?.card?.preferredProvider,usingDefaultFundingMethod:!!c,uiConfig:t?.uiConfig,externalSolanaFundingScreen:i,onComplete:()=>{},onError:()=>{}}}export{M as C,O as P,F as S,_ as W,B as a,T as b,N as c,D as d,Y as e,x as f,G as g,U as h,P as i,S as j,I as l,z as p,W as t,v as u};
@@ -0,0 +1 @@
1
+ import{useEffect as t}from"react";import{a as e,b as a}from"./internal-context-Z-fyxadS.mjs";const r=792703809,s="11111111111111111111111111111111",n="EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v";let i="0x0000000000000000000000000000000000000000";const o=({appId:t,originCurrency:e,destinationCurrency:a,...r})=>({tradeType:"EXPECTED_OUTPUT",originCurrency:e??i,destinationCurrency:a??i,referrer:`privy|${t}`,...r});let c="https://api.relay.link",l="https://api.testnets.relay.link";const u=async({input:t,isTestnet:e})=>{let a=await fetch((e?l:c)+"/quote",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),r=await a.json();if(!(a.ok||"string"==typeof r.message&&r.message.startsWith("Invalid address")))throw console.error("Relay error:",r),Error(r.message??"Error fetching quote from relay");return r},d=t=>{let e=t.steps[0]?.items?.[0];if(e)return{from:e.data.from,to:e.data.to,value:Number(e.data.value),chainId:Number(e.data.chainId),data:e.data.data}};async function y({transactionHash:t,isTestnet:e}){let a=await fetch((e?l:c)+"/requests/v2?hash="+t),r=await a.json();if(!a.ok){if("message"in r&&"string"==typeof r.message)throw Error(r.message);throw Error("Error fetching request from relay")}return r.requests.at(0)?.status??"pending"}function f({transactionHash:e,isTestnet:a,bridgingStatus:r,setBridgingStatus:s,onSuccess:n,onFailure:i}){t((()=>{if(e&&r){if(["delayed","waiting","pending"].includes(r)){let t=setInterval((async()=>{try{let t=await y({transactionHash:e,isTestnet:a});s(t)}catch(t){console.error(t)}}),1e3);return()=>clearInterval(t)}"success"===r?n({transactionHash:e}):["refund","failure"].includes(r)&&i({error:new h(e,a)})}}),[r,e,a])}class h extends e{constructor(t,e){super("We were unable to complete the bridging transaction. Funds will be refunded on your wallet.",void 0,a.TRANSACTION_FAILURE),this.relayLink=e?`https://testnets.relay.link/transaction/${t}`:`https://relay.link/transaction/${t}`}}export{h as R,s as a,r as b,d as c,n as d,u as g,o as t,f as u};
@@ -1,4 +1,4 @@
1
- import r from"@heroicons/react/24/outline/ArrowPathIcon";import e from"@heroicons/react/24/outline/EyeIcon";import o from"@heroicons/react/24/outline/EyeSlashIcon";import{styled as i,css as t}from"styled-components";import{P as a,a as n}from"./ModalHeader-cnW8OaHH.mjs";let l=t`
1
+ import r from"@heroicons/react/24/outline/ArrowPathIcon";import e from"@heroicons/react/24/outline/EyeIcon";import o from"@heroicons/react/24/outline/EyeSlashIcon";import{styled as i,css as t}from"styled-components";import{P as a,a as n}from"./ModalHeader-rCMpqA2a.mjs";let l=t`
2
2
  font-size: 14px;
3
3
  font-style: normal;
4
4
  font-weight: 400;
@@ -0,0 +1 @@
1
+ import{s as e,k as s}from"./index-DNz_w3-G.mjs";const a=(a,n)=>e(a,n.ethereum.createOnLogin)||s(a,n.solana.createOnLogin);export{a as s};
@@ -0,0 +1 @@
1
+ import{useRef as e,useState as t,useCallback as n}from"react";import{http as r,createPublicClient as a}from"viem";import{a as i,u as s,c as o,b as l}from"./get-is-unified-wallet-CNcx75Dp.mjs";import{u as c}from"./context-LVpDfP2H.mjs";import{u as d,a as u}from"./internal-context-Z-fyxadS.mjs";import{u as m,g as p}from"./useWallets-DlGuNtGR.mjs";import{a as y}from"./getPublicClient-B4uPLKn-.mjs";import{a as g}from"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import{createSmartAccountClient as f}from"permissionless";import{toThirdwebSmartAccount as h,toLightSmartAccount as w,toBiconomySmartAccount as P,toKernelSmartAccount as I,toSafeSmartAccount as W}from"permissionless/accounts";import{createPimlicoClient as v}from"permissionless/clients/pimlico";import{entryPoint07Address as F,entryPoint06Address as x,toCoinbaseSmartAccount as S}from"viem/account-abstraction";import{THIRDWEB as C,COINBASE_SMART_WALLET as G,LIGHT_ACCOUNT as T,BICONOMY as b,KERNEL as U,SAFE as M}from"@privy-io/js-sdk-core";let O={address:x,version:"0.6"},V={address:F,version:"0.7"},A=({owner:e,smartWalletType:t,smartWalletVersion:n,publicClient:r})=>{switch(t){case M:return W({client:r,entryPoint:V,owners:[e],version:"1.4.1"});case U:return I({client:r,version:"0.3.1",entryPoint:V,useMetaFactory:"optional",owners:[e]});case b:return P({client:r,owners:[e],entryPoint:O});case T:return w({client:r,entryPoint:O,owner:e,version:"1.1.0"});case G:return async function({client:e,owner:t,version:n}){let[r]=await t.request({method:"eth_accounts"});if(!r)throw Error("Unable to request embedded owner for eth_accounts");return await S({client:e,owners:[{type:"local",source:"privy",address:r,sign:async({hash:e})=>await t.request({method:"secp256k1_sign",params:[e]})}],version:n})}({client:r,owner:e,version:n??"1"});case C:return h({client:r,entryPoint:V,owner:e});default:throw Error(`Invalid smart account type: ${t}.`)}};const D=({calls:e,chain:t,maxPriorityFeePerGas:n,maxFeePerGas:r,nonce:a})=>e.map((e=>({to:e.to||void 0,data:e.data,value:e.value,chainId:t.id,nonce:a,maxFeePerGas:r,maxPriorityFeePerGas:n}))),E=async({chain:e,paymasterContext:t,account:n,signer:i,user:s,smartWalletsConfig:o,rpcConfig:l,privyAppId:c})=>{if(!(o?.enabled&&s&&n&&i))return;let d=o?.configuredNetworks.find((t=>t.chainId===`eip155:${e.id}`));if(!d)throw new u(`The chain ${e.name} (eip155:${e.id}) must be configured in the smart wallet configuration in your dashboard`);let m=s.smartWallet?s.smartWallet.smartWalletType:o.smartWalletType,p=s.smartWallet?s.smartWallet.smartWalletVersion:o.smartWalletVersion,g=y(e,l,c),h=a({chain:e,transport:r(g)}),w=t??d.paymasterContext,P=await(async({owner:e,smartWalletType:t,smartWalletVersion:n,chain:a,publicClient:i,bundlerUrl:s,paymasterUrl:o,paymasterContext:l})=>{let c=await A({owner:e,smartWalletType:t,publicClient:i,smartWalletVersion:n}),d=v({transport:r(s),entryPoint:c.entryPoint}),u=o?v({transport:r(o),entryPoint:c.entryPoint}):void 0;return f({account:c,chain:a,paymaster:u,paymasterContext:l,bundlerTransport:r(s),userOperation:{estimateFeesPerGas:async()=>{if(["public.pimlico.io","api.pimlico.io"].some((e=>s.includes(e))))return await d.getUserOperationGasPrice().then((e=>e.fast));if(["rpc.zerodev.app"].some((e=>s.includes(e))))return(await d.request({method:"zd_getUserOperationGasPrice",params:[]})).fast;if(["g.alchemy.com"].some((e=>s.includes(e)))){let[e,t]=await Promise.all([i.getBlock({blockTag:"latest"}),d.request({method:"rundler_maxPriorityFeePerGas",params:[]})]);if(!e.baseFeePerGas||!t)throw Error("Failed to get block or maxPriorityFeePerGasEstimate");return{maxFeePerGas:150n*e.baseFeePerGas/100n+BigInt(t.toString()),maxPriorityFeePerGas:BigInt(t.toString())}}{let e=await i.estimateFeesPerGas(),t=s.includes("api.developer.coinbase.com")?175n:150n;return{...e,maxFeePerGas:e.maxFeePerGas*t/100n,maxPriorityFeePerGas:e.maxPriorityFeePerGas*t/100n}}}}})})({owner:i,smartWalletType:m,smartWalletVersion:p,chain:e,publicClient:h,paymasterContext:w,...d});if(!P)throw new u(`Failed to create smart wallet client for chain ${e.name} (eip155:${e.id})`);return P},q=({clientConfig:r,smartWalletsConfig:a})=>{let{hideWalletUIs:y,openPrivyModal:f,appId:h,isHeadlessSigning:w}=d(),P=c(),{setModalData:I}=i(),{user:W}=s(),{chains:v}=c(),{chainId:F,clients:x,setChainId:S,chainIdState:C}=(()=>{let n=e(),[r,a]=t();return{clients:e({}),setChainId:e=>{n.current=e,a(e)},chainId:n,chainIdState:r}})(),G=v.find((e=>e.id===C)),{wallets:T}=m(),b=o(W),U=g(T,b?.address),M=!!b&&l(b),O=n((async()=>F.current),[F]),V=n((async({id:e})=>{if(!x.current[e]){let t=await E({chain:v.find((t=>t.id===e)),account:b,signer:await(U?.getEthereumProvider()),user:W,paymasterContext:r?.paymasterContext,smartWalletsConfig:a,rpcConfig:P.rpcConfig,privyAppId:h});t&&(x.current[e]=t)}S(e)}),[v,r,T,W,a]);return{wrapSmartAccountClient:e=>{x.current[e.chain.id]=e,C||S(e.chain.id);return{...e,sendTransaction:async(e,t)=>{let n=x.current[F.current];if(!n)throw new u(`Smart wallet client for chain (eip155:${F.current}) not found`);if(delete e.account,w({showWalletUIs:t?.uiOptions?.showWalletUIs}))return y.current=!0,await n.sendTransaction(e).finally((()=>y.current=!1));let r=[];"calls"in e&&void 0!==e.calls?r=[...e.calls]:"to"in e&&(r=[{to:e.to,value:e.value||BigInt(0),data:e.data||"0x"}]);let a=async()=>{let{paymasterAndData:t,paymasterData:a,maxFeePerGas:i,maxPriorityFeePerGas:s}=await n.prepareUserOperation({calls:r,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0});return 0===Number(i)&&0===Number(s)||Number(t??a??0)>0};return new Promise((async(i,s)=>{y.current=!0;let{entropyId:o,entropyIdVerifier:l}=p(W);I({connectWallet:{recoveryMethod:b.recoveryMethod,connectingWalletAddress:b.address,isUnifiedWallet:M,entropyId:o,entropyIdVerifier:l,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:D({calls:r,chain:n.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),transactingWalletIndex:0,transactingWalletAddress:n.account.address,entropyId:o,entropyIdVerifier:l,getIsSponsored:a,signOnly:!1,onConfirm:()=>n.sendTransaction(e),onSuccess:e=>i(e.hash),onFailure:s,uiOptions:t?.uiOptions??{}}}),f("EmbeddedWalletConnectingScreen")})).finally((()=>{y.current=!1}))},signMessage:async(e,t)=>{let n=x.current[F.current];if(!n)throw new u(`Smart wallet client for chain (eip155:${F.current}) not found`);return w({showWalletUIs:t?.uiOptions?.showWalletUIs})?(y.current=!0,await n.signMessage(e).finally((()=>y.current=!1))):new Promise((async(r,a)=>{let{entropyId:i,entropyIdVerifier:s}=p(W);y.current=!0,I({connectWallet:{recoveryMethod:b.recoveryMethod,connectingWalletAddress:b.address,isUnifiedWallet:M,entropyId:i,entropyIdVerifier:s,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"personal_sign",data:"string"==typeof e.message?e.message:e.message.raw.toString(),confirmAndSign:()=>n.signMessage(e),onSuccess:e=>r(e),onFailure:a,uiOptions:t?.uiOptions??{}}}),f("EmbeddedWalletConnectingScreen")})).finally((()=>{y.current=!1}))},signTypedData:async(e,t)=>{let n=x.current[F.current];if(!n)throw new u(`Smart wallet client for chain (eip155:${F.current}) not found`);return delete e.account,w({showWalletUIs:t?.uiOptions?.showWalletUIs})?(y.current=!0,await n.signTypedData(e).finally((()=>y.current=!1))):new Promise((async(r,a)=>{y.current=!0;let{entropyId:i,entropyIdVerifier:s}=p(W);I({connectWallet:{recoveryMethod:b.recoveryMethod,connectingWalletAddress:b.address,isUnifiedWallet:M,entropyId:i,entropyIdVerifier:s,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:e,confirmAndSign:()=>n.signTypedData(e),onSuccess:e=>r(e),onFailure:a,uiOptions:t?.uiOptions??{}}}),f("EmbeddedWalletConnectingScreen")})).finally((()=>{y.current=!1}))},getChainId:O,chain:G,switchChain:V}}}},N=()=>{let{hideWalletUIs:e,openPrivyModal:t,isHeadlessSigning:n}=d(),{setModalData:r}=i(),{user:a}=s(),c=o(a),u=!!c&&l(c);return{wrapSmartAccountClientWithUIs:i=>({...i,sendTransaction:async(s,o)=>{if(n({showWalletUIs:o?.uiOptions?.showWalletUIs}))return e.current=!0,await i.sendTransaction(s).finally((()=>e.current=!1));let l=[];"calls"in s&&void 0!==s.calls?l=[...s.calls]:"to"in s&&(l=[{to:s.to,value:s.value||BigInt(0),data:s.data||"0x"}]);let d=async()=>{if(!i.paymaster)return!1;let{paymasterData:e,paymasterAndData:t}=await i.prepareUserOperation({calls:l,maxFeePerGas:s.maxFeePerGas,maxPriorityFeePerGas:s.maxPriorityFeePerGas,nonce:s.nonce?BigInt(s.nonce):void 0});return Number(t??e??0)>0};return new Promise((async(n,m)=>{e.current=!0;let{entropyId:y,entropyIdVerifier:g}=p(a);r({connectWallet:{recoveryMethod:c.recoveryMethod,connectingWalletAddress:c.address,isUnifiedWallet:u,entropyId:y,entropyIdVerifier:g,onCompleteNavigateTo:"SendTransactionScreen",onFailure:()=>{}},sendTransaction:{transactionRequests:D({calls:l,chain:i.chain,maxPriorityFeePerGas:s.maxPriorityFeePerGas,maxFeePerGas:s.maxFeePerGas,nonce:s.nonce?BigInt(s.nonce):void 0}),transactingWalletIndex:0,transactingWalletAddress:i.account.address,entropyId:y,entropyIdVerifier:g,getIsSponsored:d,signOnly:!1,onConfirm:()=>i.sendTransaction(s),onSuccess:e=>n(e.hash),onFailure:m,uiOptions:o?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1}))},signMessage:async(s,o)=>n({showWalletUIs:o?.uiOptions?.showWalletUIs})?(e.current=!0,await i.signMessage(s).finally((()=>e.current=!1))):new Promise((async(n,l)=>{let{entropyId:d,entropyIdVerifier:m}=p(a);e.current=!0,r({connectWallet:{recoveryMethod:c.recoveryMethod,connectingWalletAddress:c.address,isUnifiedWallet:u,entropyId:d,entropyIdVerifier:m,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"personal_sign",data:"string"==typeof s.message?s.message:s.message.raw.toString(),confirmAndSign:()=>i.signMessage(s),onSuccess:e=>n(e),onFailure:l,uiOptions:o?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1})),signTypedData:async(s,o)=>n({showWalletUIs:o?.uiOptions?.showWalletUIs})?(e.current=!0,await i.signTypedData(s).finally((()=>e.current=!1))):new Promise((async(n,l)=>{e.current=!0;let{entropyId:d,entropyIdVerifier:m}=p(a);r({connectWallet:{recoveryMethod:c.recoveryMethod,connectingWalletAddress:c.address,isUnifiedWallet:u,entropyId:d,entropyIdVerifier:m,onCompleteNavigateTo:"SignRequestScreen",onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:s,confirmAndSign:()=>i.signTypedData(s),onSuccess:e=>n(e),onFailure:l,uiOptions:o?.uiOptions??{}}}),t("EmbeddedWalletConnectingScreen")})).finally((()=>{e.current=!1}))})}};export{q as a,D as c,E as g,N as u};
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useContext as t,createContext as i,useState as r,useEffect as a}from"react";import{u as n,g as o}from"./get-is-unified-wallet-Bon2jknh.mjs";import{a as s}from"./context-i_OKSUqt.mjs";import{u as l,P as m,n as c}from"./internal-context-D4S2Sfvt.mjs";import{a as p}from"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import{u as d,g as u,a as g}from"./smart-wallets-BNt96zAq.mjs";import{o as f}from"./private-privy-provider-B2_rZ8aq.mjs";import"viem";import"@privy-io/js-sdk-core";import"tinycolor2";import"ofetch";import"permissionless";import"permissionless/accounts";import"permissionless/clients/pimlico";import"viem/account-abstraction";import"mipd";import"react-device-detect";import"viem/utils";import"@privy-io/popup";import"./paths-BzM95ysC.mjs";import"@scure/base";import"uuid";import"jose";import"eventemitter3";import"zustand";import"@coinbase/wallet-sdk";import"@walletconnect/ethereum-provider";import"js-cookie";import"styled-components";import"./events-context-CI0iqAXA.mjs";import"@headlessui/react";import"@privy-io/ethereum";import"@privy-io/urls";let h=/*#__PURE__*/i({client:void 0,getClientForChain:c});const C=({config:t,children:i})=>/*#__PURE__*/e(w,{config:t,children:/*#__PURE__*/e(W,{children:i})}),v=()=>{let{client:e,getClientForChain:i}=t(h);return{client:e,getClientForChain:i}};let w=({config:t,children:i})=>{let{appId:c}=l(),{chains:g,defaultChain:h,rpcConfig:C,smartWallets:v}=s(),{wallets:w}=f(),{user:W}=n(),[j,F]=r(),{wrapSmartAccountClientWithUIs:b}=d(),x=o(W),I=p(w,x?.address);a((()=>{(async()=>{if(!v?.enabled)return;let e=v.configuredNetworks.find((e=>e.chainId===`eip155:${h.id}`))?h:g.find((e=>v.configuredNetworks.map((e=>e.chainId)).includes(`eip155:${e.id}`)));if(!e)throw new m("Could not find smart wallets chain configurations for any Privy client configured chains. Please configure smart wallets for your chains in the Privy dashboard.");F(await u({chain:e,privyAppId:c,paymasterContext:t?.paymasterContext,rpcConfig:C,account:x,signer:await(I?.getEthereumProvider()),user:W,smartWalletsConfig:v}))})()}),[!!v?.enabled,!!W?.smartWallet,!!I,!!x]);/*#__PURE__*/return e(y.Provider,{value:{client:j,config:t,getClientForChain:async({id:e})=>{let i=await u({chain:g.find((t=>t.id===e)),privyAppId:c,paymasterContext:t?.paymasterContext,rpcConfig:C,account:x,signer:await(I?.getEthereumProvider()),user:W,smartWalletsConfig:v});if(!i)throw new m(`Failed to create smart wallet client for chain id: ${e}`);return b(i)}},children:i})},y=/*#__PURE__*/i({client:void 0,config:void 0,getClientForChain:c}),W=({children:i})=>{let{smartWallets:r}=s(),{client:o,config:m,getClientForChain:c}=(()=>{let{client:e,config:i,getClientForChain:r}=t(y);return{client:e,config:i,getClientForChain:r}})(),{wrapSmartAccountClient:p}=g({clientConfig:m,smartWalletsConfig:r}),{user:d}=n(),{generateSiweMessageForSmartWallet:u,linkSmartWallet:f,hideWalletUIs:C}=l();return a((()=>{(async()=>{if(o&&d&&!d?.smartWallet&&r?.enabled)try{let e=await u({address:o.account.address,chainId:`eip155:${o.chain.id}`});C.current=!0;let t=await o.signMessage({message:e});await f({signature:t,message:e,smartWalletType:r.smartWalletType,smartWalletVersion:r.smartWalletVersion})}catch(e){console.error("Error creating smart wallet:",e)}finally{C.current=!1}})()}),[!!o,!!d?.smartWallet,!!r?.enabled]),/*#__PURE__*/e(h.Provider,{value:{client:d?.smartWallet&&o?p(o):void 0,getClientForChain:c},children:i})};export{C as SmartWalletsProvider,v as useSmartWallets};
1
+ import{jsx as e}from"react/jsx-runtime";import{useContext as t,createContext as i,useState as r,useEffect as a}from"react";import{u as n,c as l}from"./get-is-unified-wallet-CNcx75Dp.mjs";import{u as s}from"./context-LVpDfP2H.mjs";import{u as o,a as c,n as m}from"./internal-context-Z-fyxadS.mjs";import{a as d}from"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import{u as p,g,a as f}from"./smart-wallets-9LKzbfWj.mjs";import{u}from"./useWallets-DlGuNtGR.mjs";import"viem";import"@privy-io/js-sdk-core";import"tinycolor2";import"ofetch";import"./getPublicClient-B4uPLKn-.mjs";import"permissionless";import"permissionless/accounts";import"permissionless/clients/pimlico";import"viem/account-abstraction";let h=/*#__PURE__*/i({client:void 0,getClientForChain:m});const C=({config:t,children:i})=>/*#__PURE__*/e(y,{config:t,children:/*#__PURE__*/e(v,{children:i})}),w=()=>{let{client:e,getClientForChain:i}=t(h);return{client:e,getClientForChain:i}};let y=({config:t,children:i})=>{let{appId:m}=o(),{chains:f,defaultChain:h,rpcConfig:C,smartWallets:w}=s(),{wallets:y}=u(),{user:v}=n(),[F,j]=r(),{wrapSmartAccountClientWithUIs:b}=p(),x=l(v),I=d(y,x?.address);a((()=>{(async()=>{if(!w?.enabled)return;let e=w.configuredNetworks.find((e=>e.chainId===`eip155:${h.id}`))?h:f.find((e=>w.configuredNetworks.map((e=>e.chainId)).includes(`eip155:${e.id}`)));if(!e)throw new c("Could not find smart wallets chain configurations for any Privy client configured chains. Please configure smart wallets for your chains in the Privy dashboard.");j(await g({chain:e,privyAppId:m,paymasterContext:t?.paymasterContext,rpcConfig:C,account:x,signer:await(I?.getEthereumProvider()),user:v,smartWalletsConfig:w}))})()}),[!!w?.enabled,!!v?.smartWallet,!!I,!!x]);/*#__PURE__*/return e(W.Provider,{value:{client:F,config:t,getClientForChain:async({id:e})=>{let i=await g({chain:f.find((t=>t.id===e)),privyAppId:m,paymasterContext:t?.paymasterContext,rpcConfig:C,account:x,signer:await(I?.getEthereumProvider()),user:v,smartWalletsConfig:w});if(!i)throw new c(`Failed to create smart wallet client for chain id: ${e}`);return b(i)}},children:i})},W=/*#__PURE__*/i({client:void 0,config:void 0,getClientForChain:m}),v=({children:i})=>{let{smartWallets:r}=s(),{client:l,config:c,getClientForChain:m}=(()=>{let{client:e,config:i,getClientForChain:r}=t(W);return{client:e,config:i,getClientForChain:r}})(),{wrapSmartAccountClient:d}=f({clientConfig:c,smartWalletsConfig:r}),{user:p}=n(),{generateSiweMessageForSmartWallet:g,linkSmartWallet:u,hideWalletUIs:C}=o();return a((()=>{(async()=>{if(l&&p&&!p?.smartWallet&&r?.enabled)try{let e=await g({address:l.account.address,chainId:`eip155:${l.chain.id}`});C.current=!0;let t=await l.signMessage({message:e});await u({signature:t,message:e,smartWalletType:r.smartWalletType,smartWalletVersion:r.smartWalletVersion})}catch(e){console.error("Error creating smart wallet:",e)}finally{C.current=!1}})()}),[!!l,!!p?.smartWallet,!!r?.enabled]),/*#__PURE__*/e(h.Provider,{value:{client:p?.smartWallet&&l?d(l):void 0,getClientForChain:m},children:i})};export{C as SmartWalletsProvider,w as useSmartWallets};
@@ -1 +1 @@
1
- import{useCallback as e}from"react";import{a1 as t,a2 as i,a3 as s,a4 as n,a5 as r,a6 as o,p as l,a7 as c,m as d}from"./private-privy-provider-B2_rZ8aq.mjs";import{a as h}from"./context-i_OKSUqt.mjs";import{a as p}from"./events-context-CI0iqAXA.mjs";import{u as f}from"./internal-context-D4S2Sfvt.mjs";import{u as m}from"./get-is-unified-wallet-Bon2jknh.mjs";import{pipe as v,createTransactionMessage as g,setTransactionMessageFeePayerSigner as y,setTransactionMessageLifetimeUsingBlockhash as w,appendTransactionMessageInstructions as b,compileTransaction as j,getTransactionEncoder as _,address as P,setTransactionMessageFeePayer as O,blockhash as T,getTransactionDecoder as S}from"@solana/kit";import{f as A,s as W,g as C}from"./useSolanaRpcClient-O9yIYVIZ.mjs";import{S as E,g as k}from"./useWallets-B3ZcS4km.mjs";export{a as useStandardWallets,u as useWallets}from"./useWallets-B3ZcS4km.mjs";import{base58 as M,base64 as U}from"@scure/base";import{getAddMemoInstruction as x}from"@solana-program/memo";export{a as useExportWallet,u as useFundWallet}from"./use-export-wallet-CWry8VMl.mjs";import{getWallets as R}from"@wallet-standard/app";import{UniversalProvider as F}from"@walletconnect/universal-provider";import{isMobile as K}from"react-device-detect";import"react/jsx-runtime";import"mipd";import"viem/utils";import"@privy-io/js-sdk-core";import"@privy-io/popup";import"./paths-BzM95ysC.mjs";import"viem";import"uuid";import"jose";import"eventemitter3";import"zustand";import"@coinbase/wallet-sdk";import"@walletconnect/ethereum-provider";import"ofetch";import"js-cookie";import"styled-components";import"@headlessui/react";import"@privy-io/ethereum";import"@privy-io/urls";import"tinycolor2";import"./use-sign-with-user-signer--95w9BaG.mjs";const q=e=>{let i,{get:s,on:n}=R(),a=e?.shouldAutoConnect??!0,r=new t(new ke,a),o=new Map,l=[];function c(...e){e.forEach((e=>{!(e.features["privy:"]&&"isPrivyWallet"in e&&e.isPrivyWallet||o.has(e.name))&&e.chains.some((e=>"string"==typeof e&&e.startsWith("solana:")))&&o.set(e.name,e)})),l=Array.from(o.values()).map((e=>new t(e,a))).concat(r),i?.(l)}function d(...e){Array.from(o.values()).forEach((t=>!e.includes(t)&&o.delete(t.name))),l=Array.from(o.values()).map((e=>new t(e,a))).concat(r),i?.(l)}let h=[n("register",c),n("unregister",d)];return c(...s()),{_setOnConnectorsUpdated:e=>{i=e},onMount:()=>{h[0]||(h[0]=n("register",c)),h[1]||(h[1]=n("unregister",d))},onUnmount:()=>{let e=h.pop();for(;e;)e(),e=h.pop()},get:()=>l}};function I(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var V=0;function z(e){return"__private_"+V+++"_"+e}var B=/*#__PURE__*/z("_address"),D=/*#__PURE__*/z("_publicKey"),J=/*#__PURE__*/z("_chains"),N=/*#__PURE__*/z("_features"),L=/*#__PURE__*/z("_label"),Y=/*#__PURE__*/z("_icon");class H{get address(){return I(this,B)[B]}get publicKey(){return I(this,D)[D].slice()}get chains(){return I(this,J)[J].slice()}get features(){return I(this,N)[N].slice()}get label(){return I(this,L)[L]}get icon(){return I(this,Y)[Y]}constructor({address:e,publicKey:t,label:i,icon:s}){Object.defineProperty(this,B,{writable:!0,value:void 0}),Object.defineProperty(this,D,{writable:!0,value:void 0}),Object.defineProperty(this,J,{writable:!0,value:void 0}),Object.defineProperty(this,N,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),Object.defineProperty(this,Y,{writable:!0,value:void 0}),I(this,B)[B]=e,I(this,D)[D]=t,I(this,J)[J]=E,I(this,N)[N]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],I(this,L)[L]=i,I(this,Y)[Y]=s}}function Z(e){if("string"==typeof e)return M.decode(e);if(e instanceof Uint8Array)return e;let t=e.signature;return"string"==typeof t?M.decode(t):t}function $(e){if("string"==typeof e){try{return M.decode(e)}catch{}return U.decode(e)}if(e instanceof Uint8Array)return e;let t=e.transaction??e.signature;if(!t)throw Error("Invalid result from signTransaction or signAndSendTransaction attempt");if("string"==typeof t){try{return M.decode(t)}catch{}return U.decode(t)}return t}function G(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var Q=0;function X(e){return"__private_"+Q+++"_"+e}let ee="solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",te="solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1";var ie=/*#__PURE__*/X("_listeners"),se=/*#__PURE__*/X("_version"),ne=/*#__PURE__*/X("_name"),ae=/*#__PURE__*/X("_icon"),re=/*#__PURE__*/X("_provider"),oe=/*#__PURE__*/X("_accounts"),le=/*#__PURE__*/X("_privyAppName"),ce=/*#__PURE__*/X("_walletConnectCloudProjectId"),de=/*#__PURE__*/X("_walletEntry"),he=/*#__PURE__*/X("_onDisplayUriCallback"),ue=/*#__PURE__*/X("_providerEventListeners"),pe=/*#__PURE__*/X("_on"),fe=/*#__PURE__*/X("_emit"),me=/*#__PURE__*/X("_off"),ve=/*#__PURE__*/X("_connected"),ge=/*#__PURE__*/X("_disconnected"),ye=/*#__PURE__*/X("_connect"),we=/*#__PURE__*/X("_disconnect"),be=/*#__PURE__*/X("_signMessage"),je=/*#__PURE__*/X("_signAndSendTransaction"),_e=/*#__PURE__*/X("_signTransaction"),Pe=/*#__PURE__*/X("_getOrCreateProvider"),Oe=/*#__PURE__*/X("_getOrCreateSession"),Te=/*#__PURE__*/X("_restoreSession"),Se=/*#__PURE__*/X("_addProviderEventListener"),Ae=/*#__PURE__*/X("_destroySession"),We=/*#__PURE__*/X("_makeRpcRequest"),Ce=/*#__PURE__*/X("_onDisplayUri"),Ee=/*#__PURE__*/X("_onSessionDelete");class ke{get version(){return G(this,se)[se]}get name(){return G(this,ne)[ne]}get icon(){return G(this,ae)[ae]}get chains(){return E.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:G(this,ye)[ye]},"standard:disconnect":{version:"1.0.0",disconnect:G(this,we)[we]},"standard:events":{version:"1.0.0",on:G(this,pe)[pe]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:G(this,je)[je]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:G(this,_e)[_e]},"solana:signMessage":{version:"1.0.0",signMessage:G(this,be)[be]}}}get accounts(){return G(this,oe)[oe].slice()}get isWalletConnectSolana(){return!0}async initialize({walletConnectCloudProjectId:e,privyAppName:t}){G(this,ce)[ce]=e,G(this,le)[le]=t,await G(this,Pe)[Pe](),await G(this,Te)[Te]()}setWalletEntry(e,t){G(this,de)[de]=e,G(this,he)[he]=t}constructor(){Object.defineProperty(this,fe,{value:Me}),Object.defineProperty(this,me,{value:Ue}),Object.defineProperty(this,ie,{writable:!0,value:void 0}),Object.defineProperty(this,se,{writable:!0,value:void 0}),Object.defineProperty(this,ne,{writable:!0,value:void 0}),Object.defineProperty(this,ae,{writable:!0,value:void 0}),Object.defineProperty(this,re,{writable:!0,value:void 0}),Object.defineProperty(this,oe,{writable:!0,value:void 0}),Object.defineProperty(this,le,{writable:!0,value:void 0}),Object.defineProperty(this,ce,{writable:!0,value:void 0}),Object.defineProperty(this,de,{writable:!0,value:void 0}),Object.defineProperty(this,he,{writable:!0,value:void 0}),Object.defineProperty(this,ue,{writable:!0,value:void 0}),Object.defineProperty(this,pe,{writable:!0,value:void 0}),Object.defineProperty(this,ve,{writable:!0,value:void 0}),Object.defineProperty(this,ge,{writable:!0,value:void 0}),Object.defineProperty(this,ye,{writable:!0,value:void 0}),Object.defineProperty(this,we,{writable:!0,value:void 0}),Object.defineProperty(this,be,{writable:!0,value:void 0}),Object.defineProperty(this,je,{writable:!0,value:void 0}),Object.defineProperty(this,_e,{writable:!0,value:void 0}),Object.defineProperty(this,Pe,{writable:!0,value:void 0}),Object.defineProperty(this,Oe,{writable:!0,value:void 0}),Object.defineProperty(this,Te,{writable:!0,value:void 0}),Object.defineProperty(this,Se,{writable:!0,value:void 0}),Object.defineProperty(this,Ae,{writable:!0,value:void 0}),Object.defineProperty(this,We,{writable:!0,value:void 0}),Object.defineProperty(this,Ce,{writable:!0,value:void 0}),Object.defineProperty(this,Ee,{writable:!0,value:void 0}),G(this,ie)[ie]={},G(this,se)[se]="1.0.0",G(this,ne)[ne]="WalletConnect",G(this,ae)[ae]=i,G(this,re)[re]=null,G(this,oe)[oe]=[],G(this,le)[le]="",G(this,ce)[ce]="",G(this,ue)[ue]=new Map,G(this,pe)[pe]=(e,t)=>(G(this,ie)[ie][e]?.push(t)||(G(this,ie)[ie][e]=[t]),()=>G(this,me)[me](e,t)),G(this,ve)[ve]=e=>{G(this,ne)[ne]=G(this,re)[re]?.session?.peer?.metadata?.name||G(this,de)[de]?.name||"WalletConnect",G(this,ae)[ae]=G(this,re)[re]?.session?.peer?.metadata?.icons?.[0]||G(this,de)[de]?.image_url?.sm||G(this,ae)[ae],G(this,oe)[oe]=e.map((e=>new H({address:e,publicKey:M.decode(e),label:G(this,ne)[ne],icon:G(this,ae)[ae]}))),G(this,fe)[fe]("change",{accounts:this.accounts})},G(this,ge)[ge]=()=>{G(this,oe)[oe]=[],G(this,fe)[fe]("change",{accounts:this.accounts})},G(this,ye)[ye]=async()=>(this.accounts.length||await G(this,Oe)[Oe](),{accounts:this.accounts}),G(this,we)[we]=async()=>{await G(this,Ae)[Ae](),G(this,fe)[fe]("change",{accounts:this.accounts})},G(this,be)[be]=async(...e)=>{let t=[];for(let{account:i,message:s}of e){let e=M.encode(s);try{let n=await G(this,We)[We]("solana_signMessage",{message:e,pubkey:i.address},Re("solana:mainnet"));t.push({signedMessage:s,signature:Z(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await G(this,We)[We]("solana:signMessage",{message:e,pubkey:i.address},Re("solana:mainnet"));t.push({signedMessage:s,signature:Z(n)})}throw n}}return t},G(this,je)[je]=async(...e)=>{let t=[];for(let{account:i,chain:s,transaction:n,options:a}of e){let e=U.encode(n);try{let n=await G(this,We)[We]("solana_signAndSendTransaction",{transaction:e,pubkey:i.address,sendOptions:a},Re(s));t.push({signature:Z(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await G(this,We)[We]("solana:signAndSendTransaction",{transaction:e,pubkey:i.address,sendOptions:a},Re(s));t.push({signature:Z(n)})}}}return t},G(this,_e)[_e]=async(...e)=>{let t=[];for(let{account:i,chain:s,transaction:n}of e){let e=U.encode(n);try{let n=await G(this,We)[We]("solana_signTransaction",{transaction:e,pubkey:i.address},Re(s||"solana:mainnet"));t.push({signedTransaction:$(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await G(this,We)[We]("solana:signTransaction",{transaction:e,pubkey:i.address},Re(s||"solana:mainnet"));t.push({signedTransaction:$(n)})}}}return t},G(this,Pe)[Pe]=async()=>{if(G(this,re)[re])return G(this,re)[re];if(!G(this,ce)[ce])throw Error("WalletConnect Cloud Project ID is required");return G(this,re)[re]=await F.init({projectId:G(this,ce)[ce],metadata:{name:G(this,le)[le],description:G(this,le)[le],url:window.location.origin,icons:[]},relayUrl:"wss://relay.walletconnect.com",telemetryEnabled:!1}),G(this,Se)[Se]("display_uri",G(this,Ce)[Ce]),G(this,Se)[Se]("session_delete",G(this,Ee)[Ee]),G(this,Se)[Se]("session_ping",(()=>{})),G(this,Se)[Se]("session_event",(()=>{})),G(this,Se)[Se]("session_update",(()=>{})),G(this,re)[re]},G(this,Oe)[Oe]=async()=>{if(!G(this,re)[re])throw Error("WalletConnectSolana: Failed to get or create session. Provider not initialized");if(G(this,re)[re].session)return G(this,re)[re].session;let e=await G(this,re)[re].connect({optionalNamespaces:{solana:{chains:[ee,te],methods:["solana_signMessage","solana_signTransaction","solana_signAndSendTransaction"],events:[]}}});if(!e)throw Error("WalletConnectSolana: Failed to create new session");return G(this,ve)[ve](xe(e)),e},G(this,Te)[Te]=async()=>{let e=G(this,re)[re]?.session;if(e){if(!e.namespaces?.solana)return await(G(this,re)[re]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),void(G(this,re)[re].session=void 0);G(this,ve)[ve](xe(e))}},G(this,Se)[Se]=(e,t)=>{let i=G(this,ue)[ue].get(e);i&&(G(this,re)[re]?.off(e,i),G(this,ue)[ue].delete(e)),G(this,re)[re]?.on(e,t),G(this,ue)[ue].set(e,t)},G(this,Ae)[Ae]=async()=>{try{if(G(this,re)[re]?.session&&await(G(this,re)[re]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),G(this,re)[re]?.client){let e=G(this,re)[re].client.proposal.getAll();await Promise.allSettled(e.map((e=>G(this,re)[re]?.client.proposal.delete(e.id,{code:6e3,message:"User disconnected"}))));let t=G(this,re)[re].client.pairing.getAll();await Promise.allSettled(t.map((e=>G(this,re)[re]?.client.pairing.delete(e.topic,{code:6e3,message:"User disconnected"}))))}G(this,ge)[ge]()}catch(e){console.error("WalletConnectSolana: Error destroying session",e)}},G(this,We)[We]=async(e,t,i)=>{try{return await G(this,re)[re].request({method:e,params:t},i)}catch(t){if(console.error(`WalletConnectSolana: RPC Error - ${e}:`,t),t?.message?.includes("without any listeners")&&t.result)return t.result;if(t?.message?.includes("session topic does not exist in keychain"))throw Error("WalletConnectSolana: Wallet connection lost. Please reconnect.");throw t}},G(this,Ce)[Ce]=e=>{if(K&&G(this,de)[de]){let{redirect:t}=s(e,G(this,de)[de]);null==G(this,he)[he]||G(this,he)[he].call(this,{native:t,universal:t})}else null==G(this,he)[he]||G(this,he)[he].call(this,{native:e,universal:void 0})},G(this,Ee)[Ee]=()=>{G(this,ge)[ge]()}}}function Me(e,...t){G(this,ie)[ie][e]?.forEach((e=>e.apply(null,t)))}function Ue(e,t){G(this,ie)[ie][e]=G(this,ie)[ie][e]?.filter((e=>t!==e))}function xe(e){return e.namespaces.solana.accounts.reduce(((e,t)=>{let i=t.split(":").at(-1);return e.includes(i)||e.push(i),e}),[])}function Re(e){switch(e){case"solana:mainnet":return ee;case"solana:devnet":return te;default:return e}}const Fe=()=>{let{user:t}=m(),{client:i,refreshSessionAndUser:s,initializeWalletProxy:a}=f(),r=p(),o=h();return{importWallet:e((({privateKey:e,additionalSigners:l})=>n({getAccessToken:()=>i.getAccessToken(),user:t,initializeWalletProxy:a,refreshSessionAndUser:s,emitPrivyEvent:r,appConfig:o},{privateKey:e,chainType:"solana",additionalSigners:l})),[t,i,s,a,r,o])}};var Ke={id:r,getSolanaRpcClient:C,createTransactionFromRelayQuote:async function({solanaClient:e,quote:t,source:i}){let s=t.steps[0]?.items?.[0];if(!s)throw Error("Invalid quote");let n=s.data.instructions.map((({keys:e,programId:t,data:i})=>({accounts:e.map((({pubkey:e,isSigner:t,isWritable:i})=>({address:e,role:t&&i?3:t&&!i?2:!t&&i?1:0}))),programAddress:t,data:new Uint8Array(Buffer.from(i,"hex"))}))),{value:a}=await e.rpc.getLatestBlockhash().send(),r=v(g({version:0}),(e=>y({address:i},e)),(e=>w(a,e)),(e=>b(n,e)),(e=>j(e)));return new Uint8Array(_().encode(r))},simulateTransaction:W,getAddressFromBuffer:k,fetchTransactionEstimatedFees:A},qe=()=>o(Ke);var Ie={id:c,createSiwsMemoTransaction:({address:e,nonce:t})=>{let i=x({memo:l({address:P(e),nonce:t})});return v(g({version:"legacy"}),(t=>O(P(e),t)),(e=>w({blockhash:T("GfVcyD5fWFJ6hRm8bsy7CoVPsLSoJhtJKRJYk8T2VVFN"),lastValidBlockHeight:0n},e)),(e=>b([i],e)),(e=>j(e)),(e=>U.encode(Uint8Array.from(_().encode(e)))))},getSignatureFromTransaction:(e,t)=>{let i=S().decode(e).signatures[t];if(!i)throw Error(`Missing transaction signature for address: ${t}`);return U.encode(i)}},Ve=()=>o(Ie);function ze(){let{create:e}=d();return{createWallet:async t=>{t&&"target"in t&&t&&(t=void 0);let{account:i}=await e({chainType:"solana",options:t});return{wallet:i}}}}function Be(){return{signMessage:async function(...e){let t=[];for(let i of e)t.push(await i.wallet.signMessage({...i,options:i.options}));return 1===e.length?t[0]:[...t]}}}function De(){return{signTransaction:async function(...e){let t=[];for(let i of e)t.push(await i.wallet.signTransaction({...i,chain:i.chain||"solana:mainnet"}));return 1===e.length?t[0]:[...t]}}}function Je(){return{signAndSendTransaction:async function(...e){let t=[];for(let i of e)t.push(await i.wallet.signAndSendTransaction({...i,chain:i.chain||"solana:mainnet"}));return 1===e.length?t[0]:[...t]}}}export{t as SolanaAdapterConnector,q as toSolanaWalletConnectors,ze as useCreateWallet,Fe as useImportWallet,Je as useSignAndSendTransaction,Be as useSignMessage,De as useSignTransaction,qe as useSolanaFundingPlugin,Ve as useSolanaLedgerPlugin};
1
+ import{useCallback as e}from"react";import{b as t,j as s,S as i,k as n,p as r,f as o,g as l}from"./usePrivy-Dj52a5sp.mjs";import{u as c}from"./context-LVpDfP2H.mjs";import{a as d}from"./events-context-CI0iqAXA.mjs";import{u as h}from"./internal-context-Z-fyxadS.mjs";import{u as p}from"./get-is-unified-wallet-CNcx75Dp.mjs";import{pipe as f,createTransactionMessage as g,setTransactionMessageFeePayerSigner as v,setTransactionMessageLifetimeUsingBlockhash as m,appendTransactionMessageInstructions as y,compileTransaction as w,getTransactionEncoder as b,address as j,setTransactionMessageFeePayer as _,blockhash as P,getTransactionDecoder as O}from"@solana/kit";import{f as S,s as T,g as A}from"./useSolanaRpcClient-B7UDPdLi.mjs";import{S as W,g as C}from"./useWallets-cSQYA-Jk.mjs";export{a as useStandardWallets,u as useWallets}from"./useWallets-cSQYA-Jk.mjs";import{base58 as E,base64 as k}from"@scure/base";import{getAddMemoInstruction as M}from"@solana-program/memo";export{a as useExportWallet,u as useFundWallet}from"./use-export-wallet-DllHf-2F.mjs";import{S as U,W as x}from"./prepareFundingModalData-DjTxAoJ1.mjs";import{getWallets as F}from"@wallet-standard/app";import{UniversalProvider as R}from"@walletconnect/universal-provider";import{isMobile as K}from"react-device-detect";import"react/jsx-runtime";import"@privy-io/js-sdk-core";import"./useWallets-DlGuNtGR.mjs";import"tinycolor2";import"ofetch";import"viem";import"eventemitter3";import"./use-sign-with-user-signer-Do5Oi_rb.mjs";const q=e=>{let t,{get:s,on:i}=F(),n=e?.shouldAutoConnect??!0,a=new U(new ke,n),r=new Map,o=[];function l(...e){e.forEach((e=>{!(e.features["privy:"]&&"isPrivyWallet"in e&&e.isPrivyWallet||r.has(e.name))&&e.chains.some((e=>"string"==typeof e&&e.startsWith("solana:")))&&r.set(e.name,e)})),o=Array.from(r.values()).map((e=>new U(e,n))).concat(a),t?.(o)}function c(...e){Array.from(r.values()).forEach((t=>!e.includes(t)&&r.delete(t.name))),o=Array.from(r.values()).map((e=>new U(e,n))).concat(a),t?.(o)}let d=[i("register",l),i("unregister",c)];return l(...s()),{_setOnConnectorsUpdated:e=>{t=e},onMount:()=>{d[0]||(d[0]=i("register",l)),d[1]||(d[1]=i("unregister",c))},onUnmount:()=>{let e=d.pop();for(;e;)e(),e=d.pop()},get:()=>o}};function V(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var I=0;function D(e){return"__private_"+I+++"_"+e}var z=/*#__PURE__*/D("_address"),B=/*#__PURE__*/D("_publicKey"),J=/*#__PURE__*/D("_chains"),N=/*#__PURE__*/D("_features"),L=/*#__PURE__*/D("_label"),Y=/*#__PURE__*/D("_icon");class G{get address(){return V(this,z)[z]}get publicKey(){return V(this,B)[B].slice()}get chains(){return V(this,J)[J].slice()}get features(){return V(this,N)[N].slice()}get label(){return V(this,L)[L]}get icon(){return V(this,Y)[Y]}constructor({address:e,publicKey:t,label:s,icon:i}){Object.defineProperty(this,z,{writable:!0,value:void 0}),Object.defineProperty(this,B,{writable:!0,value:void 0}),Object.defineProperty(this,J,{writable:!0,value:void 0}),Object.defineProperty(this,N,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),Object.defineProperty(this,Y,{writable:!0,value:void 0}),V(this,z)[z]=e,V(this,B)[B]=t,V(this,J)[J]=W,V(this,N)[N]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],V(this,L)[L]=s,V(this,Y)[Y]=i}}function Z(e){if("string"==typeof e)return E.decode(e);if(e instanceof Uint8Array)return e;let t=e.signature;return"string"==typeof t?E.decode(t):t}function $(e){if("string"==typeof e){try{return E.decode(e)}catch{}return k.decode(e)}if(e instanceof Uint8Array)return e;let t=e.transaction??e.signature;if(!t)throw Error("Invalid result from signTransaction or signAndSendTransaction attempt");if("string"==typeof t){try{return E.decode(t)}catch{}return k.decode(t)}return t}function H(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw TypeError("attempted to use private field on non-instance");return e}var Q=0;function X(e){return"__private_"+Q+++"_"+e}let ee="solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",te="solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1";var se=/*#__PURE__*/X("_listeners"),ie=/*#__PURE__*/X("_version"),ne=/*#__PURE__*/X("_name"),ae=/*#__PURE__*/X("_icon"),re=/*#__PURE__*/X("_provider"),oe=/*#__PURE__*/X("_accounts"),le=/*#__PURE__*/X("_privyAppName"),ce=/*#__PURE__*/X("_walletConnectCloudProjectId"),de=/*#__PURE__*/X("_walletEntry"),he=/*#__PURE__*/X("_onDisplayUriCallback"),ue=/*#__PURE__*/X("_providerEventListeners"),pe=/*#__PURE__*/X("_on"),fe=/*#__PURE__*/X("_emit"),ge=/*#__PURE__*/X("_off"),ve=/*#__PURE__*/X("_connected"),me=/*#__PURE__*/X("_disconnected"),ye=/*#__PURE__*/X("_connect"),we=/*#__PURE__*/X("_disconnect"),be=/*#__PURE__*/X("_signMessage"),je=/*#__PURE__*/X("_signAndSendTransaction"),_e=/*#__PURE__*/X("_signTransaction"),Pe=/*#__PURE__*/X("_getOrCreateProvider"),Oe=/*#__PURE__*/X("_getOrCreateSession"),Se=/*#__PURE__*/X("_restoreSession"),Te=/*#__PURE__*/X("_addProviderEventListener"),Ae=/*#__PURE__*/X("_destroySession"),We=/*#__PURE__*/X("_makeRpcRequest"),Ce=/*#__PURE__*/X("_onDisplayUri"),Ee=/*#__PURE__*/X("_onSessionDelete");class ke{get version(){return H(this,ie)[ie]}get name(){return H(this,ne)[ne]}get icon(){return H(this,ae)[ae]}get chains(){return W.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:H(this,ye)[ye]},"standard:disconnect":{version:"1.0.0",disconnect:H(this,we)[we]},"standard:events":{version:"1.0.0",on:H(this,pe)[pe]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:H(this,je)[je]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:H(this,_e)[_e]},"solana:signMessage":{version:"1.0.0",signMessage:H(this,be)[be]}}}get accounts(){return H(this,oe)[oe].slice()}get isWalletConnectSolana(){return!0}async initialize({walletConnectCloudProjectId:e,privyAppName:t}){H(this,ce)[ce]=e,H(this,le)[le]=t,await H(this,Pe)[Pe](),await H(this,Se)[Se]()}setWalletEntry(e,t){H(this,de)[de]=e,H(this,he)[he]=t}constructor(){Object.defineProperty(this,fe,{value:Me}),Object.defineProperty(this,ge,{value:Ue}),Object.defineProperty(this,se,{writable:!0,value:void 0}),Object.defineProperty(this,ie,{writable:!0,value:void 0}),Object.defineProperty(this,ne,{writable:!0,value:void 0}),Object.defineProperty(this,ae,{writable:!0,value:void 0}),Object.defineProperty(this,re,{writable:!0,value:void 0}),Object.defineProperty(this,oe,{writable:!0,value:void 0}),Object.defineProperty(this,le,{writable:!0,value:void 0}),Object.defineProperty(this,ce,{writable:!0,value:void 0}),Object.defineProperty(this,de,{writable:!0,value:void 0}),Object.defineProperty(this,he,{writable:!0,value:void 0}),Object.defineProperty(this,ue,{writable:!0,value:void 0}),Object.defineProperty(this,pe,{writable:!0,value:void 0}),Object.defineProperty(this,ve,{writable:!0,value:void 0}),Object.defineProperty(this,me,{writable:!0,value:void 0}),Object.defineProperty(this,ye,{writable:!0,value:void 0}),Object.defineProperty(this,we,{writable:!0,value:void 0}),Object.defineProperty(this,be,{writable:!0,value:void 0}),Object.defineProperty(this,je,{writable:!0,value:void 0}),Object.defineProperty(this,_e,{writable:!0,value:void 0}),Object.defineProperty(this,Pe,{writable:!0,value:void 0}),Object.defineProperty(this,Oe,{writable:!0,value:void 0}),Object.defineProperty(this,Se,{writable:!0,value:void 0}),Object.defineProperty(this,Te,{writable:!0,value:void 0}),Object.defineProperty(this,Ae,{writable:!0,value:void 0}),Object.defineProperty(this,We,{writable:!0,value:void 0}),Object.defineProperty(this,Ce,{writable:!0,value:void 0}),Object.defineProperty(this,Ee,{writable:!0,value:void 0}),H(this,se)[se]={},H(this,ie)[ie]="1.0.0",H(this,ne)[ne]="WalletConnect",H(this,ae)[ae]=x,H(this,re)[re]=null,H(this,oe)[oe]=[],H(this,le)[le]="",H(this,ce)[ce]="",H(this,ue)[ue]=new Map,H(this,pe)[pe]=(e,t)=>(H(this,se)[se][e]?.push(t)||(H(this,se)[se][e]=[t]),()=>H(this,ge)[ge](e,t)),H(this,ve)[ve]=e=>{H(this,ne)[ne]=H(this,re)[re]?.session?.peer?.metadata?.name||H(this,de)[de]?.name||"WalletConnect",H(this,ae)[ae]=H(this,re)[re]?.session?.peer?.metadata?.icons?.[0]||H(this,de)[de]?.image_url?.sm||H(this,ae)[ae],H(this,oe)[oe]=e.map((e=>new G({address:e,publicKey:E.decode(e),label:H(this,ne)[ne],icon:H(this,ae)[ae]}))),H(this,fe)[fe]("change",{accounts:this.accounts})},H(this,me)[me]=()=>{H(this,oe)[oe]=[],H(this,fe)[fe]("change",{accounts:this.accounts})},H(this,ye)[ye]=async()=>(this.accounts.length||await H(this,Oe)[Oe](),{accounts:this.accounts}),H(this,we)[we]=async()=>{await H(this,Ae)[Ae](),H(this,fe)[fe]("change",{accounts:this.accounts})},H(this,be)[be]=async(...e)=>{let t=[];for(let{account:s,message:i}of e){let e=E.encode(i);try{let n=await H(this,We)[We]("solana_signMessage",{message:e,pubkey:s.address},Fe("solana:mainnet"));t.push({signedMessage:i,signature:Z(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await H(this,We)[We]("solana:signMessage",{message:e,pubkey:s.address},Fe("solana:mainnet"));t.push({signedMessage:i,signature:Z(n)})}throw n}}return t},H(this,je)[je]=async(...e)=>{let t=[];for(let{account:s,chain:i,transaction:n,options:a}of e){let e=k.encode(n);try{let n=await H(this,We)[We]("solana_signAndSendTransaction",{transaction:e,pubkey:s.address,sendOptions:a},Fe(i));t.push({signature:Z(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await H(this,We)[We]("solana:signAndSendTransaction",{transaction:e,pubkey:s.address,sendOptions:a},Fe(i));t.push({signature:Z(n)})}}}return t},H(this,_e)[_e]=async(...e)=>{let t=[];for(let{account:s,chain:i,transaction:n}of e){let e=k.encode(n);try{let n=await H(this,We)[We]("solana_signTransaction",{transaction:e,pubkey:s.address},Fe(i||"solana:mainnet"));t.push({signedTransaction:$(n)})}catch(n){if(n?.message?.includes("Missing or invalid")){let n=await H(this,We)[We]("solana:signTransaction",{transaction:e,pubkey:s.address},Fe(i||"solana:mainnet"));t.push({signedTransaction:$(n)})}}}return t},H(this,Pe)[Pe]=async()=>{if(H(this,re)[re])return H(this,re)[re];if(!H(this,ce)[ce])throw Error("WalletConnect Cloud Project ID is required");return H(this,re)[re]=await R.init({projectId:H(this,ce)[ce],metadata:{name:H(this,le)[le],description:H(this,le)[le],url:window.location.origin,icons:[]},relayUrl:"wss://relay.walletconnect.com",telemetryEnabled:!1}),H(this,Te)[Te]("display_uri",H(this,Ce)[Ce]),H(this,Te)[Te]("session_delete",H(this,Ee)[Ee]),H(this,Te)[Te]("session_ping",(()=>{})),H(this,Te)[Te]("session_event",(()=>{})),H(this,Te)[Te]("session_update",(()=>{})),H(this,re)[re]},H(this,Oe)[Oe]=async()=>{if(!H(this,re)[re])throw Error("WalletConnectSolana: Failed to get or create session. Provider not initialized");if(H(this,re)[re].session)return H(this,re)[re].session;let e=await H(this,re)[re].connect({optionalNamespaces:{solana:{chains:[ee,te],methods:["solana_signMessage","solana_signTransaction","solana_signAndSendTransaction"],events:[]}}});if(!e)throw Error("WalletConnectSolana: Failed to create new session");return H(this,ve)[ve](xe(e)),e},H(this,Se)[Se]=async()=>{let e=H(this,re)[re]?.session;if(e){if(!e.namespaces?.solana)return await(H(this,re)[re]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),void(H(this,re)[re].session=void 0);H(this,ve)[ve](xe(e))}},H(this,Te)[Te]=(e,t)=>{let s=H(this,ue)[ue].get(e);s&&(H(this,re)[re]?.off(e,s),H(this,ue)[ue].delete(e)),H(this,re)[re]?.on(e,t),H(this,ue)[ue].set(e,t)},H(this,Ae)[Ae]=async()=>{try{if(H(this,re)[re]?.session&&await(H(this,re)[re]?.disconnect().catch((e=>console.error("WalletConnectSolana: Error disconnecting session",e)))),H(this,re)[re]?.client){let e=H(this,re)[re].client.proposal.getAll();await Promise.allSettled(e.map((e=>H(this,re)[re]?.client.proposal.delete(e.id,{code:6e3,message:"User disconnected"}))));let t=H(this,re)[re].client.pairing.getAll();await Promise.allSettled(t.map((e=>H(this,re)[re]?.client.pairing.delete(e.topic,{code:6e3,message:"User disconnected"}))))}H(this,me)[me]()}catch(e){console.error("WalletConnectSolana: Error destroying session",e)}},H(this,We)[We]=async(e,t,s)=>{try{return await H(this,re)[re].request({method:e,params:t},s)}catch(t){if(console.error(`WalletConnectSolana: RPC Error - ${e}:`,t),t?.message?.includes("without any listeners")&&t.result)return t.result;if(t?.message?.includes("session topic does not exist in keychain"))throw Error("WalletConnectSolana: Wallet connection lost. Please reconnect.");throw t}},H(this,Ce)[Ce]=e=>{if(K&&H(this,de)[de]){let{redirect:s}=t(e,H(this,de)[de]);null==H(this,he)[he]||H(this,he)[he].call(this,{native:s,universal:s})}else null==H(this,he)[he]||H(this,he)[he].call(this,{native:e,universal:void 0})},H(this,Ee)[Ee]=()=>{H(this,me)[me]()}}}function Me(e,...t){H(this,se)[se][e]?.forEach((e=>e.apply(null,t)))}function Ue(e,t){H(this,se)[se][e]=H(this,se)[se][e]?.filter((e=>t!==e))}function xe(e){return e.namespaces.solana.accounts.reduce(((e,t)=>{let s=t.split(":").at(-1);return e.includes(s)||e.push(s),e}),[])}function Fe(e){switch(e){case"solana:mainnet":return ee;case"solana:devnet":return te;default:return e}}const Re=()=>{let{user:t}=p(),{client:i,refreshSessionAndUser:n,initializeWalletProxy:a}=h(),r=d(),o=c();return{importWallet:e((({privateKey:e,additionalSigners:l})=>s({getAccessToken:()=>i.getAccessToken(),user:t,initializeWalletProxy:a,refreshSessionAndUser:n,emitPrivyEvent:r,appConfig:o},{privateKey:e,chainType:"solana",additionalSigners:l})),[t,i,n,a,r,o])}};var Ke={id:i,getSolanaRpcClient:A,createTransactionFromRelayQuote:async function({solanaClient:e,quote:t,source:s}){let i=t.steps[0]?.items?.[0];if(!i)throw Error("Invalid quote");let n=i.data.instructions.map((({keys:e,programId:t,data:s})=>({accounts:e.map((({pubkey:e,isSigner:t,isWritable:s})=>({address:e,role:t&&s?3:t&&!s?2:!t&&s?1:0}))),programAddress:t,data:new Uint8Array(Buffer.from(s,"hex"))}))),{value:a}=await e.rpc.getLatestBlockhash().send(),r=f(g({version:0}),(e=>v({address:s},e)),(e=>m(a,e)),(e=>y(n,e)),(e=>w(e)));return new Uint8Array(b().encode(r))},simulateTransaction:T,getAddressFromBuffer:C,fetchTransactionEstimatedFees:S},qe=()=>n(Ke);var Ve={id:o,createSiwsMemoTransaction:({address:e,nonce:t})=>{let s=M({memo:r({address:j(e),nonce:t})});return f(g({version:"legacy"}),(t=>_(j(e),t)),(e=>m({blockhash:P("GfVcyD5fWFJ6hRm8bsy7CoVPsLSoJhtJKRJYk8T2VVFN"),lastValidBlockHeight:0n},e)),(e=>y([s],e)),(e=>w(e)),(e=>k.encode(Uint8Array.from(b().encode(e)))))},getSignatureFromTransaction:(e,t)=>{let s=O().decode(e).signatures[t];if(!s)throw Error(`Missing transaction signature for address: ${t}`);return k.encode(s)}},Ie=()=>n(Ve);function De(){let{create:e}=l();return{createWallet:async t=>{t&&"target"in t&&t&&(t=void 0);let{account:s}=await e({chainType:"solana",options:t});return{wallet:s}}}}function ze(){return{signMessage:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signMessage({...s,options:s.options}));return 1===e.length?t[0]:[...t]}}}function Be(){return{signTransaction:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signTransaction({...s,chain:s.chain||"solana:mainnet"}));return 1===e.length?t[0]:[...t]}}}function Je(){return{signAndSendTransaction:async function(...e){let t=[];for(let s of e)t.push(await s.wallet.signAndSendTransaction({...s,chain:s.chain||"solana:mainnet"}));return 1===e.length?t[0]:[...t]}}}export{U as SolanaAdapterConnector,q as toSolanaWalletConnectors,De as useCreateWallet,Re as useImportWallet,Je as useSignAndSendTransaction,ze as useSignMessage,Be as useSignTransaction,qe as useSolanaFundingPlugin,Ie as useSolanaLedgerPlugin};
@@ -1,4 +1,4 @@
1
- import{styled as o,keyframes as i}from"styled-components";import{d as t}from"./ModalHeader-cnW8OaHH.mjs";import{LinkButton as r}from"./LinkPasskeyScreen-DhD51WvM.mjs";const e=o.div`
1
+ import{styled as o,keyframes as i}from"styled-components";import{d as t}from"./ModalHeader-rCMpqA2a.mjs";import{LinkButton as r}from"./LinkPasskeyScreen-DYfWSjKR.mjs";const e=o.div`
2
2
  display: flex;
3
3
  flex-direction: column;
4
4
  gap: 12px;
@@ -0,0 +1,4 @@
1
+ import{jsxs as e,jsx as r,Fragment as o}from"react/jsx-runtime";import n from"@heroicons/react/24/outline/DevicePhoneMobileIcon";import i from"@heroicons/react/24/outline/FingerPrintIcon";import t from"@heroicons/react/24/outline/PhoneIcon";import a from"@heroicons/react/24/outline/ShieldCheckIcon";import{b as s,M as c,P as l,S as d}from"./ModalHeader-rCMpqA2a.mjs";import{S as m}from"./ScreenLayout-DF3DCKOK.mjs";import{U as h,V as p,a4 as u}from"./useActiveWallet-RZ4w-uGq.mjs";import{M as g,F as f,T as y,L as C,b as k,c as T,C as S,E as b,P as v,I,N as w,S as P}from"./PinInput-3SLvbnQa.mjs";import j from"@heroicons/react/24/outline/CalendarIcon";import x from"@heroicons/react/24/outline/ExclamationTriangleIcon";import{e as B}from"./StackedContainer-B2vaEl56.mjs";import{u as E}from"./internal-context-Z-fyxadS.mjs";import{useState as M,useMemo as V,useEffect as A}from"react";import{styled as L}from"styled-components";import{toHex as D}from"viem";import{u as F}from"./useGetTokenPrice-DERdsrmf.mjs";import{u as Y}from"./useWallets-DlGuNtGR.mjs";import{p as H,j as N,g as W,h as G}from"./index-DNz_w3-G.mjs";import{g as J}from"./getPublicClient-B4uPLKn-.mjs";import{T as K}from"./TransactionDetails-BP142O9n.mjs";import{u as O}from"./context-LVpDfP2H.mjs";const U=({handleClose:o,mfaMethods:c,onSelect:l})=>/*#__PURE__*/e(m,{title:"Verify your identity",subtitle:"Choose a verification method",icon:a,iconVariant:"subtle",onClose:o,showClose:!0,watermark:!0,children:[/*#__PURE__*/e(g,{children:[c.includes("totp")&&/*#__PURE__*/e(h,{onClick:()=>l("totp"),children:[/*#__PURE__*/r(p,{children:/*#__PURE__*/r(n,{})}),"Authenticator app"]},"totp"),c.includes("sms")&&/*#__PURE__*/e(h,{onClick:()=>l("sms"),children:[/*#__PURE__*/r(p,{children:/*#__PURE__*/r(t,{})}),"SMS"]},"sms"),c.includes("passkey")&&/*#__PURE__*/e(h,{onClick:()=>l("passkey"),children:[/*#__PURE__*/r(p,{children:/*#__PURE__*/r(i,{})}),"Passkey"]},"passkey")]}),/*#__PURE__*/r(s,{})]}),q=({pendingTransaction:e})=>{let{wallets:o}=Y(),{walletProxy:n,rpcConfig:i,chains:t,appId:a,nativeTokenSymbolForChainId:s}=E(),[c,l]=M(null),[d,m]=M(e),{tokenPrice:h}=F(d.chainId),p=s(e.chainId)||"ETH",u=V((()=>o.find((e=>"privy"===e.walletClientType))),[o]);return A((()=>{(async function(){if(!n||!u)return d;let e=J(d.chainId,t,i,{appId:a}),r=await H(d,e,u.address);return l(D(BigInt(r.gas??0))),r})().then(m).catch(console.error)}),[n]),u?/*#__PURE__*/r(z,{children:/*#__PURE__*/r(K,{from:u.address,to:d.to,txn:d,gas:c??void 0,tokenPrice:h,tokenSymbol:p})}):null};let z=L.div`
2
+ width: 100%;
3
+ padding: 1rem 0;
4
+ `;const Q=({hasBlockingError:n,error:i,onClose:t,onBack:d,handleSubmit:m,account:h,submitSuccess:p})=>{let{pendingTransaction:g}=E();/*#__PURE__*/return e(o,{children:[/*#__PURE__*/r(c,{onClose:t},"header"),/*#__PURE__*/r(B,{children:/*#__PURE__*/e("div",{children:[/*#__PURE__*/r(u,{success:p,fail:!!i}),/*#__PURE__*/r(i?x:f,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/r(y,{style:{marginTop:"1rem"},children:"Verifying with passkey"}),/*#__PURE__*/e(C,{children:[/*#__PURE__*/e(k,{children:[/*#__PURE__*/r(T,{children:/*#__PURE__*/r(a,{})}),"Approve this action using your touch, face, PIN, or hardware key."]}),/*#__PURE__*/e(k,{children:[/*#__PURE__*/r(T,{children:/*#__PURE__*/r(j,{})}),"You last added a passkey on"," ",h?.firstVerifiedAt?.toLocaleDateString(void 0,{month:"short",day:"numeric",year:"numeric"}),"."]})]}),g&&/*#__PURE__*/r(S,{children:/*#__PURE__*/r(q,{pendingTransaction:g})}),i&&/*#__PURE__*/e(o,{children:[/*#__PURE__*/r(b,{style:{marginTop:"1.25rem"},children:i.message}),/*#__PURE__*/r(l,{disabled:n,onClick:m,style:{margin:"1.25rem auto 0"},children:"Try again"})]}),d&&/*#__PURE__*/r(v,{style:{marginTop:"1rem"},onClick:d,children:"Choose another method"}),/*#__PURE__*/r(s,{})]})},R=({selectedMethod:i,submitSuccess:a,hasBlockingError:l,onClose:m,onBack:h,handleSubmitCode:p})=>{let u=O(),{pendingTransaction:g}=E();switch(i){case"sms":/*#__PURE__*/return e(o,{children:[/*#__PURE__*/r(c,{onClose:m},"header"),/*#__PURE__*/r(I,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/r(t,{})}),/*#__PURE__*/r(y,{children:"Enter verification code"}),/*#__PURE__*/e(S,{children:[/*#__PURE__*/r(w,{success:a,disabled:l,onChange:p}),/*#__PURE__*/e(P,{children:["To continue, please enter the 6-digit code sent to your ",/*#__PURE__*/r("strong",{children:"mobile device"})]}),g&&/*#__PURE__*/r(q,{pendingTransaction:g})]}),h&&/*#__PURE__*/r(v,{theme:u?.appearance.palette.colorScheme,onClick:h,children:"Choose another method"}),/*#__PURE__*/r(d,{onClick:m,children:"Cancel"}),/*#__PURE__*/r(s,{})]});case"totp":/*#__PURE__*/return e(o,{children:[/*#__PURE__*/r(c,{onClose:m},"header"),/*#__PURE__*/r(I,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/r(n,{})}),/*#__PURE__*/r(y,{children:"Enter verification code"}),/*#__PURE__*/e(S,{children:[/*#__PURE__*/r(w,{success:a,disabled:l,onChange:p}),/*#__PURE__*/e(P,{children:["To continue, please enter the 6-digit code generated from your"," ",/*#__PURE__*/r("strong",{children:"authenticator app"})]}),g&&/*#__PURE__*/r(q,{pendingTransaction:g})]}),h&&/*#__PURE__*/r(v,{theme:u?.appearance.palette.colorScheme,onClick:h,children:"Choose another method"}),/*#__PURE__*/r(d,{onClick:m,children:"Cancel"}),/*#__PURE__*/r(s,{})]});default:return null}},X=e=>N(e)?{isBlocking:!0,error:Error("You have exceeded the maximum number of attempts. Please close this window and try again in 10 seconds.")}:W(e)?{isBlocking:!1,error:Error("The code you entered is not valid")}:G(e)?{isBlocking:!0,error:Error("You have exceeded the time limit for code entry. Please try again in 30 seconds.")}:(console.error(e),{isBlocking:!1,error:Error("Something went wrong.")});export{Q as V,R as a,U as b,X as t};