UNPKG

@bluefin-exchange/bluefin7k-aggregator-sdk

Version:
23 lines (22 loc) 816 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.swapWithRoute = swapWithRoute; const protocols_1 = require("./protocols"); async function swapWithRoute({ route, inputCoinObject, currentAccount, config, pythMap, tx, }) { let inputTokenObject = inputCoinObject; let txbResultToReturn; for (const swap of route) { const ContractClass = protocols_1.ProtocolContract[swap.pool.type]; const contractInstance = new ContractClass({ swapInfo: swap, inputCoinObject: inputTokenObject, currentAccount, config, pythMap, }); const tokenOut = await contractInstance.swap(tx); inputTokenObject = tokenOut; txbResultToReturn = tokenOut; } return txbResultToReturn; }