@privy-io/react-auth
Advanced tools
Comparing version
@@ -1,1 +0,1 @@ | ||
"use strict";var e=require("@abstract-foundation/agw-client"),r=require("@abstract-foundation/agw-client/actions"),n=require("viem"),o=require("viem/accounts"),t=require("viem/chains"),i=require("./privy-provider-BivyFPW2.js"),a=require("./internal-context-GxD_jR-e.js"),c=require("./getEmbeddedConnectedWallet-DTU4T9TJ.js"),s=require("./smart-wallets-qD-P9gIh.js");require("react/jsx-runtime"),require("mipd"),require("react"),require("react-device-detect"),require("viem/utils"),require("@privy-io/js-sdk-core"),require("uuid"),require("jose"),require("eventemitter3"),require("@coinbase/wallet-sdk"),require("@marsidev/react-turnstile"),require("styled-components"),require("tinycolor2"),require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("@heroicons/react/24/outline/PhoneIcon"),require("@heroicons/react/24/outline/ShieldCheckIcon"),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("@heroicons/react/24/outline/ChevronDownIcon"),require("@heroicons/react/24/outline/CalendarIcon"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("zustand"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/UserCircleIcon"),require("@heroicons/react/24/outline/EnvelopeIcon"),require("@heroicons/react/20/solid/CheckIcon"),require("@heroicons/react/24/outline/WalletIcon"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("@heroicons/react/24/outline/ExclamationCircleIcon"),require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"),require("@heroicons/react/24/solid/DocumentCheckIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("qrcode"),require("@heroicons/react/24/outline/ChevronRightIcon"),require("@heroicons/react/24/outline/LockClosedIcon"),require("@heroicons/react/24/outline/PencilSquareIcon"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("@heroicons/react/24/outline/CreditCardIcon"),require("@heroicons/react/24/outline/QrCodeIcon"),require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("ofetch"),require("@heroicons/react/24/outline"),require("@heroicons/react/24/outline/ClipboardDocumentIcon"),require("@heroicons/react/24/outline/CloudArrowUpIcon"),require("@heroicons/react/24/outline/NoSymbolIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/IdentificationIcon"),require("@heroicons/react/24/outline/MinusCircleIcon"),require("@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon"),require("@heroicons/react/24/solid/ShieldCheckIcon"),require("js-cookie"),require("permissionless"),require("permissionless/accounts"),require("permissionless/clients/pimlico"),require("viem/account-abstraction"),exports.useAbstractSmartWallets=function(){let{user:l}=i.usePrivyContext(),{hideWalletUIs:u,openPrivyModal:d,chains:h,appId:p,rpcConfig:g,client:q}=a.usePrivyInternal(),m=i.useAppConfig(),{wallets:y}=i.useWallets(),{setModalData:I}=i.usePrivyModal(),C=i.getPrivyEthereumWallet(l),v=async(r=t.abstractTestnet.id)=>{let a=c.getEmbeddedConnectedWallet(y);if(!a)throw Error("No connected wallet found");let s="string"==typeof r?n.hexToNumber(r):r;if(![t.abstractTestnet.id,2741].includes(s))throw Error("Error, only Abstract chains are supported");let l=h.find((e=>e.id===s));if(!l)throw Error("Chain not configured");await a.switchChain(l.id);let u=await a.getEthereumProvider(),d=n.createWalletClient({account:a.address,transport:n.custom(u)}),q=o.toAccount({address:a.address,signMessage:d.signMessage,signTransaction:d.signTransaction,signTypedData:d.signTypedData});return await e.createAbstractClient({chain:l,transport:n.http(i.getJsonRpcEndpointFromChain(l,g,p)),publicTransport:n.http(i.getJsonRpcEndpointFromChain(l,g,p)),signer:q})};return{signMessage:async({message:e},r)=>{let n=await v(r);return new Promise((async(r,o)=>{let{entropyId:t,entropyIdVerifier:a}=i.getEntropyDetailsForUser(l);u.current=!0,I({connectWallet:{recoveryMethod:C.recoveryMethod,connectingWalletAddress:C.address,entropyId:t,entropyIdVerifier:a,onCompleteNavigateTo:i.SignRequestScreen,onFailure:()=>{}},signMessage:{method:"personal_sign",data:e,confirmAndSign:()=>n.signMessage({message:e}),onSuccess:e=>r(e),onFailure:o,uiOptions:{isCancellable:!0}}}),d(i.EmbeddedWalletConnectingScreen)})).finally((()=>{u.current=!1}))},signTypedData:async(e,r)=>{let n=await v(r);return new Promise((async(r,o)=>{u.current=!0;let{entropyId:t,entropyIdVerifier:a}=i.getEntropyDetailsForUser(l);I({connectWallet:{recoveryMethod:C.recoveryMethod,connectingWalletAddress:C.address,entropyId:t,entropyIdVerifier:a,onCompleteNavigateTo:i.SignRequestScreen,onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:e,confirmAndSign:()=>n.signTypedData(e),onSuccess:e=>r(e),onFailure:o,uiOptions:{isCancellable:!0}}}),d(i.EmbeddedWalletConnectingScreen)})).finally((()=>{u.current=!1}))},sendTransaction:async e=>{let n=await v(e.chainId),o=[],t="calls"in e&&void 0!==e.calls;return o=t?[...e.calls]:[e],new Promise((async(a,c)=>{u.current=!0;let{entropyId:h,entropyIdVerifier:p}=i.getEntropyDetailsForUser(l);I({connectWallet:{recoveryMethod:C.recoveryMethod,connectingWalletAddress:C.address,entropyId:h,entropyIdVerifier:p,onCompleteNavigateTo:i.SendTransactionScreen,onFailure:()=>{}},sendTransaction:{transactionRequests:s.callsToTransactionRequests({calls:o,chain:n.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),entropyId:h,entropyIdVerifier:p,transactingWalletAddress:n.account.address,transactingWalletIndex:void 0,scanTransaction:async()=>{if(!q)throw Error("Privy client not found");let o=t?r.getBatchTransactionObject(n.account.address,e):e,i=await n.prepareAbstractTransactionRequest(o);return await q.scanTransaction({metadata:{domain:m.embeddedWallets.transactionScanning.domain},chain_id:i.chainId.toString(),request:{method:"eth_sendTransaction",params:[{from:i.from,to:i.to,value:i.value?.toString(),gas:i.gas?.toString(),gasPrice:i.gasPrice?.toString(),nonce:i.nonce?.toString(),data:i.data,eip_712_meta:{paymaster_params:{paymaster:i.paymaster,paymaster_input:i.paymasterInput}}}]}})},signOnly:!1,getIsSponsored:async()=>void 0!==e.paymaster&&void 0!==e.paymasterInput,onConfirm:()=>t?n.sendTransactionBatch(e):n.sendTransaction(e),onSuccess:e=>a(e.hash),onFailure:c,uiOptions:{isCancellable:!0}}}),d(i.EmbeddedWalletConnectingScreen)})).finally((()=>{u.current=!1}))},signTransaction:async e=>{let n=await v(e.chainId),o=[],t="calls"in e&&void 0!==e.calls;return o=t?[...e.calls]:[e],new Promise((async(a,c)=>{u.current=!0;let{entropyId:h,entropyIdVerifier:p}=i.getEntropyDetailsForUser(l);I({connectWallet:{recoveryMethod:C.recoveryMethod,connectingWalletAddress:C.address,entropyId:h,entropyIdVerifier:p,onCompleteNavigateTo:i.SendTransactionScreen,onFailure:()=>{}},sendTransaction:{transactionRequests:s.callsToTransactionRequests({calls:o,chain:n.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),entropyId:h,entropyIdVerifier:p,transactingWalletAddress:n.account.address,transactingWalletIndex:void 0,scanTransaction:async()=>{if(!q)throw Error("Privy client not found");let o=t?r.getBatchTransactionObject(n.account.address,e):e,i=await n.prepareAbstractTransactionRequest(o);return await q.scanTransaction({metadata:{domain:m.embeddedWallets.transactionScanning.domain},chain_id:i.chainId.toString(),request:{method:"eth_sendTransaction",params:[{from:i.from,to:i.to,value:i.value?.toString(),gas:i.gas?.toString(),gasPrice:i.gasPrice?.toString(),nonce:i.nonce?.toString(),data:i.data}]}})},signOnly:!0,getIsSponsored:async()=>void 0!==e.paymaster&&void 0!==e.paymasterInput,onConfirm:()=>{if(!t)return n.signTransaction(e);throw Error("Batch transactions not supported for signing")},onSuccess:e=>a(e.hash),onFailure:c,uiOptions:{isCancellable:!0}}}),d(i.EmbeddedWalletConnectingScreen)})).finally((()=>{u.current=!1}))}}}; | ||
"use strict";var e=require("@abstract-foundation/agw-client"),r=require("@abstract-foundation/agw-client/actions"),n=require("viem"),o=require("viem/accounts"),t=require("viem/chains"),i=require("./privy-provider-CKXpJjKU.js"),a=require("./internal-context-MaZRiWRJ.js"),c=require("./getEmbeddedConnectedWallet-DTU4T9TJ.js"),s=require("./smart-wallets-BDFeGI4n.js");require("react/jsx-runtime"),require("mipd"),require("react"),require("react-device-detect"),require("viem/utils"),require("@privy-io/js-sdk-core"),require("uuid"),require("jose"),require("eventemitter3"),require("@coinbase/wallet-sdk"),require("@marsidev/react-turnstile"),require("styled-components"),require("tinycolor2"),require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("@heroicons/react/24/outline/PhoneIcon"),require("@heroicons/react/24/outline/ShieldCheckIcon"),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("@heroicons/react/24/outline/ChevronDownIcon"),require("@heroicons/react/24/outline/CalendarIcon"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("zustand"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/UserCircleIcon"),require("@heroicons/react/24/outline/EnvelopeIcon"),require("@heroicons/react/20/solid/CheckIcon"),require("@heroicons/react/24/outline/WalletIcon"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("@heroicons/react/24/outline/ExclamationCircleIcon"),require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"),require("@heroicons/react/24/solid/DocumentCheckIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("qrcode"),require("@heroicons/react/24/outline/ChevronRightIcon"),require("@heroicons/react/24/outline/LockClosedIcon"),require("@heroicons/react/24/outline/PencilSquareIcon"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("@heroicons/react/24/outline/CreditCardIcon"),require("@heroicons/react/24/outline/QrCodeIcon"),require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("ofetch"),require("@heroicons/react/24/outline"),require("@heroicons/react/24/outline/ClipboardDocumentIcon"),require("@heroicons/react/24/outline/CloudArrowUpIcon"),require("@heroicons/react/24/outline/NoSymbolIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/IdentificationIcon"),require("@heroicons/react/24/outline/MinusCircleIcon"),require("@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon"),require("@heroicons/react/24/solid/ShieldCheckIcon"),require("js-cookie"),require("permissionless"),require("permissionless/accounts"),require("permissionless/clients/pimlico"),require("viem/account-abstraction"),exports.useAbstractSmartWallets=function(){let{user:l}=i.usePrivyContext(),{hideWalletUIs:u,openPrivyModal:d,chains:h,appId:p,rpcConfig:g,client:q}=a.usePrivyInternal(),m=i.useAppConfig(),{wallets:y}=i.useWallets(),{setModalData:I}=i.usePrivyModal(),C=i.getPrivyEthereumWallet(l),v=async(r=t.abstractTestnet.id)=>{let a=c.getEmbeddedConnectedWallet(y);if(!a)throw Error("No connected wallet found");let s="string"==typeof r?n.hexToNumber(r):r;if(![t.abstractTestnet.id,2741].includes(s))throw Error("Error, only Abstract chains are supported");let l=h.find((e=>e.id===s));if(!l)throw Error("Chain not configured");await a.switchChain(l.id);let u=await a.getEthereumProvider(),d=n.createWalletClient({account:a.address,transport:n.custom(u)}),q=o.toAccount({address:a.address,signMessage:d.signMessage,signTransaction:d.signTransaction,signTypedData:d.signTypedData});return await e.createAbstractClient({chain:l,transport:n.http(i.getJsonRpcEndpointFromChain(l,g,p)),publicTransport:n.http(i.getJsonRpcEndpointFromChain(l,g,p)),signer:q})};return{signMessage:async({message:e},r)=>{let n=await v(r);return new Promise((async(r,o)=>{let{entropyId:t,entropyIdVerifier:a}=i.getEntropyDetailsForUser(l);u.current=!0,I({connectWallet:{recoveryMethod:C.recoveryMethod,connectingWalletAddress:C.address,entropyId:t,entropyIdVerifier:a,onCompleteNavigateTo:i.SignRequestScreen,onFailure:()=>{}},signMessage:{method:"personal_sign",data:e,confirmAndSign:()=>n.signMessage({message:e}),onSuccess:e=>r(e),onFailure:o,uiOptions:{isCancellable:!0}}}),d(i.EmbeddedWalletConnectingScreen)})).finally((()=>{u.current=!1}))},signTypedData:async(e,r)=>{let n=await v(r);return new Promise((async(r,o)=>{u.current=!0;let{entropyId:t,entropyIdVerifier:a}=i.getEntropyDetailsForUser(l);I({connectWallet:{recoveryMethod:C.recoveryMethod,connectingWalletAddress:C.address,entropyId:t,entropyIdVerifier:a,onCompleteNavigateTo:i.SignRequestScreen,onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:e,confirmAndSign:()=>n.signTypedData(e),onSuccess:e=>r(e),onFailure:o,uiOptions:{isCancellable:!0}}}),d(i.EmbeddedWalletConnectingScreen)})).finally((()=>{u.current=!1}))},sendTransaction:async e=>{let n=await v(e.chainId),o=[],t="calls"in e&&void 0!==e.calls;return o=t?[...e.calls]:[e],new Promise((async(a,c)=>{u.current=!0;let{entropyId:h,entropyIdVerifier:p}=i.getEntropyDetailsForUser(l);I({connectWallet:{recoveryMethod:C.recoveryMethod,connectingWalletAddress:C.address,entropyId:h,entropyIdVerifier:p,onCompleteNavigateTo:i.SendTransactionScreen,onFailure:()=>{}},sendTransaction:{transactionRequests:s.callsToTransactionRequests({calls:o,chain:n.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),entropyId:h,entropyIdVerifier:p,transactingWalletAddress:n.account.address,transactingWalletIndex:void 0,scanTransaction:async()=>{if(!q)throw Error("Privy client not found");let o=t?r.getBatchTransactionObject(n.account.address,e):e,i=await n.prepareAbstractTransactionRequest(o);return await q.scanTransaction({metadata:{domain:m.embeddedWallets.transactionScanning.domain},chain_id:i.chainId.toString(),request:{method:"eth_sendTransaction",params:[{from:i.from,to:i.to,value:i.value?.toString(),gas:i.gas?.toString(),gasPrice:i.gasPrice?.toString(),nonce:i.nonce?.toString(),data:i.data,eip_712_meta:{paymaster_params:{paymaster:i.paymaster,paymaster_input:i.paymasterInput}}}]}})},signOnly:!1,getIsSponsored:async()=>void 0!==e.paymaster&&void 0!==e.paymasterInput,onConfirm:()=>t?n.sendTransactionBatch(e):n.sendTransaction(e),onSuccess:e=>a(e.hash),onFailure:c,uiOptions:{isCancellable:!0}}}),d(i.EmbeddedWalletConnectingScreen)})).finally((()=>{u.current=!1}))},signTransaction:async e=>{let n=await v(e.chainId),o=[],t="calls"in e&&void 0!==e.calls;return o=t?[...e.calls]:[e],new Promise((async(a,c)=>{u.current=!0;let{entropyId:h,entropyIdVerifier:p}=i.getEntropyDetailsForUser(l);I({connectWallet:{recoveryMethod:C.recoveryMethod,connectingWalletAddress:C.address,entropyId:h,entropyIdVerifier:p,onCompleteNavigateTo:i.SendTransactionScreen,onFailure:()=>{}},sendTransaction:{transactionRequests:s.callsToTransactionRequests({calls:o,chain:n.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),entropyId:h,entropyIdVerifier:p,transactingWalletAddress:n.account.address,transactingWalletIndex:void 0,scanTransaction:async()=>{if(!q)throw Error("Privy client not found");let o=t?r.getBatchTransactionObject(n.account.address,e):e,i=await n.prepareAbstractTransactionRequest(o);return await q.scanTransaction({metadata:{domain:m.embeddedWallets.transactionScanning.domain},chain_id:i.chainId.toString(),request:{method:"eth_sendTransaction",params:[{from:i.from,to:i.to,value:i.value?.toString(),gas:i.gas?.toString(),gasPrice:i.gasPrice?.toString(),nonce:i.nonce?.toString(),data:i.data}]}})},signOnly:!0,getIsSponsored:async()=>void 0!==e.paymaster&&void 0!==e.paymasterInput,onConfirm:()=>{if(!t)return n.signTransaction(e);throw Error("Batch transactions not supported for signing")},onSuccess:e=>a(e.hash),onFailure:c,uiOptions:{isCancellable:!0}}}),d(i.EmbeddedWalletConnectingScreen)})).finally((()=>{u.current=!1}))}}}; |
@@ -1,1 +0,1 @@ | ||
"use strict";var e=require("react"),r=require("./frame-BE5iw8D5.js"),t=require("./internal-context-GxD_jR-e.js");require("ofetch");exports.useLoginToFrame=()=>{let{client:i,setAuthenticated:a,setUser:n}=t.usePrivyInternal();return{initLoginToFrame:e.useCallback((async()=>{let e=new r.FarcasterFramesFlow;if(!i)throw new t.PrivyClientError("Must initialize Privy client first.");return i.startAuthFlow(e),await e.init()}),[i]),loginToFrame:e.useCallback((async({message:e,signature:s})=>{if(!i)throw new t.PrivyClientError("Must initialize Privy client first.");if(!(i.authFlow instanceof r.FarcasterFramesFlow))throw new t.PrivyClientError("Must initialize Farcaster frame flow first.");let l=(e=>{let r=e.match(/farcaster:\/\/fid\/(\d+)/);return r&&r[1]?parseInt(r[1],10):null})(e);if(!l)throw new t.PrivyClientError("Invalid message format; could not parse Farcaster ID.");i.authFlow.setAuthData({message:e,signature:s,fid:l});let{user:o}=await i.authenticate();return o&&(n(o),a(!0)),o}),[i,n,a])}}; | ||
"use strict";var e=require("react"),r=require("./frame-Cjm2A_Kg.js"),t=require("./internal-context-MaZRiWRJ.js");require("ofetch");exports.useLoginToFrame=()=>{let{client:i,setAuthenticated:a,setUser:n}=t.usePrivyInternal();return{initLoginToFrame:e.useCallback((async()=>{let e=new r.FarcasterFramesFlow;if(!i)throw new t.PrivyClientError("Must initialize Privy client first.");return i.startAuthFlow(e),await e.init()}),[i]),loginToFrame:e.useCallback((async({message:e,signature:s})=>{if(!i)throw new t.PrivyClientError("Must initialize Privy client first.");if(!(i.authFlow instanceof r.FarcasterFramesFlow))throw new t.PrivyClientError("Must initialize Farcaster frame flow first.");let l=(e=>{let r=e.match(/farcaster:\/\/fid\/(\d+)/);return r&&r[1]?parseInt(r[1],10):null})(e);if(!l)throw new t.PrivyClientError("Invalid message format; could not parse Farcaster ID.");i.authFlow.setAuthData({message:e,signature:s,fid:l});let{user:o}=await i.authenticate();return o&&(n(o),a(!0)),o}),[i,n,a])}}; |
@@ -1,1 +0,1 @@ | ||
"use strict";var e=require("./privy-provider-BivyFPW2.js"),r=require("react"),t=require("./internal-context-GxD_jR-e.js"),o=require("./useActiveWallet-D-7Wli-E.js"),i=require("./frame-BE5iw8D5.js"),n=require("viem"),s=require("viem/utils"),a=require("@privy-io/js-sdk-core"),u=require("./getEmbeddedConnectedWallet-DTU4T9TJ.js");require("react/jsx-runtime"),require("mipd"),require("react-device-detect"),require("uuid"),require("jose"),require("eventemitter3"),require("@coinbase/wallet-sdk"),require("@marsidev/react-turnstile"),require("styled-components"),require("tinycolor2"),require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("@heroicons/react/24/outline/PhoneIcon"),require("@heroicons/react/24/outline/ShieldCheckIcon"),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("@heroicons/react/24/outline/ChevronDownIcon"),require("@heroicons/react/24/outline/CalendarIcon"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("zustand"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/UserCircleIcon"),require("@heroicons/react/24/outline/EnvelopeIcon"),require("@heroicons/react/20/solid/CheckIcon"),require("@heroicons/react/24/outline/WalletIcon"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("@heroicons/react/24/outline/ExclamationCircleIcon"),require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"),require("@heroicons/react/24/solid/DocumentCheckIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("qrcode"),require("@heroicons/react/24/outline/ChevronRightIcon"),require("@heroicons/react/24/outline/LockClosedIcon"),require("@heroicons/react/24/outline/PencilSquareIcon"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("@heroicons/react/24/outline/CreditCardIcon"),require("@heroicons/react/24/outline/QrCodeIcon"),require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("ofetch"),require("@heroicons/react/24/outline"),require("@heroicons/react/24/outline/ClipboardDocumentIcon"),require("@heroicons/react/24/outline/CloudArrowUpIcon"),require("@heroicons/react/24/outline/NoSymbolIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/IdentificationIcon"),require("@heroicons/react/24/outline/MinusCircleIcon"),require("@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon"),require("@heroicons/react/24/solid/ShieldCheckIcon"),require("js-cookie");let l=async(e,r,o,i,n)=>{if(!e)throw i("linkAccount","onError",t.PrivyErrorCode.MUST_BE_AUTHENTICATED,{linkMethod:n}),new t.PrivyClientError("User must be authenticated before linking an account.");if(!r?.linkedAccounts.some((e=>e.type.includes(n))))throw new t.PrivyClientError(`OAuth account of type ${n} not linked to the account.`);await o(n)};exports.Captcha=e.Captcha,exports.ConnectorManager=e.ConnectorManager,exports.EthereumWalletConnector=e.EthereumWalletConnector,exports.LoginModal=e.LoginModal,exports.PrivyClient=e.PrivyClient,exports.PrivyProvider=e.PrivyProvider,exports.VERSION=e.VERSION,exports.WalletConnector=e.WalletConnector,exports.errorIndicatesMaxMfaRetries=e.errorIndicatesMaxMfaRetries,exports.errorIndicatesMfaTimeout=e.errorIndicatesMfaTimeout,exports.errorIndicatesMfaVerificationFailed=e.errorIndicatesMfaVerificationFailed,exports.getAccessToken=e.getCustomerAccessToken,exports.useCreateWallet=e.useCreateWallet,exports.useIdentityToken=e.useIdentityToken,exports.useImportWallet=e.useImportWallet,exports.useLogout=e.useLogout,exports.useMfa=e.useMfa,exports.useMfaEnrollment=e.useMfaEnrollment,exports.usePrivy=e.usePrivy,exports.useRegisterMfaListener=e.useRegisterMfaListener,exports.useSolanaWallets=e.useSolanaWallets,exports.useSyncJwtBasedAuthState=e.useSyncJwtBasedAuthState,exports.useWallets=e.useWallets,exports.useActiveWallet=o.useActiveWallet,exports.useConnectWallet=o.useConnectWallet,exports.useFundWallet=o.useFundWallet,exports.useLogin=o.useLogin,Object.defineProperty(exports,"SUPPORTED_CHAINS",{enumerable:!0,get:function(){return a.DEFAULT_SUPPORTED_CHAINS}}),Object.defineProperty(exports,"addPrivyRpcToChain",{enumerable:!0,get:function(){return a.addPrivyRpcToChain}}),Object.defineProperty(exports,"addRpcUrlOverrideToChain",{enumerable:!0,get:function(){return a.addRpcUrlOverrideToChain}}),exports.getEmbeddedConnectedWallet=u.getEmbeddedConnectedWallet,exports.useConnectCoinbaseSmartWallet=()=>{let{connectCoinbaseSmartWallet:e}=t.usePrivyInternal();return{connectCoinbaseSmartWallet:e}},exports.useConnectOrCreateWallet=r=>{let{connectOrCreateWallet:t}=e.usePrivyContext();return e.usePrivyEventSubscription("connectOrCreateWallet",r),{connectOrCreateWallet:t}},exports.useCrossAppAccounts=()=>{let{startCrossAppAuthFlow:r,unlinkCrossAppAccount:t,signMessageWithCrossAppWallet:o,signTypedDataWithCrossAppWallet:i,sendTransactionWithCrossAppWallet:n}=e.usePrivyContext();return{loginWithCrossAppAccount:({appId:e})=>r({appId:e,action:"login"}),linkCrossAppAccount:({appId:e})=>r({appId:e,action:"link"}),unlinkCrossAppAccount:t,signMessage:o,signTypedData:i,sendTransaction:n}},exports.useCustomAuth=r=>{let t=e.useJwtAuthFlowState();return e.usePrivyEventSubscription("customAuth",r),{status:t}},exports.useDelegatedActions=()=>{let{revokeDelegatedWallets:e,delegateWallet:r}=t.usePrivyInternal();return{delegateWallet:async({address:e,chainType:t})=>await r({address:e,chainType:t,showDelegationUIs:!0}),revokeWallets:async()=>await e({showDelegationUIs:!0})}},exports.useFarcasterSigner=function(){let{getFarcasterSignerPublicKey:r,signFarcasterMessage:t,requestFarcasterSignerFromWarpcast:o}=e.usePrivyContext();return{getFarcasterSignerPublicKey:r,signFarcasterMessage:t,requestFarcasterSignerFromWarpcast:o}},exports.useGuestAccounts=function(){let r=e.useAppConfig(),{getAccessToken:o}=e.usePrivyContext(),i=e.useEmitPrivyEvent(),{client:n,setUser:s,setAuthenticated:a,setIsNewUser:u,initializeWalletProxy:l}=t.usePrivyInternal(),{create:c}=e.useCreateWalletInternal();return{createGuestAccount:async()=>{if(!r.id||!n)throw Error("SDK not yet ready");n.startAuthFlow(new e.GuestFlow(r.id));try{let d=await n.authenticate(),h=d.user,p=d.isNewUser??!1;if(!h)throw new t.PrivyClientError("Unable to authenticate guest account");let y=await o(),C=await l(e.WALLET_PROXY_TIMEOUT);if(y&&C)try{let t=e.shouldCreateEmbeddedEthWallet(h,r.embeddedWallets.ethereum.createOnLogin),o=e.shouldCreateEmbeddedSolWallet(h,r.embeddedWallets.solana.createOnLogin);t&&o?(h=(await c({chainType:"ethereum",latestUser:h})).user,h=(await c({chainType:"solana",latestUser:h})).user):o?h=(await c({chainType:"solana",latestUser:h})).user:t?h=(await c({chainType:"ethereum",latestUser:h})).user:s(h)}catch(e){s(h),console.warn("Unable to create embedded wallet for guest account")}return u(p),a(!0),i("login","onComplete",{user:h,isNewUser:p,wasAlreadyAuthenticated:!1,loginMethod:"guest",loginAccount:null}),h}catch(e){throw i("login","onError",e.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),e}}}},exports.useHeadlessDelegatedActions=()=>{let{revokeDelegatedWallets:e,delegateWallet:r}=t.usePrivyInternal();return{delegateWallet:async({address:e,chainType:t})=>await r({address:e,chainType:t,showDelegationUIs:!1}),revokeWallets:async()=>await e({showDelegationUIs:!1})}},exports.useLinkAccount=function(t){let{linkEmail:o,linkPhone:i,linkWallet:n,linkGoogle:s,linkApple:a,linkTwitter:u,linkDiscord:l,linkGithub:c,linkLinkedIn:d,linkTiktok:h,linkSpotify:p,linkInstagram:y,linkTelegram:C,linkFarcaster:w}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("linkAccount",t),{linkEmail:o,linkPhone:i,linkWallet:n,linkGoogle:s,linkApple:a,linkTwitter:u,linkDiscord:l,linkGithub:c,linkLinkedIn:d,linkTiktok:h,linkSpotify:p,linkInstagram:y,linkFarcaster:w,linkTelegram:C}},exports.useLinkWithPasskey=e=>{let{initLinkWithPasskey:o,linkWithPasskey:i,passkeyAuthState:n,setPasskeyAuthState:s}=t.usePrivyInternal();return{linkWithPasskey:r.useCallback((async()=>{try{await o();let r=await i();if(!r)throw Error("Error, user not found");let t=r.linkedAccounts.filter((e=>"passkey"===e.type)).sort(((e,r)=>r.latestVerifiedAt.getTime()-e.latestVerifiedAt.getTime()))[0];e?.onSuccess?.({user:r,linkMethod:"passkey",linkedAccount:t})}catch(r){throw s({status:"error",error:r}),e?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR,{linkMethod:"passkey"}),r}}),[i]),state:n}},exports.useLinkWithSiwe=o=>{let i=e.useCaptcha(),{siweState:n,setSiweState:s,linkWithSiwe:a,generateSiweMessage:u}=t.usePrivyInternal();return{generateSiweMessage:r.useCallback((async({address:e,chainId:r})=>{try{if(!e||!r)throw Error("wallet address and chainId required to generate nonce");return await u({address:e,chainId:r}).then((e=>e))}catch(e){throw s({status:"error",error:e}),o?.onError?.(e.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR,{linkMethod:"siwe"}),e}}),[u]),linkWithSiwe:r.useCallback((async({signature:r,message:n,chainId:u,walletClientType:l,connectorType:c})=>{try{if(i.enabled&&"success"!==i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);let{user:s,linkedAccount:d}=await a({message:n,signature:r,chainId:u,walletClientType:l,connectorType:c});d&&o?.onSuccess?.({user:s,linkMethod:"siwe",linkedAccount:d})}catch(r){throw s({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR,{linkMethod:"siwe"}),r}}),[a,i.status]),state:n}},exports.useLoginWithEmail=o=>{let i=e.useCaptcha(),{emailOtpState:n,setEmailOtpState:s,initLoginWithEmail:a,loginWithCode:u}=t.usePrivyInternal();return{sendCode:r.useCallback((async({email:r,disableSignup:n})=>{try{let o;if(!r)throw Error("Email required to send OTP code");if(i.enabled&&"error"===i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);return i.enabled&&"success"!==i.status&&(i.execute(),o=await i.waitForResult()),await a({email:r,captchaToken:o,disableSignup:n,withPrivyUi:!1})}catch(r){throw s({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[a]),loginWithCode:r.useCallback((async({code:r})=>{try{if(i.enabled&&"error"===i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);let{user:n,isNewUser:s,wasAlreadyAuthenticated:a,linkedAccount:l}=await u(r);o?.onComplete?.({user:n,isNewUser:s,wasAlreadyAuthenticated:a,loginMethod:"email",loginAccount:l})}catch(r){throw s({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[u,i.status]),state:n}},exports.useLoginWithFarcasterV2=()=>{let{client:e,setAuthenticated:o,setUser:n}=t.usePrivyInternal();return r.useMemo((()=>({init:async()=>{if(!e)throw new t.PrivyClientError("Must initialize Privy client first.");let r=new i.FarcasterFramesFlow;return e.startAuthFlow(r),await r.init()},login:async({fid:r,message:s,signature:a})=>{if(!e)throw new t.PrivyClientError("Must initialize Privy client first.");if(!(e.authFlow instanceof i.FarcasterFramesFlow))throw new t.PrivyClientError("Must initialize Farcaster frame flow first.");e.authFlow.setAuthData({message:s,signature:a,fid:r});let{user:u}=await e.authenticate();if(!u)throw new t.PrivyClientError("Failed to login with Farcaster V2");return n(u),o(!0),{user:u}}})),[e,n,o])},exports.useLoginWithOAuth=o=>{e.usePrivyEventSubscription("login",o);let i=e.useCaptcha(),n=e.useIsServerConfigLoaded(),{ready:s,user:a}=e.usePrivyContext(),{initLoginWithHeadlessOAuth:u,loginWithHeadlessOAuth:l,oAuthState:c,setOAuthState:d,isHeadlessOAuthLoading:h}=t.usePrivyInternal(),p=r.useCallback((async r=>{try{if(i.enabled&&"success"!==i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);return await u(r.provider,i.token,r.disableSignup)}catch(r){throw d({status:"error",error:r}),r}}),[u,i]),y=r.useCallback((async()=>{let r=e.detectCompletingOAuthFlow();try{if(a)return console.warn("Cannot login with OAuth when already logged in"),a;if(!r.inProgress)throw Error("Cannot login with OAuth because no OAuth flow is in progress");if(r.popupFlow)return}catch(r){throw d({status:"error",error:r}),r}try{return await l(r)}catch(r){throw d({status:"error",error:r}),r}finally{e.stripUrlOAuthParamsAndRemoveStateCode()}}),[l]);return r.useEffect((()=>{let r=e.detectCompletingOAuthFlow();s&&n&&r.inProgress&&!r.withPrivyUi&&!r.popupFlow&&y().catch((()=>{}))}),[s,n]),{initOAuth:p,loading:h,state:c}},exports.useLoginWithPasskey=o=>{let i=e.useCaptcha(),{initLoginWithPasskey:n,loginWithPasskey:s,passkeyAuthState:a,setPasskeyAuthState:u}=t.usePrivyInternal();return{loginWithPasskey:r.useCallback((async r=>{try{let a;if(i.enabled&&"error"===i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);i.enabled&&"success"!==i.status&&(i.execute(),a=await i.waitForResult()),await n({captchaToken:a,withPrivyUi:!1});let{user:u,isNewUser:l,wasAlreadyAuthenticated:c,loginAccount:d}=await s(r);o?.onComplete?.({user:u,isNewUser:l,wasAlreadyAuthenticated:c,loginMethod:"passkey",loginAccount:d})}catch(r){throw u({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[s,i.status]),state:a}},exports.useLoginWithSms=o=>{let i=e.useCaptcha(),{smsOtpState:n,setSmsOtpState:s,initLoginWithSms:a,loginWithCode:u}=t.usePrivyInternal();return{sendCode:r.useCallback((async({phoneNumber:r,disableSignup:n})=>{try{let o;if(!r)throw Error("SMS required to send OTP code");if(i.enabled&&"error"===i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);return i.enabled&&"success"!==i.status&&(i.execute(),o=await i.waitForResult()),await a({phoneNumber:r,captchaToken:o,disableSignup:n,withPrivyUi:!1})}catch(r){throw s({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[a]),loginWithCode:r.useCallback((async({code:r})=>{try{if(i.enabled&&"success"!==i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);let{user:n,isNewUser:s,wasAlreadyAuthenticated:a,linkedAccount:l}=await u(r);o?.onComplete?.({user:n,isNewUser:s,wasAlreadyAuthenticated:a,loginMethod:"sms",loginAccount:l})}catch(r){throw s({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[u,i.status]),state:n}},exports.useLoginWithTelegram=o=>{let i=e.useCaptcha(),{initLoginWithTelegram:n,loginWithTelegram:s,telegramAuthState:a,setTelegramAuthState:u}=t.usePrivyInternal();return{login:r.useCallback((async r=>{try{if(i.enabled&&"success"!==i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);await n(i.token,r?.disableSignup);let{user:a,isNewUser:u,loginAccount:l,wasAlreadyAuthenticated:c}=await s({intent:"login"});o?.onComplete?.({user:a,isNewUser:u,wasAlreadyAuthenticated:c,loginMethod:"telegram",loginAccount:l})}catch(r){throw u({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[n,s,i]),state:a}},exports.useModalStatus=()=>{let{isModalOpen:t}=r.useContext(e.PrivyContext);return{isOpen:t}},exports.useOAuthTokens=function(r){let{authenticated:o,user:i}=e.usePrivyContext(),{initLoginWithOAuth:n}=t.usePrivyInternal(),s=e.useEmitPrivyEvent();return e.usePrivyEventSubscription("oAuthAuthorization",r),{reauthorize:e=>l(o,i,n,s,e.provider)}},exports.useRecoverEmbeddedWallet=()=>{let{user:o}=e.usePrivyContext(),{walletProxy:i}=t.usePrivyInternal();return{recover:r.useCallback((async r=>{if(!i)throw Error("Wallet proxy is not ready");let n=await e.getAccessToken();if(!o||!n)throw new t.PrivyClientError("User must be logged in before attempting to modify the recovery method.");let{entropyId:s,entropyIdVerifier:a}=e.getEntropyDetailsForUser(o);try{await i.recover({entropyId:s,entropyIdVerifier:a,accessToken:n,...r})}catch{throw new t.PrivyClientError("Unable to recover wallets")}}),[i,o])}},exports.useSendTransaction=function(t){let{sendTransaction:o}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("sendTransaction",t),{sendTransaction:o}},exports.useSetWalletPassword=function(t){let{setWalletPassword:o}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("setWalletPassword",t),{setWalletPassword:o}},exports.useSetWalletRecovery=function(t){let{setWalletRecovery:o}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("setWalletRecovery",t),{setWalletRecovery:o}},exports.useSignAuthorization=()=>{let{ready:o,wallets:i}=e.useWallets(),{user:a}=e.usePrivyContext(),{rpcConfig:u,chains:l,appId:c}=t.usePrivyInternal();return{signAuthorization:r.useCallback((async(r,t)=>{if(!a)throw Error("User must be authenticated before signing with a Privy wallet");if(!o)throw Error("Wallets are not ready");let d=t?.address??e.getPrivyEthereumWallet(a)?.address??n.zeroAddress,h=i.find((e=>n.getAddress(e.address)===n.getAddress(d)));if(!h)throw Error("Signing wallet not found.");let p=r.chainId??Number(h.chainId.split(":")[1]),y=l.find((e=>e.id===p));if(!y)throw Error("Error, chain not configured in PrivyProvider config");let C=n.createWalletClient({account:d,chain:y,transport:n.http(e.getJsonRpcEndpointFromChain(y,u,c))}),w=await C.prepareAuthorization({...r}),g=await h.getEthereumProvider(),A=await g.request({method:"secp256k1_sign",params:[s.hashAuthorization(w)]});return{...w,...n.parseSignature(A)}}),[o,i,a,l])}},exports.useSignMessage=function(t){let{signMessage:o}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("signMessage",t),{signMessage:o}},exports.useSignTransaction=function(){let{signTransaction:t}=r.useContext(e.PrivyContext);return{signTransaction:t}},exports.useSignTypedData=function(t){let{signTypedData:o}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("signTypedData",t),{signTypedData:o}},exports.useSignupWithPasskey=o=>{let i=e.useCaptcha(),{initSignupWithPasskey:n,signupWithPasskey:s,passkeyAuthState:a,setPasskeyAuthState:u}=t.usePrivyInternal();return{signupWithPasskey:r.useCallback((async()=>{try{let r;if(i.enabled&&"error"===i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);i.enabled&&"success"!==i.status&&(i.execute(),r=await i.waitForResult()),await n({captchaToken:r,withPrivyUi:!1});let{user:a,isNewUser:u,wasAlreadyAuthenticated:l,loginAccount:c}=await s();o?.onComplete?.({user:a,isNewUser:u,wasAlreadyAuthenticated:l,loginMethod:"passkey",loginAccount:c})}catch(e){throw u({status:"error",error:e}),o?.onError?.(e.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),e}}),[s,i.status]),state:a}},exports.useSubscribeToJwtAuthWithFlag=function({isAuthenticated:t,isLoading:o,...i}){let n=r.useRef();r.useEffect((()=>{o||n.current?.()}),[t,o]);let s=r.useCallback((e=>(n.current=e,()=>{n.current=void 0})),[]);return e.useSyncJwtBasedAuthState({...i,subscribe:s})},exports.useToken=function(t){let{getAccessToken:o}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("accessToken",t),{getAccessToken:o}},exports.useUpdateAccount=function(t){let{updateEmail:o,updatePhone:i}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("update",t),{updateEmail:o,updatePhone:i}},exports.useUser=()=>{let{setUser:o,client:i}=r.useContext(t.InternalPrivyContext),{user:n}=r.useContext(e.PrivyContext);return{user:n,refreshUser:r.useCallback((async()=>{let e=await(i?.updateUserAndIdToken());return o(e??null),e}),[i,o])}}; | ||
"use strict";var e=require("./privy-provider-CKXpJjKU.js"),r=require("react"),t=require("./internal-context-MaZRiWRJ.js"),o=require("./useActiveWallet-DYXyIUwl.js"),i=require("./frame-Cjm2A_Kg.js"),n=require("viem"),s=require("viem/utils"),a=require("@privy-io/js-sdk-core"),u=require("./getEmbeddedConnectedWallet-DTU4T9TJ.js");require("react/jsx-runtime"),require("mipd"),require("react-device-detect"),require("uuid"),require("jose"),require("eventemitter3"),require("@coinbase/wallet-sdk"),require("@marsidev/react-turnstile"),require("styled-components"),require("tinycolor2"),require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("@heroicons/react/24/outline/PhoneIcon"),require("@heroicons/react/24/outline/ShieldCheckIcon"),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("@heroicons/react/24/outline/ChevronDownIcon"),require("@heroicons/react/24/outline/CalendarIcon"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("zustand"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/UserCircleIcon"),require("@heroicons/react/24/outline/EnvelopeIcon"),require("@heroicons/react/20/solid/CheckIcon"),require("@heroicons/react/24/outline/WalletIcon"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("@heroicons/react/24/outline/ExclamationCircleIcon"),require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"),require("@heroicons/react/24/solid/DocumentCheckIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("qrcode"),require("@heroicons/react/24/outline/ChevronRightIcon"),require("@heroicons/react/24/outline/LockClosedIcon"),require("@heroicons/react/24/outline/PencilSquareIcon"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("@heroicons/react/24/outline/CreditCardIcon"),require("@heroicons/react/24/outline/QrCodeIcon"),require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("ofetch"),require("@heroicons/react/24/outline"),require("@heroicons/react/24/outline/ClipboardDocumentIcon"),require("@heroicons/react/24/outline/CloudArrowUpIcon"),require("@heroicons/react/24/outline/NoSymbolIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/IdentificationIcon"),require("@heroicons/react/24/outline/MinusCircleIcon"),require("@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon"),require("@heroicons/react/24/solid/ShieldCheckIcon"),require("js-cookie");let l=async(e,r,o,i,n)=>{if(!e)throw i("linkAccount","onError",t.PrivyErrorCode.MUST_BE_AUTHENTICATED,{linkMethod:n}),new t.PrivyClientError("User must be authenticated before linking an account.");if(!r?.linkedAccounts.some((e=>e.type.includes(n))))throw new t.PrivyClientError(`OAuth account of type ${n} not linked to the account.`);await o(n)};exports.Captcha=e.Captcha,exports.ConnectorManager=e.ConnectorManager,exports.EthereumWalletConnector=e.EthereumWalletConnector,exports.LoginModal=e.LoginModal,exports.PrivyClient=e.PrivyClient,exports.PrivyProvider=e.PrivyProvider,exports.VERSION=e.VERSION,exports.WalletConnector=e.WalletConnector,exports.errorIndicatesMaxMfaRetries=e.errorIndicatesMaxMfaRetries,exports.errorIndicatesMfaTimeout=e.errorIndicatesMfaTimeout,exports.errorIndicatesMfaVerificationFailed=e.errorIndicatesMfaVerificationFailed,exports.getAccessToken=e.getCustomerAccessToken,exports.useCreateWallet=e.useCreateWallet,exports.useIdentityToken=e.useIdentityToken,exports.useImportWallet=e.useImportWallet,exports.useLogout=e.useLogout,exports.useMfa=e.useMfa,exports.useMfaEnrollment=e.useMfaEnrollment,exports.usePrivy=e.usePrivy,exports.useRegisterMfaListener=e.useRegisterMfaListener,exports.useSolanaWallets=e.useSolanaWallets,exports.useSyncJwtBasedAuthState=e.useSyncJwtBasedAuthState,exports.useWallets=e.useWallets,exports.useActiveWallet=o.useActiveWallet,exports.useConnectWallet=o.useConnectWallet,exports.useFundWallet=o.useFundWallet,exports.useLogin=o.useLogin,Object.defineProperty(exports,"SUPPORTED_CHAINS",{enumerable:!0,get:function(){return a.DEFAULT_SUPPORTED_CHAINS}}),Object.defineProperty(exports,"addPrivyRpcToChain",{enumerable:!0,get:function(){return a.addPrivyRpcToChain}}),Object.defineProperty(exports,"addRpcUrlOverrideToChain",{enumerable:!0,get:function(){return a.addRpcUrlOverrideToChain}}),exports.getEmbeddedConnectedWallet=u.getEmbeddedConnectedWallet,exports.useConnectCoinbaseSmartWallet=()=>{let{connectCoinbaseSmartWallet:e}=t.usePrivyInternal();return{connectCoinbaseSmartWallet:e}},exports.useConnectOrCreateWallet=r=>{let{connectOrCreateWallet:t}=e.usePrivyContext();return e.usePrivyEventSubscription("connectOrCreateWallet",r),{connectOrCreateWallet:t}},exports.useCrossAppAccounts=()=>{let{startCrossAppAuthFlow:r,unlinkCrossAppAccount:t,signMessageWithCrossAppWallet:o,signTypedDataWithCrossAppWallet:i,sendTransactionWithCrossAppWallet:n}=e.usePrivyContext();return{loginWithCrossAppAccount:({appId:e})=>r({appId:e,action:"login"}),linkCrossAppAccount:({appId:e})=>r({appId:e,action:"link"}),unlinkCrossAppAccount:t,signMessage:o,signTypedData:i,sendTransaction:n}},exports.useCustomAuth=r=>{let t=e.useJwtAuthFlowState();return e.usePrivyEventSubscription("customAuth",r),{status:t}},exports.useDelegatedActions=()=>{let{revokeDelegatedWallets:e,delegateWallet:r}=t.usePrivyInternal();return{delegateWallet:async({address:e,chainType:t})=>await r({address:e,chainType:t,showDelegationUIs:!0}),revokeWallets:async()=>await e({showDelegationUIs:!0})}},exports.useFarcasterSigner=function(){let{getFarcasterSignerPublicKey:r,signFarcasterMessage:t,requestFarcasterSignerFromWarpcast:o}=e.usePrivyContext();return{getFarcasterSignerPublicKey:r,signFarcasterMessage:t,requestFarcasterSignerFromWarpcast:o}},exports.useGuestAccounts=function(){let r=e.useAppConfig(),{getAccessToken:o}=e.usePrivyContext(),i=e.useEmitPrivyEvent(),{client:n,setUser:s,setAuthenticated:a,setIsNewUser:u,initializeWalletProxy:l}=t.usePrivyInternal(),{create:c}=e.useCreateWalletInternal();return{createGuestAccount:async()=>{if(!r.id||!n)throw Error("SDK not yet ready");n.startAuthFlow(new e.GuestFlow(r.id));try{let d=await n.authenticate(),h=d.user,p=d.isNewUser??!1;if(!h)throw new t.PrivyClientError("Unable to authenticate guest account");let y=await o(),C=await l(e.WALLET_PROXY_TIMEOUT);if(y&&C)try{let t=e.shouldCreateEmbeddedEthWallet(h,r.embeddedWallets.ethereum.createOnLogin),o=e.shouldCreateEmbeddedSolWallet(h,r.embeddedWallets.solana.createOnLogin);t&&o?(h=(await c({chainType:"ethereum",latestUser:h})).user,h=(await c({chainType:"solana",latestUser:h})).user):o?h=(await c({chainType:"solana",latestUser:h})).user:t?h=(await c({chainType:"ethereum",latestUser:h})).user:s(h)}catch(e){s(h),console.warn("Unable to create embedded wallet for guest account")}return u(p),a(!0),i("login","onComplete",{user:h,isNewUser:p,wasAlreadyAuthenticated:!1,loginMethod:"guest",loginAccount:null}),h}catch(e){throw i("login","onError",e.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),e}}}},exports.useHeadlessDelegatedActions=()=>{let{revokeDelegatedWallets:e,delegateWallet:r}=t.usePrivyInternal();return{delegateWallet:async({address:e,chainType:t})=>await r({address:e,chainType:t,showDelegationUIs:!1}),revokeWallets:async()=>await e({showDelegationUIs:!1})}},exports.useLinkAccount=function(t){let{linkEmail:o,linkPhone:i,linkWallet:n,linkGoogle:s,linkApple:a,linkTwitter:u,linkDiscord:l,linkGithub:c,linkLinkedIn:d,linkTiktok:h,linkSpotify:p,linkInstagram:y,linkTelegram:C,linkFarcaster:w}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("linkAccount",t),{linkEmail:o,linkPhone:i,linkWallet:n,linkGoogle:s,linkApple:a,linkTwitter:u,linkDiscord:l,linkGithub:c,linkLinkedIn:d,linkTiktok:h,linkSpotify:p,linkInstagram:y,linkFarcaster:w,linkTelegram:C}},exports.useLinkWithPasskey=e=>{let{initLinkWithPasskey:o,linkWithPasskey:i,passkeyAuthState:n,setPasskeyAuthState:s}=t.usePrivyInternal();return{linkWithPasskey:r.useCallback((async()=>{try{await o();let r=await i();if(!r)throw Error("Error, user not found");let t=r.linkedAccounts.filter((e=>"passkey"===e.type)).sort(((e,r)=>r.latestVerifiedAt.getTime()-e.latestVerifiedAt.getTime()))[0];e?.onSuccess?.({user:r,linkMethod:"passkey",linkedAccount:t})}catch(r){throw s({status:"error",error:r}),e?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR,{linkMethod:"passkey"}),r}}),[i]),state:n}},exports.useLinkWithSiwe=o=>{let i=e.useCaptcha(),{siweState:n,setSiweState:s,linkWithSiwe:a,generateSiweMessage:u}=t.usePrivyInternal();return{generateSiweMessage:r.useCallback((async({address:e,chainId:r})=>{try{if(!e||!r)throw Error("wallet address and chainId required to generate nonce");return await u({address:e,chainId:r}).then((e=>e))}catch(e){throw s({status:"error",error:e}),o?.onError?.(e.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR,{linkMethod:"siwe"}),e}}),[u]),linkWithSiwe:r.useCallback((async({signature:r,message:n,chainId:u,walletClientType:l,connectorType:c})=>{try{if(i.enabled&&"success"!==i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);let{user:s,linkedAccount:d}=await a({message:n,signature:r,chainId:u,walletClientType:l,connectorType:c});d&&o?.onSuccess?.({user:s,linkMethod:"siwe",linkedAccount:d})}catch(r){throw s({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR,{linkMethod:"siwe"}),r}}),[a,i.status]),state:n}},exports.useLoginWithEmail=o=>{let i=e.useCaptcha(),{emailOtpState:n,setEmailOtpState:s,initLoginWithEmail:a,loginWithCode:u}=t.usePrivyInternal();return{sendCode:r.useCallback((async({email:r,disableSignup:n})=>{try{let o;if(!r)throw Error("Email required to send OTP code");if(i.enabled&&"error"===i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);return i.enabled&&"success"!==i.status&&(i.execute(),o=await i.waitForResult()),await a({email:r,captchaToken:o,disableSignup:n,withPrivyUi:!1})}catch(r){throw s({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[a]),loginWithCode:r.useCallback((async({code:r})=>{try{if(i.enabled&&"error"===i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);let{user:n,isNewUser:s,wasAlreadyAuthenticated:a,linkedAccount:l}=await u(r);o?.onComplete?.({user:n,isNewUser:s,wasAlreadyAuthenticated:a,loginMethod:"email",loginAccount:l})}catch(r){throw s({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[u,i.status]),state:n}},exports.useLoginWithFarcasterV2=()=>{let{client:e,setAuthenticated:o,setUser:n}=t.usePrivyInternal();return r.useMemo((()=>({init:async()=>{if(!e)throw new t.PrivyClientError("Must initialize Privy client first.");let r=new i.FarcasterFramesFlow;return e.startAuthFlow(r),await r.init()},login:async({fid:r,message:s,signature:a})=>{if(!e)throw new t.PrivyClientError("Must initialize Privy client first.");if(!(e.authFlow instanceof i.FarcasterFramesFlow))throw new t.PrivyClientError("Must initialize Farcaster frame flow first.");e.authFlow.setAuthData({message:s,signature:a,fid:r});let{user:u}=await e.authenticate();if(!u)throw new t.PrivyClientError("Failed to login with Farcaster V2");return n(u),o(!0),{user:u}}})),[e,n,o])},exports.useLoginWithOAuth=o=>{e.usePrivyEventSubscription("login",o);let i=e.useCaptcha(),n=e.useIsServerConfigLoaded(),{ready:s,user:a}=e.usePrivyContext(),{initLoginWithHeadlessOAuth:u,loginWithHeadlessOAuth:l,oAuthState:c,setOAuthState:d,isHeadlessOAuthLoading:h}=t.usePrivyInternal(),p=r.useCallback((async r=>{try{if(i.enabled&&"success"!==i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);return await u(r.provider,i.token,r.disableSignup)}catch(r){throw d({status:"error",error:r}),r}}),[u,i]),y=r.useCallback((async()=>{let r=e.detectCompletingOAuthFlow();try{if(a)return console.warn("Cannot login with OAuth when already logged in"),a;if(!r.inProgress)throw Error("Cannot login with OAuth because no OAuth flow is in progress");if(r.popupFlow)return}catch(r){throw d({status:"error",error:r}),r}try{return await l(r)}catch(r){throw d({status:"error",error:r}),r}finally{e.stripUrlOAuthParamsAndRemoveStateCode()}}),[l]);return r.useEffect((()=>{let r=e.detectCompletingOAuthFlow();s&&n&&r.inProgress&&!r.withPrivyUi&&!r.popupFlow&&y().catch((()=>{}))}),[s,n]),{initOAuth:p,loading:h,state:c}},exports.useLoginWithPasskey=o=>{let i=e.useCaptcha(),{initLoginWithPasskey:n,loginWithPasskey:s,passkeyAuthState:a,setPasskeyAuthState:u}=t.usePrivyInternal();return{loginWithPasskey:r.useCallback((async r=>{try{let a;if(i.enabled&&"error"===i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);i.enabled&&"success"!==i.status&&(i.execute(),a=await i.waitForResult()),await n({captchaToken:a,withPrivyUi:!1});let{user:u,isNewUser:l,wasAlreadyAuthenticated:c,loginAccount:d}=await s(r);o?.onComplete?.({user:u,isNewUser:l,wasAlreadyAuthenticated:c,loginMethod:"passkey",loginAccount:d})}catch(r){throw u({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[s,i.status]),state:a}},exports.useLoginWithSiwe=o=>{let i=e.useCaptcha(),{siweState:n,setSiweState:s,client:a,generateSiweMessage:u,loginWithSiwe:l}=t.usePrivyInternal();return{generateSiweNonce:r.useCallback((async({address:r})=>{try{let o;if(i.enabled&&"error"===i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);i.enabled&&"success"!==i.status&&(i.execute(),o=await i.waitForResult()),s({status:"generating-message"});let n=await a.generateSiweNonce({address:r,captchaToken:o});return s({status:"awaiting-signature"}),n}catch(r){throw s({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[a,i]),generateSiweMessage:r.useCallback((async({address:e,chainId:r})=>{try{return await u({address:e,chainId:r})}catch(e){throw s({status:"error",error:e}),o?.onError?.(e.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),e}}),[u]),loginWithSiwe:r.useCallback((async({message:r,signature:n,disableSignup:a})=>{try{let s;if(i.enabled&&"error"===i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);i.enabled&&"success"!==i.status&&(i.execute(),s=await i.waitForResult());let u=await l({message:r,signature:n,captchaToken:s,disableSignup:a});return o?.onComplete?.({user:u,isNewUser:!1,wasAlreadyAuthenticated:!1,loginMethod:"siwe",loginAccount:null}),u}catch(r){throw s({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[l,i.status]),state:n}},exports.useLoginWithSms=o=>{let i=e.useCaptcha(),{smsOtpState:n,setSmsOtpState:s,initLoginWithSms:a,loginWithCode:u}=t.usePrivyInternal();return{sendCode:r.useCallback((async({phoneNumber:r,disableSignup:n})=>{try{let o;if(!r)throw Error("SMS required to send OTP code");if(i.enabled&&"error"===i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);return i.enabled&&"success"!==i.status&&(i.execute(),o=await i.waitForResult()),await a({phoneNumber:r,captchaToken:o,disableSignup:n,withPrivyUi:!1})}catch(r){throw s({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[a]),loginWithCode:r.useCallback((async({code:r})=>{try{if(i.enabled&&"success"!==i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);let{user:n,isNewUser:s,wasAlreadyAuthenticated:a,linkedAccount:l}=await u(r);o?.onComplete?.({user:n,isNewUser:s,wasAlreadyAuthenticated:a,loginMethod:"sms",loginAccount:l})}catch(r){throw s({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[u,i.status]),state:n}},exports.useLoginWithTelegram=o=>{let i=e.useCaptcha(),{initLoginWithTelegram:n,loginWithTelegram:s,telegramAuthState:a,setTelegramAuthState:u}=t.usePrivyInternal();return{login:r.useCallback((async r=>{try{if(i.enabled&&"success"!==i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);await n(i.token,r?.disableSignup);let{user:a,isNewUser:u,loginAccount:l,wasAlreadyAuthenticated:c}=await s({intent:"login"});o?.onComplete?.({user:a,isNewUser:u,wasAlreadyAuthenticated:c,loginMethod:"telegram",loginAccount:l})}catch(r){throw u({status:"error",error:r}),o?.onError?.(r.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),r}}),[n,s,i]),state:a}},exports.useModalStatus=()=>{let{isModalOpen:t}=r.useContext(e.PrivyContext);return{isOpen:t}},exports.useOAuthTokens=function(r){let{authenticated:o,user:i}=e.usePrivyContext(),{initLoginWithOAuth:n}=t.usePrivyInternal(),s=e.useEmitPrivyEvent();return e.usePrivyEventSubscription("oAuthAuthorization",r),{reauthorize:e=>l(o,i,n,s,e.provider)}},exports.useRecoverEmbeddedWallet=()=>{let{user:o}=e.usePrivyContext(),{walletProxy:i}=t.usePrivyInternal();return{recover:r.useCallback((async r=>{if(!i)throw Error("Wallet proxy is not ready");let n=await e.getAccessToken();if(!o||!n)throw new t.PrivyClientError("User must be logged in before attempting to modify the recovery method.");let{entropyId:s,entropyIdVerifier:a}=e.getEntropyDetailsForUser(o);try{await i.recover({entropyId:s,entropyIdVerifier:a,accessToken:n,...r})}catch{throw new t.PrivyClientError("Unable to recover wallets")}}),[i,o])}},exports.useSendTransaction=function(t){let{sendTransaction:o}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("sendTransaction",t),{sendTransaction:o}},exports.useSetWalletPassword=function(t){let{setWalletPassword:o}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("setWalletPassword",t),{setWalletPassword:o}},exports.useSetWalletRecovery=function(t){let{setWalletRecovery:o}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("setWalletRecovery",t),{setWalletRecovery:o}},exports.useSignAuthorization=()=>{let{ready:o,wallets:i}=e.useWallets(),{user:a}=e.usePrivyContext(),{rpcConfig:u,chains:l,appId:c}=t.usePrivyInternal();return{signAuthorization:r.useCallback((async(r,t)=>{if(!a)throw Error("User must be authenticated before signing with a Privy wallet");if(!o)throw Error("Wallets are not ready");let d=t?.address??e.getPrivyEthereumWallet(a)?.address??n.zeroAddress,h=i.find((e=>n.getAddress(e.address)===n.getAddress(d)));if(!h)throw Error("Signing wallet not found.");let p=r.chainId??Number(h.chainId.split(":")[1]),y=l.find((e=>e.id===p));if(!y)throw Error("Error, chain not configured in PrivyProvider config");let C=n.createWalletClient({account:d,chain:y,transport:n.http(e.getJsonRpcEndpointFromChain(y,u,c))}),w=await C.prepareAuthorization({...r}),g=await h.getEthereumProvider(),A=await g.request({method:"secp256k1_sign",params:[s.hashAuthorization(w)]});return{...w,...n.parseSignature(A)}}),[o,i,a,l])}},exports.useSignMessage=function(t){let{signMessage:o}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("signMessage",t),{signMessage:o}},exports.useSignTransaction=function(){let{signTransaction:t}=r.useContext(e.PrivyContext);return{signTransaction:t}},exports.useSignTypedData=function(t){let{signTypedData:o}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("signTypedData",t),{signTypedData:o}},exports.useSignupWithPasskey=o=>{let i=e.useCaptcha(),{initSignupWithPasskey:n,signupWithPasskey:s,passkeyAuthState:a,setPasskeyAuthState:u}=t.usePrivyInternal();return{signupWithPasskey:r.useCallback((async()=>{try{let r;if(i.enabled&&"error"===i.status)throw new e.CaptchaError(i.error,null,t.PrivyErrorCode.CAPTCHA_FAILURE);i.enabled&&"success"!==i.status&&(i.execute(),r=await i.waitForResult()),await n({captchaToken:r,withPrivyUi:!1});let{user:a,isNewUser:u,wasAlreadyAuthenticated:l,loginAccount:c}=await s();o?.onComplete?.({user:a,isNewUser:u,wasAlreadyAuthenticated:l,loginMethod:"passkey",loginAccount:c})}catch(e){throw u({status:"error",error:e}),o?.onError?.(e.privyErrorCode||t.PrivyErrorCode.UNKNOWN_AUTH_ERROR),e}}),[s,i.status]),state:a}},exports.useSubscribeToJwtAuthWithFlag=function({isAuthenticated:t,isLoading:o,...i}){let n=r.useRef();r.useEffect((()=>{o||n.current?.()}),[t,o]);let s=r.useCallback((e=>(n.current=e,()=>{n.current=void 0})),[]);return e.useSyncJwtBasedAuthState({...i,subscribe:s})},exports.useToken=function(t){let{getAccessToken:o}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("accessToken",t),{getAccessToken:o}},exports.useUpdateAccount=function(t){let{updateEmail:o,updatePhone:i}=r.useContext(e.PrivyContext);return e.usePrivyEventSubscription("update",t),{updateEmail:o,updatePhone:i}},exports.useUser=()=>{let{setUser:o,client:i}=r.useContext(t.InternalPrivyContext),{user:n}=r.useContext(e.PrivyContext);return{user:n,refreshUser:r.useCallback((async()=>{let e=await(i?.updateUserAndIdToken());return o(e??null),e}),[i,o])}}; |
@@ -1,1 +0,1 @@ | ||
"use strict";var e=require("react/jsx-runtime"),r=require("react"),i=require("./privy-provider-BivyFPW2.js"),o=require("./internal-context-GxD_jR-e.js"),t=require("./getEmbeddedConnectedWallet-DTU4T9TJ.js"),n=require("./smart-wallets-qD-P9gIh.js");require("mipd"),require("react-device-detect"),require("viem/utils"),require("@privy-io/js-sdk-core"),require("viem"),require("uuid"),require("jose"),require("eventemitter3"),require("@coinbase/wallet-sdk"),require("@marsidev/react-turnstile"),require("styled-components"),require("tinycolor2"),require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("@heroicons/react/24/outline/PhoneIcon"),require("@heroicons/react/24/outline/ShieldCheckIcon"),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("@heroicons/react/24/outline/ChevronDownIcon"),require("@heroicons/react/24/outline/CalendarIcon"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("zustand"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/UserCircleIcon"),require("@heroicons/react/24/outline/EnvelopeIcon"),require("@heroicons/react/20/solid/CheckIcon"),require("@heroicons/react/24/outline/WalletIcon"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("@heroicons/react/24/outline/ExclamationCircleIcon"),require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"),require("@heroicons/react/24/solid/DocumentCheckIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("qrcode"),require("@heroicons/react/24/outline/ChevronRightIcon"),require("@heroicons/react/24/outline/LockClosedIcon"),require("@heroicons/react/24/outline/PencilSquareIcon"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("@heroicons/react/24/outline/CreditCardIcon"),require("@heroicons/react/24/outline/QrCodeIcon"),require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("ofetch"),require("@heroicons/react/24/outline"),require("@heroicons/react/24/outline/ClipboardDocumentIcon"),require("@heroicons/react/24/outline/CloudArrowUpIcon"),require("@heroicons/react/24/outline/NoSymbolIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/IdentificationIcon"),require("@heroicons/react/24/outline/MinusCircleIcon"),require("@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon"),require("@heroicons/react/24/solid/ShieldCheckIcon"),require("js-cookie"),require("permissionless"),require("permissionless/accounts"),require("permissionless/clients/pimlico"),require("viem/account-abstraction");let c=/*#__PURE__*/r.createContext({client:void 0,getClientForChain:o.notImplemented});let a=/*#__PURE__*/r.createContext({config:void 0}),l=()=>{let{config:e}=r.useContext(a);return{config:e}},s=({children:i})=>{let[t,n]=r.useState(void 0),{client:c}=o.usePrivyInternal();return r.useEffect((()=>{!t&&c&&(async()=>{try{if(!c)return void console.warn("No client found");let e=await c.getSmartWalletsConfig();n(e)}catch(e){console.warn("Error generating smart wallet config: ",e)}})()}),[!!c]),/*#__PURE__*/e.jsx(a.Provider,{value:{config:t},children:i})},u=({config:c,children:a})=>{let{config:s}=l(),{appId:u}=o.usePrivyInternal(),{chains:h,defaultChain:q,rpcConfig:C}=i.useAppConfig(),{wallets:I}=i.useWallets(),{user:g}=i.usePrivyContext(),[m,f]=r.useState(),{wrapSmartAccountClientWithUIs:p}=n.useSmartWalletsUIWrapper(),v=t.getEmbeddedConnectedWallet(I);r.useEffect((()=>{(async()=>{if(!s?.enabled)return;let e=s.configuredNetworks.find((e=>e.chainId===`eip155:${q.id}`))?q:h.find((e=>s.configuredNetworks.map((e=>e.chainId)).includes(`eip155:${e.id}`)));if(!e)throw new o.PrivyClientError("Could not find smart wallets chain configurations for any Privy client configured chains. Please configure smart wallets for your chains in the Privy dashboard.");f(await n.getSmartWalletClient({chain:e,privyAppId:u,paymasterContext:c?.paymasterContext,rpcConfig:C,embeddedWallet:v,user:g,smartWalletsConfig:s}))})()}),[!!s?.enabled,!!g?.smartWallet,!!v]);/*#__PURE__*/return e.jsx(d.Provider,{value:{client:m,config:c,getClientForChain:async({id:e})=>{let r=t.getEmbeddedConnectedWallet(I),i=await n.getSmartWalletClient({chain:h.find((r=>r.id===e)),privyAppId:u,paymasterContext:c?.paymasterContext,rpcConfig:C,embeddedWallet:r,user:g,smartWalletsConfig:s});if(!i)throw new o.PrivyClientError(`Failed to create smart wallet client for chain id: ${e}`);return p(i)}},children:a})},d=/*#__PURE__*/r.createContext({client:void 0,config:void 0,getClientForChain:o.notImplemented}),h=({children:t})=>{let{client:a,config:s,getClientForChain:u}=(()=>{let{client:e,config:i,getClientForChain:o}=r.useContext(d);return{client:e,config:i,getClientForChain:o}})(),{config:h}=l(),{wrapSmartAccountClient:q}=n.useSmartWalletsWrapper({clientConfig:s,smartWalletsConfig:h}),{user:C}=i.usePrivyContext(),{generateSiweMessageForSmartWallet:I,linkSmartWallet:g,hideWalletUIs:m}=o.usePrivyInternal();return r.useEffect((()=>{(async()=>{if(a&&C&&!C?.smartWallet&&h?.enabled)try{let e=await I({address:a.account.address,chainId:`eip155:${a.chain.id}`});m.current=!0;let r=await a.signMessage({message:e});await g({signature:r,message:e,smartWalletType:h.smartWalletType})}catch(e){console.error("Error creating smart wallet:",e)}finally{m.current=!1}})()}),[!!a,!!C?.smartWallet,!!h?.enabled]),/*#__PURE__*/e.jsx(c.Provider,{value:{client:C?.smartWallet&&a?q(a):void 0,getClientForChain:u},children:t})};exports.SmartWalletsProvider=({config:r,children:i})=>/*#__PURE__*/e.jsx(s,{children:/*#__PURE__*/e.jsx(u,{config:r,children:/*#__PURE__*/e.jsx(h,{children:i})})}),exports.useSmartWallets=()=>{let{client:e,getClientForChain:i}=r.useContext(c);return{client:e,getClientForChain:i}}; | ||
"use strict";var e=require("react/jsx-runtime"),r=require("react"),i=require("./privy-provider-CKXpJjKU.js"),o=require("./internal-context-MaZRiWRJ.js"),t=require("./getEmbeddedConnectedWallet-DTU4T9TJ.js"),n=require("./smart-wallets-BDFeGI4n.js");require("mipd"),require("react-device-detect"),require("viem/utils"),require("@privy-io/js-sdk-core"),require("viem"),require("uuid"),require("jose"),require("eventemitter3"),require("@coinbase/wallet-sdk"),require("@marsidev/react-turnstile"),require("styled-components"),require("tinycolor2"),require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("@heroicons/react/24/outline/PhoneIcon"),require("@heroicons/react/24/outline/ShieldCheckIcon"),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("@heroicons/react/24/outline/ChevronDownIcon"),require("@heroicons/react/24/outline/CalendarIcon"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("zustand"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/UserCircleIcon"),require("@heroicons/react/24/outline/EnvelopeIcon"),require("@heroicons/react/20/solid/CheckIcon"),require("@heroicons/react/24/outline/WalletIcon"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("@heroicons/react/24/outline/ExclamationCircleIcon"),require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"),require("@heroicons/react/24/solid/DocumentCheckIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("qrcode"),require("@heroicons/react/24/outline/ChevronRightIcon"),require("@heroicons/react/24/outline/LockClosedIcon"),require("@heroicons/react/24/outline/PencilSquareIcon"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("@heroicons/react/24/outline/CreditCardIcon"),require("@heroicons/react/24/outline/QrCodeIcon"),require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("ofetch"),require("@heroicons/react/24/outline"),require("@heroicons/react/24/outline/ClipboardDocumentIcon"),require("@heroicons/react/24/outline/CloudArrowUpIcon"),require("@heroicons/react/24/outline/NoSymbolIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/IdentificationIcon"),require("@heroicons/react/24/outline/MinusCircleIcon"),require("@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon"),require("@heroicons/react/24/solid/ShieldCheckIcon"),require("js-cookie"),require("permissionless"),require("permissionless/accounts"),require("permissionless/clients/pimlico"),require("viem/account-abstraction");let c=/*#__PURE__*/r.createContext({client:void 0,getClientForChain:o.notImplemented});let a=/*#__PURE__*/r.createContext({config:void 0}),l=()=>{let{config:e}=r.useContext(a);return{config:e}},s=({children:i})=>{let[t,n]=r.useState(void 0),{client:c}=o.usePrivyInternal();return r.useEffect((()=>{!t&&c&&(async()=>{try{if(!c)return void console.warn("No client found");let e=await c.getSmartWalletsConfig();n(e)}catch(e){console.warn("Error generating smart wallet config: ",e)}})()}),[!!c]),/*#__PURE__*/e.jsx(a.Provider,{value:{config:t},children:i})},u=({config:c,children:a})=>{let{config:s}=l(),{appId:u}=o.usePrivyInternal(),{chains:h,defaultChain:q,rpcConfig:C}=i.useAppConfig(),{wallets:I}=i.useWallets(),{user:g}=i.usePrivyContext(),[m,f]=r.useState(),{wrapSmartAccountClientWithUIs:p}=n.useSmartWalletsUIWrapper(),v=t.getEmbeddedConnectedWallet(I);r.useEffect((()=>{(async()=>{if(!s?.enabled)return;let e=s.configuredNetworks.find((e=>e.chainId===`eip155:${q.id}`))?q:h.find((e=>s.configuredNetworks.map((e=>e.chainId)).includes(`eip155:${e.id}`)));if(!e)throw new o.PrivyClientError("Could not find smart wallets chain configurations for any Privy client configured chains. Please configure smart wallets for your chains in the Privy dashboard.");f(await n.getSmartWalletClient({chain:e,privyAppId:u,paymasterContext:c?.paymasterContext,rpcConfig:C,embeddedWallet:v,user:g,smartWalletsConfig:s}))})()}),[!!s?.enabled,!!g?.smartWallet,!!v]);/*#__PURE__*/return e.jsx(d.Provider,{value:{client:m,config:c,getClientForChain:async({id:e})=>{let r=t.getEmbeddedConnectedWallet(I),i=await n.getSmartWalletClient({chain:h.find((r=>r.id===e)),privyAppId:u,paymasterContext:c?.paymasterContext,rpcConfig:C,embeddedWallet:r,user:g,smartWalletsConfig:s});if(!i)throw new o.PrivyClientError(`Failed to create smart wallet client for chain id: ${e}`);return p(i)}},children:a})},d=/*#__PURE__*/r.createContext({client:void 0,config:void 0,getClientForChain:o.notImplemented}),h=({children:t})=>{let{client:a,config:s,getClientForChain:u}=(()=>{let{client:e,config:i,getClientForChain:o}=r.useContext(d);return{client:e,config:i,getClientForChain:o}})(),{config:h}=l(),{wrapSmartAccountClient:q}=n.useSmartWalletsWrapper({clientConfig:s,smartWalletsConfig:h}),{user:C}=i.usePrivyContext(),{generateSiweMessageForSmartWallet:I,linkSmartWallet:g,hideWalletUIs:m}=o.usePrivyInternal();return r.useEffect((()=>{(async()=>{if(a&&C&&!C?.smartWallet&&h?.enabled)try{let e=await I({address:a.account.address,chainId:`eip155:${a.chain.id}`});m.current=!0;let r=await a.signMessage({message:e});await g({signature:r,message:e,smartWalletType:h.smartWalletType})}catch(e){console.error("Error creating smart wallet:",e)}finally{m.current=!1}})()}),[!!a,!!C?.smartWallet,!!h?.enabled]),/*#__PURE__*/e.jsx(c.Provider,{value:{client:C?.smartWallet&&a?q(a):void 0,getClientForChain:u},children:t})};exports.SmartWalletsProvider=({config:r,children:i})=>/*#__PURE__*/e.jsx(s,{children:/*#__PURE__*/e.jsx(u,{config:r,children:/*#__PURE__*/e.jsx(h,{children:i})})}),exports.useSmartWallets=()=>{let{client:e,getClientForChain:i}=r.useContext(c);return{client:e,getClientForChain:i}}; |
@@ -1,1 +0,1 @@ | ||
"use strict";var e=require("@solana/wallet-adapter-base"),r=require("@solana/wallet-standard-wallet-adapter-base"),o=require("@wallet-standard/app"),i=require("./privy-provider-BivyFPW2.js"),n=require("react"),t=require("./internal-context-GxD_jR-e.js"),c=require("./useFundWallet-lvAux3ho.js");require("react/jsx-runtime"),require("mipd"),require("react-device-detect"),require("viem/utils"),require("@privy-io/js-sdk-core"),require("viem"),require("uuid"),require("jose"),require("eventemitter3"),require("@coinbase/wallet-sdk"),require("@marsidev/react-turnstile"),require("styled-components"),require("tinycolor2"),require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("@heroicons/react/24/outline/PhoneIcon"),require("@heroicons/react/24/outline/ShieldCheckIcon"),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("@heroicons/react/24/outline/ChevronDownIcon"),require("@heroicons/react/24/outline/CalendarIcon"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("zustand"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/UserCircleIcon"),require("@heroicons/react/24/outline/EnvelopeIcon"),require("@heroicons/react/20/solid/CheckIcon"),require("@heroicons/react/24/outline/WalletIcon"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("@heroicons/react/24/outline/ExclamationCircleIcon"),require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"),require("@heroicons/react/24/solid/DocumentCheckIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("qrcode"),require("@heroicons/react/24/outline/ChevronRightIcon"),require("@heroicons/react/24/outline/LockClosedIcon"),require("@heroicons/react/24/outline/PencilSquareIcon"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("@heroicons/react/24/outline/CreditCardIcon"),require("@heroicons/react/24/outline/QrCodeIcon"),require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("ofetch"),require("@heroicons/react/24/outline"),require("@heroicons/react/24/outline/ClipboardDocumentIcon"),require("@heroicons/react/24/outline/CloudArrowUpIcon"),require("@heroicons/react/24/outline/NoSymbolIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/IdentificationIcon"),require("@heroicons/react/24/outline/MinusCircleIcon"),require("@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon"),require("@heroicons/react/24/solid/ShieldCheckIcon"),require("js-cookie"),require("@solana/spl-token"),require("@solana/web3.js");let a=o=>o.filter(e.isWalletAdapterCompatibleStandardWallet).map((e=>new r.StandardWalletAdapter({wallet:e})));exports.SolanaAdapterConnector=i.SolanaWalletConnector,exports.useSendTransaction=i.useSendTransaction,exports.useSignMessage=i.useSignMessage,exports.useSolanaWallets=i.useSolanaWallets,exports.useFundWallet=c.useFundWallet,exports.toSolanaWalletConnectors=e=>{let r,{get:n,on:t}=o.getWallets(),c=e?.shouldAutoConnect??!0,s=[],l=[];function u(...e){l=(s=s.concat(...a(e))).map((e=>new i.SolanaWalletConnector(e,c))),r?.(l)}function q(...e){l=(s=s.filter((r=>e.some((e=>r.wallet===e))))).map((e=>new i.SolanaWalletConnector(e,c))),r?.(l)}let h=[t("register",u),t("unregister",q)];return l=(s=a(n())).map((e=>new i.SolanaWalletConnector(e,c))),{_setOnConnectorsUpdated:e=>{r=e},onMount:()=>{h[0]||(h[0]=t("register",u)),h[1]||(h[1]=t("unregister",q))},onUnmount:()=>{let e=h.pop();for(;e;)e(),e=h.pop()},get:()=>l}},exports.useImportWallet=()=>{let{getAccessToken:e,user:r}=i.usePrivyContext(),{refreshSessionAndUser:o,initializeWalletProxy:c}=t.usePrivyInternal(),a=i.useEmitPrivyEvent();return{importWallet:n.useCallback((({privateKey:n})=>i.importWallet({getAccessToken:e,user:r,initializeWalletProxy:c,refreshSessionAndUser:o,emitPrivyEvent:a},{privateKey:n,chainType:"solana"})),[r,e,o,c,a])}},exports.useSignTransaction=function(e){let r=i.useAppConfig(),{getAccessToken:o,user:n}=i.usePrivy(),{setModalData:c}=i.usePrivyModal(),{isHeadlessSigning:a,openModal:s,walletProxy:l,recoverPrimaryWallet:u,privy:q}=t.usePrivyInternal(),h=i.useEmitPrivyEvent();return i.usePrivyEventSubscription("signSolanaTransaction",e),{signTransaction:async({transaction:e,connection:t,uiOptions:d,transactionOptions:p,address:I})=>{let{signedTransaction:C}=await i.signOrSendSolanaTransactionInternal({privy:q,appConfig:r,getAccessToken:o,isHeadlessSigning:a,emitPrivyEvent:h,setModalData:c,openModal:s,walletProxy:l,user:n,recoverPrimaryWallet:u},{transaction:e,connection:t,transactionOptions:p,uiOptions:d,address:I,signOnly:!0});return C}}},exports.useSolanaFundingPlugin=()=>i.useRegisterPlugin(c.t); | ||
"use strict";var e=require("@solana/wallet-adapter-base"),r=require("@solana/wallet-standard-wallet-adapter-base"),o=require("@wallet-standard/app"),i=require("./privy-provider-CKXpJjKU.js"),n=require("react"),t=require("./internal-context-MaZRiWRJ.js"),c=require("./useFundWallet-BSTSLS88.js");require("react/jsx-runtime"),require("mipd"),require("react-device-detect"),require("viem/utils"),require("@privy-io/js-sdk-core"),require("viem"),require("uuid"),require("jose"),require("eventemitter3"),require("@coinbase/wallet-sdk"),require("@marsidev/react-turnstile"),require("styled-components"),require("tinycolor2"),require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("@heroicons/react/24/outline/PhoneIcon"),require("@heroicons/react/24/outline/ShieldCheckIcon"),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("@heroicons/react/24/outline/ChevronDownIcon"),require("@heroicons/react/24/outline/CalendarIcon"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("zustand"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/UserCircleIcon"),require("@heroicons/react/24/outline/EnvelopeIcon"),require("@heroicons/react/20/solid/CheckIcon"),require("@heroicons/react/24/outline/WalletIcon"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("@heroicons/react/24/outline/ExclamationCircleIcon"),require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"),require("@heroicons/react/24/solid/DocumentCheckIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("qrcode"),require("@heroicons/react/24/outline/ChevronRightIcon"),require("@heroicons/react/24/outline/LockClosedIcon"),require("@heroicons/react/24/outline/PencilSquareIcon"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("@heroicons/react/24/outline/CreditCardIcon"),require("@heroicons/react/24/outline/QrCodeIcon"),require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("ofetch"),require("@heroicons/react/24/outline"),require("@heroicons/react/24/outline/ClipboardDocumentIcon"),require("@heroicons/react/24/outline/CloudArrowUpIcon"),require("@heroicons/react/24/outline/NoSymbolIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/IdentificationIcon"),require("@heroicons/react/24/outline/MinusCircleIcon"),require("@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon"),require("@heroicons/react/24/solid/ShieldCheckIcon"),require("js-cookie"),require("@solana/spl-token"),require("@solana/web3.js");let a=o=>o.filter(e.isWalletAdapterCompatibleStandardWallet).map((e=>new r.StandardWalletAdapter({wallet:e})));exports.SolanaAdapterConnector=i.SolanaWalletConnector,exports.useSendTransaction=i.useSendTransaction,exports.useSignMessage=i.useSignMessage,exports.useSolanaWallets=i.useSolanaWallets,exports.useFundWallet=c.useFundWallet,exports.toSolanaWalletConnectors=e=>{let r,{get:n,on:t}=o.getWallets(),c=e?.shouldAutoConnect??!0,s=[],l=[];function u(...e){l=(s=s.concat(...a(e))).map((e=>new i.SolanaWalletConnector(e,c))),r?.(l)}function q(...e){l=(s=s.filter((r=>e.some((e=>r.wallet===e))))).map((e=>new i.SolanaWalletConnector(e,c))),r?.(l)}let h=[t("register",u),t("unregister",q)];return l=(s=a(n())).map((e=>new i.SolanaWalletConnector(e,c))),{_setOnConnectorsUpdated:e=>{r=e},onMount:()=>{h[0]||(h[0]=t("register",u)),h[1]||(h[1]=t("unregister",q))},onUnmount:()=>{let e=h.pop();for(;e;)e(),e=h.pop()},get:()=>l}},exports.useImportWallet=()=>{let{getAccessToken:e,user:r}=i.usePrivyContext(),{refreshSessionAndUser:o,initializeWalletProxy:c}=t.usePrivyInternal(),a=i.useEmitPrivyEvent();return{importWallet:n.useCallback((({privateKey:n})=>i.importWallet({getAccessToken:e,user:r,initializeWalletProxy:c,refreshSessionAndUser:o,emitPrivyEvent:a},{privateKey:n,chainType:"solana"})),[r,e,o,c,a])}},exports.useSignTransaction=function(e){let r=i.useAppConfig(),{getAccessToken:o,user:n}=i.usePrivy(),{setModalData:c}=i.usePrivyModal(),{isHeadlessSigning:a,openModal:s,walletProxy:l,recoverPrimaryWallet:u,privy:q}=t.usePrivyInternal(),h=i.useEmitPrivyEvent();return i.usePrivyEventSubscription("signSolanaTransaction",e),{signTransaction:async({transaction:e,connection:t,uiOptions:d,transactionOptions:p,address:I})=>{let{signedTransaction:C}=await i.signOrSendSolanaTransactionInternal({privy:q,appConfig:r,getAccessToken:o,isHeadlessSigning:a,emitPrivyEvent:h,setModalData:c,openModal:s,walletProxy:l,user:n,recoverPrimaryWallet:u},{transaction:e,connection:t,transactionOptions:p,uiOptions:d,address:I,signOnly:!0});return C}}},exports.useSolanaFundingPlugin=()=>i.useRegisterPlugin(c.t); |
{ | ||
"name": "@privy-io/react-auth", | ||
"version": "2.10.0", | ||
"version": "2.11.0-beta-20250424021159", | ||
"description": "React client for the Privy Auth API", | ||
@@ -140,3 +140,3 @@ "keywords": [ | ||
"@privy-io/chains": "0.0.1", | ||
"@privy-io/js-sdk-core": "0.48.0", | ||
"@privy-io/js-sdk-core": "0.48.1-beta-20250424021159", | ||
"@reown/appkit": "^1.7.2", | ||
@@ -180,3 +180,3 @@ "@simplewebauthn/browser": "^9.0.1", | ||
"@privy-io/eslint-config-custom": "*", | ||
"@privy-io/public-api": "2.22.0", | ||
"@privy-io/public-api": "2.23.0-beta-20250424021159", | ||
"@privy-io/testing": "*", | ||
@@ -183,0 +183,0 @@ "@rollup/plugin-commonjs": "^26.0.1", |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 2 instances in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 3 instances in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
2319915
1.23%13716
1.04%13
-45.83%+ Added
+ Added
+ Added
- Removed
- Removed
- Removed