superstack-wallet-sdk 0.5.2 → 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 +1 -1
- package/dist/esm/src/types.js.map +1 -1
- package/dist/esm/types/client.d.ts +16 -3
- 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 +134 -1
- package/dist/index.cjs +123 -123
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +193 -9
- 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 n}from"./storage.js";import{Connection as o,PublicKey as i,LAMPORTS_PER_SOL as s}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 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/clients/transports/http.js";import{serializeSignature 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/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 v{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 o(a.solanaCluster.rpcUrl),a.ethereumNetwork&&(this.ethereumNetwork={...a.ethereumNetwork,chainId:Number(a.ethereumNetwork.chainId)},this.ethereumProvider=w({transport:m(a.ethereumNetwork.rpcUrl)})),this.defaultNetwork=a.defaultNetwork||e.Solana}setWallet(t){this.walletInfo=t}setWalletType(t){this.walletType=t,n.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===n.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,o;const i=null===(a=null===(t=this.walletInfo)||void 0===t?void 0:t.wallets.find(t=>t.address===n.getSwitchedAccountAddress()))||void 0===a?void 0:a.wallet_set;return i?(null===(r=this.walletInfo)||void 0===r?void 0:r.wallets.find(t=>t.network===e.Solana&&t.wallet_set===i))||null:(null===(o=this.walletInfo)||void 0===o?void 0:o.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"===n.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 n=this.solanaWallet;if(!n)throw new Error("No solana wallet available");const o={user_id:this.walletInfo.id,address:n.address,network:e.Solana,tx:{Solana:l.encode(r(t)?t.message.serialize():t.serializeMessage())}},s=await this.api.post("/sign2",o,{withCredentials:!0}),{signature:d}=s.data;return t.addSignature(new i(n.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:n}=r.data;return n}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&&n.saveAccessToken(e),t}async logout(){this.phantomAdapter?(this.phantomAdapter.disconnect(),this.phantomAdapter=null):await this.api.post("/logout",{},{withCredentials:!0}),this.setWallet(null),n.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 i(this.solanaAddress))/s).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:n}=r.data,o=l.decode(n),i=o[64];return p({r:`0x${u.from(o.slice(0,32)).toString("hex")}`,s:`0x${u.from(o.slice(32,64)).toString("hex")}`,v:BigInt(i+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")}}}export{v 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"],"mappings":"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"}
|
|
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":"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"}
|
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{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"}
|
package/dist/esm/src/types.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
function e(e){return"version"in e}var t,a,n,r;!function(e){e.Solana="Solana",e.Ethereum="Ethereum"}(t||(t={})),function(e){e.Phantom="Phantom",e.Embedded="Embedded"}(a||(a={})),function(e){e.Email="Email",e.Google="Google",e.Twitter="Twitter",e.Phantom="Phantom",e.Phone="Phone",e.Okx="Okx"}(n||(n={})),function(e){e.HyperbeatUltraHype="HyperbeatUltraHype",e.HyperbeatUltraUbtc="HyperbeatUltraUbtc",e.HyperbeatUsdt="HyperbeatUsdt",e.HyperbeatUsdc="HyperbeatUsdc",e.HyperbeatXaut="HyperbeatXaut",e.VentualsVlp="VentualsVlp",e.DnHype="DnHype",e.DnPump="DnPump"}(r||(r={}));export{t as Network,n as SocialType,r as VaultId,a as WalletType,e as isVersionedTransaction};
|
|
1
|
+
function e(e){return"version"in e}var t,a,n,r,o,i,p,d;!function(e){e.Solana="Solana",e.Ethereum="Ethereum"}(t||(t={})),function(e){e.Phantom="Phantom",e.Embedded="Embedded"}(a||(a={})),function(e){e.Email="Email",e.Google="Google",e.Twitter="Twitter",e.Phantom="Phantom",e.Phone="Phone",e.Okx="Okx"}(n||(n={})),function(e){e.HyperbeatUltraHype="HyperbeatUltraHype",e.HyperbeatUltraUbtc="HyperbeatUltraUbtc",e.HyperbeatUsdt="HyperbeatUsdt",e.HyperbeatUsdc="HyperbeatUsdc",e.HyperbeatXaut="HyperbeatXaut",e.VentualsVlp="VentualsVlp",e.DnHype="DnHype",e.DnPump="DnPump"}(r||(r={})),function(e){e.HypercorePerpsUSDC="HypercorePerpsUSDC"}(o||(o={})),function(e){e.HypercoreSpotBTC="HypercoreSpotBTC"}(i||(i={})),function(e){e.Open="Open",e.Closed="Closed",e.PartiallyLiquidated="PartiallyLiquidated",e.AllLiquidated="AllLiquidated"}(p||(p={})),function(e){e.Borrow="Borrow",e.Repay="Repay",e.AddMargin="AddMargin",e.RemoveMargin="RemoveMargin",e.Liquidation="Liquidation"}(d||(d={}));export{o as BorrowedAsset,i as CollateralAsset,d as CrossMarginOperationType,p as CrossMarginPositionStatus,t as Network,n as SocialType,r as VaultId,a as WalletType,e as isVersionedTransaction};
|
|
2
2
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sources":["../../../../src/types.ts"],"sourcesContent":[null],"names":["isVersionedTransaction","transaction","Network","WalletType","SocialType","VaultId"],"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Wallet, Social, WalletInfo, Network, IModalManager, MiddleAccountRequest, MiddleAccount, CoinbaseOnrampRequest, OrderState, LoginType, BuildTransactionRequest, BuildTransactionResponse } from "./types";
|
|
1
|
+
import { Wallet, Social, WalletInfo, Network, IModalManager, MiddleAccountRequest, MiddleAccount, CoinbaseOnrampRequest, OrderState, LoginType, BuildTransactionRequest, BuildTransactionResponse, CrossMarginAdjustMarginRequest, CrossMarginAdjustMarginResponse, CrossMarginBorrowQuoteRequest, CrossMarginBorrowQuoteResponse, CrossMarginBorrowRequest, CrossMarginBorrowResponse, CrossMarginGeneralInfoResponse, CrossMarginRepayQuoteRequest, CrossMarginRepayQuoteResponse, CrossMarginRepayRequest, CrossMarginRepayResponse, UserHistoryResponse, UserOpenPositionsResponse } from "./types";
|
|
2
2
|
import { Transaction, VersionedTransaction } from "@solana/web3.js";
|
|
3
3
|
import { PhantomWalletAdapter } from "./adapters/phantom";
|
|
4
4
|
import * as viem from "viem";
|
|
@@ -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;
|
|
@@ -185,6 +190,14 @@ export declare class WalletClient {
|
|
|
185
190
|
* @returns Build transaction response with raw transaction
|
|
186
191
|
*/
|
|
187
192
|
buildTransaction(request: BuildTransactionRequest): Promise<BuildTransactionResponse>;
|
|
193
|
+
getCrossMarginGeneralInfo(): Promise<CrossMarginGeneralInfoResponse>;
|
|
194
|
+
getCrossMarginBorrowQuote(payload: CrossMarginBorrowQuoteRequest): Promise<CrossMarginBorrowQuoteResponse>;
|
|
195
|
+
borrowCrossMargin(payload: CrossMarginBorrowRequest): Promise<CrossMarginBorrowResponse>;
|
|
196
|
+
getCrossMarginRepayQuote(payload: CrossMarginRepayQuoteRequest): Promise<CrossMarginRepayQuoteResponse>;
|
|
197
|
+
repayCrossMargin(payload: CrossMarginRepayRequest): Promise<CrossMarginRepayResponse>;
|
|
198
|
+
adjustCrossMarginMargin(payload: CrossMarginAdjustMarginRequest): Promise<CrossMarginAdjustMarginResponse>;
|
|
199
|
+
getCrossMarginOpenPositions(): Promise<UserOpenPositionsResponse>;
|
|
200
|
+
getCrossMarginHistory(): Promise<UserHistoryResponse>;
|
|
188
201
|
}
|
|
189
202
|
export type SignTransactionReturnType<serializer extends viem.SerializeTransactionFn<viem.TransactionSerializable> = viem.SerializeTransactionFn<viem.TransactionSerializable>, transaction extends Parameters<serializer>[0] = Parameters<serializer>[0]> = viem.TransactionSerialized<viem.GetTransactionType<transaction>>;
|
|
190
203
|
export {};
|
|
@@ -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 {};
|