UNPKG

@privy-io/react-auth

Version:

React client for the Privy Auth API

2 lines (1 loc) 2.48 kB
"use strict";var e=require("react/jsx-runtime"),r=require("@heroicons/react/24/outline/PhoneIcon"),t=require("react"),i=require("./ConnectPhoneForm-C0SpJtis.js"),n=require("./internal-context-NWsAL807.js"),o=require("./get-is-unified-wallet-D6pn8A8g.js"),u=require("./ScreenLayout-D6r13vU7.js");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("styled-components"),require("@privy-io/js-sdk-core"),require("./context-BPd2qxKv.js"),require("tinycolor2"),require("./useActiveWallet-B-Pd49hn.js"),require("zustand"),require("react-device-detect"),require("./prepareFundingModalData-Do7d2fgq.js"),require("eventemitter3"),require("./events-context-Di6--rDg.js"),require("viem"),require("viem/utils"),require("./getPublicClient-CGlodIp_.js"),require("./useWallets-Bi_kf80t.js"),require("./Button-BEaVAnh4.js"),require("./Chip-ChrHHazc.js"),require("./LoadingSkeleton-DoCrfGnl.js"),require("ofetch"),require("./Screen-J7z62u7O.js"),require("./ModalHeader-n6Aqpos_.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");var s=/*#__PURE__*/a(r);const c=({title:r="Update your phone number",subtitle:n="Add the phone number you'd like to use going forward. We'll send you a confirmation code",onSubmit:o,isSubmitting:a=!1})=>{let[c,l]=t.useState(null);/*#__PURE__*/return e.jsx(u.ScreenLayout,{title:r,subtitle:n,icon:s.default,primaryCta:{label:a?"Submitting":"Update",onClick:async()=>{c?.qualifiedPhoneNumber&&await o(c)},disabled:!c?.isValid||a},watermark:!0,children:/*#__PURE__*/e.jsx(i.ConnectPhoneNumberForm,{onChange:e=>{l(e)},onSubmit:async()=>{},noIncludeSubmitButton:!0,hideRecent:!0})})},l={component:()=>{let{currentScreen:r,data:i,navigate:u,setModalData:a}=o.usePrivyModal(),{user:s}=o.usePrivyContext(),{initUpdatePhone:l}=n.usePrivyInternal(),[d,q]=t.useState(!1);/*#__PURE__*/return e.jsx(c,{onSubmit:async e=>{q(!0);try{if(!s?.phone?.number)throw Error("User is required to have an phone number to update it.");await l(s?.phone?.number,e.qualifiedPhoneNumber),u("AwaitingPasswordlessCodeScreen")}catch(e){a({errorModalData:{error:e,previousScreen:i?.errorModalData?.previousScreen||r||"LinkPhoneScreen"}}),u("ErrorScreen")}finally{q(!1)}},isSubmitting:d})}};exports.UpdatePhoneScreen=l,exports.UpdatePhoneScreenView=c,exports.default=l;