@accret/bridge-sdk
Version:
55 lines • 2.21 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getDeBridgeQuote = getDeBridgeQuote;
exports.executeDeBridgeSwap = executeDeBridgeSwap;
exports.getDeBridgeTokenList = getDeBridgeTokenList;
const getQuote_1 = require("./getQuote");
const utils_1 = require("../../utils");
const getTokenList_1 = require("./getTokenList");
const buildTransaction_1 = require("./buildTransaction");
const getRpcUrl_1 = require("../../utils/getRpcUrl");
async function getDeBridgeQuote(params) {
const quote = await (0, getQuote_1.getQuote)({
srcChain: (0, utils_1.getChainInfo)(params.srcChain).deBridge,
srcChainTokenIn: params.srcChainTokenIn,
srcChainTokenInAmount: params.srcChainTokenInAmount,
srcTokenDecimals: params.srcTokenDecimals,
dstChain: (0, utils_1.getChainInfo)(params.dstChain).deBridge,
dstChainTokenOut: params.dstChainTokenOut,
slippage: params.slippage,
affiliateFeeRecipient: params.affiliateFeeRecipient,
affiliateFeePercent: params.affiliateFeePercent / 100,
});
if (!quote) {
throw new Error("No quote found", { cause: quote });
}
return quote;
}
async function executeDeBridgeSwap(params) {
if (params.srcNetwork === params.dstNetwork) {
const singleChainParams = {
...params,
network: (0, utils_1.getChainInfo)(params.srcNetwork).deBridge,
};
return await (0, buildTransaction_1.executeSingleChainSwap)(singleChainParams);
}
else {
const crossChainParams = {
...params,
srcChainRpcUrl: (0, getRpcUrl_1.getRpcUrl)({ chainId: params.srcNetwork }),
};
return await (0, buildTransaction_1.executeCrossChainSwap)(crossChainParams);
}
}
async function getDeBridgeTokenList(chain) {
const chainInfo = (0, utils_1.getChainInfo)(chain).deBridge;
if (!chainInfo) {
throw new Error(`Unsupported chain: ${chain}`);
}
const tokenList = await (0, getTokenList_1.getTokenList)(chainInfo);
if (!tokenList) {
throw new Error("No token list found", { cause: tokenList });
}
return tokenList;
}
//# sourceMappingURL=index.js.map