UNPKG

@frakt-protocol/frakt-sdk

Version:

Frakt SDK for interacting with frakt.xyz protocols

31 lines (30 loc) 1.12 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getInputAmount = void 0; const raydium_sdk_1 = require("@raydium-io/raydium-sdk"); const getInputAmount = ({ poolKeys, poolInfo, receiveToken, receiveAmount, payToken, slippage = new raydium_sdk_1.Percent(1, 100), }) => { try { const amountOut = new raydium_sdk_1.TokenAmount(new raydium_sdk_1.Token(receiveToken.address, receiveToken.decimals, receiveToken.symbol, receiveToken.name), receiveAmount, false); const { amountIn, maxAmountIn, priceImpact } = raydium_sdk_1.Liquidity.computeAmountIn({ poolKeys, poolInfo, amountOut, currencyIn: payToken, slippage, }); return { amountIn: amountIn.toSignificant(), maxAmountIn: maxAmountIn.toSignificant(), priceImpact: priceImpact.toSignificant(), }; } catch (err) { console.error(err); } return { amountIn: '', maxAmountIn: '', priceImpact: '', }; }; exports.getInputAmount = getInputAmount;