@paraswap/dex-lib 2.42.27 → 2.42.29-wombat.2

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 (153) hide show
  1. package/build/abi/solidly-v3/SolidlyV3Pool.abi.json +738 -0
  2. package/build/abi/solidly-v3/SolidlyV3StateMulticall.abi.json +375 -0
  3. package/build/abi/trader-joe-v2_1/FactoryABI.json +0 -0
  4. package/build/abi/trader-joe-v2_1/PairABI.json +1493 -0
  5. package/build/abi/trader-joe-v2_1/RouterABI.json +1489 -0
  6. package/build/abi/wombat/pool-v2.json +1289 -0
  7. package/build/abi/wombat/pool-v3.json +2013 -0
  8. package/build/config.js +2 -2
  9. package/build/dex/index.js +4 -1
  10. package/build/dex/index.js.map +1 -1
  11. package/build/dex/solidly-v3/config.d.ts +9 -0
  12. package/build/dex/solidly-v3/config.js +58 -0
  13. package/build/dex/solidly-v3/config.js.map +1 -0
  14. package/build/dex/solidly-v3/constants.d.ts +27 -0
  15. package/build/dex/solidly-v3/constants.js +34 -0
  16. package/build/dex/solidly-v3/constants.js.map +1 -0
  17. package/build/dex/solidly-v3/contract-math/BitMath.d.ts +4 -0
  18. package/build/dex/solidly-v3/contract-math/BitMath.js +93 -0
  19. package/build/dex/solidly-v3/contract-math/BitMath.js.map +1 -0
  20. package/build/dex/solidly-v3/contract-math/FixedPoint128.d.ts +3 -0
  21. package/build/dex/solidly-v3/contract-math/FixedPoint128.js +8 -0
  22. package/build/dex/solidly-v3/contract-math/FixedPoint128.js.map +1 -0
  23. package/build/dex/solidly-v3/contract-math/FixedPoint96.d.ts +4 -0
  24. package/build/dex/solidly-v3/contract-math/FixedPoint96.js +9 -0
  25. package/build/dex/solidly-v3/contract-math/FixedPoint96.js.map +1 -0
  26. package/build/dex/solidly-v3/contract-math/FullMath.d.ts +4 -0
  27. package/build/dex/solidly-v3/contract-math/FullMath.js +19 -0
  28. package/build/dex/solidly-v3/contract-math/FullMath.js.map +1 -0
  29. package/build/dex/solidly-v3/contract-math/LiquidityMath.d.ts +3 -0
  30. package/build/dex/solidly-v3/contract-math/LiquidityMath.js +22 -0
  31. package/build/dex/solidly-v3/contract-math/LiquidityMath.js.map +1 -0
  32. package/build/dex/solidly-v3/contract-math/SqrtPriceMath.d.ts +10 -0
  33. package/build/dex/solidly-v3/contract-math/SqrtPriceMath.js +91 -0
  34. package/build/dex/solidly-v3/contract-math/SqrtPriceMath.js.map +1 -0
  35. package/build/dex/solidly-v3/contract-math/SwapMath.d.ts +8 -0
  36. package/build/dex/solidly-v3/contract-math/SwapMath.js +70 -0
  37. package/build/dex/solidly-v3/contract-math/SwapMath.js.map +1 -0
  38. package/build/dex/solidly-v3/contract-math/Tick.d.ts +7 -0
  39. package/build/dex/solidly-v3/contract-math/Tick.js +36 -0
  40. package/build/dex/solidly-v3/contract-math/Tick.js.map +1 -0
  41. package/build/dex/solidly-v3/contract-math/TickBitMap.d.ts +7 -0
  42. package/build/dex/solidly-v3/contract-math/TickBitMap.js +84 -0
  43. package/build/dex/solidly-v3/contract-math/TickBitMap.js.map +1 -0
  44. package/build/dex/solidly-v3/contract-math/TickMath.d.ts +8 -0
  45. package/build/dex/solidly-v3/contract-math/TickMath.js +162 -0
  46. package/build/dex/solidly-v3/contract-math/TickMath.js.map +1 -0
  47. package/build/dex/solidly-v3/contract-math/UnsafeMath.d.ts +3 -0
  48. package/build/dex/solidly-v3/contract-math/UnsafeMath.js +10 -0
  49. package/build/dex/solidly-v3/contract-math/UnsafeMath.js.map +1 -0
  50. package/build/dex/solidly-v3/contract-math/uniswap-v3-math.d.ts +31 -0
  51. package/build/dex/solidly-v3/contract-math/uniswap-v3-math.js +363 -0
  52. package/build/dex/solidly-v3/contract-math/uniswap-v3-math.js.map +1 -0
  53. package/build/dex/solidly-v3/contract-math/utils.d.ts +7 -0
  54. package/build/dex/solidly-v3/contract-math/utils.js +39 -0
  55. package/build/dex/solidly-v3/contract-math/utils.js.map +1 -0
  56. package/build/dex/solidly-v3/solidly-v3-factory.d.ts +26 -0
  57. package/build/dex/solidly-v3/solidly-v3-factory.js +44 -0
  58. package/build/dex/solidly-v3/solidly-v3-factory.js.map +1 -0
  59. package/build/dex/solidly-v3/solidly-v3-pool.d.ts +44 -0
  60. package/build/dex/solidly-v3/solidly-v3-pool.js +298 -0
  61. package/build/dex/solidly-v3/solidly-v3-pool.js.map +1 -0
  62. package/build/dex/solidly-v3/solidly-v3.d.ts +67 -0
  63. package/build/dex/solidly-v3/solidly-v3.js +590 -0
  64. package/build/dex/solidly-v3/solidly-v3.js.map +1 -0
  65. package/build/dex/solidly-v3/types.d.ts +132 -0
  66. package/build/dex/solidly-v3/types.js +9 -0
  67. package/build/dex/solidly-v3/types.js.map +1 -0
  68. package/build/dex/solidly-v3/utils.d.ts +6 -0
  69. package/build/dex/solidly-v3/utils.js +53 -0
  70. package/build/dex/solidly-v3/utils.js.map +1 -0
  71. package/build/dex/trader-joe-v2-1-2/config.d.ts +4 -0
  72. package/build/dex/trader-joe-v2-1-2/config.js +43 -0
  73. package/build/dex/trader-joe-v2-1-2/config.js.map +1 -0
  74. package/build/dex/trader-joe-v2-1-2/constants.d.ts +17 -0
  75. package/build/dex/trader-joe-v2-1-2/constants.js +19 -0
  76. package/build/dex/trader-joe-v2-1-2/constants.js.map +1 -0
  77. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.d.ts +60 -0
  78. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js +199 -0
  79. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js.map +1 -0
  80. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.d.ts +49 -0
  81. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js +269 -0
  82. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js.map +1 -0
  83. package/build/dex/trader-joe-v2-1-2/types.d.ts +81 -0
  84. package/build/dex/trader-joe-v2-1-2/types.js +9 -0
  85. package/build/dex/trader-joe-v2-1-2/types.js.map +1 -0
  86. package/build/dex/trader-joe-v2_1/config.d.ts +4 -0
  87. package/build/dex/trader-joe-v2_1/config.js +43 -0
  88. package/build/dex/trader-joe-v2_1/config.js.map +1 -0
  89. package/build/dex/trader-joe-v2_1/constants.d.ts +16 -0
  90. package/build/dex/trader-joe-v2_1/constants.js +18 -0
  91. package/build/dex/trader-joe-v2_1/constants.js.map +1 -0
  92. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.d.ts +0 -0
  93. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js +384 -0
  94. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js.map +1 -0
  95. package/build/dex/trader-joe-v2_1/types.d.ts +39 -0
  96. package/build/dex/trader-joe-v2_1/types.js +3 -0
  97. package/build/dex/trader-joe-v2_1/types.js.map +1 -0
  98. package/build/dex/wombat/types.d.ts +2 -0
  99. package/build/dex/wombat/utils.d.ts +1 -0
  100. package/build/dex/wombat/utils.js +14 -1
  101. package/build/dex/wombat/utils.js.map +1 -1
  102. package/build/dex/wombat/wombat-bmw.d.ts +2 -2
  103. package/build/dex/wombat/wombat-bmw.js +8 -25
  104. package/build/dex/wombat/wombat-bmw.js.map +1 -1
  105. package/build/dex/wombat/wombat-pool-poller.d.ts +22 -0
  106. package/build/dex/wombat/wombat-pool-poller.js +164 -0
  107. package/build/dex/wombat/wombat-pool-poller.js.map +1 -0
  108. package/build/dex/wombat/wombat-pool.d.ts +51 -17
  109. package/build/dex/wombat/wombat-pool.js +393 -112
  110. package/build/dex/wombat/wombat-pool.js.map +1 -1
  111. package/build/dex/wombat/wombat.d.ts +1 -1
  112. package/build/dex/wombat/wombat.js +12 -18
  113. package/build/dex/wombat/wombat.js.map +1 -1
  114. package/package.json +1 -1
  115. package/src/abi/solidly-v3/SolidlyV3Pool.abi.json +738 -0
  116. package/src/abi/solidly-v3/SolidlyV3StateMulticall.abi.json +375 -0
  117. package/src/abi/wombat/pool-v3.json +2013 -0
  118. package/src/config.ts +2 -2
  119. package/src/dex/index.ts +4 -1
  120. package/src/dex/solidly-v3/config.ts +64 -0
  121. package/src/dex/solidly-v3/constants.ts +42 -0
  122. package/src/dex/solidly-v3/contract-math/BitMath.ts +90 -0
  123. package/src/dex/solidly-v3/contract-math/FixedPoint128.ts +3 -0
  124. package/src/dex/solidly-v3/contract-math/FixedPoint96.ts +4 -0
  125. package/src/dex/solidly-v3/contract-math/FullMath.ts +30 -0
  126. package/src/dex/solidly-v3/contract-math/LiquidityMath.ts +17 -0
  127. package/src/dex/solidly-v3/contract-math/SqrtPriceMath.ts +226 -0
  128. package/src/dex/solidly-v3/contract-math/SwapMath.ts +139 -0
  129. package/src/dex/solidly-v3/contract-math/Tick.ts +66 -0
  130. package/src/dex/solidly-v3/contract-math/TickBitMap.ts +123 -0
  131. package/src/dex/solidly-v3/contract-math/TickMath.ts +211 -0
  132. package/src/dex/solidly-v3/contract-math/UnsafeMath.ts +5 -0
  133. package/src/dex/solidly-v3/contract-math/uniswap-v3-math.ts +570 -0
  134. package/src/dex/solidly-v3/contract-math/utils.ts +50 -0
  135. package/src/dex/solidly-v3/solidly-v3-e2e.test.ts +124 -0
  136. package/src/dex/solidly-v3/solidly-v3-events.test.ts +144 -0
  137. package/src/dex/solidly-v3/solidly-v3-factory.ts +73 -0
  138. package/src/dex/solidly-v3/solidly-v3-integration.test.ts +358 -0
  139. package/src/dex/solidly-v3/solidly-v3-pool.ts +494 -0
  140. package/src/dex/solidly-v3/solidly-v3.ts +988 -0
  141. package/src/dex/solidly-v3/types.ts +158 -0
  142. package/src/dex/solidly-v3/utils.ts +71 -0
  143. package/src/dex/uniswap-v3/uniswap-v3-events.test.ts +3 -0
  144. package/src/dex/wombat/types.ts +5 -0
  145. package/src/dex/wombat/utils.ts +20 -0
  146. package/src/dex/wombat/wombat-bmw.ts +8 -31
  147. package/src/dex/wombat/wombat-e2e.test.ts +13 -1
  148. package/src/dex/wombat/wombat-events.test.ts +147 -0
  149. package/src/dex/wombat/wombat-integration.test.ts +101 -111
  150. package/src/dex/wombat/wombat-pool.ts +620 -171
  151. package/src/dex/wombat/wombat.ts +13 -23
  152. package/tests/constants-e2e.ts +11 -1
  153. /package/src/abi/wombat/{pool.json → pool-v2.json} +0 -0
