@xspswap/smart-order-router
Version:
XSwap Protocol V3 Smart Order Router
54 lines • 3.8 kB
JavaScript
import { DAI_XDC_APOTHEM, USDC_XDC, USDC_XDC_APOTHEM, USDT_XDC, USDT_XDC_APOTHEM, } from '../../providers/token-provider';
import { ChainId, WRAPPED_NATIVE_CURRENCY } from '../../util/chains';
export const BASES_TO_CHECK_TRADES_AGAINST = (_tokenProvider) => {
return {
[ChainId.XDC]: [WRAPPED_NATIVE_CURRENCY[ChainId.XDC], USDT_XDC, USDC_XDC],
[ChainId.XDC_APOTHEM]: [
WRAPPED_NATIVE_CURRENCY[ChainId.XDC_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.XDC_APOTHEM]: {
...(await getBasePairByAddress(tokenProvider, ChainId.XDC_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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcm91dGVycy9sZWdhY3ktcm91dGVyL2Jhc2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFDTCxlQUFlLEVBRWYsUUFBUSxFQUNSLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IsZ0JBQWdCLEdBQ2pCLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBTXJFLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLENBQzNDLGNBQThCLEVBQ2QsRUFBRTtJQUNsQixPQUFPO1FBQ0wsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFFLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQztRQUMxRSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUNyQix1QkFBdUIsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFFO1lBQzdDLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1NBQ2pCO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sb0JBQW9CLEdBQUcsS0FBSyxFQUNoQyxhQUE2QixFQUM3QixRQUFpQixFQUNqQixXQUFtQixFQUNuQixTQUFpQixFQUM2QixFQUFFO0lBQ2hELE1BQU0sUUFBUSxHQUFHLE1BQU0sYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDNUQsTUFBTSxPQUFPLEdBQXNCLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUV6RSxJQUFJLENBQUMsT0FBTztRQUFFLE9BQU8sRUFBRSxDQUFDO0lBRXhCLE9BQU87UUFDTCxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDO0tBQ3pCLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLEVBQ25DLGFBQTZCLEVBRzVCLEVBQUU7SUFDSCxPQUFPO1FBQ0wsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDckIsR0FBRyxDQUFDLE1BQU0sb0JBQW9CLENBQzVCLGFBQWEsRUFDYixPQUFPLENBQUMsV0FBVyxFQUNuQiw0Q0FBNEMsRUFDNUMsNENBQTRDLENBQzdDLENBQUM7U0FDSDtLQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsS0FBSztBQUMvQixhQUFhO0FBQ2IsYUFBNkIsRUFHNUIsRUFBRTtJQUNILE9BQU87SUFDTCx1QkFBdUI7SUFDdkIsb0NBQW9DO0lBQ3BDLHFCQUFxQjtJQUNyQix1QkFBdUI7SUFDdkIsb0RBQW9EO0lBQ3BELDBCQUEwQjtJQUMxQixRQUFRO0lBQ1Isb0NBQW9DO0lBQ3BDLHFCQUFxQjtJQUNyQix1QkFBdUI7SUFDdkIsb0RBQW9EO0lBQ3BELDBDQUEwQztJQUMxQyxRQUFRO0lBQ1IsS0FBSztLQUNOLENBQUM7QUFDSixDQUFDLENBQUMifQ==