UNPKG

rubic-sdk

Version:
31 lines 1.95 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.UniSwapV3UnichainProvider = void 0; const blockchain_name_1 = require("../../../../../../../core/blockchain/models/blockchain-name"); const uniswap_v3_abstract_provider_1 = require("../../common/uniswap-v3-abstract/uniswap-v3-abstract-provider"); const uniswap_v3_unichain_quoter_controller_1 = require("../../common/uniswap-v3-abstract/utils/quoter-controller/uniswap-v3-unichain-quoter-controller"); const contract_addresses_1 = require("./constants/contract-addresses"); const provider_configuration_1 = require("./constants/provider-configuration"); const router_configuration_1 = require("./constants/router-configuration"); const unichain_uni_v3_trade_1 = require("./unichain-uni-v3-trade"); class UniSwapV3UnichainProvider extends uniswap_v3_abstract_provider_1.UniswapV3AbstractProvider { constructor() { super(...arguments); this.blockchain = blockchain_name_1.BLOCKCHAIN_NAME.UNICHAIN; this.OnChainTradeClass = unichain_uni_v3_trade_1.UniswapV3UnichainTrade; this.providerConfiguration = provider_configuration_1.UNI_SWAP_V3_UNICHAIN_PROVIDER_CONFIGURATION; this.routerConfiguration = router_configuration_1.UNI_SWAP_V3_UNICHAIN_ROUTER_CONFIGURATION; this.dexContractAddress = contract_addresses_1.UNICHAIN_UNISWAP_V3_SWAP_ROUTER_CONTRACT_ADDRESS; this.quoterController = new uniswap_v3_unichain_quoter_controller_1.UnichainUniswapV3QuoterController(this.blockchain, this.routerConfiguration); } createTradeInstance(tradeStruct, route, providerAddress) { const path = this.extractPath(route); return new this.OnChainTradeClass({ ...tradeStruct, path, route }, providerAddress, this.dexContractAddress); } } exports.UniSwapV3UnichainProvider = UniSwapV3UnichainProvider; //# sourceMappingURL=unichain-uni-v3-provider.js.map