@privy-io/react-auth 1.93.0 → 1.93.1-beta-20241108182016

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/cjs/abstract-smart-wallets.js +1 -1
  2. package/dist/cjs/events-context-D4csIP2K.js +1 -0
  3. package/dist/cjs/{getEmbeddedConnectedWallet-DGCba9eL.js → getEmbeddedConnectedWallet-D8Hbsclz.js} +1 -1
  4. package/dist/cjs/index.js +312 -312
  5. package/dist/cjs/privy-context-ymK4c6qn.js +1 -0
  6. package/dist/cjs/smart-wallets-xWAJPVoA.js +1 -0
  7. package/dist/cjs/smart-wallets.js +1 -1
  8. package/dist/cjs/solana.js +1 -1
  9. package/dist/cjs/ui.js +22 -22
  10. package/dist/cjs/{useFundWallet-CW-_1LDw.js → useFundWallet-BMvRGB2P.js} +2 -2
  11. package/dist/cjs/useSolanaWallets-DowXcwiH.js +1 -0
  12. package/dist/cjs/{useWallets-CZUj7ALT.js → useWallets-CI4D93NT.js} +1 -1
  13. package/dist/dts/index.d.mts +4 -4
  14. package/dist/dts/index.d.ts +4 -4
  15. package/dist/dts/smart-wallets.d.mts +3 -3
  16. package/dist/dts/smart-wallets.d.ts +3 -3
  17. package/dist/dts/{solana-CWtzrK1j.d.ts → solana-zVpz_NAz.d.mts} +2 -2
  18. package/dist/dts/{solana-CWtzrK1j.d.mts → solana-zVpz_NAz.d.ts} +2 -2
  19. package/dist/dts/solana.d.mts +2 -2
  20. package/dist/dts/solana.d.ts +2 -2
  21. package/dist/dts/{types-fObwliWo.d.mts → types-BokrcPu3.d.mts} +59 -120
  22. package/dist/dts/{types-fObwliWo.d.ts → types-BokrcPu3.d.ts} +59 -120
  23. package/dist/dts/ui.d.mts +1 -1
  24. package/dist/dts/ui.d.ts +1 -1
  25. package/dist/esm/abstract-smart-wallets.mjs +1 -1
  26. package/dist/esm/events-context-2ZF4RQWB.mjs +1 -0
  27. package/dist/esm/{getEmbeddedConnectedWallet-CeIDxPC5.mjs → getEmbeddedConnectedWallet-CjPtW7Kh.mjs} +1 -1
  28. package/dist/esm/index.mjs +324 -324
  29. package/dist/esm/privy-context-1qVRD8ny.mjs +1 -0
  30. package/dist/esm/smart-wallets-DJoa6K12.mjs +1 -0
  31. package/dist/esm/smart-wallets.mjs +1 -1
  32. package/dist/esm/solana.mjs +1 -1
  33. package/dist/esm/ui.mjs +20 -20
  34. package/dist/esm/{useFundWallet-BLErEIDU.mjs → useFundWallet-DHHdMkMH.mjs} +1 -1
  35. package/dist/esm/useSolanaWallets-BSuTkje9.mjs +1 -0
  36. package/dist/esm/useWallets-Djl5fNHD.mjs +1 -0
  37. package/package.json +4 -4
  38. package/dist/cjs/events-context-DykapYG4.js +0 -1
  39. package/dist/cjs/privy-context-Ds_CALAJ.js +0 -1
  40. package/dist/cjs/smart-wallets-C-wtePWG.js +0 -1
  41. package/dist/cjs/useSolanaWallets-DYHtxLmi.js +0 -1
  42. package/dist/esm/events-context-D3j6WwDa.mjs +0 -1
  43. package/dist/esm/privy-context-BeqkgOHo.mjs +0 -1
  44. package/dist/esm/smart-wallets-vjWIsaaC.mjs +0 -1
  45. package/dist/esm/useSolanaWallets-DiqA_tT8.mjs +0 -1
  46. package/dist/esm/useWallets-C0_t04LR.mjs +0 -1
