@privy-io/react-auth 2.0.1 → 2.0.2-beta-20250114201156

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 (155) hide show
  1. package/dist/cjs/client.js +1 -1
  2. package/dist/cjs/components/ModalFooter.js +2 -2
  3. package/dist/cjs/components/embedded-wallets/SetWalletPasswordForm/ConfimWalletPasswordForm.js +1 -1
  4. package/dist/cjs/components/embedded-wallets/SetWalletPasswordForm/ConfimWalletPasswordSaved.js +1 -1
  5. package/dist/cjs/components/embedded-wallets/SetWalletPasswordForm/CreateWalletPassword.js +1 -1
  6. package/dist/cjs/components/embedded-wallets/SetWalletPasswordForm/SaveWalletPassword.js +1 -1
  7. package/dist/cjs/components/embedded-wallets/SetWalletPasswordForm/SetWalletPasswordComplete.js +1 -1
  8. package/dist/cjs/config.js +1 -1
  9. package/dist/cjs/connectors/embeddedProvider.js +1 -1
  10. package/dist/cjs/connectors/index.js +1 -1
  11. package/dist/cjs/constants.js +1 -1
  12. package/dist/cjs/embedded-wallets/solana/provider.js +1 -1
  13. package/dist/cjs/hooks/privy-provider.js +1 -1
  14. package/dist/cjs/index.js +1 -1
  15. package/dist/cjs/privy-components/user-pill/UserMenu.js +1 -1
  16. package/dist/cjs/privy-provider-CjsU1Mr4.js +3 -0
  17. package/dist/cjs/screens/AccountTransferScreen/EmbeddedWalletInfoView.js +1 -1
  18. package/dist/cjs/screens/AccountTransferScreen/LinkConflictScreen.js +1 -1
  19. package/dist/cjs/screens/AffirmativeConsentScreen.js +1 -1
  20. package/dist/cjs/screens/AwaitingPasswordlessCodeScreen.js +1 -1
  21. package/dist/cjs/screens/CaptchaScreen.js +1 -1
  22. package/dist/cjs/screens/ConnectOnlyAuthenticatedScreen.js +1 -1
  23. package/dist/cjs/screens/ConnectOnlyLandingScreen.js +1 -1
  24. package/dist/cjs/screens/ConnectOnlyStatusScreen.js +1 -1
  25. package/dist/cjs/screens/ConnectionStatusScreen.js +1 -1
  26. package/dist/cjs/screens/CrossAppAuthScreen.js +1 -1
  27. package/dist/cjs/screens/DelegatedActionsConsentScreen.js +1 -1
  28. package/dist/cjs/screens/DelegatedActionsRevokeScreen.js +1 -1
  29. package/dist/cjs/screens/EmbeddedWalletCreatedScreen.js +1 -1
  30. package/dist/cjs/screens/EmbeddedWalletKeyExportScreen.js +1 -1
  31. package/dist/cjs/screens/EmbeddedWalletPasswordUpdateSplashScreen.js +1 -1
  32. package/dist/cjs/screens/FarcasterConnectStatusScreen.js +1 -1
  33. package/dist/cjs/screens/FarcasterSignerStatusScreen.js +1 -1
  34. package/dist/cjs/screens/Funding/AwaitingEvmToSolBridgingScreen.js +1 -1
  35. package/dist/cjs/screens/Funding/AwaitingExternalSolanaTransferScreen.js +1 -1
  36. package/dist/cjs/screens/Funding/AwaitingExternalTransferScreen.js +1 -1
  37. package/dist/cjs/screens/Funding/AwaitingSolToEvmBridgingScreen.js +1 -1
  38. package/dist/cjs/screens/Funding/BridgeNetworkSelectionView.js +1 -1
  39. package/dist/cjs/screens/Funding/CoinbaseOnrampStatusScreen.js +1 -1
  40. package/dist/cjs/screens/Funding/FundingEditAmountScreen.js +1 -1
  41. package/dist/cjs/screens/Funding/FundingMethodSelectionScreen.js +1 -1
  42. package/dist/cjs/screens/Funding/ManualTransferScreen.js +1 -1
  43. package/dist/cjs/screens/Funding/MoonpayStatusScreen.js +1 -1
  44. package/dist/cjs/screens/Funding/TransferFromWalletScreen.js +1 -1
  45. package/dist/cjs/screens/Funding/TransferOrBridgeLoadingScreen.js +1 -1
  46. package/dist/cjs/screens/Funding/styles.js +1 -1
  47. package/dist/cjs/screens/InAppBrowserLoginNotPossible.js +1 -1
  48. package/dist/cjs/screens/InstallPhantomScreen.js +1 -1
  49. package/dist/cjs/screens/LandingScreen/CustomLandingScreenView.js +1 -1
  50. package/dist/cjs/screens/LandingScreen/LandingScreenView.js +1 -1
  51. package/dist/cjs/screens/LinkPasskeyScreen.js +1 -1
  52. package/dist/cjs/screens/LinkWalletScreen.js +1 -1
  53. package/dist/cjs/screens/LoginFailedScreen.js +1 -1
  54. package/dist/cjs/screens/MfaScreens/EnrollLandingScreen.js +1 -1
  55. package/dist/cjs/screens/MfaScreens/EnrollPasskey.js +1 -1
  56. package/dist/cjs/screens/MfaScreens/EnrollTotp.js +1 -1
  57. package/dist/cjs/screens/MfaScreens/MfaEnrollmentFlowScreen.js +1 -1
  58. package/dist/cjs/screens/MfaScreens/MfaVerifyFlowScreen.js +1 -1
  59. package/dist/cjs/screens/MfaScreens/VerifyWithPasskey.js +1 -1
  60. package/dist/cjs/screens/OAuthStatusScreen.js +1 -1
  61. package/dist/cjs/screens/PasskeySelectSignupOrLogin.js +1 -1
  62. package/dist/cjs/screens/PasskeyStatusScreen.js +1 -1
  63. package/dist/cjs/screens/PhantomInterstitialScreen.js +1 -1
  64. package/dist/cjs/screens/Recovery/PasswordRecoveryScreen.js +1 -1
  65. package/dist/cjs/screens/Recovery/RecoveryOAuthStatusScreen.js +1 -1
  66. package/dist/cjs/screens/Recovery/RecoverySelectionScreen.js +1 -1
  67. package/dist/cjs/screens/Recovery/SetAutomaticRecoveryScreen.js +1 -1
  68. package/dist/cjs/screens/SendSolanaTransactionScreen/SolanaTransactionReceiptView.js +1 -1
  69. package/dist/cjs/screens/SendTransactionScreen/SendTransactionScreenView.js +1 -1
  70. package/dist/cjs/screens/SendTransactionScreen/TransactionErrorView.js +1 -1
  71. package/dist/cjs/screens/SendTransactionScreen/TransactionReceiptView.js +1 -1
  72. package/dist/cjs/screens/SignRequestScreen.js +1 -1
  73. package/dist/cjs/screens/TelegramAuthScreen.js +1 -1
  74. package/dist/cjs/screens/UpdateEmailScreen.js +1 -1
  75. package/dist/cjs/screens/UserLimitReachedScreen.js +1 -1
  76. package/dist/cjs/session.js +1 -1
  77. package/dist/esm/client.mjs +1 -1
  78. package/dist/esm/components/ModalFooter.mjs +2 -2
  79. package/dist/esm/components/embedded-wallets/SetWalletPasswordForm/ConfimWalletPasswordForm.mjs +1 -1
  80. package/dist/esm/components/embedded-wallets/SetWalletPasswordForm/ConfimWalletPasswordSaved.mjs +1 -1
  81. package/dist/esm/components/embedded-wallets/SetWalletPasswordForm/CreateWalletPassword.mjs +1 -1
  82. package/dist/esm/components/embedded-wallets/SetWalletPasswordForm/SaveWalletPassword.mjs +1 -1
  83. package/dist/esm/components/embedded-wallets/SetWalletPasswordForm/SetWalletPasswordComplete.mjs +1 -1
  84. package/dist/esm/config.mjs +1 -1
  85. package/dist/esm/connectors/embeddedProvider.mjs +1 -1
  86. package/dist/esm/connectors/index.mjs +1 -1
  87. package/dist/esm/constants.mjs +1 -1
  88. package/dist/esm/embedded-wallets/solana/provider.mjs +1 -1
  89. package/dist/esm/hooks/privy-provider.mjs +1 -1
  90. package/dist/esm/index.mjs +1 -1
  91. package/dist/esm/privy-components/user-pill/UserMenu.mjs +1 -1
  92. package/dist/esm/privy-provider-BUvuLRa8.mjs +3 -0
  93. package/dist/esm/screens/AccountTransferScreen/EmbeddedWalletInfoView.mjs +1 -1
  94. package/dist/esm/screens/AccountTransferScreen/LinkConflictScreen.mjs +1 -1
  95. package/dist/esm/screens/AffirmativeConsentScreen.mjs +1 -1
  96. package/dist/esm/screens/AwaitingPasswordlessCodeScreen.mjs +1 -1
  97. package/dist/esm/screens/CaptchaScreen.mjs +1 -1
  98. package/dist/esm/screens/ConnectOnlyAuthenticatedScreen.mjs +1 -1
  99. package/dist/esm/screens/ConnectOnlyLandingScreen.mjs +1 -1
  100. package/dist/esm/screens/ConnectOnlyStatusScreen.mjs +1 -1
  101. package/dist/esm/screens/ConnectionStatusScreen.mjs +1 -1
  102. package/dist/esm/screens/CrossAppAuthScreen.mjs +1 -1
  103. package/dist/esm/screens/DelegatedActionsConsentScreen.mjs +1 -1
  104. package/dist/esm/screens/DelegatedActionsRevokeScreen.mjs +1 -1
  105. package/dist/esm/screens/EmbeddedWalletCreatedScreen.mjs +1 -1
  106. package/dist/esm/screens/EmbeddedWalletKeyExportScreen.mjs +1 -1
  107. package/dist/esm/screens/EmbeddedWalletPasswordUpdateSplashScreen.mjs +1 -1
  108. package/dist/esm/screens/FarcasterConnectStatusScreen.mjs +1 -1
  109. package/dist/esm/screens/FarcasterSignerStatusScreen.mjs +1 -1
  110. package/dist/esm/screens/Funding/AwaitingEvmToSolBridgingScreen.mjs +1 -1
  111. package/dist/esm/screens/Funding/AwaitingExternalSolanaTransferScreen.mjs +1 -1
  112. package/dist/esm/screens/Funding/AwaitingExternalTransferScreen.mjs +1 -1
  113. package/dist/esm/screens/Funding/AwaitingSolToEvmBridgingScreen.mjs +1 -1
  114. package/dist/esm/screens/Funding/BridgeNetworkSelectionView.mjs +1 -1
  115. package/dist/esm/screens/Funding/CoinbaseOnrampStatusScreen.mjs +1 -1
  116. package/dist/esm/screens/Funding/FundingEditAmountScreen.mjs +1 -1
  117. package/dist/esm/screens/Funding/FundingMethodSelectionScreen.mjs +1 -1
  118. package/dist/esm/screens/Funding/ManualTransferScreen.mjs +1 -1
  119. package/dist/esm/screens/Funding/MoonpayStatusScreen.mjs +1 -1
  120. package/dist/esm/screens/Funding/TransferFromWalletScreen.mjs +1 -1
  121. package/dist/esm/screens/Funding/TransferOrBridgeLoadingScreen.mjs +1 -1
  122. package/dist/esm/screens/Funding/styles.mjs +1 -1
  123. package/dist/esm/screens/InAppBrowserLoginNotPossible.mjs +1 -1
  124. package/dist/esm/screens/InstallPhantomScreen.mjs +1 -1
  125. package/dist/esm/screens/LandingScreen/CustomLandingScreenView.mjs +1 -1
  126. package/dist/esm/screens/LandingScreen/LandingScreenView.mjs +1 -1
  127. package/dist/esm/screens/LinkPasskeyScreen.mjs +1 -1
  128. package/dist/esm/screens/LinkWalletScreen.mjs +1 -1
  129. package/dist/esm/screens/LoginFailedScreen.mjs +1 -1
  130. package/dist/esm/screens/MfaScreens/EnrollLandingScreen.mjs +1 -1
  131. package/dist/esm/screens/MfaScreens/EnrollPasskey.mjs +1 -1
  132. package/dist/esm/screens/MfaScreens/EnrollTotp.mjs +1 -1
  133. package/dist/esm/screens/MfaScreens/MfaEnrollmentFlowScreen.mjs +1 -1
  134. package/dist/esm/screens/MfaScreens/MfaVerifyFlowScreen.mjs +1 -1
  135. package/dist/esm/screens/MfaScreens/VerifyWithPasskey.mjs +1 -1
  136. package/dist/esm/screens/OAuthStatusScreen.mjs +1 -1
  137. package/dist/esm/screens/PasskeySelectSignupOrLogin.mjs +1 -1
  138. package/dist/esm/screens/PasskeyStatusScreen.mjs +1 -1
  139. package/dist/esm/screens/PhantomInterstitialScreen.mjs +1 -1
  140. package/dist/esm/screens/Recovery/PasswordRecoveryScreen.mjs +1 -1
  141. package/dist/esm/screens/Recovery/RecoveryOAuthStatusScreen.mjs +1 -1
  142. package/dist/esm/screens/Recovery/RecoverySelectionScreen.mjs +1 -1
  143. package/dist/esm/screens/Recovery/SetAutomaticRecoveryScreen.mjs +1 -1
  144. package/dist/esm/screens/SendSolanaTransactionScreen/SolanaTransactionReceiptView.mjs +1 -1
  145. package/dist/esm/screens/SendTransactionScreen/SendTransactionScreenView.mjs +1 -1
  146. package/dist/esm/screens/SendTransactionScreen/TransactionErrorView.mjs +1 -1
  147. package/dist/esm/screens/SendTransactionScreen/TransactionReceiptView.mjs +1 -1
  148. package/dist/esm/screens/SignRequestScreen.mjs +1 -1
  149. package/dist/esm/screens/TelegramAuthScreen.mjs +1 -1
  150. package/dist/esm/screens/UpdateEmailScreen.mjs +1 -1
  151. package/dist/esm/screens/UserLimitReachedScreen.mjs +1 -1
  152. package/dist/esm/session.mjs +1 -1
  153. package/package.json +3 -3
  154. package/dist/cjs/privy-provider-CpJ88X4F.js +0 -3
  155. package/dist/esm/privy-provider-B3m8Pe2u.mjs +0 -3
