@xspswap/smart-order-router
Version:
XSwap Protocol V3 Smart Order Router
55 lines • 3.81 kB
JavaScript
/* eslint-disable @typescript-eslint/no-non-null-assertion */
import { ChainId, WETH9 } from '@x-swap-protocol/sdk-core';
import { DAI_XDC_APOTHEM, USDC_XDC, USDC_XDC_APOTHEM, USDT_XDC, USDT_XDC_APOTHEM, } from '../../providers/token-provider';
export const BASES_TO_CHECK_TRADES_AGAINST = (_tokenProvider) => {
return {
[ChainId.XDC]: [WETH9[ChainId.XDC], USDT_XDC, USDC_XDC],
[ChainId.APOTHEM]: [
WETH9[ChainId.APOTHEM],
DAI_XDC_APOTHEM,
USDC_XDC_APOTHEM,
USDT_XDC_APOTHEM,
],
};
};
const getBasePairByAddress = async (tokenProvider, _chainId, fromAddress, toAddress) => {
const accessor = await tokenProvider.getTokens([toAddress]);
const toToken = accessor.getTokenByAddress(toAddress);
if (!toToken)
return {};
return {
[fromAddress]: [toToken],
};
};
export const ADDITIONAL_BASES = async (tokenProvider) => {
return {
[ChainId.APOTHEM]: {
...(await getBasePairByAddress(tokenProvider, ChainId.APOTHEM, '0xeb4c2781e4eba804ce9a9803c67d0893436bb27d', '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599')),
},
};
};
/**
* Some tokens can only be swapped via certain pairs, so we override the list of bases that are considered for these
* tokens.
*/
export 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
// )),
// },
};
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcm91dGVycy9sZWdhY3ktcm91dGVyL2Jhc2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDZEQUE2RDtBQUM3RCxPQUFPLEVBQUUsT0FBTyxFQUFTLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWxFLE9BQU8sRUFDTCxlQUFlLEVBRWYsUUFBUSxFQUNSLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IsZ0JBQWdCLEdBQ2pCLE1BQU0sZ0NBQWdDLENBQUM7QUFNeEMsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsQ0FDM0MsY0FBOEIsRUFDZCxFQUFFO0lBQ2xCLE9BQU87UUFDTCxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFFLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQztRQUN4RCxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNqQixLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBRTtZQUN2QixlQUFlO1lBQ2YsZ0JBQWdCO1lBQ2hCLGdCQUFnQjtTQUNqQjtLQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLG9CQUFvQixHQUFHLEtBQUssRUFDaEMsYUFBNkIsRUFDN0IsUUFBaUIsRUFDakIsV0FBbUIsRUFDbkIsU0FBaUIsRUFDNkIsRUFBRTtJQUNoRCxNQUFNLFFBQVEsR0FBRyxNQUFNLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQzVELE1BQU0sT0FBTyxHQUFzQixRQUFRLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFekUsSUFBSSxDQUFDLE9BQU87UUFBRSxPQUFPLEVBQUUsQ0FBQztJQUV4QixPQUFPO1FBQ0wsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQztLQUN6QixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxFQUNuQyxhQUE2QixFQUc1QixFQUFFO0lBQ0gsT0FBTztRQUNMLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ2pCLEdBQUcsQ0FBQyxNQUFNLG9CQUFvQixDQUM1QixhQUFhLEVBQ2IsT0FBTyxDQUFDLE9BQU8sRUFDZiw0Q0FBNEMsRUFDNUMsNENBQTRDLENBQzdDLENBQUM7U0FDSDtLQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsS0FBSztBQUMvQixhQUFhO0FBQ2IsYUFBNkIsRUFHNUIsRUFBRTtJQUNILE9BQU87SUFDTCx1QkFBdUI7SUFDdkIsb0NBQW9DO0lBQ3BDLHFCQUFxQjtJQUNyQix1QkFBdUI7SUFDdkIsb0RBQW9EO0lBQ3BELDBCQUEwQjtJQUMxQixRQUFRO0lBQ1Isb0NBQW9DO0lBQ3BDLHFCQUFxQjtJQUNyQix1QkFBdUI7SUFDdkIsb0RBQW9EO0lBQ3BELDBDQUEwQztJQUMxQyxRQUFRO0lBQ1IsS0FBSztLQUNOLENBQUM7QUFDSixDQUFDLENBQUMifQ==