@paraswap/dex-lib 2.35.7-multiple-dex-base-chain.2 → 2.35.7-worker-pool.1

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.
Files changed (190) hide show
  1. package/build/abi/quickPerps/fast-price-events.json +70 -0
  2. package/build/abi/quickPerps/fast-price-feed.json +748 -0
  3. package/build/abi/quickPerps/reader.json +313 -0
  4. package/build/abi/quickPerps/vault-price-feed.json +477 -0
  5. package/build/abi/quickPerps/vault.json +1953 -0
  6. package/build/config.js +2 -2
  7. package/build/dex/algebra/algebra.d.ts +4 -2
  8. package/build/dex/algebra/algebra.js +4 -3
  9. package/build/dex/algebra/algebra.js.map +1 -1
  10. package/build/dex/balancer-v2/config.js +1 -9
  11. package/build/dex/balancer-v2/config.js.map +1 -1
  12. package/build/dex/index.js +0 -2
  13. package/build/dex/index.js.map +1 -1
  14. package/build/dex/maverick-v1/config.js +0 -9
  15. package/build/dex/maverick-v1/config.js.map +1 -1
  16. package/build/dex/maverick-v1/maverick-v1.js +2 -11
  17. package/build/dex/maverick-v1/maverick-v1.js.map +1 -1
  18. package/build/dex/pancakeswap-v3/config.js +0 -17
  19. package/build/dex/pancakeswap-v3/config.js.map +1 -1
  20. package/build/dex/pancakeswap-v3/pancakeswap-v3.d.ts +3 -2
  21. package/build/dex/pancakeswap-v3/pancakeswap-v3.js +3 -3
  22. package/build/dex/pancakeswap-v3/pancakeswap-v3.js.map +1 -1
  23. package/build/dex/solidly/config.js +1 -22
  24. package/build/dex/solidly/config.js.map +1 -1
  25. package/build/dex/solidly/solidly.js +0 -1
  26. package/build/dex/solidly/solidly.js.map +1 -1
  27. package/build/dex/{ramses-v2 → test-dex}/config.d.ts +1 -1
  28. package/build/dex/test-dex/config.js +15 -0
  29. package/build/dex/test-dex/config.js.map +1 -0
  30. package/build/dex/test-dex/test-dex-pool.d.ts +39 -0
  31. package/build/dex/test-dex/test-dex-pool.js +63 -0
  32. package/build/dex/test-dex/test-dex-pool.js.map +1 -0
  33. package/build/dex/test-dex/test-dex.d.ts +37 -0
  34. package/build/dex/test-dex/test-dex.js +126 -0
  35. package/build/dex/test-dex/test-dex.js.map +1 -0
  36. package/build/dex/test-dex/types.d.ts +6 -0
  37. package/build/dex/{pancakeswap-v3 → test-dex}/types.js.map +1 -1
  38. package/build/dex/uniswap-v3/config.js +0 -12
  39. package/build/dex/uniswap-v3/config.js.map +1 -1
  40. package/build/dex/uniswap-v3/uniswap-v3.d.ts +3 -2
  41. package/build/dex/uniswap-v3/uniswap-v3.js +3 -3
  42. package/build/dex/uniswap-v3/uniswap-v3.js.map +1 -1
  43. package/build/dex/woo-fi-v2/config.js +0 -13
  44. package/build/dex/woo-fi-v2/config.js.map +1 -1
  45. package/build/dex/woo-fi-v2/woo-fi-math.d.ts +16 -0
  46. package/build/dex/woo-fi-v2/woo-fi-math.js +137 -0
  47. package/build/dex/woo-fi-v2/woo-fi-math.js.map +1 -0
  48. package/build/dex-helper/dummy-dex-helper.d.ts +1 -0
  49. package/build/dex-helper/dummy-dex-helper.js +3 -0
  50. package/build/dex-helper/dummy-dex-helper.js.map +1 -1
  51. package/build/dex-helper/idex-helper.d.ts +1 -0
  52. package/build/workers.d.ts +0 -0
  53. package/build/workers.js +2 -0
  54. package/build/workers.js.map +1 -0
  55. package/package.json +1 -1
  56. package/src/config.ts +2 -2
  57. package/src/dex/algebra/algebra.ts +13 -15
  58. package/src/dex/balancer-v2/balancer-v2-e2e.test.ts +1 -122
  59. package/src/dex/balancer-v2/config.ts +1 -10
  60. package/src/dex/index.ts +0 -2
  61. package/src/dex/maverick-v1/config.ts +0 -10
  62. package/src/dex/maverick-v1/maverick-v1-e2e.test.ts +1 -121
  63. package/src/dex/maverick-v1/maverick-v1.ts +2 -12
  64. package/src/dex/pancakeswap-v3/config.ts +0 -19
  65. package/src/dex/pancakeswap-v3/pancakeswap-v3-e2e.test.ts +0 -120
  66. package/src/dex/pancakeswap-v3/pancakeswap-v3.ts +12 -16
  67. package/src/dex/solidly/config.ts +1 -24
  68. package/src/dex/solidly/solidly-e2e.test.ts +0 -88
  69. package/src/dex/solidly/solidly-integration.test.ts +0 -66
  70. package/src/dex/solidly/solidly.ts +0 -1
  71. package/src/dex/uniswap-v3/config.ts +0 -13
  72. package/src/dex/uniswap-v3/uniswap-v3-e2e.test.ts +4 -25
  73. package/src/dex/uniswap-v3/uniswap-v3-integration.test.ts +0 -142
  74. package/src/dex/uniswap-v3/uniswap-v3.ts +12 -15
  75. package/src/dex/woo-fi-v2/config.ts +0 -13
  76. package/src/dex/woo-fi-v2/woo-fi-v2-e2e.test.ts +0 -64
  77. package/src/dex-helper/dummy-dex-helper.ts +13 -0
  78. package/src/dex-helper/idex-helper.ts +7 -0
  79. package/tests/constants-e2e.ts +0 -30
  80. package/tests/utils-e2e.ts +0 -1
  81. package/.idea/aws.xml +0 -17
  82. package/.idea/codeStyles/Project.xml +0 -19
  83. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  84. package/.idea/misc.xml +0 -6
  85. package/.idea/modules.xml +0 -8
  86. package/.idea/paraswap-dex-lib.iml +0 -9
  87. package/.idea/vcs.xml +0 -6
  88. package/build/abi/aerodrome/aerodrome-pool-factory.json +0 -586
  89. package/build/abi/algebra/AlgebraPool.abi.json +0 -727
  90. package/build/abi/curve-v1/StableSwapFRXETH.json +0 -889
  91. package/build/abi/curve-v1/StableSwapWBETH.json +0 -1223
  92. package/build/abi/sushiswap-v3/QuoterV2.json +0 -267
  93. package/build/abi/sushiswap-v3/RouterProcessor3.json +0 -289
  94. package/build/abi/wBETH.json +0 -1527
  95. package/build/dex/algebra/algebra-pool.d.ts +0 -46
  96. package/build/dex/algebra/algebra-pool.js +0 -336
  97. package/build/dex/algebra/algebra-pool.js.map +0 -1
  98. package/build/dex/curve-v1/pools/frxETHpool.d.ts +0 -7
  99. package/build/dex/curve-v1/pools/frxETHpool.js +0 -27
  100. package/build/dex/curve-v1/pools/frxETHpool.js.map +0 -1
  101. package/build/dex/curve-v1/pools/wbETHpool.d.ts +0 -29
  102. package/build/dex/curve-v1/pools/wbETHpool.js +0 -408
  103. package/build/dex/curve-v1/pools/wbETHpool.js.map +0 -1
  104. package/build/dex/pancakeswap-v3/types.d.ts +0 -14
  105. package/build/dex/ramses-v2/config.js +0 -28
  106. package/build/dex/ramses-v2/config.js.map +0 -1
  107. package/build/dex/ramses-v2/constants.d.ts +0 -28
  108. package/build/dex/ramses-v2/constants.js +0 -35
  109. package/build/dex/ramses-v2/constants.js.map +0 -1
  110. package/build/dex/ramses-v2/contract-math/BitMath.d.ts +0 -4
  111. package/build/dex/ramses-v2/contract-math/BitMath.js +0 -93
  112. package/build/dex/ramses-v2/contract-math/BitMath.js.map +0 -1
  113. package/build/dex/ramses-v2/contract-math/FixedPoint128.d.ts +0 -3
  114. package/build/dex/ramses-v2/contract-math/FixedPoint128.js +0 -8
  115. package/build/dex/ramses-v2/contract-math/FixedPoint128.js.map +0 -1
  116. package/build/dex/ramses-v2/contract-math/FixedPoint96.d.ts +0 -4
  117. package/build/dex/ramses-v2/contract-math/FixedPoint96.js +0 -9
  118. package/build/dex/ramses-v2/contract-math/FixedPoint96.js.map +0 -1
  119. package/build/dex/ramses-v2/contract-math/FullMath.d.ts +0 -4
  120. package/build/dex/ramses-v2/contract-math/FullMath.js +0 -19
  121. package/build/dex/ramses-v2/contract-math/FullMath.js.map +0 -1
  122. package/build/dex/ramses-v2/contract-math/LiquidityMath.d.ts +0 -3
  123. package/build/dex/ramses-v2/contract-math/LiquidityMath.js +0 -22
  124. package/build/dex/ramses-v2/contract-math/LiquidityMath.js.map +0 -1
  125. package/build/dex/ramses-v2/contract-math/Oracle.d.ts +0 -10
  126. package/build/dex/ramses-v2/contract-math/Oracle.js +0 -133
  127. package/build/dex/ramses-v2/contract-math/Oracle.js.map +0 -1
  128. package/build/dex/ramses-v2/contract-math/SqrtPriceMath.d.ts +0 -10
  129. package/build/dex/ramses-v2/contract-math/SqrtPriceMath.js +0 -91
  130. package/build/dex/ramses-v2/contract-math/SqrtPriceMath.js.map +0 -1
  131. package/build/dex/ramses-v2/contract-math/SwapMath.d.ts +0 -8
  132. package/build/dex/ramses-v2/contract-math/SwapMath.js +0 -70
  133. package/build/dex/ramses-v2/contract-math/SwapMath.js.map +0 -1
  134. package/build/dex/ramses-v2/contract-math/Tick.d.ts +0 -7
  135. package/build/dex/ramses-v2/contract-math/Tick.js +0 -45
  136. package/build/dex/ramses-v2/contract-math/Tick.js.map +0 -1
  137. package/build/dex/ramses-v2/contract-math/TickBitMap.d.ts +0 -8
  138. package/build/dex/ramses-v2/contract-math/TickBitMap.js +0 -87
  139. package/build/dex/ramses-v2/contract-math/TickBitMap.js.map +0 -1
  140. package/build/dex/ramses-v2/contract-math/TickMath.d.ts +0 -8
  141. package/build/dex/ramses-v2/contract-math/TickMath.js +0 -162
  142. package/build/dex/ramses-v2/contract-math/TickMath.js.map +0 -1
  143. package/build/dex/ramses-v2/contract-math/UnsafeMath.d.ts +0 -3
  144. package/build/dex/ramses-v2/contract-math/UnsafeMath.js +0 -10
  145. package/build/dex/ramses-v2/contract-math/UnsafeMath.js.map +0 -1
  146. package/build/dex/ramses-v2/contract-math/uniswap-v3-math.d.ts +0 -18
  147. package/build/dex/ramses-v2/contract-math/uniswap-v3-math.js +0 -392
  148. package/build/dex/ramses-v2/contract-math/uniswap-v3-math.js.map +0 -1
  149. package/build/dex/ramses-v2/contract-math/utils.d.ts +0 -3
  150. package/build/dex/ramses-v2/contract-math/utils.js +0 -16
  151. package/build/dex/ramses-v2/contract-math/utils.js.map +0 -1
  152. package/build/dex/ramses-v2/ramses-v2-pool.d.ts +0 -42
  153. package/build/dex/ramses-v2/ramses-v2-pool.js +0 -307
  154. package/build/dex/ramses-v2/ramses-v2-pool.js.map +0 -1
  155. package/build/dex/ramses-v2/ramses-v2.d.ts +0 -61
  156. package/build/dex/ramses-v2/ramses-v2.js +0 -690
  157. package/build/dex/ramses-v2/ramses-v2.js.map +0 -1
  158. package/build/dex/ramses-v2/types.d.ts +0 -154
  159. package/build/dex/ramses-v2/types.js +0 -9
  160. package/build/dex/ramses-v2/types.js.map +0 -1
  161. package/build/dex/ramses-v2/utils.d.ts +0 -6
  162. package/build/dex/ramses-v2/utils.js +0 -71
  163. package/build/dex/ramses-v2/utils.js.map +0 -1
  164. package/build/dex/solidly/forks-override/aerodrome.d.ts +0 -14
  165. package/build/dex/solidly/forks-override/aerodrome.js +0 -48
  166. package/build/dex/solidly/forks-override/aerodrome.js.map +0 -1
  167. package/build/dex/sushiswap-v3/config.d.ts +0 -4
  168. package/build/dex/sushiswap-v3/config.js +0 -132
  169. package/build/dex/sushiswap-v3/config.js.map +0 -1
  170. package/build/dex/sushiswap-v3/constants.d.ts +0 -4
  171. package/build/dex/sushiswap-v3/constants.js +0 -32
  172. package/build/dex/sushiswap-v3/constants.js.map +0 -1
  173. package/build/dex/sushiswap-v3/sushiswap-v3-original.d.ts +0 -56
  174. package/build/dex/sushiswap-v3/sushiswap-v3-original.js +0 -598
  175. package/build/dex/sushiswap-v3/sushiswap-v3-original.js.map +0 -1
  176. package/build/dex/sushiswap-v3/sushiswap-v3-pool.d.ts +0 -1
  177. package/build/dex/sushiswap-v3/sushiswap-v3-pool.js +0 -6
  178. package/build/dex/sushiswap-v3/sushiswap-v3-pool.js.map +0 -1
  179. package/build/dex/sushiswap-v3/sushiswap-v3.d.ts +0 -21
  180. package/build/dex/sushiswap-v3/sushiswap-v3.js +0 -58
  181. package/build/dex/sushiswap-v3/sushiswap-v3.js.map +0 -1
  182. package/build/dex/sushiswap-v3/token.d.ts +0 -6
  183. package/build/dex/sushiswap-v3/token.js +0 -23
  184. package/build/dex/sushiswap-v3/token.js.map +0 -1
  185. package/build/dex/sushiswap-v3/types.d.ts +0 -15
  186. package/build/dex/sushiswap-v3/types.js +0 -18
  187. package/build/dex/sushiswap-v3/types.js.map +0 -1
  188. package/src/abi/aerodrome/aerodrome-pool-factory.json +0 -586
  189. package/src/dex/solidly/forks-override/aerodrome.ts +0 -57
  190. /package/build/dex/{pancakeswap-v3 → test-dex}/types.js +0 -0
