@privy-io/js-sdk-core 0.46.1 → 0.46.2
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.
- package/dist/cjs/client/EmbeddedWalletApi.js +1 -1
- package/dist/cjs/client/Privy.js +1 -1
- package/dist/cjs/client/PrivyInternal.js +1 -1
- package/dist/cjs/client/funding/FundingApi.js +1 -1
- package/dist/cjs/client/funding/MoonpayOnRampApi.js +1 -1
- package/dist/cjs/embedded/EmbeddedWalletProvider.js +1 -1
- package/dist/cjs/embedded/gas/arbitrum.js +1 -1
- package/dist/cjs/embedded/gas/op-stack.js +1 -1
- package/dist/cjs/embedded/gas/polygon.js +1 -1
- package/dist/cjs/embedded/index.js +1 -1
- package/dist/cjs/embedded/polygonGasStation.js +1 -1
- package/dist/cjs/embedded/utils/gas.js +1 -1
- package/dist/cjs/embedded/utils/index.js +1 -1
- package/dist/cjs/funding/coinbase.js +1 -1
- package/dist/cjs/funding/moonpay.js +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/utils/getIsTokenUsdc.js +1 -1
- package/dist/cjs/wallet-api/rpc.js +1 -0
- package/dist/dts/index.d.mts +31 -119
- package/dist/dts/index.d.ts +31 -119
- package/dist/esm/client/EmbeddedWalletApi.mjs +1 -1
- package/dist/esm/client/Privy.mjs +1 -1
- package/dist/esm/client/PrivyInternal.mjs +1 -1
- package/dist/esm/client/funding/FundingApi.mjs +1 -1
- package/dist/esm/client/funding/MoonpayOnRampApi.mjs +1 -1
- package/dist/esm/embedded/EmbeddedWalletProvider.mjs +1 -1
- package/dist/esm/embedded/gas/arbitrum.mjs +1 -1
- package/dist/esm/embedded/gas/op-stack.mjs +1 -1
- package/dist/esm/embedded/gas/polygon.mjs +1 -1
- package/dist/esm/embedded/index.mjs +1 -1
- package/dist/esm/embedded/polygonGasStation.mjs +1 -1
- package/dist/esm/embedded/utils/gas.mjs +1 -1
- package/dist/esm/embedded/utils/index.mjs +1 -1
- package/dist/esm/funding/coinbase.mjs +1 -1
- package/dist/esm/funding/moonpay.mjs +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/utils/getIsTokenUsdc.mjs +1 -1
- package/dist/esm/wallet-api/rpc.mjs +1 -0
- package/package.json +5 -3
- package/dist/cjs/chains/arbitrum.js +0 -1
- package/dist/cjs/chains/arbitrumGoerli.js +0 -1
- package/dist/cjs/chains/arbitrumSepolia.js +0 -1
- package/dist/cjs/chains/avalanche.js +0 -1
- package/dist/cjs/chains/avalancheFuji.js +0 -1
- package/dist/cjs/chains/base.js +0 -1
- package/dist/cjs/chains/baseGoerli.js +0 -1
- package/dist/cjs/chains/baseSepolia.js +0 -1
- package/dist/cjs/chains/berachainArtio.js +0 -1
- package/dist/cjs/chains/celo.js +0 -1
- package/dist/cjs/chains/celoAlfajores.js +0 -1
- package/dist/cjs/chains/filecoin.js +0 -1
- package/dist/cjs/chains/filecoinCalibration.js +0 -1
- package/dist/cjs/chains/garnetHolesky.js +0 -1
- package/dist/cjs/chains/goerli.js +0 -1
- package/dist/cjs/chains/holesky.js +0 -1
- package/dist/cjs/chains/index.js +0 -1
- package/dist/cjs/chains/linea.js +0 -1
- package/dist/cjs/chains/lineaTestnet.js +0 -1
- package/dist/cjs/chains/mainnet.js +0 -1
- package/dist/cjs/chains/optimism.js +0 -1
- package/dist/cjs/chains/optimismGoerli.js +0 -1
- package/dist/cjs/chains/optimismSepolia.js +0 -1
- package/dist/cjs/chains/polygon.js +0 -1
- package/dist/cjs/chains/polygonAmoy.js +0 -1
- package/dist/cjs/chains/polygonMumbai.js +0 -1
- package/dist/cjs/chains/redstone.js +0 -1
- package/dist/cjs/chains/redstoneHolesky.js +0 -1
- package/dist/cjs/chains/sepolia.js +0 -1
- package/dist/cjs/chains/types.js +0 -1
- package/dist/cjs/chains/zora.js +0 -1
- package/dist/cjs/chains/zoraSepolia.js +0 -1
- package/dist/cjs/chains/zoraTestnet.js +0 -1
- package/dist/esm/chains/arbitrum.mjs +0 -1
- package/dist/esm/chains/arbitrumGoerli.mjs +0 -1
- package/dist/esm/chains/arbitrumSepolia.mjs +0 -1
- package/dist/esm/chains/avalanche.mjs +0 -1
- package/dist/esm/chains/avalancheFuji.mjs +0 -1
- package/dist/esm/chains/base.mjs +0 -1
- package/dist/esm/chains/baseGoerli.mjs +0 -1
- package/dist/esm/chains/baseSepolia.mjs +0 -1
- package/dist/esm/chains/berachainArtio.mjs +0 -1
- package/dist/esm/chains/celo.mjs +0 -1
- package/dist/esm/chains/celoAlfajores.mjs +0 -1
- package/dist/esm/chains/filecoin.mjs +0 -1
- package/dist/esm/chains/filecoinCalibration.mjs +0 -1
- package/dist/esm/chains/garnetHolesky.mjs +0 -1
- package/dist/esm/chains/goerli.mjs +0 -1
- package/dist/esm/chains/holesky.mjs +0 -1
- package/dist/esm/chains/index.mjs +0 -1
- package/dist/esm/chains/linea.mjs +0 -1
- package/dist/esm/chains/lineaTestnet.mjs +0 -1
- package/dist/esm/chains/mainnet.mjs +0 -1
- package/dist/esm/chains/optimism.mjs +0 -1
- package/dist/esm/chains/optimismGoerli.mjs +0 -1
- package/dist/esm/chains/optimismSepolia.mjs +0 -1
- package/dist/esm/chains/polygon.mjs +0 -1
- package/dist/esm/chains/polygonAmoy.mjs +0 -1
- package/dist/esm/chains/polygonMumbai.mjs +0 -1
- package/dist/esm/chains/redstone.mjs +0 -1
- package/dist/esm/chains/redstoneHolesky.mjs +0 -1
- package/dist/esm/chains/sepolia.mjs +0 -1
- package/dist/esm/chains/types.mjs +0 -1
- package/dist/esm/chains/zora.mjs +0 -1
- package/dist/esm/chains/zoraSepolia.mjs +0 -1
- package/dist/esm/chains/zoraTestnet.mjs +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../Error.js"),r=require("../chains/index.js"),t=require("../embedded/EmbeddedBitcoinWalletProvider.js"),o=require("../embedded/errors.js"),i=require("../embedded/utils/index.js"),d=require("../embedded/EmbeddedWalletProxy.js"),s=require("../embedded/EmbeddedWalletProvider.js"),a=require("../embedded/EmbeddedSolanaWalletProvider.js");require("../chains/arbitrum.js"),require("../chains/arbitrumGoerli.js"),require("../chains/arbitrumSepolia.js"),require("../chains/avalanche.js"),require("../chains/avalancheFuji.js"),require("../chains/base.js"),require("../chains/baseGoerli.js"),require("../chains/baseSepolia.js"),require("../chains/berachainArtio.js"),require("../chains/celo.js"),require("../chains/celoAlfajores.js"),require("../chains/filecoin.js"),require("../chains/filecoinCalibration.js"),require("../chains/garnetHolesky.js"),require("../chains/goerli.js"),require("../chains/holesky.js"),require("../chains/linea.js"),require("../chains/lineaTestnet.js"),require("../chains/mainnet.js"),require("../chains/optimism.js"),require("../chains/optimismGoerli.js"),require("../chains/optimismSepolia.js"),require("../chains/polygon.js"),require("../chains/polygonMumbai.js"),require("../chains/redstone.js"),require("../chains/redstoneHolesky.js"),require("../chains/sepolia.js"),require("../chains/zora.js"),require("../chains/zoraSepolia.js"),require("../chains/zoraTestnet.js"),require("../embedded/types.js"),require("@ethersproject/abstract-signer"),require("@ethersproject/providers"),require("../embedded/gas/arbitrum.js"),require("@ethersproject/bignumber"),require("../embedded/utils/ethers.js"),require("../embedded/gas/bsc.js"),require("../embedded/gas/op-stack.js"),require("@ethersproject/contracts"),require("@ethersproject/transactions"),require("../embedded/gas/polygon.js"),require("@ethersproject/units"),require("fetch-retry"),require("../chains/polygonAmoy.js"),require("../embedded/utils/gas.js"),require("../utils/sleep.js"),require("../embedded/EventCallbackQueue.js"),require("../embedded/withMfa.js"),require("eventemitter3"),require("../embedded/methods.js"),require("../solana/getWalletPublicKeyFromTransaction.js"),require("../solana/isVersionedTransaction.js");exports.default=class{setMessagePoster(e){this._proxy=new d.EmbeddedWalletProxy(e,this._mfaPromises),this._mfa.setProxy(this._proxy)}async add(r){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");let t=await this._privyInternal.getAccessToken();if(!t)throw new e.PrivyClientError({error:"User must be logged in to create an embedded wallet",code:"embedded_wallet_creation_error"});await this._proxy.addWallet({accessToken:t,...r});let{user:o}=await this._privyInternal.refreshSession();return{user:o}}async getBitcoinProvider({wallet:e,entropyId:r,entropyIdVerifier:o,recoveryPassword:i,recoveryAccessToken:d,recoverySecretOverride:s}){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");if(!await this._privyInternal.getAccessToken())throw Error("User must be logged in to create an embedded wallet");return await this._load({entropyId:r,entropyIdVerifier:o,wallet:e,recoveryPassword:i,recoveryAccessToken:d,recoverySecretOverride:s}),new t.EmbeddedBitcoinWalletProvider({account:e,privyInternal:this._privyInternal,proxy:this._proxy,entropyId:r,entropyIdVerifier:o})}async create({password:e,recoveryMethod:r,recoveryToken:t,recoveryKey:o,recoverySecretOverride:i,iCloudRecordNameOverride:d,solanaAccount:s,skipCallbacks:a}){let n;if(!this._proxy)throw Error("Embedded wallet proxy not initialized");if(n=r||(e?"user-passcode":"privy"),e&&"string"!=typeof e)throw Error("Invalid recovery password, must be a string");if("privy"===n&&this._privyInternal.config?.embedded_wallet_config.require_user_password_on_create)throw Error("Password not provided yet is required by App configuration");let c=await this._privyInternal.getAccessToken();if(!c)throw Error("User must be logged in to create an embedded wallet");let{address:l}=await this._proxy.create({accessToken:c,recoveryMethod:n,recoveryKey:o,recoveryPassword:e,recoveryAccessToken:t,recoverySecretOverride:i,iCloudRecordNameOverride:d,solanaAddress:s?.address});if(!l)throw Error("Failed to create wallet");return await this._privyInternal.refreshSession(a)}async createSolana(r){if(!this._proxy)throw new e.PrivyClientError({error:"Embedded wallet proxy not initialized",code:"embedded_wallet_creation_error"});let t=await this._privyInternal.getAccessToken();if(!t)throw new e.PrivyClientError({error:"User must be logged in to create an embedded wallet",code:"embedded_wallet_creation_error"});r?.ethereumAccount&&await this.getProvider(r.ethereumAccount);let{publicKey:o}=await this._proxy.createSolana({accessToken:t,ethereumAddress:r?.ethereumAccount?.address});if(!o)throw new e.PrivyClientError({error:"Failed to create wallet",code:"embedded_wallet_creation_error"});return await this._privyInternal.refreshSession()}async delegateWallets({delegatedWallets:r,rootWallet:t}){if(!this._proxy)throw new e.PrivyClientError({error:"Embedded wallet proxy not initialized",code:"embedded_wallet_creation_error"});let o=await this._privyInternal.getAccessToken();if(!o)throw new e.PrivyClientError({error:"User must be logged in to create an embedded wallet",code:"embedded_wallet_creation_error"});await this._proxy.delegateWallets({accessToken:o,delegatedWallets:r,rootWallet:t})}async getProvider(e,r,t,o,i){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");return await this._load({wallet:e,entropyId:e.address,entropyIdVerifier:"ethereum-address-verifier",recoveryPassword:r,recoveryKey:i,recoveryAccessToken:t,recoverySecretOverride:o}),new s.EmbeddedWalletProvider({account:e,entropyId:e.address,entropyIdVerifier:"ethereum-address-verifier",privyInternal:this._privyInternal,chains:this._chains,walletProxy:this._proxy})}async getEthereumProvider({wallet:e,entropyId:r,entropyIdVerifier:t,recoveryPassword:o,recoveryAccessToken:i,recoverySecretOverride:d,recoveryKey:a,onNeedsRecovery:n}){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");if(!await this._privyInternal.getAccessToken())throw Error("User must be logged in to create an embedded wallet");return(!n||o||i||d||a)&&await this._load({entropyId:r,entropyIdVerifier:t,wallet:e,recoveryPassword:o,recoveryAccessToken:i,recoverySecretOverride:d,recoveryKey:a}),new s.EmbeddedWalletProvider({account:e,entropyId:r,entropyIdVerifier:"ethereum-address-verifier",privyInternal:this._privyInternal,chains:this._chains,walletProxy:this._proxy,onNeedsRecovery:n})}async getSolanaProvider(r,t,o,i,d,s,n){if(!this._proxy)throw new e.PrivyClientError({error:"Embedded wallet proxy not initialized",code:"embedded_wallet_webview_not_loaded"});return(!n||i||d||s)&&await this._load({wallet:r,entropyId:t,entropyIdVerifier:o,recoveryPassword:i,recoveryAccessToken:d,recoverySecretOverride:s}),new a.EmbeddedSolanaWalletProvider({account:r,privyInternal:this._privyInternal,proxy:this._proxy,entropyId:t,entropyIdVerifier:o})}async setRecovery(e){let{wallet:r,...t}=e;if(!this._proxy)throw Error("Embedded wallet proxy not initialized");i.throwIfInvalidRecoveryUpgradePath({currentRecoveryMethod:r.recovery_method,upgradeToRecoveryMethod:"icloud-native"===t.recoveryMethod?"icloud":t.recoveryMethod}),await this._load("solana"===r.chain_type?{wallet:r,entropyId:r.address,entropyIdVerifier:"solana-address-verifier"}:{wallet:r,entropyId:r.address,entropyIdVerifier:"ethereum-address-verifier"});let o=await this._privyInternal.getAccessToken();if(!o)throw Error("User must be logged in to interact with embedded wallets");let d=r.recovery_method;this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_set_recovery_started",{address:r.address,target_recovery_method:t.recoveryMethod,existing_recovery_method:d});try{let e;if("user-passcode"===t.recoveryMethod)e={recoveryMethod:"user-passcode",recoveryPassword:t.password};else if("google-drive"===t.recoveryMethod)e={recoveryMethod:"google-drive",recoveryAccessToken:t.recoveryAccessToken};else if("icloud"===t.recoveryMethod)e={recoveryMethod:"icloud",recoveryAccessToken:t.recoveryAccessToken};else if("icloud-native"===t.recoveryMethod)e={recoveryMethod:"icloud-native",iCloudRecordNameOverride:t.iCloudRecordNameOverride,recoverySecretOverride:t.recoverySecretOverride};else if("recovery-encryption-key"===t.recoveryMethod)e={recoveryMethod:"recovery-encryption-key",recoveryKey:t.recoveryKey};else{if("privy"!==t.recoveryMethod)throw Error(`Unknown recovery method: ${t.recoveryMethod}`);e={recoveryMethod:"privy"}}await this._proxy.setRecovery({accessToken:o,entropyId:r.address,entropyIdVerifier:"solana"===r.chain_type?"solana-address-verifier":"ethereum-address-verifier",...e}),this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_set_recovery_completed",{address:r.address,target_recovery_method:t.recoveryMethod,existing_recovery_method:d});let{user:i}=await this._privyInternal.refreshSession();return{user:i,provider:"ethereum"!==r.chain_type?null:new s.EmbeddedWalletProvider({account:r,entropyId:r.address,entropyIdVerifier:"ethereum-address-verifier",privyInternal:this._privyInternal,chains:this._chains,walletProxy:this._proxy})}}catch(e){throw this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_set_recovery_failed",{address:r.address,recovery_method:r.recovery_method,error:e instanceof Error?e.message:"Unable to recover wallet"}),e}}getURL(){let e=new URL(`${this._privyInternal.baseUrl}/apps/${this._privyInternal.appId}/embedded-wallets`);return this._privyInternal.caid&&e.searchParams.append("caid",this._privyInternal.caid),this._privyInternal.appClientId&&e.searchParams.append("client_id",this._privyInternal.appClientId),e.href}get chains(){return this._chains}onMessage(e){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");return this._proxy.handleEmbeddedWalletMessages(e)}reload(){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");this._proxy.reload()}async ping(e){try{if(!this._proxy)throw Error("Embedded wallet proxy not initialized");return await this._proxy.ping(e),!0}catch(e){return console.error(e),!1}}async _load({entropyId:e,entropyIdVerifier:r,wallet:t,recoveryPassword:i,recoveryKey:d,recoveryAccessToken:s,recoverySecretOverride:a}){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");let n=await this._privyInternal.getAccessToken();if(!n)throw Error("User must be logged in to interact with embedded wallets");try{return await this._proxy.connect({accessToken:n,entropyId:e,entropyIdVerifier:r}),e}catch(c){if(o.errorIndicatesRecoveryIsNeeded(c))try{if("privy"===t.recovery_method){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:t.address,recovery_method:t.recovery_method});let o=await this._proxy.recover({accessToken:n,entropyId:e,entropyIdVerifier:r});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:t.address,recovery_method:t.recovery_method}),o.entropyId}if("user-passcode"===t.recovery_method&&i){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:t.address,recovery_method:t.recovery_method});let o=await this._proxy.recover({accessToken:n,recoveryPassword:i,entropyId:e,entropyIdVerifier:r});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:t.address,recovery_method:t.recovery_method}),o.entropyId}if(["google-drive","icloud"].includes(t.recovery_method)&&s){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:t.address,recovery_method:t.recovery_method});let o=await this._proxy.recover({accessToken:n,recoveryAccessToken:s,entropyId:e,entropyIdVerifier:r});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:t.address,recovery_method:t.recovery_method}),o.entropyId}if("icloud"===t.recovery_method&&a){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:t.address,recovery_method:"icloud-native"});let o=await this._proxy.recover({accessToken:n,recoverySecretOverride:a,entropyId:e,entropyIdVerifier:r});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:t.address,recovery_method:"icloud-native"}),o.entropyId}if("recovery-encryption-key"===t.recovery_method&&d){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:t.address,recovery_method:t.recovery_method});let o=await this._proxy.recover({accessToken:n,recoveryKey:d,entropyId:e,entropyIdVerifier:r});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:t.address,recovery_method:t.recovery_method}),o.entropyId}}catch(r){throw this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_failed",{address:t.address,recovery_method:t.recovery_method,error:r instanceof Error?r.message:`Unable to recover wallet: ${e}`}),r}throw c}}constructor(e,t,o,i,s){this._chains=Array.from(r.DEFAULT_SUPPORTED_CHAINS),this._privyInternal=e,t&&(this._proxy=new d.EmbeddedWalletProxy(t,s),i.setProxy(this._proxy));let a=o?.map((e=>e.rpcUrls.privyWalletOverride?e:r.DEFAULT_SUPPORTED_CHAINS.find((r=>r.id===e.id))||e));a&&a.length&&(this._chains=a),this._mfa=i,this._mfaPromises=s}};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@privy-io/chains"),r=require("../Error.js"),t=require("../embedded/EmbeddedBitcoinWalletProvider.js"),o=require("../embedded/errors.js"),d=require("../embedded/utils/index.js"),i=require("../embedded/EmbeddedWalletProxy.js"),s=require("../embedded/EmbeddedWalletProvider.js"),a=require("../embedded/EmbeddedSolanaWalletProvider.js");require("../embedded/types.js"),require("@ethersproject/abstract-signer"),require("@ethersproject/providers"),require("../embedded/gas/arbitrum.js"),require("@ethersproject/bignumber"),require("../embedded/utils/ethers.js"),require("../embedded/gas/bsc.js"),require("../embedded/gas/op-stack.js"),require("@ethersproject/contracts"),require("@ethersproject/transactions"),require("../embedded/gas/polygon.js"),require("@ethersproject/units"),require("fetch-retry"),require("../embedded/utils/gas.js"),require("../utils/sleep.js"),require("../embedded/EventCallbackQueue.js"),require("../embedded/withMfa.js"),require("eventemitter3"),require("../embedded/methods.js"),require("../solana/getWalletPublicKeyFromTransaction.js"),require("../solana/isVersionedTransaction.js");exports.default=class{setMessagePoster(e){this._proxy=new i.EmbeddedWalletProxy(e,this._mfaPromises),this._mfa.setProxy(this._proxy)}async add(e){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");let t=await this._privyInternal.getAccessToken();if(!t)throw new r.PrivyClientError({error:"User must be logged in to create an embedded wallet",code:"embedded_wallet_creation_error"});await this._proxy.addWallet({accessToken:t,...e});let{user:o}=await this._privyInternal.refreshSession();return{user:o}}async getBitcoinProvider({wallet:e,entropyId:r,entropyIdVerifier:o,recoveryPassword:d,recoveryAccessToken:i,recoverySecretOverride:s}){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");if(!await this._privyInternal.getAccessToken())throw Error("User must be logged in to create an embedded wallet");return await this._load({entropyId:r,entropyIdVerifier:o,wallet:e,recoveryPassword:d,recoveryAccessToken:i,recoverySecretOverride:s}),new t.EmbeddedBitcoinWalletProvider({account:e,privyInternal:this._privyInternal,proxy:this._proxy,entropyId:r,entropyIdVerifier:o})}async create({password:e,recoveryMethod:r,recoveryToken:t,recoveryKey:o,recoverySecretOverride:d,iCloudRecordNameOverride:i,solanaAccount:s,skipCallbacks:a}){let n;if(!this._proxy)throw Error("Embedded wallet proxy not initialized");if(n=r||(e?"user-passcode":"privy"),e&&"string"!=typeof e)throw Error("Invalid recovery password, must be a string");if("privy"===n&&this._privyInternal.config?.embedded_wallet_config.require_user_password_on_create)throw Error("Password not provided yet is required by App configuration");let c=await this._privyInternal.getAccessToken();if(!c)throw Error("User must be logged in to create an embedded wallet");let{address:l}=await this._proxy.create({accessToken:c,recoveryMethod:n,recoveryKey:o,recoveryPassword:e,recoveryAccessToken:t,recoverySecretOverride:d,iCloudRecordNameOverride:i,solanaAddress:s?.address});if(!l)throw Error("Failed to create wallet");return await this._privyInternal.refreshSession(a)}async createSolana(e){if(!this._proxy)throw new r.PrivyClientError({error:"Embedded wallet proxy not initialized",code:"embedded_wallet_creation_error"});let t=await this._privyInternal.getAccessToken();if(!t)throw new r.PrivyClientError({error:"User must be logged in to create an embedded wallet",code:"embedded_wallet_creation_error"});e?.ethereumAccount&&await this.getProvider(e.ethereumAccount);let{publicKey:o}=await this._proxy.createSolana({accessToken:t,ethereumAddress:e?.ethereumAccount?.address});if(!o)throw new r.PrivyClientError({error:"Failed to create wallet",code:"embedded_wallet_creation_error"});return await this._privyInternal.refreshSession()}async delegateWallets({delegatedWallets:e,rootWallet:t}){if(!this._proxy)throw new r.PrivyClientError({error:"Embedded wallet proxy not initialized",code:"embedded_wallet_creation_error"});let o=await this._privyInternal.getAccessToken();if(!o)throw new r.PrivyClientError({error:"User must be logged in to create an embedded wallet",code:"embedded_wallet_creation_error"});await this._proxy.delegateWallets({accessToken:o,delegatedWallets:e,rootWallet:t})}async getProvider(e,r,t,o,d){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");return await this._load({wallet:e,entropyId:e.address,entropyIdVerifier:"ethereum-address-verifier",recoveryPassword:r,recoveryKey:d,recoveryAccessToken:t,recoverySecretOverride:o}),new s.EmbeddedWalletProvider({account:e,entropyId:e.address,entropyIdVerifier:"ethereum-address-verifier",privyInternal:this._privyInternal,chains:this._chains,walletProxy:this._proxy})}async getEthereumProvider({wallet:e,entropyId:r,entropyIdVerifier:t,recoveryPassword:o,recoveryAccessToken:d,recoverySecretOverride:i,recoveryKey:a,onNeedsRecovery:n}){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");if(!await this._privyInternal.getAccessToken())throw Error("User must be logged in to create an embedded wallet");return(!n||o||d||i||a)&&await this._load({entropyId:r,entropyIdVerifier:t,wallet:e,recoveryPassword:o,recoveryAccessToken:d,recoverySecretOverride:i,recoveryKey:a}),new s.EmbeddedWalletProvider({account:e,entropyId:r,entropyIdVerifier:"ethereum-address-verifier",privyInternal:this._privyInternal,chains:this._chains,walletProxy:this._proxy,onNeedsRecovery:n})}async getSolanaProvider(e,t,o,d,i,s,n){if(!this._proxy)throw new r.PrivyClientError({error:"Embedded wallet proxy not initialized",code:"embedded_wallet_webview_not_loaded"});return(!n||d||i||s)&&await this._load({wallet:e,entropyId:t,entropyIdVerifier:o,recoveryPassword:d,recoveryAccessToken:i,recoverySecretOverride:s}),new a.EmbeddedSolanaWalletProvider({account:e,privyInternal:this._privyInternal,proxy:this._proxy,entropyId:t,entropyIdVerifier:o})}async setRecovery(e){let{wallet:r,...t}=e;if(!this._proxy)throw Error("Embedded wallet proxy not initialized");d.throwIfInvalidRecoveryUpgradePath({currentRecoveryMethod:r.recovery_method,upgradeToRecoveryMethod:"icloud-native"===t.recoveryMethod?"icloud":t.recoveryMethod}),await this._load("solana"===r.chain_type?{wallet:r,entropyId:r.address,entropyIdVerifier:"solana-address-verifier"}:{wallet:r,entropyId:r.address,entropyIdVerifier:"ethereum-address-verifier"});let o=await this._privyInternal.getAccessToken();if(!o)throw Error("User must be logged in to interact with embedded wallets");let i=r.recovery_method;this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_set_recovery_started",{address:r.address,target_recovery_method:t.recoveryMethod,existing_recovery_method:i});try{let e;if("user-passcode"===t.recoveryMethod)e={recoveryMethod:"user-passcode",recoveryPassword:t.password};else if("google-drive"===t.recoveryMethod)e={recoveryMethod:"google-drive",recoveryAccessToken:t.recoveryAccessToken};else if("icloud"===t.recoveryMethod)e={recoveryMethod:"icloud",recoveryAccessToken:t.recoveryAccessToken};else if("icloud-native"===t.recoveryMethod)e={recoveryMethod:"icloud-native",iCloudRecordNameOverride:t.iCloudRecordNameOverride,recoverySecretOverride:t.recoverySecretOverride};else if("recovery-encryption-key"===t.recoveryMethod)e={recoveryMethod:"recovery-encryption-key",recoveryKey:t.recoveryKey};else{if("privy"!==t.recoveryMethod)throw Error(`Unknown recovery method: ${t.recoveryMethod}`);e={recoveryMethod:"privy"}}await this._proxy.setRecovery({accessToken:o,entropyId:r.address,entropyIdVerifier:"solana"===r.chain_type?"solana-address-verifier":"ethereum-address-verifier",...e}),this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_set_recovery_completed",{address:r.address,target_recovery_method:t.recoveryMethod,existing_recovery_method:i});let{user:d}=await this._privyInternal.refreshSession();return{user:d,provider:"ethereum"!==r.chain_type?null:new s.EmbeddedWalletProvider({account:r,entropyId:r.address,entropyIdVerifier:"ethereum-address-verifier",privyInternal:this._privyInternal,chains:this._chains,walletProxy:this._proxy})}}catch(e){throw this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_set_recovery_failed",{address:r.address,recovery_method:r.recovery_method,error:e instanceof Error?e.message:"Unable to recover wallet"}),e}}getURL(){let e=new URL(`${this._privyInternal.baseUrl}/apps/${this._privyInternal.appId}/embedded-wallets`);return this._privyInternal.caid&&e.searchParams.append("caid",this._privyInternal.caid),this._privyInternal.appClientId&&e.searchParams.append("client_id",this._privyInternal.appClientId),e.href}get chains(){return this._chains}onMessage(e){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");return this._proxy.handleEmbeddedWalletMessages(e)}reload(){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");this._proxy.reload()}async ping(e){try{if(!this._proxy)throw Error("Embedded wallet proxy not initialized");return await this._proxy.ping(e),!0}catch(e){return console.error(e),!1}}async _load({entropyId:e,entropyIdVerifier:r,wallet:t,recoveryPassword:d,recoveryKey:i,recoveryAccessToken:s,recoverySecretOverride:a}){if(!this._proxy)throw Error("Embedded wallet proxy not initialized");let n=await this._privyInternal.getAccessToken();if(!n)throw Error("User must be logged in to interact with embedded wallets");try{return await this._proxy.connect({accessToken:n,entropyId:e,entropyIdVerifier:r}),e}catch(c){if(o.errorIndicatesRecoveryIsNeeded(c))try{if("privy"===t.recovery_method){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:t.address,recovery_method:t.recovery_method});let o=await this._proxy.recover({accessToken:n,entropyId:e,entropyIdVerifier:r});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:t.address,recovery_method:t.recovery_method}),o.entropyId}if("user-passcode"===t.recovery_method&&d){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:t.address,recovery_method:t.recovery_method});let o=await this._proxy.recover({accessToken:n,recoveryPassword:d,entropyId:e,entropyIdVerifier:r});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:t.address,recovery_method:t.recovery_method}),o.entropyId}if(["google-drive","icloud"].includes(t.recovery_method)&&s){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:t.address,recovery_method:t.recovery_method});let o=await this._proxy.recover({accessToken:n,recoveryAccessToken:s,entropyId:e,entropyIdVerifier:r});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:t.address,recovery_method:t.recovery_method}),o.entropyId}if("icloud"===t.recovery_method&&a){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:t.address,recovery_method:"icloud-native"});let o=await this._proxy.recover({accessToken:n,recoverySecretOverride:a,entropyId:e,entropyIdVerifier:r});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:t.address,recovery_method:"icloud-native"}),o.entropyId}if("recovery-encryption-key"===t.recovery_method&&i){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:t.address,recovery_method:t.recovery_method});let o=await this._proxy.recover({accessToken:n,recoveryKey:i,entropyId:e,entropyIdVerifier:r});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:t.address,recovery_method:t.recovery_method}),o.entropyId}}catch(r){throw this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_failed",{address:t.address,recovery_method:t.recovery_method,error:r instanceof Error?r.message:`Unable to recover wallet: ${e}`}),r}throw c}}constructor(r,t,o,d,s){if(this._chains=Array.from(e.DEFAULT_SUPPORTED_CHAINS),this._privyInternal=r,t&&(this._proxy=new i.EmbeddedWalletProxy(t,s),d.setProxy(this._proxy)),o){let r=e.dedupeSupportedChains(o);this._chains=r}this._mfa=d,this._mfaPromises=s}};
|
package/dist/cjs/client/Privy.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./AppApi.js"),r=require("./CrossAppApi.js"),i=require("./DelegatedWalletsApi.js"),s=require("./EmbeddedWalletApi.js"),t=require("./MfaPromises.js"),a=require("./PrivyInternal.js"),u=require("./UserApi.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./AppApi.js"),r=require("./CrossAppApi.js"),i=require("./DelegatedWalletsApi.js"),s=require("./EmbeddedWalletApi.js"),t=require("./MfaPromises.js"),a=require("./PrivyInternal.js"),u=require("./UserApi.js"),d=require("./auth/AuthApi.js"),n=require("./funding/FundingApi.js"),l=require("./mfa/MfaApi.js"),o=require("./recovery/RecoveryApi.js");require("@privy-io/public-api"),require("../Token.js"),require("jose"),require("@privy-io/chains"),require("../Error.js"),require("../embedded/EmbeddedBitcoinWalletProvider.js"),require("../embedded/errors.js"),require("../embedded/types.js"),require("../embedded/utils/index.js"),require("@ethersproject/abstract-signer"),require("@ethersproject/providers"),require("../embedded/gas/arbitrum.js"),require("@ethersproject/bignumber"),require("../embedded/utils/ethers.js"),require("../embedded/gas/bsc.js"),require("../embedded/gas/op-stack.js"),require("@ethersproject/contracts"),require("@ethersproject/transactions"),require("../embedded/gas/polygon.js"),require("@ethersproject/units"),require("fetch-retry"),require("../embedded/utils/gas.js"),require("../embedded/EmbeddedWalletProxy.js"),require("../utils/sleep.js"),require("../embedded/EventCallbackQueue.js"),require("../embedded/withMfa.js"),require("../embedded/EmbeddedWalletProvider.js"),require("eventemitter3"),require("../embedded/methods.js"),require("../embedded/EmbeddedSolanaWalletProvider.js"),require("../solana/getWalletPublicKeyFromTransaction.js"),require("../solana/isVersionedTransaction.js"),require("uuid"),require("@privy-io/api-base"),require("../Session.js"),require("js-cookie"),require("../utils/allSettled.js"),require("../toAbortSignalTimeout.js"),require("../utils/toSearchParams.js"),require("./auth/CustomProviderApi.js"),require("./auth/maybeCreateWalletOnLogin.js"),require("../utils/getUserEmbeddedEthereumWallet.js"),require("../utils/getAllUserEmbeddedEthereumWallets.js"),require("../utils/getUserEmbeddedSolanaWallet.js"),require("../utils/getAllUserEmbeddedSolanaWallets.js"),require("../utils/shouldCreateEmbeddedEthWallet.js"),require("../utils/shouldCreateEmbeddedSolWallet.js"),require("./auth/EmailApi.js"),require("./auth/FarcasterApi.js"),require("./auth/FarcasterV2Api.js"),require("./auth/GuestApi.js"),require("./auth/OAuthApi.js"),require("../pkce.js"),require("./auth/PasskeyApi.js"),require("./auth/PhoneApi.js"),require("./auth/SiweApi.js"),require("./auth/SiwsApi.js"),require("./auth/SmartWalletApi.js"),require("./funding/CoinbaseOnRampApi.js"),require("./funding/MoonpayOnRampApi.js"),require("../funding/moonpay.js"),require("./mfa/MfaPasskeyApi.js"),require("./mfa/MfaSmsApi.js"),require("./recovery/RecoveryICloudApi.js"),require("./recovery/RecoveryOAuthApi.js");exports.default=class{async initialize(){await this._privyInternal._initialize()}setMessagePoster(e){this.embeddedWallet.setMessagePoster(e)}addOAuthTokensListener(e){return this._privyInternal.session.on("oauth_tokens_granted",e),{unsubscribe:()=>{this._privyInternal.session.removeListener("oauth_tokens_granted",e)}}}setCallbacks(e){this._privyInternal.setCallbacks(e)}getAccessToken(){return this._privyInternal.getAccessToken()}getIdentityToken(){return this._privyInternal.getIdentityToken()}async getCompiledPath(e,r){return this._privyInternal.getPath(e,r)}async fetchPrivyRoute(e,r){return this._privyInternal.fetch(e,r)}constructor({clientId:p,...q}){this._privyInternal=new a.PrivyInternal({...q,appClientId:p}),this.mfa=new l.default(this._privyInternal),this.mfaPromises=new t.default,this.embeddedWallet=new s.default(this._privyInternal,q.embeddedWalletMessagePoster,q.supportedChains,this.mfa,this.mfaPromises),this.user=new u.default(this._privyInternal),this.app=new e.default(this._privyInternal),this.auth=new d.default(this._privyInternal,this.embeddedWallet,q.storage,q.crypto),this.recovery=new o.default(this._privyInternal,q.storage,q.crypto),this.funding=new n.default(this._privyInternal),this.delegated=new i.default(this._privyInternal),this.crossApp=new r.default(this._privyInternal,q.storage)}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("fetch-retry"),t=require("uuid"),s=require("@privy-io/api-base"),i=require("@privy-io/public-api"),r=require("../Error.js"),a=require("../Session.js"),n=require("../toAbortSignalTimeout.js"),o=require("../utils/toSearchParams.js");function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("eventemitter3"),require("jose"),require("js-cookie"),require("../Token.js"),require("../utils/allSettled.js");var c=/*#__PURE__*/h(e);let l="privy:caid";exports.PrivyInternal=class{setCallbacks(e){this.callbacks={...this.callbacks,...e}}get isReady(){return!!this._config}get config(){return this._config}get caid(){return this._analyticsId}async _initialize(){if(this.isReady)this.callbacks?.setIsReady?.(!0);else{if(!await this.isStorageAccessible())throw new r.PrivyClientError({code:"storage_error",error:"Unable to access storage"});this._config=await this.getAppConfig(),this._config?.custom_api_url&&(this.baseUrl=this._config.custom_api_url,this.session.isUsingServerCookies=!0),this.callbacks?.setIsReady?.(!0),this.createAnalyticsEvent("sdk_initialize",{})}}async fetch(e,{body:t,params:s,query:
|
|
1
|
+
"use strict";var e=require("fetch-retry"),t=require("uuid"),s=require("@privy-io/api-base"),i=require("@privy-io/public-api"),r=require("../Error.js"),a=require("../Session.js"),n=require("../toAbortSignalTimeout.js"),o=require("../utils/toSearchParams.js");function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("eventemitter3"),require("jose"),require("js-cookie"),require("../Token.js"),require("../utils/allSettled.js");var c=/*#__PURE__*/h(e);let l="privy:caid";exports.PrivyInternal=class{setCallbacks(e){this.callbacks={...this.callbacks,...e}}get isReady(){return!!this._config}get config(){return this._config}get caid(){return this._analyticsId}async _initialize(){if(this.isReady)this.callbacks?.setIsReady?.(!0);else{if(!await this.isStorageAccessible())throw new r.PrivyClientError({code:"storage_error",error:"Unable to access storage"});this._config=await this.getAppConfig(),this._config?.custom_api_url&&(this.baseUrl=this._config.custom_api_url,this.session.isUsingServerCookies=!0),this.callbacks?.setIsReady?.(!0),this._sdkVersion.startsWith("react-auth:")||this.createAnalyticsEvent("sdk_initialize",{})}}getPath(e,{params:t,query:s}){return`${this.baseUrl}${i.getPathWithParams(e.path,t)}${o.toSearchParams(s)}`}async fetch(e,{body:t,params:s,query:i,headers:a,onRequest:n=this._beforeRequest.bind(this)}){let o=new Request(this.getPath(e,{params:s,query:i}),{method:e.method,body:JSON.stringify(t),headers:a}),h=await n(o),c=await this._fetch(o,h),l=await c.json();if(c.status>299)throw new r.PrivyApiError(l);return l}async _beforeRequestWithoutInitialize(e){let t=await this.session.getToken(),s=new Headers(e.headers);s.set("privy-app-id",this.appId),this.appClientId&&s.set("privy-client-id",this.appClientId),s.set("privy-client",this._sdkVersion),t&&s.set("Authorization",`Bearer ${t}`),s.set("Content-Type","application/json"),s.set("Accept","application/json");let i=await this._getOrGenerateClientAnalyticsId();return i&&s.set("privy-ca-id",i),this.nativeAppIdentifier&&s.set("x-native-app-identifier",this.nativeAppIdentifier),{signal:n.default(2e4),headers:s,credentials:"include"}}async beforeRequestWithoutRefresh(e){return await this._initialize(),this._beforeRequestWithoutInitialize(e)}async _beforeRequest(e){return await this._initialize(),await this.getAccessToken(),this.beforeRequestWithoutRefresh(e)}async getAppConfig(){return await this.fetch(i.AppConfig,{params:{app_id:this.appId},onRequest:this._beforeRequestWithoutInitialize.bind(this)})}async _getOrGenerateClientAnalyticsId(){if(this._analyticsId)return this._analyticsId;try{let e=await this._storage.get(l);if("string"==typeof e&&e.length>0)return this._analyticsId=e,e}catch(e){console.error("Unable to load clientId",e)}try{this._analyticsId=t.v4()}catch(e){console.error("Unable to generate uuidv4",e)}if(!this._analyticsId)return null;try{await this._storage.put(l,this._analyticsId)}catch(e){console.error(`Unable to store clientId: ${this._analyticsId}`,e)}return this._analyticsId}async destroyClientAnalyticsId(){try{return await this._storage.del(l)}catch(e){console.error("Unable to delete clientId",e)}}async createAnalyticsEvent(e,t){try{await this.fetch(i.AnalyticsEvent,{body:{event_name:e,client_id:await this._getOrGenerateClientAnalyticsId(),payload:t},onRequest:this.beforeRequestWithoutRefresh.bind(this)})}catch(e){}}async refreshSession(e=!1){if(!await this.isStorageAccessible())throw new r.PrivyClientError({code:"storage_error",error:"Unable to access storage"});let t=await this.session.getRefreshToken()??void 0,s=t??"key",i=this._cache.get(s);if(i)return console.debug("Found in-flight session refresh request, deduping"),await i;let a=this._refreshSession(t,e);this._cache.set(s,a);try{return await a}finally{this._cache.delete(s)}}async _refreshSession(e,t){let a=await this.session.getToken();if(!this.session.hasRefreshCredentials(a,e??null))throw this.debug("[privy:refresh] missing tokens, skipping request"),await this._initialize(),new r.PrivyApiError({code:s.PrivyErrorCode.MISSING_OR_INVALID_TOKEN,error:"No tokens found in storage"});try{this.debug(`[privy:refresh] fetching: ${i.RefreshSession.path}`);let s=await this.fetch(i.RefreshSession,{body:{refresh_token:e},onRequest:this.beforeRequestWithoutRefresh.bind(this)}),r=s.session_update_action;return this.debug(`[privy:refresh] response: ${r}`),t||this.callbacks?.setUser?.(s.user),"set"===r&&(await this.session.updateWithTokensResponse(s),this.debug("[privy:refresh] tokens stored")),"clear"===r&&(await this.session.destroyLocalState(),this.debug("[privy:refresh] tokens cleared"),t||this.callbacks?.setUser?.(null)),"ignore"===r&&s.token&&(await this.session.storeToken(s.token),this.debug("[privy:refresh] access token stored"),s.identity_token&&(this.debug("[privy:refresh] identity token stored"),await this.session.storeIdentityToken(s.identity_token))),this.debug("[privy:refresh] returning response"),s}catch(e){throw this.debug(`[privy:refresh] error: ${e.message??"unknown error"}`),e instanceof r.PrivyApiError&&e.code===s.PrivyErrorCode.MISSING_OR_INVALID_TOKEN&&(await this.session.destroyLocalState(),t||this.callbacks?.setUser?.(null)),e}}async getAccessToken(){let[e,t]=await Promise.all([this.session.getToken(),this.session.getRefreshToken()]);if(!this.session.tokenIsActive(e)&&this.session.hasRefreshCredentials(e,t)){let t=await this.refreshSession(),s=await this.session.getToken();return t.token||this.debug("[privy:getAccessToken] expected token received null"),t.token===e&&this.debug("[privy:getAccessToken] expected new token in response received existing"),s===e&&this.debug("[privy:getAccessToken] expected new token in storage received existing"),t.token??s}return e}async getIdentityToken(){return await this.session.getIdentityToken()}async isStorageAccessible(){try{let e=`privy:__storage__test-${t.v4()}`,s="blobby";await this._storage.put(e,s);let i=await this._storage.get(e);return await this._storage.del(e),i===s}catch(e){return console.error(e),!1}}debug(e){"DEBUG"===this._logLevel&&console.debug(e)}constructor(e){this._sdkVersion="js-sdk-core:0.46.2",this._cache=new Map,this._storage=e.storage,this._analyticsId=null,this._getOrGenerateClientAnalyticsId(),this.baseUrl=e.baseUrl??"https://auth.privy.io",this.appId=e.appId,this.appClientId=e.appClientId,this._sdkVersion=e.sdkVersion??this._sdkVersion,this._logLevel=e.logLevel,this.callbacks=e.callbacks,this.nativeAppIdentifier=e.nativeAppIdentifier,this.session=new a.Session({storage:this._storage,isUsingServerCookies:!1,appId:e.appId}),this._fetch=c.default(globalThis.fetch,{retries:3,retryDelay:e=>3**e*500,retryOn:[408,409,425,500,502,503,504]}),this.session.on("error_storing_tokens",(e=>{this.createAnalyticsEvent("error_updating_tokens_in_storage",{reason:e})}))}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./CoinbaseOnRampApi.js"),r=require("./MoonpayOnRampApi.js");require("@privy-io/public-api"),require("fetch-retry"),require("../../Error.js"),require("../../funding/moonpay.js"),require("
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./CoinbaseOnRampApi.js"),r=require("./MoonpayOnRampApi.js");require("@privy-io/public-api"),require("fetch-retry"),require("../../Error.js"),require("../../funding/moonpay.js"),require("@privy-io/chains");exports.default=class{constructor(i){this.moonpay=new r.default(i),this.coinbase=new e.default(i)}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var r=require("fetch-retry"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var r=require("fetch-retry"),t=require("@privy-io/public-api"),e=require("../../Error.js"),a=require("../../funding/moonpay.js");function n(r){return r&&"object"==typeof r&&"default"in r?r:{default:r}}require("@privy-io/chains");var o=/*#__PURE__*/n(r);exports.default=class{async sign(r){return await this._privyInternal.fetch(t.MoonpayOnRampSign,{body:r})}async getTransactionStatus({transactionId:r,useSandbox:t}){let{url:n,key:i}=a.MoonpayEnvironments[t?"sandbox":"prod"],s=await o.default(fetch,{retries:3,retryDelay:500})(`${n}/transactions/ext/${r}?apiKey=${i}`);if(!s.ok)throw new e.MoonpayApiError({error:`Failed to fetch transaction status for Transaction ${r}`,code:"failed_to_fetch_moonpay_transaction_status",response:s});let u=await s.json();return Array.isArray(u)?u.at(0):void 0}constructor(r){this._privyInternal=r}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("eventemitter3"),r=require("../Error.js"),t=require("./errors.js"),
|
|
1
|
+
"use strict";var e=require("eventemitter3"),r=require("../Error.js"),t=require("./errors.js"),a=require("./methods.js"),s=require("./utils/index.js");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("./types.js"),require("@ethersproject/abstract-signer"),require("@ethersproject/providers"),require("./gas/arbitrum.js"),require("@ethersproject/bignumber"),require("@privy-io/chains"),require("./utils/ethers.js"),require("./gas/bsc.js"),require("./gas/op-stack.js"),require("@ethersproject/contracts"),require("@ethersproject/transactions"),require("./gas/polygon.js"),require("@ethersproject/units"),require("fetch-retry"),require("./utils/gas.js");var n=/*#__PURE__*/i(e);class o extends n.default{async request(e){if(a.isSupportedIframeRpcMethod(e.method))return this.handleIFrameRpc(e);switch(e.method){case"eth_accounts":case"eth_requestAccounts":return this._account.address?[this._account.address]:[];case"eth_chainId":return`0x${this._chainId.toString(16)}`;case"wallet_switchEthereumChain":return this.handleSwitchEthereumChain(e);case"eth_estimateGas":return this.handleEstimateGas(e);case"eth_sendTransaction":{let r=e.params?.[0];return this.handleSendTransaction(r)}case"eth_populateTransactionRequest":{let r=e.params?.[0];return this.handlePopulateTransaction(r)}default:return this.handleJsonRpc(e)}}ensureChainId(e){let r={chainId:this._chainId,...e};return this.internalSwitchEthereumChain(r.chainId),r}internalSwitchEthereumChain(e){e&&Number(e)!==this._chainId&&(this._chainId=Number(e),this._jsonRpcProvider=s.getJsonRpcProvider(this._chainId,this._chains,{rpcUrls:[]},{appId:this._privyInternal.appId}),this.emit("chainChanged",e))}async handlePopulateTransaction(e){let r=this.ensureChainId(e);return s.populateTransactionRequest(this._account.address,r,this._jsonRpcProvider)}async handleSendTransaction(e){let r=this.ensureChainId(e),t=await s.populateTransactionRequest(this._account.address,r,this._jsonRpcProvider),a=await this.handleIFrameRpc({method:"eth_signTransaction",params:[t]});return await this.handleJsonRpc({method:"eth_sendRawTransaction",params:[a]})}async handleEstimateGas(e){if(!e.params||!Array.isArray(e.params))throw Error("Invalid params for eth_estimateGas");delete e.params[0].gasPrice,delete e.params[0].maxFeePerGas,delete e.params[0].maxPriorityFeePerGas;let r={...e.params[0],chainId:`0x${this._chainId.toString(16)}`};this.internalSwitchEthereumChain(r.chainId);try{return await this._jsonRpcProvider.send("eth_estimateGas",[r])}catch(e){console.warn(`Gas estimation failed with error: ${e}. Retrying gas estimation by omitting the 'from' address`);try{return delete r.from,await this._jsonRpcProvider.send("eth_estimateGas",[r])}catch(r){throw console.warn(`Gas estimation failed with error: ${r} when omitting the 'from' address`),e}}}handleSwitchEthereumChain(e){let r;if(!e.params||!Array.isArray(e.params))throw new t.EmbeddedProviderError(`Invalid params for ${e.method}`,4200);if("string"==typeof e.params[0])r=e.params[0];else{if(!("chainId"in e.params[0])||"string"!=typeof e.params[0].chainId)throw new t.EmbeddedProviderError(`Invalid params for ${e.method}`,4200);r=e.params[0].chainId}this.internalSwitchEthereumChain(r)}async handleIFrameRpc(e){try{let r=await this._privyInternal.getAccessToken();if(!r)throw Error("Missing privy token. User must be logged in");this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_rpc_started",{method:e.method,address:this._account.address});try{await this._walletProxy.connect({entropyId:this._entropyId,entropyIdVerifier:this._entropyIdVerifier,accessToken:r})}catch(e){let a=t.errorIndicatesRecoveryIsNeeded(e);if(a&&"privy"===this._account.recovery_method)await this._walletProxy.recover({entropyId:this._entropyId,entropyIdVerifier:this._entropyIdVerifier,accessToken:r});else{if(!a||!this._onNeedsRecovery)throw e;{let e;await new Promise((async(r,t)=>{e=setTimeout(t,12e4),await(this._onNeedsRecovery?.({recoveryMethod:this._account.recovery_method,onRecovered:()=>r(!0)}))})).finally((()=>clearTimeout(e)))}}}return(await this._walletProxy.rpcWallet({accessToken:r,request:e,entropyId:this._entropyId,entropyIdVerifier:this._entropyIdVerifier,hdWalletIndex:this._account.wallet_index,chainType:"ethereum"})).response.data}catch(t){console.error(t);let a=t instanceof Error?t.message:"Unable to make wallet request";throw this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_rpc_failed",{method:e.method,address:this._account.address,error:a}),new r.PrivyClientError({code:"embedded_wallet_request_error",error:a})}}async handleJsonRpc(e){return this._jsonRpcProvider.send(e.method,e.params??[])}toJSON(){return`PrivyEIP1193Provider { address: '${this._account.address}', chainId: ${this._chainId}, request: [Function] }`}constructor({walletProxy:e,privyInternal:r,account:t,entropyId:a,entropyIdVerifier:i,chains:n,onNeedsRecovery:o,chainId:h=n[0].id}){super(),this._walletProxy=e,this._privyInternal=r,this._account=t,this._entropyId=a,this._entropyIdVerifier=i,this._chainId=h,this._chains=n,this._onNeedsRecovery=o,this._jsonRpcProvider=s.getJsonRpcProvider(h,n,{rpcUrls:[]},{appId:this._privyInternal.appId})}}exports.EmbeddedWalletProvider=o;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var r=require("@ethersproject/bignumber"),e=require("
|
|
1
|
+
"use strict";var r=require("@ethersproject/bignumber"),e=require("@privy-io/chains"),i=require("../utils/ethers.js");const t=r=>[e.arbitrum.id,e.arbitrumSepolia.id].includes(r);exports.defaultGasForArbitrum=async(e,a)=>{if(!t(e.chainId))throw Error("Invalid chain ID for Arbitrum gas estimation.");if(void 0===e.type&&(e.type=2),e.maxFeePerGas)return e;try{let{lastBaseFeePerGas:t}=await a.getFeeData();if(t){let a=t.mul(r.BigNumber.from(120)).div(r.BigNumber.from(100));e.maxFeePerGas=i.convertBigNumberish(a),e.maxPriorityFeePerGas=i.convertBigNumberish(r.BigNumber.from(0))}}catch(r){throw Error(`Failed to set gas price for Arbitrum transaction: ${r}.`)}return e},exports.isArbitrum=t;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("@ethersproject/bignumber"),r=require("@ethersproject/contracts"),
|
|
1
|
+
"use strict";var e=require("@ethersproject/bignumber"),r=require("@ethersproject/contracts"),a=require("@ethersproject/transactions"),t=require("@privy-io/chains"),i=require("../utils/ethers.js");const s=["function getL1Fee(bytes memory _data) external view returns (uint256)"],o=e=>[t.base.id,t.baseSepolia.id,t.optimism.id,t.optimismSepolia.id,t.zora.id,t.zoraTestnet.id,t.zoraSepolia.id,81457,168587773].includes(e);exports.OPTIMISM_STACK_GAS_PRICE_ORACLE_ABI=s,exports.OPTIMISM_STACK_GAS_PRICE_ORACLE_ADDRESS="0x420000000000000000000000000000000000000F",exports.defaultGasForOpStack=async(r,a)=>{if(!o(r.chainId))throw Error("Invalid chain ID for OP Stack gas estimation.");if(void 0===r.type&&(r.type=2),r.gasPrice&&(console.warn("`gasPrice` is not supported on this chain and will be ignored. Use `maxPriorityFeePerGas` and/or `maxFeePerGas` instead."),delete r.gasPrice),r.maxPriorityFeePerGas&&r.maxFeePerGas)return r;try{if(!r.maxPriorityFeePerGas){let e=await a.send("eth_maxPriorityFeePerGas",[]);r.maxPriorityFeePerGas=e}if(r.maxFeePerGas&&(console.warn("maxFeePerGas is specified without maxPriorityFeePerGas - this can result in hung transactions."),r.maxPriorityFeePerGas>=r.maxFeePerGas))throw Error("Overridden maxFeePerGas is less than or equal to the calculated maxPriorityFeePerGas. Please set both values or maxPriorityFeePerGas alone for correct gas estimation.");if(!r.maxFeePerGas){let{lastBaseFeePerGas:t}=await a.getFeeData();if(!t)throw Error("Unable to fetch baseFee for last block.");let s=e.BigNumber.from(t).mul(e.BigNumber.from(126)).div(e.BigNumber.from(100)).add(e.BigNumber.from(r.maxPriorityFeePerGas));r.maxFeePerGas=i.convertBigNumberish(s)}}catch(e){throw Error(`Failed to set gas price for OP stack transaction: ${e}.`)}return r},exports.estimateOpStackL1Gas=async function(t,n){if(!t.chainId||t.chainId&&!o(t.chainId))return e.BigNumber.from(0);let c=e.BigNumber.from(0);try{let e=new r.Contract("0x420000000000000000000000000000000000000F",s,n),o=i.toEthersUnsignedTransaction(t),m=a.serialize(o);c=await e.getL1Fee(m)}catch(e){}return c},exports.isOpStack=o;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("@ethersproject/units"),t=require("fetch-retry"),
|
|
1
|
+
"use strict";var e=require("@ethersproject/units"),t=require("fetch-retry"),r=require("@privy-io/chains");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}let o=/*#__PURE__*/a(t).default(fetch,{retries:3,retryDelay:500});const i=e=>[r.polygon.id,r.polygonAmoy.id].includes(e);let s=t=>({maxPriorityFee:e.parseUnits(t.maxPriorityFee.toFixed(9),"gwei").toHexString(),maxFee:e.parseUnits(t.maxFee.toFixed(9),"gwei").toHexString()}),n=e=>({safeLow:s(e.safeLow),standard:s(e.standard),fast:s(e.fast)});const y=async e=>{let t="";switch(e){case r.polygon.id:t="https://gasstation.polygon.technology/v2";break;case r.polygonAmoy.id:t="https://gasstation.polygon.technology/amoy";break;default:throw Error(`chainId ${e} does not support polygon gas stations`)}let a=await o(t),i=await a.json();if(a.status>399)throw i;return n(i)};exports.defaultGasForPolygon=async function(e){if(!i(e.chainId))throw Error("Invalid chain ID for Polygon gas estimation.");if(void 0===e.type&&(e.type=2),e.maxPriorityFeePerGas&&e.maxFeePerGas)return e;try{let{standard:t}=await y(e.chainId);e.maxPriorityFeePerGas||(e.maxPriorityFeePerGas=t.maxPriorityFee),e.maxFeePerGas||(e.maxFeePerGas=t.maxFee),e.gasPrice&&(console.warn("`gasPrice` is not supported on this chain and will be ignored. Use `maxPriorityFeePerGas` and/or `maxFeePerGas` instead."),delete e.gasPrice)}catch(e){throw Error(`Failed to set gas prices from Polygon gas station with error: ${e}.`)}return e},exports.getPolygonGasStationFees=y,exports.isPolygon=i;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./EmbeddedWalletProvider.js"),r=require("./EmbeddedSolanaWalletProvider.js"),
|
|
1
|
+
"use strict";var e=require("./EmbeddedWalletProvider.js"),r=require("./EmbeddedSolanaWalletProvider.js"),s=require("./EmbeddedWalletProxy.js");require("eventemitter3"),require("../Error.js"),require("./errors.js"),require("./types.js"),require("./methods.js"),require("./utils/index.js"),require("@ethersproject/abstract-signer"),require("@ethersproject/providers"),require("./gas/arbitrum.js"),require("@ethersproject/bignumber"),require("@privy-io/chains"),require("./utils/ethers.js"),require("./gas/bsc.js"),require("./gas/op-stack.js"),require("@ethersproject/contracts"),require("@ethersproject/transactions"),require("./gas/polygon.js"),require("@ethersproject/units"),require("fetch-retry"),require("./utils/gas.js"),require("../solana/getWalletPublicKeyFromTransaction.js"),require("../solana/isVersionedTransaction.js"),require("../utils/sleep.js"),require("./EventCallbackQueue.js"),require("./withMfa.js"),exports.EmbeddedWalletProvider=e.EmbeddedWalletProvider,exports.EmbeddedSolanaWalletProvider=r.EmbeddedSolanaWalletProvider,exports.EmbeddedWalletProxy=s.EmbeddedWalletProxy;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var t=require("@ethersproject/units"),o=require("@privy-io/chains");const e=[o.polygon.id,o.polygonAmoy.id];let a=o=>({maxPriorityFee:t.parseUnits(o.maxPriorityFee.toFixed(9),"gwei").toHexString(),maxFee:t.parseUnits(o.maxFee.toFixed(9),"gwei").toHexString()}),s=t=>({safeLow:a(t.safeLow),standard:a(t.standard),fast:a(t.fast)});exports.POLYGON_GAS_STATION_CHAIN_IDS=e,exports.getPolygonGasStationFees=async t=>{let e="";switch(t){case o.polygon.id:e="https://gasstation.polygon.technology/v2";break;case o.polygonAmoy.id:e="https://gasstation.polygon.technology/amoy";break;default:throw Error(`chainId ${t} does not support polygon gas stations`)}let a=await fetch(e);return s(await a.json())};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("@ethersproject/bignumber"),
|
|
1
|
+
"use strict";var e=require("@ethersproject/bignumber"),t=require("../errors.js"),r=require("../gas/op-stack.js"),i=require("./ethers.js");require("../types.js"),require("@ethersproject/contracts"),require("@ethersproject/transactions"),require("@privy-io/chains");exports.calculateTotalGasEstimate=async function(a,s){if(!a.gasLimit)throw new t.PrivyProviderRpcError("gasLimit was not successfully set for transaction.");let o=i.QuantityToBigNumber(a.gasLimit),n=e.BigNumber.from(0);if(2==a.type){if(!a.maxFeePerGas)throw new t.PrivyProviderRpcError("maxFeePerGas was not successfully set for transaction of type 2.");n=i.QuantityToBigNumber(a.maxFeePerGas)}else{if(!a.gasPrice)throw new t.PrivyProviderRpcError("gasPrice was not successfully set for transaction of type 0 or 1.");n=i.QuantityToBigNumber(a.gasPrice)}let c=o.mul(n),u=e.BigNumber.from(0);if(a.chainId&&r.isOpStack(a.chainId))try{u=await r.estimateOpStackL1Gas(a,s),c=c.add(u)}catch(e){}return{totalGasEstimate:c,l1ExecutionFeeEstimate:u}},exports.defaultGasForEvmChain=async(e,t)=>{if(void 0===e.type&&(e.type=2),2===e.type){if(!e.maxFeePerGas||!e.maxPriorityFeePerGas){let r=await t.getFeeData();e.maxFeePerGas||(e.maxFeePerGas=r.maxFeePerGas?.toHexString()),e.maxPriorityFeePerGas||(e.maxPriorityFeePerGas=r.maxPriorityFeePerGas?.toHexString())}}else if(!e.gasPrice){let r=await t.getFeeData();e.gasPrice=r.gasPrice?.toHexString()}return e},exports.defaultGasLimit=async function(e,t){try{return(await t.estimateGas(e)).toHexString()}catch(r){let i;if("message"in r&&r.message.includes("insufficient funds")&&(console.warn(`Gas estimation failed with error: ${r}. Retrying gas estimation by omitting the 'value'`),i=await async function({txRequest:e,provider:t}){try{let r={...e,value:void 0};return(await t.estimateGas(r)).toHexString()}catch(e){return console.warn(`Gas estimation failed with error: ${e} when omitting the 'value'`),null}}({txRequest:e,provider:t})),i||(console.warn(`Gas estimation failed with error: ${r}. Retrying gas estimation by omitting the 'from'`),i=await async function({txRequest:e,provider:t}){try{let r={...e,from:void 0};return(await t.estimateGas(r)).toHexString()}catch(e){return console.warn(`Gas estimation failed with error: ${e} when omitting the 'from' address`),null}}({txRequest:e,provider:t})),!i)throw r;return i}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var r=require("@ethersproject/abstract-signer"),e=require("@ethersproject/providers"),t=require("../errors.js"),i=require("../gas/arbitrum.js"),s=require("../gas/bsc.js"),a=require("../gas/op-stack.js"),
|
|
1
|
+
"use strict";var r=require("@ethersproject/abstract-signer"),e=require("@ethersproject/providers"),t=require("../errors.js"),i=require("../gas/arbitrum.js"),s=require("../gas/bsc.js"),a=require("../gas/op-stack.js"),p=require("../gas/polygon.js"),o=require("./gas.js");require("../types.js"),require("@ethersproject/bignumber"),require("@privy-io/chains"),require("./ethers.js"),require("@ethersproject/contracts"),require("@ethersproject/transactions"),require("@ethersproject/units"),require("fetch-retry");function n(r){return/^-?0x[a-f0-9]+$/i.test(r)}function c(r){for(let e of["gasLimit","gasPrice","value","maxPriorityFeePerGas","maxFeePerGas"]){let t=r[e];if(void 0!==t&&!function(r){let e="number"==typeof r,t="bigint"==typeof r,i="string"==typeof r&&n(r);return e||t||i}(t))throw Error(`Transaction request property '${e}' must be a valid number, bigint, or hex string representing a quantity`)}if("number"!=typeof r.chainId)throw Error("Transaction request property 'chainId' must be a number")}exports.getJsonRpcEndpointFromChain=(r,e,i)=>{let s,a=r.id,p=Number(r.id);if(r.rpcUrls.privyWalletOverride&&r.rpcUrls.privyWalletOverride.http[0])s=r.rpcUrls.privyWalletOverride.http[0];else if(e.rpcUrls&&e.rpcUrls[p])s=e.rpcUrls[p];else if(r.rpcUrls.privy?.http[0]){let e=new URL(r.rpcUrls.privy.http[0]);e.searchParams.append("privyAppId",i),s=e.toString()}else s=r.rpcUrls.public?.http[0]?r.rpcUrls.public.http[0]:r.rpcUrls.default?.http[0];if(!s)throw new t.PrivyConnectorError(`No RPC url found for ${a}`);return s},exports.getJsonRpcProvider=(r,i,s,a)=>{let p=Number(r),o=i.find((r=>r.id===p));if(!o)throw new t.PrivyConnectorError(`Unsupported chainId ${r}`,4901);return new e.StaticJsonRpcProvider(o.rpcUrls.privyWalletOverride&&o.rpcUrls.privyWalletOverride.http[0]?o.rpcUrls.privyWalletOverride.http[0]:s.rpcUrls&&s.rpcUrls[p]?s.rpcUrls[p]:o.rpcUrls.privy?.http[0]?{url:o.rpcUrls.privy.http[0],headers:{"privy-app-id":a.appId}}:o.rpcUrls.public?.http[0]?o.rpcUrls.public?.http[0]:o.rpcUrls.default?.http[0])},exports.populateTransactionRequest=async function(e,t,l){if(t.chainId=Number(t.chainId),c(t),t.from||(t.from=e),!t.nonce){let i=new r.VoidSigner(e,l);t.nonce=await i.getTransactionCount("pending")}return t.gasLimit||(t.gas?(t.gasLimit=t.gas,delete t.gas):t.gasLimit=await o.defaultGasLimit(t,l)),"string"==typeof t.type&&n(t.type)&&(t.type=Number(t.type)),[23294,23295].includes(t.chainId)&&(t.type=0),0===(t=p.isPolygon(t.chainId)?await p.defaultGasForPolygon(t):i.isArbitrum(t.chainId)?await i.defaultGasForArbitrum(t,l):a.isOpStack(t.chainId)?await a.defaultGasForOpStack(t,l):s.isBsc(t.chainId)?await s.defaultGasForBsc(t,l):await o.defaultGasForEvmChain(t,l)).type&&delete t.accessList,2!==t.type&&(delete t.maxPriorityFeePerGas,delete t.maxFeePerGas),t},exports.throwIfInvalidRecoveryUpgradePath=function({currentRecoveryMethod:r,upgradeToRecoveryMethod:e}){switch(r){case"privy":case"user-passcode":case"recovery-encryption-key":return!0;case"icloud":case"google-drive":if(r===e)throw Error("Cannot upgrade to the existing cloud platform");return!0;default:throw Error("Unknown recovery method")}},exports.validateTransactionRequest=c;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("
|
|
1
|
+
"use strict";var e=require("@privy-io/chains");let a=new Set([e.mainnet.id,e.base.id,e.optimism.id,e.polygon.id,e.arbitrum.id]),s=new Set([e.mainnet.id,e.base.id,e.polygon.id,e.optimism.id]),t={buy:"CARD",send:"CRYPTO_ACCOUNT"},r={USDC:"2b92315d-eab7-5bef-84fa-089a131333f5",ETH:"d85dce9b-5b73-5c3c-8978-522ce1d1c1b4",BTC:"5b71fc48-3dd3-540c-809b-f8c94d0e68b5",SOL:"4f039497-3af8-5bb3-951c-6df9afa9be1c",POL:"026bcc1e-9163-591c-a709-34dd18b2e7a1"},n={[e.mainnet.id]:"ethereum",[e.base.id]:"base",[e.optimism.id]:"optimism",[e.polygon.id]:"polygon",[e.arbitrum.id]:"arbitrum"};exports.getCoinbaseOnRampUrl=function({input:e,amount:a,blockchain:s,asset:n,experience:i}){let o=new URL("https://pay.coinbase.com/buy/select-asset");return o.searchParams.set("appId",e.app_id),o.searchParams.set("sessionToken",e.session_token),o.searchParams.set("defaultExperience",i),o.searchParams.set("presetCryptoAmount",a.startsWith(".")?`0${a}`:a),o.searchParams.set("defaultNetwork",s),o.searchParams.set("defaultPaymentMethod",t[i]),o.searchParams.set("defaultAsset",r[n]),o.searchParams.set("partnerUserId",e.partner_user_id),{url:o}},exports.isSupportedChainIdForCoinbaseOnramp=(e,t)=>{switch(t){case"native-currency":return a.has(e);case"USDC":return s.has(e);default:return console.warn("Unknown asset passed to Coinbase Onramp"),!1}},exports.toCoinbaseAssetId=function(a,s){return"USDC"===s?"USDC":a===e.polygon.id?"POL":"ETH"},exports.toCoinbaseBlockchainFromChainId=function(e){return n[e]};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("
|
|
1
|
+
"use strict";var e=require("@privy-io/chains");let n=new Set([e.mainnet.id,e.arbitrum.id,e.base.id,e.polygon.id,e.avalanche.id,e.celo.id]),r=new Set([e.mainnet.id,e.arbitrum.id,e.optimism.id,e.base.id,e.polygon.id]);exports.MoonpayEnvironments={prod:{url:"https://api.moonpay.com/v1",key:"pk_live_hirbpu0cVcLHrjktC9l7fbc9ctjv0SL"},sandbox:{url:"https://api.moonpay.com/v1",key:"pk_test_fqWjXZMSFwloh7orvJsRfjiUHXJqFzI"}},exports.chainToMoonpayCurrency=function(n,r){switch(n){case e.arbitrum.id:return"native-currency"===r?"ETH_ARBITRUM":"USDC_ARBITRUM";case e.avalanche.id:return"AVAX_CCHAIN";case e.base.id:return"native-currency"===r?"ETH_BASE":"USDC_BASE";case e.celo.id:return"CELO_CELO";case e.polygon.id:return"native-currency"===r?"MATIC_POLYGON":"USDC_POLYGON";case e.mainnet.id:return"native-currency"===r?"ETH_ETHEREUM":"USDC_ETHEREUM";default:return console.warn(`Chain ${n} not supported by Moonpay, defaulting to Ethereum mainnet`),"ETH_ETHEREUM"}},exports.fundingMethodToMoonpayPaymentMethod=function(e){switch(e){case"card":case"payment-request":return"credit_debit_card";default:throw Error(`Unsupported Moonpay funding method ${e}`)}},exports.isSupportedChainIdForMoonpay=function(e,t){switch(t){case"native-currency":return n.has(e);case"USDC":return r.has(e);default:return console.warn("Unknown asset passed to MoonPay Onramp"),!1}};
|
package/dist/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./client/Privy.js"),r=require("@privy-io/public-api"),t=require("./storage/LocalStorage.js"),s=require("./storage/InMemoryStorage.js"),i=require("./Error.js"),o=require("./embedded/errors.js"),a=require("./utils/getUserEmbeddedEthereumWallet.js"),n=require("./utils/getAllUserEmbeddedEthereumWallets.js"),l=require("./utils/getAllUserEmbeddedSolanaWallets.js"),u=require("./utils/getAllUserEmbeddedBitcoinWallets.js"),d=require("./utils/getEntropyDetailsFromUser.js"),p=require("./utils/getEntropyDetailsFromAccount.js"),c=require("./utils/getUserSmartWallet.js"),m=require("./embedded/utils/index.js"),j=require("./utils/phoneNumberUtils.js"),q=require("./utils/getUserEmbeddedSolanaWallet.js"),h=require("./utils/toObjectKeys.js"),g=require("./embedded/utils/gas.js"),A=require("./embedded/utils/ethers.js"),b=require("./utils/getIsTokenUsdc.js"),E=require("./funding/moonpay.js"),y=require("./funding/coinbase.js"),x=require("./solana/client.js"),C=require("./solana/createSiwsMessage.js"),P=require("./solana/getSolanaRpcEndpointForCluster.js"),S=require("./solana/getSolanaUsdcMintAddressForCluster.js"),f=require("./solana/getSolanaClusterDisplayName.js"),T=require("./types.js"),I=require("./chains/index.js"),U=require("./utils/formatters.js"),v=require("libphonenumber-js/min"),W=require("./index-BDWdfIuK.js"),M=require("./index-DzfqDJJ9.js");require("./client/AppApi.js"),require("./client/CrossAppApi.js"),require("./Token.js"),require("jose"),require("./client/DelegatedWalletsApi.js"),require("./client/EmbeddedWalletApi.js"),require("./embedded/EmbeddedBitcoinWalletProvider.js"),require("./embedded/EmbeddedWalletProxy.js"),require("./utils/sleep.js"),require("./embedded/EventCallbackQueue.js"),require("./embedded/withMfa.js"),require("./embedded/EmbeddedWalletProvider.js"),require("eventemitter3"),require("./embedded/methods.js"),require("./embedded/EmbeddedSolanaWalletProvider.js"),require("./solana/getWalletPublicKeyFromTransaction.js"),require("./solana/isVersionedTransaction.js"),require("./client/MfaPromises.js"),require("./client/PrivyInternal.js"),require("fetch-retry"),require("uuid"),require("@privy-io/api-base"),require("./Session.js"),require("js-cookie"),require("./utils/allSettled.js"),require("./toAbortSignalTimeout.js"),require("./utils/toSearchParams.js"),require("./client/UserApi.js"),require("./client/auth/AuthApi.js"),require("./client/auth/CustomProviderApi.js"),require("./client/auth/maybeCreateWalletOnLogin.js"),require("./utils/shouldCreateEmbeddedEthWallet.js"),require("./utils/shouldCreateEmbeddedSolWallet.js"),require("./client/auth/EmailApi.js"),require("./client/auth/FarcasterApi.js"),require("./client/auth/FarcasterV2Api.js"),require("./client/auth/GuestApi.js"),require("./client/auth/OAuthApi.js"),require("./pkce.js"),require("./client/auth/PasskeyApi.js"),require("./client/auth/PhoneApi.js"),require("./client/auth/SiweApi.js"),require("./client/auth/SiwsApi.js"),require("./client/auth/SmartWalletApi.js"),require("./client/funding/FundingApi.js"),require("./client/funding/CoinbaseOnRampApi.js"),require("./client/funding/MoonpayOnRampApi.js"),require("./client/mfa/MfaApi.js"),require("./client/mfa/MfaPasskeyApi.js"),require("./client/mfa/MfaSmsApi.js"),require("./client/recovery/RecoveryApi.js"),require("./client/recovery/RecoveryICloudApi.js"),require("./client/recovery/RecoveryOAuthApi.js"),require("./embedded/types.js"),require("@ethersproject/abstract-signer"),require("@ethersproject/providers"),require("./embedded/gas/arbitrum.js"),require("@ethersproject/bignumber"),require("./chains/arbitrum.js"),require("./chains/arbitrumGoerli.js"),require("./chains/arbitrumSepolia.js"),require("./embedded/gas/bsc.js"),require("./embedded/gas/op-stack.js"),require("@ethersproject/contracts"),require("@ethersproject/transactions"),require("./chains/base.js"),require("./chains/baseGoerli.js"),require("./chains/baseSepolia.js"),require("./chains/optimism.js"),require("./chains/optimismGoerli.js"),require("./chains/optimismSepolia.js"),require("./chains/zora.js"),require("./chains/zoraSepolia.js"),require("./chains/zoraTestnet.js"),require("./embedded/gas/polygon.js"),require("@ethersproject/units"),require("./chains/polygon.js"),require("./chains/polygonAmoy.js"),require("./chains/polygonMumbai.js"),require("libphonenumber-js/examples.mobile.json"),require("./chains/avalanche.js"),require("./chains/avalancheFuji.js"),require("./chains/mainnet.js"),require("./chains/sepolia.js"),require("./chains/celo.js"),require("./chains/berachainArtio.js"),require("./chains/celoAlfajores.js"),require("./chains/filecoin.js"),require("./chains/filecoinCalibration.js"),require("./chains/garnetHolesky.js"),require("./chains/goerli.js"),require("./chains/holesky.js"),require("./chains/linea.js"),require("./chains/lineaTestnet.js"),require("./chains/redstone.js"),require("./chains/redstoneHolesky.js"),require("viem"),require("./action/delegatedActions/delegateWallet.js"),require("./action/delegatedActions/utils.js"),require("./action/delegatedActions/revokeWallets.js"),require("./action/crossApp/loginWithCrossAppAuth.js"),require("./action/crossApp/linkWithCrossAppAuth.js"),require("./index-CARkJvRM.js"),require("./action/crossApp/wallet/signMessage.js"),require("./action/crossApp/wallet/utils/isCrossAppWalletSmart.js"),require("./action/crossApp/wallet/utils/sendCrossAppRequest.js"),require("./action/crossApp/wallet/utils/getCrossAppAccountByWalletAddress.js"),require("./action/crossApp/wallet/utils/getProviderAccessTokenOrRelink.js"),require("./action/crossApp/wallet/utils/throwIfNotLoggedIn.js"),require("./action/crossApp/wallet/signTypedData.js"),require("./utils/typedData/generateDomainType.js"),require("./action/crossApp/wallet/sendTransaction.js"),exports.default=e.default,Object.defineProperty(exports,"BICONOMY",{enumerable:!0,get:function(){return r.BICONOMY}}),Object.defineProperty(exports,"COINBASE_SMART_WALLET",{enumerable:!0,get:function(){return r.COINBASE_SMART_WALLET}}),Object.defineProperty(exports,"KERNEL",{enumerable:!0,get:function(){return r.KERNEL}}),Object.defineProperty(exports,"LIGHT_ACCOUNT",{enumerable:!0,get:function(){return r.LIGHT_ACCOUNT}}),Object.defineProperty(exports,"SAFE",{enumerable:!0,get:function(){return r.SAFE}}),Object.defineProperty(exports,"THIRDWEB",{enumerable:!0,get:function(){return r.THIRDWEB}}),exports.LocalStorage=t.LocalStorage,exports.InMemoryCache=s.InMemoryCache,exports.MoonpayApiError=i.MoonpayApiError,exports.PrivyApiError=i.PrivyApiError,exports.PrivyClientError=i.PrivyClientError,exports.createErrorFormatter=i.createErrorFormatter,exports.errorIndicatesMfaCanceled=i.errorIndicatesMfaCanceled,exports.EmbeddedProviderError=o.EmbeddedProviderError,exports.PrivyConnectorError=o.PrivyConnectorError,exports.PrivyEmbeddedWalletErrorCode=o.PrivyEmbeddedWalletErrorCode,exports.PrivyProviderRpcError=o.PrivyProviderRpcError,exports.ProviderErrors=o.ProviderErrors,exports.errorIndicatesMaxMfaRetries=o.errorIndicatesMaxMfaRetries,exports.errorIndicatesMfaRateLimit=o.errorIndicatesMfaRateLimit,exports.errorIndicatesMfaTimeout=o.errorIndicatesMfaTimeout,exports.errorIndicatesMfaVerificationFailed=o.errorIndicatesMfaVerificationFailed,exports.errorIndicatesRecoveryIsNeeded=o.errorIndicatesRecoveryIsNeeded,exports.getUserEmbeddedEthereumWallet=a.getUserEmbeddedEthereumWallet,exports.getUserEmbeddedWallet=a.getUserEmbeddedWallet,exports.getAllUserEmbeddedEthereumWallets=n.getAllUserEmbeddedEthereumWallets,exports.getAllUserEmbeddedSolanaWallets=l.getAllUserEmbeddedSolanaWallets,exports.getAllUserEmbeddedBitcoinWallets=u.getAllUserEmbeddedBitcoinWallets,exports.getEntropyDetailsFromUser=d.getEntropyDetailsFromUser,exports.getEntropyDetailsFromAccount=p.getEntropyDetailsFromAccount,exports.getUserSmartWallet=c.getUserSmartWallet,exports.getJsonRpcEndpointFromChain=m.getJsonRpcEndpointFromChain,exports.populateTransactionRequest=m.populateTransactionRequest,exports.throwIfInvalidRecoveryUpgradePath=m.throwIfInvalidRecoveryUpgradePath,exports.countryCodesAndNumbers=j.countryCodesAndNumbers,exports.formatPhoneNumber=j.formatPhoneNumber,exports.getPhoneCountryCodeAndNumber=j.getPhoneCountryCodeAndNumber,exports.getPlaceholderPhoneNumber=j.getPlaceholderPhoneNumber,exports.lastFourDigits=j.lastFourDigits,exports.phoneNumberTypingFormatter=j.phoneNumberTypingFormatter,exports.validatePhoneNumber=j.validatePhoneNumber,exports.getUserEmbeddedSolanaWallet=q.getUserEmbeddedSolanaWallet,exports.toObjectKeys=h.toObjectKeys,exports.calculateTotalGasEstimate=g.calculateTotalGasEstimate,exports.QuantityToBigNumber=A.QuantityToBigNumber,exports.convertBigNumberish=A.convertBigNumberish,exports.toEthersUnsignedTransaction=A.toEthersUnsignedTransaction,exports.UsdcAddressMap=b.UsdcAddressMap,exports.getIsTokenUsdc=b.getIsTokenUsdc,exports.chainToMoonpayCurrency=E.chainToMoonpayCurrency,exports.fundingMethodToMoonpayPaymentMethod=E.fundingMethodToMoonpayPaymentMethod,exports.isSupportedChainIdForMoonpay=E.isSupportedChainIdForMoonpay,exports.getCoinbaseOnRampUrl=y.getCoinbaseOnRampUrl,exports.isSupportedChainIdForCoinbaseOnramp=y.isSupportedChainIdForCoinbaseOnramp,exports.toCoinbaseAssetId=y.toCoinbaseAssetId,exports.toCoinbaseBlockchainFromChainId=y.toCoinbaseBlockchainFromChainId,exports.SolanaClient=x.SolanaClient,exports.createSiwsMessage=C.createSiwsMessage,exports.getSolanaRpcEndpointForCluster=P.getSolanaRpcEndpointForCluster,exports.getSolanaUsdcMintAddressForCluster=S.getSolanaUsdcMintAddressForCluster,exports.getSolanaClusterDisplayName=f.getSolanaClusterDisplayName,exports.ALL_WALLET_CLIENT_TYPES=T.ALL_WALLET_CLIENT_TYPES,exports.SUPPORTED_CONNECTOR_TYPES=T.SUPPORTED_CONNECTOR_TYPES,exports.DEFAULT_SUPPORTED_CHAINS=I.DEFAULT_SUPPORTED_CHAINS,exports.DEFAULT_SUPPORTED_CHAIN_IDS=I.DEFAULT_SUPPORTED_CHAIN_IDS,exports.chainDefs=I.chainDefs,exports.getSupportedChainById=I.getSupportedChainById,exports.formatLamportsAmount=U.formatLamportsAmount,exports.formatTokenAmount=U.formatTokenAmount,exports.formatWalletAddress=U.formatWalletAddress,exports.formatWeiAmount=U.formatWeiAmount,Object.defineProperty(exports,"getCountryCallingCode",{enumerable:!0,get:function(){return v.getCountryCallingCode}}),exports.delegatedActions=W.index,exports.crossApp=M.index;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./client/Privy.js"),r=require("@privy-io/public-api"),t=require("./storage/LocalStorage.js"),s=require("./storage/InMemoryStorage.js"),o=require("./Error.js"),i=require("./embedded/errors.js"),a=require("./utils/getUserEmbeddedEthereumWallet.js"),n=require("./utils/getAllUserEmbeddedEthereumWallets.js"),l=require("./utils/getAllUserEmbeddedSolanaWallets.js"),u=require("./utils/getAllUserEmbeddedBitcoinWallets.js"),d=require("./utils/getEntropyDetailsFromUser.js"),p=require("./utils/getEntropyDetailsFromAccount.js"),c=require("./utils/getUserSmartWallet.js"),m=require("./embedded/utils/index.js"),j=require("./utils/phoneNumberUtils.js"),q=require("./utils/getUserEmbeddedSolanaWallet.js"),g=require("./utils/toObjectKeys.js"),b=require("./embedded/utils/gas.js"),A=require("./embedded/utils/ethers.js"),E=require("./utils/getIsTokenUsdc.js"),y=require("./funding/moonpay.js"),h=require("./funding/coinbase.js"),x=require("./solana/client.js"),C=require("./solana/createSiwsMessage.js"),f=require("./solana/getSolanaRpcEndpointForCluster.js"),P=require("./solana/getSolanaUsdcMintAddressForCluster.js"),S=require("./solana/getSolanaClusterDisplayName.js"),T=require("./types.js"),v=require("@privy-io/chains"),W=require("./utils/formatters.js"),M=require("./wallet-api/rpc.js"),I=require("libphonenumber-js/min"),U=require("./index-BDWdfIuK.js"),O=require("./index-DzfqDJJ9.js");require("./client/AppApi.js"),require("./client/CrossAppApi.js"),require("./Token.js"),require("jose"),require("./client/DelegatedWalletsApi.js"),require("./client/EmbeddedWalletApi.js"),require("./embedded/EmbeddedBitcoinWalletProvider.js"),require("./embedded/EmbeddedWalletProxy.js"),require("./utils/sleep.js"),require("./embedded/EventCallbackQueue.js"),require("./embedded/withMfa.js"),require("./embedded/EmbeddedWalletProvider.js"),require("eventemitter3"),require("./embedded/methods.js"),require("./embedded/EmbeddedSolanaWalletProvider.js"),require("./solana/getWalletPublicKeyFromTransaction.js"),require("./solana/isVersionedTransaction.js"),require("./client/MfaPromises.js"),require("./client/PrivyInternal.js"),require("fetch-retry"),require("uuid"),require("@privy-io/api-base"),require("./Session.js"),require("js-cookie"),require("./utils/allSettled.js"),require("./toAbortSignalTimeout.js"),require("./utils/toSearchParams.js"),require("./client/UserApi.js"),require("./client/auth/AuthApi.js"),require("./client/auth/CustomProviderApi.js"),require("./client/auth/maybeCreateWalletOnLogin.js"),require("./utils/shouldCreateEmbeddedEthWallet.js"),require("./utils/shouldCreateEmbeddedSolWallet.js"),require("./client/auth/EmailApi.js"),require("./client/auth/FarcasterApi.js"),require("./client/auth/FarcasterV2Api.js"),require("./client/auth/GuestApi.js"),require("./client/auth/OAuthApi.js"),require("./pkce.js"),require("./client/auth/PasskeyApi.js"),require("./client/auth/PhoneApi.js"),require("./client/auth/SiweApi.js"),require("./client/auth/SiwsApi.js"),require("./client/auth/SmartWalletApi.js"),require("./client/funding/FundingApi.js"),require("./client/funding/CoinbaseOnRampApi.js"),require("./client/funding/MoonpayOnRampApi.js"),require("./client/mfa/MfaApi.js"),require("./client/mfa/MfaPasskeyApi.js"),require("./client/mfa/MfaSmsApi.js"),require("./client/recovery/RecoveryApi.js"),require("./client/recovery/RecoveryICloudApi.js"),require("./client/recovery/RecoveryOAuthApi.js"),require("./embedded/types.js"),require("@ethersproject/abstract-signer"),require("@ethersproject/providers"),require("./embedded/gas/arbitrum.js"),require("@ethersproject/bignumber"),require("./embedded/gas/bsc.js"),require("./embedded/gas/op-stack.js"),require("@ethersproject/contracts"),require("@ethersproject/transactions"),require("./embedded/gas/polygon.js"),require("@ethersproject/units"),require("libphonenumber-js/examples.mobile.json"),require("viem"),require("canonicalize"),require("./action/delegatedActions/delegateWallet.js"),require("./action/delegatedActions/utils.js"),require("./action/delegatedActions/revokeWallets.js"),require("./action/crossApp/loginWithCrossAppAuth.js"),require("./action/crossApp/linkWithCrossAppAuth.js"),require("./index-CARkJvRM.js"),require("./action/crossApp/wallet/signMessage.js"),require("./action/crossApp/wallet/utils/isCrossAppWalletSmart.js"),require("./action/crossApp/wallet/utils/sendCrossAppRequest.js"),require("./action/crossApp/wallet/utils/getCrossAppAccountByWalletAddress.js"),require("./action/crossApp/wallet/utils/getProviderAccessTokenOrRelink.js"),require("./action/crossApp/wallet/utils/throwIfNotLoggedIn.js"),require("./action/crossApp/wallet/signTypedData.js"),require("./utils/typedData/generateDomainType.js"),require("./action/crossApp/wallet/sendTransaction.js"),exports.default=e.default,Object.defineProperty(exports,"BICONOMY",{enumerable:!0,get:function(){return r.BICONOMY}}),Object.defineProperty(exports,"COINBASE_SMART_WALLET",{enumerable:!0,get:function(){return r.COINBASE_SMART_WALLET}}),Object.defineProperty(exports,"KERNEL",{enumerable:!0,get:function(){return r.KERNEL}}),Object.defineProperty(exports,"LIGHT_ACCOUNT",{enumerable:!0,get:function(){return r.LIGHT_ACCOUNT}}),Object.defineProperty(exports,"SAFE",{enumerable:!0,get:function(){return r.SAFE}}),Object.defineProperty(exports,"THIRDWEB",{enumerable:!0,get:function(){return r.THIRDWEB}}),exports.LocalStorage=t.LocalStorage,exports.InMemoryCache=s.InMemoryCache,exports.MoonpayApiError=o.MoonpayApiError,exports.PrivyApiError=o.PrivyApiError,exports.PrivyClientError=o.PrivyClientError,exports.createErrorFormatter=o.createErrorFormatter,exports.errorIndicatesMfaCanceled=o.errorIndicatesMfaCanceled,exports.EmbeddedProviderError=i.EmbeddedProviderError,exports.PrivyConnectorError=i.PrivyConnectorError,exports.PrivyEmbeddedWalletErrorCode=i.PrivyEmbeddedWalletErrorCode,exports.PrivyProviderRpcError=i.PrivyProviderRpcError,exports.ProviderErrors=i.ProviderErrors,exports.errorIndicatesMaxMfaRetries=i.errorIndicatesMaxMfaRetries,exports.errorIndicatesMfaRateLimit=i.errorIndicatesMfaRateLimit,exports.errorIndicatesMfaTimeout=i.errorIndicatesMfaTimeout,exports.errorIndicatesMfaVerificationFailed=i.errorIndicatesMfaVerificationFailed,exports.errorIndicatesRecoveryIsNeeded=i.errorIndicatesRecoveryIsNeeded,exports.getUserEmbeddedEthereumWallet=a.getUserEmbeddedEthereumWallet,exports.getUserEmbeddedWallet=a.getUserEmbeddedWallet,exports.getAllUserEmbeddedEthereumWallets=n.getAllUserEmbeddedEthereumWallets,exports.getAllUserEmbeddedSolanaWallets=l.getAllUserEmbeddedSolanaWallets,exports.getAllUserEmbeddedBitcoinWallets=u.getAllUserEmbeddedBitcoinWallets,exports.getEntropyDetailsFromUser=d.getEntropyDetailsFromUser,exports.getEntropyDetailsFromAccount=p.getEntropyDetailsFromAccount,exports.getUserSmartWallet=c.getUserSmartWallet,exports.getJsonRpcEndpointFromChain=m.getJsonRpcEndpointFromChain,exports.populateTransactionRequest=m.populateTransactionRequest,exports.throwIfInvalidRecoveryUpgradePath=m.throwIfInvalidRecoveryUpgradePath,exports.countryCodesAndNumbers=j.countryCodesAndNumbers,exports.formatPhoneNumber=j.formatPhoneNumber,exports.getPhoneCountryCodeAndNumber=j.getPhoneCountryCodeAndNumber,exports.getPlaceholderPhoneNumber=j.getPlaceholderPhoneNumber,exports.lastFourDigits=j.lastFourDigits,exports.phoneNumberTypingFormatter=j.phoneNumberTypingFormatter,exports.validatePhoneNumber=j.validatePhoneNumber,exports.getUserEmbeddedSolanaWallet=q.getUserEmbeddedSolanaWallet,exports.toObjectKeys=g.toObjectKeys,exports.calculateTotalGasEstimate=b.calculateTotalGasEstimate,exports.QuantityToBigNumber=A.QuantityToBigNumber,exports.convertBigNumberish=A.convertBigNumberish,exports.toEthersUnsignedTransaction=A.toEthersUnsignedTransaction,exports.UsdcAddressMap=E.UsdcAddressMap,exports.getIsTokenUsdc=E.getIsTokenUsdc,exports.chainToMoonpayCurrency=y.chainToMoonpayCurrency,exports.fundingMethodToMoonpayPaymentMethod=y.fundingMethodToMoonpayPaymentMethod,exports.isSupportedChainIdForMoonpay=y.isSupportedChainIdForMoonpay,exports.getCoinbaseOnRampUrl=h.getCoinbaseOnRampUrl,exports.isSupportedChainIdForCoinbaseOnramp=h.isSupportedChainIdForCoinbaseOnramp,exports.toCoinbaseAssetId=h.toCoinbaseAssetId,exports.toCoinbaseBlockchainFromChainId=h.toCoinbaseBlockchainFromChainId,exports.SolanaClient=x.SolanaClient,exports.createSiwsMessage=C.createSiwsMessage,exports.getSolanaRpcEndpointForCluster=f.getSolanaRpcEndpointForCluster,exports.getSolanaUsdcMintAddressForCluster=P.getSolanaUsdcMintAddressForCluster,exports.getSolanaClusterDisplayName=S.getSolanaClusterDisplayName,exports.ALL_WALLET_CLIENT_TYPES=T.ALL_WALLET_CLIENT_TYPES,exports.SUPPORTED_CONNECTOR_TYPES=T.SUPPORTED_CONNECTOR_TYPES,exports.formatLamportsAmount=W.formatLamportsAmount,exports.formatTokenAmount=W.formatTokenAmount,exports.formatWalletAddress=W.formatWalletAddress,exports.formatWeiAmount=W.formatWeiAmount,exports.rpc=M.rpc,Object.defineProperty(exports,"getCountryCallingCode",{enumerable:!0,get:function(){return I.getCountryCallingCode}}),exports.delegatedActions=U.index,exports.crossApp=O.index,Object.keys(v).forEach((function(e){"default"===e||Object.prototype.hasOwnProperty.call(exports,e)||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return v[e]}})}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("
|
|
1
|
+
"use strict";var e=require("@privy-io/chains");const d={[e.mainnet.id]:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",[e.sepolia.id]:"0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238",[e.optimism.id]:"0x0b2c639c533813f4aa9d7837caf62653d097ff85",[e.optimismSepolia.id]:"0x5fd84259d66Cd46123540766Be93DFE6D43130D7",[e.polygon.id]:"0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",[e.polygonAmoy.id]:"0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582",[e.base.id]:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",[e.baseSepolia.id]:"0x036CbD53842c5426634e7929541eC2318f3dCF7e",[e.avalanche.id]:"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E",[e.avalancheFuji.id]:"0x5425890298aed601595a70ab815c96711a31bc65",[e.arbitrum.id]:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",[e.arbitrumSepolia.id]:"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d"};exports.UsdcAddressMap=d,exports.getIsTokenUsdc=function(e,c){return e===d[c.id]};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=/*#__PURE__*/e(require("canonicalize"));let a={method:"POST",path:"/v1/wallets/:wallet_id/rpc"};exports.rpc=async function(e,r,{wallet_id:i,...l}){let o={version:1,url:e.getCompiledPath(a,{params:{wallet_id:i}}),method:"POST",headers:{"privy-app-id":e.app.appId},body:{...l}},d=Buffer.from(t.default(o)).toString("base64"),{signature:p}=await r({message:d});return await e.fetchPrivyRoute(a,{body:l,params:{wallet_id:i},headers:{"privy-authorization-signature":p}})};
|
package/dist/dts/index.d.mts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import { Chain, RpcConfig } from '@privy-io/chains';
|
|
2
|
+
export * from '@privy-io/chains';
|
|
1
3
|
import * as _privy_io_public_api from '@privy-io/public-api';
|
|
2
|
-
import { PasskeyAuthenticateInputType, PrivyEthereumEmbeddedWalletAccount, PrivySolanaEmbeddedWalletAccount, PrivyUser, PrivySmartWalletConfigurationResponse, PrivyAuthenticatedUser, OAuthProviderType, SmartWalletType, CoinbaseOnRampInitInput, PrivyMoonpayOnRampSignInput, MfaPasskeyInitInputType, MfaSmsInitInputType, PrivyBitcoinSegwitEmbeddedWalletAccount as PrivyBitcoinSegwitEmbeddedWalletAccount$1, PrivyBitcoinTaprootEmbeddedWalletAccount as PrivyBitcoinTaprootEmbeddedWalletAccount$1, PrivySmartWalletAccount, PrivyCoinbaseOnRampInitResponse, PrivyCoinbaseOnRampInitInput } from '@privy-io/public-api';
|
|
4
|
+
import { PasskeyAuthenticateInputType, PrivyEthereumEmbeddedWalletAccount, PrivySolanaEmbeddedWalletAccount, PrivyUser, PrivySmartWalletConfigurationResponse, PrivyAuthenticatedUser, OAuthProviderType, SmartWalletType, CoinbaseOnRampInitInput, PrivyMoonpayOnRampSignInput, MfaPasskeyInitInputType, MfaSmsInitInputType, Route, PrivyBitcoinSegwitEmbeddedWalletAccount as PrivyBitcoinSegwitEmbeddedWalletAccount$1, PrivyBitcoinTaprootEmbeddedWalletAccount as PrivyBitcoinTaprootEmbeddedWalletAccount$1, PrivySmartWalletAccount, PrivyCoinbaseOnRampInitResponse, PrivyCoinbaseOnRampInitInput, WalletApiRpcResponseType, WalletApiRpcInputType } from '@privy-io/public-api';
|
|
3
5
|
export { BICONOMY, COINBASE_SMART_WALLET, KERNEL, LIGHT_ACCOUNT, OAuthProviderType, SAFE, SmartWalletType, THIRDWEB } from '@privy-io/public-api';
|
|
4
6
|
import EventEmitter from 'eventemitter3';
|
|
5
7
|
import { PrivyErrorCode } from '@privy-io/api-base';
|
|
@@ -14,65 +16,6 @@ import { BigNumber, BigNumberish } from '@ethersproject/bignumber';
|
|
|
14
16
|
import { UnsignedTransaction } from '@ethersproject/transactions';
|
|
15
17
|
import { Hex, TypedDataDefinition } from 'viem';
|
|
16
18
|
|
|
17
|
-
/**
|
|
18
|
-
* These types are fully compatible with WAGMI chain types, in case
|
|
19
|
-
* we need interop in the future.
|
|
20
|
-
*/
|
|
21
|
-
type RpcUrls = {
|
|
22
|
-
http: readonly string[];
|
|
23
|
-
webSocket?: readonly string[];
|
|
24
|
-
};
|
|
25
|
-
type NativeCurrency = {
|
|
26
|
-
name: string;
|
|
27
|
-
/** 2-6 characters long */
|
|
28
|
-
symbol: string;
|
|
29
|
-
decimals: number;
|
|
30
|
-
};
|
|
31
|
-
type BlockExplorer = {
|
|
32
|
-
name: string;
|
|
33
|
-
url: string;
|
|
34
|
-
};
|
|
35
|
-
type Unit = 'ether' | 'gwei' | 'wei' | number;
|
|
36
|
-
/** A subset of WAGMI's chain type
|
|
37
|
-
* https://github.com/wagmi-dev/references/blob/6aea7ee9c65cfac24f33173ab3c98176b8366f05/packages/chains/src/types.ts#L8
|
|
38
|
-
*/
|
|
39
|
-
type Chain = {
|
|
40
|
-
/** Id in number form */
|
|
41
|
-
id: number;
|
|
42
|
-
/** Human readable name */
|
|
43
|
-
name: string;
|
|
44
|
-
/** Internal network name */
|
|
45
|
-
network?: string;
|
|
46
|
-
/** Currency used by chain */
|
|
47
|
-
nativeCurrency: NativeCurrency;
|
|
48
|
-
/** Collection of block explorers */
|
|
49
|
-
blockExplorers?: {
|
|
50
|
-
[key: string]: BlockExplorer;
|
|
51
|
-
default: BlockExplorer;
|
|
52
|
-
};
|
|
53
|
-
/** Collection of RPC endpoints */
|
|
54
|
-
rpcUrls: {
|
|
55
|
-
[key: string]: RpcUrls;
|
|
56
|
-
default: RpcUrls;
|
|
57
|
-
};
|
|
58
|
-
/** Flag for test networks */
|
|
59
|
-
testnet?: boolean;
|
|
60
|
-
};
|
|
61
|
-
/**
|
|
62
|
-
* RPC overrides to support custom RPC URLs. Do not provide an RPC URL
|
|
63
|
-
* that can serve multiple networks. You should only provide RPC URLs that
|
|
64
|
-
* are specific to the network you'd like to override.
|
|
65
|
-
*/
|
|
66
|
-
type RpcConfig = {
|
|
67
|
-
/**
|
|
68
|
-
* Mapping of chainId to RPC URL. Overrides Privy default RPC URLs that are shared across projects. Set your own RPC URLs
|
|
69
|
-
* to avoid rate limits or other throughput bottlenecks.
|
|
70
|
-
*/
|
|
71
|
-
rpcUrls: {
|
|
72
|
-
[key: number]: string;
|
|
73
|
-
};
|
|
74
|
-
};
|
|
75
|
-
|
|
76
19
|
declare enum PrivyEmbeddedWalletErrorCode {
|
|
77
20
|
MISSING_OR_INVALID_PRIVY_APP_ID = "missing_or_invalid_privy_app_id",
|
|
78
21
|
MISSING_OR_INVALID_PRIVY_ACCOUNT_ID = "missing_or_invalid_privy_account_id",
|
|
@@ -908,41 +851,6 @@ declare class DelegatedWalletsApi {
|
|
|
908
851
|
revoke(): Promise<void>;
|
|
909
852
|
}
|
|
910
853
|
|
|
911
|
-
declare const chainDefs: {
|
|
912
|
-
readonly mainnet: Chain;
|
|
913
|
-
readonly goerli: Chain;
|
|
914
|
-
readonly sepolia: Chain;
|
|
915
|
-
readonly arbitrum: Chain;
|
|
916
|
-
readonly arbitrumGoerli: Chain;
|
|
917
|
-
readonly arbitrumSepolia: Chain;
|
|
918
|
-
readonly optimism: Chain;
|
|
919
|
-
readonly optimismGoerli: Chain;
|
|
920
|
-
readonly optimismSepolia: Chain;
|
|
921
|
-
readonly polygon: Chain;
|
|
922
|
-
readonly polygonMumbai: Chain;
|
|
923
|
-
readonly celo: Chain;
|
|
924
|
-
readonly celoAlfajores: Chain;
|
|
925
|
-
readonly filecoin: Chain;
|
|
926
|
-
readonly filecoinCalibration: Chain;
|
|
927
|
-
readonly base: Chain;
|
|
928
|
-
readonly baseGoerli: Chain;
|
|
929
|
-
readonly baseSepolia: Chain;
|
|
930
|
-
readonly linea: Chain;
|
|
931
|
-
readonly lineaTestnet: Chain;
|
|
932
|
-
readonly avalanche: Chain;
|
|
933
|
-
readonly avalancheFuji: Chain;
|
|
934
|
-
readonly holesky: Chain;
|
|
935
|
-
readonly redstone: Chain;
|
|
936
|
-
readonly garnetHolesky: Chain;
|
|
937
|
-
readonly redstoneHolesky: Chain;
|
|
938
|
-
readonly zora: Chain;
|
|
939
|
-
readonly zoraSepolia: Chain;
|
|
940
|
-
readonly zoraTestnet: Chain;
|
|
941
|
-
};
|
|
942
|
-
declare const DEFAULT_SUPPORTED_CHAINS: readonly [Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain, Chain];
|
|
943
|
-
declare const DEFAULT_SUPPORTED_CHAIN_IDS: Set<number>;
|
|
944
|
-
declare function getSupportedChainById(id: number): Chain | undefined;
|
|
945
|
-
|
|
946
854
|
type SignMessageRequestArguments = {
|
|
947
855
|
method: 'signMessage';
|
|
948
856
|
params: {
|
|
@@ -6796,29 +6704,6 @@ type PrivyOptions = {
|
|
|
6796
6704
|
* an unsupported network will throw an error.
|
|
6797
6705
|
*
|
|
6798
6706
|
* For embedded wallets, the wallet will automatically default to the first supplied `supportedChain`.
|
|
6799
|
-
*
|
|
6800
|
-
* Defaults to:
|
|
6801
|
-
* - mainnet
|
|
6802
|
-
* - goerli
|
|
6803
|
-
* - sepolia
|
|
6804
|
-
* - arbitrum
|
|
6805
|
-
* - arbitrumGoerli
|
|
6806
|
-
* - optimism
|
|
6807
|
-
* - optimismGoerli
|
|
6808
|
-
* - polygon
|
|
6809
|
-
* - polygonMumbai
|
|
6810
|
-
* - celo
|
|
6811
|
-
* - celoAlfajores
|
|
6812
|
-
* - filecoin
|
|
6813
|
-
* - filecoinCalibration
|
|
6814
|
-
* - base
|
|
6815
|
-
* - baseGoerli
|
|
6816
|
-
* - linea
|
|
6817
|
-
* - lineaTestnet
|
|
6818
|
-
* - avalanche
|
|
6819
|
-
* - avalancheFuji
|
|
6820
|
-
* - holesky
|
|
6821
|
-
* - redstoneHolesky
|
|
6822
6707
|
*/
|
|
6823
6708
|
supportedChains?: NonEmptyArray<Chain>;
|
|
6824
6709
|
};
|
|
@@ -6878,6 +6763,16 @@ declare class Privy {
|
|
|
6878
6763
|
setMessagePoster(poster: EmbeddedWalletMessagePoster): void;
|
|
6879
6764
|
getAccessToken(): Promise<string | null>;
|
|
6880
6765
|
getIdentityToken(): Promise<string | null>;
|
|
6766
|
+
getCompiledPath<const T extends Route<U, V>, const U, const V>(r: T, opts: {
|
|
6767
|
+
body?: T['body'];
|
|
6768
|
+
params?: Record<string, string | number>;
|
|
6769
|
+
headers?: HeadersInit;
|
|
6770
|
+
}): Promise<string>;
|
|
6771
|
+
fetchPrivyRoute<const T extends Route<U, V>, const U, const V>(r: T, opts: {
|
|
6772
|
+
body?: T['body'];
|
|
6773
|
+
params?: Record<string, string | number>;
|
|
6774
|
+
headers?: HeadersInit;
|
|
6775
|
+
}): Promise<NonNullable<T['response']>>;
|
|
6881
6776
|
}
|
|
6882
6777
|
|
|
6883
6778
|
declare class LocalStorage implements Storage {
|
|
@@ -7897,4 +7792,21 @@ declare namespace index {
|
|
|
7897
7792
|
export { type index_LinkWithCrossAppAuthDependencies as LinkWithCrossAppAuthDependencies, type index_LinkWithCrossAppAuthInput as LinkWithCrossAppAuthInput, type index_LinkWithCrossAppAuthOutput as LinkWithCrossAppAuthOutput, type index_LoginWithCrossAppAuthDependencies as LoginWithCrossAppAuthDependencies, type index_LoginWithCrossAppAuthInput as LoginWithCrossAppAuthInput, type index_LoginWithCrossAppAuthOutput as LoginWithCrossAppAuthOutput, index_linkWithCrossAppAuth as linkWithCrossAppAuth, index_loginWithCrossAppAuth as loginWithCrossAppAuth, index$1 as wallet };
|
|
7898
7793
|
}
|
|
7899
7794
|
|
|
7900
|
-
|
|
7795
|
+
type Input = WalletApiRpcInputType & {
|
|
7796
|
+
wallet_id: string;
|
|
7797
|
+
};
|
|
7798
|
+
/**
|
|
7799
|
+
* TODO: docs for this. Privy Wallet API rpc request logic.
|
|
7800
|
+
*
|
|
7801
|
+
* @param client
|
|
7802
|
+
* @param sign
|
|
7803
|
+
* @param param2
|
|
7804
|
+
* @returns
|
|
7805
|
+
*/
|
|
7806
|
+
declare function rpc(client: Privy, sign: (o: {
|
|
7807
|
+
message: string;
|
|
7808
|
+
}) => Promise<{
|
|
7809
|
+
signature: string;
|
|
7810
|
+
}>, { wallet_id, ...request }: Input): Promise<WalletApiRpcResponseType>;
|
|
7811
|
+
|
|
7812
|
+
export { ALL_WALLET_CLIENT_TYPES, type Cluster, type CoinbaseAssetId, type CoinbaseWalletClientType, type ConnectorType, type CreateSiwsMessageOpts, type EIP1193Provider, EmbeddedBitcoinWalletProvider, EmbeddedProviderError, type EmbeddedWalletClientType, type EmbeddedWalletConfig, type EmbeddedWalletRecoveryOptions, type EntropyIdVerifier, type ErrorMessageMap, type ExternalWallet, type ExternalWalletMetadata, type FundingMethod, type FundingProvider, InMemoryCache, type InjectedWalletClientType, LocalStorage, type LogLevel, type MfaMethod, type MfaPromise, type MfaSubmitArgs, type MfaSubmitPromise, MoonpayApiError, type MoonpayTransactionStatus, type MoonpayTransactionStatusResponse, type OnNeedsRecovery, type PaymentOption, type PreparedTransactionRequest, PrivyApiError, PrivyClientError, PrivyConnectorError, type PrivyEmbeddedSolanaWalletProvider, PrivyEmbeddedWalletErrorCode, type PrivyEmbeddedWalletProvider, PrivyProviderRpcError, ProviderErrors, type Quantity, QuantityToBigNumber, SUPPORTED_CONNECTOR_TYPES, type SetRecoveryInput, SolanaClient, type SolanaCluster, type Storage, type UnknownWalletClientType, type UnsignedTransactionRequest, type UnsignedTransactionRequestWithChainId, UsdcAddressMap, type WalletBranding, type WalletClientType, type WalletConnectWalletClientType, calculateTotalGasEstimate, chainToMoonpayCurrency, convertBigNumberish, countryCodesAndNumbers, createErrorFormatter, createSiwsMessage, index as crossApp, Privy as default, index$2 as delegatedActions, errorIndicatesMaxMfaRetries, errorIndicatesMfaCanceled, errorIndicatesMfaRateLimit, errorIndicatesMfaTimeout, errorIndicatesMfaVerificationFailed, errorIndicatesRecoveryIsNeeded, formatLamportsAmount, formatPhoneNumber, formatTokenAmount, formatWalletAddress, formatWeiAmount, fundingMethodToMoonpayPaymentMethod, getAllUserEmbeddedBitcoinWallets, getAllUserEmbeddedEthereumWallets, getAllUserEmbeddedSolanaWallets, getCoinbaseOnRampUrl, getEntropyDetailsFromAccount, getEntropyDetailsFromUser, getIsTokenUsdc, getJsonRpcEndpointFromChain, getPhoneCountryCodeAndNumber, getPlaceholderPhoneNumber, getSolanaClusterDisplayName, getSolanaRpcEndpointForCluster, getSolanaUsdcMintAddressForCluster, getUserEmbeddedEthereumWallet, getUserEmbeddedSolanaWallet, getUserEmbeddedWallet, getUserSmartWallet, isSupportedChainIdForCoinbaseOnramp, isSupportedChainIdForMoonpay, lastFourDigits, phoneNumberTypingFormatter, populateTransactionRequest, rpc, throwIfInvalidRecoveryUpgradePath, toCoinbaseAssetId, toCoinbaseBlockchainFromChainId, toEthersUnsignedTransaction, toObjectKeys, validatePhoneNumber };
|