@paraswap/dex-lib 3.8.6-rehype-pools.1 → 3.8.6

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 (205) hide show
  1. package/.vscode/launch.json +53 -0
  2. package/.vscode/settings.json +2 -0
  3. package/.vscode/tasks.json +15 -0
  4. package/build/abi/AaveV1_lending_pool.json +27 -0
  5. package/build/abi/maverick-v2/MaverickV2Router.json +778 -0
  6. package/build/abi/platypus/asset.json +490 -0
  7. package/build/abi/platypus/avax-pool.json +820 -0
  8. package/build/abi/platypus/oracle.json +119 -0
  9. package/build/abi/platypus/pool.json +677 -0
  10. package/build/abi/smardex/all/smardex-router.json +648 -0
  11. package/build/abi/smardex/layer-1/smardex-factory.json +242 -0
  12. package/build/abi/smardex/layer-1/smardex-pool.json +506 -0
  13. package/build/abi/smardex/layer-2/smardex-factory.json +185 -0
  14. package/build/abi/smardex/layer-2/smardex-pool.json +578 -0
  15. package/build/abi/swaap-v1/pool.json +1346 -0
  16. package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +52 -0
  17. package/build/abi/wombat/pool.json +1289 -0
  18. package/build/dex/aave-v1/aave-v1.d.ts +34 -0
  19. package/build/dex/aave-v1/aave-v1.js +181 -0
  20. package/build/dex/aave-v1/aave-v1.js.map +1 -0
  21. package/build/dex/aave-v1/config.d.ts +11 -0
  22. package/build/dex/aave-v1/config.js +20 -0
  23. package/build/dex/aave-v1/config.js.map +1 -0
  24. package/build/dex/aave-v1/tokens-mainnet.json +134 -0
  25. package/build/dex/aave-v1/tokens.d.ts +3 -0
  26. package/build/dex/aave-v1/tokens.js +50 -0
  27. package/build/dex/aave-v1/tokens.js.map +1 -0
  28. package/build/dex/aave-v1/types.d.ts +12 -0
  29. package/build/dex/aave-v1/types.js +3 -0
  30. package/build/dex/aave-v1/types.js.map +1 -0
  31. package/build/dex/aave-v2/tokens-avalanche.json +44 -0
  32. package/build/dex/aave-v2/tokens-mainnet.json +188 -0
  33. package/build/dex/aave-v2/tokens-polygon.json +44 -0
  34. package/build/dex/bProtocol.d.ts +18 -0
  35. package/build/dex/bProtocol.js +39 -0
  36. package/build/dex/bProtocol.js.map +1 -0
  37. package/build/dex/balancer-v2/balancer-v2.js +4 -1
  38. package/build/dex/balancer-v2/balancer-v2.js.map +1 -1
  39. package/build/dex/bancor.d.ts +26 -0
  40. package/build/dex/bancor.js +58 -0
  41. package/build/dex/bancor.js.map +1 -0
  42. package/build/dex/compound.d.ts +18 -0
  43. package/build/dex/compound.js +46 -0
  44. package/build/dex/compound.js.map +1 -0
  45. package/build/dex/curve-v2.d.ts +58 -0
  46. package/build/dex/curve-v2.js +180 -0
  47. package/build/dex/curve-v2.js.map +1 -0
  48. package/build/dex/dodo-v1.d.ts +33 -0
  49. package/build/dex/dodo-v1.js +63 -0
  50. package/build/dex/dodo-v1.js.map +1 -0
  51. package/build/dex/generic-rfq/generic-rfq.js +11 -2
  52. package/build/dex/generic-rfq/generic-rfq.js.map +1 -1
  53. package/build/dex/generic-rfq/rate-fetcher.d.ts +1 -0
  54. package/build/dex/generic-rfq/rate-fetcher.js +13 -0
  55. package/build/dex/generic-rfq/rate-fetcher.js.map +1 -1
  56. package/build/dex/lido.d.ts +19 -0
  57. package/build/dex/lido.js +42 -0
  58. package/build/dex/lido.js.map +1 -0
  59. package/build/dex/maker-psm/scripts/gem.abi.json +136 -0
  60. package/build/dex/maker-psm/scripts/validate-state.d.ts +0 -0
  61. package/build/dex/maker-psm/scripts/validate-state.js +185 -0
  62. package/build/dex/maker-psm/scripts/validate-state.js.map +1 -0
  63. package/build/dex/maker-psm/scripts/vat.abi.json +243 -0
  64. package/build/dex/onebit.d.ts +25 -0
  65. package/build/dex/onebit.js +42 -0
  66. package/build/dex/onebit.js.map +1 -0
  67. package/build/dex/platypus/asset.d.ts +14 -0
  68. package/build/dex/platypus/asset.js +97 -0
  69. package/build/dex/platypus/asset.js.map +1 -0
  70. package/build/dex/platypus/config.d.ts +11 -0
  71. package/build/dex/platypus/config.js +69 -0
  72. package/build/dex/platypus/config.js.map +1 -0
  73. package/build/dex/platypus/platypus.d.ts +63 -0
  74. package/build/dex/platypus/platypus.js +487 -0
  75. package/build/dex/platypus/platypus.js.map +1 -0
  76. package/build/dex/platypus/pool-avax.d.ts +8 -0
  77. package/build/dex/platypus/pool-avax.js +54 -0
  78. package/build/dex/platypus/pool-avax.js.map +1 -0
  79. package/build/dex/platypus/pool-base.d.ts +19 -0
  80. package/build/dex/platypus/pool-base.js +86 -0
  81. package/build/dex/platypus/pool-base.js.map +1 -0
  82. package/build/dex/platypus/pool-pure.d.ts +8 -0
  83. package/build/dex/platypus/pool-pure.js +37 -0
  84. package/build/dex/platypus/pool-pure.js.map +1 -0
  85. package/build/dex/platypus/pool-subscriber.d.ts +14 -0
  86. package/build/dex/platypus/pool-subscriber.js +167 -0
  87. package/build/dex/platypus/pool-subscriber.js.map +1 -0
  88. package/build/dex/platypus/pool.d.ts +8 -0
  89. package/build/dex/platypus/pool.js +58 -0
  90. package/build/dex/platypus/pool.js.map +1 -0
  91. package/build/dex/platypus/types.d.ts +92 -0
  92. package/build/dex/platypus/types.js +10 -0
  93. package/build/dex/platypus/types.js.map +1 -0
  94. package/build/dex/quickswap/spiritswap-v3.d.ts +6 -0
  95. package/build/dex/quickswap/spiritswap-v3.js +19 -0
  96. package/build/dex/quickswap/spiritswap-v3.js.map +1 -0
  97. package/build/dex/smardex/config.d.ts +4 -0
  98. package/build/dex/smardex/config.js +64 -0
  99. package/build/dex/smardex/config.js.map +1 -0
  100. package/build/dex/smardex/constants.d.ts +18 -0
  101. package/build/dex/smardex/constants.js +33 -0
  102. package/build/dex/smardex/constants.js.map +1 -0
  103. package/build/dex/smardex/sdk/constants.d.ts +6 -0
  104. package/build/dex/smardex/sdk/constants.js +13 -0
  105. package/build/dex/smardex/sdk/constants.js.map +1 -0
  106. package/build/dex/smardex/sdk/core.d.ts +113 -0
  107. package/build/dex/smardex/sdk/core.js +499 -0
  108. package/build/dex/smardex/sdk/core.js.map +1 -0
  109. package/build/dex/smardex/sdk/errors.d.ts +15 -0
  110. package/build/dex/smardex/sdk/errors.js +22 -0
  111. package/build/dex/smardex/sdk/errors.js.map +1 -0
  112. package/build/dex/smardex/sdk/types.d.ts +62 -0
  113. package/build/dex/smardex/sdk/types.js +3 -0
  114. package/build/dex/smardex/sdk/types.js.map +1 -0
  115. package/build/dex/smardex/sdk/utils.d.ts +44 -0
  116. package/build/dex/smardex/sdk/utils.js +133 -0
  117. package/build/dex/smardex/sdk/utils.js.map +1 -0
  118. package/build/dex/smardex/smardex-event-pool.d.ts +28 -0
  119. package/build/dex/smardex/smardex-event-pool.js +119 -0
  120. package/build/dex/smardex/smardex-event-pool.js.map +1 -0
  121. package/build/dex/smardex/smardex.d.ts +65 -0
  122. package/build/dex/smardex/smardex.js +519 -0
  123. package/build/dex/smardex/smardex.js.map +1 -0
  124. package/build/dex/smardex/types.d.ts +55 -0
  125. package/build/dex/smardex/types.js +3 -0
  126. package/build/dex/smardex/types.js.map +1 -0
  127. package/build/dex/smoothy.d.ts +26 -0
  128. package/build/dex/smoothy.js +48 -0
  129. package/build/dex/smoothy.js.map +1 -0
  130. package/build/dex/solidly/forks-override/cone.d.ts +22 -0
  131. package/build/dex/solidly/forks-override/cone.js +53 -0
  132. package/build/dex/solidly/forks-override/cone.js.map +1 -0
  133. package/build/dex/solidly/forks-override/solisnek.d.ts +8 -0
  134. package/build/dex/solidly/forks-override/solisnek.js +15 -0
  135. package/build/dex/solidly/forks-override/solisnek.js.map +1 -0
  136. package/build/dex/solidly-v3/scripts/check-event-pool-event.d.ts +1 -0
  137. package/build/dex/solidly-v3/scripts/check-event-pool-event.js +53 -0
  138. package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +1 -0
  139. package/build/dex/stable-pool.d.ts +28 -0
  140. package/build/dex/stable-pool.js +55 -0
  141. package/build/dex/stable-pool.js.map +1 -0
  142. package/build/dex/swaap-v1/config.d.ts +17 -0
  143. package/build/dex/swaap-v1/config.js +56 -0
  144. package/build/dex/swaap-v1/config.js.map +1 -0
  145. package/build/dex/swaap-v1/constants.d.ts +6 -0
  146. package/build/dex/swaap-v1/constants.js +17 -0
  147. package/build/dex/swaap-v1/constants.js.map +1 -0
  148. package/build/dex/swaap-v1/libraries/ChainlinkUtils.d.ts +25 -0
  149. package/build/dex/swaap-v1/libraries/ChainlinkUtils.js +62 -0
  150. package/build/dex/swaap-v1/libraries/ChainlinkUtils.js.map +1 -0
  151. package/build/dex/swaap-v1/libraries/Const.d.ts +18 -0
  152. package/build/dex/swaap-v1/libraries/Const.js +26 -0
  153. package/build/dex/swaap-v1/libraries/Const.js.map +1 -0
  154. package/build/dex/swaap-v1/libraries/GeometricBrownianMotion.d.ts +77 -0
  155. package/build/dex/swaap-v1/libraries/GeometricBrownianMotion.js +316 -0
  156. package/build/dex/swaap-v1/libraries/GeometricBrownianMotion.js.map +1 -0
  157. package/build/dex/swaap-v1/libraries/LogExpMath.d.ts +75 -0
  158. package/build/dex/swaap-v1/libraries/LogExpMath.js +418 -0
  159. package/build/dex/swaap-v1/libraries/LogExpMath.js.map +1 -0
  160. package/build/dex/swaap-v1/libraries/MathMMM.d.ts +185 -0
  161. package/build/dex/swaap-v1/libraries/MathMMM.js +453 -0
  162. package/build/dex/swaap-v1/libraries/MathMMM.js.map +1 -0
  163. package/build/dex/swaap-v1/libraries/Num.d.ts +31 -0
  164. package/build/dex/swaap-v1/libraries/Num.js +167 -0
  165. package/build/dex/swaap-v1/libraries/Num.js.map +1 -0
  166. package/build/dex/swaap-v1/libraries/PoolQuotations.d.ts +23 -0
  167. package/build/dex/swaap-v1/libraries/PoolQuotations.js +131 -0
  168. package/build/dex/swaap-v1/libraries/PoolQuotations.js.map +1 -0
  169. package/build/dex/swaap-v1/libraries/Struct.d.ts +56 -0
  170. package/build/dex/swaap-v1/libraries/Struct.js +3 -0
  171. package/build/dex/swaap-v1/libraries/Struct.js.map +1 -0
  172. package/build/dex/swaap-v1/swaap-v1-pool.d.ts +45 -0
  173. package/build/dex/swaap-v1/swaap-v1-pool.js +656 -0
  174. package/build/dex/swaap-v1/swaap-v1-pool.js.map +1 -0
  175. package/build/dex/swaap-v1/swaap-v1.d.ts +62 -0
  176. package/build/dex/swaap-v1/swaap-v1.js +383 -0
  177. package/build/dex/swaap-v1/swaap-v1.js.map +1 -0
  178. package/build/dex/swaap-v1/types.d.ts +106 -0
  179. package/build/dex/swaap-v1/types.js +9 -0
  180. package/build/dex/swaap-v1/types.js.map +1 -0
  181. package/build/dex/trader-joe-v2.1.d.ts +43 -0
  182. package/build/dex/trader-joe-v2.1.js +79 -0
  183. package/build/dex/trader-joe-v2.1.js.map +1 -0
  184. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +17 -0
  185. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +64 -0
  186. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +1 -0
  187. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +17 -0
  188. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +79 -0
  189. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +1 -0
  190. package/config.ts +1946 -0
  191. package/package.json +1 -1
  192. package/src/dex/balancer-v2/balancer-v2-e2e.test.ts +14 -580
  193. package/src/dex/balancer-v2/balancer-v2.ts +4 -2
  194. package/src/dex/dexs.txt +58 -0
  195. package/src/dex/generic-rfq/generic-rfq.ts +13 -2
  196. package/src/dex/generic-rfq/rate-fetcher.ts +28 -0
  197. package/tests/constants-e2e.ts +90 -74
  198. package/.idea/aws.xml +0 -17
  199. package/.idea/codeStyles/Project.xml +0 -19
  200. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  201. package/.idea/misc.xml +0 -6
  202. package/.idea/modules.xml +0 -8
  203. package/.idea/paraswap-dex-lib.iml +0 -9
  204. package/.idea/prettier.xml +0 -7
  205. package/.idea/vcs.xml +0 -6
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paraswap/dex-lib",
3
- "version": "3.8.6-rehype-pools.1",
3
+ "version": "3.8.6",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "repository": "https://github.com/paraswap/paraswap-dex-lib",
@@ -1404,588 +1404,22 @@ describe('BalancerV2 E2E', () => {
1404
1404
  const dexKey = 'BalancerV2';
1405
1405
  const network = Network.BASE;
1406
1406
 
1407
- describe('USDC -> GOLD', () => {
1408
- const tokenASymbol: string = 'USDC';
1409
- const tokenBSymbol: string = 'GOLD';
1410
-
1411
- const tokenAAmount: string = '11110010';
1412
- const tokenBAmount: string = '210000000000000000000';
1413
- const nativeTokenAmount = '1000000000000000000';
1414
-
1415
- testForNetwork(
1416
- network,
1417
- dexKey,
1418
- tokenASymbol,
1419
- tokenBSymbol,
1420
- tokenAAmount,
1421
- tokenBAmount,
1422
- nativeTokenAmount,
1423
- );
1424
- });
1425
- });
1426
-
1427
- describe('BalancerV2 Rehype Pools', () => {
1428
- const dexKey = 'BalancerV2';
1429
-
1430
- describe('Mainnet', () => {
1431
- const network = Network.MAINNET;
1432
-
1433
- describe('GYD -> stataEthUSDT', () => {
1434
- const tokenASymbol: string = 'GYD';
1435
- const tokenBSymbol: string = 'stataEthUSDT';
1436
-
1437
- const tokenAAmount: string = '81442000000000000';
1438
- const tokenBAmount: string = '47438';
1439
-
1440
- const provider = new StaticJsonRpcProvider(
1441
- generateConfig(network).privateHttpProvider,
1442
- network,
1443
- );
1444
- const tokens = Tokens[network];
1445
- const holders = Holders[network];
1446
-
1447
- const sideToContractMethods = new Map([
1448
- [
1449
- SwapSide.SELL,
1450
- [
1451
- ContractMethod.swapExactAmountIn,
1452
- ContractMethod.swapExactAmountInOnBalancerV2,
1453
- ],
1454
- ],
1455
- [
1456
- SwapSide.BUY,
1457
- [
1458
- ContractMethod.swapExactAmountOut,
1459
- ContractMethod.swapExactAmountOutOnBalancerV2,
1460
- ],
1461
- ],
1462
- ]);
1463
-
1464
- describe(`${network}`, () => {
1465
- sideToContractMethods.forEach((contractMethods, side) =>
1466
- describe(`${side}`, () => {
1467
- contractMethods.forEach((contractMethod: ContractMethod) => {
1468
- describe(`${contractMethod}`, () => {
1469
- it(`${tokenASymbol} -> ${tokenBSymbol}`, async () => {
1470
- await testE2E(
1471
- tokens[tokenASymbol],
1472
- tokens[tokenBSymbol],
1473
- holders[tokenASymbol],
1474
- side === SwapSide.SELL ? tokenAAmount : tokenBAmount,
1475
- side,
1476
- dexKey,
1477
- contractMethod,
1478
- network,
1479
- provider,
1480
- undefined,
1481
- undefined,
1482
- undefined,
1483
- 200,
1484
- );
1485
- });
1486
- it(`${tokenBSymbol} -> ${tokenASymbol}`, async () => {
1487
- await testE2E(
1488
- tokens[tokenBSymbol],
1489
- tokens[tokenASymbol],
1490
- holders[tokenBSymbol],
1491
- side === SwapSide.SELL ? tokenBAmount : tokenAAmount,
1492
- side,
1493
- dexKey,
1494
- contractMethod,
1495
- network,
1496
- provider,
1497
- undefined,
1498
- undefined,
1499
- undefined,
1500
- 200,
1501
- );
1502
- });
1503
- });
1504
- });
1505
- }),
1506
- );
1507
- });
1508
- });
1509
- });
1510
-
1511
- describe('Polygon', () => {
1512
- const network = Network.POLYGON;
1513
-
1514
- describe('stataPolUSDT -> stataPolUSDCn', () => {
1515
- const tokenASymbol: string = 'stataPolUSDT';
1516
- const tokenBSymbol: string = 'stataPolUSDCn';
1517
-
1518
- const tokenAAmount: string = '110000';
1519
- const tokenBAmount: string = '110000';
1520
-
1521
- const provider = new StaticJsonRpcProvider(
1522
- generateConfig(network).privateHttpProvider,
1523
- network,
1524
- );
1525
- const tokens = Tokens[network];
1526
- const holders = Holders[network];
1527
-
1528
- const sideToContractMethods = new Map([
1529
- [
1530
- SwapSide.SELL,
1531
- [
1532
- ContractMethod.swapExactAmountIn,
1533
- ContractMethod.swapExactAmountInOnBalancerV2,
1534
- ],
1535
- ],
1536
- [
1537
- SwapSide.BUY,
1538
- [
1539
- ContractMethod.swapExactAmountOut,
1540
- ContractMethod.swapExactAmountOutOnBalancerV2,
1541
- ],
1542
- ],
1543
- ]);
1544
-
1545
- describe(`${network}`, () => {
1546
- sideToContractMethods.forEach((contractMethods, side) =>
1547
- describe(`${side}`, () => {
1548
- contractMethods.forEach((contractMethod: ContractMethod) => {
1549
- describe(`${contractMethod}`, () => {
1550
- it(`${tokenASymbol} -> ${tokenBSymbol}`, async () => {
1551
- await testE2E(
1552
- tokens[tokenASymbol],
1553
- tokens[tokenBSymbol],
1554
- holders[tokenASymbol],
1555
- side === SwapSide.SELL ? tokenAAmount : tokenBAmount,
1556
- side,
1557
- dexKey,
1558
- contractMethod,
1559
- network,
1560
- provider,
1561
- undefined,
1562
- undefined,
1563
- undefined,
1564
- 200,
1565
- );
1566
- });
1567
- it(`${tokenBSymbol} -> ${tokenASymbol}`, async () => {
1568
- await testE2E(
1569
- tokens[tokenBSymbol],
1570
- tokens[tokenASymbol],
1571
- holders[tokenBSymbol],
1572
- side === SwapSide.SELL ? tokenBAmount : tokenAAmount,
1573
- side,
1574
- dexKey,
1575
- contractMethod,
1576
- network,
1577
- provider,
1578
- undefined,
1579
- undefined,
1580
- undefined,
1581
- 200,
1582
- );
1583
- });
1584
- });
1585
- });
1586
- }),
1587
- );
1588
- });
1589
- });
1590
-
1591
- describe('paUSD -> stataPolUSDCn', () => {
1592
- const tokenASymbol: string = 'paUSD';
1593
- const tokenBSymbol: string = 'stataPolUSDCn';
1594
-
1595
- const tokenAAmount: string = '500000000000000000';
1596
- const tokenBAmount: string = '572802';
1597
-
1598
- const provider = new StaticJsonRpcProvider(
1599
- generateConfig(network).privateHttpProvider,
1600
- network,
1601
- );
1602
- const tokens = Tokens[network];
1603
- const holders = Holders[network];
1604
-
1605
- const sideToContractMethods = new Map([
1606
- [
1607
- SwapSide.SELL,
1608
- [
1609
- ContractMethod.swapExactAmountIn,
1610
- ContractMethod.swapExactAmountInOnBalancerV2,
1611
- ],
1612
- ],
1613
- [
1614
- SwapSide.BUY,
1615
- [
1616
- ContractMethod.swapExactAmountOut,
1617
- ContractMethod.swapExactAmountOutOnBalancerV2,
1618
- ],
1619
- ],
1620
- ]);
1621
-
1622
- describe(`${network}`, () => {
1623
- sideToContractMethods.forEach((contractMethods, side) =>
1624
- describe(`${side}`, () => {
1625
- contractMethods.forEach((contractMethod: ContractMethod) => {
1626
- describe(`${contractMethod}`, () => {
1627
- it(`${tokenASymbol} -> ${tokenBSymbol}`, async () => {
1628
- await testE2E(
1629
- tokens[tokenASymbol],
1630
- tokens[tokenBSymbol],
1631
- holders[tokenASymbol],
1632
- side === SwapSide.SELL ? tokenAAmount : tokenBAmount,
1633
- side,
1634
- dexKey,
1635
- contractMethod,
1636
- network,
1637
- provider,
1638
- undefined,
1639
- undefined,
1640
- undefined,
1641
- 200,
1642
- );
1643
- });
1644
- it(`${tokenBSymbol} -> ${tokenASymbol}`, async () => {
1645
- await testE2E(
1646
- tokens[tokenBSymbol],
1647
- tokens[tokenASymbol],
1648
- holders[tokenBSymbol],
1649
- side === SwapSide.SELL ? tokenBAmount : tokenAAmount,
1650
- side,
1651
- dexKey,
1652
- contractMethod,
1653
- network,
1654
- provider,
1655
- undefined,
1656
- undefined,
1657
- undefined,
1658
- 200,
1659
- );
1660
- });
1661
- });
1662
- });
1663
- }),
1664
- );
1665
- });
1666
- });
1667
- });
1668
-
1669
- describe('Base', () => {
1670
- const network = Network.BASE;
1671
-
1672
- describe('stataBasUSDC -> sDAI', () => {
1673
- const tokenASymbol: string = 'stataBasUSDC';
1674
- const tokenBSymbol: string = 'sDAI';
1675
-
1676
- const tokenAAmount: string = '11110010';
1677
- const tokenBAmount: string = '11000000000000000000';
1678
-
1679
- const provider = new StaticJsonRpcProvider(
1680
- generateConfig(network).privateHttpProvider,
1681
- network,
1682
- );
1683
- const tokens = Tokens[network];
1684
- const holders = Holders[network];
1685
-
1686
- const sideToContractMethods = new Map([
1687
- [
1688
- SwapSide.SELL,
1689
- [
1690
- ContractMethod.swapExactAmountIn,
1691
- ContractMethod.swapExactAmountInOnBalancerV2,
1692
- ],
1693
- ],
1694
- [
1695
- SwapSide.BUY,
1696
- [
1697
- ContractMethod.swapExactAmountOut,
1698
- ContractMethod.swapExactAmountOutOnBalancerV2,
1699
- ],
1700
- ],
1701
- ]);
1702
-
1703
- describe(`${network}`, () => {
1704
- sideToContractMethods.forEach((contractMethods, side) =>
1705
- describe(`${side}`, () => {
1706
- contractMethods.forEach((contractMethod: ContractMethod) => {
1707
- describe(`${contractMethod}`, () => {
1708
- it(`${tokenASymbol} -> ${tokenBSymbol}`, async () => {
1709
- await testE2E(
1710
- tokens[tokenASymbol],
1711
- tokens[tokenBSymbol],
1712
- holders[tokenASymbol],
1713
- side === SwapSide.SELL ? tokenAAmount : tokenBAmount,
1714
- side,
1715
- dexKey,
1716
- contractMethod,
1717
- network,
1718
- provider,
1719
- undefined,
1720
- undefined,
1721
- undefined,
1722
- 200,
1723
- );
1724
- });
1725
- it(`${tokenBSymbol} -> ${tokenASymbol}`, async () => {
1726
- await testE2E(
1727
- tokens[tokenBSymbol],
1728
- tokens[tokenASymbol],
1729
- holders[tokenBSymbol],
1730
- side === SwapSide.SELL ? tokenBAmount : tokenAAmount,
1731
- side,
1732
- dexKey,
1733
- contractMethod,
1734
- network,
1735
- provider,
1736
- undefined,
1737
- undefined,
1738
- undefined,
1739
- 200,
1740
- );
1741
- });
1742
- });
1743
- });
1744
- }),
1745
- );
1746
- });
1747
- });
1748
- });
1749
-
1750
- describe('Arbitrum', () => {
1751
- const network = Network.ARBITRUM;
1752
-
1753
- describe('stataArbUSDT -> GYD', () => {
1754
- const tokenASymbol: string = 'stataArbUSDT';
1755
- const tokenBSymbol: string = 'GYD';
1756
-
1757
- const tokenAAmount: string = '100000';
1758
- const tokenBAmount: string = '8685800000000000';
1759
-
1760
- const provider = new StaticJsonRpcProvider(
1761
- generateConfig(network).privateHttpProvider,
1762
- network,
1763
- );
1764
- const tokens = Tokens[network];
1765
- const holders = Holders[network];
1766
-
1767
- const sideToContractMethods = new Map([
1768
- [
1769
- SwapSide.SELL,
1770
- [
1771
- ContractMethod.swapExactAmountIn,
1772
- ContractMethod.swapExactAmountInOnBalancerV2,
1773
- ],
1774
- ],
1775
- [
1776
- SwapSide.BUY,
1777
- [
1778
- ContractMethod.swapExactAmountOut,
1779
- ContractMethod.swapExactAmountOutOnBalancerV2,
1780
- ],
1781
- ],
1782
- ]);
1783
-
1784
- describe(`${network}`, () => {
1785
- sideToContractMethods.forEach((contractMethods, side) =>
1786
- describe(`${side}`, () => {
1787
- contractMethods.forEach((contractMethod: ContractMethod) => {
1788
- describe(`${contractMethod}`, () => {
1789
- it(`${tokenASymbol} -> ${tokenBSymbol}`, async () => {
1790
- await testE2E(
1791
- tokens[tokenASymbol],
1792
- tokens[tokenBSymbol],
1793
- holders[tokenASymbol],
1794
- side === SwapSide.SELL ? tokenAAmount : tokenBAmount,
1795
- side,
1796
- dexKey,
1797
- contractMethod,
1798
- network,
1799
- provider,
1800
- undefined,
1801
- undefined,
1802
- undefined,
1803
- 200,
1804
- );
1805
- });
1806
- it(`${tokenBSymbol} -> ${tokenASymbol}`, async () => {
1807
- await testE2E(
1808
- tokens[tokenBSymbol],
1809
- tokens[tokenASymbol],
1810
- holders[tokenBSymbol],
1811
- side === SwapSide.SELL ? tokenBAmount : tokenAAmount,
1812
- side,
1813
- dexKey,
1814
- contractMethod,
1815
- network,
1816
- provider,
1817
- undefined,
1818
- undefined,
1819
- undefined,
1820
- 200,
1821
- );
1822
- });
1823
- });
1824
- });
1825
- }),
1826
- );
1827
- });
1828
- });
1829
- });
1830
-
1831
- describe('BeetsFi Optimism', () => {
1832
- const dexKey = 'BeetsFi';
1833
- const network = Network.OPTIMISM;
1834
-
1835
- describe('stataOptUSDT -> stataOptUSDCn', () => {
1836
- const tokenASymbol: string = 'stataOptUSDT';
1837
- const tokenBSymbol: string = 'stataOptUSDCn';
1838
-
1839
- const tokenAAmount: string = '110000';
1840
- const tokenBAmount: string = '110000';
1841
-
1842
- const provider = new StaticJsonRpcProvider(
1843
- generateConfig(network).privateHttpProvider,
1844
- network,
1845
- );
1846
- const tokens = Tokens[network];
1847
- const holders = Holders[network];
1848
-
1849
- const sideToContractMethods = new Map([
1850
- [
1851
- SwapSide.SELL,
1852
- [
1853
- ContractMethod.swapExactAmountIn,
1854
- ContractMethod.swapExactAmountInOnBalancerV2,
1855
- ],
1856
- ],
1857
- [
1858
- SwapSide.BUY,
1859
- [
1860
- ContractMethod.swapExactAmountOut,
1861
- ContractMethod.swapExactAmountOutOnBalancerV2,
1862
- ],
1863
- ],
1864
- ]);
1865
-
1866
- describe(`${network}`, () => {
1867
- sideToContractMethods.forEach((contractMethods, side) =>
1868
- describe(`${side}`, () => {
1869
- contractMethods.forEach((contractMethod: ContractMethod) => {
1870
- describe(`${contractMethod}`, () => {
1871
- it(`${tokenASymbol} -> ${tokenBSymbol}`, async () => {
1872
- await testE2E(
1873
- tokens[tokenASymbol],
1874
- tokens[tokenBSymbol],
1875
- holders[tokenASymbol],
1876
- side === SwapSide.SELL ? tokenAAmount : tokenBAmount,
1877
- side,
1878
- dexKey,
1879
- contractMethod,
1880
- network,
1881
- provider,
1882
- undefined,
1883
- undefined,
1884
- undefined,
1885
- 200,
1886
- );
1887
- });
1888
- it(`${tokenBSymbol} -> ${tokenASymbol}`, async () => {
1889
- await testE2E(
1890
- tokens[tokenBSymbol],
1891
- tokens[tokenASymbol],
1892
- holders[tokenBSymbol],
1893
- side === SwapSide.SELL ? tokenBAmount : tokenAAmount,
1894
- side,
1895
- dexKey,
1896
- contractMethod,
1897
- network,
1898
- provider,
1899
- undefined,
1900
- undefined,
1901
- undefined,
1902
- 200,
1903
- );
1904
- });
1905
- });
1906
- });
1907
- }),
1908
- );
1909
- });
1910
- });
1911
-
1912
- describe('sDAI -> stataOptUSDCn', () => {
1913
- const tokenASymbol: string = 'sDAI';
1914
- const tokenBSymbol: string = 'stataOptUSDCn';
1915
-
1916
- const tokenAAmount: string = '280211000000000000';
1917
- const tokenBAmount: string = '314784';
1918
-
1919
- const provider = new StaticJsonRpcProvider(
1920
- generateConfig(network).privateHttpProvider,
1921
- network,
1922
- );
1923
- const tokens = Tokens[network];
1924
- const holders = Holders[network];
1407
+ const tokenASymbol: string = 'USDC';
1408
+ const tokenBSymbol: string = 'GOLD';
1925
1409
 
1926
- const sideToContractMethods = new Map([
1927
- [
1928
- SwapSide.SELL,
1929
- [
1930
- ContractMethod.swapExactAmountIn,
1931
- ContractMethod.swapExactAmountInOnBalancerV2,
1932
- ],
1933
- ],
1934
- [
1935
- SwapSide.BUY,
1936
- [
1937
- ContractMethod.swapExactAmountOut,
1938
- ContractMethod.swapExactAmountOutOnBalancerV2,
1939
- ],
1940
- ],
1941
- ]);
1410
+ const tokenAAmount: string = '11110010';
1411
+ const tokenBAmount: string = '210000000000000000000';
1412
+ const nativeTokenAmount = '1000000000000000000';
1942
1413
 
1943
- describe(`${network}`, () => {
1944
- sideToContractMethods.forEach((contractMethods, side) =>
1945
- describe(`${side}`, () => {
1946
- contractMethods.forEach((contractMethod: ContractMethod) => {
1947
- describe(`${contractMethod}`, () => {
1948
- it(`${tokenASymbol} -> ${tokenBSymbol}`, async () => {
1949
- await testE2E(
1950
- tokens[tokenASymbol],
1951
- tokens[tokenBSymbol],
1952
- holders[tokenASymbol],
1953
- side === SwapSide.SELL ? tokenAAmount : tokenBAmount,
1954
- side,
1955
- dexKey,
1956
- contractMethod,
1957
- network,
1958
- provider,
1959
- undefined,
1960
- undefined,
1961
- undefined,
1962
- 200,
1963
- );
1964
- });
1965
- it(`${tokenBSymbol} -> ${tokenASymbol}`, async () => {
1966
- await testE2E(
1967
- tokens[tokenBSymbol],
1968
- tokens[tokenASymbol],
1969
- holders[tokenBSymbol],
1970
- side === SwapSide.SELL ? tokenBAmount : tokenAAmount,
1971
- side,
1972
- dexKey,
1973
- contractMethod,
1974
- network,
1975
- provider,
1976
- undefined,
1977
- undefined,
1978
- undefined,
1979
- 200,
1980
- );
1981
- });
1982
- });
1983
- });
1984
- }),
1985
- );
1986
- });
1987
- });
1988
- });
1414
+ testForNetwork(
1415
+ network,
1416
+ dexKey,
1417
+ tokenASymbol,
1418
+ tokenBSymbol,
1419
+ tokenAAmount,
1420
+ tokenBAmount,
1421
+ nativeTokenAmount,
1422
+ );
1989
1423
  });