@@ -14,12 +14,6 @@ export const MaverickV1Config: DexConfigMap<DexParams> = {
14
14
  routerAddress: '0x4a585e0f7c18e2c414221d6402652d5e0990e5f8',
15
15
  poolInspectorAddress: '0xaA5BF61a664109e959D69C38734d4EA7dF74e456',
16
16
  },
17
- [Network.BASE]: {
18
- subgraphURL:
19
- 'https://api.studio.thegraph.com/query/42519/maverick-base/version/latest',
20
- routerAddress: '0x32AED3Bce901DA12ca8489788F3A99fCe1056e14',
21
- poolInspectorAddress: '0x65A3AD03Be97619284bA7AA1E3Ca05638B9d6364',
22
- },
23
17
  },
24
18
  };
25
19
 
@@ -28,8 +22,4 @@ export const Adapters: Record<number, AdapterMappings> = {
28
22
  [SwapSide.SELL]: [{ name: 'Adapter04', index: 2 }],
29
23
  [SwapSide.BUY]: [{ name: 'BuyAdapter', index: 8 }],
30
24
  },
31
- [Network.BASE]: {
32
- [SwapSide.SELL]: [{ name: 'BaseAdapter01', index: 2 }],
33
- [SwapSide.BUY]: [{ name: 'BaseBuyAdapter', index: 2 }],
34
- },
35
25
  };