@@ -1,2 +1,2 @@
1
- import{jsxs as e,jsx as o,Fragment as r}from"react/jsx-runtime";import t from"@heroicons/react/20/solid/CheckIcon";import i from"@heroicons/react/24/outline/EnvelopeIcon";import n from"@heroicons/react/24/outline/PhoneIcon";import{useState as c,useEffect as a}from"react";import{isMobile as s}from"react-device-detect";import{styled as l}from"styled-components";import{shouldProceedtoEmbeddedWalletCreationFlow as m}from"../client/user.mjs";import{HorizontallyCenteredItem as p}from"../components/Layouts.mjs";import{BlobbyFooter as d}from"../components/ModalFooter.mjs";import{ModalHeader as u}from"../components/ModalHeader.mjs";import{CenteredScreenHeader as h}from"../components/ScreenHeader.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as f}from"../constants.mjs";import{PrivyApiError as v,PrivyErrorCode as y,PrivyUserLimitReachedError as g}from"../errors.mjs";import{usePrivyInternal as E}from"../hooks/internal-context.mjs";import{usePrivyModal as x}from"../hooks/modal-context.mjs";import{usePrivyContext as C}from"../hooks/privy-context.mjs";import{ModalScreen as j}from"./index.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";let N=Array(6).fill("");var _,b,T=((_=T||{})[_.RESET_AFTER_DELAY=0]="RESET_AFTER_DELAY",_[_.CLEAR_ON_NEXT_VALID_INPUT=1]="CLEAR_ON_NEXT_VALID_INPUT",_),S=((b=S||{})[b.EMAIL=0]="EMAIL",b[b.SMS=1]="SMS",b);const A=()=>{let{app:l,navigate:_,lastScreen:b,navigateBack:T,setModalData:S,onUserCloseViaDialogOrKeybindRef:A}=x(),{closePrivyModal:M,resendEmailCode:U,resendSmsCode:W,getAuthMeta:F,loginWithCode:P,updateWallets:$,createAnalyticsEvent:H}=E(),{authenticated:z,logout:B,user:q}=C(),[K,V]=c(N),[X,Y]=c(!1),[Q,G]=c(null),[J,Z]=c(null),[ee,oe]=c(0);A.current=()=>null;let re=F()?.email?0:1,te=f-500;a((()=>{if(ee){let e=setTimeout((()=>{oe(ee-1)}),1e3);return()=>clearTimeout(e)}}),[ee]),a((()=>{if(z&&X&&q){if(l?.legal.requireUsersAcceptTerms&&!q.hasAcceptedTerms){let e=setTimeout((()=>{_(j.AFFIRMATIVE_CONSENT_SCREEN)}),te);return()=>clearTimeout(e)}if(m(q,l?.embeddedWallets?.createOnLogin)){let e=setTimeout((()=>{S({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),H({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,screen:"AwaitingPasswordlessCodeScreen"}}),B()},callAuthOnSuccessOnClose:!0}}),_(j.EMBEDDED_WALLET_ON_ACCOUNT_CREATE_SCREEN)}),te);return()=>clearTimeout(e)}{$();let e=setTimeout((()=>M({shouldCallAuthOnSuccess:!0,isSuccess:!0})),f);return()=>clearTimeout(e)}}}),[z,X,q]),a((()=>{if(Q&&0===J){let e=setTimeout((()=>{V(N),G(null);let e=document.querySelector("input[name=code-0]");e?.focus()}),1400);return()=>clearTimeout(e)}}),[Q]);let ie=e=>{e.preventDefault();let o=e.currentTarget.value.replace(" ","");if(""===o)return;if(isNaN(Number(o)))return G("Code should be numeric"),void Z(1);G(null),Z(null);let r=Number(e.currentTarget.name?.charAt(5)),t=[...o||[""]].slice(0,6-r),i=[...K.slice(0,r),...t,...K.slice(r+t.length)];V(i);let n=Math.min(Math.max(r+t.length,0),5);if(!isNaN(Number(e.currentTarget.value))){let e=document.querySelector(`input[name=code-${n}]`);e?.focus()}if(i.every((e=>e&&!isNaN(+e)))){let e=document.querySelector(`input[name=code-${n}]`);e?.blur(),P(i.join("")).then((()=>Y(!0))).catch((e=>{if(e instanceof v&&e.privyErrorCode===y.INVALID_CREDENTIALS)G("Invalid or expired verification code");else if(e instanceof v&&e.privyErrorCode===y.CANNOT_LINK_MORE_OF_TYPE)G(e.message);else{if(e instanceof v&&e.privyErrorCode===y.USER_LIMIT_REACHED)return console.error(new g(e).toString()),void _(j.USER_LIMIT_REACHED_SCREEN);if(e instanceof v&&e.privyErrorCode===y.USER_DOES_NOT_EXIST)return void _(j.ACCOUNT_NOT_FOUND_SCREEN);if(e instanceof v&&e.privyErrorCode===y.LINKED_TO_ANOTHER_USER)return S({errorModalData:{error:e,previousScreen:b??j.AWAITING_PASSWORDLESS_CODE}}),void _(j.ERROR_SCREEN,!1);if(e instanceof v&&e.privyErrorCode===y.DISALLOWED_PLUS_EMAIL)return S({inlineError:{error:e}}),void _(j.CONNECT_OR_CREATE,!1);if(e instanceof v&&e.privyErrorCode===y.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return S({accountTransfer:{nonce:e.data?.data?.nonce,account:0===re?F()?.email:F()?.phoneNumber,displayName:e.data?.data?.account?.displayName,linkMethod:0===re?"email":"sms",embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress}}),void _(j.LINK_CONFLICT_SCREEN);G("Issue verifying code")}Z(0)}))}},ne=0==re?/*#__PURE__*/o(i,{color:"var(--privy-color-accent)",strokeWidth:2,height:"48px",width:"48px"}):
1
+ import{jsxs as e,jsx as o,Fragment as r}from"react/jsx-runtime";import t from"@heroicons/react/20/solid/CheckIcon";import i from"@heroicons/react/24/outline/EnvelopeIcon";import n from"@heroicons/react/24/outline/PhoneIcon";import{useState as c,useEffect as a}from"react";import{isMobile as s}from"react-device-detect";import{styled as l}from"styled-components";import{shouldProceedtoEmbeddedWalletCreationFlow as m}from"../client/user.mjs";import{HorizontallyCenteredItem as p}from"../components/Layouts.mjs";import{BlobbyFooter as d}from"../components/ModalFooter.mjs";import{ModalHeader as u}from"../components/ModalHeader.mjs";import{CenteredScreenHeader as h}from"../components/ScreenHeader.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as f}from"../constants.mjs";import{PrivyApiError as v,PrivyErrorCode as y,PrivyUserLimitReachedError as g}from"../errors.mjs";import{usePrivyInternal as E}from"../hooks/internal-context.mjs";import{usePrivyModal as x}from"../hooks/modal-context.mjs";import{usePrivyContext as C}from"../hooks/privy-context.mjs";import{ModalScreen as j}from"./index.mjs";import"viem/utils";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"../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"../hooks/index.mjs";import"ofetch";import"../components/PrefetchedImage.mjs";let N=Array(6).fill("");var _,b,T=((_=T||{})[_.RESET_AFTER_DELAY=0]="RESET_AFTER_DELAY",_[_.CLEAR_ON_NEXT_VALID_INPUT=1]="CLEAR_ON_NEXT_VALID_INPUT",_),S=((b=S||{})[b.EMAIL=0]="EMAIL",b[b.SMS=1]="SMS",b);const A=()=>{let{app:l,navigate:_,lastScreen:b,navigateBack:T,setModalData:S,onUserCloseViaDialogOrKeybindRef:A}=x(),{closePrivyModal:M,resendEmailCode:U,resendSmsCode:W,getAuthMeta:F,loginWithCode:P,updateWallets:$,createAnalyticsEvent:H}=E(),{authenticated:z,logout:B,user:q}=C(),[K,V]=c(N),[X,Y]=c(!1),[Q,G]=c(null),[J,Z]=c(null),[ee,oe]=c(0);A.current=()=>null;let re=F()?.email?0:1,te=f-500;a((()=>{if(ee){let e=setTimeout((()=>{oe(ee-1)}),1e3);return()=>clearTimeout(e)}}),[ee]),a((()=>{if(z&&X&&q){if(l?.legal.requireUsersAcceptTerms&&!q.hasAcceptedTerms){let e=setTimeout((()=>{_(j.AFFIRMATIVE_CONSENT_SCREEN)}),te);return()=>clearTimeout(e)}if(m(q,l?.embeddedWallets?.createOnLogin)){let e=setTimeout((()=>{S({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),H({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,screen:"AwaitingPasswordlessCodeScreen"}}),B()},callAuthOnSuccessOnClose:!0}}),_(j.EMBEDDED_WALLET_ON_ACCOUNT_CREATE_SCREEN)}),te);return()=>clearTimeout(e)}{$();let e=setTimeout((()=>M({shouldCallAuthOnSuccess:!0,isSuccess:!0})),f);return()=>clearTimeout(e)}}}),[z,X,q]),a((()=>{if(Q&&0===J){let e=setTimeout((()=>{V(N),G(null);let e=document.querySelector("input[name=code-0]");e?.focus()}),1400);return()=>clearTimeout(e)}}),[Q]);let ie=e=>{e.preventDefault();let o=e.currentTarget.value.replace(" ","");if(""===o)return;if(isNaN(Number(o)))return G("Code should be numeric"),void Z(1);G(null),Z(null);let r=Number(e.currentTarget.name?.charAt(5)),t=[...o||[""]].slice(0,6-r),i=[...K.slice(0,r),...t,...K.slice(r+t.length)];V(i);let n=Math.min(Math.max(r+t.length,0),5);if(!isNaN(Number(e.currentTarget.value))){let e=document.querySelector(`input[name=code-${n}]`);e?.focus()}if(i.every((e=>e&&!isNaN(+e)))){let e=document.querySelector(`input[name=code-${n}]`);e?.blur(),P(i.join("")).then((()=>Y(!0))).catch((e=>{if(e instanceof v&&e.privyErrorCode===y.INVALID_CREDENTIALS)G("Invalid or expired verification code");else if(e instanceof v&&e.privyErrorCode===y.CANNOT_LINK_MORE_OF_TYPE)G(e.message);else{if(e instanceof v&&e.privyErrorCode===y.USER_LIMIT_REACHED)return console.error(new g(e).toString()),void _(j.USER_LIMIT_REACHED_SCREEN);if(e instanceof v&&e.privyErrorCode===y.USER_DOES_NOT_EXIST)return void _(j.ACCOUNT_NOT_FOUND_SCREEN);if(e instanceof v&&e.privyErrorCode===y.LINKED_TO_ANOTHER_USER)return S({errorModalData:{error:e,previousScreen:b??j.AWAITING_PASSWORDLESS_CODE}}),void _(j.ERROR_SCREEN,!1);if(e instanceof v&&e.privyErrorCode===y.DISALLOWED_PLUS_EMAIL)return S({inlineError:{error:e}}),void _(j.CONNECT_OR_CREATE,!1);if(e instanceof v&&e.privyErrorCode===y.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return S({accountTransfer:{nonce:e.data?.data?.nonce,account:0===re?F()?.email:F()?.phoneNumber,displayName:e.data?.data?.account?.displayName,linkMethod:0===re?"email":"sms",embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress}}),void _(j.LINK_CONFLICT_SCREEN);G("Issue verifying code")}Z(0)}))}},ne=0==re?/*#__PURE__*/o(i,{color:"var(--privy-color-accent)",strokeWidth:2,height:"48px",width:"48px"}):
2
2
  /*#__PURE__*/o(n,{color:"var(--privy-color-accent)",strokeWidth:2,height:"40px",width:"40px"}),ce=/*#__PURE__*/e("p",0==re?{children:["Please check ",/*#__PURE__*/o(D,{children:F()?.email})," for an email from privy.io and enter your code below."]}:{children:["Please check ",/*#__PURE__*/o(D,{children:F()?.phoneNumber})," for a message from ",l?.name||"Privy"," and enter your code below."]});/*#__PURE__*/return e(r,{children:[/*#__PURE__*/o(u,{backFn:()=>T()},"header"),/*#__PURE__*/e(I,{children:[/*#__PURE__*/o(h,{title:"Enter confirmation code",description:ce,icon:ne}),/*#__PURE__*/e(p,{children:[/*#__PURE__*/e(R,{children:[/*#__PURE__*/o(k,{$fail:!!Q,$success:X,children:/*#__PURE__*/o("span",{children:Q||(X?"Success!":"")})}),/*#__PURE__*/o("div",{children:K.map(((e,r)=>/*#__PURE__*/o("input",{name:`code-${r}`,type:"text",value:K[r],onChange:ie,onKeyUp:e=>{"Backspace"===e.key&&(e=>{if(1===J&&(G(null),Z(null)),V([...K.slice(0,e),"",...K.slice(e+1)]),e>0){let o=document.querySelector(`input[name=code-${e-1}]`);o?.focus()}})(r)},inputMode:"numeric",autoFocus:0===r,pattern:"[0-9]",className:`${X?"success":""} ${Q?"fail":""}`,autoComplete:s?"one-time-code":"off"},r)))})]}),/*#__PURE__*/e(w,{children:[/*#__PURE__*/e("span",{children:["Didn't get ",0==re?"an email":"a message","?"]}),ee?/*#__PURE__*/e(L,{children:[/*#__PURE__*/o(t,{color:"var(--privy-color-foreground)",strokeWidth:1.33,height:"12px",width:"12px"}),/*#__PURE__*/o("span",{children:"Code sent"})]}):/*#__PURE__*/o(O,{children:/*#__PURE__*/o("button",{onClick:async()=>{oe(30),0==re?await U():await W()},children:"Resend code"})})]})]})]}),/*#__PURE__*/o(d,{})]})};let I=/*#__PURE__*/l.div.withConfig({displayName:"PasswordlessCodeContainer",componentId:"sc-463c12b2-0"})(["display:flex;flex-direction:column;align-items:flex-start;justify-content:center;margin:auto;gap:16px;flex-grow:1;"]),R=/*#__PURE__*/l.div.withConfig({displayName:"CodeInput",componentId:"sc-463c12b2-1"})(["display:flex;flex-direction:column;width:100%;gap:8px;> div:last-child{display:flex;justify-content:center;gap:0.5rem;width:100%;border-radius:var(--privy-border-radius-md);> input{border:1px solid var(--privy-color-foreground-4);background:var(--privy-color-background);border-radius:var(--privy-border-radius-md);padding:8px 10px;height:58px;width:46px;text-align:center;font-size:18px;}> input:focus{border:1px solid var(--privy-color-accent);}> input:invalid{border:1px solid var(--privy-color-error);}> input.success{border:1px solid var(--privy-color-success);}> input.fail{border:1px solid var(--privy-color-error);animation:shake 180ms;animation-iteration-count:2;}}@keyframes shake{0%{transform:translate(1px,0px);}33%{transform:translate(-1px,0px);}67%{transform:translate(-1px,0px);}100%{transform:translate(1px,0px);}}"]),k=/*#__PURE__*/l.div.withConfig({displayName:"InputHelp",componentId:"sc-463c12b2-2"})(["line-height:20px;height:20px;font-size:13px;color:",";display:flex;justify-content:flex-end;width:100%;"],(e=>e.$success?"var(--privy-color-success)":e.$fail?"var(--privy-color-error)":"var(--privy-color-foreground-3)")),w=/*#__PURE__*/l.div.withConfig({displayName:"HelpText",componentId:"sc-463c12b2-3"})(["font-size:13px;color:var(--privy-color-foreground);display:flex;gap:8px;align-items:center;width:100%;margin-top:16px;padding-bottom:32px;"]),O=/*#__PURE__*/l.div.withConfig({displayName:"ResendButtonContainer",componentId:"sc-463c12b2-4"})(["color:var(--privy-color-accent);padding:2px 0;> button{text-decoration:underline;}"]),L=/*#__PURE__*/l.div.withConfig({displayName:"Badge",componentId:"sc-463c12b2-5"})(["display:flex;align-items:center;justify-content:center;border-radius:var(--privy-border-radius-sm);padding:2px 8px;gap:4px;background:var(--privy-color-background-2);color:var(--privy-color-foreground-2);"]),D=/*#__PURE__*/l.span.withConfig({displayName:"BoldWrappingSpan",componentId:"sc-463c12b2-6"})(["font-weight:500;word-break:break-all;"]);export{A as AwaitingPasswordlessCodeScreen};