@@ -3,15 +3,11 @@ import dotenv from 'dotenv';
3
3
  dotenv.config();
4
4
 
5
5
  import { Interface, Result } from '@ethersproject/abi';
6
- import { DummyDexHelper } from '../../dex-helper/index';
6
+ import { DummyDexHelper } from '../../dex-helper';
7
7
  import { Network, SwapSide } from '../../constants';
8
8
  import { BI_POWS } from '../../bigint-constants';
9
9
  import { Wombat } from './wombat';
10
- import {
11
- checkPoolPrices,
12
- checkPoolsLiquidity,
13
- checkConstantPoolPrices,
14
- } from '../../../tests/utils';
10
+ import { checkPoolPrices, checkConstantPoolPrices } from '../../../tests/utils';
15
11
  import { Tokens } from '../../../tests/constants-e2e';
16
12
  import { Token } from '../../types';
17
13
  import { Address } from '@paraswap/core';
@@ -150,109 +146,103 @@ describe('Wombat', function () {
150
146
  let blockNumber: number;
151
147
  let wombat: Wombat;
152
148
 
153
- // Object.keys(WombatConfig[dexKey]).forEach(key => {
154
- // describe(`network ${key}`, () => {
155
- // const network = Number(key) as Network;
156
- // const dexHelper = new DummyDexHelper(network);
157
-
158
- // const tokens = Tokens[network];
159
-
160
- // const srcTokenSymbol = 'USDC';
161
- // const destTokenSymbol = network == Network.BASE ? 'USDbC' : 'USDT';
162
-
163
- // let amountsForSell = [
164
- // 0n,
165
- // 1n * BI_POWS[tokens[srcTokenSymbol].decimals],
166
- // 2n * BI_POWS[tokens[srcTokenSymbol].decimals],
167
- // 3n * BI_POWS[tokens[srcTokenSymbol].decimals],
168
- // 4n * BI_POWS[tokens[srcTokenSymbol].decimals],
169
- // 5n * BI_POWS[tokens[srcTokenSymbol].decimals],
170
- // 6n * BI_POWS[tokens[srcTokenSymbol].decimals],
171
- // 7n * BI_POWS[tokens[srcTokenSymbol].decimals],
172
- // 8n * BI_POWS[tokens[srcTokenSymbol].decimals],
173
- // 9n * BI_POWS[tokens[srcTokenSymbol].decimals],
174
- // 10n * BI_POWS[tokens[srcTokenSymbol].decimals],
175
- // ];
176
-
177
- // let amountsForBuy = [
178
- // 0n,
179
- // 1n * BI_POWS[tokens[destTokenSymbol].decimals],
180
- // 2n * BI_POWS[tokens[destTokenSymbol].decimals],
181
- // 3n * BI_POWS[tokens[destTokenSymbol].decimals],
182
- // 4n * BI_POWS[tokens[destTokenSymbol].decimals],
183
- // 5n * BI_POWS[tokens[destTokenSymbol].decimals],
184
- // 6n * BI_POWS[tokens[destTokenSymbol].decimals],
185
- // 7n * BI_POWS[tokens[destTokenSymbol].decimals],
186
- // 8n * BI_POWS[tokens[destTokenSymbol].decimals],
187
- // 9n * BI_POWS[tokens[destTokenSymbol].decimals],
188
- // 10n * BI_POWS[tokens[destTokenSymbol].decimals],
189
- // ];
190
-
191
- // // OPTIMISM has very low liquidity currently, so we have to use very small amounts
192
- // // if (network === Network.OPTIMISM) {
193
- // // amountsForSell = amountsForSell.map(a => a / 100n);
194
- // // amountsForBuy = amountsForBuy.map(a => a / 100n);
195
- // // }
196
-
197
- // beforeAll(async () => {
198
- // blockNumber = await dexHelper.web3Provider.eth.getBlockNumber();
199
- // wombat = new Wombat(network, dexKey, dexHelper);
200
- // });
201
-
202
- // it('getTopPoolsForToken', async function () {
203
- // // We have to check without calling initializePricing, because
204
- // // pool-tracker is not calling that function
205
- // if (wombat.updatePoolState) {
206
- // await wombat.updatePoolState();
207
- // }
208
- // const poolLiquidity = await wombat.getTopPoolsForToken(
209
- // tokens[srcTokenSymbol].address,
210
- // 10,
211
- // );
212
- // console.log(`${srcTokenSymbol} Top Pools:`, poolLiquidity);
213
-
214
- // if (!wombat.hasConstantPriceLargeAmounts) {
215
- // checkPoolsLiquidity(
216
- // poolLiquidity,
217
- // Tokens[network][srcTokenSymbol].address,
218
- // dexKey,
219
- // );
220
- // }
221
- // });
222
-
223
- // it('getPoolIdentifiers and getPricesVolume SELL', async function () {
224
- // if (wombat.initializePricing) {
225
- // await wombat.initializePricing(blockNumber);
226
- // }
227
- // await testPricingOnNetwork(
228
- // wombat,
229
- // network,
230
- // dexKey,
231
- // blockNumber,
232
- // srcTokenSymbol,
233
- // destTokenSymbol,
234
- // SwapSide.SELL,
235
- // amountsForSell,
236
- // 'quotePotentialSwap',
237
- // );
238
- // });
239
-
240
- // it('getPoolIdentifiers and getPricesVolume BUY', async function () {
241
- // if (wombat.initializePricing) {
242
- // await wombat.initializePricing(blockNumber);
243
- // }
244
- // await testPricingOnNetwork(
245
- // wombat,
246
- // network,
247
- // dexKey,
248
- // blockNumber,
249
- // srcTokenSymbol,
250
- // destTokenSymbol,
251
- // SwapSide.BUY,
252
- // amountsForBuy,
253
- // 'quotePotentialSwap',
254
- // );
255
- // });
256
- // });
257
- // });
149
+ Object.keys(WombatConfig[dexKey]).forEach(key => {
150
+ describe(`network ${key}`, () => {
151
+ const network = Number(key) as Network;
152
+ const dexHelper = new DummyDexHelper(network);
153
+
154
+ const tokens = Tokens[network];
155
+
156
+ const srcTokenSymbol = 'USDC';
157
+ const destTokenSymbol = network == Network.BASE ? 'USDbC' : 'USDT';
158
+
159
+ let amountsForSell = [
160
+ 0n,
161
+ 1n * BI_POWS[tokens[srcTokenSymbol].decimals],
162
+ 2n * BI_POWS[tokens[srcTokenSymbol].decimals],
163
+ 3n * BI_POWS[tokens[srcTokenSymbol].decimals],
164
+ 4n * BI_POWS[tokens[srcTokenSymbol].decimals],
165
+ 5n * BI_POWS[tokens[srcTokenSymbol].decimals],
166
+ 6n * BI_POWS[tokens[srcTokenSymbol].decimals],
167
+ 7n * BI_POWS[tokens[srcTokenSymbol].decimals],
168
+ 8n * BI_POWS[tokens[srcTokenSymbol].decimals],
169
+ 9n * BI_POWS[tokens[srcTokenSymbol].decimals],
170
+ 10n * BI_POWS[tokens[srcTokenSymbol].decimals],
171
+ ];
172
+
173
+ // let amountsForBuy = [
174
+ // 0n,
175
+ // 1n * BI_POWS[tokens[destTokenSymbol].decimals],
176
+ // 2n * BI_POWS[tokens[destTokenSymbol].decimals],
177
+ // 3n * BI_POWS[tokens[destTokenSymbol].decimals],
178
+ // 4n * BI_POWS[tokens[destTokenSymbol].decimals],
179
+ // 5n * BI_POWS[tokens[destTokenSymbol].decimals],
180
+ // 6n * BI_POWS[tokens[destTokenSymbol].decimals],
181
+ // 7n * BI_POWS[tokens[destTokenSymbol].decimals],
182
+ // 8n * BI_POWS[tokens[destTokenSymbol].decimals],
183
+ // 9n * BI_POWS[tokens[destTokenSymbol].decimals],
184
+ // 10n * BI_POWS[tokens[destTokenSymbol].decimals],
185
+ // ];
186
+
187
+ beforeAll(async () => {
188
+ blockNumber = await dexHelper.web3Provider.eth.getBlockNumber();
189
+ wombat = new Wombat(network, dexKey, dexHelper);
190
+ });
191
+
192
+ // it('getTopPoolsForToken', async function () {
193
+ // // We have to check without calling initializePricing, because
194
+ // // pool-tracker is not calling that function
195
+ // if (wombat.updatePoolState) {
196
+ // await wombat.updatePoolState();
197
+ // }
198
+ // const poolLiquidity = await wombat.getTopPoolsForToken(
199
+ // tokens[srcTokenSymbol].address,
200
+ // 10,
201
+ // );
202
+ // console.log(`${srcTokenSymbol} Top Pools:`, poolLiquidity);
203
+ //
204
+ // if (!wombat.hasConstantPriceLargeAmounts) {
205
+ // checkPoolsLiquidity(
206
+ // poolLiquidity,
207
+ // Tokens[network][srcTokenSymbol].address,
208
+ // dexKey,
209
+ // );
210
+ // }
211
+ // });
212
+
213
+ it('getPoolIdentifiers and getPricesVolume SELL', async function () {
214
+ if (wombat.initializePricing) {
215
+ await wombat.initializePricing(blockNumber);
216
+ }
217
+ await testPricingOnNetwork(
218
+ wombat,
219
+ network,
220
+ dexKey,
221
+ blockNumber,
222
+ srcTokenSymbol,
223
+ destTokenSymbol,
224
+ SwapSide.SELL,
225
+ amountsForSell,
226
+ 'quotePotentialSwap',
227
+ );
228
+ });
229
+
230
+ // it('getPoolIdentifiers and getPricesVolume BUY', async function () {
231
+ // if (wombat.initializePricing) {
232
+ // await wombat.initializePricing(blockNumber);
233
+ // }
234
+ // await testPricingOnNetwork(
235
+ // wombat,
236
+ // network,
237
+ // dexKey,
238
+ // blockNumber,
239
+ // srcTokenSymbol,
240
+ // destTokenSymbol,
241
+ // SwapSide.BUY,
242
+ // amountsForBuy,
243
+ // 'quotePotentialSwap',
244
+ // );
245
+ // });
246
+ });
247
+ });
258
248
  });