@@ -11,109 +11,10 @@ import { Network, ContractMethod, SwapSide } from '../../constants';
11
11
  import { StaticJsonRpcProvider } from '@ethersproject/providers';
12
12
  import { generateConfig } from '../../config';
13
13
 
14
- function testForNetwork(
15
- network: Network,
16
- dexKey: string,
17
- tokenASymbol: string,
18
- tokenBSymbol: string,
19
- tokenAAmount: string,
20
- tokenBAmount: string,
21
- nativeTokenAmount: string,
22
- slippage?: number | undefined,
23
- ) {
24
- const provider = new StaticJsonRpcProvider(
25
- generateConfig(network).privateHttpProvider,
26
- network,
27
- );
28
- const tokens = Tokens[network];
29
- const holders = Holders[network];
30
- const nativeTokenSymbol = NativeTokenSymbols[network];
31
-
32
- const sideToContractMethods = new Map([
33
- [
34
- SwapSide.SELL,
35
- [
36
- ContractMethod.simpleSwap,
37
- ContractMethod.multiSwap,
38
- ContractMethod.megaSwap,
39
- ],
40
- ],
41
- [
42
- SwapSide.BUY,
43
- [
44
- ContractMethod.simpleBuy,
45
- ContractMethod.buy,
46
- ],
47
- ],
48
- ]);
49
-
50
- describe(`${network}`, () => {
51
- sideToContractMethods.forEach((contractMethods, side) =>
52
- describe(`${side}`, () => {
53
- contractMethods.forEach((contractMethod: ContractMethod) => {
54
- describe(`${contractMethod}`, () => {
55
- it(`${nativeTokenSymbol} -> ${tokenASymbol}`, async () => {
56
- await testE2E(
57
- tokens[nativeTokenSymbol],
58
- tokens[tokenASymbol],
59
- holders[nativeTokenSymbol],
60
- side === SwapSide.SELL ? nativeTokenAmount : tokenAAmount,
61
- side,
62
- dexKey,
63
- contractMethod,
64
- network,
65
- provider,
66
- undefined,
67
- undefined,
68
- undefined,
69
- slippage,
70
- );
71
- });
72
- it(`${tokenASymbol} -> ${nativeTokenSymbol}`, async () => {
73
- await testE2E(
74
- tokens[tokenASymbol],
75
- tokens[nativeTokenSymbol],
76
- holders[tokenASymbol],
77
- side === SwapSide.SELL ? tokenAAmount : nativeTokenAmount,
78
- side,
79
- dexKey,
80
- contractMethod,
81
- network,
82
- provider,
83
- undefined,
84
- undefined,
85
- undefined,
86
- slippage,
87
- );
88
- });
89
- it(`${tokenASymbol} -> ${tokenBSymbol}`, async () => {
90
- await testE2E(
91
- tokens[tokenASymbol],
92
- tokens[tokenBSymbol],
93
- holders[tokenASymbol],
94
- side === SwapSide.SELL ? tokenAAmount : tokenBAmount,
95
- side,
96
- dexKey,
97
- contractMethod,
98
- network,
99
- provider,
100
- undefined,
101
- undefined,
102
- undefined,
103
- slippage,
104
- );
105
- });
106
- });
107
- });
108
- }),
109
- );
110
- });
111
- }
112
-
113
14
  describe('MaverickV1 E2E', () => {
114
15
  const dexKey = 'MaverickV1';
115
16
 
116
- describe('MAINNET', () => {
17
+ describe('MaverickV1 MAINNET', () => {
117
18
  const network = Network.MAINNET;
118
19
  const tokens = Tokens[network];
119
20
  const holders = Holders[network];
@@ -220,25 +121,4 @@ describe('MaverickV1 E2E', () => {
220
121
  );
221
122
  });
222
123
  });
223
-
224
- describe('BASE', () => {
225
- const network = Network.BASE;
226
-
227
- const tokenASymbol: string = 'USDbC';
228
- const tokenBSymbol: string = 'MAV';
229
-
230
- const tokenAAmount: string = '1111100000';
231
- const tokenBAmount: string = '1100000000000000000';
232
- const nativeTokenAmount = '100000000000000000';
233
-
234
- testForNetwork(
235
- network,
236
- dexKey,
237
- tokenASymbol,
238
- tokenBSymbol,
239
- tokenAAmount,
240
- tokenBAmount,
241
- nativeTokenAmount,
242
- );
243
- });
244
124
  });
@@ -78,7 +78,6 @@ export class MaverickV1
78
78
 
79
79
  async setupEventPools(blockNumber: number) {
80
80
  const pools = await this.fetchAllSubgraphPools();
81
-
82
81
  await Promise.all(
83
82
  pools.map(async (pool: any) => {
84
83
  const eventPool = new MaverickV1EventPool(
@@ -182,17 +181,8 @@ export class MaverickV1
182
181
  getCalldataGasCost(
183
182
  poolPrices: PoolPrices<MaverickV1Data>,
184
183
  ): number | number[] {
185
- const gasCost = CALLDATA_GAS_COST.DEX_NO_PAYLOAD;
186
-
187
- const arr = new Array(poolPrices.prices.length);
188
- poolPrices.prices.forEach((p, index) => {
189
- if (p == 0n) {
190
- arr[index] = 0;
191
- } else {
192
- arr[index] = gasCost;
193
- }
194
- });
195
- return arr;
184
+ // TODO: update if there is any payload in getAdapterParam
185
+ return CALLDATA_GAS_COST.DEX_NO_PAYLOAD;
196
186
  }
197
187
 
198
188
  // Returns pool prices for amounts.
@@ -53,21 +53,6 @@ export const PancakeswapV3Config: DexConfigMap<DexParams> = {
53
53
  subgraphURL:
54
54
  'https://api.studio.thegraph.com/query/45376/exchange-v3-arbitrum/version/latest',
55
55
  },
56
- [Network.BASE]: {
57
- factory: '0x0BFbCF9fa4f9C56B0F40a671Ad40E0805A091865',
58
- deployer: '0x41ff9AA7e16B8B1a8a8dc4f0eFacd93D02d071c9',
59
- quoter: '0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997',
60
- router: '0x1b81D678ffb9C0263b24A97847620C99d213eB14',
61
- supportedFees: PANCAKE_SUPPORTED_FEES,
62
- stateMulticall: '0xeBF40A40CA3D4310Bf53048F48e860656e1D7C81',
63
- uniswapMulticall: '0x091e99cb1C49331a94dD62755D168E941AbD0693',
64
- chunksCount: 10,
65
- initRetryFrequency: 30,
66
- initHash:
67
- '0x6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2',
68
- subgraphURL:
69
- 'https://api.studio.thegraph.com/query/45376/exchange-v3-base/version/latest',
70
- },
71
56
  },
72
57
  };
73
58
 
@@ -84,8 +69,4 @@ export const Adapters: Record<number, AdapterMappings> = {
84
69
  [SwapSide.SELL]: [{ name: 'ArbitrumAdapter01', index: 3 }],
85
70
  [SwapSide.BUY]: [{ name: 'ArbitrumBuyAdapter', index: 2 }],
86
71
  },
87
- [Network.BASE]: {
88
- [SwapSide.SELL]: [{ name: 'BaseAdapter01', index: 1 }],
89
- [SwapSide.BUY]: [{ name: 'BaseBuyAdapter', index: 1 }],
90
- },
91
72
  };
@@ -11,105 +11,6 @@ import { Network, ContractMethod, SwapSide } from '../../constants';
11
11
  import { StaticJsonRpcProvider } from '@ethersproject/providers';
12
12
  import { generateConfig } from '../../config';
13
13
 
14
- function testForNetwork(
15
- network: Network,
16
- dexKey: string,
17
- tokenASymbol: string,
18
- tokenBSymbol: string,
19
- tokenAAmount: string,
20
- tokenBAmount: string,
21
- nativeTokenAmount: string,
22
- slippage?: number | undefined,
23
- ) {
24
- const provider = new StaticJsonRpcProvider(
25
- generateConfig(network).privateHttpProvider,
26
- network,
27
- );
28
- const tokens = Tokens[network];
29
- const holders = Holders[network];
30
- const nativeTokenSymbol = NativeTokenSymbols[network];
31
-
32
- const sideToContractMethods = new Map([
33
- [
34
- SwapSide.SELL,
35
- [
36
- ContractMethod.simpleSwap,
37
- ContractMethod.multiSwap,
38
- ContractMethod.megaSwap,
39
- ],
40
- ],
41
- [
42
- SwapSide.BUY,
43
- [
44
- ContractMethod.simpleBuy,
45
- ContractMethod.buy,
46
- ],
47
- ],
48
- ]);
49
-
50
- describe(`${network}`, () => {
51
- sideToContractMethods.forEach((contractMethods, side) =>
52
- describe(`${side}`, () => {
53
- contractMethods.forEach((contractMethod: ContractMethod) => {
54
- describe(`${contractMethod}`, () => {
55
- it(`${nativeTokenSymbol} -> ${tokenASymbol}`, async () => {
56
- await testE2E(
57
- tokens[nativeTokenSymbol],
58
- tokens[tokenASymbol],
59
- holders[nativeTokenSymbol],
60
- side === SwapSide.SELL ? nativeTokenAmount : tokenAAmount,
61
- side,
62
- dexKey,
63
- contractMethod,
64
- network,
65
- provider,
66
- undefined,
67
- undefined,
68
- undefined,
69
- slippage,
70
- );
71
- });
72
- it(`${tokenASymbol} -> ${nativeTokenSymbol}`, async () => {
73
- await testE2E(
74
- tokens[tokenASymbol],
75
- tokens[nativeTokenSymbol],
76
- holders[tokenASymbol],
77
- side === SwapSide.SELL ? tokenAAmount : nativeTokenAmount,
78
- side,
79
- dexKey,
80
- contractMethod,
81
- network,
82
- provider,
83
- undefined,
84
- undefined,
85
- undefined,
86
- slippage,
87
- );
88
- });
89
- it(`${tokenASymbol} -> ${tokenBSymbol}`, async () => {
90
- await testE2E(
91
- tokens[tokenASymbol],
92
- tokens[tokenBSymbol],
93
- holders[tokenASymbol],
94
- side === SwapSide.SELL ? tokenAAmount : tokenBAmount,
95
- side,
96
- dexKey,
97
- contractMethod,
98
- network,
99
- provider,
100
- undefined,
101
- undefined,
102
- undefined,
103
- slippage,
104
- );
105
- });
106
- });
107
- });
108
- }),
109
- );
110
- });
111
- }
112
-
113
14
  describe('PancakeswapV3 E2E', () => {
114
15
  const dexKey = 'PancakeswapV3';
115
16
 
@@ -406,25 +307,4 @@ describe('PancakeswapV3 E2E', () => {
406
307
  }),
407
308
  );
408
309
  });
409
-
410
- describe('PancakeswapV3 Base', () => {
411
- const network = Network.BASE;
412
-
413
- const tokenASymbol: string = 'USDbC';
414
- const tokenBSymbol: string = 'DAI';
415
-
416
- const tokenAAmount: string = '11111000000';
417
- const tokenBAmount: string = '210000000000000000';
418
- const nativeTokenAmount = '110000000000000000000';
419
-
420
- testForNetwork(
421
- network,
422
- dexKey,
423
- tokenASymbol,
424
- tokenBSymbol,
425
- tokenAAmount,
426
- tokenBAmount,
427
- nativeTokenAmount,
428
- );
429
- });
430
310
  });
