@paraswap/dex-lib 2.35.7-multiple-dex-base-chain.2 → 2.35.7-worker-pool.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/abi/quickPerps/fast-price-events.json +70 -0
- package/build/abi/quickPerps/fast-price-feed.json +748 -0
- package/build/abi/quickPerps/reader.json +313 -0
- package/build/abi/quickPerps/vault-price-feed.json +477 -0
- package/build/abi/quickPerps/vault.json +1953 -0
- package/build/config.js +2 -2
- package/build/dex/algebra/algebra.d.ts +4 -2
- package/build/dex/algebra/algebra.js +16 -3
- package/build/dex/algebra/algebra.js.map +1 -1
- package/build/dex/balancer-v2/config.js +1 -9
- package/build/dex/balancer-v2/config.js.map +1 -1
- package/build/dex/index.js +0 -2
- package/build/dex/index.js.map +1 -1
- package/build/dex/maverick-v1/config.js +0 -9
- package/build/dex/maverick-v1/config.js.map +1 -1
- package/build/dex/maverick-v1/maverick-v1.js +2 -11
- package/build/dex/maverick-v1/maverick-v1.js.map +1 -1
- package/build/dex/pancakeswap-v3/config.js +0 -17
- package/build/dex/pancakeswap-v3/config.js.map +1 -1
- package/build/dex/pancakeswap-v3/pancakeswap-v3.d.ts +3 -2
- package/build/dex/pancakeswap-v3/pancakeswap-v3.js +15 -3
- package/build/dex/pancakeswap-v3/pancakeswap-v3.js.map +1 -1
- package/build/dex/solidly/config.js +1 -22
- package/build/dex/solidly/config.js.map +1 -1
- package/build/dex/solidly/solidly.js +0 -1
- package/build/dex/solidly/solidly.js.map +1 -1
- package/build/dex/{ramses-v2 → test-dex}/config.d.ts +1 -1
- package/build/dex/test-dex/config.js +15 -0
- package/build/dex/test-dex/config.js.map +1 -0
- package/build/dex/test-dex/test-dex-pool.d.ts +39 -0
- package/build/dex/test-dex/test-dex-pool.js +63 -0
- package/build/dex/test-dex/test-dex-pool.js.map +1 -0
- package/build/dex/test-dex/test-dex.d.ts +37 -0
- package/build/dex/test-dex/test-dex.js +126 -0
- package/build/dex/test-dex/test-dex.js.map +1 -0
- package/build/dex/test-dex/types.d.ts +6 -0
- package/build/dex/{pancakeswap-v3 → test-dex}/types.js.map +1 -1
- package/build/dex/uniswap-v3/config.js +0 -12
- package/build/dex/uniswap-v3/config.js.map +1 -1
- package/build/dex/uniswap-v3/uniswap-v3.d.ts +3 -2
- package/build/dex/uniswap-v3/uniswap-v3.js +15 -3
- package/build/dex/uniswap-v3/uniswap-v3.js.map +1 -1
- package/build/dex/woo-fi-v2/config.js +0 -13
- package/build/dex/woo-fi-v2/config.js.map +1 -1
- package/build/dex/woo-fi-v2/woo-fi-math.d.ts +16 -0
- package/build/dex/woo-fi-v2/woo-fi-math.js +137 -0
- package/build/dex/woo-fi-v2/woo-fi-math.js.map +1 -0
- package/build/dex-helper/dummy-dex-helper.d.ts +1 -0
- package/build/dex-helper/dummy-dex-helper.js +3 -0
- package/build/dex-helper/dummy-dex-helper.js.map +1 -1
- package/build/dex-helper/idex-helper.d.ts +1 -0
- package/build/workers.d.ts +0 -0
- package/build/workers.js +2 -0
- package/build/workers.js.map +1 -0
- package/package.json +1 -1
- package/src/config.ts +2 -2
- package/src/dex/algebra/algebra.ts +11 -5
- package/src/dex/balancer-v2/balancer-v2-e2e.test.ts +1 -122
- package/src/dex/balancer-v2/config.ts +1 -10
- package/src/dex/index.ts +0 -2
- package/src/dex/maverick-v1/config.ts +0 -10
- package/src/dex/maverick-v1/maverick-v1-e2e.test.ts +1 -121
- package/src/dex/maverick-v1/maverick-v1.ts +2 -12
- package/src/dex/pancakeswap-v3/config.ts +0 -19
- package/src/dex/pancakeswap-v3/pancakeswap-v3-e2e.test.ts +0 -120
- package/src/dex/pancakeswap-v3/pancakeswap-v3.ts +10 -5
- package/src/dex/solidly/config.ts +1 -24
- package/src/dex/solidly/solidly-e2e.test.ts +0 -88
- package/src/dex/solidly/solidly-integration.test.ts +0 -66
- package/src/dex/solidly/solidly.ts +0 -1
- package/src/dex/uniswap-v3/config.ts +0 -13
- package/src/dex/uniswap-v3/uniswap-v3-e2e.test.ts +4 -25
- package/src/dex/uniswap-v3/uniswap-v3-integration.test.ts +0 -142
- package/src/dex/uniswap-v3/uniswap-v3.ts +10 -5
- package/src/dex/woo-fi-v2/config.ts +0 -13
- package/src/dex/woo-fi-v2/woo-fi-v2-e2e.test.ts +0 -64
- package/src/dex-helper/dummy-dex-helper.ts +13 -0
- package/src/dex-helper/idex-helper.ts +7 -0
- package/tests/constants-e2e.ts +0 -30
- package/tests/utils-e2e.ts +0 -1
- package/.idea/aws.xml +0 -17
- package/.idea/codeStyles/Project.xml +0 -19
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/misc.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/paraswap-dex-lib.iml +0 -9
- package/.idea/vcs.xml +0 -6
- package/build/abi/aerodrome/aerodrome-pool-factory.json +0 -586
- package/build/abi/algebra/AlgebraPool.abi.json +0 -727
- package/build/abi/curve-v1/StableSwapFRXETH.json +0 -889
- package/build/abi/curve-v1/StableSwapWBETH.json +0 -1223
- package/build/abi/sushiswap-v3/QuoterV2.json +0 -267
- package/build/abi/sushiswap-v3/RouterProcessor3.json +0 -289
- package/build/abi/wBETH.json +0 -1527
- package/build/dex/algebra/algebra-pool.d.ts +0 -46
- package/build/dex/algebra/algebra-pool.js +0 -336
- package/build/dex/algebra/algebra-pool.js.map +0 -1
- package/build/dex/curve-v1/pools/frxETHpool.d.ts +0 -7
- package/build/dex/curve-v1/pools/frxETHpool.js +0 -27
- package/build/dex/curve-v1/pools/frxETHpool.js.map +0 -1
- package/build/dex/curve-v1/pools/wbETHpool.d.ts +0 -29
- package/build/dex/curve-v1/pools/wbETHpool.js +0 -408
- package/build/dex/curve-v1/pools/wbETHpool.js.map +0 -1
- package/build/dex/pancakeswap-v3/types.d.ts +0 -14
- package/build/dex/ramses-v2/config.js +0 -28
- package/build/dex/ramses-v2/config.js.map +0 -1
- package/build/dex/ramses-v2/constants.d.ts +0 -28
- package/build/dex/ramses-v2/constants.js +0 -35
- package/build/dex/ramses-v2/constants.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/BitMath.d.ts +0 -4
- package/build/dex/ramses-v2/contract-math/BitMath.js +0 -93
- package/build/dex/ramses-v2/contract-math/BitMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/FixedPoint128.d.ts +0 -3
- package/build/dex/ramses-v2/contract-math/FixedPoint128.js +0 -8
- package/build/dex/ramses-v2/contract-math/FixedPoint128.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/FixedPoint96.d.ts +0 -4
- package/build/dex/ramses-v2/contract-math/FixedPoint96.js +0 -9
- package/build/dex/ramses-v2/contract-math/FixedPoint96.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/FullMath.d.ts +0 -4
- package/build/dex/ramses-v2/contract-math/FullMath.js +0 -19
- package/build/dex/ramses-v2/contract-math/FullMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/LiquidityMath.d.ts +0 -3
- package/build/dex/ramses-v2/contract-math/LiquidityMath.js +0 -22
- package/build/dex/ramses-v2/contract-math/LiquidityMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/Oracle.d.ts +0 -10
- package/build/dex/ramses-v2/contract-math/Oracle.js +0 -133
- package/build/dex/ramses-v2/contract-math/Oracle.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/SqrtPriceMath.d.ts +0 -10
- package/build/dex/ramses-v2/contract-math/SqrtPriceMath.js +0 -91
- package/build/dex/ramses-v2/contract-math/SqrtPriceMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/SwapMath.d.ts +0 -8
- package/build/dex/ramses-v2/contract-math/SwapMath.js +0 -70
- package/build/dex/ramses-v2/contract-math/SwapMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/Tick.d.ts +0 -7
- package/build/dex/ramses-v2/contract-math/Tick.js +0 -45
- package/build/dex/ramses-v2/contract-math/Tick.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/TickBitMap.d.ts +0 -8
- package/build/dex/ramses-v2/contract-math/TickBitMap.js +0 -87
- package/build/dex/ramses-v2/contract-math/TickBitMap.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/TickMath.d.ts +0 -8
- package/build/dex/ramses-v2/contract-math/TickMath.js +0 -162
- package/build/dex/ramses-v2/contract-math/TickMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/UnsafeMath.d.ts +0 -3
- package/build/dex/ramses-v2/contract-math/UnsafeMath.js +0 -10
- package/build/dex/ramses-v2/contract-math/UnsafeMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/uniswap-v3-math.d.ts +0 -18
- package/build/dex/ramses-v2/contract-math/uniswap-v3-math.js +0 -392
- package/build/dex/ramses-v2/contract-math/uniswap-v3-math.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/utils.d.ts +0 -3
- package/build/dex/ramses-v2/contract-math/utils.js +0 -16
- package/build/dex/ramses-v2/contract-math/utils.js.map +0 -1
- package/build/dex/ramses-v2/ramses-v2-pool.d.ts +0 -42
- package/build/dex/ramses-v2/ramses-v2-pool.js +0 -307
- package/build/dex/ramses-v2/ramses-v2-pool.js.map +0 -1
- package/build/dex/ramses-v2/ramses-v2.d.ts +0 -61
- package/build/dex/ramses-v2/ramses-v2.js +0 -690
- package/build/dex/ramses-v2/ramses-v2.js.map +0 -1
- package/build/dex/ramses-v2/types.d.ts +0 -154
- package/build/dex/ramses-v2/types.js +0 -9
- package/build/dex/ramses-v2/types.js.map +0 -1
- package/build/dex/ramses-v2/utils.d.ts +0 -6
- package/build/dex/ramses-v2/utils.js +0 -71
- package/build/dex/ramses-v2/utils.js.map +0 -1
- package/build/dex/solidly/forks-override/aerodrome.d.ts +0 -14
- package/build/dex/solidly/forks-override/aerodrome.js +0 -48
- package/build/dex/solidly/forks-override/aerodrome.js.map +0 -1
- package/build/dex/sushiswap-v3/config.d.ts +0 -4
- package/build/dex/sushiswap-v3/config.js +0 -132
- package/build/dex/sushiswap-v3/config.js.map +0 -1
- package/build/dex/sushiswap-v3/constants.d.ts +0 -4
- package/build/dex/sushiswap-v3/constants.js +0 -32
- package/build/dex/sushiswap-v3/constants.js.map +0 -1
- package/build/dex/sushiswap-v3/sushiswap-v3-original.d.ts +0 -56
- package/build/dex/sushiswap-v3/sushiswap-v3-original.js +0 -598
- package/build/dex/sushiswap-v3/sushiswap-v3-original.js.map +0 -1
- package/build/dex/sushiswap-v3/sushiswap-v3-pool.d.ts +0 -1
- package/build/dex/sushiswap-v3/sushiswap-v3-pool.js +0 -6
- package/build/dex/sushiswap-v3/sushiswap-v3-pool.js.map +0 -1
- package/build/dex/sushiswap-v3/sushiswap-v3.d.ts +0 -21
- package/build/dex/sushiswap-v3/sushiswap-v3.js +0 -58
- package/build/dex/sushiswap-v3/sushiswap-v3.js.map +0 -1
- package/build/dex/sushiswap-v3/token.d.ts +0 -6
- package/build/dex/sushiswap-v3/token.js +0 -23
- package/build/dex/sushiswap-v3/token.js.map +0 -1
- package/build/dex/sushiswap-v3/types.d.ts +0 -15
- package/build/dex/sushiswap-v3/types.js +0 -18
- package/build/dex/sushiswap-v3/types.js.map +0 -1
- package/src/abi/aerodrome/aerodrome-pool-factory.json +0 -586
- package/src/dex/solidly/forks-override/aerodrome.ts +0 -57
- /package/build/dex/{pancakeswap-v3 → test-dex}/types.js +0 -0
|
@@ -959,146 +959,4 @@ describe('SushiSwapV3', () => {
|
|
|
959
959
|
expect(falseChecksCounter).toBeLessThan(poolPrices!.length);
|
|
960
960
|
});
|
|
961
961
|
});
|
|
962
|
-
|
|
963
|
-
describe('Base', () => {
|
|
964
|
-
let blockNumber: number;
|
|
965
|
-
let sushiSwapV3: UniswapV3;
|
|
966
|
-
let sushiSwapV3Mainnet: UniswapV3;
|
|
967
|
-
|
|
968
|
-
const network = Network.BASE;
|
|
969
|
-
const dexHelper = new DummyDexHelper(network);
|
|
970
|
-
const TokenASymbol = 'USDbC';
|
|
971
|
-
const TokenA = Tokens[network][TokenASymbol];
|
|
972
|
-
|
|
973
|
-
const TokenBSymbol = 'DAI';
|
|
974
|
-
const TokenB = Tokens[network][TokenBSymbol];
|
|
975
|
-
|
|
976
|
-
beforeEach(async () => {
|
|
977
|
-
blockNumber = await dexHelper.web3Provider.eth.getBlockNumber();
|
|
978
|
-
sushiSwapV3 = new UniswapV3(network, dexKey, dexHelper);
|
|
979
|
-
sushiSwapV3Mainnet = new UniswapV3(Network.MAINNET, dexKey, dexHelper);
|
|
980
|
-
});
|
|
981
|
-
|
|
982
|
-
it('getPoolIdentifiers and getPricesVolume SELL', async function () {
|
|
983
|
-
const amounts = [0n, BI_POWS[6], 2000000n];
|
|
984
|
-
|
|
985
|
-
const pools = await sushiSwapV3.getPoolIdentifiers(
|
|
986
|
-
TokenA,
|
|
987
|
-
TokenB,
|
|
988
|
-
SwapSide.SELL,
|
|
989
|
-
blockNumber,
|
|
990
|
-
);
|
|
991
|
-
console.log(
|
|
992
|
-
`${TokenASymbol} <> ${TokenBSymbol} Pool Identifiers: `,
|
|
993
|
-
pools,
|
|
994
|
-
);
|
|
995
|
-
|
|
996
|
-
expect(pools.length).toBeGreaterThan(0);
|
|
997
|
-
|
|
998
|
-
const poolPrices = await sushiSwapV3.getPricesVolume(
|
|
999
|
-
TokenA,
|
|
1000
|
-
TokenB,
|
|
1001
|
-
amounts,
|
|
1002
|
-
SwapSide.SELL,
|
|
1003
|
-
blockNumber,
|
|
1004
|
-
pools,
|
|
1005
|
-
);
|
|
1006
|
-
console.log(
|
|
1007
|
-
`${TokenASymbol} <> ${TokenBSymbol} Pool Prices: `,
|
|
1008
|
-
poolPrices,
|
|
1009
|
-
);
|
|
1010
|
-
|
|
1011
|
-
expect(poolPrices).not.toBeNull();
|
|
1012
|
-
checkPoolPrices(poolPrices!, amounts, SwapSide.SELL, dexKey);
|
|
1013
|
-
|
|
1014
|
-
let falseChecksCounter = 0;
|
|
1015
|
-
await Promise.all(
|
|
1016
|
-
poolPrices!.map(async price => {
|
|
1017
|
-
const fee = sushiSwapV3.eventPools[price.poolIdentifier!]!.feeCode;
|
|
1018
|
-
const res = await checkOnChainPricing(
|
|
1019
|
-
dexHelper,
|
|
1020
|
-
sushiSwapV3,
|
|
1021
|
-
'quoteExactInputSingle',
|
|
1022
|
-
blockNumber,
|
|
1023
|
-
'0xb1E835Dc2785b52265711e17fCCb0fd018226a6e',
|
|
1024
|
-
price.prices,
|
|
1025
|
-
TokenA.address,
|
|
1026
|
-
TokenB.address,
|
|
1027
|
-
fee,
|
|
1028
|
-
amounts,
|
|
1029
|
-
);
|
|
1030
|
-
if (res === false) falseChecksCounter++;
|
|
1031
|
-
}),
|
|
1032
|
-
);
|
|
1033
|
-
|
|
1034
|
-
expect(falseChecksCounter).toBeLessThan(poolPrices!.length);
|
|
1035
|
-
});
|
|
1036
|
-
|
|
1037
|
-
it('getPoolIdentifiers and getPricesVolume BUY', async function () {
|
|
1038
|
-
const amounts = [0n, BI_POWS[6], 2000000n];
|
|
1039
|
-
|
|
1040
|
-
const pools = await sushiSwapV3.getPoolIdentifiers(
|
|
1041
|
-
TokenA,
|
|
1042
|
-
TokenB,
|
|
1043
|
-
SwapSide.BUY,
|
|
1044
|
-
blockNumber,
|
|
1045
|
-
);
|
|
1046
|
-
console.log(
|
|
1047
|
-
`${TokenASymbol} <> ${TokenBSymbol} Pool Identifiers: `,
|
|
1048
|
-
pools,
|
|
1049
|
-
);
|
|
1050
|
-
|
|
1051
|
-
expect(pools.length).toBeGreaterThan(0);
|
|
1052
|
-
|
|
1053
|
-
const poolPrices = await sushiSwapV3.getPricesVolume(
|
|
1054
|
-
TokenA,
|
|
1055
|
-
TokenB,
|
|
1056
|
-
amounts,
|
|
1057
|
-
SwapSide.BUY,
|
|
1058
|
-
blockNumber,
|
|
1059
|
-
pools,
|
|
1060
|
-
);
|
|
1061
|
-
console.log(
|
|
1062
|
-
`${TokenASymbol} <> ${TokenBSymbol} Pool Prices: `,
|
|
1063
|
-
poolPrices,
|
|
1064
|
-
);
|
|
1065
|
-
|
|
1066
|
-
expect(poolPrices).not.toBeNull();
|
|
1067
|
-
checkPoolPrices(poolPrices!, amounts, SwapSide.SELL, dexKey);
|
|
1068
|
-
|
|
1069
|
-
let falseChecksCounter = 0;
|
|
1070
|
-
await Promise.all(
|
|
1071
|
-
poolPrices!.map(async price => {
|
|
1072
|
-
const fee = sushiSwapV3.eventPools[price.poolIdentifier!]!.feeCode;
|
|
1073
|
-
const res = await checkOnChainPricing(
|
|
1074
|
-
dexHelper,
|
|
1075
|
-
sushiSwapV3,
|
|
1076
|
-
'quoteExactOutputSingle',
|
|
1077
|
-
blockNumber,
|
|
1078
|
-
'0xb1E835Dc2785b52265711e17fCCb0fd018226a6e',
|
|
1079
|
-
price.prices,
|
|
1080
|
-
TokenA.address,
|
|
1081
|
-
TokenB.address,
|
|
1082
|
-
fee,
|
|
1083
|
-
amounts,
|
|
1084
|
-
);
|
|
1085
|
-
if (res === false) falseChecksCounter++;
|
|
1086
|
-
}),
|
|
1087
|
-
);
|
|
1088
|
-
|
|
1089
|
-
expect(falseChecksCounter).toBeLessThan(poolPrices!.length);
|
|
1090
|
-
});
|
|
1091
|
-
|
|
1092
|
-
it('getTopPoolsForToken', async function () {
|
|
1093
|
-
const poolLiquidity = await sushiSwapV3.getTopPoolsForToken(
|
|
1094
|
-
TokenB.address,
|
|
1095
|
-
10,
|
|
1096
|
-
);
|
|
1097
|
-
console.log(`${TokenASymbol} Top Pools:`, poolLiquidity);
|
|
1098
|
-
|
|
1099
|
-
checkPoolsLiquidity(poolLiquidity, TokenB.address, dexKey);
|
|
1100
|
-
});
|
|
1101
|
-
});
|
|
1102
|
-
|
|
1103
962
|
});
|
|
1104
|
-
|
|
@@ -641,20 +641,25 @@ export class UniswapV3
|
|
|
641
641
|
const balanceDestToken =
|
|
642
642
|
_destAddress === pool.token0 ? state.balance0 : state.balance1;
|
|
643
643
|
|
|
644
|
-
const unitResult = this.
|
|
644
|
+
const unitResult = await this.dexHelper.executeOnWorkerPool<
|
|
645
|
+
ReturnType<typeof this.getOutputs>
|
|
646
|
+
>(this.dexKey, 'getOutputs', [
|
|
645
647
|
state,
|
|
646
648
|
[unitAmount],
|
|
647
649
|
zeroForOne,
|
|
648
650
|
side,
|
|
649
651
|
balanceDestToken,
|
|
650
|
-
);
|
|
651
|
-
|
|
652
|
+
]);
|
|
653
|
+
|
|
654
|
+
const pricesResult = await this.dexHelper.executeOnWorkerPool<
|
|
655
|
+
ReturnType<typeof this.getOutputs>
|
|
656
|
+
>(this.dexKey, 'getOutputs', [
|
|
652
657
|
state,
|
|
653
658
|
_amounts,
|
|
654
659
|
zeroForOne,
|
|
655
660
|
side,
|
|
656
661
|
balanceDestToken,
|
|
657
|
-
);
|
|
662
|
+
]);
|
|
658
663
|
|
|
659
664
|
if (!unitResult || !pricesResult) {
|
|
660
665
|
this.logger.debug('Prices or unit is not calculated');
|
|
@@ -1071,7 +1076,7 @@ export class UniswapV3
|
|
|
1071
1076
|
return newConfig;
|
|
1072
1077
|
}
|
|
1073
1078
|
|
|
1074
|
-
|
|
1079
|
+
getOutputs(
|
|
1075
1080
|
state: DeepReadonly<PoolState>,
|
|
1076
1081
|
amounts: bigint[],
|
|
1077
1082
|
zeroForOne: boolean,
|
|
@@ -64,16 +64,6 @@ export const WooFiV2Config: DexConfigMap<DexParams> = {
|
|
|
64
64
|
decimals: 6,
|
|
65
65
|
},
|
|
66
66
|
},
|
|
67
|
-
[Network.BASE]: {
|
|
68
|
-
wooPPV2Address: '0xb130a49065178465931d4f887056328CeA5D723f',
|
|
69
|
-
wooOracleV2Address: '0x2Fe5E5D341cFFa606a5d9DA1B6B646a381B0f7ec',
|
|
70
|
-
integrationHelperAddress: '0xC4E9B633685461E7B7A807D12a246C81f96F31B8',
|
|
71
|
-
// USDbC
|
|
72
|
-
quoteToken: {
|
|
73
|
-
address: '0xd9aAEc86B65D86f6A7B5B1b0c42FFA531710b6CA',
|
|
74
|
-
decimals: 6,
|
|
75
|
-
},
|
|
76
|
-
},
|
|
77
67
|
},
|
|
78
68
|
};
|
|
79
69
|
|
|
@@ -94,7 +84,4 @@ export const Adapters: Record<number, AdapterMappings> = {
|
|
|
94
84
|
[Network.AVALANCHE]: {
|
|
95
85
|
[SwapSide.SELL]: [{ name: 'AvalancheAdapter01', index: 12 }],
|
|
96
86
|
},
|
|
97
|
-
[Network.BASE]: {
|
|
98
|
-
[SwapSide.SELL]: [{ name: 'BaseAdapter01', index: 5 }],
|
|
99
|
-
},
|
|
100
87
|
};
|
|
@@ -213,68 +213,4 @@ describe('WooFiV2 E2E', () => {
|
|
|
213
213
|
tokenQuoteAmount,
|
|
214
214
|
);
|
|
215
215
|
});
|
|
216
|
-
|
|
217
|
-
describe('Base', () => {
|
|
218
|
-
const network = Network.BASE;
|
|
219
|
-
|
|
220
|
-
const baseATokenSymbol = 'USDbC';
|
|
221
|
-
const baseBTokenSymbol = 'ETH';
|
|
222
|
-
|
|
223
|
-
const tokenBaseAAmount = '100000000';
|
|
224
|
-
const tokenBaseBAmount = '1000000000000000000';
|
|
225
|
-
|
|
226
|
-
const tokens = Tokens[network];
|
|
227
|
-
const holders = Holders[network];
|
|
228
|
-
|
|
229
|
-
const provider = new StaticJsonRpcProvider(
|
|
230
|
-
generateConfig(network).privateHttpProvider,
|
|
231
|
-
network,
|
|
232
|
-
);
|
|
233
|
-
|
|
234
|
-
const sideToContractMethods = new Map([
|
|
235
|
-
[
|
|
236
|
-
SwapSide.SELL,
|
|
237
|
-
[
|
|
238
|
-
ContractMethod.simpleSwap,
|
|
239
|
-
ContractMethod.multiSwap,
|
|
240
|
-
ContractMethod.megaSwap,
|
|
241
|
-
],
|
|
242
|
-
],
|
|
243
|
-
]);
|
|
244
|
-
|
|
245
|
-
sideToContractMethods.forEach((contractMethods, side) =>
|
|
246
|
-
describe(`${side}`, () => {
|
|
247
|
-
contractMethods.forEach((contractMethod: ContractMethod) => {
|
|
248
|
-
describe(`${contractMethod}`, () => {
|
|
249
|
-
it(`${baseATokenSymbol} -> ${baseBTokenSymbol}`, async () => {
|
|
250
|
-
await testE2E(
|
|
251
|
-
tokens[baseATokenSymbol],
|
|
252
|
-
tokens[baseBTokenSymbol],
|
|
253
|
-
holders[baseATokenSymbol],
|
|
254
|
-
tokenBaseAAmount,
|
|
255
|
-
side,
|
|
256
|
-
dexKey,
|
|
257
|
-
contractMethod,
|
|
258
|
-
network,
|
|
259
|
-
provider,
|
|
260
|
-
);
|
|
261
|
-
});
|
|
262
|
-
it(`${baseBTokenSymbol} -> ${baseATokenSymbol}`, async () => {
|
|
263
|
-
await testE2E(
|
|
264
|
-
tokens[baseBTokenSymbol],
|
|
265
|
-
tokens[baseATokenSymbol],
|
|
266
|
-
holders[baseBTokenSymbol],
|
|
267
|
-
tokenBaseBAmount,
|
|
268
|
-
side,
|
|
269
|
-
dexKey,
|
|
270
|
-
contractMethod,
|
|
271
|
-
network,
|
|
272
|
-
provider,
|
|
273
|
-
);
|
|
274
|
-
});
|
|
275
|
-
});
|
|
276
|
-
});
|
|
277
|
-
}),
|
|
278
|
-
);
|
|
279
|
-
});
|
|
280
216
|
});
|
|
@@ -246,6 +246,11 @@ export class DummyDexHelper implements IDexHelper {
|
|
|
246
246
|
getLogger: LoggerConstructor;
|
|
247
247
|
web3Provider: Web3;
|
|
248
248
|
getTokenUSDPrice: (token: Token, amount: bigint) => Promise<number>;
|
|
249
|
+
executeOnWorkerPool: <R>(
|
|
250
|
+
dexKeys: string,
|
|
251
|
+
methodSelector: string,
|
|
252
|
+
payload: any[],
|
|
253
|
+
) => Promise<R>;
|
|
249
254
|
|
|
250
255
|
constructor(network: number, rpcUrl?: string) {
|
|
251
256
|
this.config = new ConfigHelper(false, generateConfig(network), 'is');
|
|
@@ -281,6 +286,14 @@ export class DummyDexHelper implements IDexHelper {
|
|
|
281
286
|
5,
|
|
282
287
|
this.getLogger(`PromiseScheduler-${network}`),
|
|
283
288
|
);
|
|
289
|
+
|
|
290
|
+
this.executeOnWorkerPool = async <R>(
|
|
291
|
+
dexKeys: string,
|
|
292
|
+
methodSelector: string,
|
|
293
|
+
payload: any[],
|
|
294
|
+
): Promise<R> => {
|
|
295
|
+
return undefined as any;
|
|
296
|
+
};
|
|
284
297
|
}
|
|
285
298
|
|
|
286
299
|
replaceProviderWithRPC(rpcUrl: string) {
|
|
@@ -9,6 +9,7 @@ import { Token } from '../types';
|
|
|
9
9
|
import { ConfigHelper } from '../config';
|
|
10
10
|
import { MultiWrapper } from '../lib/multi-wrapper';
|
|
11
11
|
import { PromiseScheduler } from '../lib/promise-scheduler';
|
|
12
|
+
import { AsyncOrSync } from 'ts-essentials';
|
|
12
13
|
|
|
13
14
|
export interface IDexHelper {
|
|
14
15
|
config: ConfigHelper;
|
|
@@ -21,5 +22,11 @@ export interface IDexHelper {
|
|
|
21
22
|
web3Provider: Web3;
|
|
22
23
|
blockManager: IBlockManager;
|
|
23
24
|
getLogger: LoggerConstructor;
|
|
25
|
+
executeOnWorkerPool: <R>(
|
|
26
|
+
dexKeys: string,
|
|
27
|
+
methodSelector: string,
|
|
28
|
+
// For POC it is ok to have any
|
|
29
|
+
payload: any[],
|
|
30
|
+
) => Promise<R>;
|
|
24
31
|
getTokenUSDPrice: (token: Token, amount: bigint) => Promise<number>;
|
|
25
32
|
}
|
package/tests/constants-e2e.ts
CHANGED
|
@@ -892,30 +892,6 @@ export const Tokens: {
|
|
|
892
892
|
address: '0x4200000000000000000000000000000000000006',
|
|
893
893
|
decimals: 18,
|
|
894
894
|
},
|
|
895
|
-
MAV: {
|
|
896
|
-
address: '0x64b88c73A5DfA78D1713fE1b4c69a22d7E0faAa7',
|
|
897
|
-
decimals: 18,
|
|
898
|
-
},
|
|
899
|
-
USDC: {
|
|
900
|
-
address: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913',
|
|
901
|
-
decimals: 6,
|
|
902
|
-
},
|
|
903
|
-
USDbC: {
|
|
904
|
-
address: '0xd9aAEc86B65D86f6A7B5B1b0c42FFA531710b6CA',
|
|
905
|
-
decimals: 6,
|
|
906
|
-
},
|
|
907
|
-
DAI: {
|
|
908
|
-
address: '0x50c5725949a6f0c72e6c4a641f24049a917db0cb',
|
|
909
|
-
decimals: 18,
|
|
910
|
-
},
|
|
911
|
-
BAL: {
|
|
912
|
-
address: '0x4158734d47fc9692176b5085e0f52ee0da5d47f1',
|
|
913
|
-
decimals: 18,
|
|
914
|
-
},
|
|
915
|
-
GOLD: {
|
|
916
|
-
address: '0xbeFD5C25A59ef2C1316c5A4944931171F30Cd3E4',
|
|
917
|
-
decimals: 18,
|
|
918
|
-
},
|
|
919
895
|
ETH: { address: ETHER_ADDRESS, decimals: 18 },
|
|
920
896
|
},
|
|
921
897
|
};
|
|
@@ -1141,12 +1117,6 @@ export const Holders: {
|
|
|
1141
1117
|
WETH: '0x4bb6b2efe7036020ba6f02a05602546c9f25bf28',
|
|
1142
1118
|
PRIME: '0x956bcc6b56c99db382d9d97a30ba5f1402144b3e',
|
|
1143
1119
|
ETH: '0xdd9176ea3e7559d6b68b537ef555d3e89403f742',
|
|
1144
|
-
MAV: '0x7499785aa5d1bdf0a0ac862c1ef3698d3cba6568',
|
|
1145
|
-
USDC: '0xaac391f166f33cdaefaa4afa6616a3bea66b694d',
|
|
1146
|
-
USDbC: '0xc9d05a1c3c8e01dcb701d6185cdc21a5bb94becb',
|
|
1147
|
-
DAI: '0x20f03e26968b179025f65c1f4afadfd3959c8d03',
|
|
1148
|
-
BAL: '0x854b004700885a61107b458f11ecc169a019b764',
|
|
1149
|
-
GOLD: '0x1374c25b3710758c326ee0c70ec48b595d5ccf8c',
|
|
1150
1120
|
},
|
|
1151
1121
|
};
|
|
1152
1122
|
|
package/tests/utils-e2e.ts
CHANGED
|
@@ -86,7 +86,6 @@ const MULTISIG: { [nid: number]: string } = {
|
|
|
86
86
|
[Network.AVALANCHE]: '0x1e2ECA5e812D08D2A7F8664D69035163ff5BfEC2',
|
|
87
87
|
[Network.OPTIMISM]: '0xf01121e808F782d7F34E857c27dA31AD1f151b39',
|
|
88
88
|
[Network.ARBITRUM]: '0x90DfD8a6454CFE19be39EaB42ac93CD850c7f339',
|
|
89
|
-
[Network.BASE]: '0x6C674c8Df1aC663b822c4B6A56B4E5e889379AE0',
|
|
90
89
|
};
|
|
91
90
|
|
|
92
91
|
class APIParaswapSDK implements IParaSwapSDK {
|
package/.idea/aws.xml
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="accountSettings">
|
|
4
|
-
<option name="activeProfile" value="profile:default" />
|
|
5
|
-
<option name="activeRegion" value="us-east-1" />
|
|
6
|
-
<option name="recentlyUsedProfiles">
|
|
7
|
-
<list>
|
|
8
|
-
<option value="profile:default" />
|
|
9
|
-
</list>
|
|
10
|
-
</option>
|
|
11
|
-
<option name="recentlyUsedRegions">
|
|
12
|
-
<list>
|
|
13
|
-
<option value="us-east-1" />
|
|
14
|
-
</list>
|
|
15
|
-
</option>
|
|
16
|
-
</component>
|
|
17
|
-
</project>
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
<component name="ProjectCodeStyleConfiguration">
|
|
2
|
-
<code_scheme name="Project" version="173">
|
|
3
|
-
<ScalaCodeStyleSettings>
|
|
4
|
-
<option name="MULTILINE_STRING_CLOSING_QUOTES_ON_NEW_LINE" value="true" />
|
|
5
|
-
</ScalaCodeStyleSettings>
|
|
6
|
-
<TypeScriptCodeStyleSettings version="0">
|
|
7
|
-
<option name="SPACE_WITHIN_ARRAY_INITIALIZER_BRACKETS" value="true" />
|
|
8
|
-
<option name="USE_DOUBLE_QUOTES" value="false" />
|
|
9
|
-
<option name="SPACES_WITHIN_IMPORTS" value="true" />
|
|
10
|
-
</TypeScriptCodeStyleSettings>
|
|
11
|
-
<codeStyleSettings language="TypeScript">
|
|
12
|
-
<indentOptions>
|
|
13
|
-
<option name="INDENT_SIZE" value="2" />
|
|
14
|
-
<option name="CONTINUATION_INDENT_SIZE" value="2" />
|
|
15
|
-
<option name="TAB_SIZE" value="2" />
|
|
16
|
-
</indentOptions>
|
|
17
|
-
</codeStyleSettings>
|
|
18
|
-
</code_scheme>
|
|
19
|
-
</component>
|
package/.idea/misc.xml
DELETED
package/.idea/modules.xml
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="ProjectModuleManager">
|
|
4
|
-
<modules>
|
|
5
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/paraswap-dex-lib.iml" filepath="$PROJECT_DIR$/.idea/paraswap-dex-lib.iml" />
|
|
6
|
-
</modules>
|
|
7
|
-
</component>
|
|
8
|
-
</project>
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<module type="JAVA_MODULE" version="4">
|
|
3
|
-
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
|
4
|
-
<exclude-output />
|
|
5
|
-
<content url="file://$MODULE_DIR$" />
|
|
6
|
-
<orderEntry type="inheritedJdk" />
|
|
7
|
-
<orderEntry type="sourceFolder" forTests="false" />
|
|
8
|
-
</component>
|
|
9
|
-
</module>
|