UNPKG

@flipflop-sdk/cli

Version:

FlipFlop CLI tool for common operations

51 lines 2.54 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.displayPoolCommand = displayPoolCommand; const web3_js_1 = require("@solana/web3.js"); const node_1 = require("@flipflop-sdk/node"); const anchor_1 = require("@coral-xyz/anchor"); const spl_token_1 = require("@solana/spl-token"); async function displayPoolCommand(options) { if (!options.rpc) { console.error('❌ Error: Missing --rpc parameter'); return; } if (!options.mint) { console.error('❌ Error: Missing --mint parameter'); return; } try { const connection = new web3_js_1.Connection(options.rpc, 'confirmed'); const result = await (0, node_1.displayPool)({ tokenAMint: spl_token_1.NATIVE_MINT, tokenBMint: new web3_js_1.PublicKey(options.mint), rpc: options.rpc, }); if (!result) { console.error('❌ No pool found for the given token pair'); return; } if (!result.success || !result.data) { console.error('❌ Error: ', result.message); return; } console.log('\n📊 Pool Information'); console.log('━'.repeat(50)); console.log(`Pool Address: ${result.data.poolAddress.toBase58()}`); console.log(`Config ID: ${result.data.configId.toBase58()}`); console.log(`Pool Creator: ${result.data.poolCreator.toBase58()}`); console.log(`Vault A: ${result.data.vaultA.toBase58()}`); console.log(`Vault B: ${result.data.vaultB.toBase58()}`); console.log(`LP Token Mint: ${result.data.mintLp.toBase58()}`); console.log(`Token A Mint: ${result.data.mintA.toBase58()}`); console.log(`Token B Mint: ${result.data.mintB.toBase58()}`); console.log(`LP Supply: ${(result.data.lpAmount.mul(new anchor_1.BN(1000)).div(new anchor_1.BN(web3_js_1.LAMPORTS_PER_SOL)).toNumber() / 1000)}`); console.log(`Pool Price: ${(1 / result.data.poolPrice).toFixed(12)} Token/SOL`); console.log(`Base Reserve: ${((result.data.baseReserve.mul(new anchor_1.BN(1000)).div(new anchor_1.BN(web3_js_1.LAMPORTS_PER_SOL))).toNumber() / 1000)} SOL`); console.log(`Quote Reserve: ${((result.data.quoteReserve.mul(new anchor_1.BN(1000)).div(new anchor_1.BN(web3_js_1.LAMPORTS_PER_SOL))).toNumber() / 1000)} Token`); } catch (error) { console.error('❌ Error: ', error instanceof Error ? error.message : 'Unknown error'); } } //# sourceMappingURL=display-pool.js.map