@@ -608,21 +608,17 @@ export class PancakeswapV3
608
608
  const balanceDestToken =
609
609
  _destAddress === pool.token0 ? state.balance0 : state.balance1;
610
610
 
611
- const unitResult = this._getOutputs(
612
- state,
613
- [unitAmount],
614
- zeroForOne,
615
- side,
616
- balanceDestToken,
617
- );
618
- const pricesResult = this._getOutputs(
619
- state,
620
- _amounts,
621
- zeroForOne,
622
- side,
623
- balanceDestToken,
624
- );
625
-
611
+ const unitResult = (await this.dexHelper.executeOnWorkerPool(
612
+ this.dexKey,
613
+ 'getOutputs',
614
+ [state, [unitAmount], zeroForOne, side, balanceDestToken],
615
+ )) as ReturnType<typeof this.getOutputs>;
616
+
617
+ const pricesResult = (await this.dexHelper.executeOnWorkerPool(
618
+ this.dexKey,
619
+ 'getOutputs',
620
+ [state, _amounts, zeroForOne, side, balanceDestToken],
621
+ )) as ReturnType<typeof this.getOutputs>;
626
622
  if (!pricesResult) {
627
623
  this.logger.debug('Prices or unit is not calculated');
628
624
  return null;
@@ -911,7 +907,7 @@ export class PancakeswapV3
911
907
  return newConfig;
912
908
  }
