@privy-io/react-auth
Version:
React client for the Privy Auth API
2 lines (1 loc) • 2.45 kB
JavaScript
;var e=require("react/jsx-runtime"),t=require("react"),r=require("./get-is-unified-wallet-D4ouXJpi.js"),i=require("./ScreenLayout-BeH-Q6N2.js");require("viem"),require("./context-DFq1obBO.js"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("./internal-context-NWsAL807.js"),require("ofetch"),require("./Button-Bm_Ft0Dw.js"),require("styled-components"),require("./useActiveWallet-BOX8xCn9.js"),require("zustand"),require("react-device-detect"),require("./prepareFundingModalData-Cnd6rhhJ.js"),require("eventemitter3"),require("./events-context-Di6--rDg.js"),require("viem/utils"),require("./getPublicClient-CGlodIp_.js"),require("./useWallets-BLFNjTwC.js"),require("./Screen-D9Tvi297.js"),require("./ModalHeader-DB7Tbjwz.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("./index-CRFXS9pP.js");const o=({title:t,subtitle:r,buttonText:o,buttonHref:n,isLoading:l=!1,helpText:a,onButtonClick:u})=>/*#__PURE__*/e.jsx(i.ScreenLayout,{title:t,subtitle:r,primaryCta:{label:o,onClick:()=>{n&&window.open(n,"_self"),u?.()},disabled:l},helpText:a,watermark:!0}),n={component:()=>{let{ready:i}=r.usePrivyContext(),{data:n}=r.usePrivyModal(),[l,a]=t.useState(!1);if(!n?.installWalletModalData)throw Error("Wallet data is missing");let{walletConfig:u,connectOnly:s,chainType:c}=n.installWalletModalData,d=u.getMobileRedirect({useUniversalLink:!l,isSolana:"solana"===c,connectOnly:s}),p=u.name.replace(/ wallet/gi,""),q={title:`Redirecting to ${p} Mobile Wallet`,description:`We'll take you to the ${p} Mobile Wallet app to continue your login experience.`,footnote:""};return i&&(q.description=`For the best experience, we'll automatically log you into the ${p} Mobile Wallet in-app browser.`,q.footnote="You can always return here to login via other methods."),l&&(q.title="Still here?",q.description=`You may need to install the ${u.name} mobile app.`,q.footnote=`Once you're done, you can connect with ${u.name} wallet to complete the login.`),/*#__PURE__*/e.jsx(o,{title:q.title,subtitle:q.description,buttonText:l?"Go to App Store":"Continue",buttonHref:d,isLoading:i&&!d,helpText:q.footnote||void 0,onButtonClick:()=>{setTimeout((()=>a(!0)),1e3)}})}};exports.WalletInterstitialScreen=n,exports.WalletInterstitialScreenView=o,exports.default=n;