UNPKG

@privy-io/react-auth

Version:

React client for the Privy Auth API

2 lines (1 loc) 2.45 kB
"use strict";var e=require("react/jsx-runtime"),t=require("react"),r=require("./get-is-unified-wallet-UpdjHxOV.js"),i=require("./ScreenLayout-CMb-Fua0.js");require("@privy-io/are-addresses-equal"),require("./context-D-ZJYjUg.js"),require("@privy-io/js-sdk-core"),require("tinycolor2"),require("./internal-context-BJv4f_bO.js"),require("ofetch"),require("./ModalHeader-BCPQgekO.js"),require("styled-components"),require("./useActiveWallet-Cn6zOXx5.js"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-B5ujV5Nk.js"),require("eventemitter3"),require("viem/utils"),require("./useWallets-CKAypPZB.js"),require("./events-context-Di6--rDg.js"),require("viem"),require("./getPublicClient-BsmZyCGX.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("./Screen-BfKedqka.js"),require("./index-ByFhjjzH.js");const o=({title:t,subtitle:r,buttonText:o,buttonHref:l,isLoading:n=!1,helpText:a,onButtonClick:s})=>/*#__PURE__*/e.jsx(i.ScreenLayout,{title:t,subtitle:r,primaryCta:{label:o,onClick:()=>{l&&window.open(l,"_self"),s?.()},disabled:n},helpText:a,watermark:!0}),l={component:()=>{let{ready:i}=r.usePrivyContext(),{data:l}=r.usePrivyModal(),[n,a]=t.useState(!1);if(!l?.installWalletModalData)throw Error("Wallet data is missing");let{walletConfig:s,connectOnly:u,chainType:c}=l.installWalletModalData,d=s.getMobileRedirect({useUniversalLink:!n,isSolana:"solana"===c,connectOnly:u}),p=s.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."),n&&(q.title="Still here?",q.description=`You may need to install the ${s.name} mobile app.`,q.footnote=`Once you're done, you can connect with ${s.name} wallet to complete the login.`),/*#__PURE__*/e.jsx(o,{title:q.title,subtitle:q.description,buttonText:n?"Go to App Store":"Continue",buttonHref:d,isLoading:i&&!d,helpText:q.footnote||void 0,onButtonClick:()=>{setTimeout((()=>a(!0)),1e3)}})}};exports.WalletInterstitialScreen=l,exports.WalletInterstitialScreenView=o,exports.default=l;