913
909
 
914
- private _getOutputs(
910
+ getOutputs(
915
911
  state: DeepReadonly<PoolState>,
916
912
  amounts: bigint[],
917
913
  zeroForOne: boolean,
@@ -83,17 +83,6 @@ export const SolidlyConfig: DexConfigMap<DexParams> = {
83
83
  feeCode: 0,
84
84
  },
85
85
  },
86
- Aerodrome: {
87
- [Network.BASE]: {
88
- // There is no subgraph for Aerodrome
89
- factoryAddress: '0x420DD381b31aEf6683db6B902084cB0FFECe40Da',
90
- router: '0xDCf4EE5B700e2a5Fec458e06B763A4a3E3004494',
91
- initCode:
92
- '0x1a8f01f7eab324003d9388f229ea17991eee9c9d14586f429799f3656790eba0',
93
- poolGasCost: 180 * 1000,
94
- feeCode: 0,
95
- },
96
- },
97
86
  Cone: {
98
87
  [Network.BSC]: {
99
88
  subgraphURL: 'https://api.thegraph.com/subgraphs/name/cone-exchange/cone',
@@ -168,15 +157,6 @@ export const SolidlyConfig: DexConfigMap<DexParams> = {
168
157
  feeCode: 0,
169
158
  poolGasCost: 180 * 1000,
170
159
  },
171
- [Network.BASE]: {
172
- factoryAddress: '0xed8db60acc29e14bc867a497d94ca6e3ceb5ec04',
173
- router: '0xDCf4EE5B700e2a5Fec458e06B763A4a3E3004494',
174
- initCode:
175
- '0x7ba31a081e879b8e7f06d4e8bf5ee26b5c2680669c5701f4cdbdcde51727b275',
176
- feeCode: 0,
177
- feeFactor: 1e18,
178
- poolGasCost: 180 * 1000,
179
- },
180
160
  },
181
161
  };
182
162
 
@@ -185,7 +165,7 @@ export const Adapters: Record<number, AdapterMappings> = {
185
165
  [SwapSide.SELL]: [{ name: 'PolygonAdapter02', index: 3 }], // dystopia
186
166
  },
187
167
  [Network.FANTOM]: {
188
- [SwapSide.SELL]: [{ name: 'FantomAdapter01', index: 10 }], // solidly, spiritSwapV2, equalizer
168
+ [SwapSide.SELL]: [{ name: 'FantomAdapter01', index: 10 }], // solidly + spiritSwapV2 + Equalizer
189
169
  },
190
170
  [Network.OPTIMISM]: {
191
171
  [SwapSide.SELL]: [{ name: 'OptimismAdapter01', index: 8 }], // velodrome
@@ -202,7 +182,4 @@ export const Adapters: Record<number, AdapterMappings> = {
202
182
  [Network.ARBITRUM]: {
203
183
  [SwapSide.SELL]: [{ name: 'ArbitrumAdapter02', index: 1 }], // chronos, ramses
204
184
  },
205
- [Network.BASE]: {
206
- [SwapSide.SELL]: [{ name: 'BaseAdapter01', index: 3 }], // aerodrome, equalizer
207
- }
208
185
  };
@@ -1404,92 +1404,4 @@ describe('Solidly E2E', () => {
1404
1404
  );
1405
1405
  });
1406
1406
  });
