@privy-io/react-auth
Version:
React client for the Privy Auth API
2 lines (1 loc) • 3.6 kB
JavaScript
import{jsx as o}from"react/jsx-runtime";import{useState as t,useEffect as e,useRef as r}from"react";import{u as i}from"./get-is-unified-wallet-gMDXpX6C.mjs";import{u as n}from"./index-NL2cPmJD.mjs";import{V as m,a as s,b as c,t as a}from"./to-ui-error-CYFXznYy.mjs";import"viem";import"./context-DRLoVlsO.mjs";import"@privy-io/js-sdk-core";import"tinycolor2";import"./internal-context-e-Eni5bG.mjs";import"ofetch";import"uuid";import"jose";import"eventemitter3";import"./useActiveWallet-BeOB3HTh.mjs";import"zustand";import"styled-components";import"react-device-detect";import"./prepareFundingModalData-BVTcQcmw.mjs";import"./events-context-CI0iqAXA.mjs";import"viem/utils";import"./getPublicClient-A9RSftUZ.mjs";import"./useWallets-kObl6ZLS.mjs";import"@coinbase/wallet-sdk";import"@privy-io/ethereum";import"mipd";import"@privy-io/popup";import"./paths-3HW55qZg.mjs";import"./usePrivy-BWtc2XF-.mjs";import"@scure/base";import"@headlessui/react";import"@walletconnect/ethereum-provider";import"@privy-io/urls";import"js-cookie";import"./frame-CwE9r3cT.mjs";import"@privy-io/routes";import"x402/client";import"@privy-io/api-base";import"viem/accounts";import"./use-sign-with-user-signer-eEm9Olt_.mjs";import"./getEmbeddedConnectedWallet-CM6cDQCS.mjs";import"@heroicons/react/24/outline/DevicePhoneMobileIcon";import"@heroicons/react/24/outline/FingerPrintIcon";import"@heroicons/react/24/outline/PhoneIcon";import"@heroicons/react/24/outline/ShieldCheckIcon";import"./ModalHeader-BTru6YQw.mjs";import"@heroicons/react/24/outline/ArrowLeftIcon";import"@heroicons/react/24/outline/ArrowRightIcon";import"@heroicons/react/24/outline/QuestionMarkCircleIcon";import"@heroicons/react/24/outline/XMarkIcon";import"./ScreenLayout-CNho46nP.mjs";import"./Button-BCV6mjvS.mjs";import"./Screen-_0H_rCdH.mjs";import"./index-CJMgUOnw.mjs";import"./PinInput-C3_MNxMt.mjs";import"@heroicons/react/24/outline/CalendarIcon";import"@heroicons/react/24/outline/ExclamationTriangleIcon";import"./StackedContainer-BrIQsdas.mjs";import"./useGetTokenPrice-CDPxMEO-.mjs";import"./useGetSolPrice-Cfm8o9C5.mjs";import"./TransactionDetails-BdW2lq_B.mjs";import"./WalletLink-Cj92ni3W.mjs";import"./ethers-Bl5aM5Gz.mjs";import"./getFormattedUsdFromLamports-B6EqSEho.mjs";import"./transaction-CnfuREWo.mjs";import"./Layouts-Bmf8DxNP.mjs";import"@heroicons/react/24/outline/ChevronDownIcon";const p=({onClose:p})=>{let{user:l}=i(),[u,d]=t(l?.mfaMethods[0]??null),{init:h,cancel:j,submit:f}=n(),[v,y]=t(!1),[k,g]=t(null),[w,b]=t();e((()=>{d(l?.mfaMethods[0]??null)}),[l?.mfaMethods]);let C=r(!1);async function I(o){b(void 0);try{if(!o||!u)return;await f(u,o),y(!0),b(void 0),p()}catch(o){throw a(o).error}}async function M(o){if("passkey"!==o)try{d(o),await h(o)}catch(o){console.error(o)}else try{d(o);let t=await h(o);if(!t)throw Error("something went wrong");g(t),await f(o,t),y(!0),b(void 0),p()}catch(o){b(a(o))}}e((()=>{!C.current&&u&&(C.current=!0,M(u).finally((()=>{C.current=!1})))}),[]);let S=()=>{d(null),b(void 0),j(),p()};return l?"passkey"===u?/*#__PURE__*/o(m,{account:l.linkedAccounts.filter((o=>"passkey"===o.type&&o.enrolledInMfa)).sort(((o,t)=>t.firstVerifiedAt.valueOf()-o.firstVerifiedAt.valueOf()))[0],submitSuccess:v,hasBlockingError:w?.isBlocking??!1,error:w?.error,onClose:S,onBack:()=>{d(null),b(void 0)},handleSubmit:()=>I(k).catch(b)}):u?/*#__PURE__*/o(s,{submitSuccess:v,hasBlockingError:w?.isBlocking??!1,handleSubmitCode:I,selectedMethod:u,onClose:S,onBack:l.mfaMethods.length>1?()=>d(null):void 0}):/*#__PURE__*/o(c,{user:l,onSelect:M,handleClose:S}):null};export{p as MfaVerifyFlowScreen,p as default};