@privy-io/react-auth
Version:
React client for the Privy Auth API
2 lines (1 loc) • 2.64 kB
JavaScript
;var e=require("react/jsx-runtime"),r=require("lucide-react"),t=require("react"),s=require("./WalletInfoCard-B7ARTvO5.js"),i=require("./context-Cg3IEi80.js"),o=require("./internal-context-BJv4f_bO.js"),n=require("./privy-context-CrM9_s6G.js"),a=require("./ScreenLayout-C4QHZMbl.js");require("styled-components"),require("./ModalHeader-C5Wuo3-1.js"),require("./useActiveWallet-BfMD5hzE.js"),require("zustand"),require("react-device-detect"),require("./use-export-wallet-_EIyxyle.js"),require("./useWallets-dikDynAG.js"),require("viem"),require("@privy-io/js-sdk-core"),require("eventemitter3"),require("viem/utils"),require("./events-context-Di6--rDg.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("./ErrorMessage-BfTVyue9.js"),require("./LabelXs-C8rLnCfU.js"),require("./Address-BeuDoSGB.js"),require("./shared-DBm7PUrg.js"),require("tinycolor2"),require("ofetch"),require("@privy-io/are-addresses-equal"),require("./Screen-DWnRbzSA.js"),require("./index-ByFhjjzH.js");const c=({appName:t,address:i,success:o,error:n,onAccept:c,onDecline:u,onClose:l})=>o||n?/*#__PURE__*/e.jsx(a.ScreenLayout,{title:n?"Something went wrong":"Success!",subtitle:n?"Please try again.":`You've successfully granted delegated action permissions to ${t}.`,icon:n?r.AlertCircle:r.CheckCircle,iconVariant:n?"error":"success",onBack:l,watermark:!0}):/*#__PURE__*/e.jsx(a.ScreenLayout,{title:"Enable offline access",subtitle:`By confirming, ${t} will be able to use your wallet for you even when you're not around. You can revoke this later.`,icon:r.CloudUpload,primaryCta:{label:"Accept",onClick:c},secondaryCta:{label:"Not now",onClick:u},onBack:l,watermark:!0,children:/*#__PURE__*/e.jsx(s.WalletInfoCard,{address:i,title:"Wallet"})}),u={component:()=>{let{data:r}=n.usePrivyModal(),s=i.useAppConfig(),{closePrivyModal:a}=o.usePrivyInternal(),[u,l]=t.useState(!1),[d,q]=t.useState(),{address:y,onDelegate:j,onSuccess:p,onError:C}=r.delegatedActions.consent,m=async()=>{u?p():C(d??new o.PrivyClientError("User declined delegating actions.")),a({shouldCallAuthOnSuccess:!1})};return t.useEffect((()=>{if(!u&&!d)return;let e=setTimeout(m,i.DEFAULT_SUCCESS_SCREEN_LONG_DURATION_MS);return()=>clearTimeout(e)}),[u,d]),/*#__PURE__*/e.jsx(c,{appName:s.name,address:y,success:u,error:d,onAccept:async()=>{try{await j(),l(!0)}catch(e){q(e)}},onDecline:()=>{m()},onClose:m})}};exports.DelegatedActionsConsentScreen=u,exports.DelegatedActionsConsentScreenView=c,exports.default=u;