1407
-
1408
- describe('Base', () => {
1409
- const network = Network.BASE;
1410
-
1411
- describe('Aerodrome', () => {
1412
- const dexKey = 'Aerodrome';
1413
- const tokenASymbol: string = 'USDbC';
1414
- const tokenBSymbol: string = 'DAI';
1415
-
1416
- const tokenAAmount: string = '1111100000';
1417
- const tokenBAmount: string = '100000000000000000';
1418
- const nativeTokenAmount = '100000000000000000';
1419
-
1420
- testForNetwork(
1421
- network,
1422
- dexKey,
1423
- tokenASymbol,
1424
- tokenBSymbol,
1425
- tokenAAmount,
1426
- tokenBAmount,
1427
- nativeTokenAmount,
1428
- );
1429
- });
1430
-
1431
- describe('Equalizer', () => {
1432
- const dexKey = 'Equalizer';
1433
- const network = Network.BASE;
1434
-
1435
- const tokenASymbol: string = 'USDbC';
1436
- const tokenAAmount: string = '1111100000';
1437
- const nativeTokenAmount = '110000000000000000';
1438
-
1439
- const provider = new StaticJsonRpcProvider(
1440
- generateConfig(network).privateHttpProvider,
1441
- network,
1442
- );
1443
- const tokens = Tokens[network];
1444
- const holders = Holders[network];
1445
- const nativeTokenSymbol = NativeTokenSymbols[network];
1446
-
1447
- // TODO: Add any direct swap contractMethod name if it exists
1448
- const sideToContractMethods = new Map([
1449
- [
1450
- SwapSide.SELL,
1451
- [
1452
- ContractMethod.simpleSwap,
1453
- ContractMethod.multiSwap,
1454
- ContractMethod.megaSwap,
1455
- ],
1456
- ],
1457
- ]);
1458
-
1459
- sideToContractMethods.forEach((contractMethods, side) =>
1460
- describe(`${side}`, () => {
1461
- contractMethods.forEach((contractMethod: ContractMethod) => {
1462
- describe(`${contractMethod}`, () => {
1463
- it(`${nativeTokenSymbol} -> ${tokenASymbol}`, async () => {
1464
- await testE2E(
1465
- tokens[nativeTokenSymbol],
1466
- tokens[tokenASymbol],
1467
- holders[nativeTokenSymbol],
1468
- side === SwapSide.SELL ? nativeTokenAmount : tokenAAmount,
1469
- side,
1470
- dexKey,
1471
- contractMethod,
1472
- network,
1473
- provider,
1474
- );
1475
- });
1476
- it(`${tokenASymbol} -> ${nativeTokenSymbol}`, async () => {
1477
- await testE2E(
1478
- tokens[tokenASymbol],
1479
- tokens[nativeTokenSymbol],
1480
- holders[tokenASymbol],
1481
- side === SwapSide.SELL ? tokenAAmount : nativeTokenAmount,
1482
- side,
1483
- dexKey,
1484
- contractMethod,
1485
- network,
1486
- provider,
1487
- );
1488
- });
1489
- });
1490
- });
1491
- }),
1492
- );
1493
- });
1494
- });
1495
1407
  });
