@privy-io/react-auth 1.98.0 → 2.0.0-beta-20241218220832

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 (349) hide show
  1. package/dist/cjs/abstract-smart-wallets.js +1 -1
  2. package/dist/cjs/actions/importWallet.js +1 -1
  3. package/dist/cjs/auth-flows/farcaster.js +1 -1
  4. package/dist/cjs/auth-flows/telegram.js +1 -1
  5. package/dist/cjs/client/user.js +1 -1
  6. package/dist/cjs/client.js +1 -1
  7. package/dist/cjs/components/Captcha.js +1 -1
  8. package/dist/cjs/components/ConnectEmailForm.js +1 -1
  9. package/dist/cjs/components/LoginModal.js +1 -1
  10. package/dist/cjs/components/QrCode.js +2 -2
  11. package/dist/cjs/components/UpdateEmailForm.js +1 -1
  12. package/dist/cjs/components/embedded-wallets/PriceDisplay.js +3 -3
  13. package/dist/cjs/components/embedded-wallets/SolanaTransactionDetails.js +1 -1
  14. package/dist/cjs/components/embedded-wallets/TransactionDetails.js +2 -2
  15. package/dist/cjs/components/embedded-wallets/TransactionDetailsWrapper.js +1 -1
  16. package/dist/cjs/components/embedded-wallets/TransactionTotal.js +1 -1
  17. package/dist/cjs/components/embedded-wallets/WalletLink.js +1 -1
  18. package/dist/cjs/components/embedded-wallets/index.js +1 -1
  19. package/dist/cjs/components/external-wallets/InjectedWalletIcon.js +1 -1
  20. package/dist/cjs/components/ui/wallet/Address.js +1 -1
  21. package/dist/cjs/components/ui/wallet/WalletInfoCard.js +1 -1
  22. package/dist/cjs/components/ui/wallet/WalletInfoCard.story.js +1 -1
  23. package/dist/cjs/config.js +1 -1
  24. package/dist/cjs/configuration/context.js +1 -1
  25. package/dist/cjs/connectors/coinbase.js +1 -1
  26. package/dist/cjs/connectors/embedded.js +1 -1
  27. package/dist/cjs/connectors/embeddedProvider.js +1 -1
  28. package/dist/cjs/connectors/errors.js +1 -1
  29. package/dist/cjs/connectors/ethereum/EthereumNullConnector.js +1 -1
  30. package/dist/cjs/connectors/ethereum/index.js +1 -1
  31. package/dist/cjs/connectors/index.js +1 -1
  32. package/dist/cjs/connectors/injected.js +1 -1
  33. package/dist/cjs/connectors/metamask.js +1 -1
  34. package/dist/cjs/connectors/phantom-solana.js +1 -1
  35. package/dist/cjs/connectors/phantom.js +1 -1
  36. package/dist/cjs/connectors/privyProxyProvider.js +1 -1
  37. package/dist/cjs/connectors/solana/SolanaNullConnector.js +1 -1
  38. package/dist/cjs/connectors/solana/index.js +1 -1
  39. package/dist/cjs/connectors/solana/toSolanaWalletConnectors.js +1 -1
  40. package/dist/cjs/connectors/walletconnect-registry.js +1 -1
  41. package/dist/cjs/connectors/walletconnect-v2.js +1 -1
  42. package/dist/cjs/constants.js +1 -1
  43. package/dist/cjs/embedded-wallets/EmbeddedWalletIframe.js +1 -1
  44. package/dist/cjs/embedded-wallets/delegated-actions.js +1 -1
  45. package/dist/cjs/embedded-wallets/rpc/index.js +1 -1
  46. package/dist/cjs/embedded-wallets/solana/provider.js +1 -1
  47. package/dist/cjs/errors-42YzokZM.js +1 -0
  48. package/dist/cjs/hooks/captcha-context.js +1 -1
  49. package/dist/cjs/hooks/events-context.js +1 -1
  50. package/dist/cjs/hooks/internal-context.js +1 -1
  51. package/dist/cjs/hooks/privy-context.js +1 -1
  52. package/dist/cjs/hooks/privy-provider.js +1 -1
  53. package/dist/cjs/hooks/smart-wallets-provider.js +1 -1
  54. package/dist/cjs/hooks/useEmbeddedWalletCreate.js +1 -1
  55. package/dist/cjs/hooks/useFormattedBalances.js +1 -1
  56. package/dist/cjs/hooks/useImportWallet.js +1 -1
  57. package/dist/cjs/hooks/useLinkWithSiwe.js +1 -1
  58. package/dist/cjs/hooks/useLoginWithEmail.js +1 -1
  59. package/dist/cjs/hooks/useLoginWithOAuth.js +1 -1
  60. package/dist/cjs/hooks/useLoginWithPasskey.js +1 -1
  61. package/dist/cjs/hooks/useLoginWithSms.js +1 -1
  62. package/dist/cjs/hooks/usePrivy.js +1 -1
  63. package/dist/cjs/hooks/useSolanaWallets.js +1 -1
  64. package/dist/cjs/hooks/useWalletBalance.js +1 -1
  65. package/dist/cjs/index.js +1 -1
  66. package/dist/cjs/lib/abstract-smart-wallets.js +1 -1
  67. package/dist/cjs/lib/erc20/actions/getErc20TokenInfo.js +1 -1
  68. package/dist/cjs/lib/ethers.js +1 -1
  69. package/dist/cjs/lib/funding/prepareFundingModalData.js +1 -1
  70. package/dist/cjs/lib/smart-wallets-shared.js +1 -1
  71. package/dist/cjs/lib/smart-wallets.js +1 -1
  72. package/dist/cjs/lib/viem/prepareTransactionRequest.js +1 -0
  73. package/dist/cjs/lib/viem/toViemTransactionSerializable.js +1 -0
  74. package/dist/cjs/lib/wallets/actions/getBalanceForChains.js +1 -1
  75. package/dist/cjs/lib/wallets/actions/getErc20Balance.js +1 -1
  76. package/dist/cjs/privy-components/user-pill/Account.js +1 -1
  77. package/dist/cjs/privy-components/user-pill/PrimaryAccount.js +1 -1
  78. package/dist/cjs/privy-components/user-pill/PrimaryWallet.js +1 -1
  79. package/dist/cjs/privy-components/user-pill/UserMenu.js +1 -1
  80. package/dist/cjs/privy-components/user-pill/UserPill.js +2 -2
  81. package/dist/cjs/privy-components/user-pill/UserPill.test.js +1 -1
  82. package/dist/cjs/privy-components/user-pill/screens/AccountScreen.js +1 -1
  83. package/dist/cjs/privy-components/user-pill/screens/LinkedAccountsScreen.js +1 -1
  84. package/dist/cjs/privy-components/user-pill/screens/MenuScreen.js +1 -1
  85. package/dist/cjs/privy-components/wallets-pill/ActiveWalletCard.js +1 -1
  86. package/dist/cjs/privy-components/wallets-pill/ConnectWalletView.js +1 -1
  87. package/dist/cjs/privy-components/wallets-pill/SelectActiveWalletView.js +1 -1
  88. package/dist/cjs/privy-components/wallets-pill/WalletCardView.js +1 -1
  89. package/dist/cjs/privy-components/wallets-pill/WalletsDialog.js +1 -1
  90. package/dist/cjs/privy-components/wallets-pill/useActiveWallet.js +1 -1
  91. package/dist/cjs/privy-provider-El73p7ez.js +2 -0
  92. package/dist/cjs/screens/AccountTransferScreen/EmbeddedWalletInfoView.js +1 -1
  93. package/dist/cjs/screens/AccountTransferScreen/LinkConflictScreen.js +1 -1
  94. package/dist/cjs/screens/AffirmativeConsentScreen.js +1 -1
  95. package/dist/cjs/screens/AwaitingPasswordlessCodeScreen.js +1 -1
  96. package/dist/cjs/screens/CaptchaScreen.js +1 -1
  97. package/dist/cjs/screens/ConnectOnlyAuthenticatedScreen.js +1 -1
  98. package/dist/cjs/screens/ConnectOnlyLandingScreen.js +1 -1
  99. package/dist/cjs/screens/ConnectOnlyStatusScreen.js +1 -1
  100. package/dist/cjs/screens/ConnectionStatusScreen.js +2 -2
  101. package/dist/cjs/screens/CrossAppAuthScreen.js +1 -1
  102. package/dist/cjs/screens/DelegatedActionsConsentScreen.js +1 -1
  103. package/dist/cjs/screens/EmbeddedWalletConnectingScreen.js +1 -1
  104. package/dist/cjs/screens/EmbeddedWalletCreatedScreen.js +1 -1
  105. package/dist/cjs/screens/EmbeddedWalletKeyExportScreen.js +2 -2
  106. package/dist/cjs/screens/EmbeddedWalletOnAccountCreateScreen.js +1 -1
  107. package/dist/cjs/screens/EmbeddedWalletPasswordUpdateScreen.js +1 -1
  108. package/dist/cjs/screens/ErrorScreen.js +1 -1
  109. package/dist/cjs/screens/FarcasterConnectStatusScreen.js +2 -2
  110. package/dist/cjs/screens/FarcasterSignerStatusScreen.js +2 -2
  111. package/dist/cjs/screens/Funding/AwaitingEvmToSolBridgingScreen.js +1 -1
  112. package/dist/cjs/screens/Funding/AwaitingExternalSolanaTransferScreen.js +2 -2
  113. package/dist/cjs/screens/Funding/AwaitingExternalTransferScreen.js +1 -1
  114. package/dist/cjs/screens/Funding/AwaitingSolToEvmBridgingScreen.js +1 -1
  115. package/dist/cjs/screens/Funding/BridgeNetworkSelectionView.js +1 -1
  116. package/dist/cjs/screens/Funding/FundingEditAmountScreen.js +1 -1
  117. package/dist/cjs/screens/Funding/FundingMethodSelectionScreen.js +1 -1
  118. package/dist/cjs/screens/Funding/ManualTransferScreen.js +1 -1
  119. package/dist/cjs/screens/Funding/TransferFromWalletScreen.js +1 -1
  120. package/dist/cjs/screens/Funding/TransferOrBridgeLoadingScreen.js +1 -1
  121. package/dist/cjs/screens/Funding/styles.js +1 -1
  122. package/dist/cjs/screens/LandingScreen/ConnectOrCreateScreen.js +1 -1
  123. package/dist/cjs/screens/LandingScreen/CustomLandingScreenView.js +1 -1
  124. package/dist/cjs/screens/LandingScreen/EmailButton.js +1 -1
  125. package/dist/cjs/screens/LandingScreen/FarcasterButton.js +1 -1
  126. package/dist/cjs/screens/LandingScreen/LandingScreen.js +1 -1
  127. package/dist/cjs/screens/LandingScreen/LandingScreenView.js +1 -1
  128. package/dist/cjs/screens/LandingScreen/PasskeyLink.js +1 -1
  129. package/dist/cjs/screens/LandingScreen/SmsButton.js +1 -1
  130. package/dist/cjs/screens/LandingScreen/SocialButton.js +1 -1
  131. package/dist/cjs/screens/LandingScreen/TelegramButton.js +1 -1
  132. package/dist/cjs/screens/LinkEmailScreen.js +1 -1
  133. package/dist/cjs/screens/LinkWalletScreen.js +1 -1
  134. package/dist/cjs/screens/MfaScreens/EnrollPasskey.js +1 -1
  135. package/dist/cjs/screens/MfaScreens/EnrollSms.js +1 -1
  136. package/dist/cjs/screens/MfaScreens/EnrollTotp.js +1 -1
  137. package/dist/cjs/screens/MfaScreens/MfaEnrollmentFlowScreen.js +1 -1
  138. package/dist/cjs/screens/MfaScreens/MfaVerifyFlowScreen.js +1 -1
  139. package/dist/cjs/screens/MfaScreens/VerifyWithPasskey.js +1 -1
  140. package/dist/cjs/screens/OAuthStatusScreen.js +1 -1
  141. package/dist/cjs/screens/Recovery/PasswordRecoveryScreen.js +1 -1
  142. package/dist/cjs/screens/Recovery/RecoveryPasswordCreateScreen.js +1 -1
  143. package/dist/cjs/screens/Recovery/RecoverySelectionScreen.js +1 -1
  144. package/dist/cjs/screens/Recovery/SetAutomaticRecoveryScreen.js +1 -1
  145. package/dist/cjs/screens/SendSolanaTransactionScreen/SendSolanaTransactionScreen.js +1 -1
  146. package/dist/cjs/screens/SendSolanaTransactionScreen/SolanaTransactionReceiptView.js +1 -1
  147. package/dist/cjs/screens/SendTransactionScreen/SendTransactionScreen.js +1 -1
  148. package/dist/cjs/screens/SendTransactionScreen/SendTransactionScreenView.js +1 -1
  149. package/dist/cjs/screens/SendTransactionScreen/TransactionDetail.js +1 -1
  150. package/dist/cjs/screens/SendTransactionScreen/TransactionErrorView.js +1 -1
  151. package/dist/cjs/screens/SendTransactionScreen/TransactionReceiptView.js +1 -1
  152. package/dist/cjs/screens/SendTransactionScreen/index.js +1 -1
  153. package/dist/cjs/screens/SendTransactionScreen/usePrepareTransaction.js +1 -1
  154. package/dist/cjs/screens/SignRequestScreen.js +1 -1
  155. package/dist/cjs/screens/TelegramAuthScreen.js +1 -1
  156. package/dist/cjs/screens/UpdateEmailScreen.js +1 -1
  157. package/dist/cjs/session.js +1 -1
  158. package/dist/cjs/smart-wallets.js +1 -1
  159. package/dist/cjs/solana.js +1 -1
  160. package/dist/cjs/svg/qr-codes.js +1 -1
  161. package/dist/cjs/ui.js +1 -1
  162. package/dist/cjs/utils/eth/getPublicClient.js +1 -0
  163. package/dist/cjs/utils/index.js +1 -1
  164. package/dist/dts/index.d.mts +703 -101
  165. package/dist/dts/index.d.ts +703 -101
  166. package/dist/dts/solana.d.mts +2 -4
  167. package/dist/dts/solana.d.ts +2 -4
  168. package/dist/dts/{types-DLYwr0wq.d.mts → types-BlSTYBTj.d.mts} +5 -45
  169. package/dist/dts/{types-DLYwr0wq.d.ts → types-BlSTYBTj.d.ts} +5 -45
  170. package/dist/dts/ui.d.mts +1 -3
  171. package/dist/dts/ui.d.ts +1 -3
  172. package/dist/dts/{useFundSolanaWallet-DNaRhc-b.d.mts → useFundSolanaWallet-BSJVk8QT.d.mts} +7 -15
  173. package/dist/dts/{useFundSolanaWallet-DNaRhc-b.d.ts → useFundSolanaWallet-BSJVk8QT.d.ts} +7 -15
  174. package/dist/esm/abstract-smart-wallets.mjs +1 -1
  175. package/dist/esm/actions/importWallet.mjs +1 -1
  176. package/dist/esm/auth-flows/farcaster.mjs +1 -1
  177. package/dist/esm/auth-flows/telegram.mjs +1 -1
  178. package/dist/esm/client/user.mjs +1 -1
  179. package/dist/esm/client.mjs +1 -1
  180. package/dist/esm/components/Captcha.mjs +1 -1
  181. package/dist/esm/components/ConnectEmailForm.mjs +1 -1
  182. package/dist/esm/components/LoginModal.mjs +1 -1
  183. package/dist/esm/components/QrCode.mjs +2 -2
  184. package/dist/esm/components/UpdateEmailForm.mjs +1 -1
  185. package/dist/esm/components/embedded-wallets/PriceDisplay.mjs +3 -3
  186. package/dist/esm/components/embedded-wallets/SolanaTransactionDetails.mjs +1 -1
  187. package/dist/esm/components/embedded-wallets/TransactionDetails.mjs +2 -2
  188. package/dist/esm/components/embedded-wallets/TransactionDetailsWrapper.mjs +1 -1
  189. package/dist/esm/components/embedded-wallets/TransactionTotal.mjs +1 -1
  190. package/dist/esm/components/embedded-wallets/WalletLink.mjs +1 -1
  191. package/dist/esm/components/embedded-wallets/index.mjs +1 -1
  192. package/dist/esm/components/external-wallets/InjectedWalletIcon.mjs +1 -1
  193. package/dist/esm/components/ui/wallet/Address.mjs +1 -1
  194. package/dist/esm/components/ui/wallet/WalletInfoCard.mjs +1 -1
  195. package/dist/esm/components/ui/wallet/WalletInfoCard.story.mjs +1 -1
  196. package/dist/esm/config.mjs +1 -1
  197. package/dist/esm/configuration/context.mjs +1 -1
  198. package/dist/esm/connectors/coinbase.mjs +1 -1
  199. package/dist/esm/connectors/embedded.mjs +1 -1
  200. package/dist/esm/connectors/embeddedProvider.mjs +1 -1
  201. package/dist/esm/connectors/errors.mjs +1 -1
  202. package/dist/esm/connectors/ethereum/EthereumNullConnector.mjs +1 -1
  203. package/dist/esm/connectors/ethereum/index.mjs +1 -1
  204. package/dist/esm/connectors/index.mjs +1 -1
  205. package/dist/esm/connectors/injected.mjs +1 -1
  206. package/dist/esm/connectors/metamask.mjs +1 -1
  207. package/dist/esm/connectors/phantom-solana.mjs +1 -1
  208. package/dist/esm/connectors/phantom.mjs +1 -1
  209. package/dist/esm/connectors/privyProxyProvider.mjs +1 -1
  210. package/dist/esm/connectors/solana/SolanaNullConnector.mjs +1 -1
  211. package/dist/esm/connectors/solana/index.mjs +1 -1
  212. package/dist/esm/connectors/solana/toSolanaWalletConnectors.mjs +1 -1
  213. package/dist/esm/connectors/walletconnect-registry.mjs +1 -1
  214. package/dist/esm/connectors/walletconnect-v2.mjs +1 -1
  215. package/dist/esm/constants.mjs +1 -1
  216. package/dist/esm/embedded-wallets/EmbeddedWalletIframe.mjs +1 -1
  217. package/dist/esm/embedded-wallets/delegated-actions.mjs +1 -1
  218. package/dist/esm/embedded-wallets/rpc/index.mjs +1 -1
  219. package/dist/esm/embedded-wallets/solana/provider.mjs +1 -1
  220. package/dist/esm/errors-l5CH-t4_.mjs +1 -0
  221. package/dist/esm/hooks/captcha-context.mjs +1 -1
  222. package/dist/esm/hooks/events-context.mjs +1 -1
  223. package/dist/esm/hooks/internal-context.mjs +1 -1
  224. package/dist/esm/hooks/privy-context.mjs +1 -1
  225. package/dist/esm/hooks/privy-provider.mjs +1 -1
  226. package/dist/esm/hooks/smart-wallets-provider.mjs +1 -1
  227. package/dist/esm/hooks/useEmbeddedWalletCreate.mjs +1 -1
  228. package/dist/esm/hooks/useFormattedBalances.mjs +1 -1
  229. package/dist/esm/hooks/useImportWallet.mjs +1 -1
  230. package/dist/esm/hooks/useLinkWithSiwe.mjs +1 -1
  231. package/dist/esm/hooks/useLoginWithEmail.mjs +1 -1
  232. package/dist/esm/hooks/useLoginWithOAuth.mjs +1 -1
  233. package/dist/esm/hooks/useLoginWithPasskey.mjs +1 -1
  234. package/dist/esm/hooks/useLoginWithSms.mjs +1 -1
  235. package/dist/esm/hooks/usePrivy.mjs +1 -1
  236. package/dist/esm/hooks/useSolanaWallets.mjs +1 -1
  237. package/dist/esm/hooks/useWalletBalance.mjs +1 -1
  238. package/dist/esm/index.mjs +1 -1
  239. package/dist/esm/lib/abstract-smart-wallets.mjs +1 -1
  240. package/dist/esm/lib/erc20/actions/getErc20TokenInfo.mjs +1 -1
  241. package/dist/esm/lib/ethers.mjs +1 -1
  242. package/dist/esm/lib/funding/prepareFundingModalData.mjs +1 -1
  243. package/dist/esm/lib/smart-wallets-shared.mjs +1 -1
  244. package/dist/esm/lib/smart-wallets.mjs +1 -1
  245. package/dist/esm/lib/viem/prepareTransactionRequest.mjs +1 -0
  246. package/dist/esm/lib/viem/toViemTransactionSerializable.mjs +1 -0
  247. package/dist/esm/lib/wallets/actions/getBalanceForChains.mjs +1 -1
  248. package/dist/esm/lib/wallets/actions/getErc20Balance.mjs +1 -1
  249. package/dist/esm/privy-components/user-pill/Account.mjs +1 -1
  250. package/dist/esm/privy-components/user-pill/PrimaryAccount.mjs +1 -1
  251. package/dist/esm/privy-components/user-pill/PrimaryWallet.mjs +1 -1
  252. package/dist/esm/privy-components/user-pill/UserMenu.mjs +1 -1
  253. package/dist/esm/privy-components/user-pill/UserPill.mjs +2 -2
  254. package/dist/esm/privy-components/user-pill/UserPill.test.mjs +1 -1
  255. package/dist/esm/privy-components/user-pill/screens/AccountScreen.mjs +1 -1
  256. package/dist/esm/privy-components/user-pill/screens/LinkedAccountsScreen.mjs +1 -1
  257. package/dist/esm/privy-components/user-pill/screens/MenuScreen.mjs +1 -1
  258. package/dist/esm/privy-components/wallets-pill/ActiveWalletCard.mjs +1 -1
  259. package/dist/esm/privy-components/wallets-pill/ConnectWalletView.mjs +1 -1
  260. package/dist/esm/privy-components/wallets-pill/SelectActiveWalletView.mjs +1 -1
  261. package/dist/esm/privy-components/wallets-pill/WalletCardView.mjs +1 -1
  262. package/dist/esm/privy-components/wallets-pill/WalletsDialog.mjs +1 -1
  263. package/dist/esm/privy-components/wallets-pill/useActiveWallet.mjs +1 -1
  264. package/dist/esm/privy-provider-CMFBXAga.mjs +2 -0
  265. package/dist/esm/screens/AccountTransferScreen/EmbeddedWalletInfoView.mjs +1 -1
  266. package/dist/esm/screens/AccountTransferScreen/LinkConflictScreen.mjs +1 -1
  267. package/dist/esm/screens/AffirmativeConsentScreen.mjs +1 -1
  268. package/dist/esm/screens/AwaitingPasswordlessCodeScreen.mjs +1 -1
  269. package/dist/esm/screens/CaptchaScreen.mjs +1 -1
  270. package/dist/esm/screens/ConnectOnlyAuthenticatedScreen.mjs +1 -1
  271. package/dist/esm/screens/ConnectOnlyLandingScreen.mjs +1 -1
  272. package/dist/esm/screens/ConnectOnlyStatusScreen.mjs +1 -1
  273. package/dist/esm/screens/ConnectionStatusScreen.mjs +1 -1
  274. package/dist/esm/screens/CrossAppAuthScreen.mjs +1 -1
  275. package/dist/esm/screens/DelegatedActionsConsentScreen.mjs +1 -1
  276. package/dist/esm/screens/EmbeddedWalletConnectingScreen.mjs +1 -1
  277. package/dist/esm/screens/EmbeddedWalletCreatedScreen.mjs +1 -1
  278. package/dist/esm/screens/EmbeddedWalletKeyExportScreen.mjs +2 -2
  279. package/dist/esm/screens/EmbeddedWalletOnAccountCreateScreen.mjs +1 -1
  280. package/dist/esm/screens/EmbeddedWalletPasswordUpdateScreen.mjs +1 -1
  281. package/dist/esm/screens/ErrorScreen.mjs +1 -1
  282. package/dist/esm/screens/FarcasterConnectStatusScreen.mjs +2 -2
  283. package/dist/esm/screens/FarcasterSignerStatusScreen.mjs +2 -2
  284. package/dist/esm/screens/Funding/AwaitingEvmToSolBridgingScreen.mjs +1 -1
  285. package/dist/esm/screens/Funding/AwaitingExternalSolanaTransferScreen.mjs +2 -2
  286. package/dist/esm/screens/Funding/AwaitingExternalTransferScreen.mjs +2 -2
  287. package/dist/esm/screens/Funding/AwaitingSolToEvmBridgingScreen.mjs +1 -1
  288. package/dist/esm/screens/Funding/BridgeNetworkSelectionView.mjs +1 -1
  289. package/dist/esm/screens/Funding/FundingEditAmountScreen.mjs +1 -1
  290. package/dist/esm/screens/Funding/FundingMethodSelectionScreen.mjs +1 -1
  291. package/dist/esm/screens/Funding/ManualTransferScreen.mjs +1 -1
  292. package/dist/esm/screens/Funding/TransferFromWalletScreen.mjs +1 -1
  293. package/dist/esm/screens/Funding/TransferOrBridgeLoadingScreen.mjs +1 -1
  294. package/dist/esm/screens/Funding/styles.mjs +1 -1
  295. package/dist/esm/screens/LandingScreen/ConnectOrCreateScreen.mjs +1 -1
  296. package/dist/esm/screens/LandingScreen/CustomLandingScreenView.mjs +1 -1
  297. package/dist/esm/screens/LandingScreen/EmailButton.mjs +1 -1
  298. package/dist/esm/screens/LandingScreen/FarcasterButton.mjs +1 -1
  299. package/dist/esm/screens/LandingScreen/LandingScreen.mjs +1 -1
  300. package/dist/esm/screens/LandingScreen/LandingScreenView.mjs +1 -1
  301. package/dist/esm/screens/LandingScreen/PasskeyLink.mjs +1 -1
  302. package/dist/esm/screens/LandingScreen/SmsButton.mjs +1 -1
  303. package/dist/esm/screens/LandingScreen/SocialButton.mjs +1 -1
  304. package/dist/esm/screens/LandingScreen/TelegramButton.mjs +1 -1
  305. package/dist/esm/screens/LinkEmailScreen.mjs +1 -1
  306. package/dist/esm/screens/LinkWalletScreen.mjs +1 -1
  307. package/dist/esm/screens/MfaScreens/EnrollPasskey.mjs +1 -1
  308. package/dist/esm/screens/MfaScreens/EnrollSms.mjs +1 -1
  309. package/dist/esm/screens/MfaScreens/EnrollTotp.mjs +1 -1
  310. package/dist/esm/screens/MfaScreens/MfaEnrollmentFlowScreen.mjs +1 -1
  311. package/dist/esm/screens/MfaScreens/MfaVerifyFlowScreen.mjs +1 -1
  312. package/dist/esm/screens/MfaScreens/VerifyWithPasskey.mjs +1 -1
  313. package/dist/esm/screens/OAuthStatusScreen.mjs +1 -1
  314. package/dist/esm/screens/Recovery/PasswordRecoveryScreen.mjs +1 -1
  315. package/dist/esm/screens/Recovery/RecoveryPasswordCreateScreen.mjs +1 -1
  316. package/dist/esm/screens/Recovery/RecoverySelectionScreen.mjs +1 -1
  317. package/dist/esm/screens/Recovery/SetAutomaticRecoveryScreen.mjs +1 -1
  318. package/dist/esm/screens/SendSolanaTransactionScreen/SendSolanaTransactionScreen.mjs +1 -1
  319. package/dist/esm/screens/SendSolanaTransactionScreen/SolanaTransactionReceiptView.mjs +1 -1
  320. package/dist/esm/screens/SendTransactionScreen/SendTransactionScreen.mjs +1 -1
  321. package/dist/esm/screens/SendTransactionScreen/SendTransactionScreenView.mjs +1 -1
  322. package/dist/esm/screens/SendTransactionScreen/TransactionDetail.mjs +1 -1
  323. package/dist/esm/screens/SendTransactionScreen/TransactionErrorView.mjs +1 -1
  324. package/dist/esm/screens/SendTransactionScreen/TransactionReceiptView.mjs +1 -1
  325. package/dist/esm/screens/SendTransactionScreen/index.mjs +1 -1
  326. package/dist/esm/screens/SendTransactionScreen/usePrepareTransaction.mjs +1 -1
  327. package/dist/esm/screens/SignRequestScreen.mjs +1 -1
  328. package/dist/esm/screens/TelegramAuthScreen.mjs +1 -1
  329. package/dist/esm/screens/UpdateEmailScreen.mjs +1 -1
  330. package/dist/esm/session.mjs +1 -1
  331. package/dist/esm/smart-wallets.mjs +1 -1
  332. package/dist/esm/solana.mjs +1 -1
  333. package/dist/esm/svg/qr-codes.mjs +1 -1
  334. package/dist/esm/ui.mjs +1 -1
  335. package/dist/esm/utils/eth/getPublicClient.mjs +1 -0
  336. package/dist/esm/utils/index.mjs +1 -1
  337. package/package.json +7 -19
  338. package/dist/cjs/errors-3fxlG6WB.js +0 -1
  339. package/dist/cjs/ethers-De6TACnn.js +0 -1
  340. package/dist/cjs/index-DNFBYH7-.js +0 -1
  341. package/dist/cjs/lib/polygonGasStation.js +0 -1
  342. package/dist/cjs/privy-provider-Bb_yjats.js +0 -2
  343. package/dist/cjs/screens/SendTransactionScreen/EthersTransactionError.js +0 -1
  344. package/dist/esm/errors-9ucGZPEs.mjs +0 -1
  345. package/dist/esm/ethers-Cz-frLvN.mjs +0 -1
  346. package/dist/esm/index-B3QfI7v9.mjs +0 -1
  347. package/dist/esm/lib/polygonGasStation.mjs +0 -1
  348. package/dist/esm/privy-provider-Bvi3C9T4.mjs +0 -2
  349. package/dist/esm/screens/SendTransactionScreen/EthersTransactionError.mjs +0 -1
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as e,jsx as r}from"react/jsx-runtime";import n from"@heroicons/react/24/outline/CheckCircleIcon";import t from"@heroicons/react/24/outline/DevicePhoneMobileIcon";import{useState as i}from"react";import{PrimaryButton as c}from"../../components/Button.mjs";import{CopytoClipboardButton as s}from"../../components/CopyToClipboard.mjs";import{CenteredItemWithPadding as m,CenteredItem as a}from"../../components/Layouts.mjs";import{ModalFooter as p}from"../../components/ModalFooter.mjs";import{ModalHeader as l}from"../../components/ModalHeader.mjs";import{NumericPinInput as h}from"../../components/PinInput.mjs";import{errorIndicatesMfaRateLimit as d,errorIndicatesMfaVerificationFailed as j,errorIndicatesMfaTimeout as u,errorIndicatesMfaCanceled as f}from"../../embedded-wallets/errors.mjs";import{usePrivyModal as y}from"../../hooks/modal-context.mjs";import{useMfaEnrollment as g}from"../../hooks/useMfaEnrollment.mjs";import{AddTotpProviderQr as v}from"../../svg/qr-codes.mjs";import{Title as b,SubTitle as C,BottomSection as k,IconWrapper as w,Container as x}from"./StyledComponents.mjs";import"styled-components";import"../../components/Loader.mjs";import"../../svg/checkmark.mjs";import"../../svg/copy.mjs";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/internal-context.mjs";import"../../hooks/index.mjs";import"react-device-detect";import"../../embedded-wallets/types.mjs";import"../../components/PrefetchedImage.mjs";import"../index.mjs";import"../../hooks/privy-context.mjs";import"@heroicons/react/24/solid/ShieldCheckIcon";import"../../components/QrCode.mjs";import"qrcode";import"../../svg/black-rounded-square.mjs";import"../../utils/index.mjs";import"@ethersproject/providers";import"../../connectors/get-legacy-injected-providers.mjs";import"../../connectors/is-wallet-installed.mjs";import"../../errors.mjs";import"ofetch";import"../../svg/coinbase-wallet.mjs";const I=({onComplete:I,onClose:E,onReset:S,totpInfo:A})=>{let[F,M]=i("enroll"),[P,T]=i(!1),{submitEnrollmentWithTotp:z}=g(),{data:Q}=y();function R(){Q?.mfaEnrollmentFlow?.onSuccess(),I()}/*#__PURE__*/return o(e,"enroll"===F?{children:[/*#__PURE__*/r(l,{backFn:S,onClose:E},"header"),/*#__PURE__*/r(b,{children:"Scan QR code"}),/*#__PURE__*/r(C,{children:"Open your authenticator app and scan the QR code to continue."}),/*#__PURE__*/r(m,{children:/*#__PURE__*/r(v,{authUrl:A.authUrl,size:200})}),/*#__PURE__*/o(k,{children:[/*#__PURE__*/r(a,{children:/*#__PURE__*/r(s,{itemName:"secret",text:A.secret})}),/*#__PURE__*/r(c,{onClick:function(){M("verify")},children:"Continue"})]}),/*#__PURE__*/r(p,{})]}:P?{children:[/*#__PURE__*/r(l,{onClose:R},"header"),/*#__PURE__*/r(w,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/r(n,{})}),/*#__PURE__*/r(b,{children:"Authenticator app verification added"}),/*#__PURE__*/r(C,{children:"From now on, you'll enter the verification code generated by your authenticator app whenever you use your Privy wallet."}),/*#__PURE__*/r(k,{children:/*#__PURE__*/r(c,{onClick:R,children:"Done"})}),/*#__PURE__*/r(p,{})]}:{children:[/*#__PURE__*/r(l,{backFn:function(){"verify"===F?M("enroll"):S()},onClose:E},"header"),/*#__PURE__*/r(w,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/r(t,{})}),/*#__PURE__*/r(b,{children:"Enter enrollment code"}),/*#__PURE__*/r(x,{children:/*#__PURE__*/r(h,{onChange:async function(o){try{if(!o)return;await z({mfaCode:o}),T(!0)}catch(o){if(d(o))throw Error("You have exceeded the maximum number of attempts. Please close this window and try again in 10 seconds.");if(j(o))throw Error("The code you entered is not valid");if(u(o))throw Error("You have exceeded the time limit for code entry. Please try again in 30 seconds.");throw f(o)?Error("Verification canceled"):Error("Unknown error")}}})}),/*#__PURE__*/o(C,{children:["To continue, enter the 6-digit code generated from your ",/*#__PURE__*/r("strong",{children:"authenticator app"})]}),/*#__PURE__*/r(p,{})]})};export{I as EnrollTotp};
1
+ import{jsxs as o,Fragment as e,jsx as r}from"react/jsx-runtime";import t from"@heroicons/react/24/outline/CheckCircleIcon";import n from"@heroicons/react/24/outline/DevicePhoneMobileIcon";import{useState as i}from"react";import{PrimaryButton as c}from"../../components/Button.mjs";import{CopytoClipboardButton as s}from"../../components/CopyToClipboard.mjs";import{CenteredItemWithPadding as m,CenteredItem as a}from"../../components/Layouts.mjs";import{ModalFooter as p}from"../../components/ModalFooter.mjs";import{ModalHeader as l}from"../../components/ModalHeader.mjs";import{NumericPinInput as h}from"../../components/PinInput.mjs";import{errorIndicatesMfaRateLimit as d,errorIndicatesMfaVerificationFailed as j,errorIndicatesMfaTimeout as u,errorIndicatesMfaCanceled as f}from"../../embedded-wallets/errors.mjs";import{usePrivyModal as y}from"../../hooks/modal-context.mjs";import{useMfaEnrollment as g}from"../../hooks/useMfaEnrollment.mjs";import{AddTotpProviderQr as v}from"../../svg/qr-codes.mjs";import{Title as b,SubTitle as C,BottomSection as k,IconWrapper as w,Container as x}from"./StyledComponents.mjs";import"styled-components";import"../../components/Loader.mjs";import"../../svg/checkmark.mjs";import"../../svg/copy.mjs";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/internal-context.mjs";import"../../hooks/index.mjs";import"react-device-detect";import"../../embedded-wallets/types.mjs";import"../../components/PrefetchedImage.mjs";import"../index.mjs";import"../../hooks/privy-context.mjs";import"@heroicons/react/24/solid/ShieldCheckIcon";import"../../components/QrCode.mjs";import"qrcode";import"../../svg/black-rounded-square.mjs";import"../../utils/index.mjs";import"../../connectors/get-legacy-injected-providers.mjs";import"../../connectors/is-wallet-installed.mjs";import"../../errors.mjs";import"ofetch";import"../../utils/eth/getPublicClient.mjs";import"viem";import"../../svg/coinbase-wallet.mjs";const I=({onComplete:I,onClose:E,onReset:S,totpInfo:P})=>{let[A,F]=i("enroll"),[M,T]=i(!1),{submitEnrollmentWithTotp:z}=g(),{data:Q}=y();function R(){Q?.mfaEnrollmentFlow?.onSuccess(),I()}/*#__PURE__*/return o(e,"enroll"===A?{children:[/*#__PURE__*/r(l,{backFn:S,onClose:E},"header"),/*#__PURE__*/r(b,{children:"Scan QR code"}),/*#__PURE__*/r(C,{children:"Open your authenticator app and scan the QR code to continue."}),/*#__PURE__*/r(m,{children:/*#__PURE__*/r(v,{authUrl:P.authUrl,size:200})}),/*#__PURE__*/o(k,{children:[/*#__PURE__*/r(a,{children:/*#__PURE__*/r(s,{itemName:"secret",text:P.secret})}),/*#__PURE__*/r(c,{onClick:function(){F("verify")},children:"Continue"})]}),/*#__PURE__*/r(p,{})]}:M?{children:[/*#__PURE__*/r(l,{onClose:R},"header"),/*#__PURE__*/r(w,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/r(t,{})}),/*#__PURE__*/r(b,{children:"Authenticator app verification added"}),/*#__PURE__*/r(C,{children:"From now on, you'll enter the verification code generated by your authenticator app whenever you use your Privy wallet."}),/*#__PURE__*/r(k,{children:/*#__PURE__*/r(c,{onClick:R,children:"Done"})}),/*#__PURE__*/r(p,{})]}:{children:[/*#__PURE__*/r(l,{backFn:function(){"verify"===A?F("enroll"):S()},onClose:E},"header"),/*#__PURE__*/r(w,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/r(n,{})}),/*#__PURE__*/r(b,{children:"Enter enrollment code"}),/*#__PURE__*/r(x,{children:/*#__PURE__*/r(h,{onChange:async function(o){try{if(!o)return;await z({mfaCode:o}),T(!0)}catch(o){if(d(o))throw Error("You have exceeded the maximum number of attempts. Please close this window and try again in 10 seconds.");if(j(o))throw Error("The code you entered is not valid");if(u(o))throw Error("You have exceeded the time limit for code entry. Please try again in 30 seconds.");throw f(o)?Error("Verification canceled"):Error("Unknown error")}}})}),/*#__PURE__*/o(C,{children:["To continue, enter the 6-digit code generated from your ",/*#__PURE__*/r("strong",{children:"authenticator app"})]}),/*#__PURE__*/r(p,{})]})};export{I as EnrollTotp};
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as e,jsx as n}from"react/jsx-runtime";import t from"@heroicons/react/24/outline/QuestionMarkCircleIcon";import r from"@heroicons/react/24/outline/ShieldCheckIcon";import i from"@heroicons/react/24/solid/CheckBadgeIcon";import s from"@heroicons/react/24/solid/IdentificationIcon";import{useState as c,useEffect as m}from"react";import{PrimaryButton as a,SecondaryButton as l}from"../../components/Button.mjs";import{Loader as p}from"../../components/Loader.mjs";import{ModalFooter as h}from"../../components/ModalFooter.mjs";import{ModalHeader as d}from"../../components/ModalHeader.mjs";import{usePrivyInternal as u}from"../../hooks/internal-context.mjs";import{usePrivyModal as j}from"../../hooks/modal-context.mjs";import{usePrivyContext as f}from"../../hooks/privy-context.mjs";import{useMfa as y}from"../../hooks/useMfa.mjs";import{useMfaEnrollment as k}from"../../hooks/useMfaEnrollment.mjs";import{MfaShieldIcon as g}from"../../svg/mfa-shield.mjs";import{EnrollLandingScreen as C}from"./EnrollLandingScreen.mjs";import{EnrollPasskey as v}from"./EnrollPasskey.mjs";import{EnrollSms as M}from"./EnrollSms.mjs";import{EnrollTotp as I}from"./EnrollTotp.mjs";import{AppLogoContainer as b,Container as w,IconWrapper as S,Title as A,SubTitle as x,BottomSection as P,List as E,ListItem as R,ListItemIcon as T}from"./StyledComponents.mjs";import"styled-components";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/index.mjs";import"../../components/PrefetchedImage.mjs";import"../index.mjs";import"@heroicons/react/24/outline/ChevronRightIcon";import"@heroicons/react/24/outline/DevicePhoneMobileIcon";import"@heroicons/react/24/outline/FingerPrintIcon";import"@heroicons/react/24/outline/MinusCircleIcon";import"@heroicons/react/24/outline/PhoneIcon";import"../../components/ui/chips/Chip.mjs";import"../../components/ui/animation/LoadingSkeleton.mjs";import"../LandingScreen/styles.mjs";import"@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon";import"@heroicons/react/24/outline/CheckCircleIcon";import"@heroicons/react/24/outline/ClockIcon";import"../../svg/face-id.mjs";import"../../svg/fingerprint.mjs";import"../ErrorScreen.mjs";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"../../components/CircleBorder.mjs";import"../../components/layout/StackedContainer.mjs";import"../../embedded-wallets/errors.mjs";import"../../embedded-wallets/types.mjs";import"../../errors.mjs";import"ofetch";import"../../hooks/captcha-context.mjs";import"../../utils/index.mjs";import"@ethersproject/providers";import"../../connectors/get-legacy-injected-providers.mjs";import"../../connectors/is-wallet-installed.mjs";import"../../svg/lock-closed.mjs";import"../LinkPasskeyScreen.mjs";import"@heroicons/react/24/outline/TrashIcon";import"@heroicons/react/24/solid/LockClosedIcon";import"../../components/ConnectPhoneForm.mjs";import"../../recent-login/context.mjs";import"../../hooks/events-context.mjs";import"../../storage.mjs";import"../../PhoneCountryDropdown-BXDwBRL5.mjs";import"../../components/PinInput.mjs";import"react-device-detect";import"../../components/CopyToClipboard.mjs";import"../../svg/checkmark.mjs";import"../../svg/copy.mjs";import"../../components/Layouts.mjs";import"../../svg/qr-codes.mjs";import"@heroicons/react/24/solid/ShieldCheckIcon";import"../../components/QrCode.mjs";import"qrcode";import"../../svg/black-rounded-square.mjs";import"../../svg/coinbase-wallet.mjs";const F=()=>{let{user:F,enrollInMfa:L}=f(),[B,W]=c(null),{unenrollWithSms:q,unenrollWithTotp:z,unenrollWithPasskey:D}=k(),{app:H,ready:O,data:Y,onUserCloseViaDialogOrKeybindRef:Q}=j(),{closePrivyModal:K}=u(),{promptMfa:N}=y(),{initEnrollmentWithTotp:U}=k(),[V,X]=c(!1),[G,J]=c(null),[Z,$]=c(null),_=()=>{K({shouldCallAuthOnSuccess:!0}),L(!1),setTimeout((()=>{W(null),J(null)}),500)},{initEnrollmentWithPasskey:oo,submitEnrollmentWithPasskey:eo}=k(),[no,to]=c(!1),[ro,io]=c(null);Q.current=_;let so=F?.mfaMethods.includes("sms"),co=!!F?.phone,mo=F?.mfaMethods.includes("totp"),ao=F?.mfaMethods.includes("passkey"),lo=so||mo||ao,po=F?.linkedAccounts.filter((o=>"passkey"===o.type)).map((o=>o.credentialId))??[];function ho(){W(null),J(null)}if(m((()=>{lo&&X(!0)}),[lo]),!O||!F||!H/*#__PURE__*/)return o(e,{children:[/*#__PURE__*/n(d,{onClose:_},"header"),/*#__PURE__*/n(b,{children:/*#__PURE__*/n(g,{})}),/*#__PURE__*/n(w,{children:/*#__PURE__*/n(p,{})}),/*#__PURE__*/n(h,{})]});if("sms"===B)/*#__PURE__*/return o(e,{children:[/*#__PURE__*/n(d,{backFn:ho,onClose:_},"header"),/*#__PURE__*/n(S,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/n(t,{})}),/*#__PURE__*/n(A,{children:"Remove SMS verification?"}),/*#__PURE__*/o(x,{children:["MFA adds an extra layer of security to your ",H?.name," account. Make sure you have other methods to secure your account."]}),/*#__PURE__*/n(P,{children:/*#__PURE__*/n(a,{warn:!0,onClick:async function(){W(null);try{await q()}catch(o){W(null)}},children:"Remove SMS for MFA"})}),/*#__PURE__*/n(h,{})]});if("totp"===B)/*#__PURE__*/return o(e,{children:[/*#__PURE__*/n(d,{backFn:ho,onClose:_},"header"),/*#__PURE__*/n(S,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/n(t,{})}),/*#__PURE__*/n(A,{children:"Remove Authenticator App verification?"}),/*#__PURE__*/o(x,{children:["MFA adds an extra layer of security to your ",H?.name," account. Make sure you have other methods to secure your account."]}),/*#__PURE__*/n(P,{children:/*#__PURE__*/n(a,{warn:!0,onClick:async function(){W(null);try{await z()}catch(o){W(null)}},children:"Remove Authenticator App for MFA"})}),/*#__PURE__*/n(h,{})]});if("passkey"===B)/*#__PURE__*/return o(e,{children:[/*#__PURE__*/n(d,{backFn:ho,onClose:_},"header"),/*#__PURE__*/n(S,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/n(t,{})}),/*#__PURE__*/n(A,{children:"Are you sure you want to remove passkey verification?"}),/*#__PURE__*/n(x,{children:"This will disable any passkeys you have set up for verification. You’ll still be able to login with your passkeys if you’ve set up passkey login."}),/*#__PURE__*/n(P,{children:/*#__PURE__*/n(a,{warn:!0,onClick:async function(){W(null);try{await N(),await D()}catch(o){W(null)}},children:"Yes, remove"})}),/*#__PURE__*/n(h,{})]});if(0===Y.mfaEnrollmentFlow.mfaMethods.length&&!lo)/*#__PURE__*/return o(e,{children:[/*#__PURE__*/n(d,{onClose:_},"header"),/*#__PURE__*/n(S,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/n(r,{})}),/*#__PURE__*/n(A,{children:"Add more security"}),/*#__PURE__*/o(x,{children:[H?.name," does not have any verification methods enabled."]}),/*#__PURE__*/n(P,{children:/*#__PURE__*/n(a,{onClick:_,children:"Close"})}),/*#__PURE__*/n(h,{})]});let uo=!lo&&!V;return uo?/*#__PURE__*/o(e,{children:[/*#__PURE__*/n(d,{onClose:_},"header"),/*#__PURE__*/n(S,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/n(r,{})}),/*#__PURE__*/n(A,{children:"Transaction Protection"}),/*#__PURE__*/n(x,{children:"Set up transaction protection to add an extra layer of security to your account"}),/*#__PURE__*/o(E,{children:[/*#__PURE__*/o(R,{children:[/*#__PURE__*/n(T,{children:/*#__PURE__*/n(i,{})}),"Enable 2-Step verification for your ",H?.name," wallet."]}),/*#__PURE__*/o(R,{children:[/*#__PURE__*/n(T,{children:/*#__PURE__*/n(s,{})}),"You'll be prompted to authenticate to complete transactions."]})]}),/*#__PURE__*/o(P,{children:[/*#__PURE__*/n(a,{onClick:()=>X(!0),children:"Continue"}),/*#__PURE__*/n(l,{onClick:_,children:"Not now"})]}),/*#__PURE__*/n(h,{})]}):"sms"===G?/*#__PURE__*/n(M,{onComplete:_,onReset:ho,onClose:_}):"totp"===G&&Z?/*#__PURE__*/n(I,{onComplete:_,onClose:_,onReset:ho,totpInfo:Z}):"passkey"===G?/*#__PURE__*/n(v,{onComplete:_,onReset:ho,onClose:_}):/*#__PURE__*/n(C,{showIntro:uo,userMfaMethods:F.mfaMethods,appMfaMethods:H.mfa.methods,userHasAuthSms:co,onBackToIntro:function(){X(!1)},handleSelectMethod:async function(o){return await N().catch(io),"totp"===o?(J(o),$(null),void U().then((o=>{$(o)})).catch((()=>{$(null),ho()}))):"passkey"===o&&1===po.length?await async function(){to(!0);try{await oo(),await eo({credentialIds:po})}catch(o){io(o)}finally{to(!1)}}():void J(o)},isTotpLoading:"totp"===G&&!Z,isPasskeyLoading:no,error:ro,onClose:_,setRemovingMfaMethod:W})};export{F as MfaEnrollmentFlowScreen};
1
+ import{jsxs as o,Fragment as e,jsx as n}from"react/jsx-runtime";import t from"@heroicons/react/24/outline/QuestionMarkCircleIcon";import r from"@heroicons/react/24/outline/ShieldCheckIcon";import i from"@heroicons/react/24/solid/CheckBadgeIcon";import s from"@heroicons/react/24/solid/IdentificationIcon";import{useState as c,useEffect as m}from"react";import{PrimaryButton as a,SecondaryButton as l}from"../../components/Button.mjs";import{Loader as p}from"../../components/Loader.mjs";import{ModalFooter as h}from"../../components/ModalFooter.mjs";import{ModalHeader as d}from"../../components/ModalHeader.mjs";import{usePrivyInternal as u}from"../../hooks/internal-context.mjs";import{usePrivyModal as j}from"../../hooks/modal-context.mjs";import{usePrivyContext as f}from"../../hooks/privy-context.mjs";import{useMfa as y}from"../../hooks/useMfa.mjs";import{useMfaEnrollment as k}from"../../hooks/useMfaEnrollment.mjs";import{MfaShieldIcon as g}from"../../svg/mfa-shield.mjs";import{EnrollLandingScreen as C}from"./EnrollLandingScreen.mjs";import{EnrollPasskey as v}from"./EnrollPasskey.mjs";import{EnrollSms as M}from"./EnrollSms.mjs";import{EnrollTotp as b}from"./EnrollTotp.mjs";import{AppLogoContainer as I,Container as w,IconWrapper as S,Title as A,SubTitle as x,BottomSection as P,List as E,ListItem as R,ListItemIcon as T}from"./StyledComponents.mjs";import"styled-components";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/index.mjs";import"../../components/PrefetchedImage.mjs";import"../index.mjs";import"@heroicons/react/24/outline/ChevronRightIcon";import"@heroicons/react/24/outline/DevicePhoneMobileIcon";import"@heroicons/react/24/outline/FingerPrintIcon";import"@heroicons/react/24/outline/MinusCircleIcon";import"@heroicons/react/24/outline/PhoneIcon";import"../../components/ui/chips/Chip.mjs";import"../../components/ui/animation/LoadingSkeleton.mjs";import"../LandingScreen/styles.mjs";import"@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon";import"@heroicons/react/24/outline/CheckCircleIcon";import"@heroicons/react/24/outline/ClockIcon";import"../../svg/face-id.mjs";import"../../svg/fingerprint.mjs";import"../ErrorScreen.mjs";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"../../components/CircleBorder.mjs";import"../../components/layout/StackedContainer.mjs";import"../../embedded-wallets/errors.mjs";import"../../embedded-wallets/types.mjs";import"../../errors.mjs";import"ofetch";import"../../hooks/captcha-context.mjs";import"../../utils/index.mjs";import"../../connectors/get-legacy-injected-providers.mjs";import"../../connectors/is-wallet-installed.mjs";import"../../utils/eth/getPublicClient.mjs";import"viem";import"../../svg/lock-closed.mjs";import"../LinkPasskeyScreen.mjs";import"@heroicons/react/24/outline/TrashIcon";import"@heroicons/react/24/solid/LockClosedIcon";import"../../components/ConnectPhoneForm.mjs";import"../../recent-login/context.mjs";import"../../hooks/events-context.mjs";import"../../storage.mjs";import"../../PhoneCountryDropdown-BXDwBRL5.mjs";import"../../components/PinInput.mjs";import"react-device-detect";import"../../components/CopyToClipboard.mjs";import"../../svg/checkmark.mjs";import"../../svg/copy.mjs";import"../../components/Layouts.mjs";import"../../svg/qr-codes.mjs";import"@heroicons/react/24/solid/ShieldCheckIcon";import"../../components/QrCode.mjs";import"qrcode";import"../../svg/black-rounded-square.mjs";import"../../svg/coinbase-wallet.mjs";const F=()=>{let{user:F,enrollInMfa:L}=f(),[B,W]=c(null),{unenrollWithSms:q,unenrollWithTotp:z,unenrollWithPasskey:D}=k(),{app:H,ready:O,data:Y,onUserCloseViaDialogOrKeybindRef:Q}=j(),{closePrivyModal:K}=u(),{promptMfa:N}=y(),{initEnrollmentWithTotp:U}=k(),[V,X]=c(!1),[G,J]=c(null),[Z,$]=c(null),_=()=>{K({shouldCallAuthOnSuccess:!0}),L(!1),setTimeout((()=>{W(null),J(null)}),500)},{initEnrollmentWithPasskey:oo,submitEnrollmentWithPasskey:eo}=k(),[no,to]=c(!1),[ro,io]=c(null);Q.current=_;let so=F?.mfaMethods.includes("sms"),co=!!F?.phone,mo=F?.mfaMethods.includes("totp"),ao=F?.mfaMethods.includes("passkey"),lo=so||mo||ao,po=F?.linkedAccounts.filter((o=>"passkey"===o.type)).map((o=>o.credentialId))??[];function ho(){W(null),J(null)}if(m((()=>{lo&&X(!0)}),[lo]),!O||!F||!H/*#__PURE__*/)return o(e,{children:[/*#__PURE__*/n(d,{onClose:_},"header"),/*#__PURE__*/n(I,{children:/*#__PURE__*/n(g,{})}),/*#__PURE__*/n(w,{children:/*#__PURE__*/n(p,{})}),/*#__PURE__*/n(h,{})]});if("sms"===B)/*#__PURE__*/return o(e,{children:[/*#__PURE__*/n(d,{backFn:ho,onClose:_},"header"),/*#__PURE__*/n(S,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/n(t,{})}),/*#__PURE__*/n(A,{children:"Remove SMS verification?"}),/*#__PURE__*/o(x,{children:["MFA adds an extra layer of security to your ",H?.name," account. Make sure you have other methods to secure your account."]}),/*#__PURE__*/n(P,{children:/*#__PURE__*/n(a,{warn:!0,onClick:async function(){W(null);try{await q()}catch(o){W(null)}},children:"Remove SMS for MFA"})}),/*#__PURE__*/n(h,{})]});if("totp"===B)/*#__PURE__*/return o(e,{children:[/*#__PURE__*/n(d,{backFn:ho,onClose:_},"header"),/*#__PURE__*/n(S,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/n(t,{})}),/*#__PURE__*/n(A,{children:"Remove Authenticator App verification?"}),/*#__PURE__*/o(x,{children:["MFA adds an extra layer of security to your ",H?.name," account. Make sure you have other methods to secure your account."]}),/*#__PURE__*/n(P,{children:/*#__PURE__*/n(a,{warn:!0,onClick:async function(){W(null);try{await z()}catch(o){W(null)}},children:"Remove Authenticator App for MFA"})}),/*#__PURE__*/n(h,{})]});if("passkey"===B)/*#__PURE__*/return o(e,{children:[/*#__PURE__*/n(d,{backFn:ho,onClose:_},"header"),/*#__PURE__*/n(S,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/n(t,{})}),/*#__PURE__*/n(A,{children:"Are you sure you want to remove passkey verification?"}),/*#__PURE__*/n(x,{children:"This will disable any passkeys you have set up for verification. You’ll still be able to login with your passkeys if you’ve set up passkey login."}),/*#__PURE__*/n(P,{children:/*#__PURE__*/n(a,{warn:!0,onClick:async function(){W(null);try{await N(),await D()}catch(o){W(null)}},children:"Yes, remove"})}),/*#__PURE__*/n(h,{})]});if(0===Y.mfaEnrollmentFlow.mfaMethods.length&&!lo)/*#__PURE__*/return o(e,{children:[/*#__PURE__*/n(d,{onClose:_},"header"),/*#__PURE__*/n(S,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/n(r,{})}),/*#__PURE__*/n(A,{children:"Add more security"}),/*#__PURE__*/o(x,{children:[H?.name," does not have any verification methods enabled."]}),/*#__PURE__*/n(P,{children:/*#__PURE__*/n(a,{onClick:_,children:"Close"})}),/*#__PURE__*/n(h,{})]});let uo=!lo&&!V;return uo?/*#__PURE__*/o(e,{children:[/*#__PURE__*/n(d,{onClose:_},"header"),/*#__PURE__*/n(S,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/n(r,{})}),/*#__PURE__*/n(A,{children:"Transaction Protection"}),/*#__PURE__*/n(x,{children:"Set up transaction protection to add an extra layer of security to your account"}),/*#__PURE__*/o(E,{children:[/*#__PURE__*/o(R,{children:[/*#__PURE__*/n(T,{children:/*#__PURE__*/n(i,{})}),"Enable 2-Step verification for your ",H?.name," wallet."]}),/*#__PURE__*/o(R,{children:[/*#__PURE__*/n(T,{children:/*#__PURE__*/n(s,{})}),"You'll be prompted to authenticate to complete transactions."]})]}),/*#__PURE__*/o(P,{children:[/*#__PURE__*/n(a,{onClick:()=>X(!0),children:"Continue"}),/*#__PURE__*/n(l,{onClick:_,children:"Not now"})]}),/*#__PURE__*/n(h,{})]}):"sms"===G?/*#__PURE__*/n(M,{onComplete:_,onReset:ho,onClose:_}):"totp"===G&&Z?/*#__PURE__*/n(b,{onComplete:_,onClose:_,onReset:ho,totpInfo:Z}):"passkey"===G?/*#__PURE__*/n(v,{onComplete:_,onReset:ho,onClose:_}):/*#__PURE__*/n(C,{showIntro:uo,userMfaMethods:F.mfaMethods,appMfaMethods:H.mfa.methods,userHasAuthSms:co,onBackToIntro:function(){X(!1)},handleSelectMethod:async function(o){return await N().catch(io),"totp"===o?(J(o),$(null),void U().then((o=>{$(o)})).catch((()=>{$(null),ho()}))):"passkey"===o&&1===po.length?await async function(){to(!0);try{await oo(),await eo({credentialIds:po})}catch(o){io(o)}finally{to(!1)}}():void J(o)},isTotpLoading:"totp"===G&&!Z,isPasskeyLoading:no,error:ro,onClose:_,setRemovingMfaMethod:W})};export{F as MfaEnrollmentFlowScreen};
@@ -1 +1 @@
1
- import{jsx as o,jsxs as e,Fragment as t}from"react/jsx-runtime";import r from"@heroicons/react/24/outline/DevicePhoneMobileIcon";import n from"@heroicons/react/24/outline/FingerPrintIcon";import i from"@heroicons/react/24/outline/PhoneIcon";import s from"@heroicons/react/24/outline/ShieldCheckIcon";import{useState as c,useEffect as m,useRef as a}from"react";import{SecondaryButton as l}from"../../components/Button.mjs";import{ModalFooter as p}from"../../components/ModalFooter.mjs";import{ModalHeader as h}from"../../components/ModalHeader.mjs";import{NumericPinInput as d}from"../../components/PinInput.mjs";import{TransactionDetailsWrapper as u}from"../../components/embedded-wallets/TransactionDetailsWrapper.mjs";import{errorIndicatesMaxMfaRetries as j,errorIndicatesMfaVerificationFailed as f,errorIndicatesMfaTimeout as y}from"../../embedded-wallets/errors.mjs";import{usePrivyInternal as g}from"../../hooks/internal-context.mjs";import{usePrivyModal as k}from"../../hooks/modal-context.mjs";import{usePrivyContext as b}from"../../hooks/privy-context.mjs";import{useMfa as C}from"../../hooks/useMfa.mjs";import{LoginMethodButton as w}from"../LandingScreen/styles.mjs";import{IconWrapper as v,Title as S,SubTitle as x,MethodList as M,Container as I,PrimaryTextButton as T}from"./StyledComponents.mjs";import{VerifyWithPasskey as A}from"./VerifyWithPasskey.mjs";import"styled-components";import"../../components/Loader.mjs";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/index.mjs";import"react-device-detect";import"../../hooks/useGetTokenPrice.mjs";import"../../hooks/useGetSolPrice.mjs";import"../../hooks/useWallets.mjs";import"../../utils/index.mjs";import"@ethersproject/providers";import"../../connectors/get-legacy-injected-providers.mjs";import"../../connectors/is-wallet-installed.mjs";import"../../errors.mjs";import"ofetch";import"../../index-B3QfI7v9.mjs";import"@ethersproject/abstract-signer";import"@ethersproject/bignumber";import"../../ethers-Cz-frLvN.mjs";import"@ethersproject/contracts";import"@ethersproject/transactions";import"@ethersproject/units";import"fetch-retry";import"../../errors-9ucGZPEs.mjs";import"../../components/embedded-wallets/TransactionDetails.mjs";import"../../components/embedded-wallets/DisplayInfoItem.mjs";import"../../components/embedded-wallets/PriceDisplay.mjs";import"../../lib/ethers.mjs";import"../../lib/solana/transaction.mjs";import"../../utils/buffer/readBigInt64LE.mjs";import"../../components/embedded-wallets/TransactionTotal.mjs";import"../../components/Layouts.mjs";import"../../components/primitives/Accordion/index.mjs";import"@heroicons/react/24/outline/ChevronDownIcon";import"../../components/primitives/Accordion/AccordionContext.mjs";import"../../components/embedded-wallets/WalletLink.mjs";import"../../embedded-wallets/types.mjs";import"../../components/PrefetchedImage.mjs";import"../index.mjs";import"@heroicons/react/24/outline/CalendarIcon";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"../../components/layout/StackedContainer.mjs";import"../../svg/face-id.mjs";const E=({open:l,onClose:d})=>{let{user:u}=b(),[g,k]=c(u?.mfaMethods[0]??null),{init:I,cancel:T,submit:E}=C(),[B,D]=c(!1),[L,V]=c(!1),[W,z]=c(null),[F,G]=c(null);m((()=>{k(u?.mfaMethods[0]??null)}),[u?.mfaMethods]);let H=a(!1);m((()=>{!H.current&&g&&l&&(H.current=!0,Y(g).finally((()=>{H.current=!1})))}),[l]);let N=o=>j(o)?(D(!0),Error("You have exceeded the maximum number of attempts. Please close this window and try again in 10 seconds.")):f(o)?(D(!1),Error("The code you entered is not valid")):y(o)?(D(!0),Error("You have exceeded the time limit for code entry. Please try again in 30 seconds.")):(console.error(o),D(!1),Error("Something went wrong."));async function O(o){G(null);try{if(!o||!g)return;await E(g,o),V(!0),D(!1),d()}catch(o){throw N(o)}}async function Y(o){if("passkey"!==o)try{k(o),await I(o)}catch(o){console.error(o)}else try{k(o);let e=await I(o);if(!e)throw Error("something went wrong");z(e),await E(o,e),V(!0),D(!1),d()}catch(o){G(N(o))}}let Q=()=>{k(null),G(null),T(),d()};return l&&u?"passkey"===g?/*#__PURE__*/o(A,{account:u.linkedAccounts.filter((o=>"passkey"===o.type&&o.enrolledInMfa)).sort(((o,e)=>e.firstVerifiedAt.valueOf()-o.firstVerifiedAt.valueOf()))[0],selectedMethod:g,submitSuccess:L,hasBlockingError:B,error:F,onClose:Q,onBack:()=>{k(null),G(null)},handleSubmit:()=>O(W).catch(G)}):g?/*#__PURE__*/o(P,{submitSuccess:L,hasBlockingError:B,handleSubmitCode:O,selectedMethod:g,onClose:Q,onBack:u.mfaMethods.length>1?()=>k(null):void 0}):/*#__PURE__*/e(t,{children:[/*#__PURE__*/o(h,{onClose:Q},"header"),/*#__PURE__*/o(v,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/o(s,{})}),/*#__PURE__*/o(S,{children:"Verify your identity"}),/*#__PURE__*/o(x,{children:"Choose a verification method"}),/*#__PURE__*/e(M,{children:[u.mfaMethods.includes("totp")&&/*#__PURE__*/e(w,{onClick:()=>Y("totp"),children:[/*#__PURE__*/o(r,{}),"Authenticator App"]},"totp"),u.mfaMethods.includes("sms")&&/*#__PURE__*/e(w,{onClick:()=>Y("sms"),children:[/*#__PURE__*/o(i,{}),"SMS"]},"sms"),u.mfaMethods.includes("passkey")&&/*#__PURE__*/e(w,{onClick:()=>Y("passkey"),children:[/*#__PURE__*/o(n,{}),"Passkey"]},"passkey")]}),/*#__PURE__*/o(p,{})]}):null};let P=({selectedMethod:n,submitSuccess:s,hasBlockingError:c,onClose:m,onBack:a,handleSubmitCode:j})=>{let{app:f}=k(),{pendingTransaction:y}=g();switch(n){case"sms":/*#__PURE__*/return e(t,{children:[/*#__PURE__*/o(h,{onClose:m},"header"),/*#__PURE__*/o(v,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/o(i,{})}),/*#__PURE__*/o(S,{children:"Enter verification code"}),/*#__PURE__*/e(I,{children:[/*#__PURE__*/o(d,{success:s,disabled:c,onChange:j}),/*#__PURE__*/e(x,{children:["To continue, please enter the 6-digit code sent to your ",/*#__PURE__*/o("strong",{children:"mobile device"})]}),y&&/*#__PURE__*/o(u,{pendingTransaction:y})]}),a&&/*#__PURE__*/o(T,{theme:f?.appearance.palette.colorScheme,onClick:a,children:"Choose another method"}),/*#__PURE__*/o(l,{onClick:m,children:"Not now"}),/*#__PURE__*/o(p,{})]});case"totp":/*#__PURE__*/return e(t,{children:[/*#__PURE__*/o(h,{onClose:m},"header"),/*#__PURE__*/o(v,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/o(r,{})}),/*#__PURE__*/o(S,{children:"Enter verification code"}),/*#__PURE__*/e(I,{children:[/*#__PURE__*/o(d,{success:s,disabled:c,onChange:j}),/*#__PURE__*/e(x,{children:["To continue, please enter the 6-digit code generated from your"," ",/*#__PURE__*/o("strong",{children:"authenticator app"})]}),y&&/*#__PURE__*/o(u,{pendingTransaction:y})]}),a&&/*#__PURE__*/o(T,{theme:f?.appearance.palette.colorScheme,onClick:a,children:"Choose another method"}),/*#__PURE__*/o(l,{onClick:m,children:"Not now"}),/*#__PURE__*/o(p,{})]});default:return null}};export{E as MfaVerifyFlowScreen};
1
+ import{jsx as o,jsxs as e,Fragment as t}from"react/jsx-runtime";import n from"@heroicons/react/24/outline/DevicePhoneMobileIcon";import r from"@heroicons/react/24/outline/FingerPrintIcon";import i from"@heroicons/react/24/outline/PhoneIcon";import s from"@heroicons/react/24/outline/ShieldCheckIcon";import{useState as c,useEffect as m,useRef as a}from"react";import{SecondaryButton as l}from"../../components/Button.mjs";import{ModalFooter as p}from"../../components/ModalFooter.mjs";import{ModalHeader as d}from"../../components/ModalHeader.mjs";import{NumericPinInput as h}from"../../components/PinInput.mjs";import{TransactionDetailsWrapper as u}from"../../components/embedded-wallets/TransactionDetailsWrapper.mjs";import{errorIndicatesMaxMfaRetries as j,errorIndicatesMfaVerificationFailed as f,errorIndicatesMfaTimeout as y}from"../../embedded-wallets/errors.mjs";import{usePrivyInternal as g}from"../../hooks/internal-context.mjs";import{usePrivyModal as k}from"../../hooks/modal-context.mjs";import{usePrivyContext as b}from"../../hooks/privy-context.mjs";import{useMfa as C}from"../../hooks/useMfa.mjs";import{LoginMethodButton as w}from"../LandingScreen/styles.mjs";import{IconWrapper as v,Title as S,SubTitle as M,MethodList as x,Container as I,PrimaryTextButton as T}from"./StyledComponents.mjs";import{VerifyWithPasskey as A}from"./VerifyWithPasskey.mjs";import"styled-components";import"../../components/Loader.mjs";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/index.mjs";import"react-device-detect";import"viem";import"../../hooks/useGetTokenPrice.mjs";import"../../hooks/useGetSolPrice.mjs";import"../../hooks/useWallets.mjs";import"../../lib/viem/prepareTransactionRequest.mjs";import"../../lib/viem/toViemTransactionSerializable.mjs";import"../../errors.mjs";import"ofetch";import"../../utils/eth/getPublicClient.mjs";import"../../components/embedded-wallets/TransactionDetails.mjs";import"../../components/embedded-wallets/DisplayInfoItem.mjs";import"../../components/embedded-wallets/PriceDisplay.mjs";import"../../lib/ethers.mjs";import"../../utils/index.mjs";import"../../connectors/get-legacy-injected-providers.mjs";import"../../connectors/is-wallet-installed.mjs";import"../../lib/solana/transaction.mjs";import"../../utils/buffer/readBigInt64LE.mjs";import"../../components/embedded-wallets/TransactionTotal.mjs";import"../../components/Layouts.mjs";import"../../components/primitives/Accordion/index.mjs";import"@heroicons/react/24/outline/ChevronDownIcon";import"../../components/primitives/Accordion/AccordionContext.mjs";import"../../components/embedded-wallets/WalletLink.mjs";import"../../embedded-wallets/types.mjs";import"../../components/PrefetchedImage.mjs";import"../index.mjs";import"@heroicons/react/24/outline/CalendarIcon";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"../../components/layout/StackedContainer.mjs";import"../../svg/face-id.mjs";const P=({open:l,onClose:h})=>{let{user:u}=b(),[g,k]=c(u?.mfaMethods[0]??null),{init:I,cancel:T,submit:P}=C(),[B,D]=c(!1),[L,V]=c(!1),[z,W]=c(null),[F,G]=c(null);m((()=>{k(u?.mfaMethods[0]??null)}),[u?.mfaMethods]);let H=a(!1);m((()=>{!H.current&&g&&l&&(H.current=!0,R(g).finally((()=>{H.current=!1})))}),[l]);let N=o=>j(o)?(D(!0),Error("You have exceeded the maximum number of attempts. Please close this window and try again in 10 seconds.")):f(o)?(D(!1),Error("The code you entered is not valid")):y(o)?(D(!0),Error("You have exceeded the time limit for code entry. Please try again in 30 seconds.")):(console.error(o),D(!1),Error("Something went wrong."));async function O(o){G(null);try{if(!o||!g)return;await P(g,o),V(!0),D(!1),h()}catch(o){throw N(o)}}async function R(o){if("passkey"!==o)try{k(o),await I(o)}catch(o){console.error(o)}else try{k(o);let e=await I(o);if(!e)throw Error("something went wrong");W(e),await P(o,e),V(!0),D(!1),h()}catch(o){G(N(o))}}let Y=()=>{k(null),G(null),T(),h()};return l&&u?"passkey"===g?/*#__PURE__*/o(A,{account:u.linkedAccounts.filter((o=>"passkey"===o.type&&o.enrolledInMfa)).sort(((o,e)=>e.firstVerifiedAt.valueOf()-o.firstVerifiedAt.valueOf()))[0],selectedMethod:g,submitSuccess:L,hasBlockingError:B,error:F,onClose:Y,onBack:()=>{k(null),G(null)},handleSubmit:()=>O(z).catch(G)}):g?/*#__PURE__*/o(E,{submitSuccess:L,hasBlockingError:B,handleSubmitCode:O,selectedMethod:g,onClose:Y,onBack:u.mfaMethods.length>1?()=>k(null):void 0}):/*#__PURE__*/e(t,{children:[/*#__PURE__*/o(d,{onClose:Y},"header"),/*#__PURE__*/o(v,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/o(s,{})}),/*#__PURE__*/o(S,{children:"Verify your identity"}),/*#__PURE__*/o(M,{children:"Choose a verification method"}),/*#__PURE__*/e(x,{children:[u.mfaMethods.includes("totp")&&/*#__PURE__*/e(w,{onClick:()=>R("totp"),children:[/*#__PURE__*/o(n,{}),"Authenticator App"]},"totp"),u.mfaMethods.includes("sms")&&/*#__PURE__*/e(w,{onClick:()=>R("sms"),children:[/*#__PURE__*/o(i,{}),"SMS"]},"sms"),u.mfaMethods.includes("passkey")&&/*#__PURE__*/e(w,{onClick:()=>R("passkey"),children:[/*#__PURE__*/o(r,{}),"Passkey"]},"passkey")]}),/*#__PURE__*/o(p,{})]}):null};let E=({selectedMethod:r,submitSuccess:s,hasBlockingError:c,onClose:m,onBack:a,handleSubmitCode:j})=>{let{app:f}=k(),{pendingTransaction:y}=g();switch(r){case"sms":/*#__PURE__*/return e(t,{children:[/*#__PURE__*/o(d,{onClose:m},"header"),/*#__PURE__*/o(v,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/o(i,{})}),/*#__PURE__*/o(S,{children:"Enter verification code"}),/*#__PURE__*/e(I,{children:[/*#__PURE__*/o(h,{success:s,disabled:c,onChange:j}),/*#__PURE__*/e(M,{children:["To continue, please enter the 6-digit code sent to your ",/*#__PURE__*/o("strong",{children:"mobile device"})]}),y&&/*#__PURE__*/o(u,{pendingTransaction:y})]}),a&&/*#__PURE__*/o(T,{theme:f?.appearance.palette.colorScheme,onClick:a,children:"Choose another method"}),/*#__PURE__*/o(l,{onClick:m,children:"Not now"}),/*#__PURE__*/o(p,{})]});case"totp":/*#__PURE__*/return e(t,{children:[/*#__PURE__*/o(d,{onClose:m},"header"),/*#__PURE__*/o(v,{style:{marginBottom:"1.5rem"},children:/*#__PURE__*/o(n,{})}),/*#__PURE__*/o(S,{children:"Enter verification code"}),/*#__PURE__*/e(I,{children:[/*#__PURE__*/o(h,{success:s,disabled:c,onChange:j}),/*#__PURE__*/e(M,{children:["To continue, please enter the 6-digit code generated from your"," ",/*#__PURE__*/o("strong",{children:"authenticator app"})]}),y&&/*#__PURE__*/o(u,{pendingTransaction:y})]}),a&&/*#__PURE__*/o(T,{theme:f?.appearance.palette.colorScheme,onClick:a,children:"Choose another method"}),/*#__PURE__*/o(l,{onClick:m,children:"Not now"}),/*#__PURE__*/o(p,{})]});default:return null}};export{P as MfaVerifyFlowScreen};
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as t,jsx as r}from"react/jsx-runtime";import e from"@heroicons/react/24/outline/CalendarIcon";import i from"@heroicons/react/24/outline/ExclamationTriangleIcon";import n from"@heroicons/react/24/outline/ShieldCheckIcon";import{PrimaryButton as s}from"../../components/Button.mjs";import{ConnectionLoader as m}from"../../components/Loader.mjs";import{ModalFooter as c}from"../../components/ModalFooter.mjs";import{ModalHeader as a}from"../../components/ModalHeader.mjs";import{TransactionDetailsWrapper as p}from"../../components/embedded-wallets/TransactionDetailsWrapper.mjs";import l from"../../components/layout/StackedContainer.mjs";import{usePrivyInternal as h}from"../../hooks/internal-context.mjs";import{FaceId as j}from"../../svg/face-id.mjs";import{Title as d,List as u,ListItem as f,ListItemIcon as g,Container as y,ErrorMessage as b,PrimaryTextButton as k}from"./StyledComponents.mjs";import"styled-components";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"react";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/index.mjs";import"../../hooks/privy-context.mjs";import"../../hooks/useGetTokenPrice.mjs";import"../../hooks/useGetSolPrice.mjs";import"../../hooks/useWallets.mjs";import"../../utils/index.mjs";import"@ethersproject/providers";import"../../connectors/get-legacy-injected-providers.mjs";import"../../connectors/is-wallet-installed.mjs";import"../../errors.mjs";import"ofetch";import"../../index-B3QfI7v9.mjs";import"@ethersproject/abstract-signer";import"@ethersproject/bignumber";import"../../ethers-Cz-frLvN.mjs";import"@ethersproject/contracts";import"@ethersproject/transactions";import"@ethersproject/units";import"fetch-retry";import"../../errors-9ucGZPEs.mjs";import"../../components/embedded-wallets/TransactionDetails.mjs";import"../../components/embedded-wallets/DisplayInfoItem.mjs";import"../../components/embedded-wallets/PriceDisplay.mjs";import"../../lib/ethers.mjs";import"../../lib/solana/transaction.mjs";import"../../utils/buffer/readBigInt64LE.mjs";import"../../components/embedded-wallets/TransactionTotal.mjs";import"../../components/Layouts.mjs";import"../../components/primitives/Accordion/index.mjs";import"@heroicons/react/24/outline/ChevronDownIcon";import"../../components/primitives/Accordion/AccordionContext.mjs";import"../../components/embedded-wallets/WalletLink.mjs";const x=({hasBlockingError:x,error:C,onClose:T,onBack:v,handleSubmit:w,account:I,submitSuccess:S})=>{let{pendingTransaction:A}=h();/*#__PURE__*/return o(t,{children:[/*#__PURE__*/r(a,{onClose:T},"header"),/*#__PURE__*/r(l,{children:/*#__PURE__*/o("div",{children:[/*#__PURE__*/r(m,{success:S,fail:!!C}),/*#__PURE__*/r(C?i:j,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/r(d,{style:{marginTop:"1rem"},children:"Verifying with passkey"}),/*#__PURE__*/o(u,{children:[/*#__PURE__*/o(f,{children:[/*#__PURE__*/r(g,{children:/*#__PURE__*/r(n,{})}),"Approve this action using your touch, face, PIN, or hardware key."]}),/*#__PURE__*/o(f,{children:[/*#__PURE__*/r(g,{children:/*#__PURE__*/r(e,{})}),"You last added a passkey on"," ",I?.firstVerifiedAt?.toLocaleDateString(void 0,{month:"short",day:"numeric",year:"numeric"}),"."]})]}),A&&/*#__PURE__*/r(y,{children:/*#__PURE__*/r(p,{pendingTransaction:A})}),C&&/*#__PURE__*/o(t,{children:[/*#__PURE__*/r(b,{style:{marginTop:"1.25rem"},children:C.message}),/*#__PURE__*/r(s,{disabled:x,onClick:w,style:{marginTop:"1.25rem"},children:"Try again"})]}),v&&/*#__PURE__*/r(k,{style:{marginTop:"1rem"},onClick:v,children:"Choose another method"}),/*#__PURE__*/r(c,{})]})};export{x as VerifyWithPasskey};
1
+ import{jsxs as o,Fragment as i,jsx as t}from"react/jsx-runtime";import n from"@heroicons/react/24/outline/CalendarIcon";import e from"@heroicons/react/24/outline/ExclamationTriangleIcon";import r from"@heroicons/react/24/outline/ShieldCheckIcon";import{PrimaryButton as s}from"../../components/Button.mjs";import{ConnectionLoader as m}from"../../components/Loader.mjs";import{ModalFooter as c}from"../../components/ModalFooter.mjs";import{ModalHeader as a}from"../../components/ModalHeader.mjs";import{TransactionDetailsWrapper as p}from"../../components/embedded-wallets/TransactionDetailsWrapper.mjs";import l from"../../components/layout/StackedContainer.mjs";import{usePrivyInternal as h}from"../../hooks/internal-context.mjs";import{FaceId as d}from"../../svg/face-id.mjs";import{Title as j,List as u,ListItem as f,ListItemIcon as g,Container as y,ErrorMessage as b,PrimaryTextButton as k}from"./StyledComponents.mjs";import"styled-components";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"react";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/index.mjs";import"viem";import"../../hooks/privy-context.mjs";import"../../hooks/useGetTokenPrice.mjs";import"../../hooks/useGetSolPrice.mjs";import"../../hooks/useWallets.mjs";import"../../lib/viem/prepareTransactionRequest.mjs";import"../../lib/viem/toViemTransactionSerializable.mjs";import"../../errors.mjs";import"ofetch";import"../../utils/eth/getPublicClient.mjs";import"../../components/embedded-wallets/TransactionDetails.mjs";import"../../components/embedded-wallets/DisplayInfoItem.mjs";import"../../components/embedded-wallets/PriceDisplay.mjs";import"../../lib/ethers.mjs";import"../../utils/index.mjs";import"../../connectors/get-legacy-injected-providers.mjs";import"../../connectors/is-wallet-installed.mjs";import"../../lib/solana/transaction.mjs";import"../../utils/buffer/readBigInt64LE.mjs";import"../../components/embedded-wallets/TransactionTotal.mjs";import"../../components/Layouts.mjs";import"../../components/primitives/Accordion/index.mjs";import"@heroicons/react/24/outline/ChevronDownIcon";import"../../components/primitives/Accordion/AccordionContext.mjs";import"../../components/embedded-wallets/WalletLink.mjs";const T=({hasBlockingError:T,error:v,onClose:C,onBack:w,handleSubmit:x,account:I,submitSuccess:S})=>{let{pendingTransaction:A}=h();/*#__PURE__*/return o(i,{children:[/*#__PURE__*/t(a,{onClose:C},"header"),/*#__PURE__*/t(l,{children:/*#__PURE__*/o("div",{children:[/*#__PURE__*/t(m,{success:S,fail:!!v}),/*#__PURE__*/t(v?e:d,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/t(j,{style:{marginTop:"1rem"},children:"Verifying with passkey"}),/*#__PURE__*/o(u,{children:[/*#__PURE__*/o(f,{children:[/*#__PURE__*/t(g,{children:/*#__PURE__*/t(r,{})}),"Approve this action using your touch, face, PIN, or hardware key."]}),/*#__PURE__*/o(f,{children:[/*#__PURE__*/t(g,{children:/*#__PURE__*/t(n,{})}),"You last added a passkey on"," ",I?.firstVerifiedAt?.toLocaleDateString(void 0,{month:"short",day:"numeric",year:"numeric"}),"."]})]}),A&&/*#__PURE__*/t(y,{children:/*#__PURE__*/t(p,{pendingTransaction:A})}),v&&/*#__PURE__*/o(i,{children:[/*#__PURE__*/t(b,{style:{marginTop:"1.25rem"},children:v.message}),/*#__PURE__*/t(s,{disabled:T,onClick:x,style:{marginTop:"1.25rem"},children:"Try again"})]}),w&&/*#__PURE__*/t(k,{style:{marginTop:"1rem"},onClick:w,children:"Choose another method"}),/*#__PURE__*/t(c,{})]})};export{T as VerifyWithPasskey};
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as t,jsx as e}from"react/jsx-runtime";import{useState as r,useEffect as i}from"react";import{styled as n}from"styled-components";import{getDisplayForProvider as s}from"../auth-flows/oauth/getDisplayForProvider.mjs";import{shouldProceedtoEmbeddedWalletCreationFlow as m}from"../client/user.mjs";import{SoftCtaButton as c}from"../components/Button.mjs";import{RefactorSpacerTop as a,FixedGappedContainer as l,RefactorSpacerBottom as p}from"../components/Layouts.mjs";import{ConnectionLoader as d}from"../components/Loader.mjs";import{ModalFooter as h}from"../components/ModalFooter.mjs";import{ModalHeader as u}from"../components/ModalHeader.mjs";import j from"../components/layout/StackedContainer.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as f}from"../constants.mjs";import{PrivyErrorCode as g,PrivyUserLimitReachedError as E}from"../errors.mjs";import{useEmitPrivyEvent as v}from"../hooks/events-context.mjs";import{usePrivyInternal as y}from"../hooks/internal-context.mjs";import{usePrivyModal as C}from"../hooks/modal-context.mjs";import{usePrivyContext as A}from"../hooks/privy-context.mjs";import{ModalScreen as T}from"./index.mjs";import{getOAuthErrorMessage as S}from"../auth-flows/oauth/getOAuthErrorMessage.mjs";import{stripUrlOAuthParamsAndRemoveStateCode as _}from"../auth-flows/oauth/stripUrlOAuthParamsAndRemoveStateCode.mjs";import"../svg/apple.mjs";import"../svg/discord.mjs";import"../svg/github.mjs";import"../svg/globe.mjs";import"@heroicons/react/24/outline/GlobeAltIcon";import"../svg/google.mjs";import"../svg/instagram.mjs";import"../svg/linkedin.mjs";import"../svg/spotify.mjs";import"../svg/tiktok.mjs";import"../svg/twitter.mjs";import"@ethersproject/address";import"../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../configuration/context.mjs";import"../config.mjs";import"../configuration/defaultClientConfig.mjs";import"../configuration/login-methods.mjs";import"../configuration/wallets.mjs";import"../connectors/chains/index.mjs";import"../connectors/chains/arbitrum.mjs";import"../connectors/chains/arbitrumSepolia.mjs";import"../connectors/chains/avalanche.mjs";import"../connectors/chains/avalancheFuji.mjs";import"../connectors/chains/base.mjs";import"../connectors/chains/baseSepolia.mjs";import"../connectors/chains/berachainArtio.mjs";import"../connectors/chains/celo.mjs";import"../connectors/chains/celoAlfajores.mjs";import"../connectors/chains/filecoin.mjs";import"../connectors/chains/filecoinCalibration.mjs";import"../connectors/chains/garnetHolesky.mjs";import"../connectors/chains/holesky.mjs";import"../connectors/chains/linea.mjs";import"../connectors/chains/lineaTestnet.mjs";import"../connectors/chains/lukso.mjs";import"../connectors/chains/mainnet.mjs";import"../connectors/chains/optimism.mjs";import"../connectors/chains/optimismSepolia.mjs";import"../connectors/chains/polygon.mjs";import"../connectors/chains/polygonAmoy.mjs";import"../connectors/chains/redstone.mjs";import"../connectors/chains/sepolia.mjs";import"../connectors/chains/zora.mjs";import"../connectors/chains/zoraSepolia.mjs";import"../connectors/chains/zoraTestnet.mjs";import"../connectors/chains/utils.mjs";import"../lib/solana/index.mjs";import"../theme.mjs";import"tinycolor2";import"../lib/cybr53.mjs";import"../hooks/index.mjs";import"ofetch";import"../components/PrefetchedImage.mjs";import"../lib/capitalizeFirstLetter.mjs";import"../storage.mjs";const b=()=>{let{authenticated:n,logout:b,ready:O,user:R}=A(),{app:I,setModalData:L,navigate:x,resetNavigation:k}=C(),{getAuthMeta:U,initLoginWithOAuth:w,loginWithOAuth:M,updateWallets:D,setReadyToTrue:F,closePrivyModal:W,createAnalyticsEvent:z}=y(),[H,P]=r(!1),[J,B]=r(void 0),Q=U()?.provider||"google",{name:V,component:X}=s(Q),$=v();i((()=>{M(Q).then((o=>{P(!0),F(!0),o&&$("login","onOAuthLoginComplete",o)})).catch((o=>{if(F(!1),o?.privyErrorCode===g.ALLOWLIST_REJECTED)return B(void 0),k(),void x(T.ALLOWLIST_REJECTION_SCREEN);if(o?.privyErrorCode===g.USER_LIMIT_REACHED)return console.error(new E(o).toString()),B(void 0),k(),void x(T.USER_LIMIT_REACHED_SCREEN);if(o?.privyErrorCode===g.USER_DOES_NOT_EXIST)return B(void 0),k(),void x(T.ACCOUNT_NOT_FOUND_SCREEN);if(o?.privyErrorCode===g.ACCOUNT_TRANSFER_REQUIRED&&o.data?.data?.nonce)return B(void 0),k(),L({accountTransfer:{nonce:o.data?.data?.nonce,account:o.data?.data?.subject,displayName:o.data?.data?.account?.displayName,linkMethod:U()?.provider,embeddedWalletAddress:o.data?.data?.otherUser?.embeddedWalletAddress,oAuthUserInfo:o.data?.data?.otherUser?.oAuthUserInfo}}),void x(T.LINK_CONFLICT_SCREEN);let{retryable:t,detail:e}=S(o,Q);B({retryable:t,detail:e,message:"Authentication failed"})})).finally((()=>{_()}))}),[V,Q]),i((()=>{if(O&&n&&H&&R){if(I?.legal.requireUsersAcceptTerms&&!R.hasAcceptedTerms){let o=setTimeout((()=>{x(T.AFFIRMATIVE_CONSENT_SCREEN)}),f);return()=>clearTimeout(o)}if(m(R,I?.embeddedWallets?.createOnLogin)){let o=setTimeout((()=>{L({createWallet:{onSuccess:()=>{},onFailure:o=>{console.error(o),z({eventName:"embedded_wallet_creation_failure_logout",payload:{error:o,provider:Q,screen:"OAuthStatusScreen"}}),b()},callAuthOnSuccessOnClose:!0}}),x(T.EMBEDDED_WALLET_ON_ACCOUNT_CREATE_SCREEN)}),f);return()=>clearTimeout(o)}{let o=setTimeout((()=>W({shouldCallAuthOnSuccess:!0,isSuccess:!0})),f);return D(),()=>clearTimeout(o)}}}),[O,n,H,R]);let q=H?`Successfully connected with ${V}`:J?J.message:`Verifying connection to ${V}`,G="";return G=H?"You’re good to go!":J?J.detail:"Just a few moments more",/*#__PURE__*/o(t,{children:[/*#__PURE__*/e(u,{}),/*#__PURE__*/e(a,{}),/*#__PURE__*/o(N,{children:[/*#__PURE__*/e(j,{children:/*#__PURE__*/o("div",{children:[/*#__PURE__*/e(d,{success:H,fail:!!J}),/*#__PURE__*/e(X,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/o(l,{children:[/*#__PURE__*/e("h3",{children:q}),/*#__PURE__*/e("p",{children:G})]}),J&&J?.retryable?/*#__PURE__*/e(c,{onClick:()=>{_(),w(Q),B(void 0)},disabled:!H&&!J?.retryable,children:"Retry"}):null]}),/*#__PURE__*/e(p,{}),/*#__PURE__*/e(h,{})]})};let N=/*#__PURE__*/n.div.withConfig({displayName:"ConnectContainer",componentId:"sc-83de42aa-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;margin-left:27px;margin-right:27px;gap:24px;"]);export{b as OAuthStatusScreen};
1
+ import{jsxs as o,Fragment as t,jsx as e}from"react/jsx-runtime";import{useState as r,useEffect as i}from"react";import{styled as n}from"styled-components";import{getDisplayForProvider as s}from"../auth-flows/oauth/getDisplayForProvider.mjs";import{shouldProceedtoEmbeddedWalletCreationFlow as m}from"../client/user.mjs";import{SoftCtaButton as c}from"../components/Button.mjs";import{RefactorSpacerTop as a,FixedGappedContainer as l,RefactorSpacerBottom as p}from"../components/Layouts.mjs";import{ConnectionLoader as d}from"../components/Loader.mjs";import{ModalFooter as h}from"../components/ModalFooter.mjs";import{ModalHeader as u}from"../components/ModalHeader.mjs";import j from"../components/layout/StackedContainer.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as f}from"../constants.mjs";import{PrivyErrorCode as g,PrivyUserLimitReachedError as v}from"../errors.mjs";import{useEmitPrivyEvent as E}from"../hooks/events-context.mjs";import{usePrivyInternal as y}from"../hooks/internal-context.mjs";import{usePrivyModal as C}from"../hooks/modal-context.mjs";import{usePrivyContext as A}from"../hooks/privy-context.mjs";import{ModalScreen as T}from"./index.mjs";import{getOAuthErrorMessage as S}from"../auth-flows/oauth/getOAuthErrorMessage.mjs";import{stripUrlOAuthParamsAndRemoveStateCode as _}from"../auth-flows/oauth/stripUrlOAuthParamsAndRemoveStateCode.mjs";import"../svg/apple.mjs";import"../svg/discord.mjs";import"../svg/github.mjs";import"../svg/globe.mjs";import"@heroicons/react/24/outline/GlobeAltIcon";import"../svg/google.mjs";import"../svg/instagram.mjs";import"../svg/linkedin.mjs";import"../svg/spotify.mjs";import"../svg/tiktok.mjs";import"../svg/twitter.mjs";import"viem/utils";import"../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../configuration/context.mjs";import"../config.mjs";import"../configuration/defaultClientConfig.mjs";import"../configuration/login-methods.mjs";import"../configuration/wallets.mjs";import"../connectors/chains/index.mjs";import"../connectors/chains/arbitrum.mjs";import"../connectors/chains/arbitrumSepolia.mjs";import"../connectors/chains/avalanche.mjs";import"../connectors/chains/avalancheFuji.mjs";import"../connectors/chains/base.mjs";import"../connectors/chains/baseSepolia.mjs";import"../connectors/chains/berachainArtio.mjs";import"../connectors/chains/celo.mjs";import"../connectors/chains/celoAlfajores.mjs";import"../connectors/chains/filecoin.mjs";import"../connectors/chains/filecoinCalibration.mjs";import"../connectors/chains/garnetHolesky.mjs";import"../connectors/chains/holesky.mjs";import"../connectors/chains/linea.mjs";import"../connectors/chains/lineaTestnet.mjs";import"../connectors/chains/lukso.mjs";import"../connectors/chains/mainnet.mjs";import"../connectors/chains/optimism.mjs";import"../connectors/chains/optimismSepolia.mjs";import"../connectors/chains/polygon.mjs";import"../connectors/chains/polygonAmoy.mjs";import"../connectors/chains/redstone.mjs";import"../connectors/chains/sepolia.mjs";import"../connectors/chains/zora.mjs";import"../connectors/chains/zoraSepolia.mjs";import"../connectors/chains/zoraTestnet.mjs";import"../connectors/chains/utils.mjs";import"../lib/solana/index.mjs";import"../theme.mjs";import"tinycolor2";import"../lib/cybr53.mjs";import"../hooks/index.mjs";import"ofetch";import"../components/PrefetchedImage.mjs";import"../lib/capitalizeFirstLetter.mjs";import"../storage.mjs";const b=()=>{let{authenticated:n,logout:b,ready:O,user:R}=A(),{app:I,setModalData:L,navigate:x,resetNavigation:k}=C(),{getAuthMeta:U,initLoginWithOAuth:w,loginWithOAuth:M,updateWallets:D,setReadyToTrue:F,closePrivyModal:W,createAnalyticsEvent:z}=y(),[H,P]=r(!1),[J,B]=r(void 0),Q=U()?.provider||"google",{name:V,component:X}=s(Q),$=E();i((()=>{M(Q).then((o=>{P(!0),F(!0),o&&$("login","onOAuthLoginComplete",o)})).catch((o=>{if(F(!1),o?.privyErrorCode===g.ALLOWLIST_REJECTED)return B(void 0),k(),void x(T.ALLOWLIST_REJECTION_SCREEN);if(o?.privyErrorCode===g.USER_LIMIT_REACHED)return console.error(new v(o).toString()),B(void 0),k(),void x(T.USER_LIMIT_REACHED_SCREEN);if(o?.privyErrorCode===g.USER_DOES_NOT_EXIST)return B(void 0),k(),void x(T.ACCOUNT_NOT_FOUND_SCREEN);if(o?.privyErrorCode===g.ACCOUNT_TRANSFER_REQUIRED&&o.data?.data?.nonce)return B(void 0),k(),L({accountTransfer:{nonce:o.data?.data?.nonce,account:o.data?.data?.subject,displayName:o.data?.data?.account?.displayName,linkMethod:U()?.provider,embeddedWalletAddress:o.data?.data?.otherUser?.embeddedWalletAddress,oAuthUserInfo:o.data?.data?.otherUser?.oAuthUserInfo}}),void x(T.LINK_CONFLICT_SCREEN);let{retryable:t,detail:e}=S(o,Q);B({retryable:t,detail:e,message:"Authentication failed"})})).finally((()=>{_()}))}),[V,Q]),i((()=>{if(O&&n&&H&&R){if(I?.legal.requireUsersAcceptTerms&&!R.hasAcceptedTerms){let o=setTimeout((()=>{x(T.AFFIRMATIVE_CONSENT_SCREEN)}),f);return()=>clearTimeout(o)}if(m(R,I?.embeddedWallets?.createOnLogin)){let o=setTimeout((()=>{L({createWallet:{onSuccess:()=>{},onFailure:o=>{console.error(o),z({eventName:"embedded_wallet_creation_failure_logout",payload:{error:o,provider:Q,screen:"OAuthStatusScreen"}}),b()},callAuthOnSuccessOnClose:!0}}),x(T.EMBEDDED_WALLET_ON_ACCOUNT_CREATE_SCREEN)}),f);return()=>clearTimeout(o)}{let o=setTimeout((()=>W({shouldCallAuthOnSuccess:!0,isSuccess:!0})),f);return D(),()=>clearTimeout(o)}}}),[O,n,H,R]);let q=H?`Successfully connected with ${V}`:J?J.message:`Verifying connection to ${V}`,G="";return G=H?"You’re good to go!":J?J.detail:"Just a few moments more",/*#__PURE__*/o(t,{children:[/*#__PURE__*/e(u,{}),/*#__PURE__*/e(a,{}),/*#__PURE__*/o(N,{children:[/*#__PURE__*/e(j,{children:/*#__PURE__*/o("div",{children:[/*#__PURE__*/e(d,{success:H,fail:!!J}),/*#__PURE__*/e(X,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/o(l,{children:[/*#__PURE__*/e("h3",{children:q}),/*#__PURE__*/e("p",{children:G})]}),J&&J?.retryable?/*#__PURE__*/e(c,{onClick:()=>{_(),w(Q),B(void 0)},disabled:!H&&!J?.retryable,children:"Retry"}):null]}),/*#__PURE__*/e(p,{}),/*#__PURE__*/e(h,{})]})};let N=/*#__PURE__*/n.div.withConfig({displayName:"ConnectContainer",componentId:"sc-83de42aa-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;margin-left:27px;margin-right:27px;gap:24px;"]);export{b as OAuthStatusScreen};
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as e,jsx as r}from"react/jsx-runtime";import t from"@heroicons/react/24/outline/ShieldCheckIcon";import{useState as n,useEffect as i}from"react";import{styled as s,css as c}from"styled-components";import{getPrivyWalletWithAddress as a}from"../../client/user.mjs";import{PrimaryButton as m}from"../../components/Button.mjs";import{RefactorSpacerTop as l,StyledCalloutSection as p,RefactorSpacerBottom as d}from"../../components/Layouts.mjs";import{BlobbyFooter as h}from"../../components/ModalFooter.mjs";import{ModalHeader as y}from"../../components/ModalHeader.mjs";import{PasswordContainer as u,PasswordInput as j,InputRightIcons as f,HiddenIcon as g,ShownIcon as v}from"../../components/embedded-wallets/SetWalletPasswordForm/shared.mjs";import{errorIndicatesInvalidRecoveryPassword as w}from"../../embedded-wallets/errors.mjs";import{PrivyEmbeddedWalletError as x}from"../../errors.mjs";import{usePrivyInternal as b}from"../../hooks/internal-context.mjs";import{usePrivyModal as C}from"../../hooks/modal-context.mjs";import{usePrivyContext as I}from"../../hooks/privy-context.mjs";import"@ethersproject/address";import"../../components/Loader.mjs";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/index.mjs";import"@heroicons/react/24/outline/ArrowPathIcon";import"@heroicons/react/24/outline/EyeIcon";import"@heroicons/react/24/outline/EyeSlashIcon";import"../../embedded-wallets/types.mjs";import"ofetch";import"../../components/PrefetchedImage.mjs";import"../index.mjs";const k=()=>{let[s,c]=n(!0),{authenticated:m,getAccessToken:k,user:T}=I(),{walletProxy:z,closePrivyModal:M,createAnalyticsEvent:_}=b(),{navigate:E,data:F,onUserCloseViaDialogOrKeybindRef:R}=C(),[U,H]=n(void 0),[L,O]=n(""),[V,W]=n(!1),{entropyId:B,entropyIdVerifier:D,onCompleteNavigateTo:K,onSuccess:Q,onFailure:X}=F.recoverWallet,Y=(o="User exited before their wallet could be recovered")=>{M({shouldCallAuthOnSuccess:!1}),X("string"==typeof o?new x(o):o)};R.current=Y,i((()=>{if(!m)return Y("User must be authenticated and have a Privy wallet before it can be recovered")}),[m]);/*#__PURE__*/return o(e,{children:[/*#__PURE__*/r(y,{onClose:Y}),/*#__PURE__*/r(l,{}),/*#__PURE__*/o(P,{children:[/*#__PURE__*/o(A,{children:[/*#__PURE__*/r(t,{height:48,width:48,stroke:"var(--privy-color-accent)"}),/*#__PURE__*/r("h3",{style:{color:"var(--privy-color-foreground)"},children:"Enter your password"}),/*#__PURE__*/r("p",{style:{color:"var(--privy-color-foreground-2)"},children:"Please provision your account on this new device. To continue, enter your recovery password."})]}),/*#__PURE__*/o("div",{children:[/*#__PURE__*/o(u,{children:[/*#__PURE__*/r(j,{type:s?"password":"text",onChange:o=>(o=>{o&&H(o)})(o.target.value),disabled:V,style:{paddingRight:"2.3rem"}}),/*#__PURE__*/r(f,{style:{right:"0.75rem"},children:s?/*#__PURE__*/r(g,{onClick:()=>c(!1)}):/*#__PURE__*/r(v,{onClick:()=>c(!0)})})]}),!!L&&/*#__PURE__*/r(S,{children:L})]}),/*#__PURE__*/o("div",{children:[/*#__PURE__*/o(p,{children:[/*#__PURE__*/r("h4",{children:"Why is this necessary?"}),/*#__PURE__*/r("p",{children:"You previously set a password for this wallet. This helps ensure only you can access it"})]}),/*#__PURE__*/r(N,{loading:V||!z,disabled:!U,onClick:async()=>{W(!0);let o=await k(),e=a(T,B);if(!o||!e||null===U)return Y("User must be authenticated and have a Privy wallet before it can be recovered");try{_({eventName:"embedded_wallet_recovery_started",payload:{walletAddress:e.address}}),await(z?.recover({accessToken:o,entropyId:B,entropyIdVerifier:D,recoveryPassword:U})),O(""),K?E(K):M({shouldCallAuthOnSuccess:!1}),Q?.(e),_({eventName:"embedded_wallet_recovery_completed",payload:{walletAddress:e.address}})}catch(o){w(o)?O("Invalid recovery password, please try again."):O("An error has occurred, please try again.")}finally{W(!1)}},warn:!1,hideAnimations:!B&&V,children:"Recover your account"})]})]}),/*#__PURE__*/r(d,{}),/*#__PURE__*/r(h,{})]})},A=/*#__PURE__*/s.div.withConfig({displayName:"Header",componentId:"sc-858d1103-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;margin:20px 0;gap:4px;& h3{font-size:18px;font-style:normal;font-weight:600;line-height:24px;}& p{max-width:300px;font-size:14px;font-style:normal;font-weight:400;line-height:20px;}"]);let P=/*#__PURE__*/s.div.withConfig({displayName:"Content",componentId:"sc-858d1103-1"})(["display:flex;flex-direction:column;justify-content:space-between;"]),S=/*#__PURE__*/s.div.withConfig({displayName:"ErrorMessage",componentId:"sc-858d1103-2"})(["line-height:20px;height:20px;font-size:13px;color:var(--privy-color-error);text-align:left;margin-top:0.5rem;"]),N=/*#__PURE__*/s(m).withConfig({displayName:"NoAnimationPrimaryButton",componentId:"sc-858d1103-3"})(["",""],(o=>o.hideAnimations&&/*#__PURE__*/c(["&&{transition:none;}"])));export{A as Header,k as PasswordRecoveryScreen};
1
+ import{jsxs as o,Fragment as e,jsx as r}from"react/jsx-runtime";import t from"@heroicons/react/24/outline/ShieldCheckIcon";import{useState as n,useEffect as i}from"react";import{styled as s,css as c}from"styled-components";import{getPrivyWalletWithAddress as a}from"../../client/user.mjs";import{PrimaryButton as m}from"../../components/Button.mjs";import{RefactorSpacerTop as l,StyledCalloutSection as p,RefactorSpacerBottom as d}from"../../components/Layouts.mjs";import{BlobbyFooter as h}from"../../components/ModalFooter.mjs";import{ModalHeader as y}from"../../components/ModalHeader.mjs";import{PasswordContainer as u,PasswordInput as f,InputRightIcons as j,HiddenIcon as v,ShownIcon as g}from"../../components/embedded-wallets/SetWalletPasswordForm/shared.mjs";import{errorIndicatesInvalidRecoveryPassword as w}from"../../embedded-wallets/errors.mjs";import{PrivyEmbeddedWalletError as x}from"../../errors.mjs";import{usePrivyInternal as b}from"../../hooks/internal-context.mjs";import{usePrivyModal as C}from"../../hooks/modal-context.mjs";import{usePrivyContext as I}from"../../hooks/privy-context.mjs";import"viem/utils";import"../../components/Loader.mjs";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/index.mjs";import"@heroicons/react/24/outline/ArrowPathIcon";import"@heroicons/react/24/outline/EyeIcon";import"@heroicons/react/24/outline/EyeSlashIcon";import"../../embedded-wallets/types.mjs";import"ofetch";import"../../components/PrefetchedImage.mjs";import"../index.mjs";const k=()=>{let[s,c]=n(!0),{authenticated:m,getAccessToken:k,user:T}=I(),{walletProxy:z,closePrivyModal:M,createAnalyticsEvent:_}=b(),{navigate:E,data:F,onUserCloseViaDialogOrKeybindRef:R}=C(),[U,H]=n(void 0),[L,O]=n(""),[V,W]=n(!1),{entropyId:B,entropyIdVerifier:D,onCompleteNavigateTo:K,onSuccess:Q,onFailure:X}=F.recoverWallet,Y=(o="User exited before their wallet could be recovered")=>{M({shouldCallAuthOnSuccess:!1}),X("string"==typeof o?new x(o):o)};R.current=Y,i((()=>{if(!m)return Y("User must be authenticated and have a Privy wallet before it can be recovered")}),[m]);/*#__PURE__*/return o(e,{children:[/*#__PURE__*/r(y,{onClose:Y}),/*#__PURE__*/r(l,{}),/*#__PURE__*/o(P,{children:[/*#__PURE__*/o(A,{children:[/*#__PURE__*/r(t,{height:48,width:48,stroke:"var(--privy-color-accent)"}),/*#__PURE__*/r("h3",{style:{color:"var(--privy-color-foreground)"},children:"Enter your password"}),/*#__PURE__*/r("p",{style:{color:"var(--privy-color-foreground-2)"},children:"Please provision your account on this new device. To continue, enter your recovery password."})]}),/*#__PURE__*/o("div",{children:[/*#__PURE__*/o(u,{children:[/*#__PURE__*/r(f,{type:s?"password":"text",onChange:o=>(o=>{o&&H(o)})(o.target.value),disabled:V,style:{paddingRight:"2.3rem"}}),/*#__PURE__*/r(j,{style:{right:"0.75rem"},children:s?/*#__PURE__*/r(v,{onClick:()=>c(!1)}):/*#__PURE__*/r(g,{onClick:()=>c(!0)})})]}),!!L&&/*#__PURE__*/r(S,{children:L})]}),/*#__PURE__*/o("div",{children:[/*#__PURE__*/o(p,{children:[/*#__PURE__*/r("h4",{children:"Why is this necessary?"}),/*#__PURE__*/r("p",{children:"You previously set a password for this wallet. This helps ensure only you can access it"})]}),/*#__PURE__*/r(N,{loading:V||!z,disabled:!U,onClick:async()=>{W(!0);let o=await k(),e=a(T,B);if(!o||!e||null===U)return Y("User must be authenticated and have a Privy wallet before it can be recovered");try{_({eventName:"embedded_wallet_recovery_started",payload:{walletAddress:e.address}}),await(z?.recover({accessToken:o,entropyId:B,entropyIdVerifier:D,recoveryPassword:U})),O(""),K?E(K):M({shouldCallAuthOnSuccess:!1}),Q?.(e),_({eventName:"embedded_wallet_recovery_completed",payload:{walletAddress:e.address}})}catch(o){w(o)?O("Invalid recovery password, please try again."):O("An error has occurred, please try again.")}finally{W(!1)}},warn:!1,hideAnimations:!B&&V,children:"Recover your account"})]})]}),/*#__PURE__*/r(d,{}),/*#__PURE__*/r(h,{})]})},A=/*#__PURE__*/s.div.withConfig({displayName:"Header",componentId:"sc-858d1103-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;margin:20px 0;gap:4px;& h3{font-size:18px;font-style:normal;font-weight:600;line-height:24px;}& p{max-width:300px;font-size:14px;font-style:normal;font-weight:400;line-height:20px;}"]);let P=/*#__PURE__*/s.div.withConfig({displayName:"Content",componentId:"sc-858d1103-1"})(["display:flex;flex-direction:column;justify-content:space-between;"]),S=/*#__PURE__*/s.div.withConfig({displayName:"ErrorMessage",componentId:"sc-858d1103-2"})(["line-height:20px;height:20px;font-size:13px;color:var(--privy-color-error);text-align:left;margin-top:0.5rem;"]),N=/*#__PURE__*/s(m).withConfig({displayName:"NoAnimationPrimaryButton",componentId:"sc-858d1103-3"})(["",""],(o=>o.hideAnimations&&/*#__PURE__*/c(["&&{transition:none;}"])));export{A as Header,k as PasswordRecoveryScreen};
@@ -1 +1 @@
1
- import{jsx as o}from"react/jsx-runtime";import{useState as e,useEffect as t}from"react";import{ModalScreen as s}from"../index.mjs";import{RunEffectOnce as r}from"../../effect.mjs";import{PrivyEmbeddedWalletError as n}from"../../errors.mjs";import{usePrivyInternal as i}from"../../hooks/internal-context.mjs";import{usePrivyModal as m}from"../../hooks/modal-context.mjs";import{usePrivyContext as c}from"../../hooks/privy-context.mjs";import{useCreateWallet as a}from"../../hooks/useEmbeddedWalletCreate.mjs";import{generatePassphrase as l}from"../../password.mjs";import{SetWalletPasswordForm as p}from"../../components/embedded-wallets/SetWalletPasswordForm/SetWalletPasswordForm.mjs";import"ofetch";import"../../hooks/index.mjs";import"../../components/PrefetchedImage.mjs";import"../../configuration/context.mjs";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../client/user.mjs";import"@ethersproject/address";import"fast-password-entropy";import"secure-password-utilities";import"secure-password-utilities/wordlists";import"../../components/embedded-wallets/SetWalletPasswordForm/ConfimWalletPasswordForm.mjs";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"../../components/Layouts.mjs";import"styled-components";import"../../components/ModalFooter.mjs";import"../../svg/protected-by-privy.mjs";import"../../components/ModalHeader.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../components/embedded-wallets/SetWalletPasswordForm/shared.mjs";import"@heroicons/react/24/outline/ArrowPathIcon";import"@heroicons/react/24/outline/EyeIcon";import"@heroicons/react/24/outline/EyeSlashIcon";import"../../components/Button.mjs";import"../../components/Loader.mjs";import"../../components/embedded-wallets/SetWalletPasswordForm/ConfimWalletPasswordSaved.mjs";import"../../components/Checkbox.mjs";import"../../components/embedded-wallets/SetWalletPasswordForm/CreateWalletPassword.mjs";import"@heroicons/react/24/outline/KeyIcon";import"@heroicons/react/24/solid/CheckCircleIcon";import"../../components/embedded-wallets/SetWalletPasswordForm/SaveWalletPassword.mjs";import"@heroicons/react/24/outline/ArrowDownTrayIcon";import"@heroicons/react/24/outline/ClipboardDocumentCheckIcon";import"@heroicons/react/24/outline/DocumentDuplicateIcon";import"../../components/embedded-wallets/SetWalletPasswordForm/SetWalletPasswordComplete.mjs";import"@heroicons/react/24/solid/XCircleIcon";import"../../components/ScreenHeader.mjs";import"../../components/embedded-wallets/SetWalletPasswordForm/setWalletPassword.hooks.mjs";const d=()=>{let{app:d,navigate:h,data:u,onUserCloseViaDialogOrKeybindRef:j}=m(),[w,f]=e(""),[y,b]=e(!1),[S,C]=e(),[P,g]=e(null),{authenticated:W,user:A}=c(),{closePrivyModal:I,isNewUserThisSession:k,initializeWalletProxy:v}=i(),{onSuccess:x,onFailure:E,callAuthOnSuccessOnClose:F}=u.createWallet,{createWallet:D}=a(),[T,L]=e(null),M=new r((async()=>{try{let o=await D({recoveryPassword:S,user:A});if(!o)return;L(o),k?h(s.EMBEDDED_WALLET_CREATED_SCREEN):(x(o),I({shouldCallAuthOnSuccess:F}))}catch(o){f(o.message)}}));t((()=>{P||v(3e4).then((o=>g(o)))}),[P]),t((()=>{if(!W||!A)return h(s.LANDING),void E(Error("User must be authenticated before creating a Privy wallet"))}),[W]),j.current=()=>null;/*#__PURE__*/return o(p,{config:{initiatedBy:"automatic"},appName:d?.name||"privy",loading:!P,buttonLoading:y,buttonHideAnimations:!T&&y,isResettingPassword:!1,error:w,password:S||"",onClose:()=>{T&&"user-passcode"!==T?.recoveryMethod?(E(new n("User created a wallet but failed to set a password for it")),I({shouldCallAuthOnSuccess:!1})):T?(x(T),I({shouldCallAuthOnSuccess:F})):(E(new n("User wallet creation failed")),I({shouldCallAuthOnSuccess:!1}))},onPasswordChange:C,onPasswordGenerate:()=>C(l()),onSubmit:async()=>(b(!0),M.execute().then((()=>new Promise((o=>setTimeout(o,250))))).finally((()=>b(!1))))})};export{d as EmbeddedWalletPasswordCreateScreen};
1
+ import{jsx as o}from"react/jsx-runtime";import{useState as e,useEffect as t}from"react";import{ModalScreen as s}from"../index.mjs";import{RunEffectOnce as r}from"../../effect.mjs";import{PrivyEmbeddedWalletError as n}from"../../errors.mjs";import{usePrivyInternal as i}from"../../hooks/internal-context.mjs";import{usePrivyModal as m}from"../../hooks/modal-context.mjs";import{usePrivyContext as c}from"../../hooks/privy-context.mjs";import{useCreateWallet as a}from"../../hooks/useEmbeddedWalletCreate.mjs";import{generatePassphrase as l}from"../../password.mjs";import{SetWalletPasswordForm as p}from"../../components/embedded-wallets/SetWalletPasswordForm/SetWalletPasswordForm.mjs";import"ofetch";import"../../hooks/index.mjs";import"../../components/PrefetchedImage.mjs";import"../../configuration/context.mjs";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../client/user.mjs";import"viem/utils";import"fast-password-entropy";import"secure-password-utilities";import"secure-password-utilities/wordlists";import"../../components/embedded-wallets/SetWalletPasswordForm/ConfimWalletPasswordForm.mjs";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"../../components/Layouts.mjs";import"styled-components";import"../../components/ModalFooter.mjs";import"../../svg/protected-by-privy.mjs";import"../../components/ModalHeader.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../components/embedded-wallets/SetWalletPasswordForm/shared.mjs";import"@heroicons/react/24/outline/ArrowPathIcon";import"@heroicons/react/24/outline/EyeIcon";import"@heroicons/react/24/outline/EyeSlashIcon";import"../../components/Button.mjs";import"../../components/Loader.mjs";import"../../components/embedded-wallets/SetWalletPasswordForm/ConfimWalletPasswordSaved.mjs";import"../../components/Checkbox.mjs";import"../../components/embedded-wallets/SetWalletPasswordForm/CreateWalletPassword.mjs";import"@heroicons/react/24/outline/KeyIcon";import"@heroicons/react/24/solid/CheckCircleIcon";import"../../components/embedded-wallets/SetWalletPasswordForm/SaveWalletPassword.mjs";import"@heroicons/react/24/outline/ArrowDownTrayIcon";import"@heroicons/react/24/outline/ClipboardDocumentCheckIcon";import"@heroicons/react/24/outline/DocumentDuplicateIcon";import"../../components/embedded-wallets/SetWalletPasswordForm/SetWalletPasswordComplete.mjs";import"@heroicons/react/24/solid/XCircleIcon";import"../../components/ScreenHeader.mjs";import"../../components/embedded-wallets/SetWalletPasswordForm/setWalletPassword.hooks.mjs";const d=()=>{let{app:d,navigate:h,data:u,onUserCloseViaDialogOrKeybindRef:j}=m(),[w,f]=e(""),[y,b]=e(!1),[S,C]=e(),[P,g]=e(null),{authenticated:W,user:A}=c(),{closePrivyModal:I,isNewUserThisSession:v,initializeWalletProxy:k}=i(),{onSuccess:x,onFailure:E,callAuthOnSuccessOnClose:F}=u.createWallet,{createWallet:D}=a(),[T,L]=e(null),M=new r((async()=>{try{let o=await D({recoveryPassword:S,user:A});if(!o)return;L(o),v?h(s.EMBEDDED_WALLET_CREATED_SCREEN):(x(o),I({shouldCallAuthOnSuccess:F}))}catch(o){f(o.message)}}));t((()=>{P||k(3e4).then((o=>g(o)))}),[P]),t((()=>{if(!W||!A)return h(s.LANDING),void E(Error("User must be authenticated before creating a Privy wallet"))}),[W]),j.current=()=>null;/*#__PURE__*/return o(p,{config:{initiatedBy:"automatic"},appName:d?.name||"privy",loading:!P,buttonLoading:y,buttonHideAnimations:!T&&y,isResettingPassword:!1,error:w,password:S||"",onClose:()=>{T&&"user-passcode"!==T?.recoveryMethod?(E(new n("User created a wallet but failed to set a password for it")),I({shouldCallAuthOnSuccess:!1})):T?(x(T),I({shouldCallAuthOnSuccess:F})):(E(new n("User wallet creation failed")),I({shouldCallAuthOnSuccess:!1}))},onPasswordChange:C,onPasswordGenerate:()=>C(l()),onSubmit:async()=>(b(!0),M.execute().then((()=>new Promise((o=>setTimeout(o,250))))).finally((()=>b(!1))))})};export{d as EmbeddedWalletPasswordCreateScreen};
@@ -1 +1 @@
1
- import{jsxs as o,jsx as e,Fragment as r}from"react/jsx-runtime";import{ModalScreen as t}from"../index.mjs";import n from"@heroicons/react/24/outline/LockClosedIcon";import s from"@heroicons/react/24/outline/PencilSquareIcon";import i from"@heroicons/react/24/outline/QuestionMarkCircleIcon";import{useState as c}from"react";import{styled as m}from"styled-components";import{getPrivyPrimaryWallet as a}from"../../client/user.mjs";import{PrimaryButton as l}from"../../components/Button.mjs";import{BlobbyFooter as p}from"../../components/ModalFooter.mjs";import{ModalHeader as d}from"../../components/ModalHeader.mjs";import{CenteredScreenHeader as h}from"../../components/ScreenHeader.mjs";import{useAppConfig as u}from"../../configuration/context.mjs";import{usePrivyInternal as j}from"../../hooks/internal-context.mjs";import{usePrivyModal as y}from"../../hooks/modal-context.mjs";import{usePrivyContext as f}from"../../hooks/privy-context.mjs";import{embeddedWalletSetPasswordScreen as g}from"../../lib/embeddedWalletRecovery.mjs";import{AppleICloud as v}from"../../svg/apple-icloud.mjs";import{GoogleDrive as w}from"../../svg/google-drive.mjs";import{LoginMethodButton as C}from"../LandingScreen/styles.mjs";import{RecoveryContainer as k,RecoveryExplainerContainer as S}from"./styles.mjs";import"@ethersproject/address";import"../../components/Loader.mjs";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/index.mjs";import"../../components/PrefetchedImage.mjs";import"../../errors.mjs";import"ofetch";import"../../paths.mjs";import"../../lib/pkce.mjs";import"jose";import"../../crypto.mjs";import"../../storage.mjs";let b=/*#__PURE__*/m.div.withConfig({displayName:"IconContainer",componentId:"sc-6716a2fa-0"})(["width:24px;height:24px;display:flex;justify-content:center;align-items:center;"]),A={"google-drive":"Google Drive",icloud:"iCloud","user-passcode":"password",privy:"Privy"},x=({onClose:t})=>/*#__PURE__*/o(S,{children:[/*#__PURE__*/e(h,{title:"Why do I need to secure my account?",icon:/*#__PURE__*/e(i,{width:48}),description:/*#__PURE__*/o(r,{children:[/*#__PURE__*/e("p",{children:"Your app uses cryptography to secure your account. App secrets are split and encrypted so only you can access them."}),/*#__PURE__*/e("p",{children:"To use this app on new devices, secure account secrets using a password, your Google or your Apple account. It’s important you don’t lose access to the method you choose."})]})}),/*#__PURE__*/e(l,{onClick:t,children:"Select backup method"})]});const I=()=>{let[i,m]=c(!1),{navigate:l,lastScreen:S,navigateBack:I,setModalData:M,data:E,onUserCloseViaDialogOrKeybindRef:O}=y(),{user:R}=f(),{embeddedWallets:D}=u(),{closePrivyModal:F}=j(),P=a(R),W=null===P,{isInAccountCreateFlow:L,isResettingPassword:B}=E.recoverySelection,T=P&&"privy"!==P.recoveryMethod,H=T?/*#__PURE__*/o("span",{children:["Your account is currently secured using"," ",/*#__PURE__*/e("strong",{children:A[P?.recoveryMethod||"user-passcode"]}),"."]}):"Select a method for logging in on new devices and recovering your account.";function U(o){M({recoveryOAuthStatus:{provider:o,action:W?"create-wallet":"set-recovery",isInAccountCreateFlow:L}}),l(t.EMBEDDED_WALLET_RECOVERY_OAUTH_SCREEN)}function _(){E?.setWalletPassword?.onFailure(Error("User exited set recovery flow")),F({shouldCallAuthOnSuccess:E?.setWalletPassword?.callAuthOnSuccessOnClose??!1})}return O.current=_,/*#__PURE__*/o(r,{children:[/*#__PURE__*/e(d,{onClose:_,backFn:i?()=>m(!1):S?I:void 0,infoFn:S||i?void 0:()=>m(!0)},"header"),i?/*#__PURE__*/e(x,{onClose:()=>m(!1)}):/*#__PURE__*/o(r,{children:[/*#__PURE__*/e(h,{title:T?"Update backup method":"Secure your account",icon:/*#__PURE__*/e(n,{width:48}),description:H}),/*#__PURE__*/e(k,{children:D.userOwnedRecoveryOptions.filter((o=>!["icloud","google-drive"].includes(P?.recoveryMethod||"")||o!==P?.recoveryMethod)).sort().map((r=>{switch(r){case"google-drive":/*#__PURE__*/return o(C,{onClick:()=>U("google-drive"),children:[/*#__PURE__*/e(b,{children:/*#__PURE__*/e(w,{style:{width:18}})}),"Back up to Google Drive"]},r);case"icloud":/*#__PURE__*/return o(C,{onClick:()=>U("icloud"),children:[/*#__PURE__*/e(b,{children:/*#__PURE__*/e(v,{style:{width:24}})}),"Back up to Apple iCloud"]},r);case"user-passcode":/*#__PURE__*/return o(C,{onClick:()=>{l(g({isCreatingWallet:W,skipSplashScreen:!0}))},children:[/*#__PURE__*/e(b,{children:/*#__PURE__*/e(s,{style:{width:18}})}),B?"Reset your":"Set a"," password"]},r);default:return null}}))})]}),/*#__PURE__*/e(p,{})]})};export{I as RecoverySelectionScreen};
1
+ import{jsxs as o,jsx as e,Fragment as r}from"react/jsx-runtime";import{ModalScreen as t}from"../index.mjs";import i from"@heroicons/react/24/outline/LockClosedIcon";import n from"@heroicons/react/24/outline/PencilSquareIcon";import s from"@heroicons/react/24/outline/QuestionMarkCircleIcon";import{useState as c}from"react";import{styled as m}from"styled-components";import{getPrivyPrimaryWallet as a}from"../../client/user.mjs";import{PrimaryButton as l}from"../../components/Button.mjs";import{BlobbyFooter as p}from"../../components/ModalFooter.mjs";import{ModalHeader as d}from"../../components/ModalHeader.mjs";import{CenteredScreenHeader as h}from"../../components/ScreenHeader.mjs";import{useAppConfig as u}from"../../configuration/context.mjs";import{usePrivyInternal as j}from"../../hooks/internal-context.mjs";import{usePrivyModal as y}from"../../hooks/modal-context.mjs";import{usePrivyContext as f}from"../../hooks/privy-context.mjs";import{embeddedWalletSetPasswordScreen as g}from"../../lib/embeddedWalletRecovery.mjs";import{AppleICloud as v}from"../../svg/apple-icloud.mjs";import{GoogleDrive as w}from"../../svg/google-drive.mjs";import{LoginMethodButton as C}from"../LandingScreen/styles.mjs";import{RecoveryContainer as k,RecoveryExplainerContainer as S}from"./styles.mjs";import"viem/utils";import"../../components/Loader.mjs";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/index.mjs";import"../../components/PrefetchedImage.mjs";import"../../errors.mjs";import"ofetch";import"../../paths.mjs";import"../../lib/pkce.mjs";import"jose";import"../../crypto.mjs";import"../../storage.mjs";let b=/*#__PURE__*/m.div.withConfig({displayName:"IconContainer",componentId:"sc-6716a2fa-0"})(["width:24px;height:24px;display:flex;justify-content:center;align-items:center;"]),A={"google-drive":"Google Drive",icloud:"iCloud","user-passcode":"password",privy:"Privy"},x=({onClose:t})=>/*#__PURE__*/o(S,{children:[/*#__PURE__*/e(h,{title:"Why do I need to secure my account?",icon:/*#__PURE__*/e(s,{width:48}),description:/*#__PURE__*/o(r,{children:[/*#__PURE__*/e("p",{children:"Your app uses cryptography to secure your account. App secrets are split and encrypted so only you can access them."}),/*#__PURE__*/e("p",{children:"To use this app on new devices, secure account secrets using a password, your Google or your Apple account. It’s important you don’t lose access to the method you choose."})]})}),/*#__PURE__*/e(l,{onClick:t,children:"Select backup method"})]});const I=()=>{let[s,m]=c(!1),{navigate:l,lastScreen:S,navigateBack:I,setModalData:M,data:E,onUserCloseViaDialogOrKeybindRef:O}=y(),{user:R}=f(),{embeddedWallets:D}=u(),{closePrivyModal:F}=j(),P=a(R),W=null===P,{isInAccountCreateFlow:L,isResettingPassword:B}=E.recoverySelection,T=P&&"privy"!==P.recoveryMethod,H=T?/*#__PURE__*/o("span",{children:["Your account is currently secured using"," ",/*#__PURE__*/e("strong",{children:A[P?.recoveryMethod||"user-passcode"]}),"."]}):"Select a method for logging in on new devices and recovering your account.";function U(o){M({recoveryOAuthStatus:{provider:o,action:W?"create-wallet":"set-recovery",isInAccountCreateFlow:L}}),l(t.EMBEDDED_WALLET_RECOVERY_OAUTH_SCREEN)}function _(){E?.setWalletPassword?.onFailure(Error("User exited set recovery flow")),F({shouldCallAuthOnSuccess:E?.setWalletPassword?.callAuthOnSuccessOnClose??!1})}return O.current=_,/*#__PURE__*/o(r,{children:[/*#__PURE__*/e(d,{onClose:_,backFn:s?()=>m(!1):S?I:void 0,infoFn:S||s?void 0:()=>m(!0)},"header"),s?/*#__PURE__*/e(x,{onClose:()=>m(!1)}):/*#__PURE__*/o(r,{children:[/*#__PURE__*/e(h,{title:T?"Update backup method":"Secure your account",icon:/*#__PURE__*/e(i,{width:48}),description:H}),/*#__PURE__*/e(k,{children:D.userOwnedRecoveryOptions.filter((o=>!["icloud","google-drive"].includes(P?.recoveryMethod||"")||o!==P?.recoveryMethod)).sort().map((r=>{switch(r){case"google-drive":/*#__PURE__*/return o(C,{onClick:()=>U("google-drive"),children:[/*#__PURE__*/e(b,{children:/*#__PURE__*/e(w,{style:{width:18}})}),"Back up to Google Drive"]},r);case"icloud":/*#__PURE__*/return o(C,{onClick:()=>U("icloud"),children:[/*#__PURE__*/e(b,{children:/*#__PURE__*/e(v,{style:{width:24}})}),"Back up to Apple iCloud"]},r);case"user-passcode":/*#__PURE__*/return o(C,{onClick:()=>{l(g({isCreatingWallet:W,skipSplashScreen:!0}))},children:[/*#__PURE__*/e(b,{children:/*#__PURE__*/e(n,{style:{width:18}})}),B?"Reset your":"Set a"," password"]},r);default:return null}}))})]}),/*#__PURE__*/e(p,{})]})};export{I as RecoverySelectionScreen};
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as r,jsx as e}from"react/jsx-runtime";import t from"@heroicons/react/24/outline/ExclamationTriangleIcon";import n from"@heroicons/react/24/outline/LockClosedIcon";import{useState as i}from"react";import{getPrivyWalletWithAddress as s}from"../../client/user.mjs";import{PrimaryButtonWithoutGray as c}from"../../components/Button.mjs";import{BlobbyFooter as m}from"../../components/ModalFooter.mjs";import{ModalHeader as a}from"../../components/ModalHeader.mjs";import{WithCircleBorder as l}from"../../components/ui/icons/WithCircleBorder.mjs";import{Subtitle as p}from"../../components/ui/typography/Subtitle.mjs";import{Title as h}from"../../components/ui/typography/Title.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as d}from"../../constants.mjs";import{usePrivyInternal as j}from"../../hooks/internal-context.mjs";import{usePrivyModal as y}from"../../hooks/modal-context.mjs";import{usePrivyContext as u}from"../../hooks/privy-context.mjs";import{Grow as f}from"../LandingScreen/styles.mjs";import"@ethersproject/address";import"styled-components";import"../../components/Loader.mjs";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/index.mjs";import"../../components/PrefetchedImage.mjs";import"../index.mjs";const g=()=>{let{user:g,getAccessToken:v}=u(),{walletProxy:w,refreshUser:b,closePrivyModal:k}=j(),x=y(),{entropyId:C,entropyIdVerifier:I}=x.data?.recoverWallet,[S,T]=i(!1),[M,A]=i(null),[P,U]=i(null);function W(){if(!S){if(P)return x.data?.setWalletPassword?.onFailure(P),void k();if(!M)return x.data?.setWalletPassword?.onFailure(Error("User exited set recovery flow")),void k()}}x.onUserCloseViaDialogOrKeybindRef.current=W;let E=!(!S&&!M);/*#__PURE__*/return o(r,P?{children:[/*#__PURE__*/e(a,{onClose:W},"header"),/*#__PURE__*/e(l,{$color:"var(--privy-color-error)",style:{alignSelf:"center"},children:/*#__PURE__*/e(t,{height:38,width:38,stroke:"var(--privy-color-error)"})}),/*#__PURE__*/e(h,{style:{marginTop:"0.5rem"},children:"Something went wrong"}),/*#__PURE__*/e(f,{style:{minHeight:"2rem"}}),/*#__PURE__*/e(c,{onClick:()=>U(null),children:"Try again"}),/*#__PURE__*/e(m,{})]}:{children:[/*#__PURE__*/e(a,{onClose:W},"header"),/*#__PURE__*/e(n,{style:{width:"3rem",height:"3rem",alignSelf:"center"}}),/*#__PURE__*/e(h,{style:{marginTop:"0.5rem"},children:"Automatically secure your account"}),/*#__PURE__*/e(p,{style:{marginTop:"1rem"},children:"When you log into a new device, you’ll only need to authenticate to access your account. Never get logged out if you forget your password."}),/*#__PURE__*/e(f,{style:{minHeight:"2rem"}}),/*#__PURE__*/e(c,{loading:S,disabled:E,onClick:()=>async function(){T(!0);try{let o=await v(),r=s(g,C);if(!o||!w||!r)return;if(!(await w.setRecovery({accessToken:o,entropyId:C,entropyIdVerifier:I,existingRecoveryMethod:r.recoveryMethod,recoveryMethod:"privy"})).entropyId)throw Error("Unable to set recovery on wallet");let e=await b();if(!e)throw Error("Unable to set recovery on wallet");let t=s(e,r.address);if(!t)throw Error("Unabled to set recovery on wallet");A(!!e),setTimeout((()=>{x.data?.setWalletPassword?.onSuccess(t),k()}),d)}catch(o){U(o)}finally{T(!1)}}(),children:M?"Success":"Confirm"}),/*#__PURE__*/e(m,{})]})};export{g as SetAutomaticRecoveryScreen};
1
+ import{jsxs as o,Fragment as r,jsx as e}from"react/jsx-runtime";import t from"@heroicons/react/24/outline/ExclamationTriangleIcon";import n from"@heroicons/react/24/outline/LockClosedIcon";import{useState as i}from"react";import{getPrivyWalletWithAddress as s}from"../../client/user.mjs";import{PrimaryButtonWithoutGray as c}from"../../components/Button.mjs";import{BlobbyFooter as m}from"../../components/ModalFooter.mjs";import{ModalHeader as a}from"../../components/ModalHeader.mjs";import{WithCircleBorder as l}from"../../components/ui/icons/WithCircleBorder.mjs";import{Subtitle as p}from"../../components/ui/typography/Subtitle.mjs";import{Title as h}from"../../components/ui/typography/Title.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as d}from"../../constants.mjs";import{usePrivyInternal as j}from"../../hooks/internal-context.mjs";import{usePrivyModal as y}from"../../hooks/modal-context.mjs";import{usePrivyContext as u}from"../../hooks/privy-context.mjs";import{Grow as f}from"../LandingScreen/styles.mjs";import"viem/utils";import"styled-components";import"../../components/Loader.mjs";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/index.mjs";import"../../components/PrefetchedImage.mjs";import"../index.mjs";const g=()=>{let{user:g,getAccessToken:v}=u(),{walletProxy:w,refreshUser:b,closePrivyModal:k}=j(),x=y(),{entropyId:C,entropyIdVerifier:I}=x.data?.recoverWallet,[S,T]=i(!1),[M,A]=i(null),[P,U]=i(null);function W(){if(!S){if(P)return x.data?.setWalletPassword?.onFailure(P),void k();if(!M)return x.data?.setWalletPassword?.onFailure(Error("User exited set recovery flow")),void k()}}x.onUserCloseViaDialogOrKeybindRef.current=W;let E=!(!S&&!M);/*#__PURE__*/return o(r,P?{children:[/*#__PURE__*/e(a,{onClose:W},"header"),/*#__PURE__*/e(l,{$color:"var(--privy-color-error)",style:{alignSelf:"center"},children:/*#__PURE__*/e(t,{height:38,width:38,stroke:"var(--privy-color-error)"})}),/*#__PURE__*/e(h,{style:{marginTop:"0.5rem"},children:"Something went wrong"}),/*#__PURE__*/e(f,{style:{minHeight:"2rem"}}),/*#__PURE__*/e(c,{onClick:()=>U(null),children:"Try again"}),/*#__PURE__*/e(m,{})]}:{children:[/*#__PURE__*/e(a,{onClose:W},"header"),/*#__PURE__*/e(n,{style:{width:"3rem",height:"3rem",alignSelf:"center"}}),/*#__PURE__*/e(h,{style:{marginTop:"0.5rem"},children:"Automatically secure your account"}),/*#__PURE__*/e(p,{style:{marginTop:"1rem"},children:"When you log into a new device, you’ll only need to authenticate to access your account. Never get logged out if you forget your password."}),/*#__PURE__*/e(f,{style:{minHeight:"2rem"}}),/*#__PURE__*/e(c,{loading:S,disabled:E,onClick:()=>async function(){T(!0);try{let o=await v(),r=s(g,C);if(!o||!w||!r)return;if(!(await w.setRecovery({accessToken:o,entropyId:C,entropyIdVerifier:I,existingRecoveryMethod:r.recoveryMethod,recoveryMethod:"privy"})).entropyId)throw Error("Unable to set recovery on wallet");let e=await b();if(!e)throw Error("Unable to set recovery on wallet");let t=s(e,r.address);if(!t)throw Error("Unabled to set recovery on wallet");A(!!e),setTimeout((()=>{x.data?.setWalletPassword?.onSuccess(t),k()}),d)}catch(o){U(o)}finally{T(!1)}}(),children:M?"Success":"Confirm"}),/*#__PURE__*/e(m,{})]})};export{g as SetAutomaticRecoveryScreen};
@@ -1 +1 @@
1
- import{jsx as o}from"react/jsx-runtime";import{useState as n,useEffect as t}from"react";import{getPrivyPrimaryWallet as e,getEntropyDetailsFromAccount as r}from"../../client/user.mjs";import{useAppConfig as i}from"../../configuration/context.mjs";import{sendSolanaTransaction as s}from"../../embedded-wallets/solana/transaction.mjs";import{usePrivyInternal as a}from"../../hooks/internal-context.mjs";import{usePrivyModal as c}from"../../hooks/modal-context.mjs";import{usePrivyContext as m}from"../../hooks/privy-context.mjs";import{useGetSolPrice as p}from"../../hooks/useGetSolPrice.mjs";import{getSolanaNetworkFromRpcEndpoint as l}from"../../lib/solana/index.mjs";import{decodeSolanaTransaction as d,getNativeCurrencyFromLamports as u,getDollarsFromLamport as h,isVersionedTransaction as j,createSolanaTransactionReceipt as f}from"../../lib/solana/transaction.mjs";import{ErrorScreenView as g}from"../ErrorScreen.mjs";import{SendTransactionScreenView as y}from"../SendTransactionScreen/SendTransactionScreenView.mjs";import{TransactionErrorView as S}from"../SendTransactionScreen/TransactionErrorView.mjs";import{ModalScreen as T}from"../index.mjs";import{SolanaTransactionReceiptView as b}from"./SolanaTransactionReceiptView.mjs";import"@ethersproject/address";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../utils/buffer/readBigInt64LE.mjs";import"../../hooks/index.mjs";import"../../components/PrefetchedImage.mjs";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"@heroicons/react/24/outline/PhoneIcon";import"styled-components";import"../../components/Button.mjs";import"../../components/Loader.mjs";import"../../components/CircleBorder.mjs";import"../../components/ModalHeader.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../components/layout/StackedContainer.mjs";import"../../embedded-wallets/errors.mjs";import"../../embedded-wallets/types.mjs";import"../../errors.mjs";import"ofetch";import"../../hooks/captcha-context.mjs";import"../../utils/index.mjs";import"@ethersproject/providers";import"../../connectors/get-legacy-injected-providers.mjs";import"../../connectors/is-wallet-installed.mjs";import"../../svg/lock-closed.mjs";import"@heroicons/react/24/outline";import"../../components/ModalFooter.mjs";import"../../svg/protected-by-privy.mjs";import"../../components/ui/layout/Row.mjs";import"../../components/ui/typography/ErrorMessage.mjs";import"../../components/ui/typography/LabelSm.mjs";import"../../components/ui/typography/Subtitle.mjs";import"../../components/ui/typography/Title.mjs";import"../../components/ui/typography/Value.mjs";import"../../components/ui/animation/LoadingSkeleton.mjs";import"../../components/ui/wallet/Address.mjs";import"@heroicons/react/24/outline/CheckIcon";import"@heroicons/react/24/outline/Square2StackIcon";import"../../components/ui/wallet/WalletInfoCard.mjs";import"../../components/ui/chips/Chip.mjs";import"../../components/ui/layout/Column.mjs";import"../../components/ui/typography/LabelXs.mjs";import"../../components/ui/wallet/shared.mjs";import"../LandingScreen/styles.mjs";import"../SendTransactionScreen/TransactionDetail.mjs";import"../SendTransactionScreen/useTransactionDetails.mjs";import"@heroicons/react/24/outline/ClipboardDocumentCheckIcon";import"@heroicons/react/24/outline/ClipboardDocumentIcon";import"@heroicons/react/24/outline/ExclamationCircleIcon";import"../SendTransactionScreen/EthersTransactionError.mjs";import"@ethersproject/logger";import"@heroicons/react/24/outline/CheckCircleIcon";import"../../components/CircleBackground.mjs";import"../../components/Layouts.mjs";import"../../components/ScreenHeader.mjs";import"../../components/embedded-wallets/SolanaTransactionDetails.mjs";import"@heroicons/react/24/outline/ChevronDownIcon";import"../../components/embedded-wallets/PriceDisplay.mjs";import"../../lib/ethers.mjs";import"@ethersproject/bignumber";import"@ethersproject/units";import"../../ethers-Cz-frLvN.mjs";import"../../components/embedded-wallets/WalletLink.mjs";const I=()=>{let{data:I,onUserCloseViaDialogOrKeybindRef:k,setModalData:w,navigate:C}=c(),{closePrivyModal:x,walletProxy:v}=a(),E=i(),{user:O,getAccessToken:L}=m(),[A,D]=n(I?.sendSolanaTransaction?.transactionRequest),[B,P]=n(),[F,M]=n(),[V,R]=n(0),[H,W]=n(!1),[N,U]=n(),[q,z]=n(null),_=I?.sendSolanaTransaction?.connection,G=I?.sendSolanaTransaction?.transactingWallet,X=B?.instructions.at(V),K=B?.instructions.length??1,Q=l(_?.rpcEndpoint||""),$=e(O);if(t((()=>{!async function(){if(A&&_)try{M(void 0);let o=await d(A,_);P(o),R(0)}catch(o){console.warn("Failed to prepare transaction",o),M(o)}}()}),[A,_]),!(A&&I?.sendSolanaTransaction&&G&&_)){let n=Error("Invalid transaction request");/*#__PURE__*/return o(g,{error:n,onClick:()=>{I?.sendSolanaTransaction?.onFailure(n),x({shouldCallAuthOnSuccess:!1})}})}let{solPrice:J,isSolPriceLoading:Y}=p(),Z=()=>{if(!H)return N?I?.sendSolanaTransaction?.onSuccess(N):(I?.sendSolanaTransaction?.onFailure(q??F??Error("User exited the modal before submitting the transaction")),R(0)),x({shouldCallAuthOnSuccess:!1})};k.current=Z;let oo="fiat-currency"===E.embeddedWallets.priceDisplay.primary,no=I.sendTransaction?.uiOptions?.transactionInfo?.title||("approve"===X?.action?"Confirm address":"Approve transaction"),to=I.sendTransaction?.uiOptions?.description||`${E.name} wants your permission to approve the following transaction.`,eo=I.sendTransaction?.uiOptions?.transactionInfo?.contractInfo?.imgUrl?/*#__PURE__*/o("img",{src:I.sendTransaction.uiOptions.transactionInfo.contractInfo.imgUrl,alt:I.sendTransaction.uiOptions.transactionInfo.contractInfo.imgAltText}):null,ro=X?.amount||0n,io=0===V&&B?.fees||0n,so=X?.balance||0n,ao=X?.to,co=ro+io,mo=u(co),po=oo&&J?h(co,J):void 0,lo=io?u(io):void 0,uo=oo&&J?h(io,J):void 0,ho=so?u(so):void 0,jo=oo&&J?h(so,J):void 0,fo=!F&&!X?.hasFunds,go=!!(I.funding&&I.funding.supportedOptions.length>0),yo=fo&&go,So=yo?"Add funds":I.sendTransaction?.uiOptions?.buttonText||"Approve";return N?/*#__PURE__*/o(b,{instructions:B?.instructions.map((({from:o,to:n,amount:t})=>({from:o?.toBase58(),to:n?.toBase58(),amount:t})))??[],fees:0===V?N.fees:0n,onClose:Z,transactionInfo:I.sendTransaction?.uiOptions.transactionInfo,solPrice:J,receiptHeader:I.sendTransaction?.uiOptions.successHeader,receiptDescription:I.sendTransaction?.uiOptions.successDescription,rpcEndpoint:_.rpcEndpoint}):q?/*#__PURE__*/o(S,{transactionError:q,connection:_,onClose:Z,network:"solana",onRetry:async()=>{z(null);let{blockhash:o}=await _.getLatestBlockhash();j(A)?A.message.recentBlockhash=o:A.recentBlockhash=o,D(A)}}):/*#__PURE__*/o(y,{isSubmitting:H,submitError:q,isPreparing:!B,isTokenPriceLoading:Y,isTokenContractInfoLoading:!1,symbol:"SOL",chain:void 0,img:eo,title:no,subtitle:to,from:G.address||"",to:ao?.toBase58(),fee:uo??lo,total:null!=ro?po??mo:void 0,txValue:ro,spender:X?.spender?.toBase58(),network:Q,cta:So,missingFunds:fo,action:X?.action,balance:jo??ho,prepareError:F,chainName:"Solana",onClose:Z,onClick:yo?async()=>{if(!G)return;if(!go)throw Error("Funding wallet is not enabled");let o=T.FUNDING_METHOD_SELECTION_SCREEN;w({...I,funding:{...I.funding,methodScreen:o}}),C(o)}:async()=>{if(V<(B?.instructions.length??1)-1)R(V+1);else try{W(!0);let o=await L();if(H||!o||!G||!v||!O||!$)return;let{entropyId:n,entropyIdVerifier:t}=r($),{signature:e,receipt:i}=await s({tx:A,accessToken:o,connection:_,walletProxy:v,entropyId:n,entropyIdVerifier:t,transactingWalletAddress:G.address,transactingWalletIndex:G.walletIndex??0,transactionOptions:I.sendSolanaTransaction?.transactionOptions});U(f(e,i))}catch(o){console.warn({transaction:A,error:o}),z(o)}finally{W(!1)}},isSponsored:!1,transactionIndex:V,maxIndex:K-1,disabled:fo&&!go,onBack:V>0&&K>1?()=>R(V-1):void 0})};export{I as SendSolanaTransactionScreen};
1
+ import{jsx as o}from"react/jsx-runtime";import{useState as n,useEffect as t}from"react";import{getPrivyPrimaryWallet as e,getEntropyDetailsFromAccount as i}from"../../client/user.mjs";import{useAppConfig as r}from"../../configuration/context.mjs";import{sendSolanaTransaction as s}from"../../embedded-wallets/solana/transaction.mjs";import{usePrivyInternal as a}from"../../hooks/internal-context.mjs";import{usePrivyModal as c}from"../../hooks/modal-context.mjs";import{usePrivyContext as m}from"../../hooks/privy-context.mjs";import{useGetSolPrice as p}from"../../hooks/useGetSolPrice.mjs";import{getSolanaNetworkFromRpcEndpoint as l}from"../../lib/solana/index.mjs";import{decodeSolanaTransaction as d,getNativeCurrencyFromLamports as u,getDollarsFromLamport as h,isVersionedTransaction as j,createSolanaTransactionReceipt as f}from"../../lib/solana/transaction.mjs";import{ErrorScreenView as g}from"../ErrorScreen.mjs";import{SendTransactionScreenView as y}from"../SendTransactionScreen/SendTransactionScreenView.mjs";import{TransactionErrorView as S}from"../SendTransactionScreen/TransactionErrorView.mjs";import{ModalScreen as b}from"../index.mjs";import{SolanaTransactionReceiptView as T}from"./SolanaTransactionReceiptView.mjs";import"viem/utils";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../utils/buffer/readBigInt64LE.mjs";import"../../hooks/index.mjs";import"../../components/PrefetchedImage.mjs";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"@heroicons/react/24/outline/PhoneIcon";import"styled-components";import"../../components/Button.mjs";import"../../components/Loader.mjs";import"../../components/CircleBorder.mjs";import"../../components/ModalHeader.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../components/layout/StackedContainer.mjs";import"../../embedded-wallets/errors.mjs";import"../../embedded-wallets/types.mjs";import"../../errors.mjs";import"ofetch";import"../../hooks/captcha-context.mjs";import"../../utils/index.mjs";import"../../connectors/get-legacy-injected-providers.mjs";import"../../connectors/is-wallet-installed.mjs";import"../../utils/eth/getPublicClient.mjs";import"viem";import"../../svg/lock-closed.mjs";import"@heroicons/react/24/outline";import"../../components/ModalFooter.mjs";import"../../svg/protected-by-privy.mjs";import"../../components/ui/layout/Row.mjs";import"../../components/ui/typography/ErrorMessage.mjs";import"../../components/ui/typography/LabelSm.mjs";import"../../components/ui/typography/Subtitle.mjs";import"../../components/ui/typography/Title.mjs";import"../../components/ui/typography/Value.mjs";import"../../components/ui/animation/LoadingSkeleton.mjs";import"../../components/ui/wallet/Address.mjs";import"@heroicons/react/24/outline/CheckIcon";import"@heroicons/react/24/outline/Square2StackIcon";import"../../components/ui/wallet/WalletInfoCard.mjs";import"../../components/ui/chips/Chip.mjs";import"../../components/ui/layout/Column.mjs";import"../../components/ui/typography/LabelXs.mjs";import"../../components/ui/wallet/shared.mjs";import"../LandingScreen/styles.mjs";import"../SendTransactionScreen/TransactionDetail.mjs";import"../SendTransactionScreen/useTransactionDetails.mjs";import"@heroicons/react/24/outline/ClipboardDocumentCheckIcon";import"@heroicons/react/24/outline/ClipboardDocumentIcon";import"@heroicons/react/24/outline/ExclamationCircleIcon";import"@heroicons/react/24/outline/CheckCircleIcon";import"../../components/CircleBackground.mjs";import"../../components/Layouts.mjs";import"../../components/ScreenHeader.mjs";import"../../components/embedded-wallets/SolanaTransactionDetails.mjs";import"@heroicons/react/24/outline/ChevronDownIcon";import"../../components/embedded-wallets/PriceDisplay.mjs";import"../../lib/ethers.mjs";import"../../components/embedded-wallets/WalletLink.mjs";const I=()=>{let{data:I,onUserCloseViaDialogOrKeybindRef:k,setModalData:w,navigate:C}=c(),{closePrivyModal:v,walletProxy:x}=a(),E=r(),{user:O,getAccessToken:L}=m(),[A,D]=n(I?.sendSolanaTransaction?.transactionRequest),[P,B]=n(),[F,M]=n(),[V,R]=n(0),[H,W]=n(!1),[N,U]=n(),[q,z]=n(null),_=I?.sendSolanaTransaction?.connection,G=I?.sendSolanaTransaction?.transactingWallet,X=P?.instructions.at(V),K=P?.instructions.length??1,Q=l(_?.rpcEndpoint||""),$=e(O);if(t((()=>{!async function(){if(A&&_)try{M(void 0);let o=await d(A,_);B(o),R(0)}catch(o){console.warn("Failed to prepare transaction",o),M(o)}}()}),[A,_]),!(A&&I?.sendSolanaTransaction&&G&&_)){let n=Error("Invalid transaction request");/*#__PURE__*/return o(g,{error:n,onClick:()=>{I?.sendSolanaTransaction?.onFailure(n),v({shouldCallAuthOnSuccess:!1})}})}let{solPrice:J,isSolPriceLoading:Y}=p(),Z=()=>{if(!H)return N?I?.sendSolanaTransaction?.onSuccess(N):(I?.sendSolanaTransaction?.onFailure(q??F??Error("User exited the modal before submitting the transaction")),R(0)),v({shouldCallAuthOnSuccess:!1})};k.current=Z;let oo="fiat-currency"===E.embeddedWallets.priceDisplay.primary,no=I.sendTransaction?.uiOptions?.transactionInfo?.title||("approve"===X?.action?"Confirm address":"Approve transaction"),to=I.sendTransaction?.uiOptions?.description||`${E.name} wants your permission to approve the following transaction.`,eo=I.sendTransaction?.uiOptions?.transactionInfo?.contractInfo?.imgUrl?/*#__PURE__*/o("img",{src:I.sendTransaction.uiOptions.transactionInfo.contractInfo.imgUrl,alt:I.sendTransaction.uiOptions.transactionInfo.contractInfo.imgAltText}):null,io=X?.amount||0n,ro=0===V&&P?.fees||0n,so=X?.balance||0n,ao=X?.to,co=io+ro,mo=u(co),po=oo&&J?h(co,J):void 0,lo=ro?u(ro):void 0,uo=oo&&J?h(ro,J):void 0,ho=so?u(so):void 0,jo=oo&&J?h(so,J):void 0,fo=!F&&!X?.hasFunds,go=!!(I.funding&&I.funding.supportedOptions.length>0),yo=fo&&go,So=yo?"Add funds":I.sendTransaction?.uiOptions?.buttonText||"Approve";return N?/*#__PURE__*/o(T,{instructions:P?.instructions.map((({from:o,to:n,amount:t})=>({from:o?.toBase58(),to:n?.toBase58(),amount:t})))??[],fees:0===V?N.fees:0n,onClose:Z,transactionInfo:I.sendTransaction?.uiOptions.transactionInfo,solPrice:J,receiptHeader:I.sendTransaction?.uiOptions.successHeader,receiptDescription:I.sendTransaction?.uiOptions.successDescription,rpcEndpoint:_.rpcEndpoint}):q?/*#__PURE__*/o(S,{transactionError:q,connection:_,onClose:Z,network:"solana",onRetry:async()=>{z(null);let{blockhash:o}=await _.getLatestBlockhash();j(A)?A.message.recentBlockhash=o:A.recentBlockhash=o,D(A)}}):/*#__PURE__*/o(y,{isSubmitting:H,submitError:q,isPreparing:!P,isTokenPriceLoading:Y,isTokenContractInfoLoading:!1,symbol:"SOL",chain:void 0,img:eo,title:no,subtitle:to,from:G.address||"",to:ao?.toBase58(),fee:uo??lo,total:null!=io?po??mo:void 0,txValue:io,spender:X?.spender?.toBase58(),network:Q,cta:So,missingFunds:fo,action:X?.action,balance:jo??ho,prepareError:F,chainName:"Solana",onClose:Z,onClick:yo?async()=>{if(!G)return;if(!go)throw Error("Funding wallet is not enabled");let o=b.FUNDING_METHOD_SELECTION_SCREEN;w({...I,funding:{...I.funding,methodScreen:o}}),C(o)}:async()=>{if(V<(P?.instructions.length??1)-1)R(V+1);else try{W(!0);let o=await L();if(H||!o||!G||!x||!O||!$)return;let{entropyId:n,entropyIdVerifier:t}=i($),{signature:e,receipt:r}=await s({tx:A,accessToken:o,connection:_,walletProxy:x,entropyId:n,entropyIdVerifier:t,transactingWalletAddress:G.address,transactingWalletIndex:G.walletIndex??0,transactionOptions:I.sendSolanaTransaction?.transactionOptions});U(f(e,r))}catch(o){console.warn({transaction:A,error:o}),z(o)}finally{W(!1)}},isSponsored:!1,transactionIndex:V,maxIndex:K-1,disabled:fo&&!go,onBack:V>0&&K>1?()=>R(V-1):void 0})};export{I as SendSolanaTransactionScreen};
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as t,jsx as n}from"react/jsx-runtime";import i from"@heroicons/react/24/outline/CheckCircleIcon";import{styled as r}from"styled-components";import{PrimaryButton as s}from"../../components/Button.mjs";import{CircleBackground as e}from"../../components/CircleBackground.mjs";import{RefactorSpacerBottom as m}from"../../components/Layouts.mjs";import{BlobbyFooter as c}from"../../components/ModalFooter.mjs";import{ModalHeader as p}from"../../components/ModalHeader.mjs";import{CenteredScreenHeader as a}from"../../components/ScreenHeader.mjs";import{SolanaTransactionDetails as l}from"../../components/embedded-wallets/SolanaTransactionDetails.mjs";import j from"../../components/layout/StackedContainer.mjs";import{Grow as h}from"../LandingScreen/styles.mjs";import"../../components/Loader.mjs";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"react";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/internal-context.mjs";import"../../hooks/index.mjs";import"@heroicons/react/24/outline/ChevronDownIcon";import"../../components/ui/layout/Row.mjs";import"../../components/ui/typography/LabelSm.mjs";import"../../components/ui/typography/Value.mjs";import"../../components/ui/animation/LoadingSkeleton.mjs";import"../../components/embedded-wallets/PriceDisplay.mjs";import"../../lib/ethers.mjs";import"@ethersproject/bignumber";import"@ethersproject/units";import"../../utils/index.mjs";import"@ethersproject/providers";import"../../connectors/get-legacy-injected-providers.mjs";import"../../connectors/is-wallet-installed.mjs";import"../../errors.mjs";import"ofetch";import"../../ethers-Cz-frLvN.mjs";import"../../lib/solana/transaction.mjs";import"../../utils/buffer/readBigInt64LE.mjs";import"../../components/embedded-wallets/WalletLink.mjs";const d=({instructions:r,fees:s,onClose:d,receiptHeader:f,receiptDescription:g,transactionInfo:y,solPrice:b,rpcEndpoint:k})=>/*#__PURE__*/o(t,{children:[/*#__PURE__*/n(p,{onClose:d}),/*#__PURE__*/n(j,{style:{marginBottom:"16px"},children:/*#__PURE__*/o("div",{children:[/*#__PURE__*/n(e,{color:"var(--privy-color-success-light)"}),/*#__PURE__*/n(i,{height:38,width:38,strokeWidth:2,stroke:"var(--privy-color-success)"})]})}),/*#__PURE__*/n(a,{title:f??"Transaction completed successfully.",description:g??""}),/*#__PURE__*/n(l,{solPrice:b,instructions:r,fees:s,transactionInfo:y,rpcEndpoint:k}),/*#__PURE__*/n(h,{}),/*#__PURE__*/n(u,{loading:!1,onClick:d,children:"Close"}),/*#__PURE__*/n(m,{}),/*#__PURE__*/n(c,{})]});let u=/*#__PURE__*/r(s).withConfig({displayName:"SubmitButton",componentId:"sc-cb684d8d-0"})(["&&{margin-top:24px;}transition:color 350ms ease,background-color 350ms ease;"]);export{d as SolanaTransactionReceiptView};
1
+ import{jsxs as o,Fragment as t,jsx as n}from"react/jsx-runtime";import i from"@heroicons/react/24/outline/CheckCircleIcon";import{styled as s}from"styled-components";import{PrimaryButton as r}from"../../components/Button.mjs";import{CircleBackground as e}from"../../components/CircleBackground.mjs";import{RefactorSpacerBottom as m}from"../../components/Layouts.mjs";import{BlobbyFooter as c}from"../../components/ModalFooter.mjs";import{ModalHeader as a}from"../../components/ModalHeader.mjs";import{CenteredScreenHeader as p}from"../../components/ScreenHeader.mjs";import{SolanaTransactionDetails as l}from"../../components/embedded-wallets/SolanaTransactionDetails.mjs";import j from"../../components/layout/StackedContainer.mjs";import{Grow as h}from"../LandingScreen/styles.mjs";import"../../components/Loader.mjs";import"../../svg/protected-by-privy.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../../configuration/context.mjs";import"react";import"../../config.mjs";import"../../configuration/defaultClientConfig.mjs";import"../../constants.mjs";import"../../configuration/login-methods.mjs";import"../../configuration/wallets.mjs";import"../../connectors/chains/index.mjs";import"../../connectors/chains/arbitrum.mjs";import"../../connectors/chains/arbitrumSepolia.mjs";import"../../connectors/chains/avalanche.mjs";import"../../connectors/chains/avalancheFuji.mjs";import"../../connectors/chains/base.mjs";import"../../connectors/chains/baseSepolia.mjs";import"../../connectors/chains/berachainArtio.mjs";import"../../connectors/chains/celo.mjs";import"../../connectors/chains/celoAlfajores.mjs";import"../../connectors/chains/filecoin.mjs";import"../../connectors/chains/filecoinCalibration.mjs";import"../../connectors/chains/garnetHolesky.mjs";import"../../connectors/chains/holesky.mjs";import"../../connectors/chains/linea.mjs";import"../../connectors/chains/lineaTestnet.mjs";import"../../connectors/chains/lukso.mjs";import"../../connectors/chains/mainnet.mjs";import"../../connectors/chains/optimism.mjs";import"../../connectors/chains/optimismSepolia.mjs";import"../../connectors/chains/polygon.mjs";import"../../connectors/chains/polygonAmoy.mjs";import"../../connectors/chains/redstone.mjs";import"../../connectors/chains/sepolia.mjs";import"../../connectors/chains/zora.mjs";import"../../connectors/chains/zoraSepolia.mjs";import"../../connectors/chains/zoraTestnet.mjs";import"../../connectors/chains/utils.mjs";import"../../lib/solana/index.mjs";import"../../theme.mjs";import"tinycolor2";import"../../lib/cybr53.mjs";import"../../hooks/internal-context.mjs";import"../../hooks/index.mjs";import"@heroicons/react/24/outline/ChevronDownIcon";import"../../components/ui/layout/Row.mjs";import"../../components/ui/typography/LabelSm.mjs";import"../../components/ui/typography/Value.mjs";import"../../components/ui/animation/LoadingSkeleton.mjs";import"../../components/embedded-wallets/PriceDisplay.mjs";import"../../lib/ethers.mjs";import"viem";import"../../utils/index.mjs";import"../../connectors/get-legacy-injected-providers.mjs";import"../../connectors/is-wallet-installed.mjs";import"../../errors.mjs";import"ofetch";import"../../utils/eth/getPublicClient.mjs";import"../../lib/solana/transaction.mjs";import"../../utils/buffer/readBigInt64LE.mjs";import"../../components/embedded-wallets/WalletLink.mjs";const d=({instructions:s,fees:r,onClose:d,receiptHeader:f,receiptDescription:g,transactionInfo:y,solPrice:b,rpcEndpoint:k})=>/*#__PURE__*/o(t,{children:[/*#__PURE__*/n(a,{onClose:d}),/*#__PURE__*/n(j,{style:{marginBottom:"16px"},children:/*#__PURE__*/o("div",{children:[/*#__PURE__*/n(e,{color:"var(--privy-color-success-light)"}),/*#__PURE__*/n(i,{height:38,width:38,strokeWidth:2,stroke:"var(--privy-color-success)"})]})}),/*#__PURE__*/n(p,{title:f??"Transaction completed successfully.",description:g??""}),/*#__PURE__*/n(l,{solPrice:b,instructions:s,fees:r,transactionInfo:y,rpcEndpoint:k}),/*#__PURE__*/n(h,{}),/*#__PURE__*/n(u,{loading:!1,onClick:d,children:"Close"}),/*#__PURE__*/n(m,{}),/*#__PURE__*/n(c,{})]});let u=/*#__PURE__*/s(r).withConfig({displayName:"SubmitButton",componentId:"sc-cb684d8d-0"})(["&&{margin-top:24px;}transition:color 350ms ease,background-color 350ms ease;"]);export{d as SolanaTransactionReceiptView};