1990
1424
 
1991
1425
  describe('BalancerV2_MAINNET', () => {
@@ -186,6 +186,7 @@ const fetchAllPools = `query ($count: Int) {
186
186
  ]
187
187
  },
188
188
  {
189
+ totalLiquidity_gt: ${MIN_USD_LIQUIDITY_TO_FETCH.toString()},
189
190
  totalShares_not_in: ["0", "0.000000000001"],
190
191
  id_not_in: [
191
192
  ${disabledPoolIds.map(p => `"${p}"`).join(', ')}
@@ -216,6 +217,7 @@ const fetchAllPools = `query ($count: Int) {
216
217
  }
217
218
  mainIndex
218
219
  wrappedIndex
220
+
219
221
  root3Alpha
220
222
  }
221
223
  }`;
@@ -412,7 +414,6 @@ export class BalancerV2EventPool extends StatefulEventSubscriber<PoolStateMap> {
412
414
  const variables = {
413
415
  count: MAX_POOL_CNT,
414
416
  };
415
-
416
417
  const { data } = await this.dexHelper.httpRequest.querySubgraph(
417
418
  this.subgraphURL,
418
419
  { query: fetchAllPools, variables },
@@ -1660,7 +1661,8 @@ export class BalancerV2
1660
1661
  },
1661
1662
  {
1662
1663
  id_in: $poolIds,
1663
- swapEnabled: true
1664
+ swapEnabled: true,
1665
+ totalLiquidity_gt: ${MIN_USD_LIQUIDITY_TO_FETCH.toString()}
1664
1666
  }
1665
1667
  ]
1666
1668
  }) {
@@ -0,0 +1,58 @@
1
+ aave-v2
2
+ aave-v3
3
+ aave-v3-stata
4
+ algebra
5
+ angle-staked-stable
6
+ angle-transmuter
7
+ augustus-approvals.ts
8
+ augustus-rfq.ts
9
+ balancer-v1
10
+ balancer-v2
11
+ bancor
12
+ camelot
13
+ compound
14
+ curve-v1
15
+ curve-v1-factory
16
+ curve-v1-stable-ng
17
+ curve-v2
18
+ dexalot
19
+ dexs.txt
20
+ dodo-v1
21
+ dodo-v2.ts
22
+ etherfi.ts
23
+ generic-rfq
24
+ gmx
25
+ hashflow
26
+ idex.ts
27
+ idle-dao
28
+ index.ts
29
+ jarvis-v6
30
+ kyberdmm
31
+ lido
32
+ limit-order-exchange.ts
33
+ maker-psm
34
+ maverick-v1
35
+ maverick-v2
36
+ nerve
37
+ pancakeswap-v3
38
+ paraswap-limit-orders
39
+ polygon-migrator
40
+ quick-perps
41
+ quickswap
42
+ simple-exchange.ts
43
+ smoothy
44
+ solidly
45
+ solidly-v3
46
+ spark
47
+ stable-pool
48
+ swaap-v2
49
+ swell
50
+ synthetix
51
+ trader-joe-v2.1
52
+ uniswap-v2
53
+ uniswap-v3
54
+ uniswap-v3.ts
55
+ weth
56
+ wombat
57
+ woo-fi-v2
58
+ wsteth