@@ -1202,70 +1202,4 @@ describe('Solidly integration tests', () => {
1202
1202
  });
1203
1203
  });
1204
1204
  });
1205
-
1206
- describe('Base', () => {
1207
- const network = Network.BASE;
1208
- const dexHelper = new DummyDexHelper(network);
1209
- const checkOnChainPricing = constructCheckOnChainPricing(dexHelper);
1210
-
1211
- describe('Equalizer', () => {
1212
- const dexKey = 'Equalizer';
1213
- const equalizer = new Equalizer(network, dexKey, dexHelper);
1214
-
1215
- describe('UniswapV2 like pool', function () {
1216
- const TokenASymbol = 'USDbC';
1217
- const tokenA = Tokens[network][TokenASymbol];
1218
- const TokenBSymbol = 'ETH';
1219
- const tokenB = Tokens[network][TokenBSymbol];
1220
-
1221
- const amounts = amounts18;
1222
-
1223
- it('getPoolIdentifiers and getPricesVolume', async function () {
1224
- const blocknumber = await dexHelper.web3Provider.eth.getBlockNumber();
1225
- const pools = await equalizer.getPoolIdentifiers(
1226
- tokenA,
1227
- tokenB,
1228
- SwapSide.SELL,
1229
- blocknumber,
1230
- );
1231
- console.log(
1232
- `${TokenASymbol} <> ${TokenBSymbol} Pool Identifiers: `,
1233
- pools,
1234
- );
1235
-
1236
- expect(pools.length).toBeGreaterThan(0);
1237
-
1238
- const poolPrices = await equalizer.getPricesVolume(
1239
- tokenA,
1240
- tokenB,
1241
- amounts,
1242
- SwapSide.SELL,
1243
- blocknumber,
1244
- pools,
1245
- );
1246
- console.log(
1247
- `${TokenASymbol} <> ${TokenBSymbol} Pool Prices: `,
1248
- poolPrices,
1249
- );
1250
-
1251
- expect(poolPrices).not.toBeNull();
1252
- checkPoolPrices(poolPrices!, amounts, SwapSide.SELL, dexKey);
1253
-
1254
- // Check if onchain pricing equals to calculated ones
1255
-
1256
- for (const poolPrice of poolPrices || []) {
1257
- await checkOnChainPricing(
1258
- equalizer,
1259
- 'getAmountOut',
1260
- blocknumber,
1261
- poolPrice.prices,
1262
- poolPrice.poolAddresses![0],
1263
- tokenA.address,
1264
- amounts,
1265
- );
1266
- }
1267
- });
1268
- });
1269
- });
1270
- });
1271
1205
  });
