UNPKG

rubic-sdk

Version:
44 lines 2.02 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.TonCrossChainTrade = void 0; const bignumber_js_1 = __importDefault(require("bignumber.js")); const errors_1 = require("../../../../../../common/errors"); const blockchain_name_1 = require("../../../../../../core/blockchain/models/blockchain-name"); const injector_1 = require("../../../../../../core/injector/injector"); const cross_chain_trade_1 = require("../cross-chain-trade"); class TonCrossChainTrade extends cross_chain_trade_1.CrossChainTrade { /** * Gas fee info in source blockchain. */ get fromWeb3Public() { return injector_1.Injector.web3PublicService.getWeb3Public(blockchain_name_1.BLOCKCHAIN_NAME.TON); } get web3Private() { return injector_1.Injector.web3PrivateService.getWeb3PrivateByBlockchain(blockchain_name_1.BLOCKCHAIN_NAME.TON); } async approve(_options, _checkNeedApprove = true, _amount = 'infinity') { throw new errors_1.RubicSdkError('Method not implemented!'); } async checkAllowanceAndApprove(_options) { return; } async encode(_options) { throw new errors_1.RubicSdkError('Method not implemented! Use custom swap methods on each child class!'); } async encodeApprove(_tokenAddress, _spenderAddress, _value, _options = {}) { throw new Error('Method not implemented'); } getUsdPrice(providerFeeToken) { let feeSum = new bignumber_js_1.default(0); const providerFee = this.feeInfo.provider?.cryptoFee; if (providerFee) { feeSum = feeSum.plus(providerFee.amount.multipliedBy(providerFeeToken || providerFee.token.price)); } return this.to.price.multipliedBy(this.to.tokenAmount).minus(feeSum); } } exports.TonCrossChainTrade = TonCrossChainTrade; //# sourceMappingURL=ton-cross-chain-trade.js.map