@privy-io/react-auth 2.0.1 → 2.0.2-beta-20250113205957
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/client.js +1 -1
- package/dist/cjs/components/ModalFooter.js +2 -2
- package/dist/cjs/components/embedded-wallets/SetWalletPasswordForm/ConfimWalletPasswordForm.js +1 -1
- package/dist/cjs/components/embedded-wallets/SetWalletPasswordForm/ConfimWalletPasswordSaved.js +1 -1
- package/dist/cjs/components/embedded-wallets/SetWalletPasswordForm/CreateWalletPassword.js +1 -1
- package/dist/cjs/components/embedded-wallets/SetWalletPasswordForm/SaveWalletPassword.js +1 -1
- package/dist/cjs/components/embedded-wallets/SetWalletPasswordForm/SetWalletPasswordComplete.js +1 -1
- package/dist/cjs/config.js +1 -1
- package/dist/cjs/connectors/embeddedProvider.js +1 -1
- package/dist/cjs/connectors/index.js +1 -1
- package/dist/cjs/constants.js +1 -1
- package/dist/cjs/embedded-wallets/solana/provider.js +1 -1
- package/dist/cjs/hooks/privy-provider.js +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/privy-components/user-pill/UserMenu.js +1 -1
- package/dist/cjs/privy-provider-D7-K5Evv.js +3 -0
- package/dist/cjs/screens/AccountTransferScreen/EmbeddedWalletInfoView.js +1 -1
- package/dist/cjs/screens/AccountTransferScreen/LinkConflictScreen.js +1 -1
- package/dist/cjs/screens/AffirmativeConsentScreen.js +1 -1
- package/dist/cjs/screens/AwaitingPasswordlessCodeScreen.js +1 -1
- package/dist/cjs/screens/CaptchaScreen.js +1 -1
- package/dist/cjs/screens/ConnectOnlyAuthenticatedScreen.js +1 -1
- package/dist/cjs/screens/ConnectOnlyLandingScreen.js +1 -1
- package/dist/cjs/screens/ConnectOnlyStatusScreen.js +1 -1
- package/dist/cjs/screens/ConnectionStatusScreen.js +1 -1
- package/dist/cjs/screens/CrossAppAuthScreen.js +1 -1
- package/dist/cjs/screens/DelegatedActionsConsentScreen.js +1 -1
- package/dist/cjs/screens/DelegatedActionsRevokeScreen.js +1 -1
- package/dist/cjs/screens/EmbeddedWalletCreatedScreen.js +1 -1
- package/dist/cjs/screens/EmbeddedWalletKeyExportScreen.js +1 -1
- package/dist/cjs/screens/EmbeddedWalletPasswordUpdateSplashScreen.js +1 -1
- package/dist/cjs/screens/FarcasterConnectStatusScreen.js +1 -1
- package/dist/cjs/screens/FarcasterSignerStatusScreen.js +1 -1
- package/dist/cjs/screens/Funding/AwaitingEvmToSolBridgingScreen.js +1 -1
- package/dist/cjs/screens/Funding/AwaitingExternalSolanaTransferScreen.js +1 -1
- package/dist/cjs/screens/Funding/AwaitingExternalTransferScreen.js +1 -1
- package/dist/cjs/screens/Funding/AwaitingSolToEvmBridgingScreen.js +1 -1
- package/dist/cjs/screens/Funding/BridgeNetworkSelectionView.js +1 -1
- package/dist/cjs/screens/Funding/CoinbaseOnrampStatusScreen.js +1 -1
- package/dist/cjs/screens/Funding/FundingEditAmountScreen.js +1 -1
- package/dist/cjs/screens/Funding/FundingMethodSelectionScreen.js +1 -1
- package/dist/cjs/screens/Funding/ManualTransferScreen.js +1 -1
- package/dist/cjs/screens/Funding/MoonpayStatusScreen.js +1 -1
- package/dist/cjs/screens/Funding/TransferFromWalletScreen.js +1 -1
- package/dist/cjs/screens/Funding/TransferOrBridgeLoadingScreen.js +1 -1
- package/dist/cjs/screens/Funding/styles.js +1 -1
- package/dist/cjs/screens/InAppBrowserLoginNotPossible.js +1 -1
- package/dist/cjs/screens/InstallPhantomScreen.js +1 -1
- package/dist/cjs/screens/LandingScreen/CustomLandingScreenView.js +1 -1
- package/dist/cjs/screens/LandingScreen/LandingScreenView.js +1 -1
- package/dist/cjs/screens/LinkPasskeyScreen.js +1 -1
- package/dist/cjs/screens/LinkWalletScreen.js +1 -1
- package/dist/cjs/screens/LoginFailedScreen.js +1 -1
- package/dist/cjs/screens/MfaScreens/EnrollLandingScreen.js +1 -1
- package/dist/cjs/screens/MfaScreens/EnrollPasskey.js +1 -1
- package/dist/cjs/screens/MfaScreens/EnrollTotp.js +1 -1
- package/dist/cjs/screens/MfaScreens/MfaEnrollmentFlowScreen.js +1 -1
- package/dist/cjs/screens/MfaScreens/MfaVerifyFlowScreen.js +1 -1
- package/dist/cjs/screens/MfaScreens/VerifyWithPasskey.js +1 -1
- package/dist/cjs/screens/OAuthStatusScreen.js +1 -1
- package/dist/cjs/screens/PasskeySelectSignupOrLogin.js +1 -1
- package/dist/cjs/screens/PasskeyStatusScreen.js +1 -1
- package/dist/cjs/screens/PhantomInterstitialScreen.js +1 -1
- package/dist/cjs/screens/Recovery/PasswordRecoveryScreen.js +1 -1
- package/dist/cjs/screens/Recovery/RecoveryOAuthStatusScreen.js +1 -1
- package/dist/cjs/screens/Recovery/RecoverySelectionScreen.js +1 -1
- package/dist/cjs/screens/Recovery/SetAutomaticRecoveryScreen.js +1 -1
- package/dist/cjs/screens/SendSolanaTransactionScreen/SolanaTransactionReceiptView.js +1 -1
- package/dist/cjs/screens/SendTransactionScreen/SendTransactionScreenView.js +1 -1
- package/dist/cjs/screens/SendTransactionScreen/TransactionErrorView.js +1 -1
- package/dist/cjs/screens/SendTransactionScreen/TransactionReceiptView.js +1 -1
- package/dist/cjs/screens/SignRequestScreen.js +1 -1
- package/dist/cjs/screens/TelegramAuthScreen.js +1 -1
- package/dist/cjs/screens/UpdateEmailScreen.js +1 -1
- package/dist/cjs/screens/UserLimitReachedScreen.js +1 -1
- package/dist/esm/client.mjs +1 -1
- package/dist/esm/components/ModalFooter.mjs +2 -2
- package/dist/esm/components/embedded-wallets/SetWalletPasswordForm/ConfimWalletPasswordForm.mjs +1 -1
- package/dist/esm/components/embedded-wallets/SetWalletPasswordForm/ConfimWalletPasswordSaved.mjs +1 -1
- package/dist/esm/components/embedded-wallets/SetWalletPasswordForm/CreateWalletPassword.mjs +1 -1
- package/dist/esm/components/embedded-wallets/SetWalletPasswordForm/SaveWalletPassword.mjs +1 -1
- package/dist/esm/components/embedded-wallets/SetWalletPasswordForm/SetWalletPasswordComplete.mjs +1 -1
- package/dist/esm/config.mjs +1 -1
- package/dist/esm/connectors/embeddedProvider.mjs +1 -1
- package/dist/esm/connectors/index.mjs +1 -1
- package/dist/esm/constants.mjs +1 -1
- package/dist/esm/embedded-wallets/solana/provider.mjs +1 -1
- package/dist/esm/hooks/privy-provider.mjs +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/privy-components/user-pill/UserMenu.mjs +1 -1
- package/dist/esm/{privy-provider-B3m8Pe2u.mjs → privy-provider-BJjKUtkR.mjs} +2 -2
- package/dist/esm/screens/AccountTransferScreen/EmbeddedWalletInfoView.mjs +1 -1
- package/dist/esm/screens/AccountTransferScreen/LinkConflictScreen.mjs +1 -1
- package/dist/esm/screens/AffirmativeConsentScreen.mjs +1 -1
- package/dist/esm/screens/AwaitingPasswordlessCodeScreen.mjs +1 -1
- package/dist/esm/screens/CaptchaScreen.mjs +1 -1
- package/dist/esm/screens/ConnectOnlyAuthenticatedScreen.mjs +1 -1
- package/dist/esm/screens/ConnectOnlyLandingScreen.mjs +1 -1
- package/dist/esm/screens/ConnectOnlyStatusScreen.mjs +1 -1
- package/dist/esm/screens/ConnectionStatusScreen.mjs +1 -1
- package/dist/esm/screens/CrossAppAuthScreen.mjs +1 -1
- package/dist/esm/screens/DelegatedActionsConsentScreen.mjs +1 -1
- package/dist/esm/screens/DelegatedActionsRevokeScreen.mjs +1 -1
- package/dist/esm/screens/EmbeddedWalletCreatedScreen.mjs +1 -1
- package/dist/esm/screens/EmbeddedWalletKeyExportScreen.mjs +1 -1
- package/dist/esm/screens/EmbeddedWalletPasswordUpdateSplashScreen.mjs +1 -1
- package/dist/esm/screens/FarcasterConnectStatusScreen.mjs +1 -1
- package/dist/esm/screens/FarcasterSignerStatusScreen.mjs +1 -1
- package/dist/esm/screens/Funding/AwaitingEvmToSolBridgingScreen.mjs +1 -1
- package/dist/esm/screens/Funding/AwaitingExternalSolanaTransferScreen.mjs +1 -1
- package/dist/esm/screens/Funding/AwaitingExternalTransferScreen.mjs +1 -1
- package/dist/esm/screens/Funding/AwaitingSolToEvmBridgingScreen.mjs +1 -1
- package/dist/esm/screens/Funding/BridgeNetworkSelectionView.mjs +1 -1
- package/dist/esm/screens/Funding/CoinbaseOnrampStatusScreen.mjs +1 -1
- package/dist/esm/screens/Funding/FundingEditAmountScreen.mjs +1 -1
- package/dist/esm/screens/Funding/FundingMethodSelectionScreen.mjs +1 -1
- package/dist/esm/screens/Funding/ManualTransferScreen.mjs +1 -1
- package/dist/esm/screens/Funding/MoonpayStatusScreen.mjs +1 -1
- package/dist/esm/screens/Funding/TransferFromWalletScreen.mjs +1 -1
- package/dist/esm/screens/Funding/TransferOrBridgeLoadingScreen.mjs +1 -1
- package/dist/esm/screens/Funding/styles.mjs +1 -1
- package/dist/esm/screens/InAppBrowserLoginNotPossible.mjs +1 -1
- package/dist/esm/screens/InstallPhantomScreen.mjs +1 -1
- package/dist/esm/screens/LandingScreen/CustomLandingScreenView.mjs +1 -1
- package/dist/esm/screens/LandingScreen/LandingScreenView.mjs +1 -1
- package/dist/esm/screens/LinkPasskeyScreen.mjs +1 -1
- package/dist/esm/screens/LinkWalletScreen.mjs +1 -1
- package/dist/esm/screens/LoginFailedScreen.mjs +1 -1
- package/dist/esm/screens/MfaScreens/EnrollLandingScreen.mjs +1 -1
- package/dist/esm/screens/MfaScreens/EnrollPasskey.mjs +1 -1
- package/dist/esm/screens/MfaScreens/EnrollTotp.mjs +1 -1
- package/dist/esm/screens/MfaScreens/MfaEnrollmentFlowScreen.mjs +1 -1
- package/dist/esm/screens/MfaScreens/MfaVerifyFlowScreen.mjs +1 -1
- package/dist/esm/screens/MfaScreens/VerifyWithPasskey.mjs +1 -1
- package/dist/esm/screens/OAuthStatusScreen.mjs +1 -1
- package/dist/esm/screens/PasskeySelectSignupOrLogin.mjs +1 -1
- package/dist/esm/screens/PasskeyStatusScreen.mjs +1 -1
- package/dist/esm/screens/PhantomInterstitialScreen.mjs +1 -1
- package/dist/esm/screens/Recovery/PasswordRecoveryScreen.mjs +1 -1
- package/dist/esm/screens/Recovery/RecoveryOAuthStatusScreen.mjs +1 -1
- package/dist/esm/screens/Recovery/RecoverySelectionScreen.mjs +1 -1
- package/dist/esm/screens/Recovery/SetAutomaticRecoveryScreen.mjs +1 -1
- package/dist/esm/screens/SendSolanaTransactionScreen/SolanaTransactionReceiptView.mjs +1 -1
- package/dist/esm/screens/SendTransactionScreen/SendTransactionScreenView.mjs +1 -1
- package/dist/esm/screens/SendTransactionScreen/TransactionErrorView.mjs +1 -1
- package/dist/esm/screens/SendTransactionScreen/TransactionReceiptView.mjs +1 -1
- package/dist/esm/screens/SignRequestScreen.mjs +1 -1
- package/dist/esm/screens/TelegramAuthScreen.mjs +1 -1
- package/dist/esm/screens/UpdateEmailScreen.mjs +1 -1
- package/dist/esm/screens/UserLimitReachedScreen.mjs +1 -1
- package/package.json +3 -3
- package/dist/cjs/privy-provider-CpJ88X4F.js +0 -3
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),r=require("./index.js"),n=require("react"),i=require("react-device-detect"),t=require("styled-components"),o=require("../client/user.js"),s=require("../components/Button.js"),a=require("../components/CopyToClipboard.js"),c=require("../components/Layouts.js"),l=require("../components/Loader.js"),d=require("../components/ModalFooter.js"),u=require("../components/ModalHeader.js"),h=require("../components/OpenLink.js"),j=require("../components/QrCode.js"),p=require("../components/layout/StackedContainer.js"),q=require("../constants.js"),m=require("../errors.js"),C=require("../hooks/internal-context.js"),E=require("../hooks/modal-context.js"),S=require("../hooks/privy-context.js"),x=require("../svg/farcaster.js"),y=require("./MfaScreens/StyledComponents.js");require("viem/utils"),require("../svg/checkmark.js"),require("../svg/copy.js"),require("../
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("./index.js"),n=require("react"),i=require("react-device-detect"),t=require("styled-components"),o=require("../client/user.js"),s=require("../components/Button.js"),a=require("../components/CopyToClipboard.js"),c=require("../components/Layouts.js"),l=require("../components/Loader.js"),d=require("../components/ModalFooter.js"),u=require("../components/ModalHeader.js"),h=require("../components/OpenLink.js"),j=require("../components/QrCode.js"),p=require("../components/layout/StackedContainer.js"),q=require("../constants.js"),m=require("../errors.js"),C=require("../hooks/internal-context.js"),E=require("../hooks/modal-context.js"),S=require("../hooks/privy-context.js"),x=require("../svg/farcaster.js"),y=require("./MfaScreens/StyledComponents.js");require("viem/utils"),require("../svg/checkmark.js"),require("../svg/copy.js"),require("../configuration/context.js"),require("../config.js"),require("../configuration/defaultClientConfig.js"),require("../configuration/login-methods.js"),require("../configuration/wallets.js"),require("../connectors/chains/index.js"),require("../connectors/chains/arbitrum.js"),require("../connectors/chains/arbitrumSepolia.js"),require("../connectors/chains/avalanche.js"),require("../connectors/chains/avalancheFuji.js"),require("../connectors/chains/base.js"),require("../connectors/chains/baseSepolia.js"),require("../connectors/chains/berachainArtio.js"),require("../connectors/chains/celo.js"),require("../connectors/chains/celoAlfajores.js"),require("../connectors/chains/filecoin.js"),require("../connectors/chains/filecoinCalibration.js"),require("../connectors/chains/garnetHolesky.js"),require("../connectors/chains/holesky.js"),require("../connectors/chains/linea.js"),require("../connectors/chains/lineaTestnet.js"),require("../connectors/chains/lukso.js"),require("../connectors/chains/mainnet.js"),require("../connectors/chains/optimism.js"),require("../connectors/chains/optimismSepolia.js"),require("../connectors/chains/polygon.js"),require("../connectors/chains/polygonAmoy.js"),require("../connectors/chains/redstone.js"),require("../connectors/chains/sepolia.js"),require("../connectors/chains/zora.js"),require("../connectors/chains/zoraSepolia.js"),require("../connectors/chains/zoraTestnet.js"),require("../connectors/chains/utils.js"),require("../lib/solana/index.js"),require("../theme.js"),require("tinycolor2"),require("../lib/cybr53.js"),require("../svg/protected-by-privy.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("../hooks/index.js"),require("qrcode"),require("../svg/black-rounded-square.js"),require("../utils/index.js"),require("../connectors/get-legacy-injected-providers.js"),require("../connectors/is-wallet-installed.js"),require("../utils/eth/getPublicClient.js"),require("viem"),require("ofetch"),require("../components/PrefetchedImage.js");let g="#8a63d2";let T=/*#__PURE__*/t.styled.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;"]),f=/*#__PURE__*/t.styled.div.withConfig({displayName:"ConnectContainerButton",componentId:"sc-5a361367-1"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;width:100%;"]);exports.FarcasterConnectStatusScreen=()=>{let{authenticated:t,logout:v,ready:_,user:A}=S.usePrivyContext(),{lastScreen:b,navigate:I,navigateBack:N,setModalData:R,app:F}=E.usePrivyModal(),{getAuthFlow:L,loginWithFarcaster:M,closePrivyModal:O,createAnalyticsEvent:w}=C.usePrivyInternal(),[k,U]=n.useState(void 0),[D,P]=n.useState(!1),[W,B]=n.useState(!1),H=n.useRef([]),Q=L(),z=Q?.meta.connectUri;return n.useEffect((()=>{let e=Date.now(),n=setInterval((async()=>{let i=await Q.pollForReady.execute(),t=Date.now()-e;if(i){clearInterval(n),P(!0);try{await M(),B(!0)}catch(e){let n={retryable:!1,message:"Authentication failed"};if(e?.privyErrorCode===m.PrivyErrorCode.ALLOWLIST_REJECTED)return void I(r.ModalScreen.ALLOWLIST_REJECTION_SCREEN);if(e?.privyErrorCode===m.PrivyErrorCode.USER_LIMIT_REACHED)return console.error(new m.PrivyUserLimitReachedError(e).toString()),void I(r.ModalScreen.USER_LIMIT_REACHED_SCREEN);if(e?.privyErrorCode===m.PrivyErrorCode.USER_DOES_NOT_EXIST)return void I(r.ModalScreen.ACCOUNT_NOT_FOUND_SCREEN);if(e?.privyErrorCode===m.PrivyErrorCode.LINKED_TO_ANOTHER_USER)n.detail=e.message??"This account has already been linked to another user.";else{if(e?.privyErrorCode===m.PrivyErrorCode.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return R({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 I(r.ModalScreen.LINK_CONFLICT_SCREEN);e?.privyErrorCode===m.PrivyErrorCode.INVALID_CREDENTIALS?(n.retryable=!0,n.detail="Something went wrong. Try again."):e?.privyErrorCode===m.PrivyErrorCode.TOO_MANY_REQUESTS&&(n.detail="Too many requests. Please wait before trying again.")}U(n)}}else t>12e4&&(clearInterval(n),U({retryable:!0,message:"Authentication failed",detail:"The request timed out. Try again."}))}),2e3);return()=>{clearInterval(n),H.current.forEach((e=>clearTimeout(e)))}}),[]),n.useEffect((()=>{if(_&&t&&W&&A){if(F?.legal.requireUsersAcceptTerms&&!A.hasAcceptedTerms){let e=setTimeout((()=>{I(r.ModalScreen.AFFIRMATIVE_CONSENT_SCREEN)}),q.DEFAULT_SUCCESS_SCREEN_DURATION_MS);return()=>clearTimeout(e)}W&&(o.shouldProceedtoEmbeddedWalletCreationFlow(A,F?.embeddedWallets.createOnLogin)?H.current.push(setTimeout((()=>{R({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),w({eventName:"embedded_wallet_creation_failure_logout",payload:{error:e,screen:"FarcasterConnectStatusScreen"}}),v()},callAuthOnSuccessOnClose:!0}}),I(r.ModalScreen.EMBEDDED_WALLET_ON_ACCOUNT_CREATE_SCREEN)}),q.DEFAULT_SUCCESS_SCREEN_DURATION_MS)):H.current.push(setTimeout((()=>O({shouldCallAuthOnSuccess:!0,isSuccess:!0})),q.DEFAULT_SUCCESS_SCREEN_DURATION_MS)))}}),[W,_,t,A]),i.isMobile||D?/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(u.ModalHeader,{backFn:b?N:void 0,onClose:O},"header"),/*#__PURE__*/e.jsx(c.RefactorSpacerTop,{}),i.isIOS?
|
|
2
2
|
/*#__PURE__*/e.jsx(e.Fragment,{children:/*#__PURE__*/e.jsxs(f,{children:[/*#__PURE__*/e.jsx(p.default,{children:/*#__PURE__*/e.jsxs("div",{children:[/*#__PURE__*/e.jsx(l.ConnectionLoader,{success:W,fail:!!k}),/*#__PURE__*/e.jsx(x.Farcaster,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/e.jsxs(c.FixedGappedContainer,{children:[/*#__PURE__*/e.jsx(y.Title,{children:k?k.message:"Sign in with Farcaster"}),/*#__PURE__*/e.jsx(y.SubTitle,{children:k?k.detail:"To sign in with Farcaster, please open the Warpcast app."})]}),z&&/*#__PURE__*/e.jsx(s.PrimaryButton,{onClick:e=>{e.preventDefault(),window.location.href=z},children:"Open Warpcast app"})]})}):/*#__PURE__*/e.jsx(e.Fragment,{children:/*#__PURE__*/e.jsxs(T,{children:[/*#__PURE__*/e.jsx(p.default,{children:/*#__PURE__*/e.jsxs("div",{children:[/*#__PURE__*/e.jsx(l.ConnectionLoader,{success:W,fail:!!k}),/*#__PURE__*/e.jsx(x.Farcaster,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/e.jsxs(c.FixedGappedContainer,{children:[/*#__PURE__*/e.jsx(y.Title,{children:k?k.message:"Signing in with Farcaster"}),/*#__PURE__*/e.jsx(y.SubTitle,{children:k?k.detail:"This should only take a moment"}),/*#__PURE__*/e.jsx(c.CenteredItem,{children:z&&i.isMobile&&/*#__PURE__*/e.jsx(h.OpenLinkButton,{text:"Take me to Warpcast",url:z,color:g})})]})]})}),/*#__PURE__*/e.jsx(d.ModalFooter,{})]}):/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(u.ModalHeader,{backFn:b?N:void 0,onClose:O},"header"),/*#__PURE__*/e.jsx(c.RefactorSpacerTop,{}),/*#__PURE__*/e.jsx(T,{children:/*#__PURE__*/e.jsxs("div",{children:[/*#__PURE__*/e.jsx(y.Title,{children:"Sign in with Farcaster"}),/*#__PURE__*/e.jsx(y.SubTitle,{children:"Scan with your phone's camera to continue."}),/*#__PURE__*/e.jsx(c.CenteredItemWithPadding,{children:z?/*#__PURE__*/e.jsx(j.QrCode,{url:z,size:275,squareLogoElement:x.Farcaster}):/*#__PURE__*/e.jsx(l.Loader,{})}),/*#__PURE__*/e.jsxs(c.CenteredItem,{children:[/*#__PURE__*/e.jsx(y.SubTitle,{children:"Or copy this link and paste it into a phone browser to open the Warpcast app."}),z&&/*#__PURE__*/e.jsx(a.CopytoClipboardButton,{text:z,itemName:"link",color:g})]})]})}),/*#__PURE__*/e.jsx(d.ModalFooter,{})]})};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),r=require("react"),s=require("react-device-detect"),n=require("styled-components"),i=require("../components/Button.js"),t=require("../components/CopyToClipboard.js"),o=require("../components/Layouts.js"),a=require("../components/Loader.js"),c=require("../components/ModalFooter.js"),l=require("../components/ModalHeader.js"),u=require("../components/OpenLink.js"),d=require("../components/QrCode.js"),j=require("../components/layout/StackedContainer.js"),h=require("../constants.js"),p=require("../hooks/internal-context.js"),q=require("../hooks/modal-context.js"),m=require("../svg/farcaster.js"),x=require("./MfaScreens/StyledComponents.js");require("../svg/checkmark.js"),require("../svg/copy.js"),require("../
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("react"),s=require("react-device-detect"),n=require("styled-components"),i=require("../components/Button.js"),t=require("../components/CopyToClipboard.js"),o=require("../components/Layouts.js"),a=require("../components/Loader.js"),c=require("../components/ModalFooter.js"),l=require("../components/ModalHeader.js"),u=require("../components/OpenLink.js"),d=require("../components/QrCode.js"),j=require("../components/layout/StackedContainer.js"),h=require("../constants.js"),p=require("../hooks/internal-context.js"),q=require("../hooks/modal-context.js"),m=require("../svg/farcaster.js"),x=require("./MfaScreens/StyledComponents.js");require("../svg/checkmark.js"),require("../svg/copy.js"),require("../configuration/context.js"),require("../config.js"),require("../configuration/defaultClientConfig.js"),require("../configuration/login-methods.js"),require("../configuration/wallets.js"),require("../connectors/chains/index.js"),require("../connectors/chains/arbitrum.js"),require("../connectors/chains/arbitrumSepolia.js"),require("../connectors/chains/avalanche.js"),require("../connectors/chains/avalancheFuji.js"),require("../connectors/chains/base.js"),require("../connectors/chains/baseSepolia.js"),require("../connectors/chains/berachainArtio.js"),require("../connectors/chains/celo.js"),require("../connectors/chains/celoAlfajores.js"),require("../connectors/chains/filecoin.js"),require("../connectors/chains/filecoinCalibration.js"),require("../connectors/chains/garnetHolesky.js"),require("../connectors/chains/holesky.js"),require("../connectors/chains/linea.js"),require("../connectors/chains/lineaTestnet.js"),require("../connectors/chains/lukso.js"),require("../connectors/chains/mainnet.js"),require("../connectors/chains/optimism.js"),require("../connectors/chains/optimismSepolia.js"),require("../connectors/chains/polygon.js"),require("../connectors/chains/polygonAmoy.js"),require("../connectors/chains/redstone.js"),require("../connectors/chains/sepolia.js"),require("../connectors/chains/zora.js"),require("../connectors/chains/zoraSepolia.js"),require("../connectors/chains/zoraTestnet.js"),require("../connectors/chains/utils.js"),require("../lib/solana/index.js"),require("../theme.js"),require("tinycolor2"),require("../lib/cybr53.js"),require("../svg/protected-by-privy.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("../hooks/index.js"),require("qrcode"),require("../svg/black-rounded-square.js"),require("../utils/index.js"),require("../connectors/get-legacy-injected-providers.js"),require("../connectors/is-wallet-installed.js"),require("../errors.js"),require("ofetch"),require("../utils/eth/getPublicClient.js"),require("viem"),require("../components/PrefetchedImage.js"),require("./index.js");let g="#8a63d2";let f=/*#__PURE__*/n.styled.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;"]),y=/*#__PURE__*/n.styled.div.withConfig({displayName:"ConnectContainerButton",componentId:"sc-6e2c96cd-1"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;width:100%;"]);exports.FarcasterSignerStatusScreen=()=>{let{lastScreen:n,navigateBack:v,data:C,app:S}=q.usePrivyModal(),{requestFarcasterSignerStatus:b,closePrivyModal:k}=p.usePrivyInternal(),[T,w]=r.useState(void 0),[F,I]=r.useState(!1),[_,M]=r.useState(!1),A=r.useRef([]),E=C?.farcasterSigner;r.useEffect((()=>{let e=Date.now(),r=setInterval((async()=>{if(!E?.public_key)return clearInterval(r),void w({retryable:!0,message:"Connect failed",detail:"Something went wrong. Please try again."});"approved"===E.status&&(clearInterval(r),I(!1),M(!0),A.current.push(setTimeout((()=>k({shouldCallAuthOnSuccess:!1,isSuccess:!0})),h.DEFAULT_SUCCESS_SCREEN_DURATION_MS)));let s=await b(E?.public_key),n=Date.now()-e;"approved"===s.status?(clearInterval(r),I(!1),M(!0),A.current.push(setTimeout((()=>k({shouldCallAuthOnSuccess:!1,isSuccess:!0})),h.DEFAULT_SUCCESS_SCREEN_DURATION_MS))):n>3e5?(clearInterval(r),w({retryable:!0,message:"Connect failed",detail:"The request timed out. Try again."})):"revoked"===s.status&&(clearInterval(r),w({retryable:!0,message:"Request rejected",detail:"The request was rejected. Please try again."}))}),2e3);return()=>{clearInterval(r),A.current.forEach((e=>clearTimeout(e)))}}),[]);let L="pending_approval"===E?.status?E.signer_approval_url:void 0;return s.isMobile||F?/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(l.ModalHeader,{backFn:n?v:void 0,onClose:k},"header"),/*#__PURE__*/e.jsx(o.RefactorSpacerTop,{}),s.isIOS?
|
|
2
2
|
/*#__PURE__*/e.jsx(e.Fragment,{children:/*#__PURE__*/e.jsxs(y,{children:[/*#__PURE__*/e.jsx(j.default,{children:/*#__PURE__*/e.jsxs("div",{children:[/*#__PURE__*/e.jsx(a.ConnectionLoader,{success:_,fail:!!T}),/*#__PURE__*/e.jsx(m.Farcaster,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/e.jsxs(o.FixedGappedContainer,{children:[/*#__PURE__*/e.jsx(x.Title,{children:T?T.message:"Add a signer to Farcaster"}),/*#__PURE__*/e.jsx(x.SubTitle,{children:T?T.detail:"This will allow "+S.name+" to add casts, likes, follows, and more on your behalf."})]}),L&&/*#__PURE__*/e.jsx(i.PrimaryButton,{onClick:e=>{e.preventDefault(),window.location.href=L},children:"Open Warpcast app"})]})}):/*#__PURE__*/e.jsx(e.Fragment,{children:/*#__PURE__*/e.jsxs(f,{children:[/*#__PURE__*/e.jsx(j.default,{children:/*#__PURE__*/e.jsxs("div",{children:[/*#__PURE__*/e.jsx(a.ConnectionLoader,{success:_,fail:!!T}),/*#__PURE__*/e.jsx(m.Farcaster,{style:{width:"38px",height:"38px"}})]})}),/*#__PURE__*/e.jsxs(o.FixedGappedContainer,{children:[/*#__PURE__*/e.jsx(x.Title,{children:T?T.message:"Requesting signer from Farcaster"}),/*#__PURE__*/e.jsx(x.SubTitle,{children:T?T.detail:"This should only take a moment"}),/*#__PURE__*/e.jsx(o.CenteredItem,{children:L&&s.isMobile&&/*#__PURE__*/e.jsx(u.OpenLinkButton,{text:"Take me to Warpcast",url:L,color:g})})]})]})}),/*#__PURE__*/e.jsx(c.ModalFooter,{})]}):/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(l.ModalHeader,{backFn:n?v:void 0,onClose:k},"header"),/*#__PURE__*/e.jsx(o.RefactorSpacerTop,{}),/*#__PURE__*/e.jsx(f,{children:/*#__PURE__*/e.jsxs("div",{children:[/*#__PURE__*/e.jsx(x.Title,{children:"Add a signer to Farcaster"}),/*#__PURE__*/e.jsxs(x.SubTitle,{children:["This will allow ",S.name," to add casts, likes, follows, and more on your behalf."]}),/*#__PURE__*/e.jsx(o.CenteredItemWithPadding,{children:"pending_approval"===E?.status?/*#__PURE__*/e.jsx(d.QrCode,{url:E.signer_approval_url,size:275,squareLogoElement:m.Farcaster}):/*#__PURE__*/e.jsx(a.Loader,{})}),/*#__PURE__*/e.jsxs(o.CenteredItem,{children:[/*#__PURE__*/e.jsx(x.SubTitle,{children:"Or copy this link and paste it into a phone browser to open the Warpcast app."}),"pending_approval"===E?.status&&/*#__PURE__*/e.jsx(t.CopytoClipboardButton,{text:E.signer_approval_url,itemName:"link",color:g})]})]})}),/*#__PURE__*/e.jsx(c.ModalFooter,{})]})};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/CheckCircleIcon"),n=require("react"),i=require("viem"),t=require("../../components/Layouts.js"),o=require("../../components/ModalFooter.js"),s=require("../../components/ScreenHeader.js"),a=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),c=require("../../components/primitives/NeutralSpinner/index.js"),u=require("../../connectors/chains/utils.js"),l=require("../../constants.js"),d=require("../../errors.js"),h=require("../../hooks/internal-context.js"),q=require("../../hooks/modal-context.js"),g=require("../../hooks/useGetTokenPrice.js"),j=require("../../hooks/useWallets.js"),p=require("../../lib/external-wallets/displayHelpers.js"),m=require("../../lib/funding/analytics.js"),f=require("../../lib/funding/reservoir.js"),v=require("../../lib/solana/index.js"),y=require("../../lib/solana/transaction.js"),C=require("../../lib/wallets/actions/getBalanceForChains.js"),S=require("../../plugins/context/PrivyPluginContext.js"),I=require("../../plugins/solana-funding/id.js"),E=require("../../utils/index.js"),b=require("../../utils/eth/getPublicClient.js"),w=require("../index.js"),A=require("./BridgeNetworkSelectionView.js"),N=require("./TransferOrBridgeLoadingScreen.js");function T(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("../../svg/protected-by-privy.js"),require("../../components/ModalHeader.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("../../configuration/context.js"),require("../../config.js"),require("../../configuration/defaultClientConfig.js"),require("../../configuration/login-methods.js"),require("../../configuration/wallets.js"),require("../../connectors/chains/index.js"),require("../../connectors/chains/arbitrum.js"),require("../../connectors/chains/arbitrumSepolia.js"),require("../../connectors/chains/avalanche.js"),require("../../connectors/chains/avalancheFuji.js"),require("../../connectors/chains/base.js"),require("../../connectors/chains/baseSepolia.js"),require("../../connectors/chains/berachainArtio.js"),require("../../connectors/chains/celo.js"),require("../../connectors/chains/celoAlfajores.js"),require("../../connectors/chains/filecoin.js"),require("../../connectors/chains/filecoinCalibration.js"),require("../../connectors/chains/garnetHolesky.js"),require("../../connectors/chains/holesky.js"),require("../../connectors/chains/linea.js"),require("../../connectors/chains/lineaTestnet.js"),require("../../connectors/chains/lukso.js"),require("../../connectors/chains/mainnet.js"),require("../../connectors/chains/optimism.js"),require("../../connectors/chains/optimismSepolia.js"),require("../../connectors/chains/polygon.js"),require("../../connectors/chains/polygonAmoy.js"),require("../../connectors/chains/redstone.js"),require("../../connectors/chains/sepolia.js"),require("../../connectors/chains/zora.js"),require("../../connectors/chains/zoraSepolia.js"),require("../../connectors/chains/zoraTestnet.js"),require("../../theme.js"),require("tinycolor2"),require("../../lib/cybr53.js"),require("../../hooks/index.js"),require("ofetch"),require("../../components/PrefetchedImage.js"),require("../../hooks/useGetSolPrice.js"),require("../../svg/brave-browser-icon.js"),require("../../svg/bybit.js"),require("../../svg/coinbase-wallet.js"),require("../../svg/cryptocom.js"),require("../../svg/metamask.js"),require("../../svg/phantom.js"),require("../../svg/rabby.js"),require("../../svg/rainbow.js"),require("../../svg/safe.js"),require("../../svg/uniswap.js"),require("../../svg/universal-profile.js"),require("../../svg/wallet-connect.js"),require("../../svg/zerion.js"),require("../../utils/buffer/readBigInt64LE.js"),require("../../connectors/get-legacy-injected-providers.js"),require("../../connectors/is-wallet-installed.js"),require("@privy-io/js-sdk-core"),require("../../components/Button.js"),require("../../components/Loader.js"),require("../../components/ui/layout/Row.js"),require("../../components/ui/typography/ErrorMessage.js"),require("../../components/ui/typography/LabelSm.js"),require("../../components/ui/typography/Subtitle.js"),require("../../components/ui/typography/Title.js"),require("../../components/ui/wallet/NetworkBalanceCard.js"),require("@heroicons/react/24/outline/WalletIcon"),require("../../components/ui/chips/Chip.js"),require("../../components/ui/animation/LoadingSkeleton.js"),require("../../components/ui/typography/Value.js"),require("../../components/ui/wallet/NetworkIcon.js"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("../../components/ui/icons/Arbitum.js"),require("../../components/ui/icons/Avalanche.js"),require("../../components/ui/icons/Base.js"),require("../../components/ui/icons/Celo.js"),require("../../components/ui/icons/Linea.js"),require("../../components/ui/icons/Mainnnet.js"),require("../../components/ui/icons/Optimism.js"),require("../../components/ui/icons/Polygon.js"),require("../../components/ui/icons/Solana.js"),require("../../components/ui/icons/Zora.js"),require("../../components/ui/wallet/shared.js"),require("../../components/ui/wallet/NetworkSelectorPanel.js"),require("@headlessui/react"),require("@heroicons/react/24/outline/ChevronDownIcon"),require("../../lib/ethers.js"),require("./styles.js"),require("../LinkPasskeyScreen.js"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("../../hooks/privy-context.js"),require("../../svg/face-id.js"),require("../../svg/fingerprint.js"),require("../MfaScreens/StyledComponents.js"),require("../../components/external-wallets/InjectedWalletIcon.js"),require("../../components/ui/wallet/Address.js"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon");var x=/*#__PURE__*/T(r);exports.AwaitingEvmToSolBridgingScreen=()=>{let{rpcConfig:r,appId:T,closePrivyModal:_,createAnalyticsEvent:L}=h.usePrivyInternal(),{navigate:P,setModalData:k,app:F,data:R}=q.usePrivyModal(),{wallets:B}=j.useWallets(),M=S.usePlugins(),[U,O]=n.useState(null),[W,D]=n.useState(null),[G,H]=n.useState([]),[Y,Q]=n.useState(0),[V,$]=n.useState(!1),[z,X]=n.useState(!1),[J,Z]=n.useState(!1),[K,ee]=n.useState(!1);if(!R?.funding||"solana"!==R.funding.chainType)throw Error("Invalid funding data");let{address:re,cluster:ne,connectedWalletAddress:ie}=R.funding,[te,oe]=n.useState(R.funding.amount),se=ie?B.find((({address:e})=>e===ie)):B[0],[ae,ce]=n.useState(null);n.useEffect((()=>{(async()=>{if(!se)return;let e=await se.getEthereumProvider();ce(i.createWalletClient({account:se.address,transport:i.custom(e)}).extend(i.publicActions))})().catch(console.error)}),[se]);let[ue,le]=n.useState(0n),de=y.getNativeCurrencyFromLamports(ue);n.useEffect((()=>{let e=M(I.SOLANA_FUNDING_PLUGIN_ID);e?e.getBalance({address:re,cluster:ne}).then((e=>le(BigInt(e)))):console.warn("Unable to load solana plugin, skipping balance")}),[]);let[he,qe]=n.useState(),{tokenPrice:ge}=g.useGetTokenPrice("solana"),{fundingAmountInBaseUnit:je,fundingAmountInUsd:pe}=y.getSolanaFormattedAmounts({amount:te,fee:0n,tokenPrice:ge});n.useEffect((()=>{(async()=>{if(!ae||!se)return;let e=["testnet","devnet"].includes(ne.name);e&&console.warn("Solana testnets are not supported for bridging");let n=u.addToDefaultChains(F.chains).filter((({testnet:r})=>!!r===e)),i=(await C.getBalanceForChains({chains:n,address:se.address,appId:T,rpcConfig:r})).filter((e=>e.balance>0n));if(i.length<1)return void O(new d.PrivyClientError(`Wallet ${E.formatWalletAddress(se.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE));i.sort(((e,r)=>Number(r.balance-e.balance)));let t=(await Promise.allSettled(i.map((async e=>({...e,quote:await f.getQuote({isTestnet:!1,input:f.toGetQuoteInput({amount:je.toString(),user:se.address,recipient:re,destinationChainId:v.RELAY_SOLANA_MAINNET_CLUSTER_CHAIN_ID,destinationCurrency:v.RELAY_SOLANA_NATIVE_CURRENCY_ID,originChainId:e.chain.id})})}))))).filter((e=>"fulfilled"===e.status)).map((e=>e.value));if(t.length<1)return void O(new d.PrivyClientError(`Unable to fetch quotes for bridging. Wallet ${E.formatWalletAddress(se.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE));let o=t.map((({quote:e,balance:r,chain:n})=>({bridgeTx:f.toEvmTransactionRequestInfoFromQuote(e),balance:r,chain:n}))).filter((({bridgeTx:e})=>!!e));if(o.length>1)return void H(o);let s=o.at(0);s?(X(!0),qe({data:s.bridgeTx.data,to:s.bridgeTx.to,value:s.bridgeTx.value,chain:s.chain})):O(new d.PrivyClientError(`Unable to select bridge option from quotes. Wallet ${E.formatWalletAddress(se.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE))})().catch(console.error)}),[ae]),n.useEffect((()=>{(async()=>{let e,n;if(!ae||!se||V||J||!he)return;$(!0);let t=i.createPublicClient({chain:he.chain,transport:i.http(b.getJsonRpcEndpointFromChain(he.chain,r,T))});try{e=await t.prepareTransactionRequest({account:se.address,to:he.to,chain:he.chain,data:he.data,value:BigInt(he.value??0)})}catch(e){console.error(e),G.length>1&&D(e.shortMessage??"Something went wrong")}if(e){$(!1),Z(!0);try{await ae.switchChain({id:he.chain.id})}catch(e){await ae.addChain({chain:he.chain}),await ae.switchChain({id:he.chain.id})}try{n=await ae.sendTransaction(e),L({eventName:m.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{provider:"external",status:"success",address:se.address,chainId:he.chain.id,value:he.value?.toString(),txHash:n}})}catch(e){console.error(e),"TransactionExecutionError"===e.name&&(G.length<1?O(new d.PrivyClientError(e.shortMessage,void 0,d.PrivyErrorCode.TRANSACTION_FAILURE)):D(e.shortMessage??"Something went wrong"))}n?(await ae.waitForTransactionReceipt({hash:n}),Z(!1),ee(!0)):Z(!1)}else $(!1)})().catch(console.error)}),[ae,he]),n.useEffect((()=>{if(!U)return;let e={error:U,previousScreen:w.ModalScreen.FUNDING_TRANSFER_FROM_WALLET_SCREEN};k({funding:R?.funding,sendTransaction:R?.sendTransaction,errorModalData:e}),P(w.ModalScreen.ERROR_SCREEN,!1)}),[U]);let me=se?p.toDisplayName(se.walletClientType,se.connectorType,se.walletClientType)||"wallet":null;if(n.useEffect((()=>{if(!K)return;let e=setTimeout(_,l.DEFAULT_SUCCESS_SCREEN_EXTRA_LONG_DURATION_MS);return()=>clearTimeout(e)}),[K]),K/*#__PURE__*/)return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(a.default,{}),/*#__PURE__*/e.jsx(t.RefactorSpacerTop,{}),/*#__PURE__*/e.jsxs(t.CenteredItemWithGap,{children:[/*#__PURE__*/e.jsx(x.default,{color:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/e.jsx(s.CenteredScreenHeader,{title:"Success!",description:`You’ve successfully added ${te} SOL to your ${F.name} wallet. It may take a minute before the funds are available to use.`})]}),/*#__PURE__*/e.jsx(t.RefactorSpacerBottom,{}),/*#__PURE__*/e.jsx(o.BlobbyFooter,{})]});let fe=G[Y];return G.length>1&&fe?/*#__PURE__*/e.jsx(A.BridgeNetworkSelectionView,{displayName:me,configuredFundingChain:ne,formattedBalance:de,fundingAmount:te,fundingCurrency:"SOL",fundingAmountInUsd:pe,options:G,selectedOption:fe,isPreparing:V,isSubmitting:J,addressToFund:re,fundingWalletAddress:se?.address||"",errorMessage:W,onSubmit:()=>{R.funding?.amount!==te?async function(){if(se&&fe)try{let e=await f.getQuote({isTestnet:!1,input:f.toGetQuoteInput({amount:je.toString(),user:se.address,recipient:re,destinationChainId:v.RELAY_SOLANA_MAINNET_CLUSTER_CHAIN_ID,destinationCurrency:v.RELAY_SOLANA_NATIVE_CURRENCY_ID,originChainId:fe.chain.id})}),r=f.toEvmTransactionRequestInfoFromQuote(e);if(!r)throw Error("Invalid transaction request");X(!0),qe({data:r.data,to:r.to,value:r.value,chain:fe.chain})}catch(e){console.error(e),O(new d.PrivyClientError("Unable to fetch quotes for bridging",e,d.PrivyErrorCode.INSUFFICIENT_BALANCE))}}().catch(console.error):qe({to:fe.bridgeTx.to,data:fe.bridgeTx.data,value:fe.bridgeTx.value,chain:fe.chain})},onSelect:e=>{e!==Y&&(D(null),Q(e))},onAmountChange:oe}):J&&se?/*#__PURE__*/e.jsx(N.TransferOrBridgeLoadingScreen,{wallet:se,displayName:me,addressToFund:re,isBridging:z,isErc20Flow:!1,chainId:"solana",chainName:ne.name,totalPriceInUsd:void 0,totalPriceInNativeCurrency:void 0,gasPriceInUsd:void 0,gasPriceInNativeCurrency:void 0}):
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/CheckCircleIcon"),n=require("react"),i=require("viem"),t=require("../../components/Layouts.js"),o=require("../../components/ModalFooter.js"),s=require("../../components/ScreenHeader.js"),a=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),c=require("../../components/primitives/NeutralSpinner/index.js"),u=require("../../connectors/chains/utils.js"),l=require("../../constants.js"),d=require("../../errors.js"),h=require("../../hooks/internal-context.js"),q=require("../../hooks/modal-context.js"),g=require("../../hooks/useGetTokenPrice.js"),j=require("../../hooks/useWallets.js"),p=require("../../lib/external-wallets/displayHelpers.js"),m=require("../../lib/funding/analytics.js"),f=require("../../lib/funding/reservoir.js"),v=require("../../lib/solana/index.js"),y=require("../../lib/solana/transaction.js"),C=require("../../lib/wallets/actions/getBalanceForChains.js"),S=require("../../plugins/context/PrivyPluginContext.js"),I=require("../../plugins/solana-funding/id.js"),E=require("../../utils/index.js"),b=require("../../utils/eth/getPublicClient.js"),w=require("../index.js"),A=require("./BridgeNetworkSelectionView.js"),N=require("./TransferOrBridgeLoadingScreen.js");function T(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("../../configuration/context.js"),require("../../config.js"),require("../../configuration/defaultClientConfig.js"),require("../../configuration/login-methods.js"),require("../../configuration/wallets.js"),require("../../connectors/chains/index.js"),require("../../connectors/chains/arbitrum.js"),require("../../connectors/chains/arbitrumSepolia.js"),require("../../connectors/chains/avalanche.js"),require("../../connectors/chains/avalancheFuji.js"),require("../../connectors/chains/base.js"),require("../../connectors/chains/baseSepolia.js"),require("../../connectors/chains/berachainArtio.js"),require("../../connectors/chains/celo.js"),require("../../connectors/chains/celoAlfajores.js"),require("../../connectors/chains/filecoin.js"),require("../../connectors/chains/filecoinCalibration.js"),require("../../connectors/chains/garnetHolesky.js"),require("../../connectors/chains/holesky.js"),require("../../connectors/chains/linea.js"),require("../../connectors/chains/lineaTestnet.js"),require("../../connectors/chains/lukso.js"),require("../../connectors/chains/mainnet.js"),require("../../connectors/chains/optimism.js"),require("../../connectors/chains/optimismSepolia.js"),require("../../connectors/chains/polygon.js"),require("../../connectors/chains/polygonAmoy.js"),require("../../connectors/chains/redstone.js"),require("../../connectors/chains/sepolia.js"),require("../../connectors/chains/zora.js"),require("../../connectors/chains/zoraSepolia.js"),require("../../connectors/chains/zoraTestnet.js"),require("../../theme.js"),require("tinycolor2"),require("../../lib/cybr53.js"),require("../../svg/protected-by-privy.js"),require("../../components/ModalHeader.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("../../hooks/index.js"),require("ofetch"),require("../../components/PrefetchedImage.js"),require("../../hooks/useGetSolPrice.js"),require("../../svg/brave-browser-icon.js"),require("../../svg/bybit.js"),require("../../svg/coinbase-wallet.js"),require("../../svg/cryptocom.js"),require("../../svg/metamask.js"),require("../../svg/phantom.js"),require("../../svg/rabby.js"),require("../../svg/rainbow.js"),require("../../svg/safe.js"),require("../../svg/uniswap.js"),require("../../svg/universal-profile.js"),require("../../svg/wallet-connect.js"),require("../../svg/zerion.js"),require("../../utils/buffer/readBigInt64LE.js"),require("../../connectors/get-legacy-injected-providers.js"),require("../../connectors/is-wallet-installed.js"),require("@privy-io/js-sdk-core"),require("../../components/Button.js"),require("../../components/Loader.js"),require("../../components/ui/layout/Row.js"),require("../../components/ui/typography/ErrorMessage.js"),require("../../components/ui/typography/LabelSm.js"),require("../../components/ui/typography/Subtitle.js"),require("../../components/ui/typography/Title.js"),require("../../components/ui/wallet/NetworkBalanceCard.js"),require("@heroicons/react/24/outline/WalletIcon"),require("../../components/ui/chips/Chip.js"),require("../../components/ui/animation/LoadingSkeleton.js"),require("../../components/ui/typography/Value.js"),require("../../components/ui/wallet/NetworkIcon.js"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("../../components/ui/icons/Arbitum.js"),require("../../components/ui/icons/Avalanche.js"),require("../../components/ui/icons/Base.js"),require("../../components/ui/icons/Celo.js"),require("../../components/ui/icons/Linea.js"),require("../../components/ui/icons/Mainnnet.js"),require("../../components/ui/icons/Optimism.js"),require("../../components/ui/icons/Polygon.js"),require("../../components/ui/icons/Solana.js"),require("../../components/ui/icons/Zora.js"),require("../../components/ui/wallet/shared.js"),require("../../components/ui/wallet/NetworkSelectorPanel.js"),require("@headlessui/react"),require("@heroicons/react/24/outline/ChevronDownIcon"),require("../../lib/ethers.js"),require("./styles.js"),require("../LinkPasskeyScreen.js"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("../../hooks/privy-context.js"),require("../../svg/face-id.js"),require("../../svg/fingerprint.js"),require("../MfaScreens/StyledComponents.js"),require("../../components/external-wallets/InjectedWalletIcon.js"),require("../../components/ui/wallet/Address.js"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon");var x=/*#__PURE__*/T(r);exports.AwaitingEvmToSolBridgingScreen=()=>{let{rpcConfig:r,appId:T,closePrivyModal:_,createAnalyticsEvent:L}=h.usePrivyInternal(),{navigate:P,setModalData:k,app:F,data:R}=q.usePrivyModal(),{wallets:B}=j.useWallets(),M=S.usePlugins(),[U,O]=n.useState(null),[W,D]=n.useState(null),[G,H]=n.useState([]),[Y,Q]=n.useState(0),[V,$]=n.useState(!1),[z,X]=n.useState(!1),[J,Z]=n.useState(!1),[K,ee]=n.useState(!1);if(!R?.funding||"solana"!==R.funding.chainType)throw Error("Invalid funding data");let{address:re,cluster:ne,connectedWalletAddress:ie}=R.funding,[te,oe]=n.useState(R.funding.amount),se=ie?B.find((({address:e})=>e===ie)):B[0],[ae,ce]=n.useState(null);n.useEffect((()=>{(async()=>{if(!se)return;let e=await se.getEthereumProvider();ce(i.createWalletClient({account:se.address,transport:i.custom(e)}).extend(i.publicActions))})().catch(console.error)}),[se]);let[ue,le]=n.useState(0n),de=y.getNativeCurrencyFromLamports(ue);n.useEffect((()=>{let e=M(I.SOLANA_FUNDING_PLUGIN_ID);e?e.getBalance({address:re,cluster:ne}).then((e=>le(BigInt(e)))):console.warn("Unable to load solana plugin, skipping balance")}),[]);let[he,qe]=n.useState(),{tokenPrice:ge}=g.useGetTokenPrice("solana"),{fundingAmountInBaseUnit:je,fundingAmountInUsd:pe}=y.getSolanaFormattedAmounts({amount:te,fee:0n,tokenPrice:ge});n.useEffect((()=>{(async()=>{if(!ae||!se)return;let e=["testnet","devnet"].includes(ne.name);e&&console.warn("Solana testnets are not supported for bridging");let n=u.addToDefaultChains(F.chains).filter((({testnet:r})=>!!r===e)),i=(await C.getBalanceForChains({chains:n,address:se.address,appId:T,rpcConfig:r})).filter((e=>e.balance>0n));if(i.length<1)return void O(new d.PrivyClientError(`Wallet ${E.formatWalletAddress(se.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE));i.sort(((e,r)=>Number(r.balance-e.balance)));let t=(await Promise.allSettled(i.map((async e=>({...e,quote:await f.getQuote({isTestnet:!1,input:f.toGetQuoteInput({amount:je.toString(),user:se.address,recipient:re,destinationChainId:v.RELAY_SOLANA_MAINNET_CLUSTER_CHAIN_ID,destinationCurrency:v.RELAY_SOLANA_NATIVE_CURRENCY_ID,originChainId:e.chain.id})})}))))).filter((e=>"fulfilled"===e.status)).map((e=>e.value));if(t.length<1)return void O(new d.PrivyClientError(`Unable to fetch quotes for bridging. Wallet ${E.formatWalletAddress(se.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE));let o=t.map((({quote:e,balance:r,chain:n})=>({bridgeTx:f.toEvmTransactionRequestInfoFromQuote(e),balance:r,chain:n}))).filter((({bridgeTx:e})=>!!e));if(o.length>1)return void H(o);let s=o.at(0);s?(X(!0),qe({data:s.bridgeTx.data,to:s.bridgeTx.to,value:s.bridgeTx.value,chain:s.chain})):O(new d.PrivyClientError(`Unable to select bridge option from quotes. Wallet ${E.formatWalletAddress(se.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE))})().catch(console.error)}),[ae]),n.useEffect((()=>{(async()=>{let e,n;if(!ae||!se||V||J||!he)return;$(!0);let t=i.createPublicClient({chain:he.chain,transport:i.http(b.getJsonRpcEndpointFromChain(he.chain,r,T))});try{e=await t.prepareTransactionRequest({account:se.address,to:he.to,chain:he.chain,data:he.data,value:BigInt(he.value??0)})}catch(e){console.error(e),G.length>1&&D(e.shortMessage??"Something went wrong")}if(e){$(!1),Z(!0);try{await ae.switchChain({id:he.chain.id})}catch(e){await ae.addChain({chain:he.chain}),await ae.switchChain({id:he.chain.id})}try{n=await ae.sendTransaction(e),L({eventName:m.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{provider:"external",status:"success",address:se.address,chainId:he.chain.id,value:he.value?.toString(),txHash:n}})}catch(e){console.error(e),"TransactionExecutionError"===e.name&&(G.length<1?O(new d.PrivyClientError(e.shortMessage,void 0,d.PrivyErrorCode.TRANSACTION_FAILURE)):D(e.shortMessage??"Something went wrong"))}n?(await ae.waitForTransactionReceipt({hash:n}),Z(!1),ee(!0)):Z(!1)}else $(!1)})().catch(console.error)}),[ae,he]),n.useEffect((()=>{if(!U)return;let e={error:U,previousScreen:w.ModalScreen.FUNDING_TRANSFER_FROM_WALLET_SCREEN};k({funding:R?.funding,sendTransaction:R?.sendTransaction,errorModalData:e}),P(w.ModalScreen.ERROR_SCREEN,!1)}),[U]);let me=se?p.toDisplayName(se.walletClientType,se.connectorType,se.walletClientType)||"wallet":null;if(n.useEffect((()=>{if(!K)return;let e=setTimeout(_,l.DEFAULT_SUCCESS_SCREEN_EXTRA_LONG_DURATION_MS);return()=>clearTimeout(e)}),[K]),K/*#__PURE__*/)return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(a.default,{}),/*#__PURE__*/e.jsx(t.RefactorSpacerTop,{}),/*#__PURE__*/e.jsxs(t.CenteredItemWithGap,{children:[/*#__PURE__*/e.jsx(x.default,{color:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/e.jsx(s.CenteredScreenHeader,{title:"Success!",description:`You’ve successfully added ${te} SOL to your ${F.name} wallet. It may take a minute before the funds are available to use.`})]}),/*#__PURE__*/e.jsx(t.RefactorSpacerBottom,{}),/*#__PURE__*/e.jsx(o.BlobbyFooter,{})]});let fe=G[Y];return G.length>1&&fe?/*#__PURE__*/e.jsx(A.BridgeNetworkSelectionView,{displayName:me,configuredFundingChain:ne,formattedBalance:de,fundingAmount:te,fundingCurrency:"SOL",fundingAmountInUsd:pe,options:G,selectedOption:fe,isPreparing:V,isSubmitting:J,addressToFund:re,fundingWalletAddress:se?.address||"",errorMessage:W,onSubmit:()=>{R.funding?.amount!==te?async function(){if(se&&fe)try{let e=await f.getQuote({isTestnet:!1,input:f.toGetQuoteInput({amount:je.toString(),user:se.address,recipient:re,destinationChainId:v.RELAY_SOLANA_MAINNET_CLUSTER_CHAIN_ID,destinationCurrency:v.RELAY_SOLANA_NATIVE_CURRENCY_ID,originChainId:fe.chain.id})}),r=f.toEvmTransactionRequestInfoFromQuote(e);if(!r)throw Error("Invalid transaction request");X(!0),qe({data:r.data,to:r.to,value:r.value,chain:fe.chain})}catch(e){console.error(e),O(new d.PrivyClientError("Unable to fetch quotes for bridging",e,d.PrivyErrorCode.INSUFFICIENT_BALANCE))}}().catch(console.error):qe({to:fe.bridgeTx.to,data:fe.bridgeTx.data,value:fe.bridgeTx.value,chain:fe.chain})},onSelect:e=>{e!==Y&&(D(null),Q(e))},onAmountChange:oe}):J&&se?/*#__PURE__*/e.jsx(N.TransferOrBridgeLoadingScreen,{wallet:se,displayName:me,addressToFund:re,isBridging:z,isErc20Flow:!1,chainId:"solana",chainName:ne.name,totalPriceInUsd:void 0,totalPriceInNativeCurrency:void 0,gasPriceInUsd:void 0,gasPriceInNativeCurrency:void 0}):
|
|
2
2
|
/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(a.default,{}),/*#__PURE__*/e.jsx(c.NeutralSpinner,{}),/*#__PURE__*/e.jsx("div",{style:{marginTop:"1rem"}}),/*#__PURE__*/e.jsx(o.BlobbyFooter,{})]})};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/CheckCircleIcon"),n=require("react"),i=require("../../components/Layouts.js"),s=require("../../components/ModalFooter.js"),o=require("../../components/ScreenHeader.js"),t=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),a=require("../../components/primitives/NeutralSpinner/index.js"),c=require("../../constants.js"),u=require("../../errors.js"),l=require("../../hooks/internal-context.js"),d=require("../../hooks/modal-context.js"),j=require("../../hooks/useGetTokenPrice.js"),q=require("../../lib/external-wallets/displayHelpers.js"),h=require("../../lib/funding/analytics.js"),p=require("../../lib/solana/index.js"),m=require("../../lib/solana/transaction.js"),g=require("../../plugins/context/PrivyPluginContext.js"),f=require("../../plugins/solana-funding/id.js"),v=require("../../utils/index.js"),y=require("../index.js"),S=require("./TransferOrBridgeLoadingScreen.js"),I=require("../../hooks/solana/useSolanaWallets.js");function w(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("../../
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/CheckCircleIcon"),n=require("react"),i=require("../../components/Layouts.js"),s=require("../../components/ModalFooter.js"),o=require("../../components/ScreenHeader.js"),t=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),a=require("../../components/primitives/NeutralSpinner/index.js"),c=require("../../constants.js"),u=require("../../errors.js"),l=require("../../hooks/internal-context.js"),d=require("../../hooks/modal-context.js"),j=require("../../hooks/useGetTokenPrice.js"),q=require("../../lib/external-wallets/displayHelpers.js"),h=require("../../lib/funding/analytics.js"),p=require("../../lib/solana/index.js"),m=require("../../lib/solana/transaction.js"),g=require("../../plugins/context/PrivyPluginContext.js"),f=require("../../plugins/solana-funding/id.js"),v=require("../../utils/index.js"),y=require("../index.js"),S=require("./TransferOrBridgeLoadingScreen.js"),I=require("../../hooks/solana/useSolanaWallets.js");function w(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("../../configuration/context.js"),require("../../config.js"),require("../../configuration/defaultClientConfig.js"),require("../../configuration/login-methods.js"),require("../../configuration/wallets.js"),require("../../connectors/chains/index.js"),require("../../connectors/chains/arbitrum.js"),require("../../connectors/chains/arbitrumSepolia.js"),require("../../connectors/chains/avalanche.js"),require("../../connectors/chains/avalancheFuji.js"),require("../../connectors/chains/base.js"),require("../../connectors/chains/baseSepolia.js"),require("../../connectors/chains/berachainArtio.js"),require("../../connectors/chains/celo.js"),require("../../connectors/chains/celoAlfajores.js"),require("../../connectors/chains/filecoin.js"),require("../../connectors/chains/filecoinCalibration.js"),require("../../connectors/chains/garnetHolesky.js"),require("../../connectors/chains/holesky.js"),require("../../connectors/chains/linea.js"),require("../../connectors/chains/lineaTestnet.js"),require("../../connectors/chains/lukso.js"),require("../../connectors/chains/mainnet.js"),require("../../connectors/chains/optimism.js"),require("../../connectors/chains/optimismSepolia.js"),require("../../connectors/chains/polygon.js"),require("../../connectors/chains/polygonAmoy.js"),require("../../connectors/chains/redstone.js"),require("../../connectors/chains/sepolia.js"),require("../../connectors/chains/zora.js"),require("../../connectors/chains/zoraSepolia.js"),require("../../connectors/chains/zoraTestnet.js"),require("../../connectors/chains/utils.js"),require("../../theme.js"),require("tinycolor2"),require("../../lib/cybr53.js"),require("../../svg/protected-by-privy.js"),require("../../components/ModalHeader.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("../../hooks/index.js"),require("ofetch"),require("../../components/PrefetchedImage.js"),require("../../hooks/useGetSolPrice.js"),require("../../svg/brave-browser-icon.js"),require("../../svg/bybit.js"),require("../../svg/coinbase-wallet.js"),require("../../svg/cryptocom.js"),require("../../svg/metamask.js"),require("../../svg/phantom.js"),require("../../svg/rabby.js"),require("../../svg/rainbow.js"),require("../../svg/safe.js"),require("../../svg/uniswap.js"),require("../../svg/universal-profile.js"),require("../../svg/wallet-connect.js"),require("../../svg/zerion.js"),require("../../utils/buffer/readBigInt64LE.js"),require("../../connectors/get-legacy-injected-providers.js"),require("../../connectors/is-wallet-installed.js"),require("../../utils/eth/getPublicClient.js"),require("viem"),require("../../components/external-wallets/InjectedWalletIcon.js"),require("@heroicons/react/24/outline/WalletIcon"),require("../../components/ui/layout/Row.js"),require("../../components/ui/typography/LabelSm.js"),require("../../components/ui/typography/Value.js"),require("../../components/ui/animation/LoadingSkeleton.js"),require("../../components/ui/wallet/Address.js"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("../../components/ui/wallet/NetworkIcon.js"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("../../components/ui/icons/Arbitum.js"),require("../../components/ui/icons/Avalanche.js"),require("../../components/ui/icons/Base.js"),require("../../components/ui/icons/Celo.js"),require("../../components/ui/icons/Linea.js"),require("../../components/ui/icons/Mainnnet.js"),require("../../components/ui/icons/Optimism.js"),require("../../components/ui/icons/Polygon.js"),require("../../components/ui/icons/Solana.js"),require("../../components/ui/icons/Zora.js"),require("../../hooks/useWallets.js");var E=/*#__PURE__*/w(r);exports.AwaitingExternalSolanaTransferScreen=()=>{let{closePrivyModal:r,createAnalyticsEvent:w}=l.usePrivyInternal(),{navigate:T,setModalData:C,app:b,data:A}=d.usePrivyModal(),{wallets:N}=I.useSolanaWallets(),x=g.usePlugins(),[P,R]=n.useState(0n),[k,F]=n.useState(null),[_,L]=n.useState(!1),[M,U]=n.useState(!1),O=n.useRef(!1);if(!A?.funding||"solana"!==A.funding.chainType)throw Error("Invalid funding data");let{address:B,amount:W,cluster:G,connectedWalletAddress:D}=A.funding,H=p.getSolanaRpcEndpointForCluster(G),{tokenPrice:z}=j.useGetTokenPrice("solana"),{fundingAmountInBaseUnit:$,totalPriceInUsd:V,totalPriceInNativeCurrency:X,feePriceInNativeCurrency:Y,feePriceInUsd:Q}=m.getSolanaFormattedAmounts({amount:W,fee:P,tokenPrice:z}),Z=D?N.find((({address:e})=>e===D)):N[0];if(n.useEffect((()=>{(async()=>{if("solana"===Z?.type&&Z.sendTransaction&&!_&&!O.current){O.current=!0;try{let e=x(f.SOLANA_FUNDING_PLUGIN_ID);if(!e)throw new u.PrivyClientError("Unable to load solana plugin");let{connection:r,transaction:n}=await e.createTransferTransaction({from:Z.address,to:B,amount:$,cluster:G}),i=await n.getEstimatedFee(r);null!=i&&R(BigInt(i)),L(!0);let s=await r.simulateTransaction(n);if(s.value.err)return s.value.logs?.find((e=>/insufficient (lamports|funds)/gi.test(e)))?void F(new u.PrivyClientError(`Wallet ${v.formatWalletAddress(Z.address,void 0,void 0,"solana")} does not have enough funds.`,void 0,u.PrivyErrorCode.INSUFFICIENT_BALANCE)):(console.error("Transaction failed:",s.value.err),void F(new u.PrivyClientError("Something went wrong",void 0,u.PrivyErrorCode.TRANSACTION_FAILURE)));let o=await Z.sendTransaction(n,r);w({eventName:h.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{provider:"external",status:"success",address:Z.address,value:$.toString(),txHash:o,chainType:"solana",rpcEndpoint:H}}),L(!1),U(!0)}catch(e){if(console.error(e),L(!1),/user rejected the request/gi.test(e.message||""))return void F(new u.PrivyClientError("Transaction was rejected by the user",void 0,u.PrivyErrorCode.TRANSACTION_FAILURE));F(new u.PrivyClientError("Something went wrong",void 0,u.PrivyErrorCode.TRANSACTION_FAILURE))}}})().catch(console.error).finally((()=>O.current=!1))}),[]),n.useEffect((()=>{if(!k)return;let e={error:k,previousScreen:y.ModalScreen.FUNDING_TRANSFER_FROM_WALLET_SCREEN};C({funding:A?.funding,sendTransaction:A?.sendTransaction,errorModalData:e}),T(y.ModalScreen.ERROR_SCREEN,!1)}),[k]),n.useEffect((()=>{if(!M)return;let e=setTimeout(r,c.DEFAULT_SUCCESS_SCREEN_EXTRA_LONG_DURATION_MS);return()=>clearTimeout(e)}),[M]),M/*#__PURE__*/)return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(t.default,{}),/*#__PURE__*/e.jsx(i.RefactorSpacerTop,{}),/*#__PURE__*/e.jsxs(i.CenteredItemWithGap,{children:[/*#__PURE__*/e.jsx(E.default,{color:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/e.jsx(o.CenteredScreenHeader,{title:"Success!",description:`You’ve successfully added ${W} SOL to your ${b.name} wallet. It may take a minute before the funds are available to use.`})]}),/*#__PURE__*/e.jsx(i.RefactorSpacerBottom,{}),/*#__PURE__*/e.jsx(s.BlobbyFooter,{})]});let J=Z?q.toDisplayName(Z.walletClientType,Z.connectorType,Z.walletClientType)||"wallet":null;return Z&&_?/*#__PURE__*/e.jsx(S.TransferOrBridgeLoadingScreen,{wallet:Z,displayName:J,addressToFund:B,isBridging:!1,isErc20Flow:!1,totalPriceInUsd:V,totalPriceInNativeCurrency:X,gasPriceInUsd:Q,gasPriceInNativeCurrency:Y,chainId:"solana",chainName:G.name}):
|
|
2
2
|
/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(t.default,{}),/*#__PURE__*/e.jsx(a.NeutralSpinner,{}),/*#__PURE__*/e.jsx("div",{style:{marginTop:"1rem"}}),/*#__PURE__*/e.jsx(s.BlobbyFooter,{})]})};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/CheckCircleIcon"),n=require("react"),i=require("viem"),t=require("../../components/Layouts.js"),s=require("../../components/ModalFooter.js"),o=require("../../components/ScreenHeader.js"),a=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),c=require("../../components/primitives/NeutralSpinner/index.js"),u=require("../../connectors/chains/utils.js"),l=require("../../constants.js"),d=require("../../errors.js"),h=require("../../hooks/internal-context.js"),q=require("../../hooks/modal-context.js"),g=require("../../hooks/useGetTokenPrice.js"),j=require("../../hooks/useWallets.js"),m=require("../../lib/erc20/actions/abis/transfer.js"),p=require("../../lib/erc20/formatErc20TokenAmount.js"),f=require("../../lib/ethers.js"),v=require("../../lib/external-wallets/displayHelpers.js"),y=require("../../lib/funding/analytics.js"),C=require("../../lib/funding/reservoir.js"),S=require("../../lib/wallets/actions/getBalanceForChains.js"),b=require("../../lib/wallets/actions/getErc20Balance.js"),E=require("../../utils/index.js"),w=require("../../utils/eth/getPublicClient.js"),I=require("../index.js"),T=require("./BridgeNetworkSelectionView.js"),A=require("./TransferOrBridgeLoadingScreen.js");function N(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("../../svg/protected-by-privy.js"),require("../../components/ModalHeader.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("../../configuration/context.js"),require("../../config.js"),require("../../configuration/defaultClientConfig.js"),require("../../configuration/login-methods.js"),require("../../configuration/wallets.js"),require("../../connectors/chains/index.js"),require("../../connectors/chains/arbitrum.js"),require("../../connectors/chains/arbitrumSepolia.js"),require("../../connectors/chains/avalanche.js"),require("../../connectors/chains/avalancheFuji.js"),require("../../connectors/chains/base.js"),require("../../connectors/chains/baseSepolia.js"),require("../../connectors/chains/berachainArtio.js"),require("../../connectors/chains/celo.js"),require("../../connectors/chains/celoAlfajores.js"),require("../../connectors/chains/filecoin.js"),require("../../connectors/chains/filecoinCalibration.js"),require("../../connectors/chains/garnetHolesky.js"),require("../../connectors/chains/holesky.js"),require("../../connectors/chains/linea.js"),require("../../connectors/chains/lineaTestnet.js"),require("../../connectors/chains/lukso.js"),require("../../connectors/chains/mainnet.js"),require("../../connectors/chains/optimism.js"),require("../../connectors/chains/optimismSepolia.js"),require("../../connectors/chains/polygon.js"),require("../../connectors/chains/polygonAmoy.js"),require("../../connectors/chains/redstone.js"),require("../../connectors/chains/sepolia.js"),require("../../connectors/chains/zora.js"),require("../../connectors/chains/zoraSepolia.js"),require("../../connectors/chains/zoraTestnet.js"),require("../../lib/solana/index.js"),require("../../theme.js"),require("tinycolor2"),require("../../lib/cybr53.js"),require("../../hooks/index.js"),require("ofetch"),require("../../components/PrefetchedImage.js"),require("../../hooks/useGetSolPrice.js"),require("../../connectors/get-legacy-injected-providers.js"),require("../../connectors/is-wallet-installed.js"),require("../../svg/brave-browser-icon.js"),require("../../svg/bybit.js"),require("../../svg/coinbase-wallet.js"),require("../../svg/cryptocom.js"),require("../../svg/metamask.js"),require("../../svg/phantom.js"),require("../../svg/rabby.js"),require("../../svg/rainbow.js"),require("../../svg/safe.js"),require("../../svg/uniswap.js"),require("../../svg/universal-profile.js"),require("../../svg/wallet-connect.js"),require("../../svg/zerion.js"),require("@privy-io/js-sdk-core"),require("../../components/Button.js"),require("../../components/Loader.js"),require("../../components/ui/layout/Row.js"),require("../../components/ui/typography/ErrorMessage.js"),require("../../components/ui/typography/LabelSm.js"),require("../../components/ui/typography/Subtitle.js"),require("../../components/ui/typography/Title.js"),require("../../components/ui/wallet/NetworkBalanceCard.js"),require("@heroicons/react/24/outline/WalletIcon"),require("../../components/ui/chips/Chip.js"),require("../../components/ui/animation/LoadingSkeleton.js"),require("../../components/ui/typography/Value.js"),require("../../components/ui/wallet/NetworkIcon.js"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("../../components/ui/icons/Arbitum.js"),require("../../components/ui/icons/Avalanche.js"),require("../../components/ui/icons/Base.js"),require("../../components/ui/icons/Celo.js"),require("../../components/ui/icons/Linea.js"),require("../../components/ui/icons/Mainnnet.js"),require("../../components/ui/icons/Optimism.js"),require("../../components/ui/icons/Polygon.js"),require("../../components/ui/icons/Solana.js"),require("../../components/ui/icons/Zora.js"),require("../../components/ui/wallet/shared.js"),require("../../components/ui/wallet/NetworkSelectorPanel.js"),require("@headlessui/react"),require("@heroicons/react/24/outline/ChevronDownIcon"),require("./styles.js"),require("../LinkPasskeyScreen.js"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("../../hooks/privy-context.js"),require("../../svg/face-id.js"),require("../../svg/fingerprint.js"),require("../MfaScreens/StyledComponents.js"),require("../../components/external-wallets/InjectedWalletIcon.js"),require("../../components/ui/wallet/Address.js"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon");var x=/*#__PURE__*/N(r);exports.AwaitingExternalTransferScreen=()=>{let{rpcConfig:r,appId:N,closePrivyModal:F,createAnalyticsEvent:k}=h.usePrivyInternal(),{navigate:P,setModalData:R,app:B,data:_}=q.usePrivyModal(),{wallets:W}=j.useWallets(),[M,L]=n.useState(!1),[U,D]=n.useState(0n),[O,G]=n.useState(!1),[H,$]=n.useState(null),[Q,z]=n.useState(null),[V,J]=n.useState([]),[X,Y]=n.useState(0),[Z,K]=n.useState(!1),[ee,re]=n.useState(!1),[ne,ie]=n.useState(!1),[te,se]=n.useState(!1);if(!_?.funding||"ethereum"!==_.funding.chainType)throw Error("Invalid funding data");let{erc20ContractInfo:oe,chain:ae,connectedWalletAddress:ce}=_.funding,ue=_.funding.address,le=_.funding.erc20Address,[de,he]=n.useState(_.funding.amount);n.useEffect((()=>{le&&!oe&&$(Error("Unable to fetch token details"))}),[]);let qe=!!le&&!!oe,ge=qe?BigInt(parseFloat(de)*10**oe.decimals):i.parseEther(de),je=ce?W.find((({address:e})=>e===ce)):W[0],[me,pe]=n.useState(null);n.useEffect((()=>{(async()=>{if(!je)return;let e=await je.getEthereumProvider();pe(i.createWalletClient({account:je.address,transport:i.custom(e)}).extend(i.publicActions))})().catch(console.error)}),[je]);let[fe,ve]=n.useState(0n);n.useEffect((()=>{i.createPublicClient({chain:ae,transport:i.http(w.getJsonRpcEndpointFromChain(ae,r,N))}).getBalance({address:ue}).then(ve).catch(console.error)}),[]);let[ye,Ce]=n.useState(0n);n.useEffect((()=>{qe&&b.getErc20Balance({chain:ae,address:ue,appId:N,rpcConfig:r,erc20Address:le}).then((e=>Ce(e.balance))).catch(console.error)}),[]);let{tokenPrice:Se}=g.useGetTokenPrice(ae.id),[be,Ee]=n.useState({to:ue,chain:ae,value:ge,data:void 0});n.useEffect((()=>{(async()=>{let e,n;if(!me||!je||Z||ne)return;K(!0);let t=i.createPublicClient({chain:be.chain,transport:i.http(w.getJsonRpcEndpointFromChain(be.chain,r,N))});if(qe&&!be.data)return await t.simulateContract({address:le,chain:be.chain,abi:m.ERC20_TRANSFER_ABI_STUB,functionName:"transfer",args:[ue,ge],account:je.address}).catch((e=>{console.warn("Simulated token transfer failed with error, fetching bridge options.",e)}))?(K(!1),void Ee({to:le,chain:be.chain,data:i.encodeFunctionData({abi:m.ERC20_TRANSFER_ABI_STUB,functionName:"transfer",args:[ue,ge]}),value:"0x0"})):(K(!1),void G(!0));try{e=await t.prepareTransactionRequest({account:je.address,to:be.to,chain:be.chain,data:be.data,value:BigInt(be.value??0)})}catch(e){if(console.error(e),V.length>1)z(e.shortMessage??"Something went wrong");else if(ee&&0===V.length)return void $(new d.PrivyClientError(`Wallet ${E.formatWalletAddress(je.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE))}if(!e)return K(!1),void G(!0);K(!1),ie(!0),L(!0),D(e.gas);try{await me.switchChain({id:be.chain.id})}catch(e){await me.addChain({chain:be.chain}),await me.switchChain({id:be.chain.id})}try{n=await me.sendTransaction(e),k({eventName:y.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{provider:"external",status:"success",address:je.address,chainId:be.chain.id,value:be.value?.toString(),txHash:n}})}catch(e){if(console.error(e),"TransactionExecutionError"===e.name)if(V.length<1){let r=e.shortMessage;(e.shortMessage.includes("rejected the request")||e.details.includes("rejected the request"))&&(r="User rejected the request."),$(new d.PrivyClientError(r,void 0,d.PrivyErrorCode.TRANSACTION_FAILURE))}else z(e.shortMessage??"Something went wrong")}n?(await me.waitForTransactionReceipt({hash:n}),ie(!1),se(!0)):ie(!1)})().catch(console.error)}),[me,be]),n.useEffect((()=>{(async()=>{if(!O||!me||!je)return;let e=u.addToDefaultChains(B.chains).filter((e=>e.id!==ae.id&&!!e.testnet==!!ae.testnet));qe&&e.unshift(ae);let n=await S.getBalanceForChains({chains:e,address:je.address,appId:N,rpcConfig:r}),i=qe?n.filter((e=>e.balance>0n)):n.filter((e=>e.balance>ge));if(i.length<1)return void $(new d.PrivyClientError(`Wallet ${E.formatWalletAddress(je.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE));i.sort(((e,r)=>Number(r.balance-e.balance)));let t=(await Promise.allSettled(i.map((async e=>({quote:await C.getQuote({isTestnet:!!ae.testnet,input:C.toGetQuoteInput({amount:ge.toString(),user:je.address,recipient:ue,destinationChainId:ae.id,destinationCurrency:le,originChainId:e.chain.id})}),...e}))))).filter((e=>"fulfilled"===e.status)).map((e=>e.value));if(t.length<1)return void $(new d.PrivyClientError(`Wallet ${E.formatWalletAddress(je.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE));let s=t.map((e=>({bridgeTx:C.toEvmTransactionRequestInfoFromQuote(e.quote),balance:e.balance,chain:e.chain}))).filter((e=>!!e.bridgeTx));if(s.length>1)return void J(s);let o=s[0];o?(re(!0),Ee({data:o.bridgeTx.data,to:o.bridgeTx.to,value:o.bridgeTx.value,chain:o.chain})):$(new d.PrivyClientError(`Wallet ${E.formatWalletAddress(je.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE))})().catch(console.error)}),[O]),n.useEffect((()=>{if(!H)return;let e={error:H,previousScreen:I.ModalScreen.FUNDING_TRANSFER_FROM_WALLET_SCREEN};R({funding:_?.funding,sendTransaction:_?.sendTransaction,errorModalData:e}),P(I.ModalScreen.ERROR_SCREEN,!1)}),[H]);let we=je?v.toDisplayName(je.walletClientType,je.connectorType,je.walletClientType)||"wallet":null,Ie=!qe&&Se?f.getDollarsFromStringFloat(de??"0",Se):void 0,Te=qe?U:f.sumWeiQuantities([U,ge]),Ae=Te&&Se?f.getDollarsFromWei(Te,Se):void 0,Ne=Te?f.getNativeCurrencyFromWei(Te,"ETH"):void 0,xe=U&&Se?f.getDollarsFromWei(U,Se):void 0,Fe=U?f.getNativeCurrencyFromWei(U,"ETH"):void 0;if(n.useEffect((()=>{if(!te)return;let e=setTimeout(F,l.DEFAULT_SUCCESS_SCREEN_EXTRA_LONG_DURATION_MS);return()=>clearTimeout(e)}),[te]),te/*#__PURE__*/)return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(a.default,{}),/*#__PURE__*/e.jsx(t.RefactorSpacerTop,{}),/*#__PURE__*/e.jsxs(t.CenteredItemWithGap,{children:[/*#__PURE__*/e.jsx(x.default,{color:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/e.jsx(o.CenteredScreenHeader,{title:"Success!",description:`You’ve successfully added ${de} ${qe?oe.symbol:ae.nativeCurrency.symbol} to your ${B.name} wallet. It may take a minute before the funds are available to use.`})]}),/*#__PURE__*/e.jsx(t.RefactorSpacerBottom,{}),/*#__PURE__*/e.jsx(s.BlobbyFooter,{})]});let ke=qe?`${p.formatErc20TokenAmount({amount:ye,decimals:oe.decimals})} ${oe.symbol}`:f.getNativeCurrencyFromWei(fe,ae.nativeCurrency.symbol,3,!0),Pe=V[X];return V.length>1&&Pe?/*#__PURE__*/e.jsx(T.BridgeNetworkSelectionView,{displayName:we,configuredFundingChain:ae,formattedBalance:ke,fundingAmount:de,fundingCurrency:qe?oe.symbol:ae.nativeCurrency.symbol,fundingAmountInUsd:Ie,options:V,selectedOption:Pe,isPreparing:Z,isSubmitting:ne,addressToFund:ue,fundingWalletAddress:je?.address||"",errorMessage:Q,onSubmit:()=>{_.funding?.amount!==de?async function(){if(je&&Pe)try{let e=await C.getQuote({isTestnet:!!ae.testnet,input:C.toGetQuoteInput({amount:ge.toString(),user:je.address,recipient:ue,destinationChainId:ae.id,destinationCurrency:le,originChainId:Pe.chain.id})}),r=C.toEvmTransactionRequestInfoFromQuote(e);if(!r)throw Error("Invalid transaction request");re(!0),Ee({data:r.data,to:r.to,value:r.value,chain:Pe.chain})}catch(e){console.error(e),$(new d.PrivyClientError("Unable to fetch quotes for bridging",e,d.PrivyErrorCode.INSUFFICIENT_BALANCE))}}().catch(console.error):Ee({to:Pe.bridgeTx.to,data:Pe.bridgeTx.data,value:Pe.bridgeTx.value,chain:Pe.chain})},onSelect:e=>{e!==X&&(z(null),Y(e))},onAmountChange:he}):M&&U&&je&&_?.funding?/*#__PURE__*/e.jsx(A.TransferOrBridgeLoadingScreen,{wallet:je,displayName:we,addressToFund:ue,isBridging:ee,isErc20Flow:qe,totalPriceInUsd:Ae,totalPriceInNativeCurrency:Ne,gasPriceInUsd:xe,gasPriceInNativeCurrency:Fe,chainId:ae.id,chainName:ae.name}):
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/CheckCircleIcon"),n=require("react"),i=require("viem"),t=require("../../components/Layouts.js"),s=require("../../components/ModalFooter.js"),o=require("../../components/ScreenHeader.js"),a=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),c=require("../../components/primitives/NeutralSpinner/index.js"),u=require("../../connectors/chains/utils.js"),l=require("../../constants.js"),d=require("../../errors.js"),h=require("../../hooks/internal-context.js"),q=require("../../hooks/modal-context.js"),g=require("../../hooks/useGetTokenPrice.js"),j=require("../../hooks/useWallets.js"),m=require("../../lib/erc20/actions/abis/transfer.js"),p=require("../../lib/erc20/formatErc20TokenAmount.js"),f=require("../../lib/ethers.js"),v=require("../../lib/external-wallets/displayHelpers.js"),y=require("../../lib/funding/analytics.js"),C=require("../../lib/funding/reservoir.js"),S=require("../../lib/wallets/actions/getBalanceForChains.js"),b=require("../../lib/wallets/actions/getErc20Balance.js"),E=require("../../utils/index.js"),w=require("../../utils/eth/getPublicClient.js"),I=require("../index.js"),T=require("./BridgeNetworkSelectionView.js"),A=require("./TransferOrBridgeLoadingScreen.js");function N(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("../../configuration/context.js"),require("../../config.js"),require("../../configuration/defaultClientConfig.js"),require("../../configuration/login-methods.js"),require("../../configuration/wallets.js"),require("../../connectors/chains/index.js"),require("../../connectors/chains/arbitrum.js"),require("../../connectors/chains/arbitrumSepolia.js"),require("../../connectors/chains/avalanche.js"),require("../../connectors/chains/avalancheFuji.js"),require("../../connectors/chains/base.js"),require("../../connectors/chains/baseSepolia.js"),require("../../connectors/chains/berachainArtio.js"),require("../../connectors/chains/celo.js"),require("../../connectors/chains/celoAlfajores.js"),require("../../connectors/chains/filecoin.js"),require("../../connectors/chains/filecoinCalibration.js"),require("../../connectors/chains/garnetHolesky.js"),require("../../connectors/chains/holesky.js"),require("../../connectors/chains/linea.js"),require("../../connectors/chains/lineaTestnet.js"),require("../../connectors/chains/lukso.js"),require("../../connectors/chains/mainnet.js"),require("../../connectors/chains/optimism.js"),require("../../connectors/chains/optimismSepolia.js"),require("../../connectors/chains/polygon.js"),require("../../connectors/chains/polygonAmoy.js"),require("../../connectors/chains/redstone.js"),require("../../connectors/chains/sepolia.js"),require("../../connectors/chains/zora.js"),require("../../connectors/chains/zoraSepolia.js"),require("../../connectors/chains/zoraTestnet.js"),require("../../lib/solana/index.js"),require("../../theme.js"),require("tinycolor2"),require("../../lib/cybr53.js"),require("../../svg/protected-by-privy.js"),require("../../components/ModalHeader.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("../../hooks/index.js"),require("ofetch"),require("../../components/PrefetchedImage.js"),require("../../hooks/useGetSolPrice.js"),require("../../connectors/get-legacy-injected-providers.js"),require("../../connectors/is-wallet-installed.js"),require("../../svg/brave-browser-icon.js"),require("../../svg/bybit.js"),require("../../svg/coinbase-wallet.js"),require("../../svg/cryptocom.js"),require("../../svg/metamask.js"),require("../../svg/phantom.js"),require("../../svg/rabby.js"),require("../../svg/rainbow.js"),require("../../svg/safe.js"),require("../../svg/uniswap.js"),require("../../svg/universal-profile.js"),require("../../svg/wallet-connect.js"),require("../../svg/zerion.js"),require("@privy-io/js-sdk-core"),require("../../components/Button.js"),require("../../components/Loader.js"),require("../../components/ui/layout/Row.js"),require("../../components/ui/typography/ErrorMessage.js"),require("../../components/ui/typography/LabelSm.js"),require("../../components/ui/typography/Subtitle.js"),require("../../components/ui/typography/Title.js"),require("../../components/ui/wallet/NetworkBalanceCard.js"),require("@heroicons/react/24/outline/WalletIcon"),require("../../components/ui/chips/Chip.js"),require("../../components/ui/animation/LoadingSkeleton.js"),require("../../components/ui/typography/Value.js"),require("../../components/ui/wallet/NetworkIcon.js"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("../../components/ui/icons/Arbitum.js"),require("../../components/ui/icons/Avalanche.js"),require("../../components/ui/icons/Base.js"),require("../../components/ui/icons/Celo.js"),require("../../components/ui/icons/Linea.js"),require("../../components/ui/icons/Mainnnet.js"),require("../../components/ui/icons/Optimism.js"),require("../../components/ui/icons/Polygon.js"),require("../../components/ui/icons/Solana.js"),require("../../components/ui/icons/Zora.js"),require("../../components/ui/wallet/shared.js"),require("../../components/ui/wallet/NetworkSelectorPanel.js"),require("@headlessui/react"),require("@heroicons/react/24/outline/ChevronDownIcon"),require("./styles.js"),require("../LinkPasskeyScreen.js"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("../../hooks/privy-context.js"),require("../../svg/face-id.js"),require("../../svg/fingerprint.js"),require("../MfaScreens/StyledComponents.js"),require("../../components/external-wallets/InjectedWalletIcon.js"),require("../../components/ui/wallet/Address.js"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon");var x=/*#__PURE__*/N(r);exports.AwaitingExternalTransferScreen=()=>{let{rpcConfig:r,appId:N,closePrivyModal:F,createAnalyticsEvent:k}=h.usePrivyInternal(),{navigate:P,setModalData:R,app:B,data:_}=q.usePrivyModal(),{wallets:W}=j.useWallets(),[M,L]=n.useState(!1),[U,D]=n.useState(0n),[O,G]=n.useState(!1),[H,$]=n.useState(null),[Q,z]=n.useState(null),[V,J]=n.useState([]),[X,Y]=n.useState(0),[Z,K]=n.useState(!1),[ee,re]=n.useState(!1),[ne,ie]=n.useState(!1),[te,se]=n.useState(!1);if(!_?.funding||"ethereum"!==_.funding.chainType)throw Error("Invalid funding data");let{erc20ContractInfo:oe,chain:ae,connectedWalletAddress:ce}=_.funding,ue=_.funding.address,le=_.funding.erc20Address,[de,he]=n.useState(_.funding.amount);n.useEffect((()=>{le&&!oe&&$(Error("Unable to fetch token details"))}),[]);let qe=!!le&&!!oe,ge=qe?BigInt(parseFloat(de)*10**oe.decimals):i.parseEther(de),je=ce?W.find((({address:e})=>e===ce)):W[0],[me,pe]=n.useState(null);n.useEffect((()=>{(async()=>{if(!je)return;let e=await je.getEthereumProvider();pe(i.createWalletClient({account:je.address,transport:i.custom(e)}).extend(i.publicActions))})().catch(console.error)}),[je]);let[fe,ve]=n.useState(0n);n.useEffect((()=>{i.createPublicClient({chain:ae,transport:i.http(w.getJsonRpcEndpointFromChain(ae,r,N))}).getBalance({address:ue}).then(ve).catch(console.error)}),[]);let[ye,Ce]=n.useState(0n);n.useEffect((()=>{qe&&b.getErc20Balance({chain:ae,address:ue,appId:N,rpcConfig:r,erc20Address:le}).then((e=>Ce(e.balance))).catch(console.error)}),[]);let{tokenPrice:Se}=g.useGetTokenPrice(ae.id),[be,Ee]=n.useState({to:ue,chain:ae,value:ge,data:void 0});n.useEffect((()=>{(async()=>{let e,n;if(!me||!je||Z||ne)return;K(!0);let t=i.createPublicClient({chain:be.chain,transport:i.http(w.getJsonRpcEndpointFromChain(be.chain,r,N))});if(qe&&!be.data)return await t.simulateContract({address:le,chain:be.chain,abi:m.ERC20_TRANSFER_ABI_STUB,functionName:"transfer",args:[ue,ge],account:je.address}).catch((e=>{console.warn("Simulated token transfer failed with error, fetching bridge options.",e)}))?(K(!1),void Ee({to:le,chain:be.chain,data:i.encodeFunctionData({abi:m.ERC20_TRANSFER_ABI_STUB,functionName:"transfer",args:[ue,ge]}),value:"0x0"})):(K(!1),void G(!0));try{e=await t.prepareTransactionRequest({account:je.address,to:be.to,chain:be.chain,data:be.data,value:BigInt(be.value??0)})}catch(e){if(console.error(e),V.length>1)z(e.shortMessage??"Something went wrong");else if(ee&&0===V.length)return void $(new d.PrivyClientError(`Wallet ${E.formatWalletAddress(je.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE))}if(!e)return K(!1),void G(!0);K(!1),ie(!0),L(!0),D(e.gas);try{await me.switchChain({id:be.chain.id})}catch(e){await me.addChain({chain:be.chain}),await me.switchChain({id:be.chain.id})}try{n=await me.sendTransaction(e),k({eventName:y.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{provider:"external",status:"success",address:je.address,chainId:be.chain.id,value:be.value?.toString(),txHash:n}})}catch(e){if(console.error(e),"TransactionExecutionError"===e.name)if(V.length<1){let r=e.shortMessage;(e.shortMessage.includes("rejected the request")||e.details.includes("rejected the request"))&&(r="User rejected the request."),$(new d.PrivyClientError(r,void 0,d.PrivyErrorCode.TRANSACTION_FAILURE))}else z(e.shortMessage??"Something went wrong")}n?(await me.waitForTransactionReceipt({hash:n}),ie(!1),se(!0)):ie(!1)})().catch(console.error)}),[me,be]),n.useEffect((()=>{(async()=>{if(!O||!me||!je)return;let e=u.addToDefaultChains(B.chains).filter((e=>e.id!==ae.id&&!!e.testnet==!!ae.testnet));qe&&e.unshift(ae);let n=await S.getBalanceForChains({chains:e,address:je.address,appId:N,rpcConfig:r}),i=qe?n.filter((e=>e.balance>0n)):n.filter((e=>e.balance>ge));if(i.length<1)return void $(new d.PrivyClientError(`Wallet ${E.formatWalletAddress(je.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE));i.sort(((e,r)=>Number(r.balance-e.balance)));let t=(await Promise.allSettled(i.map((async e=>({quote:await C.getQuote({isTestnet:!!ae.testnet,input:C.toGetQuoteInput({amount:ge.toString(),user:je.address,recipient:ue,destinationChainId:ae.id,destinationCurrency:le,originChainId:e.chain.id})}),...e}))))).filter((e=>"fulfilled"===e.status)).map((e=>e.value));if(t.length<1)return void $(new d.PrivyClientError(`Wallet ${E.formatWalletAddress(je.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE));let s=t.map((e=>({bridgeTx:C.toEvmTransactionRequestInfoFromQuote(e.quote),balance:e.balance,chain:e.chain}))).filter((e=>!!e.bridgeTx));if(s.length>1)return void J(s);let o=s[0];o?(re(!0),Ee({data:o.bridgeTx.data,to:o.bridgeTx.to,value:o.bridgeTx.value,chain:o.chain})):$(new d.PrivyClientError(`Wallet ${E.formatWalletAddress(je.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE))})().catch(console.error)}),[O]),n.useEffect((()=>{if(!H)return;let e={error:H,previousScreen:I.ModalScreen.FUNDING_TRANSFER_FROM_WALLET_SCREEN};R({funding:_?.funding,sendTransaction:_?.sendTransaction,errorModalData:e}),P(I.ModalScreen.ERROR_SCREEN,!1)}),[H]);let we=je?v.toDisplayName(je.walletClientType,je.connectorType,je.walletClientType)||"wallet":null,Ie=!qe&&Se?f.getDollarsFromStringFloat(de??"0",Se):void 0,Te=qe?U:f.sumWeiQuantities([U,ge]),Ae=Te&&Se?f.getDollarsFromWei(Te,Se):void 0,Ne=Te?f.getNativeCurrencyFromWei(Te,"ETH"):void 0,xe=U&&Se?f.getDollarsFromWei(U,Se):void 0,Fe=U?f.getNativeCurrencyFromWei(U,"ETH"):void 0;if(n.useEffect((()=>{if(!te)return;let e=setTimeout(F,l.DEFAULT_SUCCESS_SCREEN_EXTRA_LONG_DURATION_MS);return()=>clearTimeout(e)}),[te]),te/*#__PURE__*/)return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(a.default,{}),/*#__PURE__*/e.jsx(t.RefactorSpacerTop,{}),/*#__PURE__*/e.jsxs(t.CenteredItemWithGap,{children:[/*#__PURE__*/e.jsx(x.default,{color:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/e.jsx(o.CenteredScreenHeader,{title:"Success!",description:`You’ve successfully added ${de} ${qe?oe.symbol:ae.nativeCurrency.symbol} to your ${B.name} wallet. It may take a minute before the funds are available to use.`})]}),/*#__PURE__*/e.jsx(t.RefactorSpacerBottom,{}),/*#__PURE__*/e.jsx(s.BlobbyFooter,{})]});let ke=qe?`${p.formatErc20TokenAmount({amount:ye,decimals:oe.decimals})} ${oe.symbol}`:f.getNativeCurrencyFromWei(fe,ae.nativeCurrency.symbol,3,!0),Pe=V[X];return V.length>1&&Pe?/*#__PURE__*/e.jsx(T.BridgeNetworkSelectionView,{displayName:we,configuredFundingChain:ae,formattedBalance:ke,fundingAmount:de,fundingCurrency:qe?oe.symbol:ae.nativeCurrency.symbol,fundingAmountInUsd:Ie,options:V,selectedOption:Pe,isPreparing:Z,isSubmitting:ne,addressToFund:ue,fundingWalletAddress:je?.address||"",errorMessage:Q,onSubmit:()=>{_.funding?.amount!==de?async function(){if(je&&Pe)try{let e=await C.getQuote({isTestnet:!!ae.testnet,input:C.toGetQuoteInput({amount:ge.toString(),user:je.address,recipient:ue,destinationChainId:ae.id,destinationCurrency:le,originChainId:Pe.chain.id})}),r=C.toEvmTransactionRequestInfoFromQuote(e);if(!r)throw Error("Invalid transaction request");re(!0),Ee({data:r.data,to:r.to,value:r.value,chain:Pe.chain})}catch(e){console.error(e),$(new d.PrivyClientError("Unable to fetch quotes for bridging",e,d.PrivyErrorCode.INSUFFICIENT_BALANCE))}}().catch(console.error):Ee({to:Pe.bridgeTx.to,data:Pe.bridgeTx.data,value:Pe.bridgeTx.value,chain:Pe.chain})},onSelect:e=>{e!==X&&(z(null),Y(e))},onAmountChange:he}):M&&U&&je&&_?.funding?/*#__PURE__*/e.jsx(A.TransferOrBridgeLoadingScreen,{wallet:je,displayName:we,addressToFund:ue,isBridging:ee,isErc20Flow:qe,totalPriceInUsd:Ae,totalPriceInNativeCurrency:Ne,gasPriceInUsd:xe,gasPriceInNativeCurrency:Fe,chainId:ae.id,chainName:ae.name}):
|
|
2
2
|
/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(a.default,{}),/*#__PURE__*/e.jsx(c.NeutralSpinner,{}),/*#__PURE__*/e.jsx("div",{style:{marginTop:"1rem"}}),/*#__PURE__*/e.jsx(s.BlobbyFooter,{})]})};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),r=require("../index.js"),n=require("@heroicons/react/24/outline/CheckCircleIcon"),i=require("react"),o=require("viem"),s=require("../../components/Layouts.js"),t=require("../../components/ModalFooter.js"),a=require("../../components/ScreenHeader.js"),c=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),u=require("../../components/primitives/NeutralSpinner/index.js"),l=require("../../constants.js"),d=require("../../errors.js"),j=require("../../hooks/internal-context.js"),q=require("../../hooks/modal-context.js"),h=require("../../lib/external-wallets/displayHelpers.js"),g=require("../../lib/funding/analytics.js"),m=require("../../lib/funding/reservoir.js"),v=require("../../lib/solana/index.js"),p=require("../../plugins/context/PrivyPluginContext.js"),f=require("../../plugins/solana-funding/id.js"),y=require("../../utils/index.js"),S=require("./TransferOrBridgeLoadingScreen.js"),C=require("../../hooks/solana/useSolanaWallets.js");function E(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("../../
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("../index.js"),n=require("@heroicons/react/24/outline/CheckCircleIcon"),i=require("react"),o=require("viem"),s=require("../../components/Layouts.js"),t=require("../../components/ModalFooter.js"),a=require("../../components/ScreenHeader.js"),c=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),u=require("../../components/primitives/NeutralSpinner/index.js"),l=require("../../constants.js"),d=require("../../errors.js"),j=require("../../hooks/internal-context.js"),q=require("../../hooks/modal-context.js"),h=require("../../lib/external-wallets/displayHelpers.js"),g=require("../../lib/funding/analytics.js"),m=require("../../lib/funding/reservoir.js"),v=require("../../lib/solana/index.js"),p=require("../../plugins/context/PrivyPluginContext.js"),f=require("../../plugins/solana-funding/id.js"),y=require("../../utils/index.js"),S=require("./TransferOrBridgeLoadingScreen.js"),C=require("../../hooks/solana/useSolanaWallets.js");function E(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("../../configuration/context.js"),require("../../config.js"),require("../../configuration/defaultClientConfig.js"),require("../../configuration/login-methods.js"),require("../../configuration/wallets.js"),require("../../connectors/chains/index.js"),require("../../connectors/chains/arbitrum.js"),require("../../connectors/chains/arbitrumSepolia.js"),require("../../connectors/chains/avalanche.js"),require("../../connectors/chains/avalancheFuji.js"),require("../../connectors/chains/base.js"),require("../../connectors/chains/baseSepolia.js"),require("../../connectors/chains/berachainArtio.js"),require("../../connectors/chains/celo.js"),require("../../connectors/chains/celoAlfajores.js"),require("../../connectors/chains/filecoin.js"),require("../../connectors/chains/filecoinCalibration.js"),require("../../connectors/chains/garnetHolesky.js"),require("../../connectors/chains/holesky.js"),require("../../connectors/chains/linea.js"),require("../../connectors/chains/lineaTestnet.js"),require("../../connectors/chains/lukso.js"),require("../../connectors/chains/mainnet.js"),require("../../connectors/chains/optimism.js"),require("../../connectors/chains/optimismSepolia.js"),require("../../connectors/chains/polygon.js"),require("../../connectors/chains/polygonAmoy.js"),require("../../connectors/chains/redstone.js"),require("../../connectors/chains/sepolia.js"),require("../../connectors/chains/zora.js"),require("../../connectors/chains/zoraSepolia.js"),require("../../connectors/chains/zoraTestnet.js"),require("../../connectors/chains/utils.js"),require("../../theme.js"),require("tinycolor2"),require("../../lib/cybr53.js"),require("../../svg/protected-by-privy.js"),require("../../components/ModalHeader.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("../../hooks/index.js"),require("ofetch"),require("../../components/PrefetchedImage.js"),require("../../svg/brave-browser-icon.js"),require("../../svg/bybit.js"),require("../../svg/coinbase-wallet.js"),require("../../svg/cryptocom.js"),require("../../svg/metamask.js"),require("../../svg/phantom.js"),require("../../svg/rabby.js"),require("../../svg/rainbow.js"),require("../../svg/safe.js"),require("../../svg/uniswap.js"),require("../../svg/universal-profile.js"),require("../../svg/wallet-connect.js"),require("../../svg/zerion.js"),require("../../connectors/get-legacy-injected-providers.js"),require("../../connectors/is-wallet-installed.js"),require("../../utils/eth/getPublicClient.js"),require("../../components/external-wallets/InjectedWalletIcon.js"),require("@heroicons/react/24/outline/WalletIcon"),require("../../components/ui/layout/Row.js"),require("../../components/ui/typography/LabelSm.js"),require("../../components/ui/typography/Value.js"),require("../../components/ui/animation/LoadingSkeleton.js"),require("../../components/ui/wallet/Address.js"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("../../components/ui/wallet/NetworkIcon.js"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("../../components/ui/icons/Arbitum.js"),require("../../components/ui/icons/Avalanche.js"),require("../../components/ui/icons/Base.js"),require("../../components/ui/icons/Celo.js"),require("../../components/ui/icons/Linea.js"),require("../../components/ui/icons/Mainnnet.js"),require("../../components/ui/icons/Optimism.js"),require("../../components/ui/icons/Polygon.js"),require("../../components/ui/icons/Solana.js"),require("../../components/ui/icons/Zora.js"),require("../../hooks/useWallets.js");var A=/*#__PURE__*/E(n);exports.AwaitingSolToEvmBridgingScreen=function(){let{closePrivyModal:n,createAnalyticsEvent:E}=j.usePrivyInternal(),{navigate:I,setModalData:N,app:w,data:T}=q.usePrivyModal(),{wallets:b}=C.useSolanaWallets(),_=i.useRef(!1),x=p.usePlugins(),[R,P]=i.useState(!1),[L,F]=i.useState(!1),[U,O]=i.useState(null);if(!T?.funding||"ethereum"!==T.funding.chainType)throw Error("Invalid funding data");let{amount:k,connectedWalletAddress:M,chain:D,cluster:W,isUSDC:B}=T.funding,H=T.funding.address,$=T.funding.erc20Address,G=T.funding.isUSDC?"USDC":D.nativeCurrency.symbol,Y=W??{name:"mainnet-beta"},z=M?b.find((({address:e})=>e===M)):b[0];if(i.useEffect((()=>{(async function(){if(!z||!D||_.current)return;let e=x(f.SOLANA_FUNDING_PLUGIN_ID);if(!e)return void O(new d.PrivyClientError("Unable to solana plugin"));_.current=!0,D?.testnet&&console.warn("Solana testnets are not supported for bridging");let r=B?1e6*parseFloat(k):o.parseEther(k),n=await m.getQuote({isTestnet:!!D.testnet,input:m.toGetQuoteInput({amount:r.toString(),user:z.address,recipient:H,destinationChainId:D.id,originChainId:v.RELAY_SOLANA_MAINNET_CLUSTER_CHAIN_ID,originCurrency:B?v.RELAY_SOLANA_USDC_TOKEN_ID:v.RELAY_SOLANA_NATIVE_CURRENCY_ID,destinationCurrency:B?$:void 0})}).catch(console.error);if(!n)return void O(new d.PrivyClientError(`Unable to fetch quotes for bridging. Wallet ${y.formatSolanaWalletAddress(z.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE));let i=await e.createBridgeTransactionFromRelayQuote({quote:n,from:z.address,cluster:Y});if(i)try{P(!0);let{connection:e,transaction:o}=i,s=await e.simulateTransaction(o);if(s.value.err)return s.value.logs?.find((e=>/insufficient (lamports|funds)/gi.test(e)))?void O(new d.PrivyClientError(`Wallet ${y.formatSolanaWalletAddress(z?.address)} does not have enough funds. ${n.details.currencyIn.amountFormatted} ${G} are needed to complete the transaction.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE)):(console.error("Transaction failed:",s.value.err),void O(new d.PrivyClientError("Something went wrong",void 0,d.PrivyErrorCode.TRANSACTION_FAILURE)));let t=await z.sendTransaction(o,e),a=await e.confirmTransaction(t);if(a.value.err)return console.error("Transaction failed:",a.value.err),void O(new d.PrivyClientError("Something went wrong",void 0,d.PrivyErrorCode.TRANSACTION_FAILURE));E({eventName:g.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{provider:"external",status:"success",address:z.address,chainId:D.id,value:r.toString(),txHash:t}}),F(!0)}catch(e){if(console.error(e),/user rejected the request/gi.test(e.message||""))return void O(new d.PrivyClientError("Transaction was rejected by the user",void 0,d.PrivyErrorCode.TRANSACTION_FAILURE));O(new d.PrivyClientError("Something went wrong",void 0,d.PrivyErrorCode.TRANSACTION_FAILURE))}else O(new d.PrivyClientError(`Unable to select bridge option from quotes. Wallet ${y.formatSolanaWalletAddress(z.address)} does not have enough funds.`,void 0,d.PrivyErrorCode.INSUFFICIENT_BALANCE))})().catch(console.error)}),[]),i.useEffect((()=>{if(!L)return;let e=setTimeout(n,l.DEFAULT_SUCCESS_SCREEN_EXTRA_LONG_DURATION_MS);return()=>clearTimeout(e)}),[L]),i.useEffect((()=>{if(!U)return;let e={error:U,previousScreen:r.ModalScreen.FUNDING_TRANSFER_FROM_WALLET_SCREEN};N({funding:T?.funding,sendTransaction:T?.sendTransaction,errorModalData:e}),I(r.ModalScreen.ERROR_SCREEN,!1)}),[U]),L/*#__PURE__*/)return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(c.default,{}),/*#__PURE__*/e.jsx(s.RefactorSpacerTop,{}),/*#__PURE__*/e.jsxs(s.CenteredItemWithGap,{children:[/*#__PURE__*/e.jsx(A.default,{color:"var(--privy-color-success)",width:"64px",height:"64px"}),/*#__PURE__*/e.jsx(a.CenteredScreenHeader,{title:"Success!",description:`You’ve successfully added ${k} ${G} to your ${w.name} wallet. It may take a minute before the funds are available to use.`})]}),/*#__PURE__*/e.jsx(s.RefactorSpacerBottom,{}),/*#__PURE__*/e.jsx(t.BlobbyFooter,{})]});if(R&&z){let r=z?h.toDisplayName(z.walletClientType,z.connectorType,z.walletClientType)||"wallet":null;/*#__PURE__*/return e.jsx(S.TransferOrBridgeLoadingScreen,{wallet:z,displayName:r,addressToFund:H,isBridging:R,isErc20Flow:!1,chainId:D.id,chainName:D.name,totalPriceInUsd:void 0,totalPriceInNativeCurrency:void 0,gasPriceInUsd:void 0,gasPriceInNativeCurrency:void 0})}/*#__PURE__*/
|
|
2
2
|
return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(c.default,{}),/*#__PURE__*/e.jsx(u.NeutralSpinner,{}),/*#__PURE__*/e.jsx("div",{style:{marginTop:"1rem"}}),/*#__PURE__*/e.jsx(t.BlobbyFooter,{})]})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),r=require("react"),n=require("@privy-io/js-sdk-core"),o=require("../../components/Button.js"),i=require("../../components/Layouts.js"),s=require("../../components/ModalFooter.js"),c=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),t=require("../../components/ui/layout/Row.js"),a=require("../../components/ui/typography/ErrorMessage.js"),u=require("../../components/ui/typography/LabelSm.js"),l=require("../../components/ui/typography/Subtitle.js"),j=require("../../components/ui/typography/Title.js"),q=require("../../components/ui/wallet/NetworkBalanceCard.js"),h=require("../../components/ui/wallet/NetworkSelectorPanel.js"),m=require("../../lib/ethers.js"),d=require("./styles.js");require("styled-components"),require("../../components/Loader.js"),require("../../
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("react"),n=require("@privy-io/js-sdk-core"),o=require("../../components/Button.js"),i=require("../../components/Layouts.js"),s=require("../../components/ModalFooter.js"),c=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),t=require("../../components/ui/layout/Row.js"),a=require("../../components/ui/typography/ErrorMessage.js"),u=require("../../components/ui/typography/LabelSm.js"),l=require("../../components/ui/typography/Subtitle.js"),j=require("../../components/ui/typography/Title.js"),q=require("../../components/ui/wallet/NetworkBalanceCard.js"),h=require("../../components/ui/wallet/NetworkSelectorPanel.js"),m=require("../../lib/ethers.js"),d=require("./styles.js");require("styled-components"),require("../../components/Loader.js"),require("../../configuration/context.js"),require("../../config.js"),require("../../configuration/defaultClientConfig.js"),require("../../constants.js"),require("../../configuration/login-methods.js"),require("../../configuration/wallets.js"),require("../../connectors/chains/index.js"),require("../../connectors/chains/arbitrum.js"),require("../../connectors/chains/arbitrumSepolia.js"),require("../../connectors/chains/avalanche.js"),require("../../connectors/chains/avalancheFuji.js"),require("../../connectors/chains/base.js"),require("../../connectors/chains/baseSepolia.js"),require("../../connectors/chains/berachainArtio.js"),require("../../connectors/chains/celo.js"),require("../../connectors/chains/celoAlfajores.js"),require("../../connectors/chains/filecoin.js"),require("../../connectors/chains/filecoinCalibration.js"),require("../../connectors/chains/garnetHolesky.js"),require("../../connectors/chains/holesky.js"),require("../../connectors/chains/linea.js"),require("../../connectors/chains/lineaTestnet.js"),require("../../connectors/chains/lukso.js"),require("../../connectors/chains/mainnet.js"),require("../../connectors/chains/optimism.js"),require("../../connectors/chains/optimismSepolia.js"),require("../../connectors/chains/polygon.js"),require("../../connectors/chains/polygonAmoy.js"),require("../../connectors/chains/redstone.js"),require("../../connectors/chains/sepolia.js"),require("../../connectors/chains/zora.js"),require("../../connectors/chains/zoraSepolia.js"),require("../../connectors/chains/zoraTestnet.js"),require("../../connectors/chains/utils.js"),require("../../lib/solana/index.js"),require("../../theme.js"),require("tinycolor2"),require("../../lib/cybr53.js"),require("../../svg/protected-by-privy.js"),require("../../hooks/modal-context.js"),require("../../components/PrefetchedImage.js"),require("../index.js"),require("../../hooks/index.js"),require("../../components/ModalHeader.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("../../hooks/internal-context.js"),require("@heroicons/react/24/outline/WalletIcon"),require("../../components/ui/chips/Chip.js"),require("../../components/ui/animation/LoadingSkeleton.js"),require("../../components/ui/typography/Value.js"),require("../../components/ui/wallet/NetworkIcon.js"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("../../components/ui/icons/Arbitum.js"),require("../../components/ui/icons/Avalanche.js"),require("../../components/ui/icons/Base.js"),require("../../components/ui/icons/Celo.js"),require("../../components/ui/icons/Linea.js"),require("../../components/ui/icons/Mainnnet.js"),require("../../components/ui/icons/Optimism.js"),require("../../components/ui/icons/Polygon.js"),require("../../components/ui/icons/Solana.js"),require("../../components/ui/icons/Zora.js"),require("../../components/ui/wallet/shared.js"),require("@headlessui/react"),require("@heroicons/react/24/outline/ChevronDownIcon"),require("viem"),require("../../utils/index.js"),require("../../connectors/get-legacy-injected-providers.js"),require("../../connectors/is-wallet-installed.js"),require("../../errors.js"),require("ofetch"),require("../../utils/eth/getPublicClient.js"),require("../LinkPasskeyScreen.js"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("../../hooks/privy-context.js"),require("../../svg/face-id.js"),require("../../svg/fingerprint.js"),require("../MfaScreens/StyledComponents.js");exports.BridgeNetworkSelectionView=({displayName:p,errorMessage:g,configuredFundingChain:y,formattedBalance:b,fundingAmount:f,fundingCurrency:x,fundingAmountInUsd:k,options:C,selectedOption:S,isPreparing:w,isSubmitting:v,addressToFund:I,fundingWalletAddress:A,onSubmit:F,onSelect:T,onAmountChange:L})=>{let B=r.useRef(null);/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(c.default,{}),/*#__PURE__*/e.jsx(i.RefactorSpacerTop,{}),/*#__PURE__*/e.jsx(j.Title,{children:"Transfer from another network"}),/*#__PURE__*/e.jsxs(l.Subtitle,{children:["You need more funds on the ",y.name," network. Bridge from another blockchain network."]}),/*#__PURE__*/e.jsxs(d.FundingQuantityWrapper,{style:{marginTop:"2rem"},children:[/*#__PURE__*/e.jsxs(d.FundingQuantity,{onClick:()=>B.current?.focus(),children:[/*#__PURE__*/e.jsx(d.FundingAmountInput,{ref:B,value:f,onChange:e=>{let r=e.target.value;/^[0-9.]*$/.test(r)&&r.split(".").length-1<=1&&L(r)}}),/*#__PURE__*/e.jsx(d.FundingCurrency,{children:x})]}),k&&/*#__PURE__*/e.jsx(d.FundingDollars,{children:k})]}),/*#__PURE__*/e.jsxs(t.Row,{style:{marginTop:"1.5rem"},children:[/*#__PURE__*/e.jsx(u.LabelSm,{children:"From"}),/*#__PURE__*/e.jsx(u.LabelSm,{children:n.formatWalletAddress(A)})]}),/*#__PURE__*/e.jsx(h.NetworkSelectorPanel,{selected:{chain:S.chain,balance:m.getNativeCurrencyFromWei(S.balance,S.chain.nativeCurrency.symbol,3,!0)},options:C.map((({chain:e,balance:r})=>({chain:e,balance:m.getNativeCurrencyFromWei(r,e.nativeCurrency.symbol,3,!0)}))),onSelect:T}),/*#__PURE__*/e.jsxs(t.Row,{style:{marginTop:"1.5rem"},children:[/*#__PURE__*/e.jsx(u.LabelSm,{children:"To"}),/*#__PURE__*/e.jsx(u.LabelSm,{children:n.formatWalletAddress(I)})]}),/*#__PURE__*/e.jsx(q.NetworkBalanceCard,{chain:y,balance:b}),/*#__PURE__*/e.jsx(a.ErrorMessage,{style:{marginTop:"1rem"},children:g}),/*#__PURE__*/e.jsxs(o.PrimaryButtonWithoutGray,{style:{marginTop:"1rem"},loading:v||w,disabled:w||v,onClick:F,children:["Confirm with ",p]}),/*#__PURE__*/e.jsx(i.RefactorSpacerBottom,{}),/*#__PURE__*/e.jsx(s.BlobbyFooter,{})]})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),n=require("@heroicons/react/24/solid/CheckCircleIcon"),o=require("react"),i=require("styled-components"),s=require("../../components/Button.js"),t=require("../../components/Layouts.js"),c=require("../../components/Loader.js"),a=require("../../components/ModalFooter.js"),u=require("../../components/ModalHeader.js"),l=require("../../hooks/internal-context.js"),d=require("../../hooks/modal-context.js"),h=require("../../lib/funding/analytics.js"),j=require("../../svg/coinbase-wallet.js"),f=require("../index.js");function m(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("../../
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),n=require("@heroicons/react/24/solid/CheckCircleIcon"),o=require("react"),i=require("styled-components"),s=require("../../components/Button.js"),t=require("../../components/Layouts.js"),c=require("../../components/Loader.js"),a=require("../../components/ModalFooter.js"),u=require("../../components/ModalHeader.js"),l=require("../../hooks/internal-context.js"),d=require("../../hooks/modal-context.js"),h=require("../../lib/funding/analytics.js"),j=require("../../svg/coinbase-wallet.js"),f=require("../index.js");function m(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("../../configuration/context.js"),require("../../config.js"),require("../../configuration/defaultClientConfig.js"),require("../../constants.js"),require("../../configuration/login-methods.js"),require("../../configuration/wallets.js"),require("../../connectors/chains/index.js"),require("../../connectors/chains/arbitrum.js"),require("../../connectors/chains/arbitrumSepolia.js"),require("../../connectors/chains/avalanche.js"),require("../../connectors/chains/avalancheFuji.js"),require("../../connectors/chains/base.js"),require("../../connectors/chains/baseSepolia.js"),require("../../connectors/chains/berachainArtio.js"),require("../../connectors/chains/celo.js"),require("../../connectors/chains/celoAlfajores.js"),require("../../connectors/chains/filecoin.js"),require("../../connectors/chains/filecoinCalibration.js"),require("../../connectors/chains/garnetHolesky.js"),require("../../connectors/chains/holesky.js"),require("../../connectors/chains/linea.js"),require("../../connectors/chains/lineaTestnet.js"),require("../../connectors/chains/lukso.js"),require("../../connectors/chains/mainnet.js"),require("../../connectors/chains/optimism.js"),require("../../connectors/chains/optimismSepolia.js"),require("../../connectors/chains/polygon.js"),require("../../connectors/chains/polygonAmoy.js"),require("../../connectors/chains/redstone.js"),require("../../connectors/chains/sepolia.js"),require("../../connectors/chains/zora.js"),require("../../connectors/chains/zoraSepolia.js"),require("../../connectors/chains/zoraTestnet.js"),require("../../connectors/chains/utils.js"),require("../../lib/solana/index.js"),require("../../theme.js"),require("tinycolor2"),require("../../lib/cybr53.js"),require("../../svg/protected-by-privy.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("../../hooks/index.js"),require("../../components/PrefetchedImage.js");var g=/*#__PURE__*/m(r),p=/*#__PURE__*/m(n);let q=({status:r,onClickCta:n})=>{let{title:i,body:c,cta:a}=o.useMemo((()=>(e=>{switch(e){case"success":return{title:"You've funded your account!",body:"It may take a few minutes for the assets to appear.",cta:"Continue"};case"pending-after-flow":return{title:"In Progress",body:"Almost done. Retrieving transaction status from Coinbase",cta:""};case"error":case"pending-in-flow":return{title:"In Progress",body:"Go back to Coinbase Onramp to finish funding your account.",cta:""}}})(r)),[r]);/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsxs(v,{children:[/*#__PURE__*/e.jsx(y,{isSucccess:"success"===r}),/*#__PURE__*/e.jsxs(t.FixedGappedContainer,{children:[/*#__PURE__*/e.jsx("h3",{children:i}),/*#__PURE__*/e.jsx(b,{children:c})]})]}),a&&/*#__PURE__*/e.jsx(s.PrimaryButton,{onClick:n,children:a})]})},y=({isSucccess:r})=>{if(!r){let r="var(--privy-color-foreground-4)";/*#__PURE__*/return e.jsxs("div",{style:{position:"relative"},children:[/*#__PURE__*/e.jsx(c.Loader,{color:r,style:{position:"absolute"}}),/*#__PURE__*/e.jsx(c.LoaderFaint,{color:r}),/*#__PURE__*/e.jsx(j.CoinbaseWallet,{style:{position:"absolute",width:"2.8rem",height:"2.8rem",top:"1.2rem",left:"1.2rem"}})]})}let n=r?p.default:()=>/*#__PURE__*/e.jsx(g.default,{width:"3rem",height:"3rem",style:{backgroundColor:"var(--privy-color-foreground-4)",color:"var(--privy-color-background)",borderRadius:"100%",padding:"0.5rem",margin:"0.5rem"}}),o=r?"var(--privy-color-success)":"var(--privy-color-foreground-4)";/*#__PURE__*/return e.jsx("div",{style:{borderColor:o,display:"flex",justifyContent:"center",alignItems:"center",borderRadius:"100%",borderWidth:2,padding:"0.5rem",marginBottom:"0.5rem"},children:n&&/*#__PURE__*/e.jsx(n,{width:"4rem",height:"4rem",color:o})})},b=/*#__PURE__*/i.styled.p.withConfig({displayName:"StatusBody",componentId:"sc-96ef1540-0"})(["font-size:1rem;color:var(--privy-color-foreground-3);margin-bottom:1rem;display:flex;flex-direction:column;gap:1rem;"]),v=/*#__PURE__*/i.styled.div.withConfig({displayName:"ConnectContainer",componentId:"sc-96ef1540-1"})(["display:flex;flex-direction:column;align-items:center;justify-content:center;margin-left:1.75rem;margin-right:1.75rem;padding:2rem 0;"]);exports.CoinbaseOnrampStatusScreen=()=>{let{data:r,setModalData:n,navigate:i,navigateBack:s}=d.usePrivyModal(),{closePrivyModal:t,createAnalyticsEvent:c,client:j}=l.usePrivyInternal(),[m,g]=o.useState("pending-in-flow"),p=o.useRef(0),y={...r?.funding,showAlternateFundingMethod:!0};y.usingDefaultFundingMethod&&(y.usingDefaultFundingMethod=!1);let{partnerUserId:b,popup:v}=r?.coinbaseOnrampStatus??{};return o.useEffect((()=>{if("pending-in-flow"===m||"pending-after-flow"===m){let e=setInterval((async()=>{if(b)try{let{status:e}=await j.getCoinbaseOnRampStatus({partnerUserId:b});if("success"===e)return void g("success");if("failure"===e)throw Error("There was an error completing Coinbase Onramp flow.");if(p.current>=3)return n({funding:y}),void i(f.ModalScreen.FUNDING_METHOD_SELECTION_SCREEN);v?.closed&&(p.current=p.current+1,g("pending-after-flow"))}catch(e){console.error(e),g("error"),c({eventName:h.ON_RAMP_COMPLETE_ANALYTICS_EVENT,payload:{status:"failure",provider:"coinbase-onramp",error:e.message}}),n({funding:{...y,errorMessage:"Something went wrong adding funds. Please try again or use another method."}}),i(f.ModalScreen.FUNDING_METHOD_SELECTION_SCREEN)}}),1500);return()=>clearInterval(e)}}),[b,v,m]),/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(u.ModalHeader,{title:"Fund account",backFn:()=>{n({funding:y}),s()}},"header"),/*#__PURE__*/e.jsx(q,{status:m,onClickCta:t}),/*#__PURE__*/e.jsx(a.BlobbyFooter,{})]})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),r=require("react"),n=require("../../components/Button.js"),i=require("../../components/Layouts.js"),o=require("../../components/ModalFooter.js"),s=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),c=require("../../components/primitives/NeutralSpinner/index.js"),t=require("../../components/ui/typography/Title.js"),a=require("../../hooks/modal-context.js"),u=require("../../hooks/useGetTokenPrice.js"),l=require("../../lib/ethers.js"),j=require("./styles.js");require("styled-components"),require("../../components/Loader.js"),require("../../
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("react"),n=require("../../components/Button.js"),i=require("../../components/Layouts.js"),o=require("../../components/ModalFooter.js"),s=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),c=require("../../components/primitives/NeutralSpinner/index.js"),t=require("../../components/ui/typography/Title.js"),a=require("../../hooks/modal-context.js"),u=require("../../hooks/useGetTokenPrice.js"),l=require("../../lib/ethers.js"),j=require("./styles.js");require("styled-components"),require("../../components/Loader.js"),require("../../configuration/context.js"),require("../../config.js"),require("../../configuration/defaultClientConfig.js"),require("../../constants.js"),require("../../configuration/login-methods.js"),require("../../configuration/wallets.js"),require("../../connectors/chains/index.js"),require("../../connectors/chains/arbitrum.js"),require("../../connectors/chains/arbitrumSepolia.js"),require("../../connectors/chains/avalanche.js"),require("../../connectors/chains/avalancheFuji.js"),require("../../connectors/chains/base.js"),require("../../connectors/chains/baseSepolia.js"),require("../../connectors/chains/berachainArtio.js"),require("../../connectors/chains/celo.js"),require("../../connectors/chains/celoAlfajores.js"),require("../../connectors/chains/filecoin.js"),require("../../connectors/chains/filecoinCalibration.js"),require("../../connectors/chains/garnetHolesky.js"),require("../../connectors/chains/holesky.js"),require("../../connectors/chains/linea.js"),require("../../connectors/chains/lineaTestnet.js"),require("../../connectors/chains/lukso.js"),require("../../connectors/chains/mainnet.js"),require("../../connectors/chains/optimism.js"),require("../../connectors/chains/optimismSepolia.js"),require("../../connectors/chains/polygon.js"),require("../../connectors/chains/polygonAmoy.js"),require("../../connectors/chains/redstone.js"),require("../../connectors/chains/sepolia.js"),require("../../connectors/chains/zora.js"),require("../../connectors/chains/zoraSepolia.js"),require("../../connectors/chains/zoraTestnet.js"),require("../../connectors/chains/utils.js"),require("../../lib/solana/index.js"),require("../../theme.js"),require("tinycolor2"),require("../../lib/cybr53.js"),require("../../svg/protected-by-privy.js"),require("../index.js"),require("../../components/ModalHeader.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("../../hooks/internal-context.js"),require("../../hooks/index.js"),require("../../components/PrefetchedImage.js"),require("../../hooks/useGetSolPrice.js"),require("viem"),require("../../utils/index.js"),require("../../connectors/get-legacy-injected-providers.js"),require("../../connectors/is-wallet-installed.js"),require("../../errors.js"),require("ofetch"),require("../../utils/eth/getPublicClient.js"),require("../LinkPasskeyScreen.js"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("../../hooks/privy-context.js"),require("../../svg/face-id.js"),require("../../svg/fingerprint.js"),require("../MfaScreens/StyledComponents.js");exports.FundingAmountEditScreen=()=>{let{data:q,setModalData:h}=a.usePrivyModal(),d=q?.funding,m="solana"===d.chainType,p=r.useRef(null),{tokenPrice:g}=u.useGetTokenPrice(m?"solana":d.chain.id),y=m?void 0:d,x=!(!y?.erc20Address||y?.erc20ContractInfo),f=m?"SOL":d.erc20Address?d.erc20ContractInfo?.symbol:d.chain.nativeCurrency.symbol||"ETH",k=parseFloat(d.amount),C=!isNaN(k)&&k>0,b=g?l.getDollarsFromStringFloat(d.amount,g):void 0;/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(s.default,{}),/*#__PURE__*/e.jsx(t.Title,{children:"Confirm or edit amount"}),/*#__PURE__*/e.jsxs(i.FlexContainer,{style:{marginTop:"32px"},children:[/*#__PURE__*/e.jsx(j.FundingQuantityWrapper,{children:x?/*#__PURE__*/e.jsx(c.NeutralSpinner,{size:"50px"}):/*#__PURE__*/e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsxs(j.FundingQuantity,{onClick:()=>p.current?.focus(),children:[/*#__PURE__*/e.jsx(j.FundingAmountInputLarge,{ref:p,value:d.amount,onChange:e=>{let r=e.target.value;/^[0-9.]*$/.test(r)&&r.split(".").length-1<=1&&h({...q,funding:{...d,amount:r}})}}),/*#__PURE__*/e.jsx(j.FundingCurrency,{children:f})]}),!y?.erc20Address&&/*#__PURE__*/e.jsx(j.FundingDollars,{children:b&&C?`${b} USD`:""})]})}),/*#__PURE__*/e.jsx(n.PrimaryButtonWithoutGray,{style:{marginTop:"1rem"},disabled:!C,onClick:d.onContinueWithExternalWallet,children:"Continue"})]}),/*#__PURE__*/e.jsx(o.BlobbyFooter,{})]})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/CreditCardIcon"),n=require("@heroicons/react/24/outline/QrCodeIcon"),i=require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),o=require("react"),s=require("viem/utils"),t=require("../../components/ModalFooter.js"),a=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),c=require("../../components/ui/banners/ErrorBanner.js"),u=require("../../components/ui/banners/InfoBanner.js"),l=require("../../components/ui/icons/ApplePay.js"),d=require("../../components/ui/icons/GooglePay.js"),h=require("../../configuration/context.js"),j=require("../../hook-utils/useAsyncValue.js"),q=require("../../hooks/internal-context.js"),g=require("../../hooks/modal-context.js"),p=require("../../hooks/useWallets.js"),f=require("../../icons/WalletCards.js"),m=require("../../lib/erc20/actions/getErc20TokenInfo.js"),y=require("../../lib/external-wallets/displayHelpers.js"),b=require("../../lib/funding/prepareFundingMethods.js"),C=require("../../payment-request/isPaymentRequestAvailable.js"),x=require("../LandingScreen/styles.js"),v=require("../index.js"),F=require("./styles.js"),I=require("../../hooks/solana/useSolanaWallets.js");function k(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("../../svg/protected-by-privy.js"),require("../../
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/CreditCardIcon"),n=require("@heroicons/react/24/outline/QrCodeIcon"),i=require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),o=require("react"),s=require("viem/utils"),t=require("../../components/ModalFooter.js"),a=require("../../components/embedded-wallets/FundWalletMethodHeader.js"),c=require("../../components/ui/banners/ErrorBanner.js"),u=require("../../components/ui/banners/InfoBanner.js"),l=require("../../components/ui/icons/ApplePay.js"),d=require("../../components/ui/icons/GooglePay.js"),h=require("../../configuration/context.js"),j=require("../../hook-utils/useAsyncValue.js"),q=require("../../hooks/internal-context.js"),g=require("../../hooks/modal-context.js"),p=require("../../hooks/useWallets.js"),f=require("../../icons/WalletCards.js"),m=require("../../lib/erc20/actions/getErc20TokenInfo.js"),y=require("../../lib/external-wallets/displayHelpers.js"),b=require("../../lib/funding/prepareFundingMethods.js"),C=require("../../payment-request/isPaymentRequestAvailable.js"),x=require("../LandingScreen/styles.js"),v=require("../index.js"),F=require("./styles.js"),I=require("../../hooks/solana/useSolanaWallets.js");function k(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("../../svg/protected-by-privy.js"),require("../../config.js"),require("../../configuration/defaultClientConfig.js"),require("../../constants.js"),require("../../configuration/login-methods.js"),require("../../configuration/wallets.js"),require("../../connectors/chains/index.js"),require("../../connectors/chains/arbitrum.js"),require("../../connectors/chains/arbitrumSepolia.js"),require("../../connectors/chains/avalanche.js"),require("../../connectors/chains/avalancheFuji.js"),require("../../connectors/chains/base.js"),require("../../connectors/chains/baseSepolia.js"),require("../../connectors/chains/berachainArtio.js"),require("../../connectors/chains/celo.js"),require("../../connectors/chains/celoAlfajores.js"),require("../../connectors/chains/filecoin.js"),require("../../connectors/chains/filecoinCalibration.js"),require("../../connectors/chains/garnetHolesky.js"),require("../../connectors/chains/holesky.js"),require("../../connectors/chains/linea.js"),require("../../connectors/chains/lineaTestnet.js"),require("../../connectors/chains/lukso.js"),require("../../connectors/chains/mainnet.js"),require("../../connectors/chains/optimism.js"),require("../../connectors/chains/optimismSepolia.js"),require("../../connectors/chains/polygon.js"),require("../../connectors/chains/polygonAmoy.js"),require("../../connectors/chains/redstone.js"),require("../../connectors/chains/sepolia.js"),require("../../connectors/chains/zora.js"),require("../../connectors/chains/zoraSepolia.js"),require("../../connectors/chains/zoraTestnet.js"),require("../../connectors/chains/utils.js"),require("../../lib/solana/index.js"),require("../../theme.js"),require("tinycolor2"),require("../../lib/cybr53.js"),require("../../components/ModalHeader.js"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("../../hooks/index.js"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("../../components/PrefetchedImage.js"),require("viem"),require("../../utils/eth/getPublicClient.js"),require("../../errors.js"),require("ofetch"),require("../../svg/brave-browser-icon.js"),require("../../svg/bybit.js"),require("../../svg/coinbase-wallet.js"),require("../../svg/cryptocom.js"),require("../../svg/metamask.js"),require("../../svg/phantom.js"),require("../../svg/rabby.js"),require("../../svg/rainbow.js"),require("../../svg/safe.js"),require("../../svg/uniswap.js"),require("../../svg/universal-profile.js"),require("../../svg/wallet-connect.js"),require("../../svg/zerion.js"),require("../../lib/funding/coinbase/isSupportedChainIdForCoinbaseOnramp.js"),require("../../lib/funding/coinbase/triggerCoinbaseFlow.js"),require("@privy-io/js-sdk-core"),require("../../lib/popup/triggerPopup.js"),require("../../lib/funding/coinbase/toCoinbaseBlockchainFromChainId.js"),require("../../lib/funding/moonpay/index.js"),require("../../lib/funding/analytics.js"),require("../../lib/funding/moonpay/triggerMoonpayFlow.js"),require("../../components/Button.js"),require("../../components/Loader.js"),require("../LinkPasskeyScreen.js"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("../../hooks/privy-context.js"),require("../../svg/face-id.js"),require("../../svg/fingerprint.js"),require("../MfaScreens/StyledComponents.js");var w=/*#__PURE__*/k(r),A=/*#__PURE__*/k(n),M=/*#__PURE__*/k(i);exports.FundingMethodSelectionScreen=()=>{let{wallets:r}=p.useWallets(),{wallets:n}=I.useSolanaWallets(),{navigate:i,data:k,setModalData:W}=g.usePrivyModal(),{client:S}=q.usePrivyInternal(),E=h.useAppConfig(),T=k?.funding,L=j.useAsyncValue(C.isApplePayPotentiallyAvailable),P=j.useAsyncValue(C.isGooglePayPotentiallyAvailable),B="solana"===T.chainType,N=B?void 0:T,R=o.useMemo((()=>b.prepareFundingMethods(E,S,T,W,i,k)),[E,S,T,k,W,i]);o.useEffect((()=>{if(T?.defaultFundingMethod&&T.usingDefaultFundingMethod)switch(W({funding:{...T,usingDefaultFundingMethod:!1}}),T?.defaultFundingMethod){case"card":R.onFundWithCard[0]&&R.onFundWithCard[0]();break;case"exchange":R.onFundWithExchange&&R.onFundWithExchange();break;case"wallet":R.onFundWithWallet&&R.onFundWithWallet();break;case"manual":i(v.ModalScreen.FUNDING_MANUAL_TRANSFER_SCREEN)}}),[]),o.useEffect((()=>{N?.erc20Address&&!N.erc20ContractInfo&&m.getErc20TokenInfo({address:N.erc20Address,chain:N.chain,rpcConfig:E.rpcConfig,privyAppId:E.id}).then((e=>{W({...k,funding:{...N,erc20ContractInfo:e?{symbol:e.symbol,decimals:e.decimals}:void 0}})})).catch(console.error)}),[N?.erc20Address,N?.chain]);let D=B?n.find((({address:e})=>e===T.address)):r.find((({address:e})=>s.getAddress(e)===s.getAddress(T.address))),_=D&&"privy"!==D.walletClientType?y.toDisplayName(D.walletClientType,D.connectorType,D.walletClientType):E.name,G=!(!N?.erc20Address||N?.erc20ContractInfo);/*#__PURE__*/return e.jsxs(e.Fragment,{children:[/*#__PURE__*/e.jsx(a.default,{}),/*#__PURE__*/e.jsxs("h3",{children:["Add funds to your"," ",_?.toLowerCase().endsWith("wallet")?_:_+" wallet"]}),/*#__PURE__*/e.jsxs(F.FundingMethodContainer,{children:[T.errorMessage&&/*#__PURE__*/e.jsx(c.ErrorBanner,{theme:E.appearance.palette.colorScheme,children:T.errorMessage}),R.onFundWithCard?.[0]&&/*#__PURE__*/e.jsxs(x.LoginMethodButton,{disabled:G,onClick:R.onFundWithCard[0],children:[/*#__PURE__*/e.jsx(F.IconContainer,{children:/*#__PURE__*/e.jsx(w.default,{style:{width:24}})}),"Pay with card",L?/*#__PURE__*/e.jsx(l.ApplePay,{style:{marginLeft:"auto",maxWidth:"100%",width:"auto",height:"0.875rem"}}):P?/*#__PURE__*/e.jsx(d.GooglePay,{style:{marginLeft:"auto",maxWidth:"100%",width:"auto",height:"0.875rem"}}):null]}),R.onFundWithExchange&&/*#__PURE__*/e.jsxs(x.LoginMethodButton,{disabled:G,onClick:R.onFundWithExchange,children:[/*#__PURE__*/e.jsx(F.IconContainer,{children:/*#__PURE__*/e.jsx(M.default,{style:{width:24}})}),"Transfer from an exchange"]}),R.onFundWithWallet&&/*#__PURE__*/e.jsxs(x.LoginMethodButton,{disabled:G,onClick:R.onFundWithWallet,children:[/*#__PURE__*/e.jsx(F.IconContainer,{children:/*#__PURE__*/e.jsx(f.WalletCards,{style:{width:24}})}),"Transfer from wallet"]}),/*#__PURE__*/e.jsxs(x.LoginMethodButton,{disabled:G,onClick:()=>i(v.ModalScreen.FUNDING_MANUAL_TRANSFER_SCREEN),children:[/*#__PURE__*/e.jsx(F.IconContainer,{children:/*#__PURE__*/e.jsx(A.default,{style:{width:24}})}),"Receive funds"]}),T?.showAlternateFundingMethod&&R.onFundWithCard?.[1]&&/*#__PURE__*/e.jsx(u.InfoBanner,{theme:E.appearance.palette.colorScheme,children:/*#__PURE__*/e.jsxs(F.InfoButtonText,{children:["Having trouble or facing location restrictions?"," ",/*#__PURE__*/e.jsx(F.InfoButtonLink,{onClick:R.onFundWithCard[1],children:"Try a different provider."})]})})]}),/*#__PURE__*/e.jsx(t.BlobbyFooter,{})]})};
|