@xspswap/smart-order-router
Version:
XSwap Protocol V3 Smart Order Router
58 lines • 4.08 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CUSTOM_BASES = exports.ADDITIONAL_BASES = exports.BASES_TO_CHECK_TRADES_AGAINST = void 0;
const token_provider_1 = require("../../providers/token-provider");
const chains_1 = require("../../util/chains");
const BASES_TO_CHECK_TRADES_AGAINST = (_tokenProvider) => {
return {
[chains_1.ChainId.XDC]: [chains_1.WRAPPED_NATIVE_CURRENCY[chains_1.ChainId.XDC], token_provider_1.USDT_XDC, token_provider_1.USDC_XDC],
[chains_1.ChainId.XDC_APOTHEM]: [
chains_1.WRAPPED_NATIVE_CURRENCY[chains_1.ChainId.XDC_APOTHEM],
token_provider_1.DAI_XDC_APOTHEM,
token_provider_1.USDC_XDC_APOTHEM,
token_provider_1.USDT_XDC_APOTHEM,
],
};
};
exports.BASES_TO_CHECK_TRADES_AGAINST = BASES_TO_CHECK_TRADES_AGAINST;
const getBasePairByAddress = async (tokenProvider, _chainId, fromAddress, toAddress) => {
const accessor = await tokenProvider.getTokens([toAddress]);
const toToken = accessor.getTokenByAddress(toAddress);
if (!toToken)
return {};
return {
[fromAddress]: [toToken],
};
};
const ADDITIONAL_BASES = async (tokenProvider) => {
return {
[chains_1.ChainId.XDC_APOTHEM]: Object.assign({}, (await getBasePairByAddress(tokenProvider, chains_1.ChainId.XDC_APOTHEM, '0xeb4c2781e4eba804ce9a9803c67d0893436bb27d', '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599'))),
};
};
exports.ADDITIONAL_BASES = ADDITIONAL_BASES;
/**
* Some tokens can only be swapped via certain pairs, so we override the list of bases that are considered for these
* tokens.
*/
const CUSTOM_BASES = async (
// @ts-ignore
tokenProvider) => {
return {
// [ChainId.MAINNET]: {
// ...(await getBasePairByAddress(
// tokenProvider,
// ChainId.MAINNET,
// '0xd46ba6d942050d489dbd938a2c909a5d5039a161',
// DAI_MAINNET.address
// )),
// ...(await getBasePairByAddress(
// tokenProvider,
// ChainId.MAINNET,
// '0xd46ba6d942050d489dbd938a2c909a5d5039a161',
// WRAPPED_NATIVE_CURRENCY[1]!.address
// )),
// },
};
};
exports.CUSTOM_BASES = CUSTOM_BASES;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcm91dGVycy9sZWdhY3ktcm91dGVyL2Jhc2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLG1FQU93QztBQUN4Qyw4Q0FBcUU7QUFNOUQsTUFBTSw2QkFBNkIsR0FBRyxDQUMzQyxjQUE4QixFQUNkLEVBQUU7SUFDbEIsT0FBTztRQUNMLENBQUMsZ0JBQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLGdDQUF1QixDQUFDLGdCQUFPLENBQUMsR0FBRyxDQUFFLEVBQUUseUJBQVEsRUFBRSx5QkFBUSxDQUFDO1FBQzFFLENBQUMsZ0JBQU8sQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUNyQixnQ0FBdUIsQ0FBQyxnQkFBTyxDQUFDLFdBQVcsQ0FBRTtZQUM3QyxnQ0FBZTtZQUNmLGlDQUFnQjtZQUNoQixpQ0FBZ0I7U0FDakI7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBWlcsUUFBQSw2QkFBNkIsaUNBWXhDO0FBRUYsTUFBTSxvQkFBb0IsR0FBRyxLQUFLLEVBQ2hDLGFBQTZCLEVBQzdCLFFBQWlCLEVBQ2pCLFdBQW1CLEVBQ25CLFNBQWlCLEVBQzZCLEVBQUU7SUFDaEQsTUFBTSxRQUFRLEdBQUcsTUFBTSxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUM1RCxNQUFNLE9BQU8sR0FBc0IsUUFBUSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRXpFLElBQUksQ0FBQyxPQUFPO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFFeEIsT0FBTztRQUNMLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUM7S0FDekIsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVLLE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxFQUNuQyxhQUE2QixFQUc1QixFQUFFO0lBQ0gsT0FBTztRQUNMLENBQUMsZ0JBQU8sQ0FBQyxXQUFXLENBQUMsb0JBQ2hCLENBQUMsTUFBTSxvQkFBb0IsQ0FDNUIsYUFBYSxFQUNiLGdCQUFPLENBQUMsV0FBVyxFQUNuQiw0Q0FBNEMsRUFDNUMsNENBQTRDLENBQzdDLENBQUMsQ0FDSDtLQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUFmVyxRQUFBLGdCQUFnQixvQkFlM0I7QUFFRjs7O0dBR0c7QUFDSSxNQUFNLFlBQVksR0FBRyxLQUFLO0FBQy9CLGFBQWE7QUFDYixhQUE2QixFQUc1QixFQUFFO0lBQ0gsT0FBTztJQUNMLHVCQUF1QjtJQUN2QixvQ0FBb0M7SUFDcEMscUJBQXFCO0lBQ3JCLHVCQUF1QjtJQUN2QixvREFBb0Q7SUFDcEQsMEJBQTBCO0lBQzFCLFFBQVE7SUFDUixvQ0FBb0M7SUFDcEMscUJBQXFCO0lBQ3JCLHVCQUF1QjtJQUN2QixvREFBb0Q7SUFDcEQsMENBQTBDO0lBQzFDLFFBQVE7SUFDUixLQUFLO0tBQ04sQ0FBQztBQUNKLENBQUMsQ0FBQztBQXRCVyxRQUFBLFlBQVksZ0JBc0J2QiJ9