UNPKG

rubic-sdk

Version:
68 lines 3.09 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.BrontoFinanceTrade = void 0; const on_chain_trade_type_1 = require("../../../common/models/on-chain-trade-type"); const bronto_finance_quoter_controller_1 = require("../../common/uniswap-v3-abstract/bronto-finance-quoter-controller"); const swap_router_contract_abi_1 = require("../../common/uniswap-v3-abstract/constants/swap-router-contract-abi"); const uniswap_v3_abstract_trade_1 = require("../../common/uniswap-v3-abstract/uniswap-v3-abstract-trade"); const provider_config_1 = require("./constants/provider-config"); class BrontoFinanceTrade extends uniswap_v3_abstract_trade_1.UniswapV3AbstractTrade { constructor() { super(...arguments); this.dexContractAddress = provider_config_1.MEGAETH_TESTNET_ROUTER_CONTRACT_ADDRESS; this.contractAbi = swap_router_contract_abi_1.UNISWAP_V3_SWAP_ROUTER_CONTRACT_ABI; } get type() { return on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.BRONTO_FINANCE; } /** * Returns swap `exactInput` method's name and arguments to use in Swap contract. */ getSwapRouterExactInputMethodData(walletAddress) { const amountParams = this.getAmountParams(); // if (this.route.poolsPath.length === 1) { // const methodName = this.exact === 'input' ? 'exactInputSingle' : 'exactOutputSingle'; // const pool = this.route.poolsPath[0]; // if (!pool) { // throw new RubicSdkError('Initial pool has to be defined'); // } // const toTokenAddress = compareAddresses( // pool.token0.address, // this.route.initialTokenAddress // ) // ? pool.token1.address // : pool.token0.address; // if (!this.route?.poolsPath?.[0]) { // throw new RubicSdkError('PoolsPath[0] has to be defined'); // } // return { // methodName, // methodArguments: [ // [ // this.route.initialTokenAddress, // toTokenAddress, // this.route.poolsPath[0].fee, // walletAddress, // this.deadlineMinutesTimestamp, // ...amountParams, // 0 // ] // ] // }; // } const methodName = this.exact === 'input' ? 'exactInput' : 'exactOutput'; return { methodName, methodArguments: [ [ bronto_finance_quoter_controller_1.BrontoFinanceQuoterController.getEncodedPoolsPath(this.route.poolsPath, this.route.initialTokenAddress), walletAddress, this.deadlineMinutesTimestamp, ...amountParams ] ] }; } } exports.BrontoFinanceTrade = BrontoFinanceTrade; //# sourceMappingURL=bronto-finance-trade.js.map