@@ -75,7 +75,6 @@ export class Solidly extends UniswapV2 {
75
75
  'Chronos',
76
76
  'Ramses',
77
77
  'Equalizer',
78
- 'Aerodrome',
79
78
  ]),
80
79
  );
81
80
 
@@ -210,19 +210,6 @@ export const UniswapV3Config: DexConfigMap<DexParams> = {
210
210
  subgraphURL:
211
211
  'https://api.thegraph.com/subgraphs/name/sushi-v3/v3-optimism',
212
212
  },
213
- [Network.BASE]: {
214
- factory: '0xc35DADB65012eC5796536bD9864eD8773aBc74C4',
215
- quoter: '0xb1E835Dc2785b52265711e17fCCb0fd018226a6e',
216
- router: '0xCc0e85901f33D375FcdD9a888B05Df9616F68277',
217
- supportedFees: SUPPORTED_FEES,
218
- stateMulticall: '0x7160f736c52e1e78e92FD4eE4D73e21A7Cf4F950',
219
- uniswapMulticall: '0x091e99cb1C49331a94dD62755D168E941AbD0693',
220
- chunksCount: 10,
221
- initRetryFrequency: 10,
222
- initHash: `0xe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54`,
223
- subgraphURL:
224
- 'https://api.studio.thegraph.com/query/32073/v3-base/v0.0.1',
225
- },
226
213
  },
227
214
  ChronosV3: {
228
215
  [Network.ARBITRUM]: {
@@ -424,16 +424,16 @@ describe('UniswapV3 E2E', () => {
424
424
  [
425
425
  SwapSide.SELL,
426
426
  [
427
- ContractMethod.simpleSwap,
427
+ // ContractMethod.simpleSwap,
428
428
  ContractMethod.multiSwap,
429
- ContractMethod.megaSwap,
429
+ // ContractMethod.megaSwap,
430
430
  ],
431
431
  ],
432
432
  [
433
433
  SwapSide.BUY,
434
434
  [
435
- ContractMethod.simpleBuy,
436
- ContractMethod.buy
435
+ // ContractMethod.simpleBuy,
436
+ // ContractMethod.buy
437
437
  ],
438
438
  ],
439
439
  ]);
@@ -1094,26 +1094,5 @@ describe('UniswapV3 E2E', () => {
1094
1094
  nativeTokenAmount,
1095
1095
  );
1096
1096
  });
1097
-
1098
- describe('BASE', () => {
1099
- const network = Network.BASE;
1100
-
1101
- const tokenASymbol: string = 'USDbC';
1102
- const tokenBSymbol: string = 'DAI';
1103
-
1104
- const tokenAAmount: string = '111110000';
1105
- const tokenBAmount: string = '110000000000000000';
1106
- const nativeTokenAmount = '1100000000000000000';
1107
-
1108
- testForNetwork(
1109
- network,
1110
- dexKey,
1111
- tokenASymbol,
1112
- tokenBSymbol,
1113
- tokenAAmount,
1114
- tokenBAmount,
1115
- nativeTokenAmount,
1116
- );
1117
- });
1118
1097
  });
1119
1098
  });