superstack-wallet-sdk 0.5.3 → 0.5.4
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/esm/src/client.js +1 -1
- package/dist/esm/src/client.js.map +1 -1
- package/dist/esm/src/context.js.map +1 -1
- package/dist/esm/src/context_backup.js +2 -0
- package/dist/esm/src/context_backup.js.map +1 -0
- package/dist/esm/src/hooks.js +1 -1
- package/dist/esm/src/hooks.js.map +1 -1
- package/dist/esm/src/index.js +1 -1
- package/dist/esm/src/index.js.map +1 -1
- package/dist/esm/src/modal.js +1 -1
- package/dist/esm/src/modal.js.map +1 -1
- package/dist/esm/src/storage.js +1 -1
- package/dist/esm/src/storage.js.map +1 -1
- package/dist/esm/src/types.js.map +1 -1
- package/dist/esm/types/client.d.ts +7 -2
- package/dist/esm/types/context_backup.d.ts +28 -0
- package/dist/esm/types/hooks.d.ts +10 -1
- package/dist/esm/types/index.d.ts +1 -0
- package/dist/esm/types/modal.d.ts +2 -1
- package/dist/esm/types/storage.d.ts +4 -0
- package/dist/esm/types/types.d.ts +2 -1
- package/dist/index.cjs +123 -123
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +52 -8
- package/package.json +1 -1
package/dist/esm/src/client.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import t from"axios";import{Network as e,WalletType as a,isVersionedTransaction as r}from"./types.js";import{Storage as i}from"./storage.js";import{Connection as n,PublicKey as s,LAMPORTS_PER_SOL as o}from"@solana/web3.js";import l from"bs58";import{PhantomWalletAdapter as d}from"./adapters/phantom.js";import{v4 as h}from"uuid";import{getOnrampBuyUrl as c}from"./utils/coinbaseUtils.js";import{Buffer as u}from"../_virtual/_polyfill-node.buffer.js";import"./polyfills.js";import{createPublicClient as w}from"../node_modules/.pnpm/viem@2.37.8_bufferutil@4.0.9_typescript@5.9.2_utf-8-validate@5.0.10/node_modules/viem/_esm/clients/createPublicClient.js";import{http as p}from"../node_modules/.pnpm/viem@2.37.8_bufferutil@4.0.9_typescript@5.9.2_utf-8-validate@5.0.10/node_modules/viem/_esm/clients/transports/http.js";import{serializeSignature as m}from"../node_modules/.pnpm/viem@2.37.8_bufferutil@4.0.9_typescript@5.9.2_utf-8-validate@5.0.10/node_modules/viem/_esm/utils/signature/serializeSignature.js";import{formatEther as f}from"../node_modules/.pnpm/ethers@6.15.0_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/ethers/lib.esm/utils/units.js";class g{constructor(a){this.selectedWalletId=null,this.solanaConnection=null,this.ethereumProvider=null,this.walletInfo=null,this.phantomAdapter=null,this.walletType="embedded",this.ethereumNetwork=null,this.defaultNetwork=e.Solana,this.api=t.create({baseURL:a.baseURL,headers:{"Content-Type":"application/json"}}),this.middleAccountApi=t.create({baseURL:a.middleAccountBaseURL||"https://yeezy-payment-service-sit-a0dchfccbufeh5bx.z03.azurefd.net",headers:{"Content-Type":"application/json"}}),this.solanaCluster=a.solanaCluster,this.solanaConnection=new n(a.solanaCluster.rpcUrl),a.ethereumNetwork&&(this.ethereumNetwork={...a.ethereumNetwork,chainId:Number(a.ethereumNetwork.chainId)},this.ethereumProvider=w({transport:p(a.ethereumNetwork.rpcUrl)})),this.defaultNetwork=a.defaultNetwork||e.Solana}setWallet(t){this.walletInfo=t}setWalletType(t){this.walletType=t,i.saveWalletType(t)}getWallet(){return this.walletInfo}getPhantomAdapter(){return this.phantomAdapter}getWalletType(){return this.walletType}get wallet(){var t;return(null===(t=this.walletInfo)||void 0===t?void 0:t.wallets.find(t=>t.network===this.defaultNetwork))||null}get address(){var t;return(null===(t=this.wallet)||void 0===t?void 0:t.address)||null}get network(){var t;return(null===(t=this.wallet)||void 0===t?void 0:t.network)||null}get ethereumWallet(){var t,a;return(null===(t=this.walletInfo)||void 0===t?void 0:t.wallets.find(t=>t.address===i.getSwitchedAccountAddress()))||(null===(a=this.walletInfo)||void 0===a?void 0:a.wallets.find(t=>t.network===e.Ethereum&&"Main"===t.wallet_set))||null}get ethereumAddress(){var t;return(null===(t=this.ethereumWallet)||void 0===t?void 0:t.address)||null}get solanaWallet(){var t,a,r,n;const s=null===(a=null===(t=this.walletInfo)||void 0===t?void 0:t.wallets.find(t=>t.address===i.getSwitchedAccountAddress()))||void 0===a?void 0:a.wallet_set;return s?(null===(r=this.walletInfo)||void 0===r?void 0:r.wallets.find(t=>t.network===e.Solana&&t.wallet_set===s))||null:(null===(n=this.walletInfo)||void 0===n?void 0:n.wallets.find(t=>t.network===e.Solana&&"Main"===t.wallet_set))||null}get forwardSolanaWallet(){var t;return(null===(t=this.walletInfo)||void 0===t?void 0:t.wallets.find(t=>t.network===e.Solana&&"Forward-0"===t.wallet_set))||null}get forwardSolanaAddress(){var t;return(null===(t=this.forwardSolanaWallet)||void 0===t?void 0:t.address)||null}get forwardEthereumWallet(){var t;return(null===(t=this.walletInfo)||void 0===t?void 0:t.wallets.find(t=>t.network===e.Ethereum&&"Forward-0"===t.wallet_set))||null}get forwardEthereumAddress(){var t;return(null===(t=this.forwardEthereumWallet)||void 0===t?void 0:t.address)||null}get solanaAddress(){var t;return(null===(t=this.solanaWallet)||void 0===t?void 0:t.address)||null}get id(){var t;return(null===(t=this.walletInfo)||void 0===t?void 0:t.id)||null}get social_links(){var t;return(null===(t=this.walletInfo)||void 0===t?void 0:t.social_links)||null}async reconnect(){try{if("phantom"===i.getWalletType())return await this.connectPhantom();{const t=await this.getSession();return this.setWallet(t),t}}catch(t){return null}}async connectPhantom(){try{if(this.phantomAdapter||(this.phantomAdapter=new d),await this.phantomAdapter.connect(),!this.phantomAdapter.publicKey)throw new Error("Failed to connect to Phantom wallet");const t=this.phantomAdapter.publicKey.toString(),r={id:h(),is_exported:!1,address:t,network:e.Solana,type:a.Phantom,wallets:[{id:t,address:t,network:e.Solana,wallet_type:a.Phantom,wallet_set:"Main"}],social_links:[],social_infos:[],account_info:{name:null}};return this.setWallet(r),this.setWalletType("phantom"),r}catch(t){throw console.error("Phantom connect error:",t),new Error(t instanceof Error?t.message:"Failed to connect to Phantom wallet")}}async updateAccountName(t){if(!this.walletInfo)throw new Error("No wallet info");const e=await this.api.post("/account/update",{name:t},{withCredentials:!0});return this.walletInfo.account_info.name=t,e.data}async signSolanaTransaction(t){try{if(!this.walletInfo)throw new Error("No wallet info");if(!this.solanaConnection)throw new Error("No rpc connection");const{blockhash:a}=await this.solanaConnection.getLatestBlockhash();if(r(t)?t.message.recentBlockhash=a:t.recentBlockhash=a,this.phantomAdapter&&this.phantomAdapter.publicKey)return await this.phantomAdapter.signTransaction(t);const i=this.solanaWallet;if(!i)throw new Error("No solana wallet available");const n={user_id:this.walletInfo.id,address:i.address,network:e.Solana,tx:{Solana:l.encode(r(t)?t.message.serialize():t.serializeMessage())}},o=await this.api.post("/sign2",n,{withCredentials:!0}),{signature:d}=o.data;return t.addSignature(new s(i.address),u.from(l.decode(d))),t}catch(t){throw new Error(t instanceof Error?t.message:"Failed to sign transaction")}}async signEthereumEip712(t){if(!this.ethereumNetwork)throw new Error("No Ethereum network");if(!this.ethereumProvider)throw new Error("No Ethereum provider");if(!this.walletInfo)throw new Error("No wallet info");if(!this.ethereumAddress)throw new Error("No Ethereum address");const a={user_id:this.walletInfo.id,address:this.ethereumAddress,network:e.Ethereum,tx:{EthereumEip712:t}},r=await this.api.post("/sign2",a,{withCredentials:!0}),{signature:i}=r.data;return i}async sendSolanaTransaction(t){if(!this.solanaConnection)throw new Error("No rpc connection");try{return await this.solanaConnection.sendRawTransaction(t,{maxRetries:3,skipPreflight:!1})}catch(t){throw t}}async sendEthereumTransaction(t){if(!this.ethereumProvider)throw new Error("No Ethereum provider");try{return await this.ethereumProvider.sendRawTransaction({serializedTransaction:t})}catch(t){throw t}}async sendEmailVerificationCode(t){await this.api.post("/send_verification",{email:t})}async sendPhoneVerificationCode(t){t.startsWith("+")||(t=`+${t}`),await this.api.post("/send_verification",{phone:t,type:"phone"})}async verifyEmailVerificationCode({email:t,code:e}){const a={type:"Email",data:{network:this.defaultNetwork,email:t,code:e}},r=(await this.api.post("/login",a,{withCredentials:!0})).data;return this.setWallet(r),this.setWalletType("embedded"),r}async verifyPhoneVerificationCode({phone:t,code:e}){const a={type:"Phone",data:{network:this.defaultNetwork,phone:t,code:e}},r=(await this.api.post("/login",a,{withCredentials:!0})).data;return this.setWallet(r),this.setWalletType("embedded"),r}async twitterLogin(t){const e={type:"TwitterOAuth",data:{network:this.defaultNetwork,...t}},a=(await this.api.post("/login",e,{withCredentials:!0})).data;return this.setWallet(a),this.setWalletType("embedded"),a}async googleLogin(t){const e={type:"GoogleOAuth",data:{network:this.defaultNetwork,...t}},a=(await this.api.post("/login",e,{withCredentials:!0})).data;return this.setWallet(a),this.setWalletType("embedded"),a}async oauthLogin(t,e){const a={type:t,data:{network:e.network||this.defaultNetwork,...e}},r=(await this.api.post("/login",a,{withCredentials:!0})).data;return this.setWallet(r),this.setWalletType("embedded"),r}async loginWithChallenge(t,e){const a={type:t,data:{network:e.network||this.defaultNetwork,...e}},r=(await this.api.post("/login",a,{withCredentials:!0})).data;return this.setWallet(r),this.setWalletType("embedded"),r}async oauthInit(t){return(await this.api.post("/oauth/init",t)).data}async getSignChallenge(t){return(await this.api.get(`/challenge?method=${t.method}&id=${t.id}`)).data}async getSession(){const t=(await this.api.get("/session",{withCredentials:!0})).data,{access_token:e,...a}=t;return e&&i.saveAccessToken(e),t}async logout(){this.phantomAdapter?(this.phantomAdapter.disconnect(),this.phantomAdapter=null):await this.api.post("/logout",{},{withCredentials:!0}),this.setWallet(null),i.clear()}async getOAuth2ClientId(t){return(await this.api.get(`/oauth_id/${t}`)).data.client_id}setSelectedWallet(t){this.selectedWalletId=t}getSelectedWallet(){return this.selectedWalletId}async getSolanaBalance(){if(!this.solanaConnection||!this.solanaAddress)throw new Error("Solana connection not available");return(await this.solanaConnection.getBalance(new s(this.solanaAddress))/o).toString()}async getEthereumBalance(){if(!this.ethereumProvider||!this.ethereumAddress)throw new Error("Ethereum provider not available");const t=await this.ethereumProvider.getBalance({address:this.ethereumAddress});return f(t)}async fetchCoinbaseToken(t,e="solana"){return(await this.api.post("/ramp/coinbase",{addresses:[{address:t,blockchains:[e]}],assets:["solana"===e?"SOL":"ETH"]})).data.token}viemSignerAdapter(){return{signTypedData:async t=>{if(!this.ethereumNetwork)throw new Error("No Ethereum network");if(!this.ethereumProvider)throw new Error("No Ethereum provider");if(!this.walletInfo)throw new Error("No wallet info");if(!this.ethereumAddress)throw new Error("No Ethereum address");const a={user_id:this.walletInfo.id,address:this.ethereumAddress,network:e.Ethereum,tx:{EthereumEip712:t}},r=await this.api.post("/sign2",a,{withCredentials:!0}),{signature:i}=r.data,n=l.decode(i),s=n[64];return m({r:`0x${u.from(n.slice(0,32)).toString("hex")}`,s:`0x${u.from(n.slice(32,64)).toString("hex")}`,v:BigInt(s+27)})}}}async createMiddleAccount(t){try{return(await this.middleAccountApi.post("/create",t)).data}catch(t){throw new Error(t instanceof Error?t.message:"Failed to create middle account")}}async getCoinbaseOnrampUrlForMiddleAccount(t){try{const a={sessionToken:await this.fetchCoinbaseToken(t.middleAccountAddress,t.network===e.Solana?"solana":"ethereum"),presetCryptoAmount:Number(t.amount),redirectUrl:t.redirectUrl||window.location.href};return c(a)}catch(t){throw new Error(t instanceof Error?t.message:"Failed to get Coinbase onramp URL")}}async getOrderState(t){try{return(await this.middleAccountApi.get(`/order/${t}`)).data}catch(t){throw new Error(t instanceof Error?t.message:"Failed to get order status")}}async transfer(t){var e,a;if(!this.walletInfo)throw new Error("No wallet info available");const r={user_id:this.walletInfo.id,from:t.from,to:t.to,amount:t.amount,decimals:t.decimals,token:t.token,network:t.network,chain_id:t.chain_id};try{return(await this.api.post("/transfer",r,{withCredentials:!0})).data}catch(t){if(null===(a=null===(e=t.response)||void 0===e?void 0:e.data)||void 0===a?void 0:a.error)throw new Error(t.response.data.error);throw new Error(t instanceof Error?t.message:"Transfer failed")}}async buildTransaction(t){var e,a;try{return(await this.api.post("/build_transaction",t,{withCredentials:!0})).data}catch(t){if(null===(a=null===(e=t.response)||void 0===e?void 0:e.data)||void 0===a?void 0:a.error)throw new Error(t.response.data.error);throw new Error(t instanceof Error?t.message:"Failed to build transaction")}}async getCrossMarginGeneralInfo(){return(await this.api.get("/crossmargin/general_info")).data}async getCrossMarginBorrowQuote(t){return(await this.api.post("/crossmargin/borrow/quote",t,{withCredentials:!0})).data}async borrowCrossMargin(t){return(await this.api.post("/crossmargin/borrow",t,{withCredentials:!0})).data}async getCrossMarginRepayQuote(t){return(await this.api.post("/crossmargin/repay/quote",t,{withCredentials:!0})).data}async repayCrossMargin(t){return(await this.api.post("/crossmargin/repay",t,{withCredentials:!0})).data}async adjustCrossMarginMargin(t){return(await this.api.post("/crossmargin/margin",t,{withCredentials:!0})).data}async getCrossMarginOpenPositions(){return(await this.api.get("/crossmargin/positions",{withCredentials:!0})).data}async getCrossMarginHistory(){return(await this.api.get("/crossmargin/history",{withCredentials:!0})).data}}export{g as WalletClient};
|
|
1
|
+
import t from"axios";import{Network as e,WalletType as a,isVersionedTransaction as r}from"./types.js";import{Storage as i}from"./storage.js";import{Connection as s,PublicKey as n,LAMPORTS_PER_SOL as o}from"@solana/web3.js";import l from"bs58";import{PhantomWalletAdapter as d}from"./adapters/phantom.js";import{v4 as h}from"uuid";import{getOnrampBuyUrl as c}from"./utils/coinbaseUtils.js";import{Buffer as u}from"../_virtual/_polyfill-node.buffer.js";import"./polyfills.js";import{createPublicClient as w}from"../node_modules/.pnpm/viem@2.37.8_bufferutil@4.0.9_typescript@5.9.2_utf-8-validate@5.0.10/node_modules/viem/_esm/clients/createPublicClient.js";import{http as p}from"../node_modules/.pnpm/viem@2.37.8_bufferutil@4.0.9_typescript@5.9.2_utf-8-validate@5.0.10/node_modules/viem/_esm/clients/transports/http.js";import{serializeSignature as m}from"../node_modules/.pnpm/viem@2.37.8_bufferutil@4.0.9_typescript@5.9.2_utf-8-validate@5.0.10/node_modules/viem/_esm/utils/signature/serializeSignature.js";import{formatEther as f}from"../node_modules/.pnpm/ethers@6.15.0_bufferutil@4.0.9_utf-8-validate@5.0.10/node_modules/ethers/lib.esm/utils/units.js";class g{constructor(a){this.selectedWalletId=null,this.solanaConnection=null,this.ethereumProvider=null,this.walletInfo=null,this.phantomAdapter=null,this.walletType="embedded",this.backupWalletType="embedded_backup",this.ethereumNetwork=null,this.defaultNetwork=e.Solana,this.api=t.create({baseURL:a.baseURL,headers:{"Content-Type":"application/json"}}),this.middleAccountApi=t.create({baseURL:a.middleAccountBaseURL||"https://yeezy-payment-service-sit-a0dchfccbufeh5bx.z03.azurefd.net",headers:{"Content-Type":"application/json"}}),this.solanaCluster=a.solanaCluster,this.solanaConnection=new s(a.solanaCluster.rpcUrl),a.ethereumNetwork&&(this.ethereumNetwork={...a.ethereumNetwork,chainId:Number(a.ethereumNetwork.chainId)},this.ethereumProvider=w({transport:p(a.ethereumNetwork.rpcUrl)})),this.defaultNetwork=a.defaultNetwork||e.Solana}setWallet(t){this.walletInfo=t}setWalletType(t){this.walletType=t,i.saveWalletType(t)}setBackupWalletType(t){this.backupWalletType=t,i.saveBackupWalletType(t),console.log(33)}getWallet(){return this.walletInfo}getPhantomAdapter(){return this.phantomAdapter}getWalletType(){return this.walletType}getBackupWalletType(){return this.backupWalletType}get wallet(){var t;return(null===(t=this.walletInfo)||void 0===t?void 0:t.wallets.find(t=>t.network===this.defaultNetwork))||null}get address(){var t;return(null===(t=this.wallet)||void 0===t?void 0:t.address)||null}get network(){var t;return(null===(t=this.wallet)||void 0===t?void 0:t.network)||null}get ethereumWallet(){var t,a;return(null===(t=this.walletInfo)||void 0===t?void 0:t.wallets.find(t=>t.address===i.getSwitchedAccountAddress()))||(null===(a=this.walletInfo)||void 0===a?void 0:a.wallets.find(t=>t.network===e.Ethereum&&"Main"===t.wallet_set))||null}get ethereumAddress(){var t;return(null===(t=this.ethereumWallet)||void 0===t?void 0:t.address)||null}get solanaWallet(){var t,a,r,s;const n=null===(a=null===(t=this.walletInfo)||void 0===t?void 0:t.wallets.find(t=>t.address===i.getSwitchedAccountAddress()))||void 0===a?void 0:a.wallet_set;return n?(null===(r=this.walletInfo)||void 0===r?void 0:r.wallets.find(t=>t.network===e.Solana&&t.wallet_set===n))||null:(null===(s=this.walletInfo)||void 0===s?void 0:s.wallets.find(t=>t.network===e.Solana&&"Main"===t.wallet_set))||null}get forwardSolanaWallet(){var t;return(null===(t=this.walletInfo)||void 0===t?void 0:t.wallets.find(t=>t.network===e.Solana&&"Forward-0"===t.wallet_set))||null}get forwardSolanaAddress(){var t;return(null===(t=this.forwardSolanaWallet)||void 0===t?void 0:t.address)||null}get forwardEthereumWallet(){var t;return(null===(t=this.walletInfo)||void 0===t?void 0:t.wallets.find(t=>t.network===e.Ethereum&&"Forward-0"===t.wallet_set))||null}get forwardEthereumAddress(){var t;return(null===(t=this.forwardEthereumWallet)||void 0===t?void 0:t.address)||null}get solanaAddress(){var t;return(null===(t=this.solanaWallet)||void 0===t?void 0:t.address)||null}get id(){var t;return(null===(t=this.walletInfo)||void 0===t?void 0:t.id)||null}get social_links(){var t;return(null===(t=this.walletInfo)||void 0===t?void 0:t.social_links)||null}async reconnect(t){try{if(i.getWalletType()==="phantom"+(t?"_backup":""))return await this.connectPhantom();if(!t){const t=await this.getSession();return this.setWallet(t),t}return null}catch(t){return null}}async connectPhantom(){try{if(this.phantomAdapter||(this.phantomAdapter=new d),await this.phantomAdapter.connect(),!this.phantomAdapter.publicKey)throw new Error("Failed to connect to Phantom wallet");const t=this.phantomAdapter.publicKey.toString(),r={id:h(),is_exported:!1,address:t,network:e.Solana,type:a.Phantom,wallets:[{id:t,address:t,network:e.Solana,wallet_type:a.Phantom,wallet_set:"Main"}],social_links:[],social_infos:[],account_info:{name:null}};return this.setWallet(r),this.setWalletType("phantom"),r}catch(t){throw console.error("Phantom connect error:",t),new Error(t instanceof Error?t.message:"Failed to connect to Phantom wallet")}}async updateAccountName(t){if(!this.walletInfo)throw new Error("No wallet info");const e=await this.api.post("/account/update",{name:t},{withCredentials:!0});return this.walletInfo.account_info.name=t,e.data}async signSolanaTransaction(t){try{if(!this.walletInfo)throw new Error("No wallet info");if(!this.solanaConnection)throw new Error("No rpc connection");const{blockhash:a}=await this.solanaConnection.getLatestBlockhash();if(r(t)?t.message.recentBlockhash=a:t.recentBlockhash=a,this.phantomAdapter&&this.phantomAdapter.publicKey)return await this.phantomAdapter.signTransaction(t);const i=this.solanaWallet;if(!i)throw new Error("No solana wallet available");const s={user_id:this.walletInfo.id,address:i.address,network:e.Solana,tx:{Solana:l.encode(r(t)?t.message.serialize():t.serializeMessage())}},o=await this.api.post("/sign2",s,{withCredentials:!0}),{signature:d}=o.data;return t.addSignature(new n(i.address),u.from(l.decode(d))),t}catch(t){throw new Error(t instanceof Error?t.message:"Failed to sign transaction")}}async signEthereumEip712(t){if(!this.ethereumNetwork)throw new Error("No Ethereum network");if(!this.ethereumProvider)throw new Error("No Ethereum provider");if(!this.walletInfo)throw new Error("No wallet info");if(!this.ethereumAddress)throw new Error("No Ethereum address");const a={user_id:this.walletInfo.id,address:this.ethereumAddress,network:e.Ethereum,tx:{EthereumEip712:t}},r=await this.api.post("/sign2",a,{withCredentials:!0}),{signature:i}=r.data;return i}async sendSolanaTransaction(t){if(!this.solanaConnection)throw new Error("No rpc connection");try{return await this.solanaConnection.sendRawTransaction(t,{maxRetries:3,skipPreflight:!1})}catch(t){throw t}}async sendEthereumTransaction(t){if(!this.ethereumProvider)throw new Error("No Ethereum provider");try{return await this.ethereumProvider.sendRawTransaction({serializedTransaction:t})}catch(t){throw t}}async sendEmailVerificationCode(t){await this.api.post("/send_verification",{email:t})}async sendPhoneVerificationCode(t){t.startsWith("+")||(t=`+${t}`),await this.api.post("/send_verification",{phone:t,type:"phone"})}async verifyEmailVerificationCode({email:t,code:e}){const a={type:"Email",data:{network:this.defaultNetwork,email:t,code:e}},r=(await this.api.post("/login",a,{withCredentials:!0})).data;return this.setWallet(r),this.setWalletType("embedded"),r}async verifyPhoneVerificationCode({phone:t,code:e}){const a={type:"Phone",data:{network:this.defaultNetwork,phone:t,code:e}},r=(await this.api.post("/login",a,{withCredentials:!0})).data;return this.setWallet(r),this.setWalletType("embedded"),r}async twitterLogin(t){const e={type:"TwitterOAuth",data:{network:this.defaultNetwork,...t}},a=(await this.api.post("/login",e,{withCredentials:!0})).data;return this.setWallet(a),this.setWalletType("embedded"),a}async googleLogin(t){const e={type:"GoogleOAuth",data:{network:this.defaultNetwork,...t}},a=(await this.api.post("/login",e,{withCredentials:!0})).data;return this.setWallet(a),this.setWalletType("embedded"),a}async oauthLogin(t,e){const a={type:t,data:{network:e.network||this.defaultNetwork,...e}},r=(await this.api.post("/login",a,{withCredentials:!0})).data;return this.setWallet(r),e.isBackup?this.setBackupWalletType("embedded_backup"):this.setWalletType("embedded"),r}async loginWithChallenge(t,e){const a={type:t,data:{network:e.network||this.defaultNetwork,...e}},r=(await this.api.post("/login",a,{withCredentials:!0})).data;return this.setWallet(r),console.log(11),e.isBackup?(console.log(22),this.setBackupWalletType("embedded_backup")):this.setWalletType("embedded"),r}async oauthInit(t){return(await this.api.post("/oauth/init",t)).data}async getSignChallenge(t){return(await this.api.get(`/challenge?method=${t.method}&id=${t.id}`)).data}async getSession(){const t=(await this.api.get("/session",{withCredentials:!0})).data,{access_token:e,...a}=t;return e&&i.saveAccessToken(e),t}async logout(t){this.phantomAdapter?(this.phantomAdapter.disconnect(),this.phantomAdapter=null):await this.api.post("/logout",{},{withCredentials:!0}),this.setWallet(null),t?i.clearBackup():i.clear()}async getOAuth2ClientId(t){return(await this.api.get(`/oauth_id/${t}`)).data.client_id}setSelectedWallet(t){this.selectedWalletId=t}getSelectedWallet(){return this.selectedWalletId}async getSolanaBalance(){if(!this.solanaConnection||!this.solanaAddress)throw new Error("Solana connection not available");return(await this.solanaConnection.getBalance(new n(this.solanaAddress))/o).toString()}async getEthereumBalance(){if(!this.ethereumProvider||!this.ethereumAddress)throw new Error("Ethereum provider not available");const t=await this.ethereumProvider.getBalance({address:this.ethereumAddress});return f(t)}async fetchCoinbaseToken(t,e="solana"){return(await this.api.post("/ramp/coinbase",{addresses:[{address:t,blockchains:[e]}],assets:["solana"===e?"SOL":"ETH"]})).data.token}viemSignerAdapter(){return{signTypedData:async t=>{if(!this.ethereumNetwork)throw new Error("No Ethereum network");if(!this.ethereumProvider)throw new Error("No Ethereum provider");if(!this.walletInfo)throw new Error("No wallet info");if(!this.ethereumAddress)throw new Error("No Ethereum address");const a={user_id:this.walletInfo.id,address:this.ethereumAddress,network:e.Ethereum,tx:{EthereumEip712:t}},r=await this.api.post("/sign2",a,{withCredentials:!0}),{signature:i}=r.data,s=l.decode(i),n=s[64];return m({r:`0x${u.from(s.slice(0,32)).toString("hex")}`,s:`0x${u.from(s.slice(32,64)).toString("hex")}`,v:BigInt(n+27)})}}}async createMiddleAccount(t){try{return(await this.middleAccountApi.post("/create",t)).data}catch(t){throw new Error(t instanceof Error?t.message:"Failed to create middle account")}}async getCoinbaseOnrampUrlForMiddleAccount(t){try{const a={sessionToken:await this.fetchCoinbaseToken(t.middleAccountAddress,t.network===e.Solana?"solana":"ethereum"),presetCryptoAmount:Number(t.amount),redirectUrl:t.redirectUrl||window.location.href};return c(a)}catch(t){throw new Error(t instanceof Error?t.message:"Failed to get Coinbase onramp URL")}}async getOrderState(t){try{return(await this.middleAccountApi.get(`/order/${t}`)).data}catch(t){throw new Error(t instanceof Error?t.message:"Failed to get order status")}}async transfer(t){var e,a;if(!this.walletInfo)throw new Error("No wallet info available");const r={user_id:this.walletInfo.id,from:t.from,to:t.to,amount:t.amount,decimals:t.decimals,token:t.token,network:t.network,chain_id:t.chain_id};try{return(await this.api.post("/transfer",r,{withCredentials:!0})).data}catch(t){if(null===(a=null===(e=t.response)||void 0===e?void 0:e.data)||void 0===a?void 0:a.error)throw new Error(t.response.data.error);throw new Error(t instanceof Error?t.message:"Transfer failed")}}async buildTransaction(t){var e,a;try{return(await this.api.post("/build_transaction",t,{withCredentials:!0})).data}catch(t){if(null===(a=null===(e=t.response)||void 0===e?void 0:e.data)||void 0===a?void 0:a.error)throw new Error(t.response.data.error);throw new Error(t instanceof Error?t.message:"Failed to build transaction")}}async getCrossMarginGeneralInfo(){return(await this.api.get("/crossmargin/general_info")).data}async getCrossMarginBorrowQuote(t){return(await this.api.post("/crossmargin/borrow/quote",t,{withCredentials:!0})).data}async borrowCrossMargin(t){return(await this.api.post("/crossmargin/borrow",t,{withCredentials:!0})).data}async getCrossMarginRepayQuote(t){return(await this.api.post("/crossmargin/repay/quote",t,{withCredentials:!0})).data}async repayCrossMargin(t){return(await this.api.post("/crossmargin/repay",t,{withCredentials:!0})).data}async adjustCrossMarginMargin(t){return(await this.api.post("/crossmargin/margin",t,{withCredentials:!0})).data}async getCrossMarginOpenPositions(){return(await this.api.get("/crossmargin/positions",{withCredentials:!0})).data}async getCrossMarginHistory(){return(await this.api.get("/crossmargin/history",{withCredentials:!0})).data}}export{g as WalletClient};
|
|
2
2
|
//# sourceMappingURL=client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sources":["../../../../src/client.ts"],"sourcesContent":[null],"names":["WalletClient","constructor","config","this","selectedWalletId","solanaConnection","ethereumProvider","walletInfo","phantomAdapter","walletType","ethereumNetwork","defaultNetwork","Network","Solana","api","axios","create","baseURL","headers","middleAccountApi","middleAccountBaseURL","solanaCluster","Connection","rpcUrl","chainId","Number","createPublicClient","transport","http","setWallet","wallet","setWalletType","type","Storage","saveWalletType","getWallet","getPhantomAdapter","getWalletType","_a","wallets","find","network","address","ethereumWallet","getSwitchedAccountAddress","_b","Ethereum","wallet_set","ethereumAddress","solanaWallet","_c","_d","forwardSolanaWallet","forwardSolanaAddress","forwardEthereumWallet","forwardEthereumAddress","solanaAddress","id","social_links","reconnect","connectPhantom","getSession","error","PhantomWalletAdapter","connect","publicKey","Error","toString","uuidv4","is_exported","WalletType","Phantom","wallet_type","social_infos","account_info","name","console","message","updateAccountName","response","post","withCredentials","data","signSolanaTransaction","transaction","blockhash","getLatestBlockhash","isVersionedTransaction","recentBlockhash","signTransaction","signRequest","user_id","tx","bs58","encode","serialize","serializeMessage","signature","addSignature","PublicKey","Buffer","from","decode","signEthereumEip712","params","EthereumEip712","sendSolanaTransaction","sendRawTransaction","maxRetries","skipPreflight","sendEthereumTransaction","signedTransaction","serializedTransaction","sendEmailVerificationCode","email","sendPhoneVerificationCode","phone","startsWith","verifyEmailVerificationCode","code","verifyPhoneVerificationCode","twitterLogin","googleLogin","oauthLogin","loginWithChallenge","oauthInit","getSignChallenge","get","method","access_token","rest","saveAccessToken","logout","disconnect","clear","getOAuth2ClientId","provider","client_id","setSelectedWallet","walletId","getSelectedWallet","getSolanaBalance","getBalance","LAMPORTS_PER_SOL","getEthereumBalance","balance","ethers.formatEther","fetchCoinbaseToken","blockchain","addresses","blockchains","assets","token","viemSignerAdapter","signTypedData","async","signatureBytes","recId","signatureToHex","r","slice","s","v","BigInt","createMiddleAccount","request","getCoinbaseOnrampUrlForMiddleAccount","sessionToken","middleAccountAddress","presetCryptoAmount","amount","redirectUrl","window","location","href","getOnrampBuyUrl","getOrderState","orderId","transfer","transferRequest","to","decimals","chain_id","buildTransaction","getCrossMarginGeneralInfo","getCrossMarginBorrowQuote","payload","borrowCrossMargin","getCrossMarginRepayQuote","repayCrossMargin","adjustCrossMarginMargin","getCrossMarginOpenPositions","getCrossMarginHistory"],"mappings":"uoCA4EaA,EAcT,WAAAC,CAAYC,GAXJC,KAAAC,iBAAkC,KAClCD,KAAAE,iBAAsC,KAEtCF,KAAAG,iBAAwC,KACxCH,KAAAI,WAAgC,KAChCJ,KAAAK,eAA8C,KAC9CL,KAAAM,WAAqC,WAErCN,KAAAO,gBAA0C,KAC1CP,KAAAQ,eAA0BC,EAAQC,OAGtCV,KAAKW,IAAMC,EAAMC,OAAO,CACpBC,QAASf,EAAOe,QAChBC,QAAS,CACL,eAAgB,sBAIxBf,KAAKgB,iBAAmBJ,EAAMC,OAAO,CACjCC,QAASf,EAAOkB,sBAAwB,qEACxCF,QAAS,CACL,eAAgB,sBAexBf,KAAKkB,cAAgBnB,EAAOmB,cAC5BlB,KAAKE,iBAAmB,IAAIiB,EAAWpB,EAAOmB,cAAcE,QAExDrB,EAAOQ,kBAEPP,KAAKO,gBAAkB,IAChBR,EAAOQ,gBACVc,QAASC,OAAOvB,EAAOQ,gBAAgBc,UAO3CrB,KAAKG,iBAAmBoB,EAAmB,CACvCC,UAAWC,EAAK1B,EAAOQ,gBAAgBa,WAI/CpB,KAAKQ,eAAiBT,EAAOS,gBAAkBC,EAAQC,MAC3D,CAEQ,SAAAgB,CAAUC,GACd3B,KAAKI,WAAauB,CACtB,CAEQ,aAAAC,CAAcC,GAClB7B,KAAKM,WAAauB,EAClBC,EAAQC,eAAeF,EAC3B,CAEA,SAAAG,GACI,OAAOhC,KAAKI,UAChB,CAEA,iBAAA6B,GACI,OAAOjC,KAAKK,cAChB,CAEA,aAAA6B,GACI,OAAOlC,KAAKM,UAChB,CAEA,UAAIqB,SACA,eAAOQ,EAAAnC,KAAKI,iCAAYgC,QAAQC,KAAMV,GAAWA,EAAOW,UAAYtC,KAAKQ,kBAAmB,IAChG,CAEA,WAAI+B,SACA,OAAkB,UAAXvC,KAAK2B,cAAM,IAAAQ,OAAA,EAAAA,EAAEI,UAAW,IACnC,CAEA,WAAID,SACA,OAAkB,UAAXtC,KAAK2B,cAAM,IAAAQ,OAAA,EAAAA,EAAEG,UAAW,IACnC,CAEA,kBAAIE,WACA,OACmB,QAAfL,EAAAnC,KAAKI,kBAAU,IAAA+B,OAAA,EAAAA,EAAEC,QAAQC,KAAMV,GAAWA,EAAOY,UAAYT,EAAQW,gCACtD,QAAfC,EAAA1C,KAAKI,kBAAU,IAAAsC,OAAA,EAAAA,EAAEN,QAAQC,KAAMV,GAAWA,EAAOW,UAAY7B,EAAQkC,UAAkC,SAAtBhB,EAAOiB,cACxF,IAER,CAEA,mBAAIC,SACA,OAA0B,UAAnB7C,KAAKwC,sBAAc,IAAAL,OAAA,EAAAA,EAAEI,UAAW,IAC3C,CAEA,gBAAIO,eACA,MAAMF,EAA8G,QAAjGF,EAAe,QAAfP,EAAAnC,KAAKI,kBAAU,IAAA+B,OAAA,EAAAA,EAAEC,QAAQC,KAAMV,GAAWA,EAAOY,UAAYT,EAAQW,oCAA4B,IAAAC,OAAA,EAAAA,EAAEE,WACtH,OAAIA,GACsB,QAAfG,EAAA/C,KAAKI,kBAAU,IAAA2C,OAAA,EAAAA,EAAEX,QAAQC,KAAMV,GAAWA,EAAOW,UAAY7B,EAAQC,QAAUiB,EAAOiB,aAAeA,KAAe,MAEzG,QAAfI,EAAAhD,KAAKI,kBAAU,IAAA4C,OAAA,EAAAA,EAAEZ,QAAQC,KAAMV,GAAWA,EAAOW,UAAY7B,EAAQC,QAAgC,SAAtBiB,EAAOiB,cAA0B,IAC3H,CAEA,uBAAIK,SACA,OAAsB,QAAfd,EAAAnC,KAAKI,kBAAU,IAAA+B,OAAA,EAAAA,EAAEC,QAAQC,KAAMV,GAAWA,EAAOW,UAAY7B,EAAQC,QAAgC,cAAtBiB,EAAOiB,cAA+B,IAChI,CAEA,wBAAIM,SACA,OAA+B,UAAxBlD,KAAKiD,2BAAmB,IAAAd,OAAA,EAAAA,EAAEI,UAAW,IAChD,CAEA,yBAAIY,SACA,OAAsB,QAAfhB,EAAAnC,KAAKI,kBAAU,IAAA+B,OAAA,EAAAA,EAAEC,QAAQC,KAAMV,GAAWA,EAAOW,UAAY7B,EAAQkC,UAAkC,cAAtBhB,EAAOiB,cAA+B,IAClI,CAEA,0BAAIQ,SACA,OAAiC,UAA1BpD,KAAKmD,6BAAqB,IAAAhB,OAAA,EAAAA,EAAEI,UAAW,IAClD,CAEA,iBAAIc,SACA,OAAwB,UAAjBrD,KAAK8C,oBAAY,IAAAX,OAAA,EAAAA,EAAEI,UAAW,IACzC,CAEA,MAAIe,SACA,OAAsB,UAAftD,KAAKI,kBAAU,IAAA+B,OAAA,EAAAA,EAAEmB,KAAM,IAClC,CAEA,gBAAIC,SACA,OAAsB,UAAfvD,KAAKI,kBAAU,IAAA+B,OAAA,EAAAA,EAAEoB,eAAgB,IAC5C,CAEA,eAAMC,GAEF,IAEI,GAAmB,YADA1B,EAAQI,gBAEvB,aAAalC,KAAKyD,iBACf,CACH,MAAM9B,QAAe3B,KAAK0D,aAE1B,OADA1D,KAAK0B,UAAUC,GACRA,CACX,CACJ,CAAE,MAAOgC,GAEL,OAAO,IACX,CACJ,CAEA,oBAAMF,GACF,IAQI,GAPKzD,KAAKK,iBACNL,KAAKK,eAAiB,IAAIuD,SAIxB5D,KAAKK,eAAewD,WAErB7D,KAAKK,eAAeyD,UACrB,MAAM,IAAIC,MAAM,uCAIpB,MAAMD,EAAY9D,KAAKK,eAAeyD,UAAUE,WAG1CrC,EAAS,CACX2B,GAFOW,IAGPC,aAAa,EACb3B,QAASuB,EACTxB,QAAS7B,EAAQC,OACjBmB,KAAMsC,EAAWC,QACjBhC,QAAS,CACL,CACIkB,GAAIQ,EACJvB,QAASuB,EACTxB,QAAS7B,EAAQC,OACjB2D,YAAaF,EAAWC,QACxBxB,WAAY,SAGpBW,aAAc,GACde,aAAc,GACdC,aAAc,CACVC,KAAM,OAMd,OAHAxE,KAAK0B,UAAUC,GACf3B,KAAK4B,cAAc,WAEZD,CACX,CAAE,MAAOgC,GAEL,MADAc,QAAQd,MAAM,yBAA0BA,GAClC,IAAII,MAAMJ,aAAiBI,MAAQJ,EAAMe,QAAU,sCAC7D,CACJ,CAEA,uBAAMC,CAAkBH,GACpB,IAAKxE,KAAKI,WACN,MAAM,IAAI2D,MAAM,kBAEpB,MAAMa,QAAiB5E,KAAKW,IAAIkE,KAC5B,kBACA,CACIL,QAEJ,CACIM,iBAAiB,IAIzB,OADA9E,KAAKI,WAAWmE,aAAaC,KAAOA,EAC7BI,EAASG,IACpB,CAEA,2BAAMC,CAAsBC,GACxB,IACI,IAAKjF,KAAKI,WACN,MAAM,IAAI2D,MAAM,kBAEpB,IAAK/D,KAAKE,iBACN,MAAM,IAAI6D,MAAM,qBAIpB,MAAMmB,UAAEA,SAAoBlF,KAAKE,iBAAiBiF,qBAQlD,GAPIC,EAAuBH,GACvBA,EAAYP,QAAQW,gBAAkBH,EAEtCD,EAAYI,gBAAkBH,EAI9BlF,KAAKK,gBAAkBL,KAAKK,eAAeyD,UAC3C,aAAa9D,KAAKK,eAAeiF,gBAAgBL,GAGrD,MAAMnC,EAAe9C,KAAK8C,aAC1B,IAAKA,EACD,MAAM,IAAIiB,MAAM,8BAGpB,MAAMwB,EAA6B,CAC/BC,QAASxF,KAAKI,WAAWkD,GACzBf,QAASO,EAAaP,QACtBD,QAAS7B,EAAQC,OACjB+E,GAAI,CACA/E,OAAQgF,EAAKC,OAAOP,EAAuBH,GAAeA,EAAYP,QAAQkB,YAAcX,EAAYY,sBAG1GjB,QAAiB5E,KAAKW,IAAIkE,KAA4B,SAAUU,EAAa,CAC/ET,iBAAiB,KAEfgB,UAAEA,GAAclB,EAASG,KAM/B,OAHAE,EAAYc,aAAa,IAAIC,EAAUlD,EAAaP,SAAU0D,EAAOC,KAAKR,EAAKS,OAAOL,KAG/Eb,CACX,CAAE,MAAOtB,GACL,MAAM,IAAII,MAAMJ,aAAiBI,MAAQJ,EAAMe,QAAU,6BAC7D,CACJ,CAEA,wBAAM0B,CAAmBC,GAWrB,IAAKrG,KAAKO,gBACN,MAAM,IAAIwD,MAAM,uBAEpB,IAAK/D,KAAKG,iBACN,MAAM,IAAI4D,MAAM,wBAEpB,IAAK/D,KAAKI,WACN,MAAM,IAAI2D,MAAM,kBAEpB,IAAK/D,KAAK6C,gBACN,MAAM,IAAIkB,MAAM,uBAGpB,MAAMwB,EAA6B,CAC/BC,QAASxF,KAAKI,WAAWkD,GACzBf,QAASvC,KAAK6C,gBACdP,QAAS7B,EAAQkC,SACjB8C,GAAI,CACAa,eAAgBD,IAIlBzB,QAAiB5E,KAAKW,IAAIkE,KAA4B,SAAUU,EAAa,CAC/ET,iBAAiB,KAGfgB,UAAEA,GAAclB,EAASG,KAC/B,OAAOe,CACX,CAEA,2BAAMS,CAAsBtB,GACxB,IAAKjF,KAAKE,iBACN,MAAM,IAAI6D,MAAM,qBAGpB,IAKI,aAJwB/D,KAAKE,iBAAiBsG,mBAAmBvB,EAAa,CAC1EwB,WAAY,EACZC,eAAe,GAGvB,CAAE,MAAO/C,GACL,MAAMA,CACV,CACJ,CAeA,6BAAMgD,CAAwBC,GAC1B,IAAK5G,KAAKG,iBACN,MAAM,IAAI4D,MAAM,wBAGpB,IAII,aAHsB/D,KAAKG,iBAAiBqG,mBAAmB,CAC3DK,sBAAuBD,GAG/B,CAAE,MAAOjD,GACL,MAAMA,CACV,CACJ,CAEA,+BAAMmD,CAA0BC,SACtB/G,KAAKW,IAAIkE,KAAK,qBAAsB,CACtCkC,SAER,CAEA,+BAAMC,CAA0BC,GACvBA,EAAMC,WAAW,OAClBD,EAAQ,IAAIA,WAEVjH,KAAKW,IAAIkE,KAAK,qBAAsB,CACtCoC,QACApF,KAAM,SAEd,CAEA,iCAAMsF,EAA4BJ,MAAEA,EAAKK,KAAEA,IACvC,MAAMrC,EAAO,CACTlD,KAAM,QACNkD,KAAM,CACFzC,QAAStC,KAAKQ,eACduG,QACAK,SAMFzF,SAHiB3B,KAAKW,IAAIkE,KAAK,SAAUE,EAAM,CACjDD,iBAAiB,KAEGC,KAGxB,OAFA/E,KAAK0B,UAAUC,GACf3B,KAAK4B,cAAc,YACZD,CACX,CAEA,iCAAM0F,EAA4BJ,MAAEA,EAAKG,KAAEA,IACvC,MAAMrC,EAAO,CACTlD,KAAM,QACNkD,KAAM,CACFzC,QAAStC,KAAKQ,eACdyG,QACAG,SAMFzF,SAHiB3B,KAAKW,IAAIkE,KAAK,SAAUE,EAAM,CACjDD,iBAAiB,KAEGC,KAGxB,OAFA/E,KAAK0B,UAAUC,GACf3B,KAAK4B,cAAc,YACZD,CACX,CAEA,kBAAM2F,CAAajB,GACf,MAAMtB,EAAO,CACTlD,KAAM,eACNkD,KAAM,CACFzC,QAAStC,KAAKQ,kBACX6F,IAOL1E,SAJiB3B,KAAKW,IAAIkE,KAAK,SAAUE,EAAM,CACjDD,iBAAiB,KAGGC,KAGxB,OAFA/E,KAAK0B,UAAUC,GACf3B,KAAK4B,cAAc,YACZD,CACX,CAEA,iBAAM4F,CAAYlB,GACd,MAAMtB,EAAO,CACTlD,KAAM,cACNkD,KAAM,CACFzC,QAAStC,KAAKQ,kBACX6F,IAOL1E,SAJiB3B,KAAKW,IAAIkE,KAAK,SAAUE,EAAM,CACjDD,iBAAiB,KAGGC,KAGxB,OAFA/E,KAAK0B,UAAUC,GACf3B,KAAK4B,cAAc,YACZD,CACX,CAEA,gBAAM6F,CACF3F,EACAwE,GAOA,MAAMtB,EAAO,CACTlD,OACAkD,KAAM,CACFzC,QAAS+D,EAAO/D,SAAWtC,KAAKQ,kBAC7B6F,IAOL1E,SAJiB3B,KAAKW,IAAIkE,KAAK,SAAUE,EAAM,CACjDD,iBAAiB,KAGGC,KAGxB,OAFA/E,KAAK0B,UAAUC,GACf3B,KAAK4B,cAAc,YACZD,CACX,CAEA,wBAAM8F,CACF5F,EACAwE,GAOA,MAAMtB,EAAO,CACTlD,OACAkD,KAAM,CACFzC,QAAS+D,EAAO/D,SAAWtC,KAAKQ,kBAC7B6F,IAOL1E,SAJiB3B,KAAKW,IAAIkE,KAAK,SAAUE,EAAM,CACjDD,iBAAiB,KAGGC,KAGxB,OAFA/E,KAAK0B,UAAUC,GACf3B,KAAK4B,cAAc,YACZD,CACX,CAEA,eAAM+F,CAAUrB,GAEZ,aADuBrG,KAAKW,IAAIkE,KAAK,cAAewB,IACpCtB,IACpB,CAEA,sBAAM4C,CAAiBtB,GAEnB,aADuBrG,KAAKW,IAAIiH,IAAI,qBAAqBvB,EAAOwB,aAAaxB,EAAO/C,OACpEyB,IACpB,CAEA,gBAAMrB,GACF,MAGMtD,SAHiBJ,KAAKW,IAAIiH,IAAI,WAAY,CAC5C9C,iBAAiB,KAEOC,MACtB+C,aAAEA,KAAiBC,GAAS3H,EAIlC,OAHI0H,GACAhG,EAAQkG,gBAAgBF,GAErB1H,CACX,CAEA,YAAM6H,GACEjI,KAAKK,gBACLL,KAAKK,eAAe6H,aACpBlI,KAAKK,eAAiB,YAEhBL,KAAKW,IAAIkE,KAAK,UAAW,CAAA,EAAI,CAAEC,iBAAiB,IAE1D9E,KAAK0B,UAAU,MACfI,EAAQqG,OACZ,CAEA,uBAAMC,CAAkBC,GAEpB,aADuBrI,KAAKW,IAAIiH,IAAI,aAAaS,MACjCtD,KAAKuD,SACzB,CAEA,iBAAAC,CAAkBC,GACdxI,KAAKC,iBAAmBuI,CAC5B,CAEA,iBAAAC,GACI,OAAOzI,KAAKC,gBAChB,CAEA,sBAAMyI,GACF,IAAK1I,KAAKE,mBAAqBF,KAAKqD,cAChC,MAAM,IAAIU,MAAM,mCAGpB,aADsB/D,KAAKE,iBAAiByI,WAAW,IAAI3C,EAAUhG,KAAKqD,gBACxDuF,GAAkB5E,UACxC,CAEA,wBAAM6E,GACF,IAAK7I,KAAKG,mBAAqBH,KAAK6C,gBAChC,MAAM,IAAIkB,MAAM,mCAEpB,MAAM+E,QAAgB9I,KAAKG,iBAAiBwI,WAAW,CACnDpG,QAASvC,KAAK6C,kBAElB,OAAOkG,EAAmBD,EAC9B,CAEA,wBAAME,CAAmBzG,EAAiB0G,EAAoC,UAU1E,aATuBjJ,KAAKW,IAAIkE,KAAK,iBAAkB,CACnDqE,UAAW,CACP,CACI3G,UACA4G,YAAa,CAACF,KAGtBG,OAAQ,CAAgB,WAAfH,EAA0B,MAAQ,UAE/BlE,KAAKsE,KACzB,CAEA,iBAAAC,GACI,MAAO,CACHC,cAAeC,MAAOnD,IAWlB,IAAKrG,KAAKO,gBACN,MAAM,IAAIwD,MAAM,uBAEpB,IAAK/D,KAAKG,iBACN,MAAM,IAAI4D,MAAM,wBAEpB,IAAK/D,KAAKI,WACN,MAAM,IAAI2D,MAAM,kBAEpB,IAAK/D,KAAK6C,gBACN,MAAM,IAAIkB,MAAM,uBAGpB,MAAMwB,EAA6B,CAC/BC,QAASxF,KAAKI,WAAWkD,GACzBf,QAASvC,KAAK6C,gBACdP,QAAS7B,EAAQkC,SACjB8C,GAAI,CACAa,eAAgBD,IAIlBzB,QAAiB5E,KAAKW,IAAIkE,KAA4B,SAAUU,EAAa,CAC/ET,iBAAiB,KAGfgB,UAAEA,GAAclB,EAASG,KAGzB0E,EAAiB/D,EAAKS,OAAOL,GAE7B4D,EAAQD,EAAe,IAQ7B,OAPqBE,EAAe,CAChCC,EAAG,KAAK3D,EAAOC,KAAKuD,EAAeI,MAAM,EAAG,KAAK7F,SAAS,SAC1D8F,EAAG,KAAK7D,EAAOC,KAAKuD,EAAeI,MAAM,GAAI,KAAK7F,SAAS,SAE3D+F,EAAGC,OAAON,EAAQ,OAMlC,CAOA,yBAAMO,CAAoBC,GACtB,IAEI,aADuBlK,KAAKgB,iBAAiB6D,KAAoB,UAAWqF,IAC5DnF,IACpB,CAAE,MAAOpB,GACL,MAAM,IAAII,MAAMJ,aAAiBI,MAAQJ,EAAMe,QAAU,kCAC7D,CACJ,CAOA,0CAAMyF,CAAqCD,GACvC,IACI,MACM7D,EAAS,CACX+D,mBAFgBpK,KAAKgJ,mBAAmBkB,EAAQG,qBAAsBH,EAAQ5H,UAAY7B,EAAQC,OAAS,SAAW,YAGtH4J,mBAAoBhJ,OAAO4I,EAAQK,QACnCC,YAAaN,EAAQM,aAAeC,OAAOC,SAASC,MAGxD,OADqBC,EAAgBvE,EAEzC,CAAE,MAAO1C,GACL,MAAM,IAAII,MAAMJ,aAAiBI,MAAQJ,EAAMe,QAAU,oCAC7D,CACJ,CAOA,mBAAMmG,CAAcC,GAChB,IAEI,aADuB9K,KAAKgB,iBAAiB4G,IAAgB,UAAUkD,MACvD/F,IACpB,CAAE,MAAOpB,GACL,MAAM,IAAII,MAAMJ,aAAiBI,MAAQJ,EAAMe,QAAU,6BAC7D,CACJ,CAOA,cAAMqG,CAAS1E,WACX,IAAKrG,KAAKI,WACN,MAAM,IAAI2D,MAAM,4BAGpB,MAAMiH,EAAmC,CACrCxF,QAASxF,KAAKI,WAAWkD,GACzB4C,KAAMG,EAAOH,KACb+E,GAAI5E,EAAO4E,GACXV,OAAQlE,EAAOkE,OACfW,SAAU7E,EAAO6E,SACjB7B,MAAOhD,EAAOgD,MACd/G,QAAS+D,EAAO/D,QAChB6I,SAAU9E,EAAO8E,UAGrB,IAII,aAHuBnL,KAAKW,IAAIkE,KAA+B,YAAamG,EAAiB,CACzFlG,iBAAiB,KAELC,IACpB,CAAE,MAAOpB,GAEL,GAAwB,QAApBjB,UAAAP,EAAAwB,EAAMiB,+BAAUG,YAAI,IAAArC,OAAA,EAAAA,EAAEiB,MACtB,MAAM,IAAII,MAAMJ,EAAMiB,SAASG,KAAKpB,OAExC,MAAM,IAAII,MAAMJ,aAAiBI,MAAQJ,EAAMe,QAAU,kBAC7D,CACJ,CAOA,sBAAM0G,CAAiBlB,WACnB,IAII,aAHuBlK,KAAKW,IAAIkE,KAA+B,qBAAsBqF,EAAS,CAC1FpF,iBAAiB,KAELC,IACpB,CAAE,MAAOpB,GAEL,GAAwB,QAApBjB,UAAAP,EAAAwB,EAAMiB,+BAAUG,YAAI,IAAArC,OAAA,EAAAA,EAAEiB,MACtB,MAAM,IAAII,MAAMJ,EAAMiB,SAASG,KAAKpB,OAExC,MAAM,IAAII,MAAMJ,aAAiBI,MAAQJ,EAAMe,QAAU,8BAC7D,CACJ,CAEA,+BAAM2G,GAEF,aADuBrL,KAAKW,IAAIiH,IAAoC,8BACpD7C,IACpB,CAEA,+BAAMuG,CACFC,GASA,aAPuBvL,KAAKW,IAAIkE,KAC5B,4BACA0G,EACA,CACIzG,iBAAiB,KAGTC,IACpB,CAEA,uBAAMyG,CAAkBD,GAIpB,aAHuBvL,KAAKW,IAAIkE,KAAgC,sBAAuB0G,EAAS,CAC5FzG,iBAAiB,KAELC,IACpB,CAEA,8BAAM0G,CACFF,GASA,aAPuBvL,KAAKW,IAAIkE,KAC5B,2BACA0G,EACA,CACIzG,iBAAiB,KAGTC,IACpB,CAEA,sBAAM2G,CAAiBH,GAInB,aAHuBvL,KAAKW,IAAIkE,KAA+B,qBAAsB0G,EAAS,CAC1FzG,iBAAiB,KAELC,IACpB,CAEA,6BAAM4G,CACFJ,GAKA,aAHuBvL,KAAKW,IAAIkE,KAAsC,sBAAuB0G,EAAS,CAClGzG,iBAAiB,KAELC,IACpB,CAEA,iCAAM6G,GAIF,aAHuB5L,KAAKW,IAAIiH,IAA+B,yBAA0B,CACrF9C,iBAAiB,KAELC,IACpB,CAEA,2BAAM8G,GAIF,aAHuB7L,KAAKW,IAAIiH,IAAyB,uBAAwB,CAC7E9C,iBAAiB,KAELC,IACpB"}
|
|
1
|
+
{"version":3,"file":"client.js","sources":["../../../../src/client.ts"],"sourcesContent":[null],"names":["WalletClient","constructor","config","this","selectedWalletId","solanaConnection","ethereumProvider","walletInfo","phantomAdapter","walletType","backupWalletType","ethereumNetwork","defaultNetwork","Network","Solana","api","axios","create","baseURL","headers","middleAccountApi","middleAccountBaseURL","solanaCluster","Connection","rpcUrl","chainId","Number","createPublicClient","transport","http","setWallet","wallet","setWalletType","type","Storage","saveWalletType","setBackupWalletType","saveBackupWalletType","console","log","getWallet","getPhantomAdapter","getWalletType","getBackupWalletType","_a","wallets","find","network","address","ethereumWallet","getSwitchedAccountAddress","_b","Ethereum","wallet_set","ethereumAddress","solanaWallet","_c","_d","forwardSolanaWallet","forwardSolanaAddress","forwardEthereumWallet","forwardEthereumAddress","solanaAddress","id","social_links","reconnect","isBackup","connectPhantom","getSession","error","PhantomWalletAdapter","connect","publicKey","Error","toString","uuidv4","is_exported","WalletType","Phantom","wallet_type","social_infos","account_info","name","message","updateAccountName","response","post","withCredentials","data","signSolanaTransaction","transaction","blockhash","getLatestBlockhash","isVersionedTransaction","recentBlockhash","signTransaction","signRequest","user_id","tx","bs58","encode","serialize","serializeMessage","signature","addSignature","PublicKey","Buffer","from","decode","signEthereumEip712","params","EthereumEip712","sendSolanaTransaction","sendRawTransaction","maxRetries","skipPreflight","sendEthereumTransaction","signedTransaction","serializedTransaction","sendEmailVerificationCode","email","sendPhoneVerificationCode","phone","startsWith","verifyEmailVerificationCode","code","verifyPhoneVerificationCode","twitterLogin","googleLogin","oauthLogin","loginWithChallenge","oauthInit","getSignChallenge","get","method","access_token","rest","saveAccessToken","logout","disconnect","clearBackup","clear","getOAuth2ClientId","provider","client_id","setSelectedWallet","walletId","getSelectedWallet","getSolanaBalance","getBalance","LAMPORTS_PER_SOL","getEthereumBalance","balance","ethers.formatEther","fetchCoinbaseToken","blockchain","addresses","blockchains","assets","token","viemSignerAdapter","signTypedData","async","signatureBytes","recId","signatureToHex","r","slice","s","v","BigInt","createMiddleAccount","request","getCoinbaseOnrampUrlForMiddleAccount","sessionToken","middleAccountAddress","presetCryptoAmount","amount","redirectUrl","window","location","href","getOnrampBuyUrl","getOrderState","orderId","transfer","transferRequest","to","decimals","chain_id","buildTransaction","getCrossMarginGeneralInfo","getCrossMarginBorrowQuote","payload","borrowCrossMargin","getCrossMarginRepayQuote","repayCrossMargin","adjustCrossMarginMargin","getCrossMarginOpenPositions","getCrossMarginHistory"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sources":["../../../../src/context.tsx"],"sourcesContent":[null],"names":["initialState","isAuthenticated","isConnecting","isInitialized","walletInfo","wallet","session","error","enableEmail","enablePhone","enableGoogle","enableTwitter","enablePhantom","WalletContext","createContext","walletReducer","state","action","type","payload","WalletProvider","children","config","clientRef","useRef","current","WalletClient","client","modalManagerRef","_a","modalManager","dispatch","useReducer","_b","_c","_d","_e","_f","hasAttemptedReconnect","getModalManager","useCallback","window","ModalManager","useEffect","async","reconnect","console","autoReconnect","checkCallback","value","urlParams","URLSearchParams","location","search","walletOauthProvider","get","walletOauthState","walletOauthCode","result","retrieveAndClearCodeVerifierAndChallenge","Error","codeVerifier","codeChallenge","showLoginModal","isLoading","oauthLogin","code","code_verifier","newUrl","URL","href","searchParams","delete","history","replaceState","toString","e","log","hideModal","addEventListener","removeEventListener","connect","onClose","onLogin","message","disconnect","logout","Storage","getWalletType","getPhantomAdapter","on","React","createElement","Provider","useWallet","context","useContext"],"mappings":"
|
|
1
|
+
{"version":3,"file":"context.js","sources":["../../../../src/context.tsx"],"sourcesContent":[null],"names":["initialState","isAuthenticated","isConnecting","isInitialized","walletInfo","wallet","session","error","enableEmail","enablePhone","enableGoogle","enableTwitter","enablePhantom","WalletContext","createContext","walletReducer","state","action","type","payload","WalletProvider","children","config","clientRef","useRef","current","WalletClient","client","modalManagerRef","_a","modalManager","dispatch","useReducer","_b","_c","_d","_e","_f","hasAttemptedReconnect","getModalManager","useCallback","window","ModalManager","useEffect","async","reconnect","console","autoReconnect","checkCallback","value","urlParams","URLSearchParams","location","search","walletOauthProvider","get","walletOauthState","walletOauthCode","result","retrieveAndClearCodeVerifierAndChallenge","Error","codeVerifier","codeChallenge","showLoginModal","isLoading","oauthLogin","code","code_verifier","newUrl","URL","href","searchParams","delete","history","replaceState","toString","e","log","hideModal","addEventListener","removeEventListener","connect","onClose","onLogin","message","disconnect","logout","Storage","getWalletType","getPhantomAdapter","on","React","createElement","Provider","useWallet","context","useContext"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import e,{createContext as a,useRef as t,useReducer as n,useCallback as o,useEffect as l,useContext as r}from"react";import{WalletClient as i}from"./client.js";import{ModalManager as c}from"./modal.js";import{Storage as s}from"./storage.js";import{retrieveAndClearCodeVerifierAndChallenge as d}from"./utils/oauth.js";const u={isAuthenticated:!1,isConnecting:!1,isInitialized:!1,walletInfo:null,wallet:null,session:null,error:null,enableEmail:!0,enablePhone:!1,enableGoogle:!0,enableTwitter:!1,enablePhantom:!0},p=a({});function _(e,a){switch(a.type){case"SET_CONNECTING_BACKUP":return{...e,isConnecting:a.payload};case"SET_INITIALIZED_BACKUP":return{...e,isInitialized:a.payload};case"SET_SESSION_BACKUP":return{...e,isAuthenticated:!0,session:a.payload,error:null};case"SET_WALLET_INFO_BACKUP":return{...e,walletInfo:a.payload};case"SET_WALLET_BACKUP":return{...e,wallet:a.payload};case"SET_ERROR_BACKUP":return{...e,error:a.payload};case"RESET_BACKUP":return{...u,isInitialized:!0};default:return e}}function E({children:a,config:r}){var E,h,w,y,T,P;const C=t(null);C.current||(C.current=new i(r));const m=C.current,A=t(null!==(E=r.modalManager)&&void 0!==E?E:null),[b,g]=n(_,{...u,enableEmail:null===(h=r.enableEmail)||void 0===h||h,enablePhone:null!==(w=r.enablePhone)&&void 0!==w&&w,enableGoogle:null===(y=r.enableGoogle)||void 0===y||y,enableTwitter:null!==(T=r.enableTwitter)&&void 0!==T&&T,enablePhantom:null===(P=r.enablePhantom)||void 0===P||P}),{walletInfo:f}=b,N=t(!1),S=o(()=>(A.current||"undefined"==typeof window||(A.current=new c),A.current),[]);l(()=>{r.modalManager&&(A.current=r.modalManager)},[r.modalManager]),l(()=>{!async function(){if(!(f||N.current||b.isInitialized)){N.current=!0;try{const e=await m.reconnect(!0);e&&(g({type:"SET_WALLET_INFO_BACKUP",payload:e}),g({type:"SET_WALLET_BACKUP",payload:m}))}catch(e){console.error("Auto reconnect failed:",e)}finally{g({type:"SET_INITIALIZED_BACKUP",payload:!0})}}}()},[m]),l(()=>{const e=async()=>{try{if(B.isConnecting)return;g({type:"SET_CONNECTING_BACKUP",payload:!0});const e=new URLSearchParams(window.location.search),a=e.get("wallet_oauth_provider"),t=e.get("wallet_oauth_state"),n=e.get("wallet_oauth_code");if(a&&t&&n){const e=d(a);if(!e)throw new Error("No code verifier found");const{codeVerifier:o,codeChallenge:l}=e;let r;if("twitter"===a)r="TwitterOAuth";else{if("google"!==a)throw new Error("Unsupported provider");r="GoogleOAuth"}S().showLoginModal({isBackup:!0,client:m,isLoading:!0,enableEmail:b.enableEmail,enablePhone:b.enablePhone,enableGoogle:b.enableGoogle,enableTwitter:b.enableTwitter,enablePhantom:b.enablePhantom});const i=await m.oauthLogin(r,{state:t,code:n,code_verifier:o});if(i){g({type:"SET_WALLET_INFO_BACKUP",payload:i}),g({type:"SET_WALLET_BACKUP",payload:m});const e=new URL(window.location.href);e.searchParams.delete("wallet_oauth_provider"),e.searchParams.delete("wallet_oauth_state"),e.searchParams.delete("wallet_oauth_code"),history.replaceState(null,"",e.toString())}}}catch(e){console.log("oauth login error: ",e)}finally{g({type:"SET_CONNECTING_BACKUP",payload:!1}),await S().hideModal(!0)}};return e(),window.addEventListener("popstate",e),()=>{window.removeEventListener("popstate",e)}},[]);const I=o(async()=>{try{g({type:"SET_CONNECTING_BACKUP",payload:!0});S().showLoginModal({isBackup:!0,client:m,enableEmail:b.enableEmail,enablePhone:b.enablePhone,enableGoogle:b.enableGoogle,enableTwitter:b.enableTwitter,enablePhantom:b.enablePhantom,onClose:()=>{g({type:"SET_CONNECTING_BACKUP",payload:!1})},onLogin:e=>{g({type:"SET_CONNECTING_BACKUP",payload:!1}),g({type:"SET_WALLET_INFO_BACKUP",payload:e}),g({type:"SET_WALLET_BACKUP",payload:m})}})}catch(e){g({type:"SET_ERROR_BACKUP",payload:e instanceof Error?e.message:"Failed to connect"}),g({type:"SET_CONNECTING_BACKUP",payload:!1})}},[m]),L=o(async()=>{await m.logout(!0),g({type:"RESET_BACKUP"})},[m]);l(()=>{var e;"phantom_backup"===s.getBackupWalletType()&&m.getPhantomAdapter()&&(null===(e=m.getPhantomAdapter())||void 0===e||e.on("disconnect",()=>{L()}))},[m]);const B={...b,connect:I,disconnect:L};return e.createElement(p.Provider,{value:B},a)}function h(){const e=r(p);if(!e)throw new Error("useWallet must be used within a WalletProvider");return e}export{E as WalletProviderBackup,h as useWalletBackup};
|
|
2
|
+
//# sourceMappingURL=context_backup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context_backup.js","sources":["../../../../src/context_backup.tsx"],"sourcesContent":[null],"names":["initialState","isAuthenticated","isConnecting","isInitialized","walletInfo","wallet","session","error","enableEmail","enablePhone","enableGoogle","enableTwitter","enablePhantom","WalletContext","createContext","walletReducer","state","action","type","payload","WalletProviderBackup","children","config","clientRef","useRef","current","WalletClient","client","modalManagerRef","_a","modalManager","dispatch","useReducer","_b","_c","_d","_e","_f","hasAttemptedReconnect","getModalManager","useCallback","window","ModalManager","useEffect","async","reconnect","console","autoReconnect","checkCallback","value","urlParams","URLSearchParams","location","search","walletOauthProvider","get","walletOauthState","walletOauthCode","result","retrieveAndClearCodeVerifierAndChallenge","Error","codeVerifier","codeChallenge","showLoginModal","isBackup","isLoading","oauthLogin","code","code_verifier","newUrl","URL","href","searchParams","delete","history","replaceState","toString","e","log","hideModal","addEventListener","removeEventListener","connect","onClose","onLogin","message","disconnect","logout","Storage","getBackupWalletType","getPhantomAdapter","on","React","createElement","Provider","useWalletBackup","context","useContext"],"mappings":"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"}
|
package/dist/esm/src/hooks.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{useState as e,useMemo as n,createRef as t,useEffect as i}from"react";import{useWallet as o}from"./context.js";import{buildOAuthState as a,buildCodeVerifierAndChallenge as l,getGoogleOAuth2Link as r,getTwitterOAuth2Link as c}from"./utils/oauth.js";import{theme as s}from"./styles/theme.js";function
|
|
1
|
+
import{useState as e,useMemo as n,createRef as t,useEffect as i}from"react";import{useWallet as o}from"./context.js";import{buildOAuthState as a,buildCodeVerifierAndChallenge as l,getGoogleOAuth2Link as r,getTwitterOAuth2Link as c}from"./utils/oauth.js";import{theme as s}from"./styles/theme.js";import{useWalletBackup as d}from"./context_backup.js";function h(){const{connect:e,disconnect:n,isConnecting:t}=o();return{connect:e,disconnect:n,isConnecting:t}}function f(){const{error:e,session:n,isInitialized:t,wallet:i}=o();return{isAuthenticated:null!==i,authenticated:null!==i,error:e,session:n,isInitialized:t,ready:t}}function u(){const{error:e,session:n,isInitialized:t,wallet:i}=d();return{isAuthenticated:null!==i,authenticated:null!==i,error:e,session:n,isInitialized:t,ready:t}}function g(){const{wallet:e}=o();return{wallet:e}}function y({client:o,isOpen:d,onClose:h,onLogin:f,isLoading:u=!1}){const[g,y]=e(""),[m,v]=e(""),[p,w]=e(!1),[C,P]=e(!1),[S,F]=e(["","","","","",""]),[E,x]=e(!1),[L,V]=e(!1),[I,_]=e(!1),j=n(()=>Array(6).fill(null).map(()=>t()),[]),z=e=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e),A=e=>/^\+[1-9]\d{1,3}\d{6,14}$/.test(e);return i(()=>{S.forEach((e,n)=>{if(j[n]&&j[n].current){const t=j[n].current;t&&e&&(t.style.fontSize=s.typography.fontSizes.xl)}})},[S,j]),{email:g,setEmail:y,emailSent:C,setEmailSent:P,sendingCode:E,setVerificationCode:F,verificationCode:S,verifyingCode:L,connectingPhantom:I,inputRefs:j,handleCodeChange:(e,n)=>{var t,i,o;if(n.length<=1){const i=[...S];i[e]=n,F(i),n&&e<5&&(null===(t=j[e+1].current)||void 0===t||t.focus())}else if(n.length>1){const e=n.replace(/\D/g,"").slice(0,6).split(""),t=[...Array(6).fill("")];e.forEach((e,n)=>{n<6&&(t[n]=e)}),F(t);const a=t.findIndex(e=>""===e);-1!==a?null===(i=j[a].current)||void 0===i||i.focus():t[5]&&(null===(o=j[5].current)||void 0===o||o.focus())}},handleKeyDown:(e,n)=>{var t;"Backspace"===n.key&&!S[e]&&e>0&&(null===(t=j[e-1].current)||void 0===t||t.focus())},handleContainerPaste:e=>{var n,t;e.preventDefault();const i=e.clipboardData.getData("text").replace(/\D/g,"").slice(0,6).split(""),o=[...Array(6).fill("")];i.forEach((e,n)=>{n<6&&(o[n]=e)}),F(o);const a=o.findIndex(e=>""===e);-1!==a?null===(n=j[a].current)||void 0===n||n.focus():o[5]&&(null===(t=j[5].current)||void 0===t||t.focus())},handleSendVerificationCode:async(e=g)=>{try{if(!z(e))return void alert("Please enter a valid email address");x(!0),await o.sendEmailVerificationCode(e),P(!0)}catch(e){alert("Failed to send verification code"),console.error("Failed to send verification code",e)}finally{x(!1)}},handleCodeSubmit:async(e=S.join(""),n=g)=>{try{if(6!==e.length)return void alert("Please enter a valid verification code");V(!0);const t=await o.verifyEmailVerificationCode({email:n,code:e});t&&(null==f||f(t),null==h||h())}catch(e){alert("Failed to verify code"),console.error("Failed to verify code",e)}finally{V(!1)}},handlePhoneCodeSubmit:async(e=S.join(""),n=m)=>{try{if(6!==e.length)return void alert("Please enter a valid verification code");V(!0);const t=await o.verifyPhoneVerificationCode({phone:n,code:e});t&&(null==f||f(t),null==h||h())}catch(e){alert("Failed to verify code"),console.error("Failed to verify code",e)}finally{V(!1)}},handleSendPhoneVerificationCode:async(e=m)=>{try{if(!A(e))return void alert("Please enter a valid phone number");await o.sendPhoneVerificationCode(e),w(!0)}catch(e){alert("Failed to send verification code"),console.error("Failed to send verification code",e)}finally{x(!1)}},handleGetChallenge:async(e,n)=>await o.getSignChallenge({method:null!=n?n:"phantom",id:e}),handleLoginWithChallenge:async(e,n)=>{try{const t=await o.loginWithChallenge(e,n);t&&(null==f||f(t),null==h||h())}catch(e){alert("Failed to login with challenge"),console.error("Failed to login with challenge",e)}finally{V(!1)}},phone:m,setPhone:v,phoneSent:p,setPhoneSent:w,onOauthLogin:async e=>{const n=a(e),{codeVerifier:t,codeChallenge:i}=await l(e),s=new URL(window.location.href);s.searchParams.forEach((e,n)=>{s.searchParams.delete(n)});const d=s.toString(),h=await o.oauthInit({provider:e,redirect_uri:d,state:n,code_challenge:i}),{url:f,client_id:u}=h;if(!f&&!u)throw console.error("OAuth init failed."),new Error("init failed");const g={client_id:u,redirect_uri:f,state:n,code_challenge:i},y="google"===e?await r(g):await c(g);window.location.href=y},handlePhantomLogin:async()=>{try{_(!0);const e=await o.connectPhantom();e&&(null==f||f(e),null==h||h())}catch(e){console.error("Phantom login error:",e),alert("Failed to connect to Phantom wallet. Please make sure you have the Phantom extension installed.")}finally{_(!1)}},isOpen:d,onClose:h,onLogin:f,isLoading:u}}export{g as useActiveWallet,h as useConnect,y as useLoginModal,u as useWalletBackupStatus,f as useWalletStatus};
|
|
2
2
|
//# sourceMappingURL=hooks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sources":["../../../../src/hooks.ts"],"sourcesContent":[null],"names":["useConnect","connect","disconnect","isConnecting","useWallet","useWalletStatus","error","session","isInitialized","wallet","isAuthenticated","authenticated","ready","useActiveWallet","useLoginModal","client","isOpen","onClose","onLogin","isLoading","email","setEmail","useState","phone","setPhone","phoneSent","setPhoneSent","emailSent","setEmailSent","verificationCode","setVerificationCode","sendingCode","setSendingCode","verifyingCode","setVerifyingCode","connectingPhantom","setConnectingPhantom","inputRefs","useMemo","Array","fill","map","createRef","validateEmail","test","validatePhone","useEffect","forEach","value","index","current","input","style","fontSize","theme","typography","fontSizes","xl","handleCodeChange","length","newCode","_a","focus","digits","replace","slice","split","digit","i","nextEmptyIndex","findIndex","d","_b","_c","handleKeyDown","e","key","handleContainerPaste","preventDefault","clipboardData","getData","handleSendVerificationCode","async","emailInput","alert","sendEmailVerificationCode","console","handleCodeSubmit","code","join","verifyEmailVerificationCode","handlePhoneCodeSubmit","phoneInput","verifyPhoneVerificationCode","handleSendPhoneVerificationCode","sendPhoneVerificationCode","handleGetChallenge","address","method","getSignChallenge","id","handleLoginWithChallenge","type","params","loginWithChallenge","onOauthLogin","state","buildOAuthState","codeVerifier","codeChallenge","buildCodeVerifierAndChallenge","currentUrl","URL","window","location","href","searchParams","delete","redirect_uri","toString","response","oauthInit","provider","code_challenge","url","client_id","Error","oauth2Link","getGoogleOAuth2Link","getTwitterOAuth2Link","handlePhantomLogin","connectPhantom"],"mappings":"
|
|
1
|
+
{"version":3,"file":"hooks.js","sources":["../../../../src/hooks.ts"],"sourcesContent":[null],"names":["useConnect","connect","disconnect","isConnecting","useWallet","useWalletStatus","error","session","isInitialized","wallet","isAuthenticated","authenticated","ready","useWalletBackupStatus","useWalletBackup","useActiveWallet","useLoginModal","client","isOpen","onClose","onLogin","isLoading","email","setEmail","useState","phone","setPhone","phoneSent","setPhoneSent","emailSent","setEmailSent","verificationCode","setVerificationCode","sendingCode","setSendingCode","verifyingCode","setVerifyingCode","connectingPhantom","setConnectingPhantom","inputRefs","useMemo","Array","fill","map","createRef","validateEmail","test","validatePhone","useEffect","forEach","value","index","current","input","style","fontSize","theme","typography","fontSizes","xl","handleCodeChange","length","newCode","_a","focus","digits","replace","slice","split","digit","i","nextEmptyIndex","findIndex","d","_b","_c","handleKeyDown","e","key","handleContainerPaste","preventDefault","clipboardData","getData","handleSendVerificationCode","async","emailInput","alert","sendEmailVerificationCode","console","handleCodeSubmit","code","join","verifyEmailVerificationCode","handlePhoneCodeSubmit","phoneInput","verifyPhoneVerificationCode","handleSendPhoneVerificationCode","sendPhoneVerificationCode","handleGetChallenge","address","method","getSignChallenge","id","handleLoginWithChallenge","type","params","loginWithChallenge","onOauthLogin","state","buildOAuthState","codeVerifier","codeChallenge","buildCodeVerifierAndChallenge","currentUrl","URL","window","location","href","searchParams","delete","redirect_uri","toString","response","oauthInit","provider","code_challenge","url","client_id","Error","oauth2Link","getGoogleOAuth2Link","getTwitterOAuth2Link","handlePhantomLogin","connectPhantom"],"mappings":"uWASgBA,IACZ,MAAMC,QAAEA,EAAOC,WAAEA,EAAUC,aAAEA,GAAiBC,IAE9C,MAAO,CACHH,UACAC,aACAC,eAER,UAEgBE,IACZ,MAAMC,MAAEA,EAAKC,QAAEA,EAAOC,cAAEA,EAAaC,OAAEA,GAAWL,IAElD,MAAO,CACHM,gBAA4B,OAAXD,EACjBE,cAA0B,OAAXF,EACfH,QACAC,UACAC,gBACAI,MAAOJ,EAEf,UAEgBK,IACZ,MAAMP,MAAEA,EAAKC,QAAEA,EAAOC,cAAEA,EAAaC,OAAEA,GAAWK,IAElD,MAAO,CACHJ,gBAA4B,OAAXD,EACjBE,cAA0B,OAAXF,EACfH,QACAC,UACAC,gBACAI,MAAOJ,EAEf,UAEgBO,IACZ,MAAMN,OAAEA,GAAWL,IACnB,MAAO,CAAEK,SACb,CAEM,SAAUO,GAAcC,OAAEA,EAAMC,OAAEA,EAAMC,QAAEA,EAAOC,QAAEA,EAAOC,UAAEA,GAAY,IAC1E,MAAOC,EAAOC,GAAYC,EAAS,KAC5BC,EAAOC,GAAYF,EAAS,KAC5BG,EAAWC,GAAgBJ,GAAS,IACpCK,EAAWC,GAAgBN,GAAS,IACpCO,EAAkBC,GAAuBR,EAAS,CAAC,GAAI,GAAI,GAAI,GAAI,GAAI,MACvES,EAAaC,GAAkBV,GAAS,IACxCW,EAAeC,GAAoBZ,GAAS,IAC5Ca,EAAmBC,GAAwBd,GAAS,GAErDe,EAAYC,EACd,IACIC,MAAM,GACDC,KAAK,MACLC,IAAI,IAAMC,KACnB,IA4KEC,EAAiBvB,GACZ,6BAA6BwB,KAAKxB,GAGvCyB,EAAiBtB,GACZ,2BAA2BqB,KAAKrB,GAmE3C,OAfAuB,EAAU,KAENjB,EAAiBkB,QAAQ,CAACC,EAAOC,KAC7B,GAAIZ,EAAUY,IAAUZ,EAAUY,GAAOC,QAAS,CAC9C,MAAMC,EAAQd,EAAUY,GAAOC,QAC3BC,GAEIH,IACAG,EAAMC,MAAMC,SAAWC,EAAMC,WAAWC,UAAUC,GAG9D,KAEL,CAAC5B,EAAkBQ,IAEf,CACHjB,QACAC,WACAM,YACAC,eACAG,cACAD,sBACAD,mBACAI,gBACAE,oBACAE,YACAqB,iBA5PqB,CAACT,EAAeD,eAErC,GAAIA,EAAMW,QAAU,EAAG,CACnB,MAAMC,EAAU,IAAI/B,GACpB+B,EAAQX,GAASD,EACjBlB,EAAoB8B,GAGhBZ,GAASC,EAAQ,IACW,QAA5BY,EAAAxB,EAAUY,EAAQ,GAAGC,eAAO,IAAAW,GAAAA,EAAEC,QAEtC,MAEK,GAAId,EAAMW,OAAS,EAAG,CAEvB,MAAMI,EAASf,EAAMgB,QAAQ,MAAO,IAAIC,MAAM,EAAG,GAAGC,MAAM,IACpDN,EAAU,IAAIrB,MAAM,GAAGC,KAAK,KAGlCuB,EAAOhB,QAAQ,CAACoB,EAAOC,KACfA,EAAI,IAAGR,EAAQQ,GAAKD,KAI5BrC,EAAoB8B,GAGpB,MAAMS,EAAiBT,EAAQU,UAAWC,GAAY,KAANA,IACzB,IAAnBF,EACiC,QAAjCG,EAAAnC,EAAUgC,GAAgBnB,eAAO,IAAAsB,GAAAA,EAAEV,QAC5BF,EAAQ,KAEK,QAApBa,EAAApC,EAAU,GAAGa,eAAO,IAAAuB,GAAAA,EAAEX,QAE9B,GA2NAY,cAxNkB,CAACzB,EAAe0B,WACpB,cAAVA,EAAEC,MAAwB/C,EAAiBoB,IAAUA,EAAQ,IACjC,QAA5BY,EAAAxB,EAAUY,EAAQ,GAAGC,eAAO,IAAAW,GAAAA,EAAEC,UAuNlCe,qBAnN0BF,YAC1BA,EAAEG,iBACF,MACMf,EADaY,EAAEI,cAAcC,QAAQ,QACjBhB,QAAQ,MAAO,IAAIC,MAAM,EAAG,GAAGC,MAAM,IACzDN,EAAU,IAAIrB,MAAM,GAAGC,KAAK,KAGlCuB,EAAOhB,QAAQ,CAACoB,EAAOC,KACfA,EAAI,IAAGR,EAAQQ,GAAKD,KAI5BrC,EAAoB8B,GAGpB,MAAMS,EAAiBT,EAAQU,UAAWC,GAAY,KAANA,IACzB,IAAnBF,EACiC,QAAjCR,EAAAxB,EAAUgC,GAAgBnB,eAAO,IAAAW,GAAAA,EAAEC,QAC5BF,EAAQ,KAEK,QAApBY,EAAAnC,EAAU,GAAGa,eAAO,IAAAsB,GAAAA,EAAEV,UAgM1BmB,2BA5L+BC,MAAOC,EAAa/D,KACnD,IACI,IAAKuB,EAAcwC,GAEf,YADAC,MAAM,sCAGVpD,GAAe,SACTjB,EAAOsE,0BAA0BF,GACvCvD,GAAa,EACjB,CAAE,MAAO+C,GACLS,MAAM,oCACNE,QAAQlF,MAAM,mCAAoCuE,EACtD,SACI3C,GAAe,EACnB,GA+KAuD,iBA5JqBL,MAAOM,EAAO3D,EAAiB4D,KAAK,IAAKN,EAAa/D,KAC3E,IACI,GAAoB,IAAhBoE,EAAK7B,OAEL,YADAyB,MAAM,0CAGVlD,GAAiB,GACjB,MAAM3B,QAAeQ,EAAO2E,4BAA4B,CACpDtE,MAAO+D,EACPK,SAEAjF,IACAW,SAAAA,EAAUX,GACVU,SAAAA,IAER,CAAE,MAAO0D,GACLS,MAAM,yBACNE,QAAQlF,MAAM,wBAAyBuE,EAC3C,SACIzC,GAAiB,EACrB,GAyIAyD,sBAtI0BT,MAAOM,EAAO3D,EAAiB4D,KAAK,IAAKG,EAAarE,KAChF,IACI,GAAoB,IAAhBiE,EAAK7B,OAEL,YADAyB,MAAM,0CAGVlD,GAAiB,GACjB,MAAM3B,QAAeQ,EAAO8E,4BAA4B,CACpDtE,MAAOqE,EACPJ,SAEAjF,IACAW,SAAAA,EAAUX,GACVU,SAAAA,IAER,CAAE,MAAO0D,GACLS,MAAM,yBACNE,QAAQlF,MAAM,wBAAyBuE,EAC3C,SACIzC,GAAiB,EACrB,GAmHA4D,gCA9KoCZ,MAAOU,EAAarE,KACxD,IACI,IAAKsB,EAAc+C,GAEf,YADAR,MAAM,2CAGJrE,EAAOgF,0BAA0BH,GACvClE,GAAa,EACjB,CAAE,MAAOiD,GACLS,MAAM,oCACNE,QAAQlF,MAAM,mCAAoCuE,EACtD,SACI3C,GAAe,EACnB,GAkKAgE,mBAjHuBd,MAAOe,EAAiBC,UACxBnF,EAAOoF,iBAAiB,CAC3CD,OAAQA,QAAAA,EAAU,UAClBE,GAAIH,IA+GRI,yBA1G6BnB,MAAOoB,EAAiBC,KACrD,IACI,MAAMhG,QAAeQ,EAAOyF,mBAAmBF,EAAMC,GACjDhG,IACAW,SAAAA,EAAUX,GACVU,SAAAA,IAER,CAAE,MAAO0D,GACLS,MAAM,kCACNE,QAAQlF,MAAM,iCAAkCuE,EACpD,SACIzC,GAAiB,EACrB,GA+FAX,QACAC,WACAC,YACAC,eACA+E,aAxFiBvB,MAAOoB,IACxB,MAAMI,EAAQC,EAAgBL,IACxBM,aAAEA,EAAYC,cAAEA,SAAwBC,EAA8BR,GAGtES,EAAa,IAAIC,IAAIC,OAAOC,SAASC,MAC3CJ,EAAWK,aAAarE,QAAQ,CAACC,EAAO4B,KACpCmC,EAAWK,aAAaC,OAAOzC,KAEnC,MAAM0C,EAAeP,EAAWQ,WAC1BC,QAAiBzG,EAAO0G,UAAU,CACpCC,SAAUpB,EACVgB,aAAcA,EACdZ,QACAiB,eAAgBd,KAGde,IAAEA,EAAGC,UAAEA,GAAcL,EAC3B,IAAKI,IAAQC,EAET,MADAvC,QAAQlF,MAAM,sBACR,IAAI0H,MAAM,eAEpB,MAAMvB,EAAS,CACXsB,UAAWA,EACXP,aAAcM,EACdlB,QACAiB,eAAgBd,GAEdkB,EAAsB,WAATzB,QAA0B0B,EAAoBzB,SAAgB0B,EAAqB1B,GACtGU,OAAOC,SAASC,KAAOY,GA4DvBG,mBAzDuBhD,UACvB,IACI9C,GAAqB,GACrB,MAAM7B,QAAeQ,EAAOoH,iBACxB5H,IACAW,SAAAA,EAAUX,GACVU,SAAAA,IAER,CAAE,MAAOb,GACLkF,QAAQlF,MAAM,uBAAwBA,GACtCgF,MAAM,kGACV,SACIhD,GAAqB,EACzB,GA6CApB,SACAC,UACAC,UACAC,YAER"}
|
package/dist/esm/src/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"./polyfills.js";export{WalletClient}from"./client.js";export{WalletProvider,useWallet}from"./context.js";export{useActiveWallet,useConnect,useLoginModal,useWalletStatus}from"./hooks.js";export{ACCESS_TOKEN_KEY,STORAGE_STATE_KEY,SWITCHED_ACCOUNT_ADDRESS,Storage,WALLET_TYPE_KEY}from"./storage.js";export{BorrowedAsset,CollateralAsset,CrossMarginOperationType,CrossMarginPositionStatus,Network,SocialType,VaultId,WalletType,isVersionedTransaction}from"./types.js";export{injectStyles}from"./styles/index.js";export{useCoinbaseOnramp}from"./coinbase.js";export{theme}from"./styles/theme.js";"undefined"!=typeof window&&import("./styles/index.js").then(({injectStyles:e})=>{e()});
|
|
1
|
+
import"./polyfills.js";export{WalletClient}from"./client.js";export{WalletProvider,useWallet}from"./context.js";export{WalletProviderBackup,useWalletBackup}from"./context_backup.js";export{useActiveWallet,useConnect,useLoginModal,useWalletBackupStatus,useWalletStatus}from"./hooks.js";export{ACCESS_TOKEN_KEY,BACKUP_WALLET_TYPE_KEY,STORAGE_STATE_KEY,SWITCHED_ACCOUNT_ADDRESS,Storage,WALLET_TYPE_KEY}from"./storage.js";export{BorrowedAsset,CollateralAsset,CrossMarginOperationType,CrossMarginPositionStatus,Network,SocialType,VaultId,WalletType,isVersionedTransaction}from"./types.js";export{injectStyles}from"./styles/index.js";export{useCoinbaseOnramp}from"./coinbase.js";export{theme}from"./styles/theme.js";"undefined"!=typeof window&&import("./styles/index.js").then(({injectStyles:e})=>{e()});
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/index.ts"],"sourcesContent":[null],"names":["window","import","then","injectStyles"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/index.ts"],"sourcesContent":[null],"names":["window","import","then","injectStyles"],"mappings":"ssBAasB,oBAAXA,QACPC,OAAO,qBAAYC,KAAK,EAAGC,mBACvBA"}
|
package/dist/esm/src/modal.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"react";import{LoginModal as o}from"./LoginModal.js";class n{constructor(){this.container=null,this.root=null}createContainer(){if("undefined"==typeof document)return null;this.removeExistingContainer();const e=document.createElement("div");return e.id="embedded-wallet-modal",document.body.appendChild(e),e}removeExistingContainer(){if("undefined"==typeof document)return;const e=document.getElementById("embedded-wallet-modal");e&&e.parentNode&&e.parentNode.removeChild(e)}showLoginModal({client:n,isLoading:t=!1,onClose:i,onLogin:r,enableEmail:a=!0,enablePhone:l=!1,enableGoogle:d=!0,enableTwitter:c=!1,enablePhantom:s=!0}){return new Promise((h,m)=>{try{if("undefined"==typeof window)return void h();import("react-dom/client").then(({createRoot:m})=>{if(this.container=this.createContainer(),!this.container)return void h();this.root=m(this.container);const u=()=>{this.hideModal(),null==i||i()},b=e=>{this.hideModal(),null==r||r(e)};this.root&&this.root.render(e.createElement(o,{client:n,isOpen:!0,onClose:u,isLoading:t,onLogin:b,enableEmail:a,enablePhone:l,enableGoogle:d,enableTwitter:c,enablePhantom:s})),h()}).catch(e=>{console.error("Error importing createRoot:",e),m(e)})}catch(e){console.error("Error showing modal:",e),m(e)}})}hideModal(){this.root&&(this.root.unmount(),this.container&&this.container.parentNode&&(document.body.removeChild(this.container),this.container=null))}}export{n as ModalManager};
|
|
1
|
+
import e from"react";import{LoginModal as o}from"./LoginModal.js";class n{constructor(){this.container=null,this.root=null}createContainer(){if("undefined"==typeof document)return null;this.removeExistingContainer();const e=document.createElement("div");return e.id="embedded-wallet-modal",document.body.appendChild(e),e}removeExistingContainer(){if("undefined"==typeof document)return;const e=document.getElementById("embedded-wallet-modal");e&&e.parentNode&&e.parentNode.removeChild(e)}showLoginModal({client:n,isLoading:t=!1,onClose:i,onLogin:r,enableEmail:a=!0,enablePhone:l=!1,enableGoogle:d=!0,enableTwitter:c=!1,enablePhantom:s=!0}){return new Promise((h,m)=>{try{if("undefined"==typeof window)return void h();import("react-dom/client").then(({createRoot:m})=>{if(this.container=this.createContainer(),!this.container)return void h();this.root=m(this.container);const u=()=>{this.hideModal(),null==i||i()},b=e=>{this.hideModal(),null==r||r(e)};this.root&&this.root.render(e.createElement(o,{client:n,isOpen:!0,onClose:u,isLoading:t,onLogin:b,enableEmail:a,enablePhone:l,enableGoogle:d,enableTwitter:c,enablePhantom:s})),h()}).catch(e=>{console.error("Error importing createRoot:",e),m(e)})}catch(e){console.error("Error showing modal:",e),m(e)}})}hideModal(e){this.root&&(this.root.unmount(),this.container&&this.container.parentNode&&(document.body.removeChild(this.container),this.container=null))}}export{n as ModalManager};
|
|
2
2
|
//# sourceMappingURL=modal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal.js","sources":["../../../../src/modal.tsx"],"sourcesContent":[null],"names":["ModalManager","constructor","this","container","root","createContainer","document","removeExistingContainer","createElement","id","body","appendChild","existingContainer","getElementById","parentNode","removeChild","showLoginModal","client","isLoading","onClose","onLogin","enableEmail","enablePhone","enableGoogle","enableTwitter","enablePhantom","Promise","resolve","reject","window","import","then","createRoot","handleClose","hideModal","handleLogin","walletInfo","render","React","LoginModal","isOpen","catch","error","console","unmount"],"mappings":"wEAMaA,EAAb,WAAAC,GACUC,KAAAC,UAAmC,KACnCD,KAAAE,KAAY,
|
|
1
|
+
{"version":3,"file":"modal.js","sources":["../../../../src/modal.tsx"],"sourcesContent":[null],"names":["ModalManager","constructor","this","container","root","createContainer","document","removeExistingContainer","createElement","id","body","appendChild","existingContainer","getElementById","parentNode","removeChild","showLoginModal","client","isLoading","onClose","onLogin","enableEmail","enablePhone","enableGoogle","enableTwitter","enablePhantom","Promise","resolve","reject","window","import","then","createRoot","handleClose","hideModal","handleLogin","walletInfo","render","React","LoginModal","isOpen","catch","error","console","isBackup","unmount"],"mappings":"wEAMaA,EAAb,WAAAC,GACUC,KAAAC,UAAmC,KACnCD,KAAAE,KAAY,IAmHtB,CAjHU,eAAAC,GACN,GAAwB,oBAAbC,SAA0B,OAAO,KAG5CJ,KAAKK,0BAGL,MAAMJ,EAAYG,SAASE,cAAc,OAIzC,OAHAL,EAAUM,GAAK,wBAEfH,SAASI,KAAKC,YAAYR,GACnBA,CACT,CAEQ,uBAAAI,GACN,GAAwB,oBAAbD,SAA0B,OAErC,MAAMM,EAAoBN,SAASO,eAAe,yBAC9CD,GAAqBA,EAAkBE,YACzCF,EAAkBE,WAAWC,YAAYH,EAE7C,CAEA,cAAAI,EAAeC,OACbA,EAAMC,UACNA,GAAY,EAAKC,QACjBA,EAAOC,QACPA,EAAOC,YACPA,GAAc,EAAIC,YAClBA,GAAc,EAAKC,aACnBA,GAAe,EAAIC,cACnBA,GAAgB,EAAKC,cACrBA,GAAgB,IAahB,OAAO,IAAIC,QAAQ,CAACC,EAASC,KAC3B,IAEE,GAAsB,oBAAXC,OAET,YADAF,IAKFG,OAAO,oBACJC,KAAK,EAAGC,iBAGP,GADA9B,KAAKC,UAAYD,KAAKG,mBACjBH,KAAKC,UAER,YADAwB,IAIFzB,KAAKE,KAAO4B,EAAW9B,KAAKC,WAE5B,MAAM8B,EAAc,KAClB/B,KAAKgC,YACLf,SAAAA,KAGIgB,EAAeC,IACnBlC,KAAKgC,YACLd,SAAAA,EAAUgB,IAGRlC,KAAKE,MACPF,KAAKE,KAAKiC,OACRC,EAAA9B,cAAC+B,EAAU,CACTtB,OAAQA,EACRuB,QAAQ,EACRrB,QAASc,EACTf,UAAWA,EACXE,QAASe,EACTd,YAAaA,EACbC,YAAaA,EACbC,aAAcA,EACdC,cAAeA,EACfC,cAAeA,KAIrBE,MAEDc,MAAOC,IACNC,QAAQD,MAAM,8BAA+BA,GAC7Cd,EAAOc,IAEb,CAAE,MAAOA,GACPC,QAAQD,MAAM,uBAAwBA,GACtCd,EAAOc,EACT,GAEJ,CAEA,SAAAR,CAAUU,GACJ1C,KAAKE,OACPF,KAAKE,KAAKyC,UACN3C,KAAKC,WAAaD,KAAKC,UAAUW,aACnCR,SAASI,KAAKK,YAAYb,KAAKC,WAC/BD,KAAKC,UAAY,MAGvB"}
|
package/dist/esm/src/storage.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const t="embedded_wallet_state",e="superstack_wallet_type",a="
|
|
1
|
+
const t="embedded_wallet_state",e="superstack_wallet_type",a="superstack_backup_wallet_type",c="embedded_wallet_access_token",l="switched_account_address";class s{static saveState(e,a){const c={accessToken:e,socials:a,lastConnected:Date.now()};localStorage.setItem(t,JSON.stringify(c))}static saveAccessToken(t){localStorage.setItem(c,t)}static saveWalletType(t){localStorage.setItem(e,t)}static saveBackupWalletType(t){localStorage.setItem(a,t)}static saveSwitchedAccountAddress(t){localStorage.setItem(l,t)}static getWalletType(){return localStorage.getItem(e)}static getBackupWalletType(){return localStorage.getItem(a)}static getState(){try{const e=localStorage.getItem(t);if(!e)return null;const a=JSON.parse(e);return Date.now()-a.lastConnected<6048e5?a:(this.clear(),null)}catch(t){return null}}static getSocials(){try{const e=localStorage.getItem(t);if(!e)return null;return JSON.parse(e).socials}catch(t){return null}}static getAccessToken(){return localStorage.getItem(c)}static getSwitchedAccountAddress(){return localStorage.getItem(l)}static clear(){localStorage.removeItem(t),localStorage.removeItem(e),localStorage.removeItem(c),localStorage.removeItem(l)}static clearBackup(){localStorage.removeItem(a)}}export{c as ACCESS_TOKEN_KEY,a as BACKUP_WALLET_TYPE_KEY,t as STORAGE_STATE_KEY,l as SWITCHED_ACCOUNT_ADDRESS,s as Storage,e as WALLET_TYPE_KEY};
|
|
2
2
|
//# sourceMappingURL=storage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sources":["../../../../src/storage.ts"],"sourcesContent":[null],"names":["STORAGE_STATE_KEY","WALLET_TYPE_KEY","ACCESS_TOKEN_KEY","SWITCHED_ACCOUNT_ADDRESS","Storage","saveState","token","socials","state","accessToken","lastConnected","Date","now","localStorage","setItem","JSON","stringify","saveAccessToken","saveWalletType","type","saveSwitchedAccountAddress","address","getWalletType","getItem","getState","stateStr","parse","this","clear","_a","getSocials","getAccessToken","getSwitchedAccountAddress","removeItem"],"mappings":"AAEO,MAAMA,EAAoB,wBACpBC,EAAkB,yBAClBC,EAAmB,+BACnBC,EAA2B,iCAQ3BC,EACT,gBAAOC,CAAUC,EAAeC,GAC5B,MAAMC,EAAsB,CACxBC,YAAaH,EACbC,QAASA,EACTG,cAAeC,KAAKC,OAExBC,aAAaC,
|
|
1
|
+
{"version":3,"file":"storage.js","sources":["../../../../src/storage.ts"],"sourcesContent":[null],"names":["STORAGE_STATE_KEY","WALLET_TYPE_KEY","BACKUP_WALLET_TYPE_KEY","ACCESS_TOKEN_KEY","SWITCHED_ACCOUNT_ADDRESS","Storage","saveState","token","socials","state","accessToken","lastConnected","Date","now","localStorage","setItem","JSON","stringify","saveAccessToken","saveWalletType","type","saveBackupWalletType","saveSwitchedAccountAddress","address","getWalletType","getItem","getBackupWalletType","getState","stateStr","parse","this","clear","_a","getSocials","getAccessToken","getSwitchedAccountAddress","removeItem","clearBackup"],"mappings":"AAEO,MAAMA,EAAoB,wBACpBC,EAAkB,yBAClBC,EAAyB,gCACzBC,EAAmB,+BACnBC,EAA2B,iCAQ3BC,EACT,gBAAOC,CAAUC,EAAeC,GAC5B,MAAMC,EAAsB,CACxBC,YAAaH,EACbC,QAASA,EACTG,cAAeC,KAAKC,OAExBC,aAAaC,QAAQf,EAAmBgB,KAAKC,UAAUR,GAC3D,CAEA,sBAAOS,CAAgBX,GACnBO,aAAaC,QAAQZ,EAAkBI,EAC3C,CAEA,qBAAOY,CAAeC,GAClBN,aAAaC,QAAQd,EAAiBmB,EAC1C,CAEA,2BAAOC,CAAqBD,GACxBN,aAAaC,QAAQb,EAAwBkB,EACjD,CAEA,iCAAOE,CAA2BC,GAC9BT,aAAaC,QAAQX,EAA0BmB,EACnD,CAEA,oBAAOC,GACH,OAAOV,aAAaW,QAAQxB,EAChC,CAEA,0BAAOyB,GACH,OAAOZ,aAAaW,QAAQvB,EAChC,CAEA,eAAOyB,GACH,IACI,MAAMC,EAAWd,aAAaW,QAAQzB,GACtC,IAAK4B,EAAU,OAAO,KAEtB,MAAMnB,EAAsBO,KAAKa,MAAMD,GAIvC,OAFgBhB,KAAKC,MAAQJ,EAAME,cAAgB,OAO5CF,GAJHqB,KAAKC,QACE,KAIf,CAAE,MAAAC,GACE,OAAO,IACX,CACJ,CAEA,iBAAOC,GACH,IACI,MAAML,EAAWd,aAAaW,QAAQzB,GACtC,IAAK4B,EAAU,OAAO,KAGtB,OAD4BZ,KAAKa,MAAMD,GAC1BpB,OACjB,CAAE,MAAAwB,GACE,OAAO,IACX,CACJ,CAEA,qBAAOE,GACH,OAAOpB,aAAaW,QAAQtB,EAChC,CAEA,gCAAOgC,GACH,OAAOrB,aAAaW,QAAQrB,EAChC,CAEA,YAAO2B,GACHjB,aAAasB,WAAWpC,GACxBc,aAAasB,WAAWnC,GACxBa,aAAasB,WAAWjC,GACxBW,aAAasB,WAAWhC,EAC5B,CACA,kBAAOiC,GACHvB,aAAasB,WAAWlC,EAC5B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sources":["../../../../src/types.ts"],"sourcesContent":[null],"names":["isVersionedTransaction","transaction","Network","WalletType","SocialType","VaultId","BorrowedAsset","CollateralAsset","CrossMarginPositionStatus","CrossMarginOperationType"],"mappings":"AAkBM,SAAUA,EACdC,GAEA,MAAO,YAAaA,CACtB,KAgBYC,EAKAC,EAKAC,
|
|
1
|
+
{"version":3,"file":"types.js","sources":["../../../../src/types.ts"],"sourcesContent":[null],"names":["isVersionedTransaction","transaction","Network","WalletType","SocialType","VaultId","BorrowedAsset","CollateralAsset","CrossMarginPositionStatus","CrossMarginOperationType"],"mappings":"AAkBM,SAAUA,EACdC,GAEA,MAAO,YAAaA,CACtB,KAgBYC,EAKAC,EAKAC,EAqKAC,EAyDAC,EAIAC,EAIAC,EAOAC,GAvPZ,SAAYP,GACVA,EAAA,OAAA,SACAA,EAAA,SAAA,UACD,CAHD,CAAYA,IAAAA,EAAO,CAAA,IAKnB,SAAYC,GACVA,EAAA,QAAA,UACAA,EAAA,SAAA,UACD,CAHD,CAAYA,IAAAA,EAAU,CAAA,IAKtB,SAAYC,GACVA,EAAA,MAAA,QACAA,EAAA,OAAA,SACAA,EAAA,QAAA,UACAA,EAAA,QAAA,UACAA,EAAA,MAAA,QACAA,EAAA,IAAA,KACD,CAPD,CAAYA,IAAAA,EAAU,CAAA,IAqKtB,SAAYC,GACVA,EAAA,mBAAA,qBACAA,EAAA,mBAAA,qBACAA,EAAA,cAAA,gBACAA,EAAA,cAAA,gBACAA,EAAA,cAAA,gBACAA,EAAA,YAAA,cACAA,EAAA,OAAA,SACAA,EAAA,OAAA,QACD,CATD,CAAYA,IAAAA,EAAO,CAAA,IAyDnB,SAAYC,GACVA,EAAA,mBAAA,oBACD,CAFD,CAAYA,IAAAA,EAAa,CAAA,IAIzB,SAAYC,GACVA,EAAA,iBAAA,kBACD,CAFD,CAAYA,IAAAA,EAAe,CAAA,IAI3B,SAAYC,GACVA,EAAA,KAAA,OACAA,EAAA,OAAA,SACAA,EAAA,oBAAA,sBACAA,EAAA,cAAA,eACD,CALD,CAAYA,IAAAA,EAAyB,CAAA,IAOrC,SAAYC,GACVA,EAAA,OAAA,SACAA,EAAA,MAAA,QACAA,EAAA,UAAA,YACAA,EAAA,aAAA,eACAA,EAAA,YAAA,aACD,CAND,CAAYA,IAAAA,EAAwB,CAAA"}
|
|
@@ -33,15 +33,18 @@ export declare class WalletClient {
|
|
|
33
33
|
private walletInfo;
|
|
34
34
|
private phantomAdapter;
|
|
35
35
|
private walletType;
|
|
36
|
+
private backupWalletType;
|
|
36
37
|
private solanaCluster;
|
|
37
38
|
private ethereumNetwork;
|
|
38
39
|
private defaultNetwork;
|
|
39
40
|
constructor(config: WalletProviderConfig);
|
|
40
41
|
private setWallet;
|
|
41
42
|
private setWalletType;
|
|
43
|
+
private setBackupWalletType;
|
|
42
44
|
getWallet(): WalletInfo | null;
|
|
43
45
|
getPhantomAdapter(): PhantomWalletAdapter | null;
|
|
44
46
|
getWalletType(): "phantom" | "embedded";
|
|
47
|
+
getBackupWalletType(): "phantom_backup" | "embedded_backup";
|
|
45
48
|
get wallet(): Wallet | null;
|
|
46
49
|
get address(): string | null;
|
|
47
50
|
get network(): Network | null;
|
|
@@ -55,7 +58,7 @@ export declare class WalletClient {
|
|
|
55
58
|
get solanaAddress(): string | null;
|
|
56
59
|
get id(): string | null;
|
|
57
60
|
get social_links(): Social[] | null;
|
|
58
|
-
reconnect(): Promise<WalletInfo | null>;
|
|
61
|
+
reconnect(isBackup?: boolean): Promise<WalletInfo | null>;
|
|
59
62
|
connectPhantom(): Promise<WalletInfo | null>;
|
|
60
63
|
updateAccountName(name: string): Promise<any>;
|
|
61
64
|
signSolanaTransaction(transaction: Transaction | VersionedTransaction): Promise<Transaction | VersionedTransaction>;
|
|
@@ -99,12 +102,14 @@ export declare class WalletClient {
|
|
|
99
102
|
code: string;
|
|
100
103
|
code_verifier: string;
|
|
101
104
|
network?: Network;
|
|
105
|
+
isBackup?: boolean;
|
|
102
106
|
}): Promise<WalletInfo | null>;
|
|
103
107
|
loginWithChallenge(type: LoginType, params: {
|
|
104
108
|
wallet_address: string;
|
|
105
109
|
challenge: string;
|
|
106
110
|
signature: string;
|
|
107
111
|
network?: Network;
|
|
112
|
+
isBackup?: boolean;
|
|
108
113
|
}): Promise<WalletInfo | null>;
|
|
109
114
|
oauthInit(params: {
|
|
110
115
|
provider: string;
|
|
@@ -124,7 +129,7 @@ export declare class WalletClient {
|
|
|
124
129
|
expires_at: number;
|
|
125
130
|
}>;
|
|
126
131
|
getSession(): Promise<WalletInfo>;
|
|
127
|
-
logout(): Promise<void>;
|
|
132
|
+
logout(isBackup?: boolean): Promise<void>;
|
|
128
133
|
getOAuth2ClientId(provider: string): Promise<string>;
|
|
129
134
|
setSelectedWallet(walletId: string): void;
|
|
130
135
|
getSelectedWallet(): string | null;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import React, { type ReactNode } from "react";
|
|
2
|
+
import { WalletInfo, UserSession } from "./types";
|
|
3
|
+
import { WalletClient, WalletProviderConfig } from "./client";
|
|
4
|
+
interface WalletState {
|
|
5
|
+
isAuthenticated: boolean;
|
|
6
|
+
isConnecting: boolean;
|
|
7
|
+
isInitialized: boolean;
|
|
8
|
+
walletInfo: WalletInfo | null;
|
|
9
|
+
wallet: WalletClient | null;
|
|
10
|
+
session: UserSession | null;
|
|
11
|
+
error: string | null;
|
|
12
|
+
enableEmail: boolean;
|
|
13
|
+
enablePhone: boolean;
|
|
14
|
+
enableGoogle: boolean;
|
|
15
|
+
enableTwitter: boolean;
|
|
16
|
+
enablePhantom: boolean;
|
|
17
|
+
}
|
|
18
|
+
interface WalletContextValue extends WalletState {
|
|
19
|
+
connect: () => Promise<void>;
|
|
20
|
+
disconnect: () => void;
|
|
21
|
+
}
|
|
22
|
+
interface WalletProviderBackupProps {
|
|
23
|
+
children: ReactNode;
|
|
24
|
+
config: WalletProviderConfig;
|
|
25
|
+
}
|
|
26
|
+
export declare function WalletProviderBackup({ children, config }: WalletProviderBackupProps): React.JSX.Element;
|
|
27
|
+
export declare function useWalletBackup(): WalletContextValue;
|
|
28
|
+
export {};
|
|
@@ -12,10 +12,18 @@ export declare function useWalletStatus(): {
|
|
|
12
12
|
isInitialized: boolean;
|
|
13
13
|
ready: boolean;
|
|
14
14
|
};
|
|
15
|
+
export declare function useWalletBackupStatus(): {
|
|
16
|
+
isAuthenticated: boolean;
|
|
17
|
+
authenticated: boolean;
|
|
18
|
+
error: string | null;
|
|
19
|
+
session: import("./types").UserSession | null;
|
|
20
|
+
isInitialized: boolean;
|
|
21
|
+
ready: boolean;
|
|
22
|
+
};
|
|
15
23
|
export declare function useActiveWallet(): {
|
|
16
24
|
wallet: import("./client").WalletClient | null;
|
|
17
25
|
};
|
|
18
|
-
export declare function useLoginModal({ client, isOpen, onClose, onLogin, isLoading
|
|
26
|
+
export declare function useLoginModal({ client, isOpen, onClose, onLogin, isLoading }: LoginModalProps): {
|
|
19
27
|
email: string;
|
|
20
28
|
setEmail: import("react").Dispatch<import("react").SetStateAction<string>>;
|
|
21
29
|
emailSent: boolean;
|
|
@@ -42,6 +50,7 @@ export declare function useLoginModal({ client, isOpen, onClose, onLogin, isLoad
|
|
|
42
50
|
wallet_address: string;
|
|
43
51
|
challenge: string;
|
|
44
52
|
signature: string;
|
|
53
|
+
isBackup?: boolean;
|
|
45
54
|
}) => Promise<void>;
|
|
46
55
|
phone: string;
|
|
47
56
|
setPhone: import("react").Dispatch<import("react").SetStateAction<string>>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Social } from "./types";
|
|
2
2
|
export declare const STORAGE_STATE_KEY = "embedded_wallet_state";
|
|
3
3
|
export declare const WALLET_TYPE_KEY = "superstack_wallet_type";
|
|
4
|
+
export declare const BACKUP_WALLET_TYPE_KEY = "superstack_backup_wallet_type";
|
|
4
5
|
export declare const ACCESS_TOKEN_KEY = "embedded_wallet_access_token";
|
|
5
6
|
export declare const SWITCHED_ACCOUNT_ADDRESS = "switched_account_address";
|
|
6
7
|
interface StorageState {
|
|
@@ -12,12 +13,15 @@ export declare class Storage {
|
|
|
12
13
|
static saveState(token: string, socials: Social[]): void;
|
|
13
14
|
static saveAccessToken(token: string): void;
|
|
14
15
|
static saveWalletType(type: "phantom" | "embedded"): void;
|
|
16
|
+
static saveBackupWalletType(type: "phantom_backup" | "embedded_backup"): void;
|
|
15
17
|
static saveSwitchedAccountAddress(address: string): void;
|
|
16
18
|
static getWalletType(): "phantom" | "embedded" | null;
|
|
19
|
+
static getBackupWalletType(): "phantom_backup" | "embedded_backup" | null;
|
|
17
20
|
static getState(): StorageState | null;
|
|
18
21
|
static getSocials(): Social[] | null;
|
|
19
22
|
static getAccessToken(): string | null;
|
|
20
23
|
static getSwitchedAccountAddress(): string | null;
|
|
21
24
|
static clear(): void;
|
|
25
|
+
static clearBackup(): void;
|
|
22
26
|
}
|
|
23
27
|
export {};
|
|
@@ -110,8 +110,9 @@ export interface IModalManager {
|
|
|
110
110
|
enableGoogle?: boolean;
|
|
111
111
|
enableTwitter?: boolean;
|
|
112
112
|
enablePhantom?: boolean;
|
|
113
|
+
isBackup?: boolean;
|
|
113
114
|
}) => Promise<void>;
|
|
114
|
-
hideModal: () => void;
|
|
115
|
+
hideModal: (isBackup?: boolean) => void;
|
|
115
116
|
}
|
|
116
117
|
export interface MiddleAccountRequest {
|
|
117
118
|
order_id: string;
|