@@ -1 +1 @@
1
- import{jsx as o,jsxs as t,Fragment as e}from"react/jsx-runtime";import{ModalScreen as n}from"./index.mjs";import r from"@heroicons/react/24/solid/CheckCircleIcon";import i from"@heroicons/react/24/solid/XCircleIcon";import{useRef as s,useState as c,useEffect as a}from"react";import{styled as m}from"styled-components";import{PrimaryButton as p}from"../components/Button.mjs";import{FixedGappedContainer as l}from"../components/Layouts.mjs";import{ModalFooter as h}from"../components/ModalFooter.mjs";import{ModalHeader as u}from"../components/ModalHeader.mjs";import{WrappedLoader as d}from"../components/WrappedLoader.mjs";import{useCaptcha as j,CaptchaError as f}from"../hooks/captcha-context.mjs";import{usePrivyModal as g}from"../hooks/modal-context.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"../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"../errors.mjs";import"ofetch";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"../components/PrefetchedImage.mjs";const y=()=>{let{lastScreen:m,currentScreen:y,data:k,navigateBack:b,navigate:x,setModalData:v}=g(),{status:w,token:I,waitForResult:S,reset:R,execute:T}=j(),A=s([]),N=o=>{A.current=[o,...A.current]},[M,P]=c(!0);a((()=>(N(setTimeout(P,1e3,!1)),()=>{A.current.forEach((o=>clearTimeout(o))),A.current=[]})),[]);let[E,L]=c(""),[q,D]=c("Checking that you are a human..."),[F,H]=c(/*#__PURE__*/o(p,{onClick:()=>{},disabled:!0,children:"Continue"})),[z,B]=c(!1),[X,G]=c(3),O=k?.captchaModalData,Q=async o=>{try{await(O?.callback(o)),O?.onSuccessNavigateTo&&x(O?.onSuccessNavigateTo,!1)}catch(o){if(o instanceof f)return;v({errorModalData:{error:o,previousScreen:m||n.LANDING}}),x(O?.onErrorNavigateTo||n.ERROR_SCREEN,!1)}};a((()=>{"success"===w?N(setTimeout((async()=>{let o=await S();!o||O?.userIntentRequired||Q(o)}),1e3)):"ready"===w&&N(setTimeout((()=>{"ready"===w&&T()}),500))}),[w]),a((()=>{if(!M)switch(w){case"success":L("Success!"),D("CAPTCHA passed successfully."),H(/*#__PURE__*/o(p,{onClick:()=>{B(!0),Q(I)},disabled:!O?.userIntentRequired,loading:z,children:O?.userIntentRequired?"Continue":"Continuing..."}));break;case"loading":L(""),D("Checking that you are a human..."),H(/*#__PURE__*/o(p,{onClick:()=>{},disabled:!0,children:"Continue"}));break;case"error":L("Something went wrong"),X<=0?(D("If you use an adblocker or VPN, try disabling and re-attempting."),H(null)):(D("You did not pass CAPTCHA. Please try again."),H(/*#__PURE__*/o(p,{onClick:V,children:"Retry"})))}}),[w,M,z]);let V=async()=>{if(X<=0)return;G((o=>o-1)),R(),T();let o=await S();!o||O?.userIntentRequired||Q(o)};/*#__PURE__*/return t(e,{children:[/*#__PURE__*/o(u,{backFn:m&&y!==m?b:void 0}),/*#__PURE__*/t(C,{children:["success"===w?/*#__PURE__*/o(r,{fill:"var(--privy-color-success)",width:"64px",height:"64px"}):"error"===w?/*#__PURE__*/o(i,{fill:"var(--privy-color-error)",width:"64px",height:"64px"}):/*#__PURE__*/o(d,{}),/*#__PURE__*/t(l,{children:[E?/*#__PURE__*/o("h3",{children:E}):null,/*#__PURE__*/o("p",{children:q})]}),F]}),/*#__PURE__*/o(h,{})]})};let C=/*#__PURE__*/m.div.withConfig({displayName:"CaptchaContainer",componentId:"sc-9afcf974-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;width:100%;"]);export{y as CaptchaScreen};
1
+ import{jsx as o,jsxs as t,Fragment as e}from"react/jsx-runtime";import{ModalScreen as n}from"./index.mjs";import r from"@heroicons/react/24/solid/CheckCircleIcon";import i from"@heroicons/react/24/solid/XCircleIcon";import{useRef as s,useState as c,useEffect as a}from"react";import{styled as m}from"styled-components";import{PrimaryButton as p}from"../components/Button.mjs";import{FixedGappedContainer as l}from"../components/Layouts.mjs";import{ModalFooter as h}from"../components/ModalFooter.mjs";import{ModalHeader as u}from"../components/ModalHeader.mjs";import{WrappedLoader as d}from"../components/WrappedLoader.mjs";import{useCaptcha as j,CaptchaError as f}from"../hooks/captcha-context.mjs";import{usePrivyModal as g}from"../hooks/modal-context.mjs";import"../components/Loader.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"../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"../hooks/internal-context.mjs";import"../hooks/index.mjs";import"../errors.mjs";import"ofetch";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"../components/PrefetchedImage.mjs";const y=()=>{let{lastScreen:m,currentScreen:y,data:k,navigateBack:b,navigate:x,setModalData:v}=g(),{status:w,token:I,waitForResult:S,reset:R,execute:T}=j(),A=s([]),N=o=>{A.current=[o,...A.current]},[M,P]=c(!0);a((()=>(N(setTimeout(P,1e3,!1)),()=>{A.current.forEach((o=>clearTimeout(o))),A.current=[]})),[]);let[E,L]=c(""),[q,D]=c("Checking that you are a human..."),[F,H]=c(/*#__PURE__*/o(p,{onClick:()=>{},disabled:!0,children:"Continue"})),[z,B]=c(!1),[X,G]=c(3),O=k?.captchaModalData,Q=async o=>{try{await(O?.callback(o)),O?.onSuccessNavigateTo&&x(O?.onSuccessNavigateTo,!1)}catch(o){if(o instanceof f)return;v({errorModalData:{error:o,previousScreen:m||n.LANDING}}),x(O?.onErrorNavigateTo||n.ERROR_SCREEN,!1)}};a((()=>{"success"===w?N(setTimeout((async()=>{let o=await S();!o||O?.userIntentRequired||Q(o)}),1e3)):"ready"===w&&N(setTimeout((()=>{"ready"===w&&T()}),500))}),[w]),a((()=>{if(!M)switch(w){case"success":L("Success!"),D("CAPTCHA passed successfully."),H(/*#__PURE__*/o(p,{onClick:()=>{B(!0),Q(I)},disabled:!O?.userIntentRequired,loading:z,children:O?.userIntentRequired?"Continue":"Continuing..."}));break;case"loading":L(""),D("Checking that you are a human..."),H(/*#__PURE__*/o(p,{onClick:()=>{},disabled:!0,children:"Continue"}));break;case"error":L("Something went wrong"),X<=0?(D("If you use an adblocker or VPN, try disabling and re-attempting."),H(null)):(D("You did not pass CAPTCHA. Please try again."),H(/*#__PURE__*/o(p,{onClick:V,children:"Retry"})))}}),[w,M,z]);let V=async()=>{if(X<=0)return;G((o=>o-1)),R(),T();let o=await S();!o||O?.userIntentRequired||Q(o)};/*#__PURE__*/return t(e,{children:[/*#__PURE__*/o(u,{backFn:m&&y!==m?b:void 0}),/*#__PURE__*/t(C,{children:["success"===w?/*#__PURE__*/o(r,{fill:"var(--privy-color-success)",width:"64px",height:"64px"}):"error"===w?/*#__PURE__*/o(i,{fill:"var(--privy-color-error)",width:"64px",height:"64px"}):/*#__PURE__*/o(d,{}),/*#__PURE__*/t(l,{children:[E?/*#__PURE__*/o("h3",{children:E}):null,/*#__PURE__*/o("p",{children:q})]}),F]}),/*#__PURE__*/o(h,{})]})};let C=/*#__PURE__*/m.div.withConfig({displayName:"CaptchaContainer",componentId:"sc-9afcf974-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;width:100%;"]);export{y as CaptchaScreen};
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as t,jsx as n}from"react/jsx-runtime";import{BlobbyFooter as e}from"../components/ModalFooter.mjs";import{ModalHeader as i}from"../components/ModalHeader.mjs";import{PaddedScreenHeader as s}from"../components/ScreenHeader.mjs";import{usePrivyInternal as r}from"../hooks/internal-context.mjs";import{usePrivyModal as m}from"../hooks/modal-context.mjs";import{formatWalletAddress as c}from"../utils/index.mjs";import{toWalletButtons as a,WalletButtonList as p}from"./LandingScreen/WalletButtonList.mjs";import{LoginMethodContainer as l}from"./LandingScreen/styles.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"../components/PrefetchedImage.mjs";import"./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"./LandingScreen/EmptyWalletView.mjs";import"./LandingScreen/WalletButton.mjs";import"react-device-detect";import"../components/external-wallets/InjectedWalletIcon.mjs";import"@heroicons/react/24/outline/WalletIcon";import"../components/ui/chips/Chip.mjs";import"../components/ui/animation/LoadingSkeleton.mjs";import"../lib/external-wallets/displayHelpers.mjs";import"../svg/brave-browser-icon.mjs";import"../svg/bybit.mjs";import"../svg/coinbase-wallet.mjs";import"../svg/cryptocom.mjs";import"../svg/metamask.mjs";import"../svg/phantom.mjs";import"../svg/rabby.mjs";import"../svg/rainbow.mjs";import"../svg/safe.mjs";import"../svg/uniswap.mjs";import"../svg/universal-profile.mjs";import"../svg/wallet-connect.mjs";import"../svg/zerion.mjs";import"../lib/isEmbeddedWebview.mjs";import"../recent-login/context.mjs";import"../hooks/events-context.mjs";import"../storage.mjs";const j=()=>{let{app:j,data:h}=m(),d=h?.externalConnectWallet?.suggestedAddress,g=d?`Connect the wallet with address ${c(d)} ${j?.name?`to ${j.name}.`:"."}`:`Connect a wallet to ${j?.name}`,{connectors:u}=r(),w=a({walletList:h?.externalConnectWallet?.walletList??j.appearance.walletList,walletChainType:j.appearance.walletChainType,connectors:u,connectOnly:!0,ignore:j.appearance.walletList,walletConnectEnabled:j.externalWallets.walletConnect.enabled});/*#__PURE__*/return o(t,{children:[/*#__PURE__*/n(i,{},"header"),w.length>0&&/*#__PURE__*/n(s,{title:"Connect your wallet",description:g}),/*#__PURE__*/n(l,{children:/*#__PURE__*/n(p,{wallets:w})}),/*#__PURE__*/n(e,{})]})};export{j as ConnectOnlyAuthenticatedScreen};
1
+ import{jsxs as o,Fragment as t,jsx as n}from"react/jsx-runtime";import{BlobbyFooter as e}from"../components/ModalFooter.mjs";import{ModalHeader as i}from"../components/ModalHeader.mjs";import{PaddedScreenHeader as s}from"../components/ScreenHeader.mjs";import{usePrivyInternal as r}from"../hooks/internal-context.mjs";import{usePrivyModal as m}from"../hooks/modal-context.mjs";import{formatWalletAddress as c}from"../utils/index.mjs";import{toWalletButtons as a,WalletButtonList as p}from"./LandingScreen/WalletButtonList.mjs";import{LoginMethodContainer as l}from"./LandingScreen/styles.mjs";import"styled-components";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"../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"../hooks/index.mjs";import"../components/PrefetchedImage.mjs";import"./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"./LandingScreen/EmptyWalletView.mjs";import"./LandingScreen/WalletButton.mjs";import"react-device-detect";import"../components/external-wallets/InjectedWalletIcon.mjs";import"@heroicons/react/24/outline/WalletIcon";import"../components/ui/chips/Chip.mjs";import"../components/ui/animation/LoadingSkeleton.mjs";import"../lib/external-wallets/displayHelpers.mjs";import"../svg/brave-browser-icon.mjs";import"../svg/bybit.mjs";import"../svg/coinbase-wallet.mjs";import"../svg/cryptocom.mjs";import"../svg/metamask.mjs";import"../svg/phantom.mjs";import"../svg/rabby.mjs";import"../svg/rainbow.mjs";import"../svg/safe.mjs";import"../svg/uniswap.mjs";import"../svg/universal-profile.mjs";import"../svg/wallet-connect.mjs";import"../svg/zerion.mjs";import"../lib/isEmbeddedWebview.mjs";import"../recent-login/context.mjs";import"../hooks/events-context.mjs";import"../storage.mjs";const j=()=>{let{app:j,data:h}=m(),d=h?.externalConnectWallet?.suggestedAddress,g=d?`Connect the wallet with address ${c(d)} ${j?.name?`to ${j.name}.`:"."}`:`Connect a wallet to ${j?.name}`,{connectors:u}=r(),w=a({walletList:h?.externalConnectWallet?.walletList??j.appearance.walletList,walletChainType:j.appearance.walletChainType,connectors:u,connectOnly:!0,ignore:j.appearance.walletList,walletConnectEnabled:j.externalWallets.walletConnect.enabled});/*#__PURE__*/return o(t,{children:[/*#__PURE__*/n(i,{},"header"),w.length>0&&/*#__PURE__*/n(s,{title:"Connect your wallet",description:g}),/*#__PURE__*/n(l,{children:/*#__PURE__*/n(p,{wallets:w})}),/*#__PURE__*/n(e,{})]})};export{j as ConnectOnlyAuthenticatedScreen};
@@ -1 +1 @@
1
- import{jsxs as o,jsx as t,Fragment as n}from"react/jsx-runtime";import{TermsAndConditions as e,BlobbyFooter as i}from"../components/ModalFooter.mjs";import{ModalHeader as s}from"../components/ModalHeader.mjs";import{ScreenHeader as r}from"../components/ScreenHeader.mjs";import{Address as m}from"../components/ui/wallet/Address.mjs";import{usePrivyInternal as c}from"../hooks/internal-context.mjs";import{usePrivyModal as a}from"../hooks/modal-context.mjs";import{toWalletButtons as p,WalletButtonList as l}from"./LandingScreen/WalletButtonList.mjs";import{LoginMethodContainer as j}from"./LandingScreen/styles.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"@heroicons/react/24/outline/CheckIcon";import"@heroicons/react/24/outline/Square2StackIcon";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"../components/PrefetchedImage.mjs";import"./index.mjs";import"./LandingScreen/EmptyWalletView.mjs";import"./LandingScreen/WalletButton.mjs";import"react-device-detect";import"../components/external-wallets/InjectedWalletIcon.mjs";import"@heroicons/react/24/outline/WalletIcon";import"../components/ui/chips/Chip.mjs";import"../components/ui/animation/LoadingSkeleton.mjs";import"../lib/external-wallets/displayHelpers.mjs";import"../svg/brave-browser-icon.mjs";import"../svg/bybit.mjs";import"../svg/coinbase-wallet.mjs";import"../svg/cryptocom.mjs";import"../svg/metamask.mjs";import"../svg/phantom.mjs";import"../svg/rabby.mjs";import"../svg/rainbow.mjs";import"../svg/safe.mjs";import"../svg/uniswap.mjs";import"../svg/universal-profile.mjs";import"../svg/wallet-connect.mjs";import"../svg/zerion.mjs";import"../lib/isEmbeddedWebview.mjs";import"../recent-login/context.mjs";import"../hooks/events-context.mjs";import"../storage.mjs";const h=()=>{let{app:h,data:d}=a(),g=d?.externalConnectWallet?.suggestedAddress,u=g?/*#__PURE__*/o("span",{children:["Connect the wallet with address ",/*#__PURE__*/t(m,{showCopyIcon:!1,address:g})," ",h?.name?`to ${h.name}.`:"."]}):`Connect a wallet to your ${h?.name} account`,{connectors:w}=c(),b=p({walletList:d?.externalConnectWallet?.walletList??h.appearance.walletList,walletChainType:h.appearance.walletChainType,connectors:w,connectOnly:!0,ignore:h.appearance.walletList,walletConnectEnabled:h.externalWallets.walletConnect.enabled});/*#__PURE__*/return o(n,{children:[/*#__PURE__*/t(s,{},"header"),b.length>0&&/*#__PURE__*/t(r,{title:"Connect your wallet",description:u}),/*#__PURE__*/t(j,{children:/*#__PURE__*/t(l,{wallets:b})}),h&&/*#__PURE__*/t(e,{app:h,alwaysShowImplicitConsent:!0}),/*#__PURE__*/t(i,{})]})};export{h as ConnectOnlyLandingScreen};
1
+ import{jsxs as o,jsx as t,Fragment as n}from"react/jsx-runtime";import{TermsAndConditions as e,BlobbyFooter as i}from"../components/ModalFooter.mjs";import{ModalHeader as s}from"../components/ModalHeader.mjs";import{ScreenHeader as r}from"../components/ScreenHeader.mjs";import{Address as m}from"../components/ui/wallet/Address.mjs";import{usePrivyInternal as c}from"../hooks/internal-context.mjs";import{usePrivyModal as a}from"../hooks/modal-context.mjs";import{toWalletButtons as p,WalletButtonList as l}from"./LandingScreen/WalletButtonList.mjs";import{LoginMethodContainer as j}from"./LandingScreen/styles.mjs";import"styled-components";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"../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"../hooks/index.mjs";import"@heroicons/react/24/outline/CheckIcon";import"@heroicons/react/24/outline/Square2StackIcon";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"../components/PrefetchedImage.mjs";import"./index.mjs";import"./LandingScreen/EmptyWalletView.mjs";import"./LandingScreen/WalletButton.mjs";import"react-device-detect";import"../components/external-wallets/InjectedWalletIcon.mjs";import"@heroicons/react/24/outline/WalletIcon";import"../components/ui/chips/Chip.mjs";import"../components/ui/animation/LoadingSkeleton.mjs";import"../lib/external-wallets/displayHelpers.mjs";import"../svg/brave-browser-icon.mjs";import"../svg/bybit.mjs";import"../svg/coinbase-wallet.mjs";import"../svg/cryptocom.mjs";import"../svg/metamask.mjs";import"../svg/phantom.mjs";import"../svg/rabby.mjs";import"../svg/rainbow.mjs";import"../svg/safe.mjs";import"../svg/uniswap.mjs";import"../svg/universal-profile.mjs";import"../svg/wallet-connect.mjs";import"../svg/zerion.mjs";import"../lib/isEmbeddedWebview.mjs";import"../recent-login/context.mjs";import"../hooks/events-context.mjs";import"../storage.mjs";const h=()=>{let{app:h,data:d}=a(),g=d?.externalConnectWallet?.suggestedAddress,u=g?/*#__PURE__*/o("span",{children:["Connect the wallet with address ",/*#__PURE__*/t(m,{showCopyIcon:!1,address:g})," ",h?.name?`to ${h.name}.`:"."]}):`Connect a wallet to your ${h?.name} account`,{connectors:w}=c(),b=p({walletList:d?.externalConnectWallet?.walletList??h.appearance.walletList,walletChainType:h.appearance.walletChainType,connectors:w,connectOnly:!0,ignore:h.appearance.walletList,walletConnectEnabled:h.externalWallets.walletConnect.enabled});/*#__PURE__*/return o(n,{children:[/*#__PURE__*/t(s,{},"header"),b.length>0&&/*#__PURE__*/t(r,{title:"Connect your wallet",description:u}),/*#__PURE__*/t(j,{children:/*#__PURE__*/t(l,{wallets:b})}),h&&/*#__PURE__*/t(e,{app:h,alwaysShowImplicitConsent:!0}),/*#__PURE__*/t(i,{})]})};export{h as ConnectOnlyLandingScreen};
@@ -1 +1 @@
1
- import{jsx as o,jsxs as t,Fragment as e}from"react/jsx-runtime";import{useState as n,useEffect as r}from"react";import{isMobile as i}from"react-device-detect";import{styled as s}from"styled-components";import{PrimaryButton as c}from"../components/Button.mjs";import{FixedGappedContainer as m}from"../components/Layouts.mjs";import{ModalFooter as a}from"../components/ModalFooter.mjs";import{ModalHeader as l}from"../components/ModalHeader.mjs";import{ConnectorErrors as p}from"../connectors/errors.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as j}from"../constants.mjs";import{usePrivyInternal as h}from"../hooks/internal-context.mjs";import{usePrivyModal as d}from"../hooks/modal-context.mjs";import{WALLET_UI_MAP as u}from"../lib/external-wallets/displayHelpers.mjs";import{BrowserExtensionWallet as g}from"../svg/browser-extension-wallet-icon.mjs";import{WalletLoading as w,getErrorDetails as f}from"./ConnectionStatusScreen.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"../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"@privy-io/js-sdk-core";import"../errors.mjs";import"ofetch";import"../components/PrefetchedImage.mjs";import"./index.mjs";import"../svg/brave-browser-icon.mjs";import"../svg/bybit.mjs";import"../svg/coinbase-wallet.mjs";import"../svg/cryptocom.mjs";import"../svg/metamask.mjs";import"../svg/phantom.mjs";import"../svg/rabby.mjs";import"../svg/rainbow.mjs";import"../svg/safe.mjs";import"../svg/uniswap.mjs";import"../svg/universal-profile.mjs";import"../svg/wallet-connect.mjs";import"../svg/zerion.mjs";import"../auth-flows/siwe.mjs";import"../effect.mjs";import"../lib/siwe.mjs";import"../auth-flows/siws.mjs";import"../lib/siws.mjs";import"../client/user.mjs";import"viem/utils";import"../connectors/is-wallet-installed.mjs";import"../connectors/get-legacy-injected-providers.mjs";import"../connectors/userAlreadyHasConnectedCoinbaseWallet.mjs";import"viem";import"../connectors/walletconnect-v2.mjs";import"@walletconnect/ethereum-provider";import"../utils/index.mjs";import"../utils/eth/getPublicClient.mjs";import"../connectors/ethereum/index.mjs";import"../storage.mjs";import"../connectors/areWalletArraysEqual.mjs";import"../connectors/isBaseConnectedEthereumWallet.mjs";import"../connectors/base.mjs";import"eventemitter3";import"../connectors/getRpcTimeout.mjs";import"../connectors/privyProxyProvider.mjs";import"../connectors/walletconnect-registry.mjs";import"../hook-utils/useInterval.mjs";import"../hooks/captcha-context.mjs";import"../hooks/privy-context.mjs";import"../lib/useHasTabbedAway.mjs";const y=()=>{let s,{navigateBack:y,navigate:b,lastScreen:k,currentScreen:C,data:x,setModalData:S}=d(),{walletConnectionStatus:T,closePrivyModal:A}=h(),[E,I]=n(void 0),[M,R]=n(0),W="connected"===T?.status,_="switching_to_supported_chain"===T?.status;r((()=>{if(W){let o;if(x?.externalConnectWallet?.onCompleteNavigateTo){let t=x.externalConnectWallet.onCompleteNavigateTo,e=T.connectedWallet?.address;o=setTimeout((()=>{x.funding&&S({...x,funding:{...x.funding,connectedWalletAddress:e}}),b(t({walletChainType:T.connector?.chainType}))}),j)}else o=setTimeout(A,j);return()=>clearTimeout(o)}}),[W]);r((()=>{var o;T?.connectError&&(o=T?.connectError,I(f(o)))}),[T]);let B=T?.connector?.connectorType||"injected",H=T?.connector?.walletClientType||"unknown",L=u[H]?.displayName||T?.connector?.walletBranding.name||"Browser Extension",P=u[H]?.logo||T?.connector?.walletBranding.icon||(t=>/*#__PURE__*/o(g,{...t})),z="Browser Extension"===L?L.toLowerCase():L;s=W?`Successfully connected with ${z}`:E?E.message:_?"Switching networks":`Waiting for ${z}`;let F="Don’t see your wallet? Check your other browser windows.";return W?F="You’re good to go!":M>=2&&E?F="Unable to connect wallet":E?F=E.detail:_?F="Switch your wallet to the requested network.":"metamask"===H&&i?F="Click to continue to open and connect MetaMask.":"metamask"===H?F="For the best experience, connect only one wallet at a time.":"wallet_connect_v2"===B?F="Open your mobile wallet app to continue":"coinbase_wallet"===B&&(F="Open the Coinbase app on your phone to continue."),/*#__PURE__*/t(e,{children:[/*#__PURE__*/o(l,{backFn:C===k?void 0:y}),/*#__PURE__*/t(v,{children:[/*#__PURE__*/o(w,{walletLogo:P,success:W,fail:!!E}),/*#__PURE__*/t(m,{children:[/*#__PURE__*/o("h3",{children:s}),/*#__PURE__*/o("p",{children:F})]}),E==p.ERROR_USER_EXISTS?/*#__PURE__*/o(c,{onClick:y,children:"Use a different wallet"}):!W&&E?.retryable&&M<2?/*#__PURE__*/o(c,{onClick:()=>{R(M+1),I(void 0),T?.connectRetry()},disabled:!W&&(!E?.retryable||M>=2),children:"Retry"}):!W&&E&&M>=2?/*#__PURE__*/o(c,{onClick:y,children:"Use a different wallet"}):null]}),/*#__PURE__*/o(a,{})]})};let v=/*#__PURE__*/s.div.withConfig({displayName:"ConnectContainer",componentId:"sc-1346f57-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;width:100%;"]);export{y as ConnectOnlyStatusScreen};
1
+ import{jsx as o,jsxs as t,Fragment as e}from"react/jsx-runtime";import{useState as n,useEffect as r}from"react";import{isMobile as i}from"react-device-detect";import{styled as s}from"styled-components";import{PrimaryButton as c}from"../components/Button.mjs";import{FixedGappedContainer as m}from"../components/Layouts.mjs";import{ModalFooter as a}from"../components/ModalFooter.mjs";import{ModalHeader as l}from"../components/ModalHeader.mjs";import{ConnectorErrors as p}from"../connectors/errors.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as j}from"../constants.mjs";import{usePrivyInternal as h}from"../hooks/internal-context.mjs";import{usePrivyModal as d}from"../hooks/modal-context.mjs";import{WALLET_UI_MAP as u}from"../lib/external-wallets/displayHelpers.mjs";import{BrowserExtensionWallet as g}from"../svg/browser-extension-wallet-icon.mjs";import{WalletLoading as w,getErrorDetails as f}from"./ConnectionStatusScreen.mjs";import"../components/Loader.mjs";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"../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"../hooks/index.mjs";import"@privy-io/js-sdk-core";import"../errors.mjs";import"ofetch";import"../components/PrefetchedImage.mjs";import"./index.mjs";import"../svg/brave-browser-icon.mjs";import"../svg/bybit.mjs";import"../svg/coinbase-wallet.mjs";import"../svg/cryptocom.mjs";import"../svg/metamask.mjs";import"../svg/phantom.mjs";import"../svg/rabby.mjs";import"../svg/rainbow.mjs";import"../svg/safe.mjs";import"../svg/uniswap.mjs";import"../svg/universal-profile.mjs";import"../svg/wallet-connect.mjs";import"../svg/zerion.mjs";import"../auth-flows/siwe.mjs";import"../effect.mjs";import"../lib/siwe.mjs";import"../auth-flows/siws.mjs";import"../lib/siws.mjs";import"../client/user.mjs";import"viem/utils";import"../connectors/is-wallet-installed.mjs";import"../connectors/get-legacy-injected-providers.mjs";import"../connectors/userAlreadyHasConnectedCoinbaseWallet.mjs";import"viem";import"../connectors/walletconnect-v2.mjs";import"@walletconnect/ethereum-provider";import"../utils/index.mjs";import"../utils/eth/getPublicClient.mjs";import"../connectors/ethereum/index.mjs";import"../storage.mjs";import"../connectors/areWalletArraysEqual.mjs";import"../connectors/isBaseConnectedEthereumWallet.mjs";import"../connectors/base.mjs";import"eventemitter3";import"../connectors/getRpcTimeout.mjs";import"../connectors/privyProxyProvider.mjs";import"../connectors/walletconnect-registry.mjs";import"../hook-utils/useInterval.mjs";import"../hooks/captcha-context.mjs";import"../hooks/privy-context.mjs";import"../lib/useHasTabbedAway.mjs";const y=()=>{let s,{navigateBack:y,navigate:b,lastScreen:k,currentScreen:C,data:x,setModalData:S}=d(),{walletConnectionStatus:T,closePrivyModal:A}=h(),[E,I]=n(void 0),[M,R]=n(0),W="connected"===T?.status,_="switching_to_supported_chain"===T?.status;r((()=>{if(W){let o;if(x?.externalConnectWallet?.onCompleteNavigateTo){let t=x.externalConnectWallet.onCompleteNavigateTo,e=T.connectedWallet?.address;o=setTimeout((()=>{x.funding&&S({...x,funding:{...x.funding,connectedWalletAddress:e}}),b(t({walletChainType:T.connector?.chainType}))}),j)}else o=setTimeout(A,j);return()=>clearTimeout(o)}}),[W]);r((()=>{var o;T?.connectError&&(o=T?.connectError,I(f(o)))}),[T]);let B=T?.connector?.connectorType||"injected",H=T?.connector?.walletClientType||"unknown",L=u[H]?.displayName||T?.connector?.walletBranding.name||"Browser Extension",P=u[H]?.logo||T?.connector?.walletBranding.icon||(t=>/*#__PURE__*/o(g,{...t})),z="Browser Extension"===L?L.toLowerCase():L;s=W?`Successfully connected with ${z}`:E?E.message:_?"Switching networks":`Waiting for ${z}`;let F="Don’t see your wallet? Check your other browser windows.";return W?F="You’re good to go!":M>=2&&E?F="Unable to connect wallet":E?F=E.detail:_?F="Switch your wallet to the requested network.":"metamask"===H&&i?F="Click to continue to open and connect MetaMask.":"metamask"===H?F="For the best experience, connect only one wallet at a time.":"wallet_connect_v2"===B?F="Open your mobile wallet app to continue":"coinbase_wallet"===B&&(F="Open the Coinbase app on your phone to continue."),/*#__PURE__*/t(e,{children:[/*#__PURE__*/o(l,{backFn:C===k?void 0:y}),/*#__PURE__*/t(v,{children:[/*#__PURE__*/o(w,{walletLogo:P,success:W,fail:!!E}),/*#__PURE__*/t(m,{children:[/*#__PURE__*/o("h3",{children:s}),/*#__PURE__*/o("p",{children:F})]}),E==p.ERROR_USER_EXISTS?/*#__PURE__*/o(c,{onClick:y,children:"Use a different wallet"}):!W&&E?.retryable&&M<2?/*#__PURE__*/o(c,{onClick:()=>{R(M+1),I(void 0),T?.connectRetry()},disabled:!W&&(!E?.retryable||M>=2),children:"Retry"}):!W&&E&&M>=2?/*#__PURE__*/o(c,{onClick:y,children:"Use a different wallet"}):null]}),/*#__PURE__*/o(a,{})]})};let v=/*#__PURE__*/s.div.withConfig({displayName:"ConnectContainer",componentId:"sc-1346f57-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;width:100%;"]);export{y as ConnectOnlyStatusScreen};
@@ -1,2 +1,2 @@
1
- import{jsx as e,jsxs as o,Fragment as t}from"react/jsx-runtime";import{useState as n,useEffect as r}from"react";import{isMobile as i}from"react-device-detect";import{styled as c}from"styled-components";import{SiweFlow as s}from"../auth-flows/siwe.mjs";import{SiwsFlow as a}from"../auth-flows/siws.mjs";import{shouldProceedtoEmbeddedWalletCreationFlow as l}from"../client/user.mjs";import{PrimaryButton as m}from"../components/Button.mjs";import{FixedGappedContainer 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{ConnectorErrors as f,PrivyProviderRpcError as j,WalletTimeoutError as g,UserRejectedConnectionError as w}from"../connectors/errors.mjs";import{isCoinbaseWalletInstalled as y}from"../connectors/is-wallet-installed.mjs";import{userAlreadyHasConnectedCoinbaseWallet as E}from"../connectors/userAlreadyHasConnectedCoinbaseWallet.mjs";import{WalletConnectV2WalletConnector as C}from"../connectors/walletconnect-v2.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as _}from"../constants.mjs";import{PrivyErrorCode as v,PrivyUserLimitReachedError as b}from"../errors.mjs";import T from"../hook-utils/useInterval.mjs";import{useCaptcha as R}from"../hooks/captcha-context.mjs";import{usePrivyInternal as S}from"../hooks/internal-context.mjs";import{usePrivyModal as N}from"../hooks/modal-context.mjs";import{usePrivyContext as k}from"../hooks/privy-context.mjs";import{WALLET_UI_MAP as A}from"../lib/external-wallets/displayHelpers.mjs";import{useHasTabbedAway as O}from"../lib/useHasTabbedAway.mjs";import{BrowserExtensionWallet as x}from"../svg/browser-extension-wallet-icon.mjs";import{sleep as I}from"../utils/index.mjs";import{ModalScreen as L}from"./index.mjs";import"../effect.mjs";import"../lib/siwe.mjs";import"../lib/siws.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"@privy-io/js-sdk-core";import"../connectors/get-legacy-injected-providers.mjs";import"viem";import"@walletconnect/ethereum-provider";import"../svg/metamask.mjs";import"../svg/wallet-connect.mjs";import"../connectors/ethereum/index.mjs";import"../storage.mjs";import"../connectors/areWalletArraysEqual.mjs";import"../connectors/isBaseConnectedEthereumWallet.mjs";import"../connectors/base.mjs";import"eventemitter3";import"../connectors/getRpcTimeout.mjs";import"../connectors/privyProxyProvider.mjs";import"../connectors/walletconnect-registry.mjs";import"ofetch";import"../hooks/index.mjs";import"../components/PrefetchedImage.mjs";import"../svg/brave-browser-icon.mjs";import"../svg/bybit.mjs";import"../svg/coinbase-wallet.mjs";import"../svg/cryptocom.mjs";import"../svg/phantom.mjs";import"../svg/rabby.mjs";import"../svg/rainbow.mjs";import"../svg/safe.mjs";import"../svg/uniswap.mjs";import"../svg/universal-profile.mjs";import"../svg/zerion.mjs";import"../utils/eth/getPublicClient.mjs";const U=e=>e?.privyErrorCode===v.LINKED_TO_ANOTHER_USER?f.ERROR_USER_EXISTS:e instanceof j&&!e.details.default?e.details:e instanceof g?f.ERROR_TIMED_OUT:e instanceof w?f.ERROR_USER_REJECTED_CONNECTION:e?.privyErrorCode===v.CANNOT_LINK_MORE_OF_TYPE?f.ERROR_USER_LIMIT_REACHED:f.ERROR_WALLET_CONNECTION,W=()=>{let c,[d,j]=n(!1),[g,w]=n(!1),[W,D]=n(void 0),{authenticated:H,logout:B}=k(),{app:P,navigate:z,navigateBack:X,lastScreen:q,currentScreen:J,setModalData:K,data:$}=N(),{getAuthFlow:Q,walletConnectionStatus:Y,closePrivyModal:G,initLoginWithWallet:V,loginWithWallet:Z,updateWallets:ee,createAnalyticsEvent:oe}=S(),{walletConnectors:te}=k(),[ne,re]=n(0),{user:ie}=k(),[ce]=n(ie?.linkedAccounts.length||0),[se,ae]=n(""),[le,me]=n(""),[pe,de]=n(!1),{hasTabbedAway:he}=O(),{enabled:ue,token:fe}=R(),je=i&&"wallet_connect_v2"===Y?.connector?.connectorType||i&&"coinbase_wallet"===Y?.connector?.connectorType||i&&"injected"===Y?.connector?.connectorType&&"phantom"===Y?.connector?.walletClientType,ge="connected"===Y?.status,we="switching_to_supported_chain"===Y?.status;r((()=>{let e=Q(),o=e instanceof s||e instanceof a?e:void 0;ge&&!o&&(!ue||fe||H?V(Y.connectedWallet,fe,$?.login?.disableSignup).then((()=>{de(!0)})):(K({captchaModalData:{callback:e=>V(Y.connectedWallet,e,$?.login?.disableSignup).then((()=>{de(!0)})),userIntentRequired:!1,onSuccessNavigateTo:L.AWAITING_CONNECTION,onErrorNavigateTo:L.ERROR_SCREEN}}),z(L.CAPTCHA_SCREEN,!1))),o&&je&&ge&&!o.preparedMessage?o.buildMessage():o&&!je&&ge&&(g||(async()=>{w(!0),D(void 0);try{"wallet_connect_v2"===Y?.connector?.connectorType&&"metamask"===Y?.connector?.walletClientType&&await I(2500),await Ee()}catch(e){console.warn("Auto-prompted signature failed",e)}finally{w(!1)}})())}),[ne,ge,pe]),r((()=>{if(ie&&d){let e=_-500;if(P?.legal.requireUsersAcceptTerms&&!ie.hasAcceptedTerms){let o=setTimeout((()=>{z(L.AFFIRMATIVE_CONSENT_SCREEN)}),e);return()=>clearTimeout(o)}if(l(ie,P?.embeddedWallets?.createOnLogin)){let o=setTimeout((()=>{K({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),oe({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,screen:"ConnectionStatusScreen"}}),B()},callAuthOnSuccessOnClose:!0}}),z(L.EMBEDDED_WALLET_ON_ACCOUNT_CREATE_SCREEN)}),e);return()=>clearTimeout(o)}ee();let o=setTimeout((()=>G({shouldCallAuthOnSuccess:!0,isSuccess:!0})),_);return()=>clearTimeout(o)}}),[ie,d]);let ye=e=>{if(e?.privyErrorCode!==v.ALLOWLIST_REJECTED){if(e?.privyErrorCode===v.USER_LIMIT_REACHED)return console.error(new b(e).toString()),void z(L.USER_LIMIT_REACHED_SCREEN);if(e?.privyErrorCode!==v.USER_DOES_NOT_EXIST)return e?.privyErrorCode===v.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce?(K({accountTransfer:{nonce:e.data?.data?.nonce,account:Q()?.meta.address,displayName:e.data?.data?.account?.displayName,externalWalletMetadata:{walletClientType:Q()?.meta.walletClientType,chainId:Q()?.meta.chainId,connectorType:Q()?.meta.connectorType},linkMethod:"siwe",embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress}}),void z(L.LINK_CONFLICT_SCREEN)):void D(U(e));z(L.ACCOUNT_NOT_FOUND_SCREEN)}else z(L.ALLOWLIST_REJECTION_SCREEN)};async function Ee(){try{await Z(),j(!0)}catch(e){ye(e)}finally{w(!1)}}r((()=>{Y?.connectError&&ye(Y?.connectError)}),[Y]),T((()=>{let e="wallet_connect_v2"===Ce&&Y?.connector instanceof C?Y.connector.redirectUri:void 0;e&&ae(e);let o="wallet_connect_v2"===Ce&&Y?.connector instanceof C?Y.connector.fallbackUniversalRedirectUri:void 0;o&&me(o)}),Y?.connector instanceof C&&!se?500:null);let Ce=Y?.connector?.connectorType||"injected",_e=Y?.connector?.walletClientType||"unknown",ve=A[_e]?.displayName||Y?.connector?.walletBranding.name||"Browser Extension",be=A[_e]?.logo||Y?.connector?.walletBranding.icon||(o=>/*#__PURE__*/e(x,{...o})),Te="Browser Extension"===ve?ve.toLowerCase():ve;c=d?`Successfully connected with ${Te}`:W?W.message:we?"Switching networks":ge?g&&je?"Signing":"Sign to verify":`Waiting for ${Te}`;let Re="Don’t see your wallet? Check your other browser windows.";d?Re=ce===(ie?.linkedAccounts.length||0)?"Wallet was already linked.":"You’re good to go!":ne>=2&&W?Re="Unable to connect wallet":W?Re=W.detail:we?Re="Switch your wallet to the requested network.":ge&&je?Re="Sign the message in your wallet to verify it belongs to you.":"metamask"===_e&&i?Re="Click continue to open and connect MetaMask.":"metamask"===_e?Re="For the best experience, connect only one wallet at a time.":"wallet_connect"===Ce?Re="Open your mobile wallet app to continue":"coinbase_wallet"!==Ce||y()||(Re=E(ie)?"Continue with the Coinbase app. Not the right wallet? Reset your connection below.":"Open the Coinbase app on your phone to continue.");let Se=te?.walletConnectors?.find((e=>"coinbase_wallet"===e.walletClientType)),Ne="coinbase_wallet"===_e&&(E(ie)||W===f.ERROR_USER_EXISTS);/*#__PURE__*/return o(t,{children:[/*#__PURE__*/e(u,{backFn:q&&J!==q?X:void 0}),/*#__PURE__*/o(M,{children:[/*#__PURE__*/e(F,{walletLogo:be,success:d,fail:!!W}),/*#__PURE__*/o(p,{children:[/*#__PURE__*/e("h3",{children:c}),/*#__PURE__*/e("p",{children:Re}),ge||!se||he?null:/*#__PURE__*/o("p",{children:["Still here?"," ",/*#__PURE__*/e("a",{href:se,target:"_blank",style:{textDecoration:"underline"},children:"Try connecting again"}),le&&/*#__PURE__*/o(t,{children:[" ","or"," ",/*#__PURE__*/e("a",{href:le,target:"_blank",style:{textDecoration:"underline"},children:"use this different link"})]})]})]}),Ne?/*#__PURE__*/e(m,{onClick:()=>Se&&Se?.disconnect(),disabled:d,children:"Use a different wallet"}):W==f.ERROR_USER_EXISTS&&J!==q?/*#__PURE__*/e(m,{onClick:X,children:"Use a different wallet"}):ge&&!d&&je?/*#__PURE__*/e(m,{onClick:()=>{w(!0),Ee()},disabled:g,children:g?"Signing":"Sign with your wallet"}):!d&&W?.retryable&&ne<2?/*#__PURE__*/e(m,{onClick:()=>{re(ne+1),D(void 0),ge?(w(!0),Ee()):Y?.connectRetry()},disabled:!d&&(!W?.retryable||ne>=2),children:"Retry"}):d||W?null:/*#__PURE__*/e(m,{onClick:()=>{},disabled:!0,children:"Connecting"})]}),/*#__PURE__*/e(h,{})]})};let M=/*#__PURE__*/c.div.withConfig({displayName:"ConnectContainer",componentId:"sc-afad057-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;width:100%;"]),D=/*#__PURE__*/c.div.withConfig({displayName:"StackedContainer",componentId:"sc-afad057-1"})(["display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:82px;> div{position:relative;}> div > span{position:absolute;left:-41px;top:-41px;}> div > :last-child{position:absolute;left:-19px;top:-19px;}"]);const F=n=>{let r=n.walletLogo;/*#__PURE__*/return e(t,{children:/*#__PURE__*/e(D,{children:/*#__PURE__*/o("div",{children:[/*#__PURE__*/e(d,{success:n.success,fail:n.fail}),"string"==typeof r?
1
+ import{jsx as e,jsxs as o,Fragment as t}from"react/jsx-runtime";import{useState as n,useEffect as r}from"react";import{isMobile as i}from"react-device-detect";import{styled as c}from"styled-components";import{SiweFlow as s}from"../auth-flows/siwe.mjs";import{SiwsFlow as a}from"../auth-flows/siws.mjs";import{shouldProceedtoEmbeddedWalletCreationFlow as l}from"../client/user.mjs";import{PrimaryButton as m}from"../components/Button.mjs";import{FixedGappedContainer 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{ConnectorErrors as f,PrivyProviderRpcError as j,WalletTimeoutError as g,UserRejectedConnectionError as w}from"../connectors/errors.mjs";import{isCoinbaseWalletInstalled as y}from"../connectors/is-wallet-installed.mjs";import{userAlreadyHasConnectedCoinbaseWallet as E}from"../connectors/userAlreadyHasConnectedCoinbaseWallet.mjs";import{WalletConnectV2WalletConnector as C}from"../connectors/walletconnect-v2.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as _}from"../constants.mjs";import{PrivyErrorCode as v,PrivyUserLimitReachedError as b}from"../errors.mjs";import T from"../hook-utils/useInterval.mjs";import{useCaptcha as R}from"../hooks/captcha-context.mjs";import{usePrivyInternal as S}from"../hooks/internal-context.mjs";import{usePrivyModal as N}from"../hooks/modal-context.mjs";import{usePrivyContext as k}from"../hooks/privy-context.mjs";import{WALLET_UI_MAP as A}from"../lib/external-wallets/displayHelpers.mjs";import{useHasTabbedAway as O}from"../lib/useHasTabbedAway.mjs";import{BrowserExtensionWallet as x}from"../svg/browser-extension-wallet-icon.mjs";import{sleep as I}from"../utils/index.mjs";import{ModalScreen as L}from"./index.mjs";import"../effect.mjs";import"../lib/siwe.mjs";import"../lib/siws.mjs";import"viem/utils";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"../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"@privy-io/js-sdk-core";import"../connectors/get-legacy-injected-providers.mjs";import"viem";import"@walletconnect/ethereum-provider";import"../svg/metamask.mjs";import"../svg/wallet-connect.mjs";import"../connectors/ethereum/index.mjs";import"../storage.mjs";import"../connectors/areWalletArraysEqual.mjs";import"../connectors/isBaseConnectedEthereumWallet.mjs";import"../connectors/base.mjs";import"eventemitter3";import"../connectors/getRpcTimeout.mjs";import"../connectors/privyProxyProvider.mjs";import"../connectors/walletconnect-registry.mjs";import"ofetch";import"../hooks/index.mjs";import"../components/PrefetchedImage.mjs";import"../svg/brave-browser-icon.mjs";import"../svg/bybit.mjs";import"../svg/coinbase-wallet.mjs";import"../svg/cryptocom.mjs";import"../svg/phantom.mjs";import"../svg/rabby.mjs";import"../svg/rainbow.mjs";import"../svg/safe.mjs";import"../svg/uniswap.mjs";import"../svg/universal-profile.mjs";import"../svg/zerion.mjs";import"../utils/eth/getPublicClient.mjs";const U=e=>e?.privyErrorCode===v.LINKED_TO_ANOTHER_USER?f.ERROR_USER_EXISTS:e instanceof j&&!e.details.default?e.details:e instanceof g?f.ERROR_TIMED_OUT:e instanceof w?f.ERROR_USER_REJECTED_CONNECTION:e?.privyErrorCode===v.CANNOT_LINK_MORE_OF_TYPE?f.ERROR_USER_LIMIT_REACHED:f.ERROR_WALLET_CONNECTION,W=()=>{let c,[d,j]=n(!1),[g,w]=n(!1),[W,D]=n(void 0),{authenticated:H,logout:B}=k(),{app:P,navigate:z,navigateBack:X,lastScreen:q,currentScreen:J,setModalData:K,data:$}=N(),{getAuthFlow:Q,walletConnectionStatus:Y,closePrivyModal:G,initLoginWithWallet:V,loginWithWallet:Z,updateWallets:ee,createAnalyticsEvent:oe}=S(),{walletConnectors:te}=k(),[ne,re]=n(0),{user:ie}=k(),[ce]=n(ie?.linkedAccounts.length||0),[se,ae]=n(""),[le,me]=n(""),[pe,de]=n(!1),{hasTabbedAway:he}=O(),{enabled:ue,token:fe}=R(),je=i&&"wallet_connect_v2"===Y?.connector?.connectorType||i&&"coinbase_wallet"===Y?.connector?.connectorType||i&&"injected"===Y?.connector?.connectorType&&"phantom"===Y?.connector?.walletClientType,ge="connected"===Y?.status,we="switching_to_supported_chain"===Y?.status;r((()=>{let e=Q(),o=e instanceof s||e instanceof a?e:void 0;ge&&!o&&(!ue||fe||H?V(Y.connectedWallet,fe,$?.login?.disableSignup).then((()=>{de(!0)})):(K({captchaModalData:{callback:e=>V(Y.connectedWallet,e,$?.login?.disableSignup).then((()=>{de(!0)})),userIntentRequired:!1,onSuccessNavigateTo:L.AWAITING_CONNECTION,onErrorNavigateTo:L.ERROR_SCREEN}}),z(L.CAPTCHA_SCREEN,!1))),o&&je&&ge&&!o.preparedMessage?o.buildMessage():o&&!je&&ge&&(g||(async()=>{w(!0),D(void 0);try{"wallet_connect_v2"===Y?.connector?.connectorType&&"metamask"===Y?.connector?.walletClientType&&await I(2500),await Ee()}catch(e){console.warn("Auto-prompted signature failed",e)}finally{w(!1)}})())}),[ne,ge,pe]),r((()=>{if(ie&&d){let e=_-500;if(P?.legal.requireUsersAcceptTerms&&!ie.hasAcceptedTerms){let o=setTimeout((()=>{z(L.AFFIRMATIVE_CONSENT_SCREEN)}),e);return()=>clearTimeout(o)}if(l(ie,P?.embeddedWallets?.createOnLogin)){let o=setTimeout((()=>{K({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),oe({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,screen:"ConnectionStatusScreen"}}),B()},callAuthOnSuccessOnClose:!0}}),z(L.EMBEDDED_WALLET_ON_ACCOUNT_CREATE_SCREEN)}),e);return()=>clearTimeout(o)}ee();let o=setTimeout((()=>G({shouldCallAuthOnSuccess:!0,isSuccess:!0})),_);return()=>clearTimeout(o)}}),[ie,d]);let ye=e=>{if(e?.privyErrorCode!==v.ALLOWLIST_REJECTED){if(e?.privyErrorCode===v.USER_LIMIT_REACHED)return console.error(new b(e).toString()),void z(L.USER_LIMIT_REACHED_SCREEN);if(e?.privyErrorCode!==v.USER_DOES_NOT_EXIST)return e?.privyErrorCode===v.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce?(K({accountTransfer:{nonce:e.data?.data?.nonce,account:Q()?.meta.address,displayName:e.data?.data?.account?.displayName,externalWalletMetadata:{walletClientType:Q()?.meta.walletClientType,chainId:Q()?.meta.chainId,connectorType:Q()?.meta.connectorType},linkMethod:"siwe",embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress}}),void z(L.LINK_CONFLICT_SCREEN)):void D(U(e));z(L.ACCOUNT_NOT_FOUND_SCREEN)}else z(L.ALLOWLIST_REJECTION_SCREEN)};async function Ee(){try{await Z(),j(!0)}catch(e){ye(e)}finally{w(!1)}}r((()=>{Y?.connectError&&ye(Y?.connectError)}),[Y]),T((()=>{let e="wallet_connect_v2"===Ce&&Y?.connector instanceof C?Y.connector.redirectUri:void 0;e&&ae(e);let o="wallet_connect_v2"===Ce&&Y?.connector instanceof C?Y.connector.fallbackUniversalRedirectUri:void 0;o&&me(o)}),Y?.connector instanceof C&&!se?500:null);let Ce=Y?.connector?.connectorType||"injected",_e=Y?.connector?.walletClientType||"unknown",ve=A[_e]?.displayName||Y?.connector?.walletBranding.name||"Browser Extension",be=A[_e]?.logo||Y?.connector?.walletBranding.icon||(o=>/*#__PURE__*/e(x,{...o})),Te="Browser Extension"===ve?ve.toLowerCase():ve;c=d?`Successfully connected with ${Te}`:W?W.message:we?"Switching networks":ge?g&&je?"Signing":"Sign to verify":`Waiting for ${Te}`;let Re="Don’t see your wallet? Check your other browser windows.";d?Re=ce===(ie?.linkedAccounts.length||0)?"Wallet was already linked.":"You’re good to go!":ne>=2&&W?Re="Unable to connect wallet":W?Re=W.detail:we?Re="Switch your wallet to the requested network.":ge&&je?Re="Sign the message in your wallet to verify it belongs to you.":"metamask"===_e&&i?Re="Click continue to open and connect MetaMask.":"metamask"===_e?Re="For the best experience, connect only one wallet at a time.":"wallet_connect"===Ce?Re="Open your mobile wallet app to continue":"coinbase_wallet"!==Ce||y()||(Re=E(ie)?"Continue with the Coinbase app. Not the right wallet? Reset your connection below.":"Open the Coinbase app on your phone to continue.");let Se=te?.walletConnectors?.find((e=>"coinbase_wallet"===e.walletClientType)),Ne="coinbase_wallet"===_e&&(E(ie)||W===f.ERROR_USER_EXISTS);/*#__PURE__*/return o(t,{children:[/*#__PURE__*/e(u,{backFn:q&&J!==q?X:void 0}),/*#__PURE__*/o(M,{children:[/*#__PURE__*/e(F,{walletLogo:be,success:d,fail:!!W}),/*#__PURE__*/o(p,{children:[/*#__PURE__*/e("h3",{children:c}),/*#__PURE__*/e("p",{children:Re}),ge||!se||he?null:/*#__PURE__*/o("p",{children:["Still here?"," ",/*#__PURE__*/e("a",{href:se,target:"_blank",style:{textDecoration:"underline"},children:"Try connecting again"}),le&&/*#__PURE__*/o(t,{children:[" ","or"," ",/*#__PURE__*/e("a",{href:le,target:"_blank",style:{textDecoration:"underline"},children:"use this different link"})]})]})]}),Ne?/*#__PURE__*/e(m,{onClick:()=>Se&&Se?.disconnect(),disabled:d,children:"Use a different wallet"}):W==f.ERROR_USER_EXISTS&&J!==q?/*#__PURE__*/e(m,{onClick:X,children:"Use a different wallet"}):ge&&!d&&je?/*#__PURE__*/e(m,{onClick:()=>{w(!0),Ee()},disabled:g,children:g?"Signing":"Sign with your wallet"}):!d&&W?.retryable&&ne<2?/*#__PURE__*/e(m,{onClick:()=>{re(ne+1),D(void 0),ge?(w(!0),Ee()):Y?.connectRetry()},disabled:!d&&(!W?.retryable||ne>=2),children:"Retry"}):d||W?null:/*#__PURE__*/e(m,{onClick:()=>{},disabled:!0,children:"Connecting"})]}),/*#__PURE__*/e(h,{})]})};let M=/*#__PURE__*/c.div.withConfig({displayName:"ConnectContainer",componentId:"sc-afad057-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;width:100%;"]),D=/*#__PURE__*/c.div.withConfig({displayName:"StackedContainer",componentId:"sc-afad057-1"})(["display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:82px;> div{position:relative;}> div > span{position:absolute;left:-41px;top:-41px;}> div > :last-child{position:absolute;left:-19px;top:-19px;}"]);const F=n=>{let r=n.walletLogo;/*#__PURE__*/return e(t,{children:/*#__PURE__*/e(D,{children:/*#__PURE__*/o("div",{children:[/*#__PURE__*/e(d,{success:n.success,fail:n.fail}),"string"==typeof r?
2
2
  /*#__PURE__*/e("span",{style:{background:`url('${r}')`,height:"38px",width:"38px",borderRadius:"6px",margin:"auto",backgroundSize:"cover"}}):/*#__PURE__*/e(r,{style:{width:"38px",height:"38px"}})]})})})};export{W as ConnectionStatusScreen,F as WalletLoading,U as getErrorDetails};
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as e,jsx as t}from"react/jsx-runtime";import{useState as r,useEffect as n,useMemo as i}from"react";import{styled as s}from"styled-components";import{shouldProceedtoEmbeddedWalletCreationFlow as c}from"../client/user.mjs";import{RefactorSpacerTop as m,FixedGappedContainer as a,RefactorSpacerBottom as p}from"../components/Layouts.mjs";import{ConnectionLoader as l}from"../components/Loader.mjs";import{ModalFooter as u}from"../components/ModalFooter.mjs";import{ModalHeader as h}from"../components/ModalHeader.mjs";import{ProviderAppLogo as d}from"../components/ProviderAppLogo.mjs";import j from"../components/layout/StackedContainer.mjs";import{useAppConfig as f}from"../configuration/context.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as g}from"../constants.mjs";import{RunEffectOnce as y}from"../effect.mjs";import{PrivyClientError as A,PrivyApiError as C}from"../errors.mjs";import{usePrivyInternal as b}from"../hooks/internal-context.mjs";import{usePrivyModal as x}from"../hooks/modal-context.mjs";import{useLogout as S}from"../hooks/useLogout.mjs";import{ModalScreen as v}from"./index.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"../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"../hooks/events-context.mjs";import"../hooks/privy-context.mjs";const T=()=>{let s=f(),{data:T,navigate:k,setModalData:w,onUserCloseViaDialogOrKeybindRef:_}=x(),{crossAppAuthFlow:I,updateWallets:O,closePrivyModal:L,createAnalyticsEvent:M}=b(),{logout:N}=S(),[U,F]=r({}),R=T?.crossAppAuth,D={id:R.appId,name:R.name,logoUrl:R.logoUrl},P=new A(`There was an issue connecting your ${D.name} account. Please try again.`),$=new y((async o=>{if(R.popup)try{let e=await I({appId:o,popup:R.popup,action:R.action});F({data:e})}catch(o){o instanceof A?F({error:o}):(o instanceof C&&R.popup&&R.popup.close(),F({error:P}))}else F({error:P})})),W=()=>{U.data&&(O(),R.onSuccess(U.data),L({shouldCallAuthOnSuccess:!0,isSuccess:!0})),R.onError(U.error??new A("User canceled flow")),L({shouldCallAuthOnSuccess:!1,isSuccess:!1})};_.current=W,n((()=>{D.id.length&&$.execute(D.id)}),[D.id]),n((()=>{if(!U.data)return;let o=U.data;if(s.legal.requireUsersAcceptTerms&&!o.hasAcceptedTerms){let o=setTimeout((()=>{k(v.AFFIRMATIVE_CONSENT_SCREEN)}),g);return()=>clearTimeout(o)}if(c(o,s.embeddedWallets?.createOnLogin)){let o=setTimeout((()=>{w({createWallet:{onSuccess:()=>{},onFailure:o=>{console.error(o),M({eventName:"embedded_wallet_creation_failure_logout",payload:{error:o,provider:`privy:${D.id}`,screen:"CrossAppAuthScreen"}}),N()},callAuthOnSuccessOnClose:!0}}),k(v.EMBEDDED_WALLET_ON_ACCOUNT_CREATE_SCREEN)}),g);return()=>clearTimeout(o)}let e=setTimeout(W,g);return()=>clearTimeout(e)}),[U.data]);let{title:z,subtitle:H}=i((()=>U.data?{title:`Successfully connected with ${D.name}`,subtitle:"You're good to go!"}:U.error?{title:"Authentication failed",subtitle:U.error.message}:{title:`Connecting to ${D.name}`,subtitle:`Please check the pop-up from ${D.name} to continue`}),[U,D.name]);/*#__PURE__*/return o(e,{children:[/*#__PURE__*/t(h,{onClose:W}),/*#__PURE__*/t(m,{}),/*#__PURE__*/o(E,{children:[/*#__PURE__*/t(j,{children:/*#__PURE__*/o("div",{children:[/*#__PURE__*/t(l,{success:!!U.data,fail:!!U.error}),/*#__PURE__*/t(d,{name:D.name,logoUrl:D.logoUrl})]})}),/*#__PURE__*/o(a,{children:[/*#__PURE__*/t("h3",{children:z}),/*#__PURE__*/t("p",{children:H})]})]}),/*#__PURE__*/t(p,{}),/*#__PURE__*/t(u,{})]})};let E=/*#__PURE__*/s.div.withConfig({displayName:"ConnectContainer",componentId:"sc-2ae0702a-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;margin-left:27px;margin-right:27px;gap:24px;"]);export{T as CrossAppAuthScreen};
1
+ import{jsxs as o,Fragment as e,jsx as t}from"react/jsx-runtime";import{useState as r,useEffect as n,useMemo as i}from"react";import{styled as s}from"styled-components";import{shouldProceedtoEmbeddedWalletCreationFlow as c}from"../client/user.mjs";import{RefactorSpacerTop as m,FixedGappedContainer as a,RefactorSpacerBottom as p}from"../components/Layouts.mjs";import{ConnectionLoader as l}from"../components/Loader.mjs";import{ModalFooter as u}from"../components/ModalFooter.mjs";import{ModalHeader as h}from"../components/ModalHeader.mjs";import{ProviderAppLogo as d}from"../components/ProviderAppLogo.mjs";import j from"../components/layout/StackedContainer.mjs";import{useAppConfig as f}from"../configuration/context.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as g}from"../constants.mjs";import{RunEffectOnce as y}from"../effect.mjs";import{PrivyClientError as A,PrivyApiError as C}from"../errors.mjs";import{usePrivyInternal as b}from"../hooks/internal-context.mjs";import{usePrivyModal as x}from"../hooks/modal-context.mjs";import{useLogout as S}from"../hooks/useLogout.mjs";import{ModalScreen as v}from"./index.mjs";import"viem/utils";import"../svg/protected-by-privy.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"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../hooks/index.mjs";import"ofetch";import"../components/PrefetchedImage.mjs";import"../hooks/events-context.mjs";import"../hooks/privy-context.mjs";const T=()=>{let s=f(),{data:T,navigate:k,setModalData:w,onUserCloseViaDialogOrKeybindRef:_}=x(),{crossAppAuthFlow:I,updateWallets:O,closePrivyModal:L,createAnalyticsEvent:M}=b(),{logout:N}=S(),[U,F]=r({}),R=T?.crossAppAuth,D={id:R.appId,name:R.name,logoUrl:R.logoUrl},P=new A(`There was an issue connecting your ${D.name} account. Please try again.`),$=new y((async o=>{if(R.popup)try{let e=await I({appId:o,popup:R.popup,action:R.action});F({data:e})}catch(o){o instanceof A?F({error:o}):(o instanceof C&&R.popup&&R.popup.close(),F({error:P}))}else F({error:P})})),W=()=>{U.data&&(O(),R.onSuccess(U.data),L({shouldCallAuthOnSuccess:!0,isSuccess:!0})),R.onError(U.error??new A("User canceled flow")),L({shouldCallAuthOnSuccess:!1,isSuccess:!1})};_.current=W,n((()=>{D.id.length&&$.execute(D.id)}),[D.id]),n((()=>{if(!U.data)return;let o=U.data;if(s.legal.requireUsersAcceptTerms&&!o.hasAcceptedTerms){let o=setTimeout((()=>{k(v.AFFIRMATIVE_CONSENT_SCREEN)}),g);return()=>clearTimeout(o)}if(c(o,s.embeddedWallets?.createOnLogin)){let o=setTimeout((()=>{w({createWallet:{onSuccess:()=>{},onFailure:o=>{console.error(o),M({eventName:"embedded_wallet_creation_failure_logout",payload:{error:o,provider:`privy:${D.id}`,screen:"CrossAppAuthScreen"}}),N()},callAuthOnSuccessOnClose:!0}}),k(v.EMBEDDED_WALLET_ON_ACCOUNT_CREATE_SCREEN)}),g);return()=>clearTimeout(o)}let e=setTimeout(W,g);return()=>clearTimeout(e)}),[U.data]);let{title:z,subtitle:H}=i((()=>U.data?{title:`Successfully connected with ${D.name}`,subtitle:"You're good to go!"}:U.error?{title:"Authentication failed",subtitle:U.error.message}:{title:`Connecting to ${D.name}`,subtitle:`Please check the pop-up from ${D.name} to continue`}),[U,D.name]);/*#__PURE__*/return o(e,{children:[/*#__PURE__*/t(h,{onClose:W}),/*#__PURE__*/t(m,{}),/*#__PURE__*/o(E,{children:[/*#__PURE__*/t(j,{children:/*#__PURE__*/o("div",{children:[/*#__PURE__*/t(l,{success:!!U.data,fail:!!U.error}),/*#__PURE__*/t(d,{name:D.name,logoUrl:D.logoUrl})]})}),/*#__PURE__*/o(a,{children:[/*#__PURE__*/t("h3",{children:z}),/*#__PURE__*/t("p",{children:H})]})]}),/*#__PURE__*/t(p,{}),/*#__PURE__*/t(u,{})]})};let E=/*#__PURE__*/s.div.withConfig({displayName:"ConnectContainer",componentId:"sc-2ae0702a-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;margin-left:27px;margin-right:27px;gap:24px;"]);export{T as CrossAppAuthScreen};
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as t,jsx as n}from"react/jsx-runtime";import e from"@heroicons/react/24/outline/CheckCircleIcon";import r from"@heroicons/react/24/outline/CloudArrowUpIcon";import i from"@heroicons/react/24/outline/ExclamationCircleIcon";import{useState as s,useEffect as c}from"react";import{styled as m}from"styled-components";import{SecondaryButton as a,PrimaryButton as p}from"../components/Button.mjs";import{RefactorSpacerTop as l,HorizontallyCenteredItem as h,ConfigurableSpacer as j,RefactorSpacerBottom as d}from"../components/Layouts.mjs";import{BlobbyFooter as u}from"../components/ModalFooter.mjs";import{ModalHeader as g}from"../components/ModalHeader.mjs";import{CenteredScreenHeader as f}from"../components/ScreenHeader.mjs";import{WalletInfoCard as y}from"../components/ui/wallet/WalletInfoCard.mjs";import{DEFAULT_SUCCESS_SCREEN_LONG_DURATION_MS as C}from"../constants.mjs";import{PrivyClientError as w}from"../errors.mjs";import{usePrivyInternal as b}from"../hooks/internal-context.mjs";import{usePrivyModal as x}from"../hooks/modal-context.mjs";import{Title as k,SubTitle as v}from"./MfaScreens/StyledComponents.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"../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/ui/chips/Chip.mjs";import"../components/ui/animation/LoadingSkeleton.mjs";import"../components/ui/layout/Column.mjs";import"../components/ui/typography/ErrorMessage.mjs";import"../components/ui/typography/LabelXs.mjs";import"../components/ui/wallet/Address.mjs";import"@heroicons/react/24/outline/CheckIcon";import"@heroicons/react/24/outline/Square2StackIcon";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"ofetch";import"../components/ui/wallet/shared.mjs";import"../components/PrefetchedImage.mjs";import"./index.mjs";const I=()=>{let{app:m,data:y}=x(),{closePrivyModal:I}=b(),[M,L]=s(!1),[T,B]=s(),{address:E,onDelegate:P,onSuccess:W,onError:z}=y.delegatedActions.consent,H=async()=>{M?W():z(T??new w("User declined delegating actions.")),I({shouldCallAuthOnSuccess:!1})};return c((()=>{if(!M&&!T)return;let o=setTimeout(H,C);return()=>clearTimeout(o)}),[M,T]),/*#__PURE__*/o(t,M||T?{children:[/*#__PURE__*/n(g,{onClose:H}),/*#__PURE__*/n(l,{}),/*#__PURE__*/o(h,{children:[T?/*#__PURE__*/n(i,{stroke:"var(--privy-color-error)",width:"64px",height:"64px"}):/*#__PURE__*/n(e,{stroke:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/n(j,{height:20}),/*#__PURE__*/n(f,{title:T?"Something went wrong":"Success!",description:T?"Please try again.":`You’ve successfully granted delegated action permissions to ${m.name}.`})]}),/*#__PURE__*/n(d,{}),/*#__PURE__*/n(u,{})]}:{children:[/*#__PURE__*/n(g,{closeable:!0,onClose:H}),/*#__PURE__*/n(r,{width:56,height:56,style:{margin:"auto"}}),/*#__PURE__*/n(k,{style:{marginTop:24,color:"var(--privy-color-foreground)"},children:"Enable offline access"}),/*#__PURE__*/o(v,{style:{marginBottom:24,textWrap:"pretty"},children:["By confirming, ",m.name," will be able to use your wallet for you even when you're not around. You can revoke this later."]}),/*#__PURE__*/n(A,{showIcon:!0,address:E,title:"Wallet",isLoading:!1}),/*#__PURE__*/o(S,{style:{marginTop:24},children:[/*#__PURE__*/n(a,{onClick:H,children:"Not now"}),/*#__PURE__*/n(p,{onClick:async()=>{try{await P(),L(!0)}catch(o){B(o)}},children:"Accept"})]}),/*#__PURE__*/n(u,{})]})};let S=/*#__PURE__*/m.div.withConfig({displayName:"ButtonsContainer",componentId:"sc-b99bc0c0-0"})(["display:flex;gap:10px;"]),A=/*#__PURE__*/m(y).withConfig({displayName:"StyledWalletInfoCard",componentId:"sc-b99bc0c0-1"})(["margin-top:1.5rem;"]);export{I as DelegatedActionsConsentScreen};
1
+ import{jsxs as o,Fragment as t,jsx as n}from"react/jsx-runtime";import e from"@heroicons/react/24/outline/CheckCircleIcon";import r from"@heroicons/react/24/outline/CloudArrowUpIcon";import i from"@heroicons/react/24/outline/ExclamationCircleIcon";import{useState as s,useEffect as c}from"react";import{styled as m}from"styled-components";import{SecondaryButton as a,PrimaryButton as p}from"../components/Button.mjs";import{RefactorSpacerTop as l,HorizontallyCenteredItem as h,ConfigurableSpacer as j,RefactorSpacerBottom as d}from"../components/Layouts.mjs";import{BlobbyFooter as u}from"../components/ModalFooter.mjs";import{ModalHeader as g}from"../components/ModalHeader.mjs";import{CenteredScreenHeader as f}from"../components/ScreenHeader.mjs";import{WalletInfoCard as y}from"../components/ui/wallet/WalletInfoCard.mjs";import{DEFAULT_SUCCESS_SCREEN_LONG_DURATION_MS as C}from"../constants.mjs";import{PrivyClientError as w}from"../errors.mjs";import{usePrivyInternal as b}from"../hooks/internal-context.mjs";import{usePrivyModal as x}from"../hooks/modal-context.mjs";import{Title as k,SubTitle as v}from"./MfaScreens/StyledComponents.mjs";import"../components/Loader.mjs";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"../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"../hooks/index.mjs";import"../components/ui/chips/Chip.mjs";import"../components/ui/animation/LoadingSkeleton.mjs";import"../components/ui/layout/Column.mjs";import"../components/ui/typography/ErrorMessage.mjs";import"../components/ui/typography/LabelXs.mjs";import"../components/ui/wallet/Address.mjs";import"@heroicons/react/24/outline/CheckIcon";import"@heroicons/react/24/outline/Square2StackIcon";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"ofetch";import"../components/ui/wallet/shared.mjs";import"../components/PrefetchedImage.mjs";import"./index.mjs";const I=()=>{let{app:m,data:y}=x(),{closePrivyModal:I}=b(),[M,L]=s(!1),[T,B]=s(),{address:E,onDelegate:P,onSuccess:W,onError:z}=y.delegatedActions.consent,H=async()=>{M?W():z(T??new w("User declined delegating actions.")),I({shouldCallAuthOnSuccess:!1})};return c((()=>{if(!M&&!T)return;let o=setTimeout(H,C);return()=>clearTimeout(o)}),[M,T]),/*#__PURE__*/o(t,M||T?{children:[/*#__PURE__*/n(g,{onClose:H}),/*#__PURE__*/n(l,{}),/*#__PURE__*/o(h,{children:[T?/*#__PURE__*/n(i,{stroke:"var(--privy-color-error)",width:"64px",height:"64px"}):/*#__PURE__*/n(e,{stroke:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/n(j,{height:20}),/*#__PURE__*/n(f,{title:T?"Something went wrong":"Success!",description:T?"Please try again.":`You’ve successfully granted delegated action permissions to ${m.name}.`})]}),/*#__PURE__*/n(d,{}),/*#__PURE__*/n(u,{})]}:{children:[/*#__PURE__*/n(g,{closeable:!0,onClose:H}),/*#__PURE__*/n(r,{width:56,height:56,style:{margin:"auto"}}),/*#__PURE__*/n(k,{style:{marginTop:24,color:"var(--privy-color-foreground)"},children:"Enable offline access"}),/*#__PURE__*/o(v,{style:{marginBottom:24,textWrap:"pretty"},children:["By confirming, ",m.name," will be able to use your wallet for you even when you're not around. You can revoke this later."]}),/*#__PURE__*/n(A,{showIcon:!0,address:E,title:"Wallet",isLoading:!1}),/*#__PURE__*/o(S,{style:{marginTop:24},children:[/*#__PURE__*/n(a,{onClick:H,children:"Not now"}),/*#__PURE__*/n(p,{onClick:async()=>{try{await P(),L(!0)}catch(o){B(o)}},children:"Accept"})]}),/*#__PURE__*/n(u,{})]})};let S=/*#__PURE__*/m.div.withConfig({displayName:"ButtonsContainer",componentId:"sc-b99bc0c0-0"})(["display:flex;gap:10px;"]),A=/*#__PURE__*/m(y).withConfig({displayName:"StyledWalletInfoCard",componentId:"sc-b99bc0c0-1"})(["margin-top:1.5rem;"]);export{I as DelegatedActionsConsentScreen};
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as n,jsx as t}from"react/jsx-runtime";import e from"@heroicons/react/24/outline/CheckCircleIcon";import r from"@heroicons/react/24/outline/ExclamationCircleIcon";import i from"@heroicons/react/24/outline/NoSymbolIcon";import{useState as s,useEffect as c}from"react";import{styled as m}from"styled-components";import{SecondaryButton as a,PrimaryButton as p}from"../components/Button.mjs";import{RefactorSpacerTop as l,HorizontallyCenteredItem as h,ConfigurableSpacer as j,RefactorSpacerBottom as d}from"../components/Layouts.mjs";import{BlobbyFooter as f}from"../components/ModalFooter.mjs";import{ModalHeader as u}from"../components/ModalHeader.mjs";import{CenteredScreenHeader as g}from"../components/ScreenHeader.mjs";import{DEFAULT_SUCCESS_SCREEN_LONG_DURATION_MS as y}from"../constants.mjs";import{PrivyClientError as k}from"../errors.mjs";import{usePrivyInternal as v}from"../hooks/internal-context.mjs";import{usePrivyModal as w}from"../hooks/modal-context.mjs";import{Title as x,SubTitle as C}from"./MfaScreens/StyledComponents.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"../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"./index.mjs";const b=()=>{let{app:m,data:b}=w(),{closePrivyModal:I}=v(),[A,M]=s(!1),[T,z]=s(),{onRevoke:B,onSuccess:H,onError:L}=b.delegatedActions.revoke,P=async()=>{A?H():L(T??new k("User declined revoking access to their delegated wallet.")),I({shouldCallAuthOnSuccess:!1})};return c((()=>{if(!A&&!T)return;let o=setTimeout(P,y);return()=>clearTimeout(o)}),[A,T]),/*#__PURE__*/o(n,A||T?{children:[/*#__PURE__*/t(u,{onClose:P}),/*#__PURE__*/t(l,{}),/*#__PURE__*/o(h,{children:[T?/*#__PURE__*/t(r,{stroke:"var(--privy-color-error)",width:"64px",height:"64px"}):/*#__PURE__*/t(e,{stroke:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/t(j,{height:20}),/*#__PURE__*/t(g,{title:T?"Something went wrong":"Success!",description:T?"Please try again.":"You've successfully revoked permissions."})]}),/*#__PURE__*/t(d,{}),/*#__PURE__*/t(f,{})]}:{children:[/*#__PURE__*/t(u,{closeable:!0,onClose:P}),/*#__PURE__*/t(i,{width:56,height:56,style:{margin:"auto"}}),/*#__PURE__*/t(x,{style:{marginTop:24},children:"Revoke offline access to wallet"}),/*#__PURE__*/o(C,{children:["By confirming, ",m.name," will no longer be able to use this wallet on your behalf when you are not online."]}),/*#__PURE__*/o(S,{style:{marginTop:24},children:[/*#__PURE__*/t(a,{onClick:P,children:"Deny"}),/*#__PURE__*/t(p,{onClick:async()=>{try{await B(),M(!0)}catch(o){z(o)}},children:"Confirm"})]}),/*#__PURE__*/t(f,{})]})};let S=/*#__PURE__*/m.div.withConfig({displayName:"ButtonsContainer",componentId:"sc-8ff214d7-0"})(["display:flex;gap:10px;"]);export{b as DelegatedActionsRevokeScreen};
1
+ import{jsxs as o,Fragment as n,jsx as t}from"react/jsx-runtime";import e from"@heroicons/react/24/outline/CheckCircleIcon";import r from"@heroicons/react/24/outline/ExclamationCircleIcon";import i from"@heroicons/react/24/outline/NoSymbolIcon";import{useState as s,useEffect as c}from"react";import{styled as m}from"styled-components";import{SecondaryButton as a,PrimaryButton as p}from"../components/Button.mjs";import{RefactorSpacerTop as l,HorizontallyCenteredItem as h,ConfigurableSpacer as j,RefactorSpacerBottom as d}from"../components/Layouts.mjs";import{BlobbyFooter as f}from"../components/ModalFooter.mjs";import{ModalHeader as u}from"../components/ModalHeader.mjs";import{CenteredScreenHeader as g}from"../components/ScreenHeader.mjs";import{DEFAULT_SUCCESS_SCREEN_LONG_DURATION_MS as y}from"../constants.mjs";import{PrivyClientError as k}from"../errors.mjs";import{usePrivyInternal as v}from"../hooks/internal-context.mjs";import{usePrivyModal as w}from"../hooks/modal-context.mjs";import{Title as x,SubTitle as C}from"./MfaScreens/StyledComponents.mjs";import"../components/Loader.mjs";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"../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"../hooks/index.mjs";import"ofetch";import"../components/PrefetchedImage.mjs";import"./index.mjs";const b=()=>{let{app:m,data:b}=w(),{closePrivyModal:I}=v(),[A,M]=s(!1),[T,z]=s(),{onRevoke:B,onSuccess:H,onError:L}=b.delegatedActions.revoke,P=async()=>{A?H():L(T??new k("User declined revoking access to their delegated wallet.")),I({shouldCallAuthOnSuccess:!1})};return c((()=>{if(!A&&!T)return;let o=setTimeout(P,y);return()=>clearTimeout(o)}),[A,T]),/*#__PURE__*/o(n,A||T?{children:[/*#__PURE__*/t(u,{onClose:P}),/*#__PURE__*/t(l,{}),/*#__PURE__*/o(h,{children:[T?/*#__PURE__*/t(r,{stroke:"var(--privy-color-error)",width:"64px",height:"64px"}):/*#__PURE__*/t(e,{stroke:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/t(j,{height:20}),/*#__PURE__*/t(g,{title:T?"Something went wrong":"Success!",description:T?"Please try again.":"You've successfully revoked permissions."})]}),/*#__PURE__*/t(d,{}),/*#__PURE__*/t(f,{})]}:{children:[/*#__PURE__*/t(u,{closeable:!0,onClose:P}),/*#__PURE__*/t(i,{width:56,height:56,style:{margin:"auto"}}),/*#__PURE__*/t(x,{style:{marginTop:24},children:"Revoke offline access to wallet"}),/*#__PURE__*/o(C,{children:["By confirming, ",m.name," will no longer be able to use this wallet on your behalf when you are not online."]}),/*#__PURE__*/o(S,{style:{marginTop:24},children:[/*#__PURE__*/t(a,{onClick:P,children:"Deny"}),/*#__PURE__*/t(p,{onClick:async()=>{try{await B(),M(!0)}catch(o){z(o)}},children:"Confirm"})]}),/*#__PURE__*/t(f,{})]})};let S=/*#__PURE__*/m.div.withConfig({displayName:"ButtonsContainer",componentId:"sc-8ff214d7-0"})(["display:flex;gap:10px;"]);export{b as DelegatedActionsRevokeScreen};
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as t,jsx as n}from"react/jsx-runtime";import r from"@heroicons/react/24/solid/CheckCircleIcon";import{useEffect as s}from"react";import{getPrivyEthereumWallet as i}from"../client/user.mjs";import{RefactorSpacerTop as e,CenteredItemWithGap as c,RefactorSpacerBottom as m}from"../components/Layouts.mjs";import{BlobbyFooter as a}from"../components/ModalFooter.mjs";import{ModalHeader as p}from"../components/ModalHeader.mjs";import{CenteredScreenHeader as l}from"../components/ScreenHeader.mjs";import{DEFAULT_SUCCESS_SCREEN_LONG_DURATION_MS as h}from"../constants.mjs";import{usePrivyInternal as j}from"../hooks/internal-context.mjs";import{usePrivyModal as u}from"../hooks/modal-context.mjs";import{usePrivyContext as d}from"../hooks/privy-context.mjs";import"viem/utils";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"../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 f=()=>{let{user:f}=d(),{closePrivyModal:y,isNewUserThisSession:g,updateWallets:x}=j(),{app:b,data:k,onUserCloseViaDialogOrKeybindRef:v}=u(),{onSuccess:C,onFailure:S,callAuthOnSuccessOnClose:A}=k.createWallet,w=()=>{let o=i(f);o?(x(),C(o)):S(Error("Failed to create wallet")),y({shouldCallAuthOnSuccess:A})};return s((()=>{let o=setTimeout(w,h);return()=>clearTimeout(o)}),[]),v.current=w,/*#__PURE__*/o(t,{children:[/*#__PURE__*/n(p,{onClose:w}),/*#__PURE__*/n(e,{}),/*#__PURE__*/o(c,{children:[/*#__PURE__*/n(r,{fill:"var(--privy-color-accent)",width:"64px",height:"64px"}),/*#__PURE__*/n(l,{title:g?"Welcome"+(b?.name?` to ${b?.name}`:""):"All set!",description:g?"You’ve successfully created an account.":"Your account is secured."})]}),/*#__PURE__*/n(m,{}),/*#__PURE__*/n(a,{})]})};export{f as EmbeddedWalletCreatedScreen};
1
+ import{jsxs as o,Fragment as t,jsx as n}from"react/jsx-runtime";import r from"@heroicons/react/24/solid/CheckCircleIcon";import{useEffect as s}from"react";import{getPrivyEthereumWallet as i}from"../client/user.mjs";import{RefactorSpacerTop as e,CenteredItemWithGap as c,RefactorSpacerBottom as m}from"../components/Layouts.mjs";import{BlobbyFooter as a}from"../components/ModalFooter.mjs";import{ModalHeader as p}from"../components/ModalHeader.mjs";import{CenteredScreenHeader as l}from"../components/ScreenHeader.mjs";import{DEFAULT_SUCCESS_SCREEN_LONG_DURATION_MS as h}from"../constants.mjs";import{usePrivyInternal as j}from"../hooks/internal-context.mjs";import{usePrivyModal as u}from"../hooks/modal-context.mjs";import{usePrivyContext as d}from"../hooks/privy-context.mjs";import"viem/utils";import"styled-components";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"../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"../hooks/index.mjs";import"../components/PrefetchedImage.mjs";import"./index.mjs";const f=()=>{let{user:f}=d(),{closePrivyModal:y,isNewUserThisSession:g,updateWallets:x}=j(),{app:b,data:k,onUserCloseViaDialogOrKeybindRef:v}=u(),{onSuccess:C,onFailure:S,callAuthOnSuccessOnClose:A}=k.createWallet,w=()=>{let o=i(f);o?(x(),C(o)):S(Error("Failed to create wallet")),y({shouldCallAuthOnSuccess:A})};return s((()=>{let o=setTimeout(w,h);return()=>clearTimeout(o)}),[]),v.current=w,/*#__PURE__*/o(t,{children:[/*#__PURE__*/n(p,{onClose:w}),/*#__PURE__*/n(e,{}),/*#__PURE__*/o(c,{children:[/*#__PURE__*/n(r,{fill:"var(--privy-color-accent)",width:"64px",height:"64px"}),/*#__PURE__*/n(l,{title:g?"Welcome"+(b?.name?` to ${b?.name}`:""):"All set!",description:g?"You’ve successfully created an account.":"Your account is secured."})]}),/*#__PURE__*/n(m,{}),/*#__PURE__*/n(a,{})]})};export{f as EmbeddedWalletCreatedScreen};
@@ -1,2 +1,2 @@
1
- import{jsxs as o,Fragment as e,jsx as t}from"react/jsx-runtime";import{useState as r,useEffect as n,useRef as i}from"react";import{styled as s}from"styled-components";import{BlobbyFooter as c}from"../components/ModalFooter.mjs";import{ModalHeader as a}from"../components/ModalHeader.mjs";import{WarningBanner as m}from"../components/ui/banners/WarningBanner.mjs";import{Subtitle as l}from"../components/ui/typography/Subtitle.mjs";import{Title as p}from"../components/ui/typography/Title.mjs";import{WalletInfoCard as d}from"../components/ui/wallet/WalletInfoCard.mjs";import{useAppConfig as h}from"../configuration/context.mjs";import{usePrivyInternal as u}from"../hooks/internal-context.mjs";import{usePrivyModal as g}from"../hooks/modal-context.mjs";import{usePrivyContext as y}from"../hooks/privy-context.mjs";import{constructURL as j}from"../utils/index.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"../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/ExclamationTriangleIcon";import"../components/ui/chips/Chip.mjs";import"../components/ui/animation/LoadingSkeleton.mjs";import"../components/ui/layout/Column.mjs";import"../components/ui/typography/ErrorMessage.mjs";import"../components/ui/typography/LabelXs.mjs";import"../components/ui/wallet/Address.mjs";import"@heroicons/react/24/outline/CheckIcon";import"@heroicons/react/24/outline/Square2StackIcon";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"../components/ui/wallet/shared.mjs";import"../components/PrefetchedImage.mjs";import"./index.mjs";const f=()=>{let[i,s]=r(null),{authenticated:j,user:f,getAccessToken:w}=y(),{closePrivyModal:x,createAnalyticsEvent:k,clientAnalyticsId:I}=u(),C=h(),{data:A,onUserCloseViaDialogOrKeybindRef:T}=g(),{onFailure:E,onSuccess:S,origin:P,appId:L,appClientId:V,walletToExport:M,primaryWallet:W}=A.keyExport,_=o=>{x({shouldCallAuthOnSuccess:!1}),E("string"==typeof o?Error(o):o)},z=()=>{x({shouldCallAuthOnSuccess:!1}),S(),k({eventName:"embedded_wallet_key_export_completed",payload:{walletAddress:M.address}})};return n((()=>{if(!j||!M)return _("User must be authenticated before exporting their wallet");w().then(s,_)}),[j,f]),T.current=z,/*#__PURE__*/o(e,{children:[/*#__PURE__*/t(a,{onClose:z}),/*#__PURE__*/o(v,{children:[/*#__PURE__*/t(p,{children:"Transfer wallet"}),/*#__PURE__*/o(l,{children:["Either copy your private key or seed phrase to transfer your wallet."," ",/*#__PURE__*/t("a",{href:"https://privy-io.notion.site/Transferring-your-account-9dab9e16c6034a7ab1ff7fa479b02828",target:"blank",rel:"noopener noreferrer",children:"Learn more"})]}),/*#__PURE__*/t(m,{theme:C.appearance.palette.colorScheme,children:"Never share your private key or seed phrase with anyone."}),/*#__PURE__*/t(d,{isLoading:!1,isPulsing:!1,title:"Your wallet",address:M.address,showIcon:!0}),/*#__PURE__*/t("div",{style:{width:"100%"},children:i&&/*#__PURE__*/t(b,{origin:P,appId:L,appClientId:V,accessToken:i,clientAnalyticsId:I,walletToExport:M,primaryWallet:W,dimensions:{height:"44px"}})})]}),/*#__PURE__*/t(c,{})]})};function b(e){let[s,c]=r(e.dimensions.width),[a,m]=r(void 0),l=i(null);n((()=>{if(l.current&&void 0===s){let{width:o}=l.current.getBoundingClientRect();c(o)}let o=getComputedStyle(document.documentElement);m({background:o.getPropertyValue("--privy-color-background"),background2:o.getPropertyValue("--privy-color-background-2"),foreground3:o.getPropertyValue("--privy-color-foreground-3"),foregroundAccent:o.getPropertyValue("--privy-color-foreground-accent"),accent:o.getPropertyValue("--privy-color-accent"),accentDark:o.getPropertyValue("--privy-color-accent-dark"),success:o.getPropertyValue("--privy-color-success")})}),[]);let p="ethereum"===e.walletToExport.chainType&&!e.walletToExport.imported;/*#__PURE__*/return t("div",{ref:l,children:s&&
1
+ import{jsxs as o,Fragment as e,jsx as t}from"react/jsx-runtime";import{useState as r,useEffect as n,useRef as i}from"react";import{styled as s}from"styled-components";import{BlobbyFooter as c}from"../components/ModalFooter.mjs";import{ModalHeader as a}from"../components/ModalHeader.mjs";import{WarningBanner as m}from"../components/ui/banners/WarningBanner.mjs";import{Subtitle as l}from"../components/ui/typography/Subtitle.mjs";import{Title as p}from"../components/ui/typography/Title.mjs";import{WalletInfoCard as d}from"../components/ui/wallet/WalletInfoCard.mjs";import{useAppConfig as h}from"../configuration/context.mjs";import{usePrivyInternal as u}from"../hooks/internal-context.mjs";import{usePrivyModal as g}from"../hooks/modal-context.mjs";import{usePrivyContext as y}from"../hooks/privy-context.mjs";import{constructURL as j}from"../utils/index.mjs";import"../svg/protected-by-privy.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"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"../hooks/index.mjs";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"../components/ui/chips/Chip.mjs";import"../components/ui/animation/LoadingSkeleton.mjs";import"../components/ui/layout/Column.mjs";import"../components/ui/typography/ErrorMessage.mjs";import"../components/ui/typography/LabelXs.mjs";import"../components/ui/wallet/Address.mjs";import"@heroicons/react/24/outline/CheckIcon";import"@heroicons/react/24/outline/Square2StackIcon";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"../components/ui/wallet/shared.mjs";import"../components/PrefetchedImage.mjs";import"./index.mjs";const f=()=>{let[i,s]=r(null),{authenticated:j,user:f,getAccessToken:w}=y(),{closePrivyModal:x,createAnalyticsEvent:k,clientAnalyticsId:I}=u(),C=h(),{data:A,onUserCloseViaDialogOrKeybindRef:T}=g(),{onFailure:E,onSuccess:S,origin:P,appId:L,appClientId:V,walletToExport:M,primaryWallet:W}=A.keyExport,_=o=>{x({shouldCallAuthOnSuccess:!1}),E("string"==typeof o?Error(o):o)},z=()=>{x({shouldCallAuthOnSuccess:!1}),S(),k({eventName:"embedded_wallet_key_export_completed",payload:{walletAddress:M.address}})};return n((()=>{if(!j||!M)return _("User must be authenticated before exporting their wallet");w().then(s,_)}),[j,f]),T.current=z,/*#__PURE__*/o(e,{children:[/*#__PURE__*/t(a,{onClose:z}),/*#__PURE__*/o(v,{children:[/*#__PURE__*/t(p,{children:"Transfer wallet"}),/*#__PURE__*/o(l,{children:["Either copy your private key or seed phrase to transfer your wallet."," ",/*#__PURE__*/t("a",{href:"https://privy-io.notion.site/Transferring-your-account-9dab9e16c6034a7ab1ff7fa479b02828",target:"blank",rel:"noopener noreferrer",children:"Learn more"})]}),/*#__PURE__*/t(m,{theme:C.appearance.palette.colorScheme,children:"Never share your private key or seed phrase with anyone."}),/*#__PURE__*/t(d,{isLoading:!1,isPulsing:!1,title:"Your wallet",address:M.address,showIcon:!0}),/*#__PURE__*/t("div",{style:{width:"100%"},children:i&&/*#__PURE__*/t(b,{origin:P,appId:L,appClientId:V,accessToken:i,clientAnalyticsId:I,walletToExport:M,primaryWallet:W,dimensions:{height:"44px"}})})]}),/*#__PURE__*/t(c,{})]})};function b(e){let[s,c]=r(e.dimensions.width),[a,m]=r(void 0),l=i(null);n((()=>{if(l.current&&void 0===s){let{width:o}=l.current.getBoundingClientRect();c(o)}let o=getComputedStyle(document.documentElement);m({background:o.getPropertyValue("--privy-color-background"),background2:o.getPropertyValue("--privy-color-background-2"),foreground3:o.getPropertyValue("--privy-color-foreground-3"),foregroundAccent:o.getPropertyValue("--privy-color-foreground-accent"),accent:o.getPropertyValue("--privy-color-accent"),accentDark:o.getPropertyValue("--privy-color-accent-dark"),success:o.getPropertyValue("--privy-color-success")})}),[]);let p="ethereum"===e.walletToExport.chainType&&!e.walletToExport.imported;/*#__PURE__*/return t("div",{ref:l,children:s&&
2
2
  /*#__PURE__*/o(w,{children:[/*#__PURE__*/t("iframe",{style:{position:"absolute",zIndex:1},width:s,height:e.dimensions.height,allow:"clipboard-write self *",src:j(e.origin,`/apps/${e.appId}/embedded-wallets/export`,{client_id:e.appClientId,primaryAddress:e.primaryWallet.address,address:e.walletToExport.address,walletIndex:e.walletToExport.walletIndex,width:`${s}px`,caid:e.clientAnalyticsId,phrase_export:p,...a},{token:e.accessToken})}),/*#__PURE__*/t(x,{children:"Loading..."}),p&&/*#__PURE__*/t(x,{children:"Loading..."})]})})}let v=/*#__PURE__*/s.div.withConfig({displayName:"EmbeddedWalletScreenContainer",componentId:"sc-eaab13a9-0"})(["display:flex;flex-direction:column;gap:1.25rem;text-align:left;"]),w=/*#__PURE__*/s.div.withConfig({displayName:"ButtonContainer",componentId:"sc-eaab13a9-1"})(["overflow:visible;position:relative;overflow:none;height:44px;display:flex;gap:12px;"]),x=/*#__PURE__*/s.div.withConfig({displayName:"LoadingButton",componentId:"sc-eaab13a9-2"})(["display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:16px;font-weight:500;border-radius:var(--privy-border-radius-md);background-color:var(--privy-color-background-2);color:var(--privy-color-foreground-3);"]);export{f as EmbeddedWalletKeyExportScreen};
@@ -1 +1 @@
1
- import{jsxs as o,Fragment as t,jsx as s}from"react/jsx-runtime";import{ModalScreen as n}from"./index.mjs";import r from"@heroicons/react/24/outline/UserCircleIcon";import i from"@heroicons/react/24/solid/LockClosedIcon";import{PrimaryButton as e}from"../components/Button.mjs";import{RefactorSpacerTop as c,CenteredItemWithGap as m,RelativeContainer as a,Circle as p,RefactorSpacerBottom as l}from"../components/Layouts.mjs";import{BlobbyFooter as h}from"../components/ModalFooter.mjs";import{ModalHeader as j}from"../components/ModalHeader.mjs";import{CenteredScreenHeader as d}from"../components/ScreenHeader.mjs";import{PrivyEmbeddedWalletError as u}from"../errors.mjs";import{usePrivyInternal as f}from"../hooks/internal-context.mjs";import{usePrivyModal as g}from"../hooks/modal-context.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"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"ofetch";import"../components/PrefetchedImage.mjs";const w=()=>{let{closePrivyModal:w}=f(),{data:y,setModalData:b,navigate:x,onUserCloseViaDialogOrKeybindRef:S}=g(),{onSuccess:k,onFailure:A}=y.setWalletPassword,C=()=>{A(new u("Exited before password was added to wallet")),w({shouldCallAuthOnSuccess:!1})};return S.current=C,/*#__PURE__*/o(t,{children:[/*#__PURE__*/s(j,{onClose:C}),/*#__PURE__*/s(c,{}),/*#__PURE__*/o(m,{children:[/*#__PURE__*/o(a,{children:[/*#__PURE__*/s(r,{stroke:"var(--privy-color-accent)",width:"64px",height:"64px"}),/*#__PURE__*/s(p,{style:{width:24,height:24,position:"absolute",bottom:0,right:0},children:/*#__PURE__*/s(i,{width:"12px",height:"12px",fill:"white"})})]}),/*#__PURE__*/o(d,{title:"Secure Your Account",children:["Please set a password to secure your account.",/*#__PURE__*/s("p",{children:"Losing access to this password and this device will make your account inaccessible."})]})]}),/*#__PURE__*/s(e,{onClick:()=>{b({createWallet:{onFailure:A,onSuccess:k,callAuthOnSuccessOnClose:!1,addPasswordToExistingWallet:!0}}),x(n.EMBEDDED_WALLET_PASSWORD_UPDATE_SCREEN)},children:"Add password"}),/*#__PURE__*/s(l,{}),/*#__PURE__*/s(h,{})]})};export{w as EmbeddedWalletPasswordUpdateSplashScreen};
1
+ import{jsxs as o,Fragment as t,jsx as s}from"react/jsx-runtime";import{ModalScreen as n}from"./index.mjs";import r from"@heroicons/react/24/outline/UserCircleIcon";import i from"@heroicons/react/24/solid/LockClosedIcon";import{PrimaryButton as e}from"../components/Button.mjs";import{RefactorSpacerTop as c,CenteredItemWithGap as m,RelativeContainer as a,Circle as p,RefactorSpacerBottom as l}from"../components/Layouts.mjs";import{BlobbyFooter as h}from"../components/ModalFooter.mjs";import{ModalHeader as j}from"../components/ModalHeader.mjs";import{CenteredScreenHeader as d}from"../components/ScreenHeader.mjs";import{PrivyEmbeddedWalletError as u}from"../errors.mjs";import{usePrivyInternal as f}from"../hooks/internal-context.mjs";import{usePrivyModal as g}from"../hooks/modal-context.mjs";import"styled-components";import"../components/Loader.mjs";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"../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"../hooks/index.mjs";import"ofetch";import"../components/PrefetchedImage.mjs";const w=()=>{let{closePrivyModal:w}=f(),{data:y,setModalData:b,navigate:x,onUserCloseViaDialogOrKeybindRef:S}=g(),{onSuccess:k,onFailure:A}=y.setWalletPassword,C=()=>{A(new u("Exited before password was added to wallet")),w({shouldCallAuthOnSuccess:!1})};return S.current=C,/*#__PURE__*/o(t,{children:[/*#__PURE__*/s(j,{onClose:C}),/*#__PURE__*/s(c,{}),/*#__PURE__*/o(m,{children:[/*#__PURE__*/o(a,{children:[/*#__PURE__*/s(r,{stroke:"var(--privy-color-accent)",width:"64px",height:"64px"}),/*#__PURE__*/s(p,{style:{width:24,height:24,position:"absolute",bottom:0,right:0},children:/*#__PURE__*/s(i,{width:"12px",height:"12px",fill:"white"})})]}),/*#__PURE__*/o(d,{title:"Secure Your Account",children:["Please set a password to secure your account.",/*#__PURE__*/s("p",{children:"Losing access to this password and this device will make your account inaccessible."})]})]}),/*#__PURE__*/s(e,{onClick:()=>{b({createWallet:{onFailure:A,onSuccess:k,callAuthOnSuccessOnClose:!1,addPasswordToExistingWallet:!0}}),x(n.EMBEDDED_WALLET_PASSWORD_UPDATE_SCREEN)},children:"Add password"}),/*#__PURE__*/s(l,{}),/*#__PURE__*/s(h,{})]})};export{w as EmbeddedWalletPasswordUpdateSplashScreen};
@@ -1,2 +1,2 @@
1
- import{jsxs as e,Fragment as o,jsx as t}from"react/jsx-runtime";import{ModalScreen as r}from"./index.mjs";import{useState as n,useRef as i,useEffect as s}from"react";import{isMobile as a,isIOS as c}from"react-device-detect";import{styled as m}from"styled-components";import{shouldProceedtoEmbeddedWalletCreationFlow as l}from"../client/user.mjs";import{PrimaryButton as p}from"../components/Button.mjs";import{CopytoClipboardButton as d}from"../components/CopyToClipboard.mjs";import{RefactorSpacerTop as h,FixedGappedContainer as u,CenteredItem as j,CenteredItemWithPadding as f}from"../components/Layouts.mjs";import{ConnectionLoader as g,Loader as E}from"../components/Loader.mjs";import{ModalFooter as y}from"../components/ModalFooter.mjs";import{ModalHeader as C}from"../components/ModalHeader.mjs";import{OpenLinkButton as v}from"../components/OpenLink.mjs";import{QrCode as T}from"../components/QrCode.mjs";import S from"../components/layout/StackedContainer.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as _}from"../constants.mjs";import{PrivyErrorCode as A,PrivyUserLimitReachedError as N}from"../errors.mjs";import{usePrivyInternal as b}from"../hooks/internal-context.mjs";import{usePrivyModal as I}from"../hooks/modal-context.mjs";import{usePrivyContext as w}from"../hooks/privy-context.mjs";import{Farcaster as x}from"../svg/farcaster.mjs";import{Title as R,SubTitle as k}from"./MfaScreens/StyledComponents.mjs";import"viem/utils";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"../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"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"../utils/eth/getPublicClient.mjs";import"viem";import"ofetch";import"../components/PrefetchedImage.mjs";let O="#8a63d2";const L=()=>{let{authenticated:m,logout:L,ready:U,user:M}=w(),{lastScreen:W,navigate:q,navigateBack:H,setModalData:z,app:B}=I(),{getAuthFlow:P,loginWithFarcaster:Q,closePrivyModal:J,createAnalyticsEvent:K}=b(),[V,X]=n(void 0),[Y,G]=n(!1),[Z,$]=n(!1),ee=i([]),oe=P(),te=oe?.meta.connectUri;return s((()=>{let e=Date.now(),o=setInterval((async()=>{let t=await oe.pollForReady.execute(),n=Date.now()-e;if(t){clearInterval(o),G(!0);try{await Q(),$(!0)}catch(e){let o={retryable:!1,message:"Authentication failed"};if(e?.privyErrorCode===A.ALLOWLIST_REJECTED)return void q(r.ALLOWLIST_REJECTION_SCREEN);if(e?.privyErrorCode===A.USER_LIMIT_REACHED)return console.error(new N(e).toString()),void q(r.USER_LIMIT_REACHED_SCREEN);if(e?.privyErrorCode===A.USER_DOES_NOT_EXIST)return void q(r.ACCOUNT_NOT_FOUND_SCREEN);if(e?.privyErrorCode===A.LINKED_TO_ANOTHER_USER)o.detail=e.message??"This account has already been linked to another user.";else{if(e?.privyErrorCode===A.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return z({accountTransfer:{nonce:e.data?.data?.nonce,account:e.data?.data?.subject,displayName:e.data?.data?.account?.displayName,linkMethod:"farcaster",embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress,farcasterEmbeddedAddress:e.data?.data?.otherUser?.farcasterEmbeddedAddress}}),void q(r.LINK_CONFLICT_SCREEN);e?.privyErrorCode===A.INVALID_CREDENTIALS?(o.retryable=!0,o.detail="Something went wrong. Try again."):e?.privyErrorCode===A.TOO_MANY_REQUESTS&&(o.detail="Too many requests. Please wait before trying again.")}X(o)}}else n>12e4&&(clearInterval(o),X({retryable:!0,message:"Authentication failed",detail:"The request timed out. Try again."}))}),2e3);return()=>{clearInterval(o),ee.current.forEach((e=>clearTimeout(e)))}}),[]),s((()=>{if(U&&m&&Z&&M){if(B?.legal.requireUsersAcceptTerms&&!M.hasAcceptedTerms){let e=setTimeout((()=>{q(r.AFFIRMATIVE_CONSENT_SCREEN)}),_);return()=>clearTimeout(e)}Z&&(l(M,B?.embeddedWallets.createOnLogin)?ee.current.push(setTimeout((()=>{z({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),K({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,screen:"FarcasterConnectStatusScreen"}}),L()},callAuthOnSuccessOnClose:!0}}),q(r.EMBEDDED_WALLET_ON_ACCOUNT_CREATE_SCREEN)}),_)):ee.current.push(setTimeout((()=>J({shouldCallAuthOnSuccess:!0,isSuccess:!0})),_)))}}),[Z,U,m,M]),/*#__PURE__*/e(o,a||Y?{children:[/*#__PURE__*/t(C,{backFn:W?H:void 0,onClose:J},"header"),/*#__PURE__*/t(h,{}),
1
+ import{jsxs as e,Fragment as o,jsx as t}from"react/jsx-runtime";import{ModalScreen as r}from"./index.mjs";import{useState as n,useRef as i,useEffect as s}from"react";import{isMobile as a,isIOS as c}from"react-device-detect";import{styled as m}from"styled-components";import{shouldProceedtoEmbeddedWalletCreationFlow as l}from"../client/user.mjs";import{PrimaryButton as p}from"../components/Button.mjs";import{CopytoClipboardButton as d}from"../components/CopyToClipboard.mjs";import{RefactorSpacerTop as h,FixedGappedContainer as u,CenteredItem as j,CenteredItemWithPadding as f}from"../components/Layouts.mjs";import{ConnectionLoader as g,Loader as E}from"../components/Loader.mjs";import{ModalFooter as y}from"../components/ModalFooter.mjs";import{ModalHeader as C}from"../components/ModalHeader.mjs";import{OpenLinkButton as v}from"../components/OpenLink.mjs";import{QrCode as T}from"../components/QrCode.mjs";import S from"../components/layout/StackedContainer.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as _}from"../constants.mjs";import{PrivyErrorCode as A,PrivyUserLimitReachedError as N}from"../errors.mjs";import{usePrivyInternal as b}from"../hooks/internal-context.mjs";import{usePrivyModal as I}from"../hooks/modal-context.mjs";import{usePrivyContext as w}from"../hooks/privy-context.mjs";import{Farcaster as x}from"../svg/farcaster.mjs";import{Title as R,SubTitle as k}from"./MfaScreens/StyledComponents.mjs";import"viem/utils";import"../svg/checkmark.mjs";import"../svg/copy.mjs";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"../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"../hooks/index.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"../utils/eth/getPublicClient.mjs";import"viem";import"ofetch";import"../components/PrefetchedImage.mjs";let O="#8a63d2";const L=()=>{let{authenticated:m,logout:L,ready:U,user:M}=w(),{lastScreen:W,navigate:q,navigateBack:H,setModalData:z,app:B}=I(),{getAuthFlow:P,loginWithFarcaster:Q,closePrivyModal:J,createAnalyticsEvent:K}=b(),[V,X]=n(void 0),[Y,G]=n(!1),[Z,$]=n(!1),ee=i([]),oe=P(),te=oe?.meta.connectUri;return s((()=>{let e=Date.now(),o=setInterval((async()=>{let t=await oe.pollForReady.execute(),n=Date.now()-e;if(t){clearInterval(o),G(!0);try{await Q(),$(!0)}catch(e){let o={retryable:!1,message:"Authentication failed"};if(e?.privyErrorCode===A.ALLOWLIST_REJECTED)return void q(r.ALLOWLIST_REJECTION_SCREEN);if(e?.privyErrorCode===A.USER_LIMIT_REACHED)return console.error(new N(e).toString()),void q(r.USER_LIMIT_REACHED_SCREEN);if(e?.privyErrorCode===A.USER_DOES_NOT_EXIST)return void q(r.ACCOUNT_NOT_FOUND_SCREEN);if(e?.privyErrorCode===A.LINKED_TO_ANOTHER_USER)o.detail=e.message??"This account has already been linked to another user.";else{if(e?.privyErrorCode===A.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return z({accountTransfer:{nonce:e.data?.data?.nonce,account:e.data?.data?.subject,displayName:e.data?.data?.account?.displayName,linkMethod:"farcaster",embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress,farcasterEmbeddedAddress:e.data?.data?.otherUser?.farcasterEmbeddedAddress}}),void q(r.LINK_CONFLICT_SCREEN);e?.privyErrorCode===A.INVALID_CREDENTIALS?(o.retryable=!0,o.detail="Something went wrong. Try again."):e?.privyErrorCode===A.TOO_MANY_REQUESTS&&(o.detail="Too many requests. Please wait before trying again.")}X(o)}}else n>12e4&&(clearInterval(o),X({retryable:!0,message:"Authentication failed",detail:"The request timed out. Try again."}))}),2e3);return()=>{clearInterval(o),ee.current.forEach((e=>clearTimeout(e)))}}),[]),s((()=>{if(U&&m&&Z&&M){if(B?.legal.requireUsersAcceptTerms&&!M.hasAcceptedTerms){let e=setTimeout((()=>{q(r.AFFIRMATIVE_CONSENT_SCREEN)}),_);return()=>clearTimeout(e)}Z&&(l(M,B?.embeddedWallets.createOnLogin)?ee.current.push(setTimeout((()=>{z({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),K({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,screen:"FarcasterConnectStatusScreen"}}),L()},callAuthOnSuccessOnClose:!0}}),q(r.EMBEDDED_WALLET_ON_ACCOUNT_CREATE_SCREEN)}),_)):ee.current.push(setTimeout((()=>J({shouldCallAuthOnSuccess:!0,isSuccess:!0})),_)))}}),[Z,U,m,M]),/*#__PURE__*/e(o,a||Y?{children:[/*#__PURE__*/t(C,{backFn:W?H:void 0,onClose:J},"header"),/*#__PURE__*/t(h,{}),
2
2
  /*#__PURE__*/t(o,c?{children:/*#__PURE__*/e(D,{children:[/*#__PURE__*/t(S,{children:/*#__PURE__*/e("div",{children:[/*#__PURE__*/t(g,{success:Z,fail:!!V}),/*#__PURE__*/t(x,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/e(u,{children:[/*#__PURE__*/t(R,{children:V?V.message:"Sign in with Farcaster"}),/*#__PURE__*/t(k,{children:V?V.detail:"To sign in with Farcaster, please open the Warpcast app."})]}),te&&/*#__PURE__*/t(p,{onClick:e=>{e.preventDefault(),window.location.href=te},children:"Open Warpcast app"})]})}:{children:/*#__PURE__*/e(F,{children:[/*#__PURE__*/t(S,{children:/*#__PURE__*/e("div",{children:[/*#__PURE__*/t(g,{success:Z,fail:!!V}),/*#__PURE__*/t(x,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/e(u,{children:[/*#__PURE__*/t(R,{children:V?V.message:"Signing in with Farcaster"}),/*#__PURE__*/t(k,{children:V?V.detail:"This should only take a moment"}),/*#__PURE__*/t(j,{children:te&&a&&/*#__PURE__*/t(v,{text:"Take me to Warpcast",url:te,color:O})})]})]})}),/*#__PURE__*/t(y,{})]}:{children:[/*#__PURE__*/t(C,{backFn:W?H:void 0,onClose:J},"header"),/*#__PURE__*/t(h,{}),/*#__PURE__*/t(F,{children:/*#__PURE__*/e("div",{children:[/*#__PURE__*/t(R,{children:"Sign in with Farcaster"}),/*#__PURE__*/t(k,{children:"Scan with your phone's camera to continue."}),/*#__PURE__*/t(f,{children:te?/*#__PURE__*/t(T,{url:te,size:275,squareLogoElement:x}):/*#__PURE__*/t(E,{})}),/*#__PURE__*/e(j,{children:[/*#__PURE__*/t(k,{children:"Or copy this link and paste it into a phone browser to open the Warpcast app."}),te&&/*#__PURE__*/t(d,{text:te,itemName:"link",color:O})]})]})}),/*#__PURE__*/t(y,{})]})};let F=/*#__PURE__*/m.div.withConfig({displayName:"ConnectContainer",componentId:"sc-5a361367-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;margin-left:27px;margin-right:27px;gap:24px;"]),D=/*#__PURE__*/m.div.withConfig({displayName:"ConnectContainerButton",componentId:"sc-5a361367-1"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;width:100%;"]);export{L as FarcasterConnectStatusScreen};
@@ -1,2 +1,2 @@
1
- import{jsxs as e,Fragment as o,jsx as t}from"react/jsx-runtime";import{useState as r,useRef as n,useEffect as i}from"react";import{isMobile as s,isIOS as c}from"react-device-detect";import{styled as a}from"styled-components";import{PrimaryButton as m}from"../components/Button.mjs";import{CopytoClipboardButton as l}from"../components/CopyToClipboard.mjs";import{RefactorSpacerTop as p,FixedGappedContainer as d,CenteredItem as h,CenteredItemWithPadding as u}from"../components/Layouts.mjs";import{ConnectionLoader as j,Loader as f}from"../components/Loader.mjs";import{ModalFooter as g}from"../components/ModalFooter.mjs";import{ModalHeader as v}from"../components/ModalHeader.mjs";import{OpenLinkButton as y}from"../components/OpenLink.mjs";import{QrCode as k}from"../components/QrCode.mjs";import w from"../components/layout/StackedContainer.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as x}from"../constants.mjs";import{usePrivyInternal as b}from"../hooks/internal-context.mjs";import{usePrivyModal as C}from"../hooks/modal-context.mjs";import{Farcaster as S}from"../svg/farcaster.mjs";import{Title as I,SubTitle as T}from"./MfaScreens/StyledComponents.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"../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"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"../components/PrefetchedImage.mjs";import"./index.mjs";let _="#8a63d2";const A=()=>{let{lastScreen:a,navigateBack:A,data:M,app:L}=C(),{requestFarcasterSignerStatus:O,closePrivyModal:P}=b(),[z,B]=r(void 0),[D,N]=r(!1),[R,W]=r(!1),E=n([]),H=M?.farcasterSigner;i((()=>{let e=Date.now(),o=setInterval((async()=>{if(!H?.public_key)return clearInterval(o),void B({retryable:!0,message:"Connect failed",detail:"Something went wrong. Please try again."});"approved"===H.status&&(clearInterval(o),N(!1),W(!0),E.current.push(setTimeout((()=>P({shouldCallAuthOnSuccess:!1,isSuccess:!0})),x)));let t=await O(H?.public_key),r=Date.now()-e;"approved"===t.status?(clearInterval(o),N(!1),W(!0),E.current.push(setTimeout((()=>P({shouldCallAuthOnSuccess:!1,isSuccess:!0})),x))):r>3e5?(clearInterval(o),B({retryable:!0,message:"Connect failed",detail:"The request timed out. Try again."})):"revoked"===t.status&&(clearInterval(o),B({retryable:!0,message:"Request rejected",detail:"The request was rejected. Please try again."}))}),2e3);return()=>{clearInterval(o),E.current.forEach((e=>clearTimeout(e)))}}),[]);let Q="pending_approval"===H?.status?H.signer_approval_url:void 0;/*#__PURE__*/return e(o,s||D?{children:[/*#__PURE__*/t(v,{backFn:a?A:void 0,onClose:P},"header"),/*#__PURE__*/t(p,{}),
1
+ import{jsxs as e,Fragment as o,jsx as t}from"react/jsx-runtime";import{useState as r,useRef as n,useEffect as i}from"react";import{isMobile as s,isIOS as c}from"react-device-detect";import{styled as a}from"styled-components";import{PrimaryButton as m}from"../components/Button.mjs";import{CopytoClipboardButton as l}from"../components/CopyToClipboard.mjs";import{RefactorSpacerTop as p,FixedGappedContainer as d,CenteredItem as h,CenteredItemWithPadding as u}from"../components/Layouts.mjs";import{ConnectionLoader as j,Loader as f}from"../components/Loader.mjs";import{ModalFooter as g}from"../components/ModalFooter.mjs";import{ModalHeader as v}from"../components/ModalHeader.mjs";import{OpenLinkButton as y}from"../components/OpenLink.mjs";import{QrCode as k}from"../components/QrCode.mjs";import w from"../components/layout/StackedContainer.mjs";import{DEFAULT_SUCCESS_SCREEN_DURATION_MS as x}from"../constants.mjs";import{usePrivyInternal as b}from"../hooks/internal-context.mjs";import{usePrivyModal as C}from"../hooks/modal-context.mjs";import{Farcaster as S}from"../svg/farcaster.mjs";import{Title as I,SubTitle as T}from"./MfaScreens/StyledComponents.mjs";import"../svg/checkmark.mjs";import"../svg/copy.mjs";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"../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"../hooks/index.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"../components/PrefetchedImage.mjs";import"./index.mjs";let _="#8a63d2";const A=()=>{let{lastScreen:a,navigateBack:A,data:M,app:L}=C(),{requestFarcasterSignerStatus:O,closePrivyModal:P}=b(),[z,B]=r(void 0),[D,N]=r(!1),[R,W]=r(!1),E=n([]),H=M?.farcasterSigner;i((()=>{let e=Date.now(),o=setInterval((async()=>{if(!H?.public_key)return clearInterval(o),void B({retryable:!0,message:"Connect failed",detail:"Something went wrong. Please try again."});"approved"===H.status&&(clearInterval(o),N(!1),W(!0),E.current.push(setTimeout((()=>P({shouldCallAuthOnSuccess:!1,isSuccess:!0})),x)));let t=await O(H?.public_key),r=Date.now()-e;"approved"===t.status?(clearInterval(o),N(!1),W(!0),E.current.push(setTimeout((()=>P({shouldCallAuthOnSuccess:!1,isSuccess:!0})),x))):r>3e5?(clearInterval(o),B({retryable:!0,message:"Connect failed",detail:"The request timed out. Try again."})):"revoked"===t.status&&(clearInterval(o),B({retryable:!0,message:"Request rejected",detail:"The request was rejected. Please try again."}))}),2e3);return()=>{clearInterval(o),E.current.forEach((e=>clearTimeout(e)))}}),[]);let Q="pending_approval"===H?.status?H.signer_approval_url:void 0;/*#__PURE__*/return e(o,s||D?{children:[/*#__PURE__*/t(v,{backFn:a?A:void 0,onClose:P},"header"),/*#__PURE__*/t(p,{}),
2
2
  /*#__PURE__*/t(o,c?{children:/*#__PURE__*/e(F,{children:[/*#__PURE__*/t(w,{children:/*#__PURE__*/e("div",{children:[/*#__PURE__*/t(j,{success:R,fail:!!z}),/*#__PURE__*/t(S,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/e(d,{children:[/*#__PURE__*/t(I,{children:z?z.message:"Add a signer to Farcaster"}),/*#__PURE__*/t(T,{children:z?z.detail:"This will allow "+L.name+" to add casts, likes, follows, and more on your behalf."})]}),Q&&/*#__PURE__*/t(m,{onClick:e=>{e.preventDefault(),window.location.href=Q},children:"Open Warpcast app"})]})}:{children:/*#__PURE__*/e(q,{children:[/*#__PURE__*/t(w,{children:/*#__PURE__*/e("div",{children:[/*#__PURE__*/t(j,{success:R,fail:!!z}),/*#__PURE__*/t(S,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/e(d,{children:[/*#__PURE__*/t(I,{children:z?z.message:"Requesting signer from Farcaster"}),/*#__PURE__*/t(T,{children:z?z.detail:"This should only take a moment"}),/*#__PURE__*/t(h,{children:Q&&s&&/*#__PURE__*/t(y,{text:"Take me to Warpcast",url:Q,color:_})})]})]})}),/*#__PURE__*/t(g,{})]}:{children:[/*#__PURE__*/t(v,{backFn:a?A:void 0,onClose:P},"header"),/*#__PURE__*/t(p,{}),/*#__PURE__*/t(q,{children:/*#__PURE__*/e("div",{children:[/*#__PURE__*/t(I,{children:"Add a signer to Farcaster"}),/*#__PURE__*/e(T,{children:["This will allow ",L.name," to add casts, likes, follows, and more on your behalf."]}),/*#__PURE__*/t(u,{children:"pending_approval"===H?.status?/*#__PURE__*/t(k,{url:H.signer_approval_url,size:275,squareLogoElement:S}):/*#__PURE__*/t(f,{})}),/*#__PURE__*/e(h,{children:[/*#__PURE__*/t(T,{children:"Or copy this link and paste it into a phone browser to open the Warpcast app."}),"pending_approval"===H?.status&&/*#__PURE__*/t(l,{text:H.signer_approval_url,itemName:"link",color:_})]})]})}),/*#__PURE__*/t(g,{})]})};let q=/*#__PURE__*/a.div.withConfig({displayName:"ConnectContainer",componentId:"sc-6e2c96cd-0"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;margin-left:27px;margin-right:27px;gap:24px;"]),F=/*#__PURE__*/a.div.withConfig({displayName:"ConnectContainerButton",componentId:"sc-6e2c96cd-1"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;width:100%;"]);export{A as FarcasterSignerStatusScreen};