rubic-sdk-next
Version:
Simplify dApp creation
27 lines • 1.88 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SymbiosisCrossChainFactory = void 0;
const blockchains_info_1 = require("../../../../../core/blockchain/utils/blockchains-info/blockchains-info");
const symbiosis_ccr_bitcoin_trade_1 = require("./chain-trades/symbiosis-ccr-bitcoin-trade");
const symbiosis_ccr_evm_trade_1 = require("./chain-trades/symbiosis-ccr-evm-trade");
const symbiosis_ccr_ton_trade_1 = require("./chain-trades/symbiosis-ccr-ton-trade");
const symbiosis_ccr_tron_trade_1 = require("./chain-trades/symbiosis-ccr-tron-trade");
class SymbiosisCrossChainFactory {
static createTrade(fromBlockchain, constructorParams, providerAddress, routePath, apiQuote, apiResponse) {
if (blockchains_info_1.BlockchainsInfo.isTonBlockchainName(fromBlockchain)) {
return new symbiosis_ccr_ton_trade_1.SymbiosisCcrTonTrade(constructorParams, providerAddress, routePath, apiQuote, apiResponse);
}
if (blockchains_info_1.BlockchainsInfo.isEvmBlockchainName(fromBlockchain)) {
return new symbiosis_ccr_evm_trade_1.SymbiosisEvmCcrTrade(constructorParams, providerAddress, routePath, apiQuote, apiResponse);
}
if (blockchains_info_1.BlockchainsInfo.isTronBlockchainName(fromBlockchain)) {
return new symbiosis_ccr_tron_trade_1.SymbiosisTronCcrTrade(constructorParams, providerAddress, routePath, apiQuote, apiResponse);
}
if (blockchains_info_1.BlockchainsInfo.isBitcoinBlockchainName(fromBlockchain)) {
return new symbiosis_ccr_bitcoin_trade_1.SymbiosisCcrBitcoinTrade(constructorParams, providerAddress, routePath, apiQuote, apiResponse);
}
throw new Error('Can not create trade instance');
}
}
exports.SymbiosisCrossChainFactory = SymbiosisCrossChainFactory;
//# sourceMappingURL=symbiosis-cross-chain-factory.js.map