@@ -0,0 +1 @@
1
+ "use strict";var e,t=require("ofetch"),i=require("@ethersproject/address"),r=require("react");class a extends Error{toString(){return`${this.type}${this.privyErrorCode?`-${this.privyErrorCode}`:""}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}constructor(e,t,i){super(e),t instanceof Error&&(this.cause=t),this.privyErrorCode=i}}class s extends a{constructor(e,t,i,r,a,s){super(i,r,a),this.type=e,this.status=t,this.data=s}}class l extends a{constructor(e,t,i){super(e,t,i),this.type="client_error"}}const n=e=>e instanceof a?e:e instanceof Error?new l(e.message,e):new l(`Internal error: ${e}`);exports.PrivyErrorCode=void 0,(e=exports.PrivyErrorCode||(exports.PrivyErrorCode={})).OAUTH_ACCOUNT_SUSPENDED="oauth_account_suspended",e.MISSING_OR_INVALID_PRIVY_APP_ID="missing_or_invalid_privy_app_id",e.MISSING_OR_INVALID_PRIVY_ACCOUNT_ID="missing_or_invalid_privy_account_id",e.MISSING_OR_INVALID_TOKEN="missing_or_invalid_token",e.INVALID_DATA="invalid_data",e.INVALID_CAPTCHA="invalid_captcha",e.LINKED_TO_ANOTHER_USER="linked_to_another_user",e.CANNOT_LINK_MORE_OF_TYPE="cannot_link_more_of_type",e.FAILED_TO_LINK_ACCOUNT="failed_to_link_account",e.FAILED_TO_UPDATE_ACCOUNT="failed_to_update_account",e.USER_EXITED_UPDATE_FLOW="exited_update_flow",e.ALLOWLIST_REJECTED="allowlist_rejected",e.OAUTH_USER_DENIED="oauth_user_denied",e.OAUTH_UNEXPECTED="oauth_unexpected",e.UNKNOWN_AUTH_ERROR="unknown_auth_error",e.USER_EXITED_AUTH_FLOW="exited_auth_flow",e.USER_EXITED_LINK_FLOW="exited_link_flow",e.USER_EXITED_SET_PASSWORD_FLOW="user_exited_set_password_flow",e.MUST_BE_AUTHENTICATED="must_be_authenticated",e.UNKNOWN_CONNECT_WALLET_ERROR="unknown_connect_wallet_error",e.GENERIC_CONNECT_WALLET_ERROR="generic_connect_wallet_error",e.CLIENT_REQUEST_TIMEOUT="client_request_timeout",e.INVALID_CREDENTIALS="invalid_credentials",e.MISSING_MFA_CREDENTIALS="missing_or_invalid_mfa",e.UNKNOWN_MFA_ERROR="unknown_mfa_error",e.EMBEDDED_WALLET_ALREADY_EXISTS="embedded_wallet_already_exists",e.EMBEDDED_WALLET_NOT_FOUND="embedded_wallet_not_found",e.EMBEDDED_WALLET_CREATE_ERROR="embedded_wallet_create_error",e.UNKNOWN_EMBEDDED_WALLET_ERROR="unknown_embedded_wallet_error",e.EMBEDDED_WALLET_PASSWORD_UNCONFIRMED="embedded_wallet_password_unconfirmed",e.EMBEDDED_WALLET_PASSWORD_ALREADY_EXISTS="embedded_wallet_password_already_exists",e.EMBEDDED_WALLET_RECOVERY_ALREADY_EXISTS="embedded_wallet_recovery_already_exists",e.TRANSACTION_FAILURE="transaction_failure",e.UNSUPPORTED_CHAIN_ID="unsupported_chain_id",e.NOT_SUPPORTED="not_supported",e.CAPTCHA_TIMEOUT="captcha_timeout",e.INVALID_MESSAGE="invalid_message",e.UNABLE_TO_SIGN="unable_to_sign",e.CAPTCHA_FAILURE="captcha_failure",e.CAPTCHA_DISABLED="captcha_disabled",e.SESSION_STORAGE_UNAVAILABLE="session_storage_unavailable",e.TOO_MANY_REQUESTS="too_many_requests",e.USER_LIMIT_REACHED="max_accounts_reached",e.DISALLOWED_LOGIN_METHOD="disallowed_login_method",e.DISALLOWED_PLUS_EMAIL="disallowed_plus_email",e.PASSKEY_NOT_ALLOWED="passkey_not_allowed",e.USER_DOES_NOT_EXIST="user_does_not_exist",e.INSUFFICIENT_BALANCE="insufficient_balance",e.ACCOUNT_TRANSFER_REQUIRED="account_transfer_required";const o=()=>{throw Error("You need to wrap your application with the <PrivyProvider> initialized with your app id.")};function d(e){return e?new Date(1e3*e):null}function _(e,t){return e.slice().sort(((e,t)=>(t.firstVerifiedAt??t.verifiedAt).getTime()-(e.firstVerifiedAt??e.verifiedAt).getTime())).find((e=>e.type===t))}const u=e=>e?.linkedAccounts.find((e=>"wallet"===e.type&&"privy"===e.walletClientType&&!e.imported&&"ethereum"===e.chainType&&0===e.walletIndex))||null,c=e=>e?.linkedAccounts.filter((e=>"wallet"===e.type&&"privy"===e.walletClientType&&!e.imported&&"ethereum"===e.chainType)),p=e=>e?.linkedAccounts.find((e=>"wallet"===e.type&&"privy"===e.walletClientType&&!e.imported&&"solana"===e.chainType&&0===e.walletIndex))||null,m=e=>u(e)??p(e),f=e=>{if("ethereum"===e.chainType)return{entropyId:e.address,entropyIdVerifier:"ethereum-address-verifier"};if("solana"===e.chainType)return{entropyId:e.address,entropyIdVerifier:"solana-address-verifier"};throw Error("Failed to get account entropy details")};const h=r.createContext({isNewUserThisSession:!1,walletConnectionStatus:null,connectors:[],solanaWallets:[],rpcConfig:{rpcUrls:{}},showFiatPrices:!0,chains:[],clientAnalyticsId:null,pendingTransaction:null,client:null,appId:"notAdded",customAuthStatus:{status:"not-enabled"},noPromptOnSignature:{current:!1},nativeTokenSymbolForChainId:o,initializeWalletProxy:o,getAuthMeta:o,getAuthFlow:o,closePrivyModal:o,openPrivyModal:o,connectWallet:o,initLoginWithWallet:o,loginWithWallet:o,initLoginWithFarcaster:o,loginWithFarcaster:o,loginWithCode:o,initLoginWithEmail:o,initLoginWithSms:o,initUpdateEmail:o,initUpdatePhone:o,resendEmailCode:o,resendSmsCode:o,initLoginWithHeadlessOAuth:o,loginWithHeadlessOAuth:o,crossAppAuthFlow:o,initLoginWithOAuth:o,recoveryOAuthFlow:o,loginWithOAuth:o,passkeyAuthState:{status:"initial"},setPasskeyAuthState:o,initLoginWithPasskey:o,loginWithPasskey:o,initLinkWithPasskey:o,linkWithPasskey:o,refreshUser:o,loginWithGuestAccountFlow:o,walletProxy:null,createAnalyticsEvent:o,acceptTerms:o,getUsdTokenPrice:o,getUsdPriceForSol:o,recoverPrimaryWallet:o,getMoonpaySignedUrl:o,initCoinbaseOnRamp:o,getCoinbaseOnRampStatus:o,updateWallets:o,fundWallet:o,fundSolanaWallet:o,setReadyToTrue:o,requestFarcasterSignerStatus:o,initLoginWithTelegram:o,loginWithTelegram:o,generateSiweMessage:o,generateSiweMessageForSmartWallet:o,linkWithSiwe:o,linkSmartWallet:o,delegateWallet:o,revokeDelegatedWallets:o,embeddedSolanaWallet:null,createEmbeddedSolanaWallet:o,exportSolanaWallet:o,solanaSignMessage:o,connectCoinbaseSmartWallet:o,initiateAccountTransfer:o,emailOtpState:{status:"initial"},setEmailOtpState:o,smsOtpState:{status:"initial"},setSmsOtpState:o,siweState:{status:"initial"},setSiweState:o,oAuthState:{status:"initial"},setOAuthState:o,isHeadlessOAuthLoading:!1}),y=r.createContext({ready:!1,authenticated:!1,user:null,walletConnectors:null,connectWallet:o,login:o,connectOrCreateWallet:o,linkEmail:o,linkPhone:o,linkFarcaster:o,linkWallet:o,startCrossAppAuthFlow:o,linkGoogle:o,linkTwitter:o,linkDiscord:o,linkGithub:o,linkSpotify:o,linkInstagram:o,linkTelegram:o,linkTiktok:o,linkLinkedIn:o,linkApple:o,linkPasskey:o,updateEmail:o,updatePhone:o,logout:o,getAccessToken:o,getEthereumProvider:o,getEthersProvider:o,getWeb3jsProvider:o,unlinkEmail:o,unlinkPhone:o,unlinkWallet:o,unlinkGoogle:o,unlinkTwitter:o,unlinkDiscord:o,unlinkGithub:o,unlinkSpotify:o,unlinkInstagram:o,unlinkTiktok:o,unlinkLinkedIn:o,unlinkApple:o,unlinkCrossAppAccount:o,unlinkFarcaster:o,unlinkTelegram:o,unlinkPasskey:o,setActiveWallet:o,forkSession:o,createWallet:o,importWallet:o,signMessage:o,signTypedData:o,enrollInMfa:o,initEnrollmentWithSms:o,initEnrollmentWithTotp:o,initEnrollmentWithPasskey:o,promptMfa:o,init:o,submitEnrollmentWithSms:o,submitEnrollmentWithTotp:o,submitEnrollmentWithPasskey:o,unenroll:o,submit:o,cancel:o,sendTransaction:o,sendSolanaTransaction:o,exportWallet:o,setWalletPassword:o,setWalletRecovery:o,requestFarcasterSignerFromWarpcast:o,getFarcasterSignerPublicKey:o,signFarcasterMessage:o,createGuestAccount:o,signMessageWithCrossAppWallet:o,signTypedDataWithCrossAppWallet:o,sendTransactionWithCrossAppWallet:o,isModalOpen:!1,mfaMethods:[]});exports.InternalPrivyContext=h,exports.PrivyApiError=s,exports.PrivyClientError=l,exports.PrivyConnectorError=class extends a{constructor(e,t,i){super(e,t,i),this.type="connector_error"}},exports.PrivyContext=y,exports.PrivyEmbeddedWalletError=class extends l{constructor(e="Embedded wallet error",t){super(e,t,"unknown_embedded_wallet_error")}},exports.PrivyError=a,exports.PrivyNotReadyError=class extends l{constructor(){super("Method called before `ready`. Ensure you wait until `ready` is true before calling.")}},exports.PrivyTimeoutError=class extends l{constructor(){super("Request timed out",void 0,"client_request_timeout")}},exports.PrivyUnauthenticatedError=class extends l{constructor(e="User must be authenticated"){super(e,void 0,"must_be_authenticated")}},exports.PrivyUserLimitReachedError=class extends l{constructor(e){super("This application is in development mode and must be upgraded to production to log in new users.",e,"max_accounts_reached")}},exports.convertUserResponseToUser=function(e){if(!e)return null;let t=function(e){let t=[];for(let i of e){let e=i.type;switch(i.type){case"wallet":let r={address:i.address,type:i.type,imported:i.imported,delegated:i.delegated,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at),chainType:i.chain_type,chainId:i.chain_id,walletClient:"privy"===i.wallet_client_type?"privy":"unknown",walletClientType:i.wallet_client_type,connectorType:i.connector_type,recoveryMethod:i.recovery_method,walletIndex:i.wallet_index};t.push(r);break;case"smart_wallet":let a={address:i.address,type:i.type,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at),smartWalletType:i.smart_wallet_type};t.push(a);break;case"cross_app":let s={type:i.type,subject:i.subject,embeddedWallets:i.embedded_wallets,smartWallets:i.smart_wallets,providerApp:{id:i.provider_app_id},verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(s);break;case"email":let l={address:i.address,type:i.type,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(l);break;case"phone":let n={number:i.phoneNumber,type:i.type,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(n);break;case"google_oauth":let o={subject:i.subject,email:i.email,name:i.name,type:i.type,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(o);break;case"spotify_oauth":let _={subject:i.subject,email:i.email,name:i.name,type:i.type,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(_);break;case"instagram_oauth":let u={subject:i.subject,username:i.username,type:i.type,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(u);break;case"twitter_oauth":let c={subject:i.subject,username:i.username,name:i.name,type:i.type,profilePictureUrl:i.profile_picture_url,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(c);break;case"discord_oauth":let p={subject:i.subject,username:i.username,email:i.email,type:i.type,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(p);break;case"github_oauth":let m={subject:i.subject,username:i.username,name:i.name,email:i.email,type:i.type,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(m);break;case"tiktok_oauth":let f={subject:i.subject,username:i.username,name:i.name,type:i.type,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(f);break;case"linkedin_oauth":let h={subject:i.subject,name:i.name,email:i.email,vanityName:i.vanity_name,type:i.type,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(h);break;case"apple_oauth":let y={subject:i.subject,email:i.email,type:i.type,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(y);break;case"custom_auth":t.push({type:i.type,customUserId:i.custom_user_id,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)});break;case"farcaster":let A={type:i.type,fid:i.fid,ownerAddress:i.owner_address,displayName:i.display_name,username:i.username,bio:i.bio,pfp:i.profile_picture_url,url:i.homepage_url,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at),signerPublicKey:i.signer_public_key};t.push(A);break;case"passkey":let E={type:i.type,enrolledInMfa:i.enrolled_in_mfa,credentialId:i.credential_id,authenticatorName:i.authenticator_name,createdWithDevice:i.created_with_device,createdWithOs:i.created_with_os,createdWithBrowser:i.created_with_browser,verifiedAt:d(i.verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(E);break;case"telegram":let v={type:i.type,telegramUserId:i.telegram_user_id,firstName:i.first_name,lastName:i.last_name,username:i.username,photoUrl:i.photo_url,verifiedAt:d(i.first_verified_at),firstVerifiedAt:d(i.first_verified_at),latestVerifiedAt:d(i.latest_verified_at)};t.push(v);break;default:console.warn(`Unrecognized account type: ${e}. Please consider upgrading the Privy SDK.`)}}return t}(e.linked_accounts),i=_(t,"wallet"),r=_(t,"smart_wallet"),a=_(t,"email"),s=_(t,"phone"),l=_(t,"google_oauth"),n=_(t,"twitter_oauth"),o=_(t,"discord_oauth"),u=_(t,"github_oauth"),c=_(t,"spotify_oauth"),p=_(t,"instagram_oauth"),m=_(t,"tiktok_oauth"),f=_(t,"linkedin_oauth"),h=_(t,"apple_oauth"),y=_(t,"farcaster"),A=_(t,"telegram"),E=e.mfa_methods.map((({type:e,verified_at:t})=>({type:e,verifiedAt:d(t)})));return{id:e.id,createdAt:d(e.created_at),linkedAccounts:t,email:a&&{address:a?.address},phone:s&&{number:s?.number},wallet:i&&{address:i.address,chainType:i.chainType,chainId:i.chainId,walletClient:i.walletClient,walletClientType:i.walletClientType,connectorType:i.connectorType,recoveryMethod:i.recoveryMethod,imported:i.imported,delegated:i.delegated,walletIndex:i.walletIndex},smartWallet:r&&{address:r.address,smartWalletType:r.smartWalletType},google:l&&{subject:l.subject,email:l.email,name:l.name},twitter:n&&{subject:n.subject,username:n.username,name:n.name,profilePictureUrl:n.profilePictureUrl},discord:o&&{subject:o.subject,username:o.username,email:o.email},github:u&&{subject:u.subject,username:u.username,name:u.name,email:u.email},spotify:c&&{subject:c.subject,email:c.email,name:c.name},instagram:p&&{subject:p.subject,username:p.username},tiktok:m&&{subject:m.subject,username:m.username,name:m.name},linkedin:f&&{subject:f.subject,name:f.name,email:f.email,vanityName:f.vanityName},apple:h&&{subject:h.subject,email:h.email},farcaster:y&&{fid:y.fid,ownerAddress:y.ownerAddress,displayName:y.displayName,username:y.username,bio:y.bio,pfp:y.pfp,url:y.url,signerPublicKey:y.signerPublicKey},telegram:A&&{telegramUserId:A.telegramUserId,firstName:A.firstName,lastName:A.lastName,username:A.username,photoUrl:A.photoUrl},delegatedWallets:[],mfaMethods:E.map((e=>e.type)),hasAcceptedTerms:e.has_accepted_terms??!1,isGuest:e.is_guest,customMetadata:e.custom_metadata}},exports.formatApiError=e=>{if(e instanceof a)return e;if(!(e instanceof t.FetchError))return n(e);if(!e.response)return new s("api_error",null,e.message,e);let{type:i,message:r,error:l,code:o}=e.data;return new s(i||"ApiError",e.response.status,r||l,e,o,e.data)},exports.formatPrivyError=n,exports.getEntropyDetailsFromAccount=f,exports.getEntropyDetailsFromUser=e=>{let t=m(e);if(!t)throw Error("Failed to find primary wallet");return f(t)},exports.getEthereumSigningAndRootWallet=(e,t)=>{let r=(a=e,a?.linkedAccounts.filter((e=>"wallet"===e.type&&"privy"===e.walletClientType&&"ethereum"===e.chainType))).find((e=>i.getAddress(e.address)===i.getAddress(t)));var a;return{signingWallet:r,rootWallet:r?r.imported?r:u(e):void 0}},exports.getImportedPrivyEthereumWallet=e=>e?.linkedAccounts.find((e=>"wallet"===e.type&&"privy"===e.walletClientType&&e.imported&&"ethereum"===e.chainType))||null,exports.getLatestPrivyEthereumWallet=e=>c(e).reduce(((e,t)=>!e||e.walletIndex<t.walletIndex?t:e))||null,exports.getPrivyEthereumHDWallets=c,exports.getPrivyEthereumWallet=u,exports.getPrivyPrimaryWallet=m,exports.getPrivySolanaWallet=p,exports.getPrivyWalletWithAddress=(e,t)=>e?.linkedAccounts.find((e=>"wallet"===e.type&&"privy"===e.walletClientType&&!e.imported&&e.address===t))||null,exports.getSolanaSigningAndRootWallet=(e,t)=>{let i=(e=>e?.linkedAccounts.filter((e=>"wallet"===e.type&&"privy"===e.walletClientType&&!e.imported&&"solana"===e.chainType)))(e).find((e=>e.address.toLowerCase()===t.toLowerCase()));return{signingWallet:i,rootWallet:0===i?.walletIndex?i:p(e)}},exports.notImplemented=o,exports.notImplementedWithMessage=e=>()=>{throw Error(e.trim())},exports.shouldProceedtoEmbeddedWalletCreationFlow=(e,t)=>!(u(e)||p(e)||"all-users"!==t&&("users-without-wallets"!==t||(e=>e.linkedAccounts.filter((e=>"wallet"===e.type)))(e)?.length)),exports.usePrivy=()=>r.useContext(y),exports.usePrivyInternal=()=>r.useContext(h);
@@ -0,0 +1 @@
1
+ "use strict";var e=require("react"),t=require("viem"),a=require("./privy-context-ymK4c6qn.js"),n=require("./useWallets-CI4D93NT.js"),r=require("./getEmbeddedConnectedWallet-D8Hbsclz.js"),i=require("permissionless"),o=require("permissionless/accounts"),s=require("permissionless/clients/pimlico"),l=require("viem/account-abstraction"),u=require("zod"),d=require("bs58"),c=require("ethers"),p=require("libphonenumber-js/max");function _(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var m=_(u),z=_(d);let g;var b=((g=b||{}).OAUTH_ACCOUNT_SUSPENDED="oauth_account_suspended",g.MISSING_OR_INVALID_PRIVY_APP_ID="missing_or_invalid_privy_app_id",g.MISSING_OR_INVALID_PRIVY_CLIENT_ID="missing_or_invalid_privy_client_id",g.MISSING_OR_INVALID_PRIVY_ACCOUNT_ID="missing_or_invalid_privy_account_id",g.MISSING_OR_INVALID_TOKEN="missing_or_invalid_token",g.MISSING_OR_INVALID_MFA="missing_or_invalid_mfa",g.EXPIRED_OR_INVALID_MFA_TOKEN="expired_or_invalid_mfa_token",g.INVALID_DATA="invalid_data",g.INVALID_CREDENTIALS="invalid_credentials",g.INVALID_CAPTCHA="invalid_captcha",g.LINKED_TO_ANOTHER_USER="linked_to_another_user",g.ALLOWLIST_REJECTED="allowlist_rejected",g.CANNOT_UNLINK_EMBEDDED_WALLET="cannot_unlink_embedded_wallet",g.CANNOT_UNLINK_SOLE_ACCOUNT="cannot_unlink_sole_account",g.CANNOT_LINK_MORE_OF_TYPE="cannot_link_more_of_type",g.LINKED_ACCOUNT_NOT_FOUND="linked_account_not_found",g.TOO_MANY_REQUESTS="too_many_requests",g.INVALID_ORIGIN="invalid_origin",g.MISSING_ORIGIN="missing_origin",g.INVALID_NATIVE_APP_ID="invalid_native_app_id",g.TOKEN_ALREADY_USED="token_already_used",g.ALREADY_LOGGED_OUT="already_logged_out",g.NOT_SUPPORTED="not_supported",g.USER_UNSUBSCRIBED="user_unsubscribed",g.MAX_APPS_REACHED="max_apps_reached",g.USER_LIMIT_REACHED="max_accounts_reached",g.DEVICE_REVOKED="device_revoked",g.WALLET_PASSWORD_EXISTS="wallet_password_exists",g.OAUTH_STATE_MISMATCH="oauth_state_mismatch",g.MAX_DENYLIST_ENTRIES_REACHED="max_denylist_entries_reached",g.DISALLOWED_LOGIN_METHOD="disallowed_login_method",g.DISALLOWED_PLUS_EMAIL="disallowed_plus_email",g.DISALLOWED_RECOVERY_METHOD="disallowed_recovery_method",g.LEGACY_DASHBOARD_LOGIN_CONFIGURATION="legacy_dashboard_login_configuration",g.CANNOT_SET_PASSWORD="cannot_set_password",g.INVALID_PKCE_PARAMETERS="invalid_pkce_parameters",g.INVALID_APP_URL_SCHEME_CONFIGURATION="invalid_app_url_scheme_configuration",g.CROSS_APP_CONNECTION_NOT_ALLOWED="cross_app_connection_not_allowed",g.USER_DOES_NOT_EXIST="user_does_not_exist",g.ACCOUNT_TRANSFER_REQUIRED="account_transfer_required",g.USER_HAS_NOT_DELEGATED_WALLET="user_has_not_delegated_wallet",g),h=class extends Error{toString(){return`${this.constructor.name}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}constructor(e,t,a,n){super(t),this.code=a,this.status=e,this.responseData=n}},f=class extends h{constructor(e,t){super(400,e,t||"invalid_data")}},y=class extends h{constructor(e,t){super(401,e,t)}},v=class extends h{constructor(e,t){super(422,e,t)}};function I(e,t){return Object.keys(t).forEach((function(a){"default"===a||"__esModule"===a||Object.prototype.hasOwnProperty.call(e,a)||Object.defineProperty(e,a,{enumerable:!0,get:function(){return t[a]}})})),e}function S(e,t,a,n){Object.defineProperty(e,t,{get:a,set:n,enumerable:!0,configurable:!0})}u.z.object({error:u.z.string(),cause:u.z.string().optional(),code:u.z.nativeEnum(b).optional()});var k={},A={};S(A,"AnalyticsEvent",(()=>T));let T={path:"/api/v1/analytics_events",method:"POST"};var w={};S(w,"AppConfig",(()=>E));let E={path:"/api/v1/apps/:app_id",method:"GET"};var P={};S(P,"CoinbaseOnRampInit",(()=>j)),S(P,"CoinbaseOnRampStatus",(()=>O));let j={path:"/api/v1/funding/coinbase_on_ramp/init",method:"POST"},O={path:"/api/v1/funding/coinbase_on_ramp/status",method:"GET"};var C={};S(C,"GetCrossAppConnections",(()=>R));let R={path:"/api/v1/apps/:app_id/cross-app/connections",method:"GET"};var N={};S(N,"CustomJWTAuthenticate",(()=>D));let D={path:"/api/v1/custom_jwt_account/authenticate",method:"POST"};var x={};S(x,"FarcasterInit",(()=>L)),S(x,"FarcasterAuthenticate",(()=>W)),S(x,"FarcasterLink",(()=>M)),S(x,"FarcasterUnlink",(()=>U)),S(x,"FarcasterStatus",(()=>F));let L={path:"/api/v1/farcaster/init",method:"POST"},W={path:"/api/v1/farcaster/authenticate",method:"POST"},M={path:"/api/v1/farcaster/link",method:"POST"},U={path:"/api/v1/farcaster/unlink",method:"POST"},F={path:"/api/v1/farcaster/status",method:"GET"};var G={};S(G,"FarcasterSignerInit",(()=>V)),S(G,"FarcasterSignerStatus",(()=>q));let V={path:"/api/v1/farcaster/signer/init",method:"POST"},q={path:"/api/v1/farcaster/signer/status",method:"POST"};var B={};S(B,"GuestAuthenticate",(()=>K));let K={path:"/api/v1/guest/authenticate",method:"POST"};var $={};S($,"MfaPasskeyInit",(()=>H)),S($,"MfaPasskeyVerify",(()=>Y)),S($,"MfaPasskeyEnrollment",(()=>J));let H={path:"/api/v1/mfa/passkeys/init",method:"POST"},Y={path:"/api/v1/mfa/passkeys/verify",method:"POST"},J={path:"/api/v1/mfa/passkeys/enrollment",method:"POST"};var Q={};S(Q,"MfaPasswordlessSmsEnroll",(()=>X)),S(Q,"MfaPasswordlessSmsVerify",(()=>Z)),S(Q,"MfaPasswordlessSmsInit",(()=>ee)),S(Q,"MfaPasswordlessSmsUnenroll",(()=>te));let X={path:"/api/v1/mfa/passwordless_sms/enroll",method:"POST"},Z={path:"/api/v1/mfa/passwordless_sms/verify",method:"POST"},ee={path:"/api/v1/mfa/passwordless_sms/init",method:"POST"},te={path:"/api/v1/mfa/passwordless_sms/unenroll",method:"POST"};var ae={};S(ae,"MfaTotpEnroll",(()=>ne)),S(ae,"MfaTotpVerify",(()=>re)),S(ae,"MfaTotpInit",(()=>ie)),S(ae,"MfaTotpUnenroll",(()=>oe));let ne={path:"/api/v1/mfa/totp/enroll",method:"POST"},re={path:"/api/v1/mfa/totp/verify",method:"POST"},ie={path:"/api/v1/mfa/totp/init",method:"POST"},oe={path:"/api/v1/mfa/totp/unenroll",method:"POST"};var se={};S(se,"OAuthAuthenticate",(()=>le)),S(se,"OAuthInit",(()=>ue)),S(se,"OAuthLink",(()=>de)),S(se,"OAuthUnlink",(()=>ce));let le={path:"/api/v1/oauth/authenticate",method:"POST"},ue={path:"/api/v1/oauth/init",method:"POST"},de={path:"/api/v1/oauth/link",method:"POST"},ce={path:"/api/v1/oauth/unlink",method:"POST"};var pe={};S(pe,"OAuthProviderAuthorize",(()=>_e)),S(pe,"OAuthProviderVerify",(()=>me));let _e={path:"/oauth/authorization_code",method:"POST"},me={path:"/oauth/verify",method:"POST"};var ze={};S(ze,"PasskeyLink",(()=>ge)),S(ze,"PasskeyAuthenticate",(()=>be)),S(ze,"PasskeyAuthenticateInit",(()=>he)),S(ze,"PasskeyLinkInit",(()=>fe)),S(ze,"PasskeyUnlink",(()=>ye));let ge={path:"/api/v1/passkeys/link",method:"POST"},be={path:"/api/v1/passkeys/authenticate",method:"POST"},he={path:"/api/v1/passkeys/authenticate/init",method:"POST"},fe={path:"/api/v1/passkeys/link/init",method:"POST"},ye={path:"/api/v1/passkeys/unlink",method:"POST"};var ve={};S(ve,"PasswordlessAuthenticate",(()=>Ie)),S(ve,"PasswordlessInit",(()=>Se)),S(ve,"PasswordlessLink",(()=>ke)),S(ve,"PasswordlessUnlink",(()=>Ae)),S(ve,"PasswordlessUpdate",(()=>Te));let Ie={path:"/api/v1/passwordless/authenticate",method:"POST"},Se={path:"/api/v1/passwordless/init",method:"POST"},ke={path:"/api/v1/passwordless/link",method:"POST"},Ae={path:"/api/v1/passwordless/unlink",method:"POST"},Te={path:"/api/v1/passwordless/update",method:"POST"};var we={};S(we,"PasswordlessSmsAuthenticate",(()=>Ee)),S(we,"PasswordlessSmsInit",(()=>Pe)),S(we,"PasswordlessSmsLink",(()=>je)),S(we,"PasswordlessSmsUnlink",(()=>Oe)),S(we,"PasswordlessSmsUpdate",(()=>Ce));let Ee={path:"/api/v1/passwordless_sms/authenticate",method:"POST"},Pe={path:"/api/v1/passwordless_sms/init",method:"POST"},je={path:"/api/v1/passwordless_sms/link",method:"POST"},Oe={path:"/api/v1/passwordless_sms/unlink",method:"POST"},Ce={path:"/api/v1/passwordless_sms/update",method:"POST"};var Re={};S(Re,"RecoveryKeyMaterial",(()=>Ne)),S(Re,"RecoveryOAuthInit",(()=>De)),S(Re,"RecoveryOAuthAuthenticate",(()=>xe)),S(Re,"RecoveryOAuthInitICloud",(()=>Le)),S(Re,"RecoveryOAuthCallbackICloudExpo",(()=>We)),S(Re,"RecoveryConfigurationICloud",(()=>Me));let Ne={path:"/api/v1/embedded_wallets/:address/recovery/key_material",method:"POST"},De={path:"/api/v1/recovery/oauth/init",method:"POST"},xe={path:"/api/v1/recovery/oauth/authenticate",method:"POST"},Le={path:"/api/v1/recovery/oauth/init_icloud",method:"POST"},We={path:"/api/v1/recovery/oauth/callback_icloud/:app_id/expo_ios",method:"GET"},Me={path:"/api/v1/recovery/configuration_icloud",method:"POST"};var Ue={};S(Ue,"getPathWithParams",(()=>Fe));let Fe=(e,t)=>t?Object.entries(t).reduce(((e,[t,a])=>e.replace(`:${t}`,`${a}`)),e):e;var Ge={};S(Ge,"RefreshSession",(()=>Ve)),S(Ge,"Logout",(()=>qe));let Ve={path:"/api/v1/sessions",method:"POST"},qe={path:"/api/v1/sessions/logout",method:"POST"};var Be={};S(Be,"GetSmartWalletConfig",(()=>Ke)),S(Be,"PostSmartWalletConfig",(()=>$e));let Ke={path:"/api/v1/apps/:app_id/smart_wallets",method:"GET"},$e={path:"/api/v1/apps/:app_id/smart_wallets",method:"POST"};var He={};S(He,"SiweInit",(()=>Ye)),S(He,"SiweAuthenticate",(()=>Je)),S(He,"SiweLink",(()=>Qe)),S(He,"SiweLinkSmartWallet",(()=>Xe)),S(He,"SiweUnlink",(()=>Ze));let Ye={path:"/api/v1/siwe/init",method:"POST"},Je={path:"/api/v1/siwe/authenticate",method:"POST"},Qe={path:"/api/v1/siwe/link",method:"POST"},Xe={path:"/api/v1/siwe/link_smart_wallet",method:"POST"},Ze={path:"/api/v1/siwe/unlink",method:"POST"};var et={};S(et,"SiwsInit",(()=>tt)),S(et,"SiwsAuthenticate",(()=>at)),S(et,"SiwsLink",(()=>nt)),S(et,"SiwsUnlink",(()=>rt));let tt={path:"/api/v1/siws/init",method:"POST"},at={path:"/api/v1/siws/authenticate",method:"POST"},nt={path:"/api/v1/siws/link",method:"POST"},rt={path:"/api/v1/siws/unlink",method:"POST"};var it={};S(it,"AcceptTermsOnUser",(()=>ot));let ot={path:"/api/v1/users/me/accept_terms",method:"POST"};var st={};S(st,"TelegramAuthenticate",(()=>lt)),S(st,"TelegramLink",(()=>ut)),S(st,"TelegramUnlink",(()=>dt));let lt={path:"/api/v1/telegram/authenticate",method:"POST"},ut={path:"/api/v1/telegram/link",method:"POST"},dt={path:"/api/v1/telegram/unlink",method:"POST"};I(k,A),I(k,w),I(k,P),I(k,C),I(k,N),I(k,x),I(k,G),I(k,B),I(k,$),I(k,Q),I(k,ae),I(k,se),I(k,pe),I(k,ze),I(k,ve),I(k,we),I(k,Re),I(k,Ue),I(k,Ge),I(k,Be),I(k,He),I(k,et),I(k,it),I(k,st);var ct={},pt={};S(pt,"AnalyticsEventInput",(()=>_t));let _t=u.z.object({event_name:u.z.string().max(255),client_id:u.z.string().max(255).nullable(),payload:u.z.record(u.z.any()).optional()});var mt={};S(mt,"AccountIdFromPath",(()=>Tt)),S(mt,"AppIdFromPath",(()=>wt)),S(mt,"Pagination",(()=>Et));var zt={};S(zt,"UserId",(()=>gt)),S(zt,"Email",(()=>bt)),S(zt,"PasswordlessCode",(()=>ht)),S(zt,"WalletAddress",(()=>ft)),S(zt,"normalizeEthereumAddress",(()=>kt)),S(zt,"SolanaWalletAddress",(()=>yt)),S(zt,"PhoneNumber",(()=>vt)),S(zt,"normalizePhoneNumber",(()=>It)),S(zt,"isValidAddress",(()=>St)),S(zt,"AuthenticateMode",(()=>At));let gt=u.z.string({required_error:"Privy DID must be included",invalid_type_error:"Privy DID is not a valid string"}).min(1).transform((e=>e.replace("did:privy:",""))),bt=u.z.string({required_error:"Email address must be provided",invalid_type_error:"Email address must be a valid string"}).email("Invalid email address").transform((e=>e.toLowerCase())),ht=u.z.string({required_error:"Verification code must be provided",invalid_type_error:"Invalid verification code"}).length(6,"Verification code must have 6 digits."),ft=u.z.string({required_error:"Ethereum address must be provided",invalid_type_error:"Invalid Ethereum address"}).transform(((e,t)=>kt(e)||(t.addIssue({code:u.z.ZodIssueCode.custom,message:"Invalid Ethereum address"}),u.z.NEVER))),yt=u.z.string({required_error:"Solana address must be provided",invalid_type_error:"Invalid Solana address"}).trim().transform(((e,t)=>{try{z.default.decode(e)}catch(e){return t.addIssue({code:u.z.ZodIssueCode.custom,message:"Invalid Solana address"}),u.z.NEVER}return e})),vt=u.z.string({required_error:"Phone number must be included",invalid_type_error:"Phone number is not a valid string"}).refine((e=>{try{return void 0!==It(e)}catch(e){return!1}}),{message:"Phone number is not valid"}).transform((e=>It(e)||""));function It(e){let t=p.parsePhoneNumber(e,"US");if(t?.isPossible())return t.formatInternational()}function St(e){return!!kt(e)}function kt(e){if("string"==typeof e)try{return c.ethers.utils.getAddress(e.trim())}catch(e){}}let At=u.z.object({mode:u.z.enum(["no-signup","login-or-sign-up"]).optional()}),Tt=u.z.object({account_id:u.z.string({required_error:"Account ID must be provided",invalid_type_error:"Account ID is not a valid string"}).min(1)}),wt=u.z.object({app_id:u.z.string({required_error:"App ID must be provided",invalid_type_error:"App ID is not a valid string"}).min(1)}).transform((({app_id:e})=>({app_id:e,appId:e}))).catch((({error:e})=>{throw new f(e.message,b.MISSING_OR_INVALID_PRIVY_APP_ID)})),Et=u.z.object({cursor:gt.optional(),limit:u.z.coerce.number().max(100,{message:"Query limit can be at maximum 100 records."}).optional()});var Pt={};S(Pt,"AppResponseSchema",(()=>Lt));var jt={};S(jt,"EmbeddedWalletConfigSchema",(()=>Ct)),S(jt,"TelegramAuthConfigSchema",(()=>Rt)),S(jt,"FundingMethodEnum",(()=>Nt)),S(jt,"FundingMethodArraySchema",(()=>Dt)),S(jt,"FundingConfigSchema",(()=>xt));let Ot=m.default.object({chain:m.default.string(),asset:m.default.enum(["native-currency","USDC"]).optional()}),Ct=m.default.object({create_on_login:m.default.enum(["users-without-wallets","all-users","off"]),user_owned_recovery_options:m.default.array(m.default.enum(["user-passcode","google-drive","icloud"])),require_user_owned_recovery_on_create:m.default.boolean().optional(),require_user_password_on_create:m.default.boolean().optional()}),Rt=m.default.object({bot_id:m.default.string(),bot_name:m.default.string(),link_enabled:m.default.boolean(),seamless_auth_enabled:m.default.boolean()}),Nt=m.default.enum(["moonpay","coinbase-onramp","external"]),Dt=m.default.array(Nt),xt=m.default.object({default_recommended_currency:Ot,default_recommended_amount:m.default.string(),methods:Dt,prompt_funding_on_wallet_creation:m.default.boolean(),cross_chain_bridging_enabled:m.default.boolean()}),Lt=u.z.object({id:u.z.string(),name:u.z.string(),logo_url:u.z.string().nullable(),icon_url:u.z.string().nullable(),terms_and_conditions_url:u.z.string().nullable(),privacy_policy_url:u.z.string().nullable(),require_users_accept_terms:u.z.boolean().nullable(),theme:u.z.string(),accent_color:u.z.string().nullable(),show_wallet_login_first:u.z.boolean(),allowed_domains:u.z.array(u.z.string()),allowed_native_app_ids:u.z.array(u.z.string()),allowed_native_app_url_schemes:u.z.array(u.z.string()),wallet_auth:u.z.boolean(),email_auth:u.z.boolean(),sms_auth:u.z.boolean(),google_oauth:u.z.boolean(),twitter_oauth:u.z.boolean(),discord_oauth:u.z.boolean(),github_oauth:u.z.boolean(),spotify_oauth:u.z.boolean(),instagram_oauth:u.z.boolean(),tiktok_oauth:u.z.boolean(),linkedin_oauth:u.z.boolean(),apple_oauth:u.z.boolean(),farcaster_auth:u.z.boolean(),passkey_auth:u.z.boolean(),telegram_auth:u.z.boolean(),guest_auth:u.z.boolean(),solana_wallet_auth:u.z.boolean(),disable_plus_emails:u.z.boolean(),allowlist_enabled:u.z.boolean(),allowlist_config:u.z.object({error_title:u.z.string().nullable(),error_detail:u.z.string().nullable(),cta_text:u.z.string().nullable(),cta_link:u.z.string().nullable()}),wallet_connect_cloud_project_id:u.z.string().nullable(),custom_api_url:u.z.string().nullable(),embedded_wallet_config:Ct,enforce_wallet_uis:u.z.boolean(),legacy_wallet_ui_config:u.z.boolean(),fiat_on_ramp_enabled:u.z.boolean(),captcha_enabled:u.z.boolean(),twitter_oauth_on_mobile_enabled:u.z.boolean(),mfa_methods:u.z.array(u.z.enum(["sms","totp","passkey"])),captcha_site_key:u.z.string().optional(),verification_key:u.z.string(),telegram_auth_config:Rt.optional(),funding_config:xt.optional(),max_linked_wallets_per_user:u.z.number().nullable(),farcaster_link_wallets_enabled:u.z.boolean()});var Wt={};S(Wt,"CoinbaseOnRampInitInput",(()=>qt)),S(Wt,"CoinbaseOnRampInitResponse",(()=>Bt)),S(Wt,"CoinbaseOnRampStatusResponse",(()=>Kt));let Mt=u.z.enum(["ethereum","bitcoin","base","avacchain","optimism","solana","polygon","arbitrum","stellar"]),Ut=u.z.enum(["eth","ETH","USDC"]).transform((e=>e.toUpperCase())),Ft=u.z.enum(["SOL"]).transform((e=>e.toUpperCase())),Gt=u.z.object({addresses:u.z.array(u.z.object({address:ft,blockchains:u.z.array(Mt)})).max(1).min(1),assets:u.z.array(Ut).optional()}),Vt=u.z.object({addresses:u.z.array(u.z.object({address:yt,blockchains:u.z.array(Mt)})).max(1).min(1),assets:u.z.array(Ft).optional()}),qt=u.z.union([Gt,Vt]),Bt=u.z.object({app_id:u.z.string(),session_token:u.z.string(),channel_id:u.z.string(),partner_user_id:u.z.string()}),Kt=u.z.object({status:u.z.enum(["pending","success","failure"])});var $t={};S($t,"CrossAppConnectionsResponse",(()=>Ht));let Ht=u.z.object({connections:u.z.array(u.z.object({provider_app_id:u.z.string(),provider_app_name:u.z.string(),provider_app_icon_url:u.z.string().url().nullable(),provider_app_custom_api_url:u.z.string().url().nullable(),read_only:u.z.boolean()}))});var Yt={};S(Yt,"AuthenticateJwtInput",(()=>Jt));let Jt=m.default.object({token:m.default.string().optional()});var Qt={};S(Qt,"VerifyEmailInput",(()=>Zt)),S(Qt,"AuthenticateEmailInput",(()=>ea)),S(Qt,"InitEmailInput",(()=>ta)),S(Qt,"UnlinkEmailInput",(()=>aa)),S(Qt,"UpdateEmailInput",(()=>na)),S(Qt,"TransferEmailInput",(()=>ra));let Xt=u.z.object({nonce:u.z.string()}),Zt=u.z.object({code:ht,email:bt}),ea=Zt.merge(At),ta=u.z.object({email:bt,token:u.z.string().optional()}),aa=u.z.object({address:bt}),na=u.z.object({oldAddress:bt,newAddress:bt,code:ht}),ra=Xt.extend({email:bt});var ia={};S(ia,"JsonWebKey",(()=>oa)),S(ia,"JsonWebKeySet",(()=>sa));let oa=u.z.object({kty:u.z.string(),use:u.z.enum(["sig","enc"]).optional(),key_ops:u.z.array(u.z.enum(["sign","verify","encrypt","decrypt","wrapKey","unwrapKey","deriveKey","deriveBits"])).optional(),alg:u.z.enum(["RS256"]),kid:u.z.string().optional(),x5u:u.z.string().optional(),x5c:u.z.array(u.z.string()).optional(),x5t:u.z.string().optional(),"x5t#S256":u.z.string().optional(),n:u.z.string().optional(),e:u.z.string().optional(),d:u.z.string().optional()}),sa=u.z.object({keys:u.z.array(oa)});var la={};S(la,"FarcasterConnectInitResponse",(()=>ua)),S(la,"FarcasterConnectStatusCompletedResponse",(()=>da)),S(la,"FarcasterConnectStatusPendingResponse",(()=>ca)),S(la,"FarcasterAuthenticateInput",(()=>pa)),S(la,"FarcasterLinkInput",(()=>_a)),S(la,"FarcasterInitInput",(()=>ma)),S(la,"FarcasterUnlinkInput",(()=>za)),S(la,"TransferFarcasterInput",(()=>ga));let ua=u.z.object({channel_token:u.z.string(),connect_uri:u.z.string()}),da=u.z.object({state:u.z.literal("completed"),nonce:u.z.string(),message:u.z.string(),signature:u.z.string(),fid:u.z.number(),username:u.z.string(),display_name:u.z.string(),bio:u.z.string(),pfp_url:u.z.string()}),ca=u.z.object({state:u.z.literal("pending"),nonce:u.z.string()}),pa=u.z.object({channel_token:u.z.string(),message:u.z.string(),signature:u.z.string(),fid:u.z.number()}).merge(At),_a=u.z.object({channel_token:u.z.string(),message:u.z.string(),signature:u.z.string(),fid:u.z.number()}),ma=u.z.object({token:u.z.string().optional(),redirect_url:u.z.string().url().optional(),relying_party:u.z.string().optional()}),za=u.z.object({fid:u.z.number()}),ga=Xt.extend({farcaster_id:u.z.string(),farcaster_embedded_address:u.z.string()});var ba={};S(ba,"FarcasterSignerInitInput",(()=>ha)),S(ba,"FarcasterSignerInitResponse",(()=>fa)),S(ba,"FarcasterSignerStatusResponse",(()=>ya));let ha=u.z.object({ed25519_public_key:u.z.string().refine((e=>e.startsWith("0x")&&66===e.length)),deadline:u.z.bigint().optional().default((()=>BigInt(Math.floor(Date.now()/1e3)+3600)))}),fa=u.z.discriminatedUnion("status",[u.z.object({public_key:u.z.string(),status:u.z.literal("pending_approval"),signer_approval_url:u.z.string()}),u.z.object({public_key:u.z.string(),status:u.z.literal("approved"),fid:u.z.bigint()}),u.z.object({public_key:u.z.string(),status:u.z.literal("revoked"),fid:u.z.bigint()})]),ya=u.z.discriminatedUnion("status",[u.z.object({public_key:u.z.string(),status:u.z.literal("pending_approval")}),u.z.object({public_key:u.z.string(),status:u.z.literal("approved"),fid:u.z.bigint()}),u.z.object({public_key:u.z.string(),status:u.z.literal("revoked"),fid:u.z.bigint()})]);var va={};S(va,"AuthenticateGuestInput",(()=>Ia));let Ia=u.z.object({guest_credential:u.z.string().length(43)}).strict();var Sa={};S(Sa,"EmailIdTokenEntry",(()=>En)),S(Sa,"PhoneIdTokenEntry",(()=>Pn)),S(Sa,"EthereumIdTokenEntry",(()=>jn)),S(Sa,"SolanaIdTokenEntry",(()=>On)),S(Sa,"FarcasterIdTokenEntry",(()=>Cn)),S(Sa,"PasskeyIdTokenEntry",(()=>Rn)),S(Sa,"TelegramIdTokenEntry",(()=>Nn)),S(Sa,"EthereumEmbeddedWalletIdTokenEntry",(()=>Dn)),S(Sa,"SolanaEmbeddedWalletIdTokenEntry",(()=>xn)),S(Sa,"GoogleOauthIdTokenEntry",(()=>Ln)),S(Sa,"TwitterOauthIdTokenEntry",(()=>Wn)),S(Sa,"DiscordOauthIdTokenEntry",(()=>Mn)),S(Sa,"GithubOauthIdTokenEntry",(()=>Un)),S(Sa,"LinkedInOauthIdTokenEntry",(()=>Fn)),S(Sa,"SpotifyOauthIdTokenEntry",(()=>Gn)),S(Sa,"InstagramOauthIdTokenEntry",(()=>Vn)),S(Sa,"TiktokOauthIdTokenEntry",(()=>qn)),S(Sa,"AppleOauthIdTokenEntry",(()=>Bn)),S(Sa,"CustomJwtIdTokenEntry",(()=>Kn)),S(Sa,"CrossAppIdTokenEntry",(()=>$n)),S(Sa,"SmartWalletIdTokenEntry",(()=>Hn));var ka={};S(ka,"EmailAccount",(()=>Ua)),S(ka,"PhoneAccount",(()=>Fa)),S(ka,"BaseWalletAccount",(()=>Ga)),S(ka,"EthereumAccount",(()=>Va)),S(ka,"SmartWalletAccount",(()=>qa)),S(ka,"SolanaAccount",(()=>Ba)),S(ka,"FarcasterAccount",(()=>Ka)),S(ka,"PasskeyAccount",(()=>$a)),S(ka,"TelegramAccount",(()=>Ha)),S(ka,"EthereumEmbeddedWalletAccount",(()=>Qa)),S(ka,"SolanaEmbeddedWalletAccount",(()=>Xa)),S(ka,"BitcoinSegwitEmbeddedWalletAccount",(()=>Za)),S(ka,"BitcoinTaprootEmbeddedWalletAccount",(()=>en)),S(ka,"GoogleOauthAccount",(()=>tn)),S(ka,"TwitterOauthAccount",(()=>an)),S(ka,"DiscordOauthAccount",(()=>nn)),S(ka,"GithubOauthAccount",(()=>rn)),S(ka,"LinkedInOauthAccount",(()=>on)),S(ka,"SpotifyOauthAccount",(()=>sn)),S(ka,"InstagramOauthAccount",(()=>ln)),S(ka,"TiktokOauthAccount",(()=>un)),S(ka,"AppleOauthAccount",(()=>dn)),S(ka,"CustomJwtAccount",(()=>cn)),S(ka,"CrossAppEmbeddedWallet",(()=>pn)),S(ka,"CrossAppSmartWallet",(()=>_n)),S(ka,"CrossAppAccount",(()=>mn)),S(ka,"LinkedAccount",(()=>zn)),S(ka,"SmsMfaMethod",(()=>gn)),S(ka,"TotpMfaMethod",(()=>bn)),S(ka,"PasskeyMfaMethod",(()=>hn)),S(ka,"LinkedMfaMethod",(()=>fn)),S(ka,"CustomMetadata",(()=>yn)),S(ka,"OAuthTokens",(()=>vn)),S(ka,"User",(()=>In)),S(ka,"SessionUpdateActionEnum",(()=>Sn)),S(ka,"AuthenticatedUser",(()=>kn)),S(ka,"LoggedOutUser",(()=>An)),S(ka,"MaybeUser",(()=>Tn));var Aa={};S(Aa,"SmartWalletProvider",(()=>Ca)),S(Aa,"AlchemyPaymasterContextSchema",(()=>Na)),S(Aa,"SmartWalletNetworkConfigurationInputSchema",(()=>xa)),S(Aa,"SmartWalletConfigurationSchema",(()=>La)),S(Aa,"SmartWalletConfigurationInputSchema",(()=>Wa)),S(Aa,"SmartWalletConfigurationResponseSchema",(()=>Ma)),S(Aa,"SAFE",(()=>Ta)),S(Aa,"KERNEL",(()=>wa)),S(Aa,"LIGHT_ACCOUNT",(()=>Pa)),S(Aa,"BICONOMY",(()=>Ea)),S(Aa,"COINBASE_SMART_WALLET",(()=>ja)),S(Aa,"SUPPORTED_SMART_WALLET_TYPES",(()=>Oa));let Ta="safe",wa="kernel",Ea="biconomy",Pa="light_account",ja="coinbase_smart_wallet",Oa=[Ta,wa,Ea,Pa,ja],Ca=u.z.enum(Oa,{invalid_type_error:"Please specify a supported provider.",required_error:"Please specify a supported provider."}),Ra=u.z.string().regex(/^eip155:\d+$/,"Chain ID must be an eip155 chain ID"),Na=u.z.object({policy_id:u.z.string().uuid()}),Da=u.z.object({chain_id:Ra,bundler_url:u.z.string(),paymaster_url:u.z.string().optional(),rpc_url:u.z.string().optional(),chain_name:u.z.string().optional(),paymaster_context:Na.optional()}),xa=u.z.object({chain_id:Ra,bundler_url:u.z.string().optional(),paymaster_url:u.z.string().optional(),rpc_url:u.z.string().optional(),chain_name:u.z.string().optional(),paymaster_context:Na.optional()}),La=u.z.discriminatedUnion("enabled",[u.z.object({enabled:u.z.literal(!1)}),u.z.object({enabled:u.z.literal(!0),smart_wallet_type:Ca,configured_networks:u.z.array(Da).min(1)})]),Wa=u.z.discriminatedUnion("enabled",[u.z.object({enabled:u.z.literal(!1)}),u.z.object({enabled:u.z.literal(!0),smart_wallet_type:Ca,configured_networks:u.z.array(xa).min(1)})]),Ma=La,Ua=u.z.object({type:u.z.literal("email"),address:u.z.string(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),Fa=u.z.object({type:u.z.literal("phone"),phoneNumber:u.z.string(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),Ga=u.z.object({type:u.z.enum(["wallet","smart_wallet"]),address:u.z.string(),chain_type:u.z.enum(["solana","ethereum"])}),Va=u.z.object({type:u.z.literal("wallet"),address:u.z.string(),chain_id:u.z.string().optional(),chain_type:u.z.literal("ethereum"),wallet_client:u.z.literal("unknown"),wallet_client_type:u.z.string().optional(),connector_type:u.z.string().optional(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),qa=u.z.object({type:u.z.literal("smart_wallet"),address:u.z.string(),smart_wallet_type:Ca,verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),Ba=u.z.object({type:u.z.literal("wallet"),address:u.z.string(),chain_type:u.z.literal("solana"),wallet_client:u.z.literal("unknown"),wallet_client_type:u.z.string().optional(),connector_type:u.z.string().optional(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),Ka=u.z.object({type:u.z.literal("farcaster"),fid:u.z.number(),owner_address:ft,username:u.z.string().optional(),display_name:u.z.string().optional(),bio:u.z.string().optional(),profile_picture:u.z.string().optional(),profile_picture_url:u.z.string().optional(),homepage_url:u.z.string().optional(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable(),signer_public_key:u.z.string().optional()}),$a=u.z.object({type:u.z.literal("passkey"),created_with_browser:u.z.string().optional(),created_with_os:u.z.string().optional(),created_with_device:u.z.string().optional(),credential_id:u.z.string(),authenticator_name:u.z.string().optional(),enrolled_in_mfa:u.z.boolean(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),Ha=u.z.object({type:u.z.literal("telegram"),telegram_user_id:u.z.string(),first_name:u.z.string().nullish(),last_name:u.z.string().nullish(),username:u.z.string().nullish(),photo_url:u.z.string().nullish(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}).transform((e=>({...e,telegramUserId:e.telegram_user_id,firstName:e.first_name}))),Ya=u.z.enum(["privy","user-passcode","google-drive","icloud"]),Ja=u.z.object({type:u.z.literal("wallet"),address:u.z.string(),imported:u.z.boolean().default(!1),delegated:u.z.boolean().default(!1),wallet_index:u.z.number(),chain_id:u.z.string(),chain_type:u.z.string(),wallet_client:u.z.literal("privy"),wallet_client_type:u.z.literal("privy"),connector_type:u.z.literal("embedded"),recovery_method:Ya,verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),Qa=Ja.merge(u.z.object({chain_type:u.z.literal("ethereum")})),Xa=Ja.merge(u.z.object({chain_type:u.z.literal("solana"),public_key:u.z.string()})),Za=Ja.merge(u.z.object({chain_type:u.z.literal("bitcoin-segwit"),public_key:u.z.string()})),en=Ja.merge(u.z.object({chain_type:u.z.literal("bitcoin-taproot"),public_key:u.z.string()})),tn=u.z.object({type:u.z.literal("google_oauth"),subject:u.z.string(),email:u.z.string(),name:u.z.string().nullable(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),an=u.z.object({type:u.z.literal("twitter_oauth"),subject:u.z.string(),username:u.z.string().nullable(),name:u.z.string().nullable(),profile_picture_url:u.z.string().nullable(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),nn=u.z.object({type:u.z.literal("discord_oauth"),subject:u.z.string(),username:u.z.string().nullable(),email:u.z.string().nullable(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),rn=u.z.object({type:u.z.literal("github_oauth"),subject:u.z.string(),username:u.z.string().nullable(),name:u.z.string().nullable(),email:u.z.string().nullable(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),on=u.z.object({type:u.z.literal("linkedin_oauth"),subject:u.z.string(),name:u.z.string().optional(),email:u.z.string().nullable(),vanity_name:u.z.string().optional(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),sn=u.z.object({type:u.z.literal("spotify_oauth"),subject:u.z.string(),email:u.z.string().nullable(),name:u.z.string().nullable(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),ln=u.z.object({type:u.z.literal("instagram_oauth"),subject:u.z.string(),username:u.z.string().nullable(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),un=u.z.object({type:u.z.literal("tiktok_oauth"),subject:u.z.string(),username:u.z.string().nullable(),name:u.z.string().nullable(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),dn=u.z.object({type:u.z.literal("apple_oauth"),subject:u.z.string(),email:u.z.string().nullable(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),cn=u.z.object({type:u.z.literal("custom_auth"),custom_user_id:u.z.string(),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),pn=u.z.object({address:u.z.string()}),_n=u.z.object({address:u.z.string()}),mn=u.z.object({type:u.z.literal("cross_app"),subject:u.z.string(),provider_app_id:u.z.string(),embedded_wallets:u.z.array(pn),smart_wallets:u.z.array(_n),verified_at:u.z.number(),first_verified_at:u.z.number().nullable(),latest_verified_at:u.z.number().nullable()}),zn=u.z.union([Ua,Fa,Va,Ba,qa,Qa,Xa,Za,en,tn,an,nn,rn,sn,ln,un,on,dn,cn,Ka,$a,Ha,mn]),gn=u.z.object({type:u.z.literal("sms"),verified_at:u.z.number()}),bn=u.z.object({type:u.z.literal("totp"),verified_at:u.z.number()}),hn=u.z.object({type:u.z.literal("passkey"),verified_at:u.z.number()}),fn=u.z.union([gn,bn,hn]),yn=u.z.record(u.z.string(),u.z.union([u.z.string(),u.z.number(),u.z.boolean()])),vn=u.z.object({provider:u.z.string(),access_token:u.z.string(),access_token_expires_in_seconds:u.z.number().optional(),refresh_token:u.z.string().optional(),refresh_token_expires_in_seconds:u.z.number().optional(),scopes:u.z.array(u.z.string()).optional()}),In=u.z.object({id:u.z.string(),linked_accounts:u.z.array(zn),mfa_methods:u.z.array(fn),created_at:u.z.number(),has_accepted_terms:u.z.boolean(),is_guest:u.z.boolean(),custom_metadata:yn.optional()}),Sn=u.z.enum(["set","ignore","clear"]),kn=u.z.object({user:In,token:u.z.string().min(1).nullable(),refresh_token:u.z.string().min(1).nullable(),identity_token:u.z.string().min(1).optional(),is_new_user:u.z.boolean().optional(),oauth_tokens:vn.optional(),oauth_provider_tokens:u.z.object({provider:u.z.string(),access_token:u.z.string(),access_token_expires_in_seconds:u.z.number().optional(),refresh_token:u.z.string().optional(),scopes:u.z.array(u.z.string()).optional()}).optional(),session_update_action:Sn}),An=u.z.object({user:u.z.null(),token:u.z.null(),refresh_token:u.z.null(),session_update_action:u.z.literal(Sn.Values.clear)}),Tn=u.z.union([kn,An]),wn={lv:u.z.number().nullable()},En=Ua.pick({type:!0,address:!0}).extend(wn),Pn=Fa.pick({type:!0,phoneNumber:!0}).extend(wn).transform((({phoneNumber:e,...t})=>({phone_number:e,...t}))),jn=Va.pick({type:!0,address:!0,chain_type:!0,wallet_client_type:!0}).extend(wn),On=Ba.pick({type:!0,address:!0,chain_type:!0,wallet_client_type:!0}).extend(wn),Cn=Ka.pick({type:!0,fid:!0,username:!0,owner_address:!0}).extend(wn).transform((({owner_address:e,...t})=>({oa:e,...t}))),Rn=$a.pick({type:!0,credential_id:!0}).extend(wn),Nn=u.z.object({type:u.z.literal("telegram"),telegram_user_id:u.z.string(),username:u.z.string().nullish(),lv:u.z.number().nullable()}),Dn=Qa.pick({type:!0,address:!0,chain_type:!0,wallet_client_type:!0}).extend(wn),xn=Xa.pick({type:!0,address:!0,chain_type:!0,wallet_client_type:!0}).extend(wn),Ln=tn.pick({type:!0,subject:!0,email:!0}).extend(wn),Wn=an.pick({type:!0,subject:!0,username:!0}).extend(wn),Mn=nn.pick({type:!0,subject:!0,username:!0}).extend(wn),Un=rn.pick({type:!0,subject:!0,username:!0}).extend(wn),Fn=on.pick({type:!0,subject:!0,email:!0}).extend(wn),Gn=sn.pick({type:!0,subject:!0,email:!0}).extend(wn),Vn=ln.pick({type:!0,subject:!0,username:!0}).extend(wn),qn=un.pick({type:!0,subject:!0,username:!0}).extend(wn),Bn=dn.pick({type:!0,subject:!0,email:!0}).extend(wn),Kn=cn.pick({type:!0,custom_user_id:!0}).extend(wn),$n=mn.pick({type:!0,subject:!0,provider_app_id:!0,embedded_wallets:!0,smart_wallets:!0}).extend(wn),Hn=qa.pick({type:!0,smart_wallet_type:!0,address:!0}).extend(wn);var Yn={};S(Yn,"MfaVerifyResponse",(()=>Jn)),S(Yn,"MfaSmsInitInput",(()=>Zn)),S(Yn,"MfaSmsAuthenticateEnrollInput",(()=>er)),S(Yn,"MfaSmsEnrollInput",(()=>tr)),S(Yn,"MfaSmsVerifyInput",(()=>ar)),S(Yn,"MfaTotpInput",(()=>nr)),S(Yn,"ResponseTotpInitMfa",(()=>rr));let Jn=m.default.object({token:m.default.string()}).strict(),Qn=m.default.object({action:m.default.literal("verify")}).strict(),Xn=m.default.object({action:m.default.literal("enroll"),phoneNumber:vt}).strict(),Zn=m.default.union([Qn,Xn]),er=m.default.object({action:m.default.literal("enroll").optional(),code:ht,phoneNumber:vt}).strict(),tr=m.default.object({code:ht,phoneNumber:vt}).strict(),ar=m.default.object({code:ht}).strict(),nr=m.default.object({code:ht}).strict(),rr=m.default.object({totpSecret:m.default.string(),totpAuthUrl:m.default.string()}).strict();var ir={};S(ir,"MfaPasskeyInitInput",(()=>br)),S(ir,"ResponsePasskeyInitMfa",(()=>hr)),S(ir,"MfaPasskeyVerifyInput",(()=>fr)),S(ir,"MfaEnrollmentPasskeyInput",(()=>yr));var or={};S(or,"PasskeyAuthenticatorVerifyOptions",(()=>sr)),S(or,"PasskeyAuthenticatorEnrollmentOptions",(()=>lr)),S(or,"PasskeyAuthenticatorVerifyResponse",(()=>ur)),S(or,"PasskeyAuthenticatorEnrollmentResponse",(()=>dr)),S(or,"PasskeyInitInput",(()=>cr)),S(or,"ResponsePasskeyInitAuthenticate",(()=>pr)),S(or,"ResponsePasskeyInitLink",(()=>_r)),S(or,"PasskeyLinkInput",(()=>mr)),S(or,"PasskeyAuthenticateInput",(()=>zr)),S(or,"UnlinkPasskeyInput",(()=>gr));let sr=m.default.object({challenge:m.default.string(),timeout:m.default.number().optional(),rp_id:m.default.string().optional(),allow_credentials:m.default.array(m.default.object({id:m.default.string(),type:m.default.string(),transports:m.default.array(m.default.string()).optional()})).optional(),user_verification:m.default.string().optional(),extensions:m.default.object({app_id:m.default.string().optional(),cred_props:m.default.boolean().optional(),hmac_create_secret:m.default.boolean().optional()}).optional()}),lr=m.default.object({rp:m.default.object({name:m.default.string(),id:m.default.string().optional()}),user:m.default.object({id:m.default.string(),name:m.default.string(),display_name:m.default.string()}),challenge:m.default.string(),pub_key_cred_params:m.default.array(m.default.object({alg:m.default.number(),type:m.default.literal("public-key")})),timeout:m.default.number().optional(),exclude_credentials:m.default.array(m.default.object({id:m.default.string(),type:m.default.string(),transports:m.default.array(m.default.string()).optional()})).optional(),authenticator_selection:m.default.object({authenticator_attachment:m.default.string().optional(),require_resident_key:m.default.boolean().optional(),resident_key:m.default.string().optional(),user_verification:m.default.string().optional()}).optional(),attestation:m.default.string().optional(),extensions:m.default.object({app_id:m.default.string().optional(),cred_props:m.default.object({rk:m.default.boolean().optional()}).optional(),hmac_create_secret:m.default.boolean().optional()}).optional()}),ur=m.default.object({id:m.default.string(),raw_id:m.default.string(),response:m.default.object({client_data_json:m.default.string(),authenticator_data:m.default.string(),signature:m.default.string(),user_handle:m.default.string().optional()}),authenticator_attachment:m.default.string().optional(),client_extension_results:m.default.object({app_id:m.default.boolean().optional(),cred_props:m.default.object({rk:m.default.boolean().optional()}).optional(),hmac_create_secret:m.default.boolean().optional()}),type:m.default.literal("public-key")}),dr=m.default.object({id:m.default.string(),raw_id:m.default.string(),response:m.default.object({client_data_json:m.default.string(),attestation_object:m.default.string(),authenticator_data:m.default.string().optional(),transports:m.default.array(m.default.any()).optional(),public_key_algorithm:m.default.number().optional(),public_key:m.default.string().optional()}),authenticator_attachment:m.default.string().optional(),client_extension_results:m.default.object({app_id:m.default.boolean().optional(),cred_props:m.default.object({rk:m.default.boolean().optional()}).optional(),hmac_create_secret:m.default.boolean().optional()}),type:m.default.literal("public-key")}),cr=m.default.object({relying_party:m.default.string().url().optional(),token:m.default.string().optional()}).strict(),pr=m.default.object({relying_party:m.default.string().url().optional(),options:sr}).strict(),_r=m.default.object({relying_party:m.default.string().url().optional(),options:lr}).strict(),mr=m.default.object({relying_party:m.default.string().url().optional(),authenticator_response:dr}).strict(),zr=m.default.object({relying_party:m.default.string().url().optional(),challenge:m.default.string(),authenticator_response:ur}).strict(),gr=m.default.object({credential_id:m.default.string()}),br=m.default.object({relying_party:m.default.string().url().optional()}).strict(),hr=m.default.object({options:sr}).strict(),fr=m.default.object({authenticator_response:ur,relying_party:m.default.string().url().optional()}).strict(),yr=m.default.object({credential_ids:m.default.array(m.default.string())});var vr={};S(vr,"ExternalOAuthProvider",(()=>Sr)),S(vr,"OAuthProvider",(()=>kr)),S(vr,"AuthenticateOauthInput",(()=>Ar)),S(vr,"OAuthInitInput",(()=>Tr)),S(vr,"LinkOAuthInput",(()=>wr)),S(vr,"OAuthUnlinkInput",(()=>Er)),S(vr,"OAuthInitResponse",(()=>Pr)),S(vr,"OAuthLinkResponse",(()=>jr)),S(vr,"TransferOAuthInput",(()=>Or)),S(vr,"SUPPORTED_OAUTH_PROVIDERS",(()=>Ir));let Ir=["google","discord","twitter","github","spotify","instagram","tiktok","linkedin","apple"],Sr=u.z.enum(Ir,{invalid_type_error:"Please specify a supported provider.",required_error:"Please specify a supported provider."}),kr=Sr.or(u.z.custom((e=>"string"==typeof e&&/^privy:[a-z0-9]{25}$/i.test(e)),{message:"Please specify a supported provider."})),Ar=u.z.object({authorization_code:u.z.string(),state_code:u.z.string(),code_verifier:u.z.string().min(43).max(128).optional(),code_type:u.z.enum(["raw"]).optional()}).merge(At).catch((()=>{throw new y("Please specify authorization_code and state_code.",b.INVALID_CREDENTIALS)})),Tr=u.z.object({redirect_to:u.z.string({required_error:"Please provide a redirect_to value."}),provider:kr,token:u.z.string().optional(),state_code:u.z.string().optional(),code_challenge:u.z.string().optional()}),wr=u.z.object({authorization_code:u.z.string(),state_code:u.z.string(),code_verifier:u.z.string().min(43).max(128).optional(),code_type:u.z.enum(["raw"]).optional()}),Er=u.z.object({subject:u.z.string(),provider:kr}),Pr=u.z.object({url:u.z.string()}),jr=In.extend({oauth_tokens:vn.optional()}),Or=Xt.extend({userInfo:u.z.object({subject:u.z.string(),name:u.z.string().optional(),username:u.z.string().optional(),profilePictureUrl:u.z.string().optional(),email:u.z.string().optional(),vanityName:u.z.string().optional()})});var Cr={};S(Cr,"AuthorizationCodeInput",(()=>Rr));let Rr=u.z.object({redirect_to:u.z.string(),state:u.z.string(),code_challenge:u.z.string()});var Nr={};S(Nr,"EmptyObject",(()=>Dr)),S(Nr,"SuccessObject",(()=>xr));let Dr=u.z.record(u.z.string(),u.z.never()),xr=u.z.object({success:u.z.boolean()});var Lr={};S(Lr,"RecoveryKeyMaterialInput",(()=>Wr)),S(Lr,"RecoveryKeyMaterialResponse",(()=>Mr)),S(Lr,"OAuthAuthenticateRecoveryResponse",(()=>Ur)),S(Lr,"OAuthInitRecoveryInput",(()=>Fr)),S(Lr,"OAuthInitICloudRecoveryInput",(()=>Gr)),S(Lr,"OAuthCallbackICloudExpoInput",(()=>Vr)),S(Lr,"OAuthCallbackICloudExpoResponse",(()=>qr)),S(Lr,"RecoveryConfigurationICloudInput",(()=>Br)),S(Lr,"RecoveryConfigurationICloudResponse",(()=>Kr));let Wr=u.z.object({chain_type:u.z.string().optional()}),Mr=u.z.object({recovery_type:u.z.enum(["user_passcode_derived_recovery_key","privy_passcode_derived_recovery_key","privy_generated_recovery_key","google_drive_recovery_secret","icloud_recovery_secret"]),recovery_key_derivation_salt:u.z.string(),recovery_code:u.z.string(),recovery_key:u.z.string(),file_id:u.z.string(),icloud_record_name:u.z.string()}),Ur=u.z.object({access_token:u.z.string()}),Fr=u.z.object({redirect_to:u.z.string({required_error:"Please provide a redirect_to value."}),token:u.z.string().optional(),state_code:u.z.string().optional(),code_challenge:u.z.string().optional()}),Gr=u.z.object({client_type:u.z.enum(["web","expo-ios"])}),Vr=u.z.object({ckWebAuthToken:u.z.string()}).transform((e=>({ckWebAuthToken:e.ckWebAuthToken}))).catch((()=>{throw new y("Missing ckWebAuthToken.",b.INVALID_DATA)})),qr=Dr,Br=u.z.object({client_type:u.z.enum(["web","expo-ios"])}),Kr=u.z.object({api_token:u.z.string(),container_identifier:u.z.string(),environment:u.z.string()});var $r={};S($r,"SiweInput",(()=>Hr)),S($r,"SmartWalletSiweInput",(()=>Yr)),S($r,"AuthenticateSiweInput",(()=>Jr)),S($r,"SiweAddressInput",(()=>Qr)),S($r,"SiweInitInput",(()=>Xr)),S($r,"SiweNonce",(()=>Zr)),S($r,"TransferSiweInput",(()=>ei));let Hr=u.z.object({message:u.z.string({invalid_type_error:"Invalid SIWE message"}),signature:u.z.string({invalid_type_error:"Invalid SIWE signature"}),chainId:u.z.string().max(41).nullable().default(null),walletClientType:u.z.string().max(64).nullable().default(null),connectorType:u.z.string().max(64).nullable().default(null)}),Yr=u.z.object({message:u.z.string({invalid_type_error:"Invalid SIWE message"}),signature:u.z.string({invalid_type_error:"Invalid SIWE signature"}),smart_wallet_type:Ca}),Jr=Hr.merge(At),Qr=u.z.object({address:ft}),Xr=u.z.object({address:ft,token:u.z.string().optional()}),Zr=u.z.object({nonce:u.z.string(),address:u.z.string(),expires_at:u.z.string()}),ei=Xt.extend({address:ft,chainId:u.z.string().max(41).nullable().default(null),walletClientType:u.z.string().max(64).nullable().default(null),connectorType:u.z.string().max(64).nullable().default(null)});var ti={};S(ti,"SiwsInput",(()=>ai)),S(ti,"AuthenticateSiwsInput",(()=>ni)),S(ti,"SiwsAddressInput",(()=>ri)),S(ti,"SiwsInitInput",(()=>ii)),S(ti,"SiwsNonce",(()=>oi));let ai=u.z.object({message:u.z.string({invalid_type_error:"Invalid SIWS message"}),signature:u.z.string({invalid_type_error:"Invalid SIWS signature"}),walletClientType:u.z.string().max(64).nullable().default(null),connectorType:u.z.string().max(64).nullable().default(null)}),ni=ai.merge(At),ri=u.z.object({address:yt}),ii=u.z.object({address:yt,token:u.z.string().optional()}),oi=u.z.object({nonce:u.z.string(),address:u.z.string(),expires_at:u.z.string()});var si={};S(si,"VerifyPhoneInput",(()=>li)),S(si,"AuthenticatePhoneInput",(()=>ui)),S(si,"PasswordlessSmsPhoneInput",(()=>di)),S(si,"UnlinkPhoneInput",(()=>ci)),S(si,"UpdatePhoneInput",(()=>pi)),S(si,"TransferPhoneInput",(()=>_i));let li=u.z.object({code:ht.catch((()=>{throw new v("Invalid SMS verification code",b.INVALID_CREDENTIALS)})),phoneNumber:vt.catch((()=>{throw new v("Invalid phone number",b.INVALID_CREDENTIALS)}))}),ui=li.merge(At),di=u.z.object({phoneNumber:vt.catch((()=>{throw new v("Invalid phone number",b.INVALID_DATA)})),token:u.z.string().optional()}),ci=u.z.object({phoneNumber:vt}),pi=u.z.object({old_phone_number:vt,new_phone_number:vt,code:ht}),_i=Xt.extend({phoneNumber:vt});var mi={};S(mi,"TelegramAuthenticateInput",(()=>gi)),S(mi,"TelegramLinkInput",(()=>bi)),S(mi,"TelegramUnlinkInput",(()=>hi)),S(mi,"TransferTelegramInput",(()=>fi));let zi=m.default.object({id:m.default.number(),first_name:m.default.string(),auth_date:m.default.number(),hash:m.default.string(),username:m.default.string().optional(),last_name:m.default.string().optional(),photo_url:m.default.string().optional()}),gi=m.default.object({captcha_token:m.default.string().optional(),telegram_auth_result:zi.optional(),telegram_web_app_data:m.default.object({query_id:m.default.string().optional(),auth_date:m.default.number(),hash:m.default.string(),user:m.default.string(),chat_instance:m.default.string().optional(),chat_type:m.default.string().optional(),start_param:m.default.string().optional()}).optional()}).merge(At),bi=gi.omit({telegram_web_app_data:!0}).required({telegram_auth_result:!0}),hi=m.default.object({telegram_user_id:m.default.string()}),fi=Xt.extend({telegram_auth_result:zi});var yi={};S(yi,"RefreshTokenInput",(()=>vi)),S(yi,"OptionalRefreshTokenInput",(()=>Ii)),S(yi,"ForkedToken",(()=>Si));let vi=u.z.object({refresh_token:u.z.string()}),Ii=vi.partial(),Si=u.z.object({token:u.z.string(),refresh_token:u.z.string(),new_session_refresh_token:u.z.string()});var ki={};S(ki,"DelegatedActionsConsentInput",(()=>Ai));let Ai=u.z.object({encrypted_tee_share:u.z.string(),app_share:u.z.string(),delegated_addresses:u.z.array(u.z.object({chain_type:u.z.union([u.z.literal("solana"),u.z.literal("ethereum")]),address:u.z.string(),wallet_index:u.z.number().default(0)}))});var Ti={};S(Ti,"WalletApiSignTransactionRpcInput",(()=>Ei)),S(Ti,"WalletApiSignMessageRpcInput",(()=>Pi)),S(Ti,"WalletApiRpcInput",(()=>ji)),S(Ti,"WalletApiSignTransactionRpcResponse",(()=>Oi)),S(Ti,"WalletApiSignMessageRpcResponse",(()=>Ci)),S(Ti,"WalletApiRpcResponse",(()=>Ri)),S(Ti,"WalletApiRegisterAuthorizationKeyInput",(()=>Ni));let wi=u.z.object({address:u.z.string(),chain_type:u.z.union([u.z.literal("solana"),u.z.literal("ethereum")])}),Ei=u.z.object({method:u.z.literal("signTransaction"),params:u.z.object({transaction:u.z.string(),encoding:u.z.literal("base64")})}).merge(wi),Pi=u.z.object({method:u.z.literal("signMessage"),params:u.z.object({message:u.z.string(),encoding:u.z.literal("base64")})}).merge(wi),ji=u.z.discriminatedUnion("method",[Ei,Pi]),Oi=u.z.object({method:u.z.literal("signTransaction"),data:u.z.object({signedTransaction:u.z.string(),encoding:u.z.literal("base64")})}),Ci=u.z.object({method:u.z.literal("signMessage"),data:u.z.object({signature:u.z.string(),encoding:u.z.literal("base64")})}),Ri=u.z.discriminatedUnion("method",[Oi,Ci]),Ni=u.z.object({public_key:u.z.string()});I(ct,pt),I(ct,mt),I(ct,Pt),I(ct,jt),I(ct,Wt),I(ct,zt),I(ct,$t),I(ct,Yt),I(ct,Qt),I(ct,ia),I(ct,la),I(ct,ba),I(ct,va),I(ct,Sa),I(ct,Yn),I(ct,ir),I(ct,vr),I(ct,Cr),I(ct,Nr),I(ct,or),I(ct,Lr),I(ct,$r),I(ct,ti),I(ct,si),I(ct,Aa),I(ct,mi),I(ct,yi),I(ct,ka),I(ct,ki),I(ct,Ti);let Di={address:l.entryPoint06Address,version:"0.6"},xi={address:l.entryPoint07Address,version:"0.7"},Li=({owner:e,smartWalletType:t,publicClient:a})=>{switch(t){case Ta:return o.toSafeSmartAccount({client:a,entryPoint:xi,owners:[e],version:"1.4.1"});case wa:return o.toEcdsaKernelSmartAccount({client:a,version:"0.3.1",entryPoint:xi,owners:[e]});case Ea:return o.toBiconomySmartAccount({client:a,owners:[e],entryPoint:Di});case Pa:return o.toLightSmartAccount({client:a,entryPoint:Di,owner:e,version:"1.1.0"});case ja:return async function({client:e,owner:t}){let[a]=await t.request({method:"eth_accounts"});if(!a)throw Error("Unable to request embedded owner for eth_accounts");return await l.toCoinbaseSmartAccount({client:e,owners:[{type:"local",source:"privy",address:a,sign:async({hash:e})=>await t.request({method:"secp256k1_sign",params:[e]})}]})}({client:a,owner:e});default:throw Error(`Invalid smart account type: ${t}.`)}},Wi=["rpc.zerodev.app","public.pimlico.io","api.pimlico.io"];const Mi=({calls:e,chain:t,maxPriorityFeePerGas:a,maxFeePerGas:n,nonce:r})=>e.map((e=>({to:e.to||void 0,data:e.data,value:e.value,chainId:t.id,nonce:r,maxFeePerGas:n,maxPriorityFeePerGas:a}))),Ui=async({chain:e,paymasterContext:r,embeddedWallet:o,user:l,smartWalletsConfig:u,rpcConfig:d,privyAppId:c})=>{if(!u?.enabled||!l||!o)return;let p=await o.getEthereumProvider(),_=u?.configuredNetworks.find((t=>t.chainId===`eip155:${e.id}`));if(!_)throw new a.PrivyClientError(`The chain ${e.name} (eip155:${e.id}) must be configured in the smart wallet configuration in your dashboard`);let m=l.smartWallet?.smartWalletType??u.smartWalletType,z=n.getJsonRpcEndpointFromChain(e,d,c),g=t.createPublicClient({chain:e,transport:t.http(z)}),b=r??_.paymasterContext,h=await(async({owner:e,smartWalletType:a,chain:n,publicClient:r,bundlerUrl:o,paymasterUrl:l,paymasterContext:u})=>{let d=await Li({owner:e,smartWalletType:a,publicClient:r}),c=s.createPimlicoClient({transport:t.http(o),entryPoint:d.entryPoint}),p=l?s.createPimlicoClient({transport:t.http(l),entryPoint:d.entryPoint}):void 0;return i.createSmartAccountClient({account:d,chain:n,paymaster:p,paymasterContext:u,bundlerTransport:t.http(o),userOperation:{estimateFeesPerGas:async()=>{if(Wi.some((e=>o.includes(e))))return await c.getUserOperationGasPrice().then((e=>e.fast));{let e=await r.estimateFeesPerGas();return{...e,maxFeePerGas:125n*e.maxFeePerGas/100n,maxPriorityFeePerGas:125n*e.maxPriorityFeePerGas/100n}}}}})})({owner:p,smartWalletType:m,chain:e,publicClient:g,paymasterContext:b,..._});if(!h)throw new a.PrivyClientError(`Failed to create smart wallet client for chain ${e.name} (eip155:${e.id})`);return h};exports.callsToTransactionRequests=Mi,exports.getSmartWalletClient=Ui,exports.useSmartWalletsWrapper=({clientConfig:t,smartWalletsConfig:i})=>{let{noPromptOnSignature:o,openPrivyModal:s,appId:l}=a.usePrivyInternal(),u=n.useAppConfig(),{setModalData:d}=r.usePrivyModal(),{user:c}=a.usePrivy(),{chains:p}=n.useAppConfig(),{chainId:_,clients:m,setChainId:z,chainIdState:g}=(()=>{let t=e.useRef(),[a,n]=e.useState();return{clients:e.useRef({}),setChainId:e=>{t.current=e,n(e)},chainId:t,chainIdState:a}})(),b=p.find((e=>e.id===g)),{wallets:h}=n.useWallets(),f=e.useCallback((async()=>_.current),[_]),y=e.useCallback((async({id:e})=>{if(!m.current[e]){let a=r.getEmbeddedConnectedWallet(h),n=await Ui({chain:p.find((t=>t.id===e)),embeddedWallet:a,user:c,paymasterContext:t?.paymasterContext,smartWalletsConfig:i,rpcConfig:u.rpcConfig,privyAppId:l});n&&(m.current[e]=n)}z(e)}),[p,t,h,c,i]);return{wrapSmartAccountClient:e=>{m.current[e.chain.id]=e,g||z(e.chain.id);return{...e,sendTransaction:async e=>{let t=void 0===u.embeddedWallets.showWalletUIs?u.embeddedWallets.noPromptOnSignature:!u.embeddedWallets.showWalletUIs,n=m.current[_.current];if(!n)throw new a.PrivyClientError(`Smart wallet client for chain (eip155:${_.current}) not found`);if(t)return o.current=!0,await n.sendTransaction(e).finally((()=>o.current=!1));let i=[];"calls"in e&&void 0!==e.calls?i=[...e.calls]:"to"in e&&(i=[{to:e.to,value:e.value||BigInt(0),data:e.data||"0x"}]);let l=async()=>{if(!n.paymaster)return!1;let{paymasterAndData:t,paymasterData:a}=await n.prepareUserOperation({calls:i,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0});return Number(t??a??0)>0};return new Promise((async(t,u)=>{o.current=!0;let{entropyId:p,entropyIdVerifier:_}=a.getEntropyDetailsFromUser(c);d({connectWallet:{entropyId:p,entropyIdVerifier:_,onCompleteNavigateTo:r.ModalScreen.EMBEDDED_WALLET_SEND_TRANSACTION_SCREEN,onFailure:()=>{}},sendTransaction:{transactionRequests:Mi({calls:i,chain:n.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),entropyId:p,entropyIdVerifier:_,transactingWallet:{address:n.account.address,walletIndex:null},getIsSponsored:l,onConfirm:()=>n.sendTransaction(e),onSuccess:e=>t(e.hash),onFailure:u,uiOptions:{}}}),s(r.ModalScreen.EMBEDDED_WALLET_CONNECTING_SCREEN)})).finally((()=>{o.current=!1}))},signMessage:async({message:e})=>{let t=void 0===u.embeddedWallets.showWalletUIs?u.embeddedWallets.noPromptOnSignature:!u.embeddedWallets.showWalletUIs,n=m.current[_.current];if(!n)throw new a.PrivyClientError(`Smart wallet client for chain (eip155:${_.current}) not found`);return t?(o.current=!0,await n.signMessage({message:e}).finally((()=>o.current=!1))):new Promise((async(t,i)=>{let{entropyId:l,entropyIdVerifier:u}=a.getEntropyDetailsFromUser(c);o.current=!0,d({connectWallet:{entropyId:l,entropyIdVerifier:u,onCompleteNavigateTo:r.ModalScreen.EMBEDDED_WALLET_SIGN_REQUEST_SCREEN,onFailure:()=>{}},signMessage:{method:"personal_sign",data:e,confirmAndSign:()=>n.signMessage({message:e}),onSuccess:e=>t(e),onFailure:i,uiOptions:{}}}),s(r.ModalScreen.EMBEDDED_WALLET_CONNECTING_SCREEN)})).finally((()=>{o.current=!1}))},signTypedData:async e=>{let t=void 0===u.embeddedWallets.showWalletUIs?u.embeddedWallets.noPromptOnSignature:!u.embeddedWallets.showWalletUIs,n=m.current[_.current];if(!n)throw new a.PrivyClientError(`Smart wallet client for chain (eip155:${_.current}) not found`);return t?(o.current=!0,await n.signTypedData(e).finally((()=>o.current=!1))):new Promise((async(t,i)=>{o.current=!0;let{entropyId:l,entropyIdVerifier:u}=a.getEntropyDetailsFromUser(c);d({connectWallet:{entropyId:l,entropyIdVerifier:u,onCompleteNavigateTo:r.ModalScreen.EMBEDDED_WALLET_SIGN_REQUEST_SCREEN,onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:e,confirmAndSign:()=>n.signTypedData(e),onSuccess:e=>t(e),onFailure:i,uiOptions:{}}}),s(r.ModalScreen.EMBEDDED_WALLET_CONNECTING_SCREEN)})).finally((()=>{o.current=!1}))},getChainId:f,chain:b,switchChain:y}}}};
@@ -1 +1 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("react"),t=require("./useWallets-CZUj7ALT.js"),i=require("./privy-context-Ds_CALAJ.js"),n=require("./getEmbeddedConnectedWallet-DGCba9eL.js"),a=require("./smart-wallets-C-wtePWG.js");require("@ethersproject/providers"),require("tinycolor2"),require("ofetch"),require("viem"),require("permissionless"),require("permissionless/accounts"),require("permissionless/clients/pimlico"),require("viem/account-abstraction");let l=r.createContext({client:void 0});let s=r.createContext({config:void 0}),c=()=>{let{config:e}=r.useContext(s);return{config:e}},o=({children:t})=>{let[n,a]=r.useState(void 0),{client:l}=i.usePrivyInternal();return r.useEffect((()=>{!n&&l&&(async()=>{try{if(!l)return void console.warn("No client found");let e=await l.getSmartWalletsConfig();a(e)}catch(e){console.warn("Error generating smart wallet config: ",e)}})()}),[!!l]),e.jsx(s.Provider,{value:{config:n},children:t})},u=({config:l,children:s})=>{let{config:o}=c(),{appId:u}=i.usePrivyInternal(),{chains:f,defaultChain:g,rpcConfig:m}=t.useAppConfig(),{wallets:p}=t.useWallets(),{user:v}=i.usePrivy(),[h,y]=r.useState(),C=n.getEmbeddedConnectedWallet(p);return r.useEffect((()=>{(async()=>{if(!o?.enabled)return;let e=o.configuredNetworks.find((e=>e.chainId===`eip155:${g.id}`))?g:f.find((e=>o.configuredNetworks.map((e=>e.chainId)).includes(`eip155:${e.id}`)));if(!e)throw new i.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.");y(await a.getSmartWalletClient({chain:e,privyAppId:u,paymasterContext:l?.paymasterContext,rpcConfig:m,embeddedWallet:C,user:v,smartWalletsConfig:o}))})()}),[!!o?.enabled,!!v?.smartWallet,!!C]),e.jsx(d.Provider,{value:{client:h,config:l},children:s})},d=r.createContext({client:void 0,config:void 0}),f=({children:t})=>{let{client:n,config:s}=(()=>{let{client:e,config:t}=r.useContext(d);return{client:e,config:t}})(),{config:o}=c(),{wrapSmartAccountClient:u}=a.useSmartWalletsWrapper({clientConfig:s,smartWalletsConfig:o}),{user:f}=i.usePrivy(),{generateSiweMessageForSmartWallet:g,linkSmartWallet:m,noPromptOnSignature:p}=i.usePrivyInternal();return r.useEffect((()=>{(async()=>{if(n&&f&&!f?.smartWallet&&o?.enabled)try{let e=await g({address:n.account.address,chainId:`eip155:${n.chain.id}`});p.current=!0;let r=await n.signMessage({message:e});await m({signature:r,message:e,smartWalletType:o.smartWalletType})}catch(e){console.error("Error creating smart wallet:",e)}finally{p.current=!1}})()}),[!!n,!!f?.smartWallet,!!o?.enabled]),e.jsx(l.Provider,{value:{client:f?.smartWallet&&n?u(n):void 0},children:t})};exports.SmartWalletsProvider=({config:r,children:t})=>e.jsx(o,{children:e.jsx(u,{config:r,children:e.jsx(f,{children:t})})}),exports.useSmartWallets=()=>{let{client:e}=r.useContext(l);return{client:e}};
1
+ "use strict";var e=require("react/jsx-runtime"),r=require("react"),t=require("./useWallets-CI4D93NT.js"),i=require("./privy-context-ymK4c6qn.js"),n=require("./getEmbeddedConnectedWallet-D8Hbsclz.js"),a=require("./smart-wallets-xWAJPVoA.js");require("@ethersproject/providers"),require("tinycolor2"),require("ofetch"),require("@ethersproject/address"),require("viem"),require("permissionless"),require("permissionless/accounts"),require("permissionless/clients/pimlico"),require("viem/account-abstraction"),require("zod"),require("bs58"),require("ethers"),require("libphonenumber-js/max");let l=r.createContext({client:void 0});let s=r.createContext({config:void 0}),c=()=>{let{config:e}=r.useContext(s);return{config:e}},o=({children:t})=>{let[n,a]=r.useState(void 0),{client:l}=i.usePrivyInternal();return r.useEffect((()=>{!n&&l&&(async()=>{try{if(!l)return void console.warn("No client found");let e=await l.getSmartWalletsConfig();a(e)}catch(e){console.warn("Error generating smart wallet config: ",e)}})()}),[!!l]),e.jsx(s.Provider,{value:{config:n},children:t})},u=({config:l,children:s})=>{let{config:o}=c(),{appId:u}=i.usePrivyInternal(),{chains:f,defaultChain:g,rpcConfig:m}=t.useAppConfig(),{wallets:p}=t.useWallets(),{user:h}=i.usePrivy(),[v,y]=r.useState(),C=n.getEmbeddedConnectedWallet(p);return r.useEffect((()=>{(async()=>{if(!o?.enabled)return;let e=o.configuredNetworks.find((e=>e.chainId===`eip155:${g.id}`))?g:f.find((e=>o.configuredNetworks.map((e=>e.chainId)).includes(`eip155:${e.id}`)));if(!e)throw new i.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.");y(await a.getSmartWalletClient({chain:e,privyAppId:u,paymasterContext:l?.paymasterContext,rpcConfig:m,embeddedWallet:C,user:h,smartWalletsConfig:o}))})()}),[!!o?.enabled,!!h?.smartWallet,!!C]),e.jsx(d.Provider,{value:{client:v,config:l},children:s})},d=r.createContext({client:void 0,config:void 0}),f=({children:t})=>{let{client:n,config:s}=(()=>{let{client:e,config:t}=r.useContext(d);return{client:e,config:t}})(),{config:o}=c(),{wrapSmartAccountClient:u}=a.useSmartWalletsWrapper({clientConfig:s,smartWalletsConfig:o}),{user:f}=i.usePrivy(),{generateSiweMessageForSmartWallet:g,linkSmartWallet:m,noPromptOnSignature:p}=i.usePrivyInternal();return r.useEffect((()=>{(async()=>{if(n&&f&&!f?.smartWallet&&o?.enabled)try{let e=await g({address:n.account.address,chainId:`eip155:${n.chain.id}`});p.current=!0;let r=await n.signMessage({message:e});await m({signature:r,message:e,smartWalletType:o.smartWalletType})}catch(e){console.error("Error creating smart wallet:",e)}finally{p.current=!1}})()}),[!!n,!!f?.smartWallet,!!o?.enabled]),e.jsx(l.Provider,{value:{client:f?.smartWallet&&n?u(n):void 0},children:t})};exports.SmartWalletsProvider=({config:r,children:t})=>e.jsx(o,{children:e.jsx(u,{config:r,children:e.jsx(f,{children:t})})}),exports.useSmartWallets=()=>{let{client:e}=r.useContext(l);return{client:e}};
@@ -1 +1 @@
1
- "use strict";var e=require("@solana/wallet-adapter-base"),t=require("@solana/wallet-standard-wallet-adapter-base"),a=require("@wallet-standard/app"),r=require("./useSolanaWallets-DYHtxLmi.js"),l=require("./events-context-DykapYG4.js"),n=require("./privy-context-Ds_CALAJ.js");require("eventemitter3"),require("@ethersproject/logger"),require("@ethersproject/address"),require("react"),require("ofetch");let o=a=>a.filter(e.isWalletAdapterCompatibleStandardWallet).map((e=>new t.StandardWalletAdapter({wallet:e})));exports.SolanaAdapterConnector=r.SolanaWalletConnector,exports.useSolanaWallets=r.useSolanaWallets,exports.toSolanaWalletConnectors=e=>{let t,{get:l,on:n}=a.getWallets(),s=e?.shouldAutoConnect??!0,u=o(l()),p=u.map((e=>new r.SolanaWalletConnector(e,s))),i=[];return{_setOnConnectorsUpdated:e=>{t=e},onMount:()=>{i.push(n("register",((...e)=>{p=(u=u.concat(...o(e))).map((e=>new r.SolanaWalletConnector(e,s))),t?.(p)})),n("unregister",((...e)=>{p=(u=u.filter((t=>e.some((e=>t.wallet===e))))).map((e=>new r.SolanaWalletConnector(e,s))),t?.(p)})))},onUnmount:()=>{let e=i.pop();for(;e;)e(),e=i.pop()},get:()=>p}},exports.useFundWallet=e=>{l.usePrivyEventSubscription("fundSolanaWallet",e);let{fundSolanaWallet:t}=n.usePrivyInternal();return{fundWallet:t}};
1
+ "use strict";var e=require("@solana/wallet-adapter-base"),t=require("@solana/wallet-standard-wallet-adapter-base"),a=require("@wallet-standard/app"),r=require("./useSolanaWallets-DowXcwiH.js"),l=require("./events-context-D4csIP2K.js"),n=require("./privy-context-ymK4c6qn.js");require("eventemitter3"),require("@ethersproject/logger"),require("react"),require("ofetch"),require("@ethersproject/address");let o=a=>a.filter(e.isWalletAdapterCompatibleStandardWallet).map((e=>new t.StandardWalletAdapter({wallet:e})));exports.SolanaAdapterConnector=r.SolanaWalletConnector,exports.useSolanaWallets=r.useSolanaWallets,exports.toSolanaWalletConnectors=e=>{let t,{get:l,on:n}=a.getWallets(),s=e?.shouldAutoConnect??!0,u=o(l()),p=u.map((e=>new r.SolanaWalletConnector(e,s))),i=[];return{_setOnConnectorsUpdated:e=>{t=e},onMount:()=>{i.push(n("register",((...e)=>{p=(u=u.concat(...o(e))).map((e=>new r.SolanaWalletConnector(e,s))),t?.(p)})),n("unregister",((...e)=>{p=(u=u.filter((t=>e.some((e=>t.wallet===e))))).map((e=>new r.SolanaWalletConnector(e,s))),t?.(p)})))},onUnmount:()=>{let e=i.pop();for(;e;)e(),e=i.pop()},get:()=>p}},exports.useFundWallet=e=>{l.usePrivyEventSubscription("fundSolanaWallet",e);let{fundSolanaWallet:t}=n.usePrivyInternal();return{